Changeset 332 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeIO.asm


Ignore:
Timestamp:
Mar 12, 2012, 1:33:24 PM (12 years ago)
Author:
krille_n_@…
google:author:
krille_n_@hotmail.com
Message:

Changes:

  • Fixed a bug in the new BIOS Drive Information Tool.
  • Very small changes to improve speed (I hope).
  • Changed AH48h_GetExtendedDriveParameters.asm to allow AT builds with USE_386 (won't affect any other builds).
  • Verified that most define combinations can be built and changed Strings.asm accordingly. "Most" meaning with or without any combination of EBIOS and/or Serial code defines.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeIO.asm

    r181 r332  
    66
    77;--------------------------------------------------------------------
     8; IdeIO_OutputALtoIdeControlBlockRegisterInDL
    89; IdeIO_OutputALtoIdeRegisterInDL
    9 ; IdeIO_OutputALtoIdeControlBlockRegisterInDL
    1010;   Parameters:
    1111;       AL:     Byte to output
    12 ;       DL:     IDE Register                (IdeIO_OutputALtoIdeRegisterInDL)
    13 ;               IDE Control Block Register  (IdeIO_OutputALtoIdeControlBlockRegisterInDL)
     12;       DL:     IDE Control Block Register  (IdeIO_OutputALtoIdeControlBlockRegisterInDL)
     13;               IDE Register                (IdeIO_OutputALtoIdeRegisterInDL)
    1414;       DS:DI:  Ptr to DPT (in RAMVARS segment)
    1515;   Returns:
     
    1919;--------------------------------------------------------------------
    2020ALIGN JUMP_ALIGN
     21IdeIO_OutputALtoIdeControlBlockRegisterInDL:
     22    mov     bl, IDEVARS.wPortCtrl
     23    SKIP2B  f   ; cmp ax, <next instruction>
     24    ; Fall to IdeIO_OutputALtoIdeRegisterInDL
     25
    2126IdeIO_OutputALtoIdeRegisterInDL:
    2227    mov     bl, IDEVARS.wPort
    23     SKIP2B  f   ; cmp ax, <next instruction>
    24     ; Fall to IdeIO_OutputALtoIdeControlBlockRegisterInDL
    25 
    26 IdeIO_OutputALtoIdeControlBlockRegisterInDL:
    27     mov     bl, IDEVARS.wPortCtrl
    2828    call    GetPortToDXandTranslateA0andA3ifNecessary
    2929    out     dx, al
     
    6363GetPortToDXandTranslateA0andA3ifNecessary:
    6464    xor     bh, bh
     65    add     bl, [di+DPT.bIdevarsOffset]     ; CS:BX now points port address
    6566    xor     dh, dh                          ; DX now has IDE register offset
    66     add     bl, [di+DPT.bIdevarsOffset]     ; CS:BX now points port address
    6767    add     dx, [cs:bx]
    6868    test    BYTE [di+DPT.bFlagsHigh], FLGH_DPT_REVERSED_A0_AND_A3
Note: See TracChangeset for help on using the changeset viewer.