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

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

Changes to XTIDE Universal BIOS:

  • Changed BOOTNFO to BOOTMENUINFO and moved it to BootMenu.inc.
File size: 1.7 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_TITLE_LINES EQU 2 ; Number of title lines
8BOOT_MENU_INFO_LINES EQU 3 ; Number of info lines
9BOOT_MENU_SEPARATOR_LINES_PLUS_SHADOW EQU 5
10BOOT_MENU_TITLE_AND_INFO_LINES EQU (BOOT_MENU_TITLE_LINES | (BOOT_MENU_INFO_LINES<<8))
11BOOT_MENU_WIDTH EQU 40 ; Menu width in characters (including shadow)
12BOOT_MENU_HEIGHT_WITHOUT_ITEMS EQU (BOOT_MENU_TITLE_LINES + BOOT_MENU_INFO_LINES + BOOT_MENU_SEPARATOR_LINES_PLUS_SHADOW)
13MENU_SCREEN_BOTTOM_LINES EQU 1
14
15; Hotkeys
16ROM_BOOT_HOTKEY_SCANCODE EQU 42h ; F8
17
18
19; Boot Menu Information Table. These are generated for all XTIDE Universal
20; BIOS drives. Available only until boot is successfull.
21MAX_HARD_DISK_NAME_LENGTH EQU 26 ; Bytes reserved for drive name
22
23struc BOOTMENUINFO
24 .szDrvName resb MAX_HARD_DISK_NAME_LENGTH
25 resb 2 ; Zero word (ensures string terminates)
26 resb 8 ; padding to make BOOTMENUINFO size an even multiple of DPT size
27endstruc
28
29DPT_BOOTMENUINFO_SIZE_MULTIPLIER equ BOOTMENUINFO_size / LARGEST_DPT_SIZE
30
31%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
32
33%if BOOTMENUINFO_size % LARGEST_DPT_SIZE <> 0
34%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."
35%endif
36
37%if BOOTMENUINFO.szDrvName <> 0
38%error "BOOTMENUINFO.szDrvName is assumed to be the first member of struc BOOTMENUINFO, in BootMenuPrint_RefreshItem"
39%endif
40
41%endif
42
43
44%endif ; BOOTMENU_INC
Note: See TracBrowser for help on using the repository browser.