Changeset 370 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Initialization


Ignore:
Timestamp:
Mar 29, 2012, 4:40:50 PM (13 years ago)
Author:
krille_n_@…
google:author:
krille_n_@hotmail.com
Message:

Changes:

  • Added some missing PIO mode timings to ATA_ID.inc (based on info from http://www.singlix.net/specs/cfspc4_0.pdf)
  • Updated Configuration_FullMode.txt but it may need additional changes as the Tandy info doesn't match the wiki.
  • Optimizations.
  • Excluded some unused code from XTIDECFG.
Location:
trunk/XTIDE_Universal_BIOS/Src/Initialization
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/AdvAtaInit.asm

    r364 r370  
    114114;--------------------------------------------------------------------
    115115AdvAtaInit_SelectSlowestCommonPioTimingsToBXandCXfromDSSIandDSDI:
    116     eMOVZX  bx, BYTE [di+DPT_ADVANCED_ATA.bPioMode]
     116    eMOVZX  bx, [di+DPT_ADVANCED_ATA.bPioMode]
    117117    mov     cx, [di+DPT_ADVANCED_ATA.wMinPioCycleTime]
    118118    test    si, si
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/AtaID.asm

    r364 r370  
    8989    ; Get PIO mode and cycle time for PIO 0...2
    9090    mov     bx, [es:si+ATA1.bPioMode]
     91    mov     ax, bx                  ; AH = 0, AL = PIO mode 0, 1 or 2
    9192    shl     bx, 1                   ; Shift for WORD lookup
    9293    mov     cx, [cs:bx+.rgwPio0to2CycleTimeInNanosecs]
    93     shr     bx, 1
    94     xchg    ax, bx                  ; AH = 0, AL = PIO mode 0, 1 or 2
    9594
    9695    ; Check if IORDY is supported
     
    105104    ; Get Advanced PIO mode
    106105    ; (Hard Disks supports up to 4 but CF cards can support 5 and 6)
    107     mov     bx, [es:si+ATA2.bPIOSupp]
     106    mov     bl, [es:si+ATA2.bPIOSupp]
    108107.CheckNextFlag:
    109108    inc     ax
    110     shr     bx, 1
     109    shr     bl, 1
    111110    jnz     SHORT .CheckNextFlag
    112111    MIN_U   al, 6                       ; Make sure not above lookup tables
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/Vision.asm

    r364 r370  
    4545IsConfigRegisterWithIDinAL:
    4646    mov     ah, al
    47     and     ah, MASK_QDCONFIG_CONTROLLER_ID
    48     cmp     ah, ID_QD6500 << 4
     47    and     al, MASK_QDCONFIG_CONTROLLER_ID
     48    cmp     al, ID_QD6500 << 4
    4949    je      SHORT VisionControllerDetected
    50     cmp     ah, ID_QD6580 << 4
     50    cmp     al, ID_QD6580 << 4
    5151    je      SHORT VisionControllerDetected
    52     cmp     ah, ID_QD6580_ALTERNATE << 4
     52    cmp     al, ID_QD6580_ALTERNATE << 4
    5353VisionControllerDetected:
     54    xchg    ah, al
    5455    ret
    5556
     
    175176    mov     bp, QD6500_MAX_ACTIVE_TIME_CLOCKS | (QD6500_MIN_ACTIVE_TIME_CLOCKS << 8)
    176177
    177     ; We need the PIO Cycle Time in CX to calculate Active and Recovery Times. 
     178    ; We need the PIO Cycle Time in CX to calculate Active and Recovery Times.
    178179.CalculateTimingsForQD65xx:
    179180    call    AdvAtaInit_SelectSlowestCommonPioTimingsToBXandCXfromDSSIandDSDI
Note: See TracChangeset for help on using the changeset viewer.