Changeset 539 in xtideuniversalbios


Ignore:
Timestamp:
Apr 12, 2013, 8:45:29 AM (8 years ago)
Author:
aitotat@…
google:author:
aitotat@gmail.com
Message:

Changes to XTIDE Universal BIOS:

  • Carry flag is no longer cleared when segment overflow during pointer normalization.
Location:
trunk/XTIDE_Universal_BIOS
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Inc/Int13h.inc

    r526 r539  
    2525RET_HD_INVALID          EQU     1h      ; Invalid value passed or unsupported func
    2626RET_HD_ADDRMARK         EQU     2h      ; Missing address mark
    27 RET_HD_WRITEPROT        EQU     3h      ; Removable media is write protected
     27RET_HD_WRITEPROT        EQU     3h      ; Removable media is write protected (floppy)
    2828RET_HD_NOT_FOUND        EQU     4h      ; Requested sector not found
    29 RET_HD_RESETFAIL        EQU     5h      ; Reset failed
    30 RET_HD_CHANGED          EQU     6h      ; Media changed
    31 RET_HD_PARAMACT         EQU     7h      ; Drive parameter activity failed
    32 RET_HD_OVERRUN          EQU     8h      ; DMA overrun
    33 RET_HD_BOUNDARY         EQU     9h      ; Data boundary error
     29RET_HD_RESETFAIL        EQU     5h      ; Reset failed (hard disk)
     30RET_HD_CHANGED          EQU     6h      ; Floppy disk removed/Disk changeline (floppy)
     31RET_HD_PARAMACT         EQU     7h      ; Drive parameter activity failed (Bad parameter table (hard disk)/Initialization failed)
     32RET_HD_OVERRUN          EQU     8h      ; DMA overrun (floppy)
     33RET_HD_BOUNDARY         EQU     9h      ; Data boundary error (DMA crossed 64K boundary)
    3434RET_HD_BADSECTOR        EQU     0Ah     ; Bad sector detected
    3535RET_HD_BADTRACK         EQU     0Bh     ; Bad track detected
  • trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeTransfer.asm

    r538 r539  
    329329    NORMALIZE_FAR_POINTER   es, si, ax, dx
    330330%ifdef USE_AT       ; CF is always clear for XT builds
    331     mov     ah, 0   ; Clear AH and preserve CF
    332     rcl     ah, 1   ; RET_HD_INVALID
     331    jc      SHORT .SegmentOverflow
     332    ret
     333.SegmentOverflow:
     334    mov     ah, RET_HD_INVALID
    333335%endif
    334336    ret
Note: See TracChangeset for help on using the changeset viewer.