SGDK
A free and open development kit for the Sega Mega Drive
Loading...
Searching...
No Matches
config.h
Go to the documentation of this file.
1
9
10#ifndef _CONFIG_
11#define _CONFIG_
12
13
18#define LOG_LEVEL_DISABLE 0
23#define LOG_LEVEL_ERROR 1
28#define LOG_LEVEL_WARNING 2
33#define LOG_LEVEL_INFO 3
34
39#define LIB_LOG_LEVEL LOG_LEVEL_ERROR
40
45#if (DEBUG != 0)
46 #define LIB_DEBUG 1
47#else
48 #define LIB_DEBUG 0
49 #undef LIB_LOG_LEVEL
50 #define LIB_LOG_LEVEL LOG_LEVEL_DISABLE
51#endif
52
60#define HALT_Z80_ON_DMA 1
61
68#define HALT_Z80_ON_IO 1
69
74#define DMA_DISABLED 0
75
82#define LEGACY_SPRITE_ENGINE 0
83
92#define LEGACY_ERROR_HANDLER 0
93
102#define ENABLE_BANK_SWITCH 0
103
109#define ENABLE_NEWLIB 0
110
115#define ENABLE_LOGO 0
116
117#if (ENABLE_LOGO != 0)
118
123#define ZOOMING_LOGO 0
124
125#endif // ENABLE_LOGO
126
127
132#define MODULE_EVERDRIVE 0
133
139#define MODULE_FAT16 0
140
141// FAT16 need EVERDRIVE
142#if ((MODULE_EVERDRIVE == 0) && (MODULE_FAT16 != 0))
143#error "Cannot enable FAT16 module without EVERDRIVE module"
144#endif
145
150#define MODULE_SERIAL 0
151
156#define MODULE_MEGAWIFI 0
157#if MODULE_MEGAWIFI
158
159#define MEGAWIFI_IMPLEMENTATION_CROSS 0x01 // Cross (Serial)
160#define MEGAWIFI_IMPLEMENTATION_MW_CART 0x02 // MegaWiFi Cart: Defined to use MegaWiFi Cart distributions
161#define MEGAWIFI_IMPLEMENTATION_ED 0x04 // EverDrive: Defined to use EverDrive distributions (testing purposes)
162#define MEGAWIFI_IMPLEMENTATION (MEGAWIFI_IMPLEMENTATION_CROSS | MEGAWIFI_IMPLEMENTATION_ED) // Set the implementation to use
163// Caution USING BOTH MW_CART AND EVERDRIVE IMPLEMENTATIONS MAY CAUSE ISSUES AS THEY BOTH USE SAME COMM VTABLE STRUCTURE
164// MAKE SURE TO TEST PROPERLY IF YOU ENABLE BOTH IMPLEMENTATIONS
165
166// Check that if using cross implementation, serial module is enabled
167// Serial module is required for cross implementation
168#if ((MODULE_SERIAL == 0) && (MEGAWIFI_IMPLEMENTATION & MEGAWIFI_IMPLEMENTATION_CROSS))
169#error "Cannot enable MegaWiFi cross implementation without SERIAL module"
170#endif
171// Check that if using EverDrive implementation, EverDrive module is enabled
172// Switching banks is required for EverDrive implementation
173#if ((ENABLE_BANK_SWITCH == 0) && (MEGAWIFI_IMPLEMENTATION & MEGAWIFI_IMPLEMENTATION_ED))
174#error "Cannot enable MegaWiFi module without BANK SWITCH"
175#endif
176
177#endif // MODULE_MEGAWIFI
183#define MODULE_FLASHSAVE 1
184
190#define MODULE_CONSOLE 1
191
196#define MODULE_LINK_CABLE 0
197
198#endif // _CONFIG_