GimliDS/arm9/source/mainmenu.h

138 lines
3.2 KiB
C

#define MAX_CONFIGS 1920
#define CONFIG_VERSION 0x0007
extern s16 CycleDeltas[];
struct __attribute__((__packed__)) Config_t
{
u32 game_crc;
u8 key_map[10]; // U,D,L,R, A,B,X,Y, +2 spares
u8 trueDrive;
u8 jitter;
u8 diskSFX;
u8 joyPort;
u8 joyMode;
u8 poundKey;
u8 reuType;
u8 reserved4;
u8 reserved5;
u8 reserved6;
u8 reserved7;
u8 reserved8;
u8 cpuCycles;
u8 badCycles;
s8 offsetX;
s8 offsetY;
s16 scaleX;
s16 scaleY;
};
struct __attribute__((__packed__)) GlobalConfig_t
{
u8 defaultX;
u8 defaultY;
u8 defaultB;
u8 defaultDiskSFX;
u8 defaultJoyPort;
u8 defaultPoundKey;
u8 keyboardDim;
u8 reserved0;
u8 reserved1;
u8 reserved2;
u8 reserved3;
u8 reserved4;
u8 reserved5;
u8 reserved6;
u8 reserved7;
u8 reserved8;
u8 reserved9;
u8 reserved10;
};
extern struct Config_t myConfig;
extern struct GlobalConfig_t myGlobalConfig;
#define KEY_MAP_JOY_FIRE 0
#define KEY_MAP_JOY_UP 1
#define KEY_MAP_JOY_DOWN 2
#define KEY_MAP_JOY_LEFT 3
#define KEY_MAP_JOY_RIGHT 4
#define KEY_MAP_JOY_AUTO 5
#define KEY_MAP_SPACE 6
#define KEY_MAP_RETURN 7
#define KEY_MAP_RUNSTOP 8
#define KEY_MAP_COMMODORE 9
#define KEY_MAP_F1 10
#define KEY_MAP_F3 11
#define KEY_MAP_F5 12
#define KEY_MAP_F7 13
#define KEY_MAP_ASTERISK 14
#define KEY_MAP_EQUALS 15
#define KEY_MAP_PLUS 16
#define KEY_MAP_MINUS 17
#define KEY_MAP_PERIOD 18
#define KEY_MAP_COMMA 19
#define KEY_MAP_COLON 20
#define KEY_MAP_SEMI 21
#define KEY_MAP_SLASH 22
#define KEY_MAP_ATSIGN 23
#define KEY_MAP_A 24
#define KEY_MAP_B 25
#define KEY_MAP_C 26
#define KEY_MAP_D 27
#define KEY_MAP_E 28
#define KEY_MAP_F 29
#define KEY_MAP_G 30
#define KEY_MAP_H 31
#define KEY_MAP_I 32
#define KEY_MAP_J 33
#define KEY_MAP_K 34
#define KEY_MAP_L 35
#define KEY_MAP_M 36
#define KEY_MAP_N 37
#define KEY_MAP_O 38
#define KEY_MAP_P 39
#define KEY_MAP_Q 40
#define KEY_MAP_R 41
#define KEY_MAP_S 42
#define KEY_MAP_T 43
#define KEY_MAP_U 44
#define KEY_MAP_V 45
#define KEY_MAP_W 46
#define KEY_MAP_X 47
#define KEY_MAP_Y 48
#define KEY_MAP_Z 49
#define KEY_MAP_1 50
#define KEY_MAP_2 51
#define KEY_MAP_3 52
#define KEY_MAP_4 53
#define KEY_MAP_5 54
#define KEY_MAP_6 55
#define KEY_MAP_7 56
#define KEY_MAP_8 57
#define KEY_MAP_9 58
#define KEY_MAP_0 59
#define KEY_MAP_PAN_UP16 60
#define KEY_MAP_PAN_UP24 61
#define KEY_MAP_PAN_DN16 62
#define KEY_MAP_PAN_DN24 63
#define KEY_MAP_ZOOM_SCR 64
#define KEY_MAP_MAX 65
#define JOYMODE_NORMAL 0
#define JOYMODE_SLIDE_N_GLIDE 1
#define JOYMODE_DIAGONALS 2
extern u32 getCRC32(u8 *buf, int size);
extern u32 file_crc;
void LoadConfig(void);
void SaveConfig(void);
void FindConfig(void);
void GimliDSGameOptions(void);