Changeset 524 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs
- Timestamp:
- Mar 14, 2013, 2:28:30 PM (12 years ago)
- google:author:
- aitotat@gmail.com
- Location:
- trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/BootVars.asm
r520 r524 36 36 %endif 37 37 38 ; Clear to zero38 ; Clear all DRVDETECTINFO structs to zero 39 39 mov al, DRVDETECTINFO_size 40 40 mul BYTE [cs:ROMVARS.bIdeCnt] 41 %ifdef MODULE_HOTKEYS ; We must not initialize anything before this! 42 mov di, BOOTVARS.hotkeyVars + HOTKEYVARS.clearToZeroFromThisPoint 43 %else 44 mov di, BOOTVARS.clearToZeroFromThisPoint 45 %endif 46 add ax, BOOTVARS_size 47 sub ax, di 41 mov di, BOOTVARS.rgDrvDetectInfo ; We must not initialize anything before this! 48 42 xchg cx, ax 49 43 … … 51 45 call Memory_ZeroESDIwithSizeInCX 52 46 53 ; Store default drives to boot from 47 ; Initialize HOTKEYVARS by storing default drives to boot from 48 mov WORD [es:BOOTVARS.hotkeyVars+HOTKEYVARS.wFddAndHddLetters], DEFAULT_FLOPPY_DRIVE_LETTER | (DEFAULT_HARD_DRIVE_LETTER<<8) 54 49 mov dl, [cs:ROMVARS.bBootDrv] 55 56 ; fall through to BootVars_StoreHotkeyForDriveNumberInDL57 58 ;--------------------------------------------------------------------59 ; BootVars_StoreHotkeyForDriveNumberInDL60 ; Parameters:61 ; DL: Floppy or Hard Drive number62 ; DS: RAMVARS Segment63 ; ES: BDA Segment64 ; Returns:65 ; Nothing66 ; Corrupts registers:67 ; AX, CX, DI68 ;--------------------------------------------------------------------69 BootVars_StoreHotkeyForDriveNumberInDL:70 mov WORD [es:BOOTVARS.hotkeyVars+HOTKEYVARS.wFddAndHddLetters], DEFAULT_FLOPPY_DRIVE_LETTER | (DEFAULT_HARD_DRIVE_LETTER<<8)71 50 call DriveXlate_ConvertDriveNumberFromDLtoDriveLetter 72 51 jmp HotkeyBar_StoreHotkeyToBootvarsForDriveLetterInDL … … 74 53 %else 75 54 jmp Memory_ZeroESDIwithSizeInCX 76 77 55 %endif ; MODULE_HOTKEYS -
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/FindDPT.asm
r522 r524 176 176 ; IterateFindFirstDPTforIdevars 177 177 ; DL: Offset to IDEVARS to search from DPTs 178 ; SI: Offset to this callback function 178 179 ; DS:DI: Ptr to DPT to examine 179 180 ; Returns: … … 183 184 IterateFindSecondDPTforIdevars: 184 185 call IterateFindFirstDPTforIdevars 185 jc SHORT IterateFindFirstDPTforIdevars.done ; Wrong controller 186 187 ; We have found DPT for Master Drive, 188 ; next DPT is for slave drive or master for another controller 189 add di, BYTE LARGEST_DPT_SIZE 190 ; Fall to IterateFindFirstDPTforIdevars 186 jc SHORT .WrongController 187 mov si, IterateFindFirstDPTforIdevars 188 .WrongController: 189 stc 190 ret 191 191 192 192 IterateFindFirstDPTforIdevars:
Note:
See TracChangeset
for help on using the changeset viewer.