Changeset 474 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm
- Timestamp:
- Oct 11, 2012, 5:30:15 PM (13 years ago)
- google:author:
- aitotat@gmail.com
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm
r473 r474 153 153 ;-------------------------------------------------------------------- 154 154 StartDetectionWithDriveSelectByteInBHandStringInCX: 155 call DetectPrint_StartDetectWithMasterOrSlaveStringInCXandIdeVarsInCSBP 156 %ifdef MODULE_HOTKEYS 157 call HotkeyBar_UpdateDuringDriveDetection 158 %endif 159 ; Fall to .AutodetectXTCFport or .ReadAtaInfoFromHardDisk 160 161 155 ; Autodetect port for XT-CF 162 156 %ifdef MODULE_8BIT_IDE 163 ;--------------------------------------------------------------------164 ; .AutodetectXTCFport165 ; Parameters:166 ; BH: Drive Select byte for Drive and Head Register167 ; CS:BP: Ptr to IDEVARS for the drive168 ; DS: RAMVARS segment169 ; ES: Zero (BDA segment)170 ; Returns:171 ; DX: Autodetected port (for devices that support autodetection)172 ; Corrupts registers:173 ; AX174 ;--------------------------------------------------------------------175 .AutodetectXTCFport:176 ; Detect port for XTCF177 157 call DetectDrives_DoesIdevarsInCSBPbelongToXTCF 178 158 jne SHORT .SkipXTCFportDetection 159 160 ; XT-CF do not support slave drives so skip detection 161 test bh, FLG_DRVNHEAD_DRV 162 jnz SHORT NoSlaveDriveAvailable 179 163 180 164 ; XT-CF do not support slave drives so we can safely update port … … 183 167 call BootVars_GetNextXTCFportToDetectToDX 184 168 cmp dx, XTCF_BASE_PORT_4 185 ja SHORT DetectDrives_DriveNotFound; XT-CF not found from any port169 ja SHORT .SkipXTCFportDetection ; XT-CF not found from any port 186 170 187 171 call AH1Eh_DetectXTCFwithBasePortInDX 188 172 jc SHORT .DetectNextPort ; XT-CF not found from this port 173 174 ; We now have autodetected port in DX 175 push dx 176 xchg ax, dx ; Port to print in AX 177 call DetectPrint_StartDetectWithAutodetectedBasePortInAXandIdeVarsInCSBP 178 jmp SHORT .DriveDetectionStringPrintedOnScreen 179 180 ; Print detect string for devices that do not support autodetection 189 181 .SkipXTCFportDetection: 182 push dx 183 %endif ; MODULE_8BIT_IDE 184 185 call DetectPrint_StartDetectWithMasterOrSlaveStringInCXandIdeVarsInCSBP 186 .DriveDetectionStringPrintedOnScreen: 187 %ifdef MODULE_HOTKEYS 188 call HotkeyBar_UpdateDuringDriveDetection 189 %endif 190 %ifdef MODULE_8BIT_IDE 191 pop dx 192 %endif 190 193 ; Fall to .ReadAtaInfoFromHardDisk 191 %endif ; MODULE_8BIT_IDE192 194 193 195 … … 284 286 cmp al, DEVICE_8BIT_XTCF_MEMMAP 285 287 .DeviceIsXTCF: 288 NoSlaveDriveAvailable: 286 289 ret 287 290 %endif ; MODULE_8BIT_IDE
Note:
See TracChangeset
for help on using the changeset viewer.