Ignore:
Timestamp:
Aug 31, 2021, 2:17:47 PM (3 years ago)
Author:
krille_n_
Message:

Changes:

  • Updated the BIOS makefile. Added the NO_ATAID_CORRECTION define back to the Tiny build as I've realized that the correction code should not be needed for builds without MODULE_EBIOS. Also added a new makefile target 'custom' to make it easier for people to make custom builds.
  • Fixed a bug where calling INT 13h/AH=15h for drives not handled by XUB (floppy drives for example) would return an error due to the fact that any non-zero return value in AH from the other BIOS would cause the CF to be set in Int13h_SetErrorCodeToIntpackInSSBPfromAH. The return path is now via Int13h_ReturnFromHandlerWithoutStoringErrorCode which means that no status/error code will be returned in the BDA but that should not be a problem as the other BIOS should do that anyway. This change also fixed another potential problem where return values in DL from the other BIOS were assumed to be drive numbers when MODULE_SERIAL_FLOPPY is included in the build.
  • Minor optimizations and fixes.
File:
1 edited

Legend:

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

    r617 r618  
    6565;   Parameters:
    6666;       AH:     INT 13h error code
    67 ;       CX:     Number of sectors that was meant to we verified
     67;       CX:     Number of sectors that was meant to be verified
    6868;       DS:DI:  Ptr to DPT (in RAMVARS segment)
    6969;       SS:BP:  Ptr to IDEPACK
     
    7474ALIGN JUMP_ALIGN
    7575AH4h_CalculateNumberOfSuccessfullyVerifiedSectors:
    76     xchg    cx, ax          ; Store error code to CL
     76    xchg    cx, ax                      ; Store error code to CH
    7777    call    Device_ReadLBAlowRegisterToAL
    78     mov     ah, [bp+IDEPACK.bLbaLow]
    79     sub     al, ah          ; AL = sector address with verify failure - starting sector address
     78    sub     al, [bp+IDEPACK.bLbaLow]    ; AL = sector address with verify failure - starting sector address
    8079    xor     ah, ah
    81     xchg    cx, ax          ; Number of successfully verified sectors in CX, error code in AH
     80    xchg    cx, ax                      ; Number of successfully verified sectors in CX, error code in AH
    8281    stc
    8382    ret
Note: See TracChangeset for help on using the changeset viewer.