Changeset 493 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h


Ignore:
Timestamp:
Dec 21, 2012, 8:44:25 AM (11 years ago)
Author:
gregli@…
google:author:
gregli@hotmail.com
Message:

Separated MODULE_8BIT_IDE into the basic part used by XTIDE rev 1 and rev 2 which is PIO based, and MODULE_8BIT_IDE_ADVANCED for JRIDE and XTCF support which requires memory mapping and/or DMA. This allows for creating an 8KB image with boot menu support (but no hotkeys) for the XTIDE rev 1. Cleaned up how we reset the drive translation information, ensuring it is properly set between boot attempt on a primary and secondary drive - as a result we clean it when needed, rather than trying to always keep it clean. Also fixed translation bugs in int13h.asm where I had previously missed converting some MODULE_HOTKEYS into MODULE_DRIVEXLATE.

Location:
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h
Files:
3 edited

Legend:

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

    r474 r493  
    7676
    7777
    78 %ifdef MODULE_8BIT_IDE
    7978;--------------------------------------------------------------------
    8079; AH23h_Enable8bitPioMode
     
    8887;       AL, BX, CX, DX, SI
    8988;--------------------------------------------------------------------
     89%ifdef MODULE_8BIT_IDE
    9090AH23h_Enable8bitPioMode:
    9191    mov     si, FEATURE_ENABLE_8BIT_PIO_TRANSFER_MODE
    9292    jmp     SHORT AH23h_SetControllerFeatures
    93 %endif ; MODULE_8BIT_IDE
     93%endif
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH24h_HSetBlocks.asm

    r491 r493  
    5959;--------------------------------------------------------------------
    6060AH24h_SetBlockSize:
    61 %ifdef MODULE_8BIT_IDE
     61%ifdef MODULE_8BIT_IDE_ADVANCED
    6262    ; XT-CF does not support largest block size in DMA mode.
    6363    cmp     al, XTCF_DMA_MODE_MAX_BLOCK_SIZE
     
    6666    je      SHORT AH1Eh_LoadInvalidCommandToAHandSetCF
    6767.NoNeedToLimitBlockSize:
    68 %endif ; MODULE_8BIT_IDE
     68%endif ; MODULE_8BIT_IDE_ADVANCED
    6969
    7070    push    bx
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH9h_HInit.asm

    r480 r493  
    107107
    108108;;; Set XT-CF mode
    109 %ifdef MODULE_8BIT_IDE
     109%ifdef MODULE_8BIT_IDE_ADVANCED
    110110    call    AccessDPT_GetIdevarsToCSBX
    111111    mov     al, [cs:bx+IDEVARS.bXTCFcontrolRegister]
     
    113113    STORE_ERROR_FLAG_TO_DPT     FLG_INITERROR_FAILED_TO_SET_XTCF_MODE
    114114.DoNotSetXTCFmode:
    115 
    116 
     115%endif  ; MODULE_8BIT_IDE_ADVANCED
     116
     117%ifdef MODULE_8BIT_IDE
    117118;;; Set 8-bit PIO mode
    118119    call    AH9h_Enable8bitModeForDevice8bitAta
     
    266267
    267268
    268 %ifdef MODULE_8BIT_IDE
     269%ifdef MODULE_8BIT_IDE_ADVANCED
    269270;--------------------------------------------------------------------
    270271; AH9h_SetModeFromALtoXTCF
     
    284285    jne     SHORT IgnoreInvalidCommandError
    285286    jmp     AH1Eh_ChangeXTCFmodeBasedOnControlRegisterInAL
    286 
    287 
     287%endif ; MODULE_8BIT_IDE_ADVANCED
     288
     289%ifdef MODULE_8BIT_IDE
    288290;--------------------------------------------------------------------
    289291; AH9h_Enable8bitModeForDevice8bitAta
     
    302304    jne     SHORT IgnoreInvalidCommandError
    303305    jmp     AH23h_Enable8bitPioMode
    304 %endif ; MODULE_8BIT_IDE
     306%endif
Note: See TracChangeset for help on using the changeset viewer.