Changeset 118 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS_Configurator_v2


Ignore:
Timestamp:
Feb 28, 2011, 4:23:58 PM (13 years ago)
Author:
aitotat
google:author:
aitotat
Message:

Changes to Configurator v2:

  • Warm boot flag is now reset when rebooting.
  • Checksum generation no longer corrupts images when image size is less than EEPROM size.
  • Configuration and flashing menu items are now displayed when loading BIOS from EEPROM.
Location:
trunk/XTIDE_Universal_BIOS_Configurator_v2/Src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/BiosFile.asm

    r107 r118  
    158158    call    Buffers_GetFileBufferToESDI
    159159    call    Registers_CopyESDItoDSSI
     160    mov     ax, [cs:g_cfgVars+CFGVARS.wImageSizeInWords]
     161    call    EEPROM_GetSmallestEepromSizeInWordsToCXforImageWithWordSizeInAX
    160162    xor     dx, dx
    161     mov     cx, [cs:g_cfgVars+CFGVARS.wImageSizeInWords]
    162163    shl     cx, 1
    163164    rcl     dx, 1           ; WORDs to BYTEs
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Buffers.asm

    r109 r118  
    176176
    177177    call    Buffers_GetFileBufferToESDI
    178     mov     cx, [cs:g_cfgVars+CFGVARS.wImageSizeInWords]
     178    mov     ax, [cs:g_cfgVars+CFGVARS.wImageSizeInWords]
     179    call    EEPROM_GetSmallestEepromSizeInWordsToCXforImageWithWordSizeInAX
    179180    shl     cx, 1           ; Words to bytes
    180181    dec     cx              ; Leave space for checksum byte
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/EEPROM.asm

    r68 r118  
    1 ; File name     :   EEPROM.asm
    21; Project name  :   XTIDE Univeral BIOS Configurator v2
    3 ; Created date  :   19.4.2010
    4 ; Last update   :   9.12.2010
    52; Author        :   Tomi Tilli
    63; Description   :   Functions for managing EEPROM contents.
     
    3128
    3229;--------------------------------------------------------------------
     30; EEPROM_GetSmallestEepromSizeInWordsToCXforImageWithWordSizeInAX
     31;   Parameters:
     32;       AX:     Image size in WORDs
     33;   Returns:
     34;       CX:     Required EEPROM size in WORDs
     35;       CF:     Set if EEPROM size found
     36;               Cleared if no valid EEPROM found
     37;   Corrupts registers:
     38;       BX
     39;--------------------------------------------------------------------
     40ALIGN JUMP_ALIGN
     41EEPROM_GetSmallestEepromSizeInWordsToCXforImageWithWordSizeInAX:
     42    mov     bx, g_rgwEepromTypeToSizeInWords
     43    mov     cx, NUMBER_OF_EEPROM_TYPES
     44ALIGN JUMP_ALIGN
     45.CheckNextEepromSize:
     46    cmp     ax, [cs:bx]
     47    jbe     SHORT .ReturnEepromSizeInAX
     48    inc     bx
     49    inc     bx
     50    loop    .CheckNextEepromSize
     51    clc     ; None of the supported EEPROMs are large enough
     52    ret
     53ALIGN JUMP_ALIGN
     54.ReturnEepromSizeInAX:
     55    mov     cx, [cs:bx]
     56    stc
     57    ret
     58
     59
     60;--------------------------------------------------------------------
    3361; EEPROM_LoadXtideUniversalBiosFromRomToRamBufferAndReturnSizeInDXCX
    3462;   Parameters:
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Menupages/FlashMenu.asm

    r108 r118  
    206206;       SS:BP:  Ptr to MENU
    207207;   Returns:
    208 ;       Nothing
     208;       CF:     Set if EEPROM too small
    209209;   Corrupts registers:
    210210;       AX, BX, DX
     
    386386.RebootComputer:
    387387.ResetAT:
     388    LOAD_BDA_SEGMENT_TO ds, ax
     389    mov     [BDA.wBoot], ax         ; Make sure soft reset flag is not set
    388390    mov     al, 0FEh                ; System reset (AT+ keyboard controller)
    389391    out     64h, al                 ; Reset computer (AT+)
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Menupages/MainMenu.asm

    r114 r118  
    205205    call    Buffers_NewBiosWithSizeInDXCXandSourceInAXhasBeenLoadedForConfiguration
    206206    mov     dx, g_szDlgMainLoadROM
    207     jmp     Dialogs_DisplayNotificationFromCSDX
     207    call    Dialogs_DisplayNotificationFromCSDX
     208    jmp     MainMenu_EnterMenuOrModifyItemVisibility
    208209
    209210
Note: See TracChangeset for help on using the changeset viewer.