source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Inc/BootMenu.inc@ 291

Last change on this file since 291 was 291, checked in by aitotat@…, 13 years ago

Changes to XTIDE Universal BIOS:

  • Added BOOT_MENU_DEFAULT_TIMEOUT define.
File size: 1.9 KB
Line 
1; Project name : XTIDE Universal BIOS
2; Description : Equates and structs used in Boot Menu.
3%ifndef BOOTMENU_INC
4%define BOOTMENU_INC
5
6; Boot menu sizes
7BOOT_MENU_DEFAULT_TIMEOUT EQU (30 * TICKS_PER_SECOND)
8BOOT_MENU_TITLE_LINES EQU 2 ; Number of title lines
9BOOT_MENU_INFO_LINES EQU 3 ; Number of info lines
10BOOT_MENU_SEPARATOR_LINES_PLUS_SHADOW EQU 5
11BOOT_MENU_TITLE_AND_INFO_LINES EQU (BOOT_MENU_TITLE_LINES | (BOOT_MENU_INFO_LINES<<8))
12BOOT_MENU_WIDTH EQU 40 ; Menu width in characters (including shadow)
13BOOT_MENU_HEIGHT_WITHOUT_ITEMS EQU (BOOT_MENU_TITLE_LINES + BOOT_MENU_INFO_LINES + BOOT_MENU_SEPARATOR_LINES_PLUS_SHADOW)
14MENU_SCREEN_BOTTOM_LINES EQU 1
15
16; Hotkeys
17ROM_BOOT_HOTKEY_SCANCODE EQU 42h ; F8
18
19
20; Boot Menu Information Table. These are generated for all XTIDE Universal
21; BIOS drives. Available only until boot is successfull.
22MAX_HARD_DISK_NAME_LENGTH EQU 30 ; Bytes reserved for drive name
23
24struc BOOTMENUINFO
25 .szDrvName resb MAX_HARD_DISK_NAME_LENGTH
26 resb 2 ; Zero word (ensures string terminates)
27 resb 4 ; padding to make BOOTMENUINFO size an even multiple of DPT size
28endstruc
29
30DPT_BOOTMENUINFO_SIZE_MULTIPLIER equ BOOTMENUINFO_size / LARGEST_DPT_SIZE
31
32%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
33
34%if MAX_HARD_DISK_NAME_LENGTH % 2 <> 0
35%error "MAX_HARD_DISK_NAME_LENGTH needs to be a multiple of 2, memory is moved with word operations."
36%endif
37
38%if BOOTMENUINFO_size % LARGEST_DPT_SIZE <> 0
39%error "BOOTMENUINFO's size must be an even multiple of DPT's size. Add or remove padding at the bottom of BOOTMENUINFO to bring the two sizes into alignment. As BOOTMENUINFO is only used at boot time, with plenty of memory to consume, it is OK to waste some space here."
40%endif
41
42%if BOOTMENUINFO.szDrvName <> 0
43%error "BOOTMENUINFO.szDrvName is assumed to be the first member of struc BOOTMENUINFO, in BootMenuPrint_RefreshItem"
44%endif
45
46%endif
47
48
49%endif ; BOOTMENU_INC
Note: See TracBrowser for help on using the repository browser.