Changeset 521 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h


Ignore:
Timestamp:
Mar 10, 2013, 3:46:59 PM (12 years ago)
Author:
aitotat@…
google:author:
aitotat@gmail.com
Message:

Changes to XTIDE Universal BIOS:

  • Hopefully fixed problems with recent changes to AH=00h.
  • Timeout error code is no longer displayed when trying to boot from floppy drive.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h/BootSector.asm

    r505 r521  
    3636    call    DetectPrint_TryToBootFromDL
    3737    call    LoadFirstSectorFromDriveDL
    38 %ifndef USE_386
    39     jc      SHORT .FailedToLoadFirstSector
     38    jnc     SHORT .FirstSectorLoadedToESBX
     39
     40    ; Do not display timeout error (80h) for floppy drives since
     41    ; it most likely mean no diskette in drive. This way we do not
     42    ; display error code every time user intends to boot from hard disk
     43    ; when A then C boot order is used.
     44    js      SHORT .PrintFailedToLoadErrorCode   ; Hard Drive
     45    cmp     ah, RET_HD_TIMEOUT
     46    je      SHORT .ReturnWithCFclearSinceFailedToLoadBootSector
     47    cmp     ah, RET_HD_NOMEDIA
     48    je      SHORT .ReturnWithCFclearSinceFailedToLoadBootSector
     49.PrintFailedToLoadErrorCode:
     50%ifdef USE_186
     51    push    .ReturnWithCFclearSinceFailedToLoadBootSector
     52    jmp     DetectPrint_FailedToLoadFirstSector
    4053%else
    41     jc      DetectPrint_FailedToLoadFirstSector
     54    call    DetectPrint_FailedToLoadFirstSector
     55    jmp     .ReturnWithCFclearSinceFailedToLoadBootSector
    4256%endif
    4357
     58
     59.FirstSectorLoadedToESBX:
    4460    test    dl, dl
    4561    jns     SHORT .AlwaysBootFromFloppyDriveForBooterGames
     
    4763    jne     SHORT .FirstHardDiskSectorNotBootable
    4864.AlwaysBootFromFloppyDriveForBooterGames:
    49     stc
    50     jmp     SHORT JumpToBootSector_or_RomBoot
    51 
    52 %ifndef USE_386
    53 .FailedToLoadFirstSector:
    54     jmp     DetectPrint_FailedToLoadFirstSector
    55 %endif
     65    stc     ; Boot Sector loaded succesfully
     66    jmp     SHORT Int19_JumpToBootSectorOrRomBoot
    5667
    5768.FirstHardDiskSectorNotBootable:
    5869    mov     si, g_szBootSectorNotFound
    59     jmp     DetectPrint_NullTerminatedStringFromCSSIandSetCF
     70    call    DetectPrint_NullTerminatedStringFromCSSI
     71.ReturnWithCFclearSinceFailedToLoadBootSector:
     72    clc
     73    ret
    6074
    6175%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
Note: See TracChangeset for help on using the changeset viewer.