Ignore:
Timestamp:
Feb 16, 2012, 1:56:36 PM (12 years ago)
Author:
aitotat@…
google:author:
aitotat@gmail.com
Message:

Changes to XTIDE Universal BIOS:

  • Number of successfully transferred sectors is now returned by all transfer functions (instead of requested sector count).
  • Added INT 19h handler for proper reboot.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH42h_ExtendedReadSectors.asm

    r221 r249  
    2020;       CF:     0 if succesfull, 1 if error
    2121;   Return with Disk Address Packet in INTPACK:
    22 ;       .bSectorCount   Number of sectors read successfully
     22;       .wSectorCount   Number of sectors read successfully
    2323;--------------------------------------------------------------------
    2424ALIGN JUMP_ALIGN
     
    2727    mov     ah, [cs:bx+g_rgbReadCommandLookup]
    2828    mov     bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ)
    29 %ifdef USE_186
    30     push    Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
    31     jmp     Idepack_ConvertDapToIdepackAndIssueCommandFromAH
    32 %else
    3329    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;--------------------------------------------------------------------
     44AH42h_ReturnFromInt13hAfterStoringErrorCodeFromAHandTransferredSectorsFromCX:
     45    mov     ds, [bp+IDEPACK.intpack+INTPACK.ds]
     46    mov     si, [bp+IDEPACK.intpack+INTPACK.si]
     47    mov     [si+DAP.wSectorCount], cx
    3448    jmp     Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
    35 %endif
Note: See TracChangeset for help on using the changeset viewer.