Ignore:
Timestamp:
Oct 27, 2012, 11:26:11 AM (11 years ago)
Author:
aitotat@…
google:author:
aitotat@gmail.com
Message:

Changes to XTIDE Universal BIOS:

  • XT-CF DMA transfers should now work.
File:
1 edited

Legend:

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

    r474 r480  
    8888
    8989%ifdef MODULE_8BIT_IDE
    90     ; We set XT-CF to 8-bit PIO mode for Identify Device command.
    91     ; Correct XT-CF mode is later set on AH=09h (after all drives are detected).
    92     call    AccessDPT_IsThisDeviceXTCF
    93     jne     SHORT .SkipXTCFmodeChange
    94 
     90    ; Enable 8-bit PIO mode for 8-bit ATA and XT-CF
     91    push    si
     92    call    AH9h_Enable8bitModeForDevice8bitAta
    9593    xor     al, al                      ; XTCF_8BIT_PIO_MODE
    96     push    si
    97     call    AH1Eh_ChangeXTCFmodeBasedOnControlRegisterInAL
     94    call    AH9h_SetModeFromALtoXTCF
    9895    pop     si
    99     jc      SHORT .FailedToSet8bitMode
    100 .SkipXTCFmodeChange:
    10196%endif ; MODULE_8BIT_IDE
    10297
     
    178173    jne     SHORT .WaitUntilNonTransferCommandCompletes
    179174%ifdef MODULE_8BIT_IDE
    180     cmp     BYTE [di+DPT_ATA.bDevice], DEVICE_8BIT_XTCF_DMA
    181     je      SHORT .StartDmaTransfer
    182     ja      SHORT JrIdeTransfer_StartWithCommandInAL    ; DEVICE_8BIT_XTCF_MEMMAP or DEVICE_8BIT_JRIDE_ISA
     175    cmp     BYTE [di+DPT_ATA.bDevice], DEVICE_8BIT_XTCF_MEMMAP
     176    jae     SHORT JrIdeTransfer_StartWithCommandInAL    ; DEVICE_8BIT_XTCF_MEMMAP or DEVICE_8BIT_JRIDE_ISA
     177%endif
    183178    jmp     IdeTransfer_StartWithCommandInAL
    184 .StartDmaTransfer:
    185     jmp     IdeDmaTransfer_StartWithCommandInAL
    186 %else
    187     jmp     IdeTransfer_StartWithCommandInAL
    188 %endif
    189179
    190180.WaitUntilNonTransferCommandCompletes:
Note: See TracChangeset for help on using the changeset viewer.