Changeset 249 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h
- Timestamp:
- Feb 16, 2012, 1:56:36 PM (13 years ago)
- google:author:
- aitotat@gmail.com
- Location:
- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH2h_HRead.asm
r221 r249 23 23 ; Returns with INTPACK: 24 24 ; AH: Int 13h/40h floppy return status 25 ; AL: Burst error length if AH returns 11h, undefined otherwise 25 ; AL: Burst error length if AH returns 11h (we never return error code 11h) 26 ; Number of sectors actually read (only valid if CF set for someBIOSes) 26 27 ; CF: 0 if successfull, 1 if error 27 28 ;-------------------------------------------------------------------- … … 33 34 mov bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ) 34 35 %ifdef USE_186 35 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 36 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAHandTransferredSectorsFromCL 36 37 jmp Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH 37 38 %else 38 39 call Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH 39 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 40 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAHandTransferredSectorsFromCL 40 41 %endif -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH3h_HWrite.asm
r221 r249 23 23 ; Returns with INTPACK: 24 24 ; AH: Int 13h/40h floppy return status 25 ; AL: Number of sectors actually written (only valid if CF set for someBIOSes) 25 26 ; CF: 0 if successfull, 1 if error 26 27 ;-------------------------------------------------------------------- … … 32 33 mov bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ) 33 34 %ifdef USE_186 34 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 35 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAHandTransferredSectorsFromCL 35 36 jmp Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH 36 37 %else 37 38 call Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH 38 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 39 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAHandTransferredSectorsFromCL 39 40 %endif -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH4h_HVerify.asm
r221 r249 22 22 ; Returns with INTPACK in SS:BP: 23 23 ; AH: Int 13h/40h floppy return status 24 ; AL: Number of sectors actually verified (only valid if CF set for someBIOSes) 24 25 ; CF: 0 if successfull, 1 if error 25 26 ;-------------------------------------------------------------------- … … 30 31 mov bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRDY) 31 32 %ifdef USE_186 32 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 33 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAHandTransferredSectorsFromCL 33 34 jmp Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH 34 35 %else 35 36 call Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH 36 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 37 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAHandTransferredSectorsFromCL 37 38 %endif -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH42h_ExtendedReadSectors.asm
r221 r249 20 20 ; CF: 0 if succesfull, 1 if error 21 21 ; Return with Disk Address Packet in INTPACK: 22 ; . bSectorCount Number of sectors read successfully22 ; .wSectorCount Number of sectors read successfully 23 23 ;-------------------------------------------------------------------- 24 24 ALIGN JUMP_ALIGN … … 27 27 mov ah, [cs:bx+g_rgbReadCommandLookup] 28 28 mov bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ) 29 %ifdef USE_18630 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH31 jmp Idepack_ConvertDapToIdepackAndIssueCommandFromAH32 %else33 29 call Idepack_ConvertDapToIdepackAndIssueCommandFromAH 30 ; Fall to AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX 31 32 33 ;-------------------------------------------------------------------- 34 ; AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX 35 ; Parameters: 36 ; AH: INT 13h Error Code 37 ; CX: Number of successfully transferred sectors 38 ; SS:BP: Ptr to IDEPACK 39 ; Returns: 40 ; Nothing, jumps to Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 41 ; Corrupts registers: 42 ; SI, DS 43 ;-------------------------------------------------------------------- 44 AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX: 45 mov ds, [bp+IDEPACK.intpack+INTPACK.ds] 46 mov si, [bp+IDEPACK.intpack+INTPACK.si] 47 mov [si+DAP.wSectorCount], cx 34 48 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 35 %endif -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH43h_ExtendedWriteSectors.asm
r221 r249 22 22 ; CF: 0 if succesfull, 1 if error 23 23 ; Return with Disk Address Packet in INTPACK: 24 ; . bSectorCount Number of sectors written successfully24 ; .wSectorCount Number of sectors written successfully 25 25 ;-------------------------------------------------------------------- 26 26 ALIGN JUMP_ALIGN … … 33 33 mov bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ) 34 34 %ifdef USE_186 35 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH35 push AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX 36 36 jmp Idepack_ConvertDapToIdepackAndIssueCommandFromAH 37 37 %else 38 38 call Idepack_ConvertDapToIdepackAndIssueCommandFromAH 39 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH39 jmp SHORT AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX 40 40 %endif -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH44h_ExtendedVerifySectors.asm
r221 r249 20 20 ; CF: 0 if succesfull, 1 if error 21 21 ; Return with Disk Address Packet in INTPACK: 22 ; . bSectorCount Number of sectors verified successfully22 ; .wSectorCount Number of sectors verified successfully 23 23 ;-------------------------------------------------------------------- 24 24 ALIGN JUMP_ALIGN … … 28 28 mov bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRDY) 29 29 %ifdef USE_186 30 push Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH30 push AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX 31 31 jmp Idepack_ConvertDapToIdepackAndIssueCommandFromAH 32 32 %else 33 33 call Idepack_ConvertDapToIdepackAndIssueCommandFromAH 34 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH34 jmp SHORT AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX 35 35 %endif -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH47h_ExtendedSeek.asm
r221 r249 36 36 jmp Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH 37 37 %endif 38 39 .WriteWithVerifyNotSupported:40 jmp Prepare_ReturnFromInt13hWithInvalidFunctionError
Note:
See TracChangeset
for help on using the changeset viewer.