Changeset 116 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Boot
- Timestamp:
- Feb 26, 2011, 11:55:06 PM (14 years ago)
- google:author:
- krille_n_@hotmail.com
- Location:
- trunk/XTIDE_Universal_BIOS/Src/Boot
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuPrintCfg.asm
r96 r116 99 99 xchg ax, bx ; Store BX to AX 100 100 eMOVZX bx, BYTE [cs:si+IDEVARS.bBusType] 101 mov bx, [cs:bx+.rgwBusTypeValues] ; Char to BL, Int to BH 101 mov bx, [cs:bx+.rgwBusTypeValues] ; Char to BL, Int to BH 102 102 eMOVZX dx, bh 103 103 push bx ; Push character … … 191 191 mov dl, [di+DPT.bDrvNum] ; Load Drive number to DL 192 192 call BootInfo_GetOffsetToBX ; ES:BX now points... 193 LOAD_BDA_SEGMENT_TO es, ax 193 LOAD_BDA_SEGMENT_TO es, ax, ! ; ...to BOOTNFO 194 194 mov al, [di+DPT.bIdeOff] 195 195 xchg si, ax ; CS:SI now points to IDEVARS -
trunk/XTIDE_Universal_BIOS/Src/Boot/BootVars.asm
r96 r116 28 28 ; POST stack is not large enough when DPTs are stored to 30:0h. 29 29 ; 30 ; Note regarding LOAD_BDA_SEGMENT_TO: If you force the use of SP 31 ; then you also have to unconditionally enable the CLI/STI pair. 32 ; The reason for this is that only some buggy 808x CPU:s need the 33 ; CLI/STI instruction pair when changing stacks. Other CPU:s disable 34 ; interrupts automatically when SS is modified for the duration of 35 ; the immediately following instruction to give time to change SP. 36 ; 30 37 ; BootVars_SwitchToBootMenuStack 31 38 ; Parameters: … … 39 46 BootVars_SwitchToBootMenuStack: 40 47 pop ax ; Pop return address 48 %ifndef USE_186 41 49 cli ; Disable interrupts 50 %endif 42 51 LOAD_BDA_SEGMENT_TO ss, sp 43 52 mov sp, BOOTVARS.rgbMnuStack ; Load offset to stack 53 %ifndef USE_186 44 54 sti ; Enable interrupts 55 %endif 45 56 jmp ax 46 57 … … 48 59 ;-------------------------------------------------------------------- 49 60 ; Restores SS and SP to initial boot loader values. 61 ; 62 ; Before doing any changes, see the note regarding 63 ; LOAD_BDA_SEGMENT_TO in BootVars_SwitchToBootMenuStack 50 64 ; 51 65 ; BootVars_SwitchBackToPostStack … … 60 74 BootVars_SwitchBackToPostStack: 61 75 pop ax ; Pop return address 76 %ifndef USE_186 62 77 cli ; Disable interrupts 78 %endif 63 79 LOAD_BDA_SEGMENT_TO ss, sp 64 80 %ifndef USE_386 … … 68 84 lss sp, [ss:BOOTVARS.dwPostStack] 69 85 %endif 86 %ifndef USE_186 70 87 sti ; Enable interrupts 88 %endif 71 89 jmp ax
Note:
See TracChangeset
for help on using the changeset viewer.