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

Last change on this file since 503 was 493, checked in by gregli@…, 11 years ago

Separated MODULE_8BIT_IDE into the basic part used by XTIDE rev 1 and rev 2 which is PIO based, and MODULE_8BIT_IDE_ADVANCED for JRIDE and XTCF support which requires memory mapping and/or DMA. This allows for creating an 8KB image with boot menu support (but no hotkeys) for the XTIDE rev 1. Cleaned up how we reset the drive translation information, ensuring it is properly set between boot attempt on a primary and secondary drive - as a result we clean it when needed, rather than trying to always keep it clean. Also fixed translation bugs in int13h.asm where I had previously missed converting some MODULE_HOTKEYS into MODULE_DRIVEXLATE.

File size: 3.6 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%ifdef MODULE_8BIT_IDE_ADVANCED
27    %define MODULE_8BIT_IDE
28    %include "DmaController.inc"
29    %include "XTCF.inc"             ; For Lo-tech XT-CF
30    %include "JRIDE_ISA.inc"        ; For JR-IDE/ISA
31%endif
32
33; Include module specific .INC files
34%ifdef MODULE_8BIT_IDE
35    %include "IDE_8bit.inc"         ; For IDE 8-bit data port macros
36%endif
37
38%ifdef MODULE_ADVANCED_ATA
39    %include "Vision.inc"           ; For QDI Vision QD65xx VLB IDE Controllers
40%endif
41
42%ifdef MODULE_EBIOS
43    %include "EBIOS.inc"            ; Equates for EBIOS functions
44%endif
45
46%ifdef MODULE_HOTKEYS
47    %include "HotkeyBar.inc"        ; For Hotkeys
48%endif
49
50%ifdef MODULE_BOOT_MENU
51    %include "BootMenu.inc"         ; For Boot Menu
52%endif
53
54%ifdef MODULE_BOOT_MENU OR MODULE_HOTKEYS
55    %define MODULE_DRIVEXLATE
56%endif
57
58%ifdef MODULE_IRQ
59    %include "IntController.inc"
60%endif
61
62
63; Included modules for ROMVARS.wFlags
64%ifdef MODULE_8BIT_IDE
65    MAIN_FLG_MODULE_8BIT_IDE    EQU FLG_ROMVARS_MODULE_8BIT_IDE
66%else
67    MAIN_FLG_MODULE_8BIT_IDE    EQU 0
68%endif
69
70%ifdef MODULE_ADVANCED_ATA
71    MAIN_FLG_MODULE_ADVANCED_ATA    EQU FLG_ROMVARS_MODULE_ADVANCED_ATA
72%else
73    MAIN_FLG_MODULE_ADVANCED_ATA    EQU 0
74%endif
75
76%ifdef MODULE_BOOT_MENU
77    MAIN_FLG_MODULE_BOOT_MENU   EQU FLG_ROMVARS_MODULE_BOOT_MENU
78%else
79    MAIN_FLG_MODULE_BOOT_MENU   EQU 0
80%endif
81
82%ifdef MODULE_EBIOS
83    MAIN_FLG_MODULE_EBIOS   EQU FLG_ROMVARS_MODULE_EBIOS
84%else
85    MAIN_FLG_MODULE_EBIOS   EQU 0
86%endif
87
88%ifdef MODULE_HOTKEYS
89    MAIN_FLG_MODULE_HOTKEYS EQU FLG_ROMVARS_MODULE_HOTKEYS
90%else
91    MAIN_FLG_MODULE_HOTKEYS EQU 0
92%endif
93
94%ifdef MODULE_IRQ
95    MAIN_FLG_MODULE_IRQ     EQU FLG_ROMVARS_MODULE_IRQ
96%else
97    MAIN_FLG_MODULE_IRQ     EQU 0
98%endif
99
100%ifdef MODULE_SERIAL
101    MAIN_FLG_MODULE_SERIAL  EQU FLG_ROMVARS_MODULE_SERIAL
102%else
103    MAIN_FLG_MODULE_SERIAL  EQU 0
104%endif
105
106%ifdef MODULE_SERIAL_FLOPPY
107    MAIN_FLG_MODULE_SERIAL_FLOPPY   EQU FLG_ROMVARS_MODULE_SERIAL_FLOPPY
108%else
109    MAIN_FLG_MODULE_SERIAL_FLOPPY   EQU 0
110%endif
111
112%ifdef MODULE_STRINGS_COMPRESSED
113    MAIN_FLG_MODULE_STRINGS_COMPRESSED  EQU FLG_ROMVARS_MODULE_STRINGS_COMPRESSED
114%else
115    MAIN_FLG_MODULE_STRINGS_COMPRESSED  EQU 0
116%endif
117
118%ifdef MODULE_FEATURE_SETS
119    MAIN_FLG_MODULE_FEATURE_SETS    EQU FLG_ROMVARS_MODULE_FEATURE_SETS
120%else
121    MAIN_FLG_MODULE_FEATURE_SETS    EQU 0
122%endif
123
124%ifdef MODULE_8BIT_IDE_ADVANCED
125    MAIN_FLG_MODULE_8BIT_IDE_ADVANCED   EQU FLG_ROMVARS_MODULE_8BIT_IDE_ADVANCED
126%else
127    MAIN_FLG_MODULE_8BIT_IDE_ADVANCED   EQU 0
128%endif
129
130MASK_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 | MAIN_FLG_MODULE_8BIT_IDE_ADVANCED
131
Note: See TracBrowser for help on using the repository browser.