2 // settings.h: Header file
4 // JPM = Jean-Paul Mari <djipi.mari@gmail.com>
7 // --- ---------- ------------------------------------------------------------
8 // JPM 06/19/2016 Soft debugger support
11 #ifndef __SETTINGS_H__
12 #define __SETTINGS_H__
14 // MAX_PATH isn't defined in stdlib.h on *nix, so we do it here...
17 #define MAX_PATH _POSIX_PATH_MAX
19 #include <stdlib.h> // for MAX_PATH on MinGW/Darwin
22 #define MAX_PATH _MAX_PATH // Urgh.
27 #define MaxMemory1BrowserWindow 4
30 // List the erase settings possibilities
42 // Key bindings settings structure
45 //char KBSettingName[100];
46 char KBSettingValue
[100];
47 //char KBSettingDefaultValue[100];
51 // functions declarations
52 extern bool EraseSettings(char *Setting
);
59 int32_t joyport
; // Joystick port
60 bool hardwareTypeNTSC
; // Set to false for PAL, otherwise it is NTSC
66 bool useOpenGL
; // OpenGL support (always 'true')
68 bool hardwareTypeAlpine
; // Alpine mode
69 bool softTypeDebugger
; // Soft type debugger mode
74 bool allowWritesToROM
;
76 size_t nbrdisasmlines
; // Number of lines to show in the M68K tracing window
80 bool displayFullSourceFilename
;
81 size_t nbrmemory1browserwindow
; // Number of memory browser windows
82 size_t DRAM_size
; // DRAM size
84 // Keybindings in order of U, D, L, R, C, B, A, Op, Pa, 0-9, #, *
85 uint32_t p1KeyBindings
[21];
86 uint32_t p2KeyBindings
[21];
89 KBSettings KBContent
[100];
92 char ROMPath
[MAX_PATH
];
93 char jagBootPath
[MAX_PATH
];
94 char CDBootPath
[MAX_PATH
];
95 char EEPROMPath
[MAX_PATH
];
96 char alpineROMPath
[MAX_PATH
];
97 char debuggerROMPath
[MAX_PATH
];
98 char absROMPath
[MAX_PATH
];
102 enum { RT_NORMAL
= 0, RT_TV
= 1 };
105 enum { BT_K_SERIES
, BT_M_SERIES
, BT_STUBULATOR_1
, BT_STUBULATOR_2
};
107 // Exported variables
108 extern VJSettings vjs
;
110 #endif // __SETTINGS_H__