Changeset 618 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h.asm
- Timestamp:
- Aug 31, 2021, 2:17:47 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h.asm
r596 r618 250 250 pop WORD [RAMVARS.xlateVars+XLATEVARS.wFDandHDswap] 251 251 cmp dl, [RAMVARS.xlateVars+XLATEVARS.bXlatedDrv] ; DL is still drive number? 252 je SHORT Int13h_ReturnFromHandler AfterStoringErrorCodeFromAH252 je SHORT Int13h_ReturnFromHandlerWithoutStoringErrorCode 253 253 mov [bp+IDEPACK.intpack+INTPACK.dl], dl ; Something is returned in DL 254 254 %endif 255 jmp SHORT Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 255 jmp SHORT Int13h_ReturnFromHandlerWithoutStoringErrorCode 256 ; We cannot return via Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH! 257 ; 1. If the other BIOS returns something in DL then that is assumed to be a drive number 258 ; (if MODULE_SERIAL_FLOPPY is included) even though it could be anything. 259 ; 2. Any non-zero value in AH will cause the CF to be set on return from the handler. 260 ; This breaks INT 13h/AH=15h for drives handled by the other BIOS. 256 261 257 262
Note:
See TracChangeset
for help on using the changeset viewer.