Changeset 614 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS
- Timestamp:
- Jun 10, 2021, 4:56:34 PM (3 years ago)
- Location:
- trunk/XTIDE_Universal_BIOS
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Inc/ATA_ID.inc
r593 r614 22 22 23 23 ; Maximum valid P-CHS parameters 24 MAX_ VALID_PCHS_CYLINDERS EQU 1638325 MAX_ VALID_PCHS_HEADS EQU 1626 MAX_ VALID_PCHS_SECTORS_PER_TRACK EQU 6324 MAX_PCHS_CYLINDERS EQU 16383 25 MAX_PCHS_HEADS EQU 16 26 MAX_PCHS_SECTORS_PER_TRACK EQU 63 27 27 28 28 -
trunk/XTIDE_Universal_BIOS/Inc/RomVars.inc
r605 r614 46 46 FLG_DRVPARAMS_BLOCKMODE EQU (1<<4) ; Enable Block mode transfers 47 47 FLG_DRVPARAMS_USERCHS EQU (1<<5) ; User specified P-CHS values 48 MAX_PCHS_CYLINDERS EQU 1638349 MAX_PCHS_HEADS EQU 1650 MAX_PCHS_SECTORS_PER_TRACK EQU 6351 MAX_PCHS_TOTAL_SECTOR_COUNT EQU (MAX_PCHS_CYLINDERS * MAX_PCHS_HEADS * MAX_PCHS_SECTORS_PER_TRACK) ; 16,514,06452 48 FLG_DRVPARAMS_USERLBA EQU (1<<6) ; User specified LBA value 49 FLG_DRVPARAMS_DO_NOT_DETECT EQU (1<<7) ; Disable detection of drive 53 50 54 51 … … 143 140 .rgbJump resb 3 ; First instruction to ROM init (jmp) 144 141 145 .rgbSign resb 8 ; Signature for XTIDE Configurator Program142 .rgbSign resb 6 ; Signature for XTIDE Configurator Program (must be even length) 146 143 .szTitle resb 31 ; BIOS title string 147 144 .szVersion resb 25 ; BIOS version string -
trunk/XTIDE_Universal_BIOS/Inc/Version.inc
r601 r614 20 20 21 21 ; Flash signature revisions: 22 ; XUB208 Added option to skip slave drive detection 22 23 ; XTIDE207 Added device type DEVICE_8BIT_XTIDE_REV2_OLIVETTI 23 24 ; XTIDE206 Added support for Color Themes … … 50 51 %define TITLE_STRING TITLE_STRING_START, TITLE_STRING_END 51 52 %define ROM_VERSION_STRING "v2.0.0",BETA,"3+ (",__DATE__,")",NULL 52 %define FLASH_SIGNATURE "X TIDE207" ; Do not terminate with NULL53 %define FLASH_SIGNATURE "XUB208" ; Do not terminate with NULL 53 54 54 55 -
trunk/XTIDE_Universal_BIOS/Src/Initialization/AtaID.asm
r613 r614 35 35 ; ES:SI: Ata information with possible corrections made 36 36 ; AH: INT 13h Error Code from reading ATA information 37 ; CF cleared if drive now accepted37 ; CF Cleared if drive now accepted 38 38 ; Corrupts registers: 39 39 ; AL, BX, CX, DX, DI … … 49 49 50 50 ; Only correct cylinders since there are no reports that head or sectors could be wrong 51 MIN_U WORD [es:si+ATA1.wCylCnt], MAX_ VALID_PCHS_CYLINDERS ; Limit to max allowed value52 51 MIN_U WORD [es:si+ATA1.wCylCnt], MAX_PCHS_CYLINDERS ; Limit to max allowed value 52 53 53 ; Note! There are ATA ID words 54-58 that also need to be modified! However, 54 54 ; the drive itself should modify them when we do Initialize Device Parameters command at AH=9h. 55 55 ; Verification from real drive needed before we fix them manually 56 56 57 57 clc ; Return success 58 58 .Return: … … 82 82 ; Verify P-CHS cylinders 83 83 mov bx, ATA1.wCylCnt 84 mov ax, MAX_ VALID_PCHS_CYLINDERS84 mov ax, MAX_PCHS_CYLINDERS 85 85 call .CompareCHorSfromOffsetBXtoMaxValueInAX 86 86 87 87 mov bl, ATA1.wHeadCnt & 0FFh 88 mov ax, MAX_ VALID_PCHS_HEADS88 mov ax, MAX_PCHS_HEADS 89 89 call .CompareCHorSfromOffsetBXtoMaxValueInAX 90 90 91 91 mov bl, ATA1.wSPT & 0FFh 92 mov al, MAX_ VALID_PCHS_SECTORS_PER_TRACK92 mov al, MAX_PCHS_SECTORS_PER_TRACK 93 93 call .CompareCHorSfromOffsetBXtoMaxValueInAX 94 94 -
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm
r605 r614 44 44 call StartDetectionWithDriveSelectByteInBHandStringInCX ; Detect and create DPT + BOOTNFO 45 45 46 test BYTE [cs:bp+IDEVARS.drvParamsSlave+DRVPARAMS.wFlags], FLG_DRVPARAMS_DO_NOT_DETECT 47 jnz SHORT .SkipSlaveDetection 46 48 mov cx, g_szDetectSlave 47 49 mov bh, MASK_DRVNHEAD_SET | FLG_DRVNHEAD_DRV 48 50 call StartDetectionWithDriveSelectByteInBHandStringInCX 51 .SkipSlaveDetection: 49 52 50 53 %ifdef MODULE_HOTKEYS -
trunk/XTIDE_Universal_BIOS/makefile
r613 r614 118 118 DEFINES_AT_LARGE = $(DEFINES_AT) $(DEFINES_COMMON_LARGE) 119 119 120 DEFINES_XT_TINY = MODULE_STRINGS_COMPRESSED MODULE_8BIT_IDE NO_ATAID_VALIDATION NO_ATAID_CORRECTIONCLD_NEEDED120 DEFINES_XT_TINY = MODULE_STRINGS_COMPRESSED MODULE_8BIT_IDE NO_ATAID_VALIDATION CLD_NEEDED 121 121 DEFINES_386 = $(DEFINES_AT) USE_386 MODULE_ADVANCED_ATA MODULE_WIN9X_CMOS_HACK 122 122 DEFINES_386_LARGE = $(DEFINES_386) $(DEFINES_COMMON_LARGE)
Note:
See TracChangeset
for help on using the changeset viewer.