Changeset 502 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/AutoConfigure.asm
- Timestamp:
- Feb 9, 2013, 5:25:53 PM (12 years ago)
- google:author:
- aitotat@gmail.com
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/AutoConfigure.asm
r497 r502 70 70 mov ax, DISABLE_WRITE_CACHE | (TRANSLATEMODE_AUTO<<TRANSLATEMODE_FIELD_POSITION) | FLG_DRVPARAMS_BLOCKMODE 71 71 mov [di+ROMVARS.ideVars0+IDEVARS.drvParamsMaster+DRVPARAMS.wFlags], ax 72 mov [di+ROMVARS.ideVars0+IDEVARS.drvParamsSlave+DRVPARAMS.wFlags], ax 73 72 74 mov [di+ROMVARS.ideVars1+IDEVARS.drvParamsMaster+DRVPARAMS.wFlags], ax 75 mov [di+ROMVARS.ideVars1+IDEVARS.drvParamsSlave+DRVPARAMS.wFlags], ax 76 73 77 mov [di+ROMVARS.ideVars2+IDEVARS.drvParamsMaster+DRVPARAMS.wFlags], ax 78 mov [di+ROMVARS.ideVars2+IDEVARS.drvParamsSlave+DRVPARAMS.wFlags], ax 79 74 80 mov [di+ROMVARS.ideVars3+IDEVARS.drvParamsMaster+DRVPARAMS.wFlags], ax 81 mov [di+ROMVARS.ideVars3+IDEVARS.drvParamsSlave+DRVPARAMS.wFlags], ax 75 82 ret 76 83 … … 95 102 jz SHORT .AllPortsAlreadyDetected 96 103 push cx 97 call IdeAutodetect_DetectIdeDeviceFromPortDX 104 call IdeAutodetect_DetectIdeDeviceFromPortDXAndReturnControlBlockInCX 105 mov bx, cx 98 106 pop cx 99 107 jc SHORT .DetectFromNextPort … … 101 109 ; Device found from port DX, Device Type returned in AL 102 110 inc cx ; Increment number of controllers found 103 call GetControlBlockPortToBXfromDeviceTypeInALandBasePortInDX104 111 mov [si+IDEVARS.wBasePort], dx 105 112 mov [si+IDEVARS.wControlBlockPort], bx … … 112 119 jmp SHORT .DetectFromNextPort 113 120 .AllPortsAlreadyDetected: 114 ret115 116 117 ;--------------------------------------------------------------------118 ; GetControlBlockPortToBXfromDeviceTypeInALandBasePortInDX119 ; Parameters:120 ; AL: Device Type121 ; DX: Base port122 ; Returns:123 ; BX: Control Block Port124 ; Corrupts registers:125 ; Nothing126 ;--------------------------------------------------------------------127 ALIGN JUMP_ALIGN128 GetControlBlockPortToBXfromDeviceTypeInALandBasePortInDX:129 mov bx, dx130 cmp al, DEVICE_8BIT_XTIDE_REV1131 jae SHORT .NonStandardControlBlockPortLocation132 133 ; Standard IDE Devices134 add bx, STANDARD_CONTROL_BLOCK_OFFSET135 ret136 137 .NonStandardControlBlockPortLocation:138 cmp al, DEVICE_8BIT_JRIDE_ISA139 je SHORT .JrIdeIsaDoesNotNeedControlBlockAddress140 141 ; 8-bit Devices142 add bx, BYTE XTIDE_CONTROL_BLOCK_OFFSET ; XT-CF also143 .JrIdeIsaDoesNotNeedControlBlockAddress:144 121 ret 145 122
Note:
See TracChangeset
for help on using the changeset viewer.