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

Last change on this file since 605 was 605, checked in by krille_n_, 6 months ago

Changes:

  • The "Remove other hard drives" option in the Boot settings menu in XTIDECFG is now exposed in all BIOS builds. This is needed because the system BIOS in at least two Zenith computer models (Z-161 and Z-171) does not clear the BDA HD count which causes it to increment on warm boot. Running "Auto Configure" in XTIDECFG now also tries to identify these machines by doing a CRC check on the system BIOS and sets the option to YES if a match is found.
  • WORD_ALIGN is now 2 for XT builds. This should benefit XT class machines with 8086 and NEC V30 CPU:s and the cost is negligible (1 byte for the XT BIOS builds and 12 bytes for XTIDECFG.COM).
  • Other minor optimizations.
File size: 4.2 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-2013 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; Allow RELOCATE_INT13H_STACK only for AT builds
21%ifndef USE_AT
22    %ifdef RELOCATE_INT13H_STACK
23        %undef RELOCATE_INT13H_STACK
24        %warning "RELOCATE_INT13H_STACK is not supported for XT builds!"
25    %endif
26%endif
27
28%ifdef MODULE_SERIAL_FLOPPY
29    %ifndef MODULE_SERIAL
30        %define MODULE_SERIAL
31    %endif
32%endif
33
34%ifdef MODULE_8BIT_IDE_ADVANCED
35    %define MODULE_8BIT_IDE
36    %include "DmaController.inc"
37    %include "XTCF.inc"             ; For Lo-tech XT-CF
38    %include "JRIDE_ISA.inc"        ; For JR-IDE/ISA
39    %include "ADP50L.inc"           ; For SVC ADP50L
40%endif
41
42%ifdef MODULE_8BIT_IDE
43    %include "IDE_8bit.inc"         ; For IDE 8-bit data port macros
44%endif
45
46%ifdef MODULE_ADVANCED_ATA
47    %ifndef USE_386
48        %error "MODULE_ADVANCED_ATA requires USE_386!"
49    %endif
50    %include "AdvancedID.inc"
51    %include "PDC20x30.inc"         ; For Promise PDC 20230-C and 20630 controllers
52    %include "Vision.inc"           ; For QDI Vision QD65xx VLB IDE Controllers
53%endif
54
55%ifdef MODULE_WIN9X_CMOS_HACK
56    %ifndef USE_386
57        %error "MODULE_WIN9X_CMOS_HACK requires USE_386!"
58    %endif
59%endif
60
61%ifdef MODULE_COMPATIBLE_TABLES
62    %include "CompatibleDPT.inc"
63%endif
64
65%ifdef MODULE_EBIOS
66    %include "EBIOS.inc"            ; Equates for EBIOS functions
67%endif
68
69%ifdef MODULE_HOTKEYS
70    %include "HotkeyBar.inc"        ; For Hotkeys
71%endif
72
73%ifdef MODULE_BOOT_MENU
74    %include "BootMenu.inc"         ; For Boot Menu
75%endif
76
77%ifdef MODULE_BOOT_MENU OR MODULE_HOTKEYS
78    %define MODULE_DRIVEXLATE
79%endif
80
81%ifdef MODULE_IRQ
82    %include "IntController.inc"
83%endif
84
85
86; Included modules for ROMVARS.wFlags
87%ifdef MODULE_8BIT_IDE
88    MAIN_FLG_MODULE_8BIT_IDE            EQU FLG_ROMVARS_MODULE_8BIT_IDE
89%else
90    MAIN_FLG_MODULE_8BIT_IDE            EQU 0
91%endif
92
93%ifdef MODULE_ADVANCED_ATA
94    MAIN_FLG_MODULE_ADVANCED_ATA        EQU FLG_ROMVARS_MODULE_ADVANCED_ATA
95%else
96    MAIN_FLG_MODULE_ADVANCED_ATA        EQU 0
97%endif
98
99%ifdef MODULE_BOOT_MENU
100    MAIN_FLG_MODULE_BOOT_MENU           EQU FLG_ROMVARS_MODULE_BOOT_MENU
101%else
102    MAIN_FLG_MODULE_BOOT_MENU           EQU 0
103%endif
104
105%ifdef MODULE_EBIOS
106    MAIN_FLG_MODULE_EBIOS               EQU FLG_ROMVARS_MODULE_EBIOS
107%else
108    MAIN_FLG_MODULE_EBIOS               EQU 0
109%endif
110
111%ifdef MODULE_HOTKEYS
112    MAIN_FLG_MODULE_HOTKEYS             EQU FLG_ROMVARS_MODULE_HOTKEYS
113%else
114    MAIN_FLG_MODULE_HOTKEYS             EQU 0
115%endif
116
117%ifdef MODULE_IRQ
118    MAIN_FLG_MODULE_IRQ                 EQU FLG_ROMVARS_MODULE_IRQ
119%else
120    MAIN_FLG_MODULE_IRQ                 EQU 0
121%endif
122
123%ifdef MODULE_SERIAL
124    MAIN_FLG_MODULE_SERIAL              EQU FLG_ROMVARS_MODULE_SERIAL
125%else
126    MAIN_FLG_MODULE_SERIAL              EQU 0
127%endif
128
129%ifdef MODULE_SERIAL_FLOPPY
130    MAIN_FLG_MODULE_SERIAL_FLOPPY       EQU FLG_ROMVARS_MODULE_SERIAL_FLOPPY
131%else
132    MAIN_FLG_MODULE_SERIAL_FLOPPY       EQU 0
133%endif
134
135%ifdef MODULE_STRINGS_COMPRESSED
136    MAIN_FLG_MODULE_STRINGS_COMPRESSED  EQU FLG_ROMVARS_MODULE_STRINGS_COMPRESSED
137%else
138    MAIN_FLG_MODULE_STRINGS_COMPRESSED  EQU 0
139%endif
140
141%ifdef MODULE_POWER_MANAGEMENT
142    MAIN_FLG_MODULE_POWER_MANAGEMENT    EQU FLG_ROMVARS_MODULE_POWER_MANAGEMENT
143%else
144    MAIN_FLG_MODULE_POWER_MANAGEMENT    EQU 0
145%endif
146
147%ifdef MODULE_8BIT_IDE_ADVANCED
148    MAIN_FLG_MODULE_8BIT_IDE_ADVANCED   EQU FLG_ROMVARS_MODULE_8BIT_IDE_ADVANCED
149%else
150    MAIN_FLG_MODULE_8BIT_IDE_ADVANCED   EQU 0
151%endif
152
153MASK_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_POWER_MANAGEMENT | MAIN_FLG_MODULE_8BIT_IDE_ADVANCED
Note: See TracBrowser for help on using the repository browser.