Ignore:
Timestamp:
May 2, 2011, 9:41:51 AM (13 years ago)
Author:
aitotat
google:author:
aitotat
Message:

Changes to XTIDE Universal BIOS:

  • Optimized few bytes.
File:
1 edited

Legend:

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

    r155 r158  
    2828ALIGN JUMP_ALIGN
    2929AH2h_HandlerForReadDiskSectors:
    30     call    AH2h_ExitInt13hIfSectorCountInIntpackIsZero
     30    cmp     BYTE [bp+IDEPACK.intpack+INTPACK.al], 0
     31    je      SHORT AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
     32
    3133    mov     ah, COMMAND_READ_SECTORS    ; Load sector mode command
    32     test    WORD [di+DPT.wFlags], FLG_DPT_BLOCK_MODE_SUPPORTED
     34    test    BYTE [di+DPT.bFlagsHigh], FLGH_DPT_BLOCK_MODE_SUPPORTED
    3335    eCMOVNZ ah, COMMAND_READ_MULTIPLE   ; Load block mode command
    3436    mov     bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ)
     
    4446
    4547;--------------------------------------------------------------------
    46 ; AH2h_ExitInt13hIfSectorCountInIntpackIsZero
     48; AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
    4749;   Parameters:
    48 ;       SS:BP:  Ptr to IDEPACK
    49 ;   Parameters on INTPACK:
    50 ;       AL:     Number of sectors to transfer (1...255)
     50;       Nothing
    5151;   Returns:
    52 ;       Nothing (does not return if error)
    53 ;   Corrupts registers:
    54 ;       Nothing
     52;       Jumps to Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
    5553;--------------------------------------------------------------------
    56 ALIGN JUMP_ALIGN
    57 AH2h_ExitInt13hIfSectorCountInIntpackIsZero:
    58     cmp     BYTE [bp+IDEPACK.intpack+INTPACK.al], 0
    59     je      SHORT .InvalidSectorCount
    60     ret
    61 .InvalidSectorCount:
     54AH2h_ExitInt13hSinceSectorCountInIntpackIsZero:
    6255    mov     ah, RET_HD_INVALID
    6356    jmp     Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
Note: See TracChangeset for help on using the changeset viewer.