Changeset 547 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs
- Timestamp:
- Apr 21, 2013, 3:47:11 PM (12 years ago)
- google:author:
- aitotat@gmail.com
- Location:
- trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/AtaGeometry.asm
r542 r547 176 176 ; BL: Number of L-CHS heads (?...240) 177 177 ; CX: Number of bits shifted (0...3) 178 ; D L: ADDRESSING_MODE_NORMAL or ADDRESSING_MODE_LARGE178 ; DX: ADDRESSING_MODE_NORMAL or ADDRESSING_MODE_LARGE 179 179 ; Corrupts registers: 180 180 ; Nothing … … 218 218 ; ConvertPCHfromAXBLtoEnhancedCHinAXBL: 219 219 ; Parameters: 220 ; AX: Number of P-CHS cylinders (1...8192 )220 ; AX: Number of P-CHS cylinders (1...8192, or up to 17475 if fell from above) 221 221 ; BL: Number of P-CHS heads (1...16) 222 222 ; Returns: 223 223 ; AX: Number of L-CHS cylinders (?...1024) 224 ; BL: Number of L-CHS heads (?...128 )224 ; BL: Number of L-CHS heads (?...128, or up to 240 if fell from above) 225 225 ; CX: Number of bits shifted (0...3) 226 ; D L: TRANSLATEMODE_NORMAL or TRANSLATEMODE_LARGE226 ; DX: TRANSLATEMODE_NORMAL or TRANSLATEMODE_LARGE 227 227 ; Corrupts registers: 228 228 ; Nothing 229 229 ;-------------------------------------------------------------------- 230 230 ConvertPCHfromAXBLtoEnhancedCHinAXBL: 231 cwd ; Assume TRANSLATEMODE_NORMAL 231 232 xor cx, cx ; No bits to shift initially 232 xor dl, dl ; Assume TRANSLATEMODE_NORMAL233 233 .ShiftIfMoreThan1024Cylinder: 234 234 cmp ax, MAX_LCHS_CYLINDERS -
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/BootVars.asm
r545 r547 59 59 ;-------------------------------------------------------------------- 60 60 BootVars_StoreDefaultDriveLettersToHotkeyVars: 61 mov WORD [es:BOOTVARS.hotkeyVars+HOTKEYVARS.wFddAndHddLetters], DEFAULT_FLOPPY_DRIVE_LETTER | (DEFAULT_HARD_DRIVE_LETTER<<8) 61 call BootVars_GetLetterForFirstHardDriveToAX 62 mov ah, DEFAULT_FLOPPY_DRIVE_LETTER 63 xchg al, ah 64 mov [es:BOOTVARS.hotkeyVars+HOTKEYVARS.wFddAndHddLetters], ax 62 65 ret 63 66 64 67 %endif ; MODULE_HOTKEYS 68 69 70 ;-------------------------------------------------------------------- 71 ; Returns letter for first hard disk. Usually it will be 'C' but it 72 ; can be higher if more than two floppy drives are found. 73 ; 74 ; BootVars_GetLetterForFirstHardDriveToAX 75 ; Parameters: 76 ; DS: RAMVARS segment 77 ; Returns: 78 ; AX: Upper case letter for first hard disk 79 ; Corrupts registers: 80 ; Nothing 81 ;-------------------------------------------------------------------- 82 BootVars_GetLetterForFirstHardDriveToAX: 83 call FloppyDrive_GetCountToAX 84 add al, DEFAULT_FLOPPY_DRIVE_LETTER ; First Hard Drive letter comes after last floppy drive letter... 85 MAX_U al, DEFAULT_HARD_DRIVE_LETTER ; ...but it can never be 'A' or 'B' 86 ret -
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/CreateDPT.asm
r545 r547 109 109 ; Store P-CHS and flags 110 110 call AtaGeometry_GetPCHStoAXBLBHfromAtaInfoInESSI 111 dec d x; Set ZF if TRANSLATEMODE_LARGE, SF if TRANSLATEMODE_NORMAL111 dec dl ; Set ZF if TRANSLATEMODE_LARGE, SF if TRANSLATEMODE_NORMAL 112 112 js SHORT .NothingToChange 113 113 jz SHORT .LimitHeadsForLargeAddressingMode -
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/RamVars.asm
r531 r547 197 197 ret 198 198 %endif 199 200 201 %if 0 ; unused...202 ;--------------------------------------------------------------------203 ; RamVars_IsDriveDetectionInProgress204 ; Parameters:205 ; DS: RAMVARS segment206 ; Returns:207 ; ZF: Set if drive detection is in progress (ROM initialization)208 ; Corrupts registers:209 ; None210 ;--------------------------------------------------------------------211 RamVars_IsDriveDetectionInProgress:212 cmp WORD [RAMVARS.wSignature], RAMVARS_DRV_DETECT_SIGNATURE213 ret214 %endif
Note:
See TracChangeset
for help on using the changeset viewer.