summaryrefslogtreecommitdiff
path: root/include/vb_set.h
blob: ec3ae69d9e85001c4ab91c1d413ddee97dcc2eaa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#ifndef VB_SET_H_
#define VB_SET_H_

#define D_VGA       0
#define D_VESA1     1
#define D_VESA2     2

#define DM_NORMAL   0
#define DM_3D       1

#define PAL_NORMAL  0
#define PAL_RED     1
#define PAL_RB      2
#define PAL_RG      3
#define PAL_RBG     4

#define CONFIG_FILENAME "rd_config.ini"

// vbkey positions
enum VB_KCFG {
    VB_KCFG_LUP,
    VB_KCFG_LDOWN,
    VB_KCFG_LLEFT,
    VB_KCFG_LRIGHT,
    VB_KCFG_RUP,
    VB_KCFG_RDOWN,
    VB_KCFG_RLEFT,
    VB_KCFG_RRIGHT,
    VB_KCFG_A,
    VB_KCFG_B,
    VB_KCFG_START,
    VB_KCFG_SELECT,
    VB_KCFG_L,
    VB_KCFG_R,
};

// Global Options list
typedef struct VB_OPT {
    int   MAXCYCLES; // Number of cycles before checking for interrupts
    int   FRMSKIP;  // Frame Skip of course
    int   DSPMODE;  // Normal, 3D, etc
    int   DSPSWAP;  // Swap 3D effect, 0 normal, 1 swap
    int   DSP2X;    // Double screen size
    int   PALMODE;  // Select a palette Type: 0-normal, 1-red, etc...
    int   DEBUG;    // Release vs Debug
    int   STDOUT;   // File vs Screen (debug)
    int   BFACTOR;  // User adjustable brightness (not implemented)
    int   SCR_X;    // Display dimensions
    int   SCR_Y;
    int   FIXPAL;   // Use a fixed pallet, no brightness...
    int   DISASM;   // Interactive disassembly of all executed instructions...
    int   SCR_MODE; // 0-VGA, 1-VESA1, 2-VESA2
    int   SOUND;
    int   DYNAREC;
    char *ROM_NAME; // Path\Name of game to open
    char *PROG_NAME; // Path\Name of program
    unsigned long CRC32; // CRC32 of ROM
} VB_OPT;

void setDefaults(void);
int loadFileOptions(void);
int saveFileOptions(void);

extern VB_OPT tVBOpt;
extern int vbkey[15];

#endif