Changeset 605 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Inc/

May 8, 2021, 6:55:56 PM (6 months ago)


  • The "Remove other hard drives" option in the Boot settings menu in XTIDECFG is now exposed in all BIOS builds. This is needed because the system BIOS in at least two Zenith computer models (Z-161 and Z-171) does not clear the BDA HD count which causes it to increment on warm boot. Running "Auto Configure" in XTIDECFG now also tries to identify these machines by doing a CRC check on the system BIOS and sets the option to YES if a match is found.
  • WORD_ALIGN is now 2 for XT builds. This should benefit XT class machines with 8086 and NEC V30 CPU:s and the cost is negligible (1 byte for the XT BIOS builds and 12 bytes for XTIDECFG.COM).
  • Other minor optimizations.
1 edited


  • trunk/XTIDE_Universal_BIOS/Inc/

    r601 r605  
    8585STANDARD_CONTROL_BLOCK_OFFSET           EQU     200h
    86 XTIDE_CONTROL_BLOCK_OFFSET              EQU     8h      ; for XTIDE, A3 is used to control selected register (CS0 vs CS1)...
     86XTIDE_CONTROL_BLOCK_OFFSET              EQU     8h      ; For XTIDE, A3 is used to control selected register (CS0 vs CS1)...
    8787XTCF_CONTROL_BLOCK_OFFSET               EQU     10h     ; ...and for XT-CF (all variants), it's A4
    8888ADP50L_CONTROL_BLOCK_OFFSET             EQU     10h
    183183; Bit defines for ROMVARS.wFlags
    184184FLG_ROMVARS_FULLMODE                    EQU (1<<0)  ; Full operating mode (steals base RAM, supports EBIOS etc.)
    185 FLG_ROMVARS_IGNORE_MOTHERBOARD_DRIVES   EQU (1<<1)  ; Ignores drives configured in motherboard BIOS setup.
    186                                                     ; For now it is a hack to get Windows 95 IDE drivers working
    187                                                     ; but it will be needed later when XTUB supports dynamic drive overlay.
    188                                                     ; Because of that this must be included into AT builds and cannot be a
    189                                                     ; module (any AT or 386 must be installable to the hard drive so
    190                                                     ; there won't be need for even more different builds).
     185FLG_ROMVARS_CLEAR_BDA_HD_COUNT          EQU (1<<1)  ; This flag has two purposes; * Removes the system BIOS "dummy" drive
     186                                                    ; so that Windows 9x protected mode drivers can be used with XUB drives.
     187                                                    ; * Some computers (Zenith Z-171 and Z-161) do not clear the BDA hard
     188                                                    ; drive count which causes it to increment on each warm boot.
    191189FLG_ROMVARS_SERIAL_SCANDETECT           EQU (1<<3)  ; Scan COM ports at the end of drive detection.  Can also be invoked
    192190                                                    ; by holding down the ALT key at the end of drive detection.
Note: See TracChangeset for help on using the changeset viewer.