Ignore:
Timestamp:
Jan 29, 2012, 11:22:19 PM (12 years ago)
Author:
krille_n_@…
google:author:
krille_n_@hotmail.com
Message:

Changes to XTIDE Universal BIOS:

  • Some small optimizations
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH48h_GetExtendedDriveParameters.asm

    r229 r230  
    4545    mov     WORD [si+EDRIVE_INFO.wFlags], FLG_DMA_BOUNDARY_ERRORS_HANDLED_BY_BIOS
    4646
     47    push    ds  ; Move CS to DS to avoid segment overrides
     48    push    cs
     49    pop     ds
     50
    4751    ; Limit LBA if necessary
    48     test    BYTE [cs:di+DRVPARAMS.wFlags], FLG_DRVPARAMS_USERLBA
     52    test    BYTE [di+DRVPARAMS.wFlags], FLG_DRVPARAMS_USERLBA
    4953    jz      SHORT .StoreTotalSectorsFromBXDXAX
    5054    test    bx, bx
    5155    jnz     SHORT .LimitTotalSectors
    52     cmp     dx, [cs:di+DRVPARAMS.dwMaximumLBA+2]
     56    cmp     dx, [di+DRVPARAMS.dwMaximumLBA+2]
    5357    jb      SHORT .StoreTotalSectorsFromBXDXAX      ; Real size less than max
    5458    ja      SHORT .LimitTotalSectors
    55     cmp     ax, [cs:di+DRVPARAMS.dwMaximumLBA]
     59    cmp     ax, [di+DRVPARAMS.dwMaximumLBA]
    5660    jbe     SHORT .StoreTotalSectorsFromBXDXAX      ; Real size less than max
    5761
    5862.LimitTotalSectors:
    5963    xor     bx, bx
    60     mov     ax, [cs:di+DRVPARAMS.dwMaximumLBA]
    61     mov     dx, [cs:di+DRVPARAMS.dwMaximumLBA+2]
     64    mov     ax, [di+DRVPARAMS.dwMaximumLBA]
     65    mov     dx, [di+DRVPARAMS.dwMaximumLBA+2]
    6266
    6367.StoreTotalSectorsFromBXDXAX:
     68    pop     ds  ; Restore DS from the change above
    6469    mov     [si+EDRIVE_INFO.qwTotalSectors], ax
    6570    xor     ax, ax                                  ; Return with success
Note: See TracChangeset for help on using the changeset viewer.