Changeset 155 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeWait.asm


Ignore:
Timestamp:
May 1, 2011, 6:44:29 PM (13 years ago)
Author:
aitotat
google:author:
aitotat
Message:

Changes to XTIDE Universal BIOS:

  • AH=4h again uses VERIFY command (copy-pasting had changed it to WRITE).
  • Timeout should now work on all overflow situations.
  • Cleaned code a bit.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeWait.asm

    r150 r155  
    5353;--------------------------------------------------------------------
    5454IdeWait_PollStatusFlagInBLwithTimeoutInBH:
    55     eMOVZX  cx, bh      ; Timeout ticks now in CX
    5655    mov     ah, bl
    57     call    HTimer_InitializeTimeoutWithTicksInCX
     56    mov     cl, bh
     57    call    Timer_InitializeTimeoutWithTicksInCL
    5858    and     ah, ~FLG_STATUS_BSY
    5959    jz      SHORT PollBsyOnly
     
    8282    jnz     SHORT IdeError_GetBiosErrorCodeToAHfromPolledStatusRegisterInAL
    8383.UpdateTimeout:
    84     call    HTimer_SetCFifTimeout
     84    call    Timer_SetCFifTimeout
    8585    jnc     SHORT .PollLoop                     ; Loop if time left
    8686    call    IdeError_GetBiosErrorCodeToAHfromPolledStatusRegisterInAL
     
    110110    test    al, FLG_STATUS_BSY                  ; Controller busy?
    111111    jz      SHORT IdeError_GetBiosErrorCodeToAHfromPolledStatusRegisterInAL
    112     call    HTimer_SetCFifTimeout               ; Update timeout counter
     112    call    Timer_SetCFifTimeout                ; Update timeout counter
    113113    jnc     SHORT .PollLoop                     ; Loop if time left (sets CF on timeout)
    114114    jmp     SHORT IdeError_GetBiosErrorCodeToAHfromPolledStatusRegisterInAL
Note: See TracChangeset for help on using the changeset viewer.