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

Last change on this file since 625 was 625, checked in by Krister Nordvall, 21 months ago

Changes:

  • Added a configuration option to let the BIOS store RamVars to an UMB when Full operating mode is enabled. This is primarily for XT class machines with RAM in the UMA (which apparently is a common thing these days).
  • Added two new builds specifically for IBM PS/2 machines. This is for support of the new McIDE adapter from the guys at zzxio.com. Note that the additional hardware specific code (under the USE_PS2 define) is for the PS/2 machines themselves and not for the McIDE adapters, so any controller in an IBM PS/2 machine can be used with the USE_PS2 define.
  • Moved pColorTheme out of the range of ROMVARS being copied over when doing "Load old settings from EEPROM" in XTIDECFG. This fixed a serious bug from r592 where loading a BIOS from file and then loading the old settings from ROM would corrupt 7 bytes of code somewhere in the loaded BIOS.
  • Optimizations (speed and size) to the library. Browsing the menus in XTIDECFG should now feel a little less sluggish.
  • Hopefully fixed a problem with the PostCommitHook script where it sometimes wouldn't find the CommitInProgress file. I say hopefully because testing this is a nightmare.
File size: 4.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-2023 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 USE_PS2
21 %ifndef USE_AT
22 %define USE_AT
23 %endif
24%endif
25
26; Allow RELOCATE_INT13H_STACK only for AT builds
27%ifndef USE_AT
28 %ifdef RELOCATE_INT13H_STACK
29 %undef RELOCATE_INT13H_STACK
30 %warning "RELOCATE_INT13H_STACK is not supported for XT builds!"
31 %endif
32%endif
33
34%ifdef MODULE_SERIAL_FLOPPY
35 %ifndef MODULE_SERIAL
36 %define MODULE_SERIAL
37 %endif
38%endif
39
40%ifdef MODULE_8BIT_IDE_ADVANCED
41 %define MODULE_8BIT_IDE
42 %include "DmaController.inc"
43 %include "XTCF.inc" ; For Lo-tech XT-CF
44 %include "JRIDE_ISA.inc" ; For JR-IDE/ISA
45 %include "ADP50L.inc" ; For SVC ADP50L
46%endif
47
48%ifdef MODULE_8BIT_IDE
49 %include "IDE_8bit.inc" ; For IDE 8-bit data port macros
50%endif
51
52%ifdef MODULE_ADVANCED_ATA
53 %ifndef USE_386
54 %error "MODULE_ADVANCED_ATA requires USE_386!"
55 %endif
56 %include "AdvancedID.inc"
57 %include "PDC20x30.inc" ; For Promise PDC 20230-C and 20630 controllers
58 %include "Vision.inc" ; For QDI Vision QD65xx VLB IDE Controllers
59%endif
60
61%ifdef MODULE_WIN9X_CMOS_HACK
62 %ifndef USE_386
63 %error "MODULE_WIN9X_CMOS_HACK requires USE_386!"
64 %endif
65%endif
66
67%ifdef MODULE_COMPATIBLE_TABLES
68 %include "CompatibleDPT.inc"
69%endif
70
71%ifdef MODULE_EBIOS
72 %include "EBIOS.inc" ; Equates for EBIOS functions
73%endif
74
75%ifdef MODULE_HOTKEYS
76 %include "HotkeyBar.inc" ; For Hotkeys
77%endif
78
79%ifdef MODULE_BOOT_MENU
80 %include "BootMenu.inc" ; For Boot Menu
81%endif
82
83%ifdef MODULE_BOOT_MENU OR MODULE_HOTKEYS
84 %define MODULE_DRIVEXLATE
85%endif
86
87%ifdef MODULE_IRQ
88 %include "IntController.inc"
89%endif
90
91
92; Included modules for ROMVARS.wFlags
93%ifdef MODULE_8BIT_IDE
94 MAIN_FLG_MODULE_8BIT_IDE EQU FLG_ROMVARS_MODULE_8BIT_IDE
95%else
96 MAIN_FLG_MODULE_8BIT_IDE EQU 0
97%endif
98
99%ifdef MODULE_ADVANCED_ATA
100 MAIN_FLG_MODULE_ADVANCED_ATA EQU FLG_ROMVARS_MODULE_ADVANCED_ATA
101%else
102 MAIN_FLG_MODULE_ADVANCED_ATA EQU 0
103%endif
104
105%ifdef MODULE_BOOT_MENU
106 MAIN_FLG_MODULE_BOOT_MENU EQU FLG_ROMVARS_MODULE_BOOT_MENU
107%else
108 MAIN_FLG_MODULE_BOOT_MENU EQU 0
109%endif
110
111%ifdef MODULE_EBIOS
112 MAIN_FLG_MODULE_EBIOS EQU FLG_ROMVARS_MODULE_EBIOS
113%else
114 MAIN_FLG_MODULE_EBIOS EQU 0
115%endif
116
117%ifdef MODULE_HOTKEYS
118 MAIN_FLG_MODULE_HOTKEYS EQU FLG_ROMVARS_MODULE_HOTKEYS
119%else
120 MAIN_FLG_MODULE_HOTKEYS EQU 0
121%endif
122
123%ifdef MODULE_IRQ
124 MAIN_FLG_MODULE_IRQ EQU FLG_ROMVARS_MODULE_IRQ
125%else
126 MAIN_FLG_MODULE_IRQ EQU 0
127%endif
128
129%ifdef MODULE_SERIAL
130 MAIN_FLG_MODULE_SERIAL EQU FLG_ROMVARS_MODULE_SERIAL
131%else
132 MAIN_FLG_MODULE_SERIAL EQU 0
133%endif
134
135%ifdef MODULE_SERIAL_FLOPPY
136 MAIN_FLG_MODULE_SERIAL_FLOPPY EQU FLG_ROMVARS_MODULE_SERIAL_FLOPPY
137%else
138 MAIN_FLG_MODULE_SERIAL_FLOPPY EQU 0
139%endif
140
141%ifdef MODULE_STRINGS_COMPRESSED
142 MAIN_FLG_MODULE_STRINGS_COMPRESSED EQU FLG_ROMVARS_MODULE_STRINGS_COMPRESSED
143%else
144 MAIN_FLG_MODULE_STRINGS_COMPRESSED EQU 0
145%endif
146
147%ifdef MODULE_POWER_MANAGEMENT
148 MAIN_FLG_MODULE_POWER_MANAGEMENT EQU FLG_ROMVARS_MODULE_POWER_MANAGEMENT
149%else
150 MAIN_FLG_MODULE_POWER_MANAGEMENT EQU 0
151%endif
152
153%ifdef MODULE_8BIT_IDE_ADVANCED
154 MAIN_FLG_MODULE_8BIT_IDE_ADVANCED EQU FLG_ROMVARS_MODULE_8BIT_IDE_ADVANCED
155%else
156 MAIN_FLG_MODULE_8BIT_IDE_ADVANCED EQU 0
157%endif
158
159MASK_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.