Ignore:
Timestamp:
Jul 7, 2018, 9:53:24 AM (6 years ago)
Author:
aitotat
Message:
  • Int 19h reset handler now tries to boot from drive A before warm reset. This should help to get INT 10h hooked before launching booter games (meaning system reset without reseting interrupt vector table).
  • Win 95 hack temporarily removed (module not included by default). Very limited testing shows that CMOS hack seems to work with AMI bios but locks on Award BIOS.
File:
1 edited

Legend:

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

    r526 r595  
    3232;--------------------------------------------------------------------
    3333Int19hReset_Handler:
     34    ; Try to boot from drive A.
     35    ; This is needed if INT 19h is used to launch booter games while
     36    ; preserving interrupt vector table (for example to hook interrupt 10h)
     37    xor     dx, dx      ; Drive 00h
     38    call    BootSector_LoadFirstSectorFromDriveDL
     39    jc      SHORT .Reboot
     40
     41    xor     ax, ax
     42    mov     ds, ax
     43%ifdef USE_386
     44    mov     fs, ax
     45    mov     gs, ax
     46%endif
     47    cmp     WORD [bx+510], 0AA55h   ; Valid boot sector?
     48    jne     SHORT .Reboot
     49    push    es                      ; Zero
     50    push    bx
     51    retf
     52
     53    ; Do warm reset since boot from floppy drive failed
     54.Reboot:
    3455    mov     ax, BOOT_FLAG_WARM              ; Skip memory tests
    3556    jmp     Reboot_ComputerWithBootFlagInAX
Note: See TracChangeset for help on using the changeset viewer.