Changeset 594 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Initialization


Ignore:
Timestamp:
Jul 4, 2018, 6:40:02 PM (6 years ago)
Author:
Tomi Tilli
Message:

Previosly committed flash fix for configurator was incomplete. Now fixed properly.
Added MODULE_MFM_COMPATIBILITY.

Location:
trunk/XTIDE_Universal_BIOS/Src/Initialization
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm

    r593 r594  
    115115        test    al, al
    116116        jnz     SHORT .ContinueInitialization   ; CMOS byte 12h is ready for Windows 95
    117         call    CMOS_Verify10hTo2Dh
     117        call    CMOS_Verify10hTo2Dh             ; Can we modify CMOS?
    118118        jnz     SHORT .ClearBdaDriveCount       ; Unsupported BIOS, use plan B
    119119   
     
    123123        call    CMOS_WriteALtoIndexInDL
    124124        call    CMOS_StoreNewChecksumFor10hto2Dh
    125     %endif
     125.ClearBdaDriveCount:
     126    %endif  ; MODULE_WIN95_CMOS_HACK
    126127
    127128    test    BYTE [cs:ROMVARS.wFlags], FLG_ROMVARS_IGNORE_MOTHERBOARD_DRIVES
    128129    jz      SHORT .ContinueInitialization
    129 .ClearBdaDriveCount:
    130130    mov     BYTE [es:BDA.bHDCount], 0   ; Set hard disk count to zero
    131131.ContinueInitialization:
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/Interrupts.asm

    r592 r594  
    5959;--------------------------------------------------------------------
    6060.InitializeInt13hAnd40h:
     61%ifdef MODULE_MFM_COMPATIBILITY
     62    mov     ax, [es:BIOS_DISK_INTERRUPT_13h*4+2]; Load old INT 13h segment
     63    mov     [RAMVARS.fpMFMint13h+2], ax         ; Store old INT 13h segment
     64    xchg    dx, ax
     65    mov     ax, [es:BIOS_DISK_INTERRUPT_13h*4]  ; Load old INT 13h offset
     66    mov     [RAMVARS.fpMFMint13h], ax           ; Store old INT 13h offset
     67   
     68    mov     [RAMVARS.fpOldI13h+2], cs
     69    mov     WORD [RAMVARS.fpOldI13h], Int13hMFMcompatibilityHandler
     70%else
    6171    mov     ax, [es:BIOS_DISK_INTERRUPT_13h*4+2]; Load old INT 13h segment
    6272    mov     [RAMVARS.fpOldI13h+2], ax           ; Store old INT 13h segment
     
    6474    mov     ax, [es:BIOS_DISK_INTERRUPT_13h*4]  ; Load old INT 13h offset
    6575    mov     [RAMVARS.fpOldI13h], ax             ; Store old INT 13h offset
     76%endif
    6677
    6778    ; Only store INT 13h handler to 40h if 40h is not already installed.
Note: See TracChangeset for help on using the changeset viewer.