Changeset 120 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Initialization
- Timestamp:
- Feb 28, 2011, 4:41:41 PM (14 years ago)
- google:author:
- aitotat
- Location:
- trunk/XTIDE_Universal_BIOS/Src/Initialization
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm
r98 r120 68 68 StartDetectionWithDriveSelectByteInBHandStringInAX: 69 69 call DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP 70 call ReadAtaInfoFromDrive ; Assume hard disk 71 jnc SHORT CreateBiosTablesForHardDisk 72 ;call ReadAtapiInfoFromDrive ; Assume CD-ROM (not yet implemented) 73 ;jnc SHORT _CreateBiosTablesForCDROM 74 jmp DetectPrint_DriveNotFound 75 70 ; Fall to .ReadAtaInfoFromHardDisk 76 71 77 72 ;-------------------------------------------------------------------- 78 ; ReadAtaInfoFromDrive73 ; .ReadAtaInfoFromHardDisk 79 74 ; Parameters: 80 75 ; BH: Drive Select byte for Drive and Head Register … … 89 84 ; AX, BL, CX, DX, DI 90 85 ;-------------------------------------------------------------------- 91 ReadAtaInfoFromDrive:86 .ReadAtaInfoFromHardDisk: 92 87 mov bl, [cs:bp+IDEVARS.bBusType]; Load BUS type 93 88 mov dx, [cs:bp+IDEVARS.wPort] ; Load IDE Base Port address 94 89 mov di, BOOTVARS.rgbAtaInfo ; ES:DI now points to ATA info location 95 90 call AH25h_GetDriveInfo 96 mov si, di ; ES:SI now points to ATA information 97 ret 91 jnc SHORT CreateBiosTablesForHardDisk 92 ; Fall to .ReadAtapiInfoFromDrive 93 94 .ReadAtapiInfoFromDrive: ; Not yet implemented 95 ;call ReadAtapiInfoFromDrive ; Assume CD-ROM 96 ;jnc SHORT _CreateBiosTablesForCDROM 97 jmp DetectPrint_DriveNotFound 98 98 99 99 … … 103 103 ; BH: Drive Select byte for Drive and Head Register 104 104 ; CS:BP: Ptr to IDEVARS for the drive 105 ; ES: SI Ptr to ATA information for the drive105 ; ES:DI Ptr to ATA information for the drive 106 106 ; DS: RAMVARS segment 107 107 ; ES: BDA/Bootnfo segment … … 112 112 ;-------------------------------------------------------------------- 113 113 CreateBiosTablesForHardDisk: 114 mov si, di ; ES:SI now points to ATA information 114 115 call CreateDPT_FromAtaInformation 115 116 jc SHORT .InvalidAtaInfo -
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectPrint.asm
r98 r120 14 14 ; Nothing 15 15 ; Corrupts registers: 16 ; AX, SI 16 ; AX, SI, DI 17 17 ;-------------------------------------------------------------------- 18 18 DetectPrint_RomFoundAtSegment: … … 33 33 ; Nothing 34 34 ; Corrupts registers: 35 ; AX, SI 35 ; AX, SI, DI 36 36 ;-------------------------------------------------------------------- 37 37 DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP: -
trunk/XTIDE_Universal_BIOS/Src/Initialization/Initialize.asm
r98 r120 70 70 ;-------------------------------------------------------------------- 71 71 Initialize_AndDetectDrives: 72 CALL_DISPLAY_LIBRARY InitializeDisplayContext 72 73 call DetectPrint_RomFoundAtSegment 73 74 call RamVars_Initialize -
trunk/XTIDE_Universal_BIOS/Src/Initialization/Interrupts.asm
r97 r120 142 142 ;-------------------------------------------------------------------- 143 143 Interrupts_InstallHandlerToVectorInBXFromCSSI: 144 eSHL_IM bx, 2 ; Shift for DWORD offset 144 shl bx, 1 145 shl bx, 1 ; Shift for DWORD offset 145 146 mov [es:bx], si ; Store offset 146 147 mov [es:bx+2], cs ; Store segment
Note:
See TracChangeset
for help on using the changeset viewer.