2017-09-08 22:23:14 +02:00
|
|
|
#ifndef GUARD_CONFIG_H
|
|
|
|
#define GUARD_CONFIG_H
|
|
|
|
|
2018-01-07 03:12:42 +01:00
|
|
|
// In the Generation 3 games, Asserts were used in various debug builds.
|
|
|
|
// Ruby/Sapphire and Emerald do not have these asserts while Fire Red
|
|
|
|
// still has them in the ROM. This is because the developers forgot
|
2018-01-08 05:46:35 +01:00
|
|
|
// to define NDEBUG before release, however this has been changed as
|
|
|
|
// Ruby's actual debug build does not use the AGBPrint features.
|
2018-01-07 04:00:08 +01:00
|
|
|
#define NDEBUG
|
2018-01-09 04:03:07 +01:00
|
|
|
|
2022-09-06 13:40:29 +02:00
|
|
|
// To enable printf debugging, comment out "#define NDEBUG". This allows
|
2018-01-09 04:03:07 +01:00
|
|
|
// the various AGBPrint functions to be used. (See include/gba/isagbprint.h).
|
2022-09-06 13:40:29 +02:00
|
|
|
// See below for enabling different pretty printing versions.
|
|
|
|
|
|
|
|
#ifndef NDEBUG
|
|
|
|
|
|
|
|
#define PRETTY_PRINT_MINI_PRINTF (0)
|
|
|
|
#define PRETTY_PRINT_LIBC (1)
|
|
|
|
|
|
|
|
#define LOG_HANDLER_AGB_PRINT (0)
|
|
|
|
#define LOG_HANDLER_NOCASH_PRINT (1)
|
|
|
|
#define LOG_HANDLER_MGBA_PRINT (2)
|
|
|
|
|
|
|
|
// Use this switch to choose a handler for pretty printing.
|
|
|
|
// NOTE: mini_printf supports a custom pretty printing formatter to display preproc encoded strings. (%S)
|
|
|
|
// some libc distributions (especially dkp arm-libc) will fail to link pretty printing.
|
|
|
|
#define PRETTY_PRINT_HANDLER (PRETTY_PRINT_MINI_PRINTF)
|
|
|
|
|
|
|
|
// Use this switch to choose a handler for printf output.
|
|
|
|
// NOTE: These will only work on the respective emulators and should not be used in a productive environment.
|
|
|
|
// Some emulators or real hardware might (and is allowed to) crash if they are used.
|
|
|
|
// AGB_PRINT is supported on respective debug units.
|
|
|
|
|
|
|
|
#define LOG_HANDLER (LOG_HANDLER_MGBA_PRINT)
|
|
|
|
#endif
|
2018-01-09 04:03:07 +01:00
|
|
|
|
2017-09-08 22:23:14 +02:00
|
|
|
#define ENGLISH
|
|
|
|
|
|
|
|
#ifdef ENGLISH
|
|
|
|
#define UNITS_IMPERIAL
|
2022-08-04 11:53:16 +02:00
|
|
|
#define CHAR_DEC_SEPARATOR CHAR_PERIOD // Period is used as a decimal separator only in the UK and the US.
|
2017-09-08 22:23:14 +02:00
|
|
|
#else
|
|
|
|
#define UNITS_METRIC
|
2022-08-04 11:53:16 +02:00
|
|
|
#define CHAR_DEC_SEPARATOR CHAR_COMMA
|
2017-09-08 22:23:14 +02:00
|
|
|
#endif
|
|
|
|
|
2020-12-13 22:16:48 +01:00
|
|
|
// Uncomment to fix some identified minor bugs
|
2022-08-26 04:35:22 +02:00
|
|
|
#define BUGFIX
|
2020-12-13 22:16:48 +01:00
|
|
|
|
2020-05-09 14:49:51 +02:00
|
|
|
// Various undefined behavior bugs may or may not prevent compilation with
|
|
|
|
// newer compilers. So always fix them when using a modern compiler.
|
2020-12-13 22:16:48 +01:00
|
|
|
#if MODERN || defined(BUGFIX)
|
2020-05-09 14:49:51 +02:00
|
|
|
#ifndef UBFIX
|
|
|
|
#define UBFIX
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2022-08-24 22:10:32 +02:00
|
|
|
// Compatibility definition for other projects to detect pokeemerald-expansion
|
|
|
|
#define RHH_EXPANSION
|
|
|
|
|
|
|
|
// Legacy branch-based defines included for backwards compatibility
|
2022-08-25 01:31:55 +02:00
|
|
|
#define BATTLE_ENGINE
|
|
|
|
#define POKEMON_EXPANSION
|
|
|
|
#define ITEM_EXPANSION
|
2022-08-24 22:10:32 +02:00
|
|
|
|
2022-09-05 20:49:14 +02:00
|
|
|
// Generation constants used in configs to define behavior
|
|
|
|
#define GEN_3 0
|
|
|
|
#define GEN_4 1
|
|
|
|
#define GEN_5 2
|
|
|
|
#define GEN_6 3
|
|
|
|
#define GEN_7 4
|
|
|
|
#define GEN_8 5
|
2022-11-18 12:15:44 +01:00
|
|
|
#define GEN_9 6
|
2022-12-04 18:16:37 +01:00
|
|
|
#define GEN_LATEST GEN_8
|
2022-09-05 20:49:14 +02:00
|
|
|
|
2017-09-08 22:23:14 +02:00
|
|
|
#endif // GUARD_CONFIG_H
|