Changeset 282 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src
- Timestamp:
- Feb 29, 2012, 10:21:42 AM (13 years ago)
- google:author:
- gregli@hotmail.com
- Location:
- trunk/XTIDE_Universal_BIOS/Src/Handlers
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH0h_HReset.asm
r275 r282 51 51 call ResetForeignHardDisks 52 52 53 test di, di54 jz SHORT .SkipHardDiskReset55 56 53 ; Resetting our hard disks will modify dl and bl to be idevars offset based instead of drive number based, 57 54 ; such that this call must be the last in the list of reset routines called. 55 ; 56 ; This needs to happen after ResetForeignHardDisks, as that call may have set the error code for 80h, 57 ; and we need to override that value if we are xlate'd into 80h with one of our drives. 58 58 ; 59 59 call ResetHardDisksHandledByOurBIOS … … 139 139 ; Parameters: 140 140 ; DS:DI: Ptr to DPT for requested drive 141 ; If D I is Null (foreign drive), or if error result in BH won't be used,142 ; enter through .ErrorCodeNotUsed, to avoid di=Null dereference141 ; If DPT pointer is not available, or error result in BH won't be used anyway, 142 ; enter through .ErrorCodeNotUsed. 143 143 ; SS:BP: Ptr to IDEPACK 144 144 ; Returns: … … 148 148 ;-------------------------------------------------------------------- 149 149 ResetHardDisksHandledByOurBIOS: 150 mov bl, 0 ; Assume Null IdevarsOffset for now, assuming foreign drive 151 test di, di 152 jz .ErrorCodeNotUsed 150 153 mov bl, [di+DPT.bIdevarsOffset] ; replace drive number with Idevars pointer for cmp with dl 151 152 .ErrorCodeNotUsed: ; BH will be garbage if thie entry point is used,154 155 .ErrorCodeNotUsed: ; BH will be garbage on exit if thie entry point is used, 153 156 ; but reset of all drives will still happen 154 157 -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AHDh_HReset.asm
r271 r282 80 80 call AH9h_InitializeDriveForUse ; Reset Master and Slave (Master will come first in DPT list) 81 81 pop ax 82 j c .done82 jnc .done 83 83 or ah, (RET_HD_RESETFAIL << 1) | 1 ; OR in Reset Failed error code and CF, will SHR into position later 84 84 .done: -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h.asm
r258 r282 29 29 ALIGN JUMP_ALIGN 30 30 Int19h_BootLoaderHandler: 31 sti 31 32 ; Install INT 19h handler for proper reboot 32 33 LOAD_BDA_SEGMENT_TO es, ax
Note:
See TracChangeset
for help on using the changeset viewer.