source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS_Configurator_v2/Inc/Variables.inc @ 63

Last change on this file since 63 was 63, checked in by aitotat, 13 years ago

Changes to Configurator v2:

  • Now compatible with timeout changes made to Assembly Library.
  • Removed some EEPROM types.
File size: 2.4 KB
Line 
1; File name     :   Variables.inc
2; Project name  :   XTIDE Univeral BIOS Configurator v2
3; Created date  :   5.10.2010
4; Last update   :   19.11.2010
5; Author        :   Tomi Tilli
6; Description   :   Global variables for configuration program.
7%ifndef VARIABLES_INC
8%define VARIABLES_INC
9
10; Equates and defines
11MAX_ALLOWED_IDE_CONTROLLERS         EQU     5   ; Maximum number of IDE controllers
12EEPROM_POLLING_TIMEOUT_TICKS        EQU     3   ; 1 tick = 54.9 ms
13XTIDE_SIGNATURE_LENGTH              EQU     8   ; XTIDE Universal BIOS signature string length
14NUMBER_OF_SUPPORTED_EEPROM_SIZES    EQU     5
15MAX_EEPROM_SIZE                     EQU 65536
16
17
18; Program global variables
19struc CFGVARS
20    .pMenupage          resb    2           ; Offset to MENUPAGE to display
21    .wFlags             resb    2           ; Program flags
22    .wImageSize         resb    2           ; Size in bytes for BIOS image to be flashed (0=65536)
23    .wEepromSegment     resb    2           ; Segment where EEPROM is located
24    .bEepromType        resb    1           ; EEPROM type
25    .bEepromPageSize    resb    1           ; EEPROM page size in bytes
26    .bSdpCommand        resb    1           ; Command for Software Data Protection
27                        resb    1
28    .szOpenedFile       resb    FILENAME_BUFFER_SIZE
29    .flashVars          resb    FLASHVARS_size
30endstruc
31
32; Bit defines for CFGVARS.wFlags
33FLG_CFGVARS_FILELOADED  EQU     (1<<0)  ; BIOS is loaded from file
34FLG_CFGVARS_ROMLOADED   EQU     (1<<1)  ; BIOS is loaded from EEPROM
35FLG_CFGVARS_UNSAVED     EQU     (1<<2)  ; BIOS has unsaved changes
36FLG_CFGVARS_CHECKSUM    EQU     (1<<3)  ; Generate checksum byte
37
38; EEPROM types
39struc EEPROM_TYPE
40    .2816_2kiB          resb    2
41    .2864_8kiB          resb    2
42    .28256_32kiB        resb    2
43    .28512_64kiB        resb    2
44endstruc
45
46; Software Data Protection commands
47struc SDP_COMMAND
48    .none               resb    2   ; Do not use any SDP command
49    .enable             resb    2   ; Flash with SDP enable command
50    .disable            resb    2   ; Flash with SDP disable command
51endstruc
52
53; Page sizes
54struc EEPROM_PAGE_SIZE
55    .1_byte             resb    2
56    .2_bytes            resb    2
57    .4_bytes            resb    2
58    .8_bytes            resb    2
59    .16_bytes           resb    2
60    .32_bytes           resb    2
61    .64_bytes           resb    2
62endstruc
63
64; Default CFGVARS settings
65DEFAULT_CFGVARS_FLAGS   EQU     FLG_CFGVARS_CHECKSUM
66DEFAULT_EEPROM_SEGMENT  EQU     0D000h
67DEFAULT_EEPROM_TYPE     EQU     EEPROM_TYPE.2864_8kiB
68DEFAULT_PAGE_SIZE       EQU     EEPROM_PAGE_SIZE.1_byte
69DEFAULT_SDP_COMMAND     EQU     SDP_COMMAND.enable
70
71
72; Variables required for flashing
73struc FLASHVARS
74    .wTotalPages        resb    2       ; Total number of pages to write
75    .wPagesLeft         resb    2       ; Pages left to write
76    .wByteOffset        resb    2       ; Offset to byte to write next
77endstruc
78
79
80%endif ; VARIABLES_INC
Note: See TracBrowser for help on using the repository browser.