Changeset 584 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Handlers
- Timestamp:
- Apr 25, 2015, 7:17:41 PM (10 years ago)
- google:author:
- aitotat
- Location:
- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH1Eh_XTCF.asm
r567 r584 111 111 ; Selected transfer mode is stored in BIOS variable (DPT_ATA.bDevice). 112 112 113 ; Note that when selecting 'DEVICE_8BIT_ PIO_MODE_WITH_BIU_OFFLOAD' mode,113 ; Note that when selecting 'DEVICE_8BIT_XTCF_PIO8_WITH_BIU_OFFLOAD' mode, 114 114 ; the ATA device (i.e. CompactFlash card) will operate in 8-bit mode, but 115 115 ; data will be transferred from its data register using 16-bit CPU instructions … … 134 134 dec ax ; XTCF_8BIT_PIO_MODE_WITH_BIU_OFFLOAD = 1 135 135 jz SHORT .Set8bitPioModeWithBIUOffload 136 dec ax 137 jz SHORT .Set16bitPioModeWithBIUOffload 136 138 137 139 ; XTCF_DMA_MODE = 2 (allow 3 as well for more optimized code) … … 144 146 mov al, XTCF_DMA_MODE_MAX_BLOCK_SIZE 145 147 jmp SHORT AH24h_SetBlockSize 148 149 .Set16bitPioModeWithBIUOffload: 150 pop bx ; Do not enable 8-bit PIO... 151 ePUSH_T bx, AH23h_Disable8bitPioMode ; ...disable it instead 152 mov al, DEVICE_8BIT_XTCF_PIO16_WITH_BIU_OFFLOAD 153 SKIP2B bx 146 154 147 155 .Set8bitPioMode: -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH23h_HFeatures.asm
r526 r584 78 78 ;-------------------------------------------------------------------- 79 79 ; AH23h_Enable8bitPioMode 80 ; AH23h_Disable8bitPioMode 80 81 ; Parameters: 81 82 ; DS:DI: Ptr to DPT (in RAMVARS segment) … … 91 92 mov si, FEATURE_ENABLE_8BIT_PIO_TRANSFER_MODE 92 93 jmp SHORT AH23h_SetControllerFeatures 94 AH23h_Disable8bitPioMode: 95 mov si, FEATURE_DISABLE_8BIT_PIO_TRANSFER_MODE 96 call AH23h_SetControllerFeatures 97 xor ah, ah ; Clear error since modern drives might not understand the command and are 98 ret ; always in 16-bit mode anyway 93 99 %endif
Note:
See TracChangeset
for help on using the changeset viewer.