source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Inc/ModuleDependency.inc@ 492

Last change on this file since 492 was 492, checked in by gregli@…, 12 years ago

Removed the dependency between MODULE_BOOT_MENU and MODULE_HOTKEYS. With these changes, 0, 1, or 2 of them can be included in a build. This change also means that the hotkeys don't work while the menu is up. But the most important hotkey there was for Rom Boot, and that has been added to the menu as a choice proper. Lots of changes across the board in the hotkeys code - even if we eventually back this change out (becaue, for example we want hotkeys to work in the menu) we should probably start from this base and add that functionality back in, as these changes results in approximately 120 bytes of savings and includes new functionality, such as the Rom Boot menu item and the Com Detect hotkey.

File size: 3.3 KB
Line 
1; Project name : XTIDE Universal BIOS
2; Description : Dependencies for optional modules.
3
4;
5; XTIDE Universal BIOS and Associated Tools
6; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team.
7;
8; This program is free software; you can redistribute it and/or modify
9; it under the terms of the GNU General Public License as published by
10; the Free Software Foundation; either version 2 of the License, or
11; (at your option) any later version.
12;
13; This program is distributed in the hope that it will be useful,
14; but WITHOUT ANY WARRANTY; without even the implied warranty of
15; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16; GNU General Public License for more details.
17; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
18;
19
20%ifdef MODULE_SERIAL_FLOPPY
21 %ifndef MODULE_SERIAL
22 %define MODULE_SERIAL
23 %endif
24%endif
25
26; Include module specific .INC files
27%ifdef MODULE_8BIT_IDE
28 %include "DmaController.inc"
29 %include "IDE_8bit.inc" ; For IDE 8-bit data port macros
30 %include "XTCF.inc" ; For Lo-tech XT-CF
31 %include "JRIDE_ISA.inc" ; For JR-IDE/ISA
32%endif
33
34%ifdef MODULE_ADVANCED_ATA
35 %include "Vision.inc" ; For QDI Vision QD65xx VLB IDE Controllers
36%endif
37
38%ifdef MODULE_EBIOS
39 %include "EBIOS.inc" ; Equates for EBIOS functions
40%endif
41
42%ifdef MODULE_HOTKEYS
43 %include "HotkeyBar.inc" ; For Hotkeys
44%endif
45
46%ifdef MODULE_BOOT_MENU
47 %include "BootMenu.inc" ; For Boot Menu
48%endif
49
50%ifdef MODULE_BOOT_MENU OR MODULE_HOTKEYS
51 %define MODULE_DRIVEXLATE
52%endif
53
54%ifdef MODULE_IRQ
55 %include "IntController.inc"
56%endif
57
58
59; Included modules for ROMVARS.wFlags
60%ifdef MODULE_8BIT_IDE
61 MAIN_FLG_MODULE_8BIT_IDE EQU FLG_ROMVARS_MODULE_8BIT_IDE
62%else
63 MAIN_FLG_MODULE_8BIT_IDE EQU 0
64%endif
65
66%ifdef MODULE_ADVANCED_ATA
67 MAIN_FLG_MODULE_ADVANCED_ATA EQU FLG_ROMVARS_MODULE_ADVANCED_ATA
68%else
69 MAIN_FLG_MODULE_ADVANCED_ATA EQU 0
70%endif
71
72%ifdef MODULE_BOOT_MENU
73 MAIN_FLG_MODULE_BOOT_MENU EQU FLG_ROMVARS_MODULE_BOOT_MENU
74%else
75 MAIN_FLG_MODULE_BOOT_MENU EQU 0
76%endif
77
78%ifdef MODULE_EBIOS
79 MAIN_FLG_MODULE_EBIOS EQU FLG_ROMVARS_MODULE_EBIOS
80%else
81 MAIN_FLG_MODULE_EBIOS EQU 0
82%endif
83
84%ifdef MODULE_HOTKEYS
85 MAIN_FLG_MODULE_HOTKEYS EQU FLG_ROMVARS_MODULE_HOTKEYS
86%else
87 MAIN_FLG_MODULE_HOTKEYS EQU 0
88%endif
89
90%ifdef MODULE_IRQ
91 MAIN_FLG_MODULE_IRQ EQU FLG_ROMVARS_MODULE_IRQ
92%else
93 MAIN_FLG_MODULE_IRQ EQU 0
94%endif
95
96%ifdef MODULE_SERIAL
97 MAIN_FLG_MODULE_SERIAL EQU FLG_ROMVARS_MODULE_SERIAL
98%else
99 MAIN_FLG_MODULE_SERIAL EQU 0
100%endif
101
102%ifdef MODULE_SERIAL_FLOPPY
103 MAIN_FLG_MODULE_SERIAL_FLOPPY EQU FLG_ROMVARS_MODULE_SERIAL_FLOPPY
104%else
105 MAIN_FLG_MODULE_SERIAL_FLOPPY EQU 0
106%endif
107
108%ifdef MODULE_STRINGS_COMPRESSED
109 MAIN_FLG_MODULE_STRINGS_COMPRESSED EQU FLG_ROMVARS_MODULE_STRINGS_COMPRESSED
110%else
111 MAIN_FLG_MODULE_STRINGS_COMPRESSED EQU 0
112%endif
113
114%ifdef MODULE_FEATURE_SETS
115 MAIN_FLG_MODULE_FEATURE_SETS EQU FLG_ROMVARS_MODULE_FEATURE_SETS
116%else
117 MAIN_FLG_MODULE_FEATURE_SETS EQU 0
118%endif
119
120MASK_ROMVARS_INCLUDED_MODULES EQU MAIN_FLG_MODULE_8BIT_IDE | MAIN_FLG_MODULE_ADVANCED_ATA | MAIN_FLG_MODULE_BOOT_MENU | MAIN_FLG_MODULE_EBIOS | MAIN_FLG_MODULE_HOTKEYS | MAIN_FLG_MODULE_IRQ | MAIN_FLG_MODULE_SERIAL | MAIN_FLG_MODULE_SERIAL_FLOPPY | MAIN_FLG_MODULE_STRINGS_COMPRESSED | MAIN_FLG_MODULE_FEATURE_SETS
Note: See TracBrowser for help on using the repository browser.