Ignore:
Timestamp:
Apr 22, 2013, 10:32:25 AM (11 years ago)
Author:
aitotat@…
google:author:
aitotat@gmail.com
Message:

Changes to XTIDE Universal BIOS:

  • Assited LBA is now the default geometry translation mode if MODULE_EBIOS is defined and drive supports LBA.
  • P-Heads are now limited to 15 only when LARGE mode requires Revised ECHS translation.


File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/CreateDPT.asm

    r547 r549  
    100100
    101101    ; Translate P-CHS to L-CHS
    102     call    AtaGeometry_GetLCHStoAXBLBHfromAtaInfoInESSIandTranslateModeInDX
     102    call    AtaGeometry_GetLCHStoAXBLBHfromAtaInfoInESSIwithTranslateModeInDX
    103103    mov     [di+DPT.wLchsCylinders], ax
    104104    mov     [di+DPT.wLchsHeadsAndSectors], bx
     
    113113    jz      SHORT .LimitHeadsForLargeAddressingMode
    114114
    115     or      cl, FLGL_DPT_LBA        ; Set LBA bit for Assisted LBA
     115    ; Set LBA bit for Assisted LBA
     116    or      cl, FLGL_DPT_LBA
    116117    jmp     SHORT .NothingToChange
     118
    117119.LimitHeadsForLargeAddressingMode:
    118     MIN_U   bl, 15                  ; Cannot have 16 P-Heads in LARGE addressing mode
     120    ; We cannot have 16 P-Heads heads in Revised ECHS mode (8193 or more cylinders)
     121    ; but 16 heads are allowed when there are 8192 or less cylinders (ECHS).
     122    ; Both of these are LARGE modes so do not confuse with NORMAL mode.
     123    call    AtaGeometry_IsDriveSmallEnoughForECHS
     124    jc      SHORT .NothingToChange
     125    dec     bx                      ; Adjust 16 P-Heads to 15
     126
    119127.NothingToChange:
    120128    or      [di+DPT.bFlagsLow], cl  ; Shift count and addressing mode
Note: See TracChangeset for help on using the changeset viewer.