Ignore:
Timestamp:
Aug 25, 2012, 2:48:40 PM (12 years ago)
Author:
aitotat@…
google:author:
aitotat@gmail.com
Message:

Changes to XTIDE Universal BIOS:

  • Offset to ATA-ID buffer will no longer get corrupted when trying to enable 8-bit mode for XT-CF.
  • Optimized A0<->A3 swapping a bit.
File:
1 edited

Legend:

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

    r442 r443  
    6363;       CF:     Cleared if success, Set if error
    6464;   Corrupts registers:
    65 ;       AL, BL, CX, DX, SI, DI, ES
     65;       AL, BX, CX, DX, SI, DI, ES
    6666;--------------------------------------------------------------------
    6767IdeCommand_IdentifyDeviceToBufferInESSIwithDriveSelectByteInBH:
     
    7474    call    IdeDPT_StoreDeviceTypeFromIdevarsInCSBPtoDPTinDSDI
    7575
    76     ; Wait until drive motors have reached max speed
     76    ; Wait until drive motors have reached full speed
    7777    cmp     bp, BYTE ROMVARS.ideVars0       ; First controller?
    7878    jne     SHORT .SkipLongWaitSinceDriveIsNotPrimaryMaster
     
    8888%ifdef MODULE_8BIT_IDE
    8989    ; Enable 8-bit PIO mode for Lo-tech XT-CF
     90    push    si
    9091    call    AH9h_Enable8bitPioModeForXTCF
     92    pop     si
    9193    jc      SHORT .FailedToSet8bitMode
    9294%endif
     
    100102    ; Clean stack and return
    101103.FailedToSet8bitMode:
    102     lea     sp, [bp+EXTRA_BYTES_FOR_INTPACK]    ; This assumes BP hasn't changed between Idepack_FakeToSSBP and here
     104    lea     sp, [bp+SIZE_OF_IDEPACK_WITHOUT_INTPACK]    ; This assumes BP hasn't changed between Idepack_FakeToSSBP and here
    103105    pop     bp
    104106    ret
Note: See TracChangeset for help on using the changeset viewer.