2 Skelton for retropc emulator
4 Author : Takeda.Toshiya
13 # if defined(_USE_AGAR) || defined(_USE_SDL)
14 #include <sys/param.h>
15 #include <agar/core.h>
17 #define _MAX_PATH AG_PATHNAME_MAX
19 # elif defined(_USE_QT)
20 #include <sys/param.h>
21 #include <QtCore/QFile>
22 #include <QtCore/QFileInfo>
25 #define _MAX_PATH 2048
32 #define EMU_LOG_CPU1 0x00000001
33 #define EMU_LOG_CPU2 0x00000002
34 #define EMU_LOG_CPU3 0x00000004
35 #define EMU_LOG_CPU4 0x00000008
36 #define EMU_LOG_FLOPPY 0x00000010
37 #define EMU_LOG_CMT 0x00000020
38 #define EMU_LOG_QD 0x00000040
39 #define EMU_LOG_CART 0x00000080
40 #define EMU_LOG_BINARY 0x00000100
41 #define EMU_LOG_LASERDISC 0x00000200
42 #define EMU_LOG_DISPLAY 0x00001000
43 #define EMU_LOG_SOUND 0x00002000
44 #define EMU_LOG_KEYBOARD 0x00004000
45 #define EMU_LOG_IO 0x00008000
46 #define EMU_LOG_MEMORY 0x00010000
47 #define EMU_LOG_USR1 0x00020000
48 #define EMU_LOG_USR2 0x00040000
49 #define EMU_LOG_USR3 0x00080000
50 #define EMU_LOG_USR4 0x00100000
51 #define EMU_LOG_USR5 0x00200000
52 #define EMU_LOG_USR6 0x00400000
53 #define EMU_LOG_USR7 0x00800000
54 #define EMU_LOG_USR8 0x01000000
55 #define EMU_LOG_USR9 0x02000000
56 #define EMU_LOG_USR10 0x04000000
57 #define EMU_LOG_GUI 0x08000000
58 #define EMU_LOG_DEBUG 0x10000000
59 #define EMU_LOG_INFO 0x20000000
60 #define EMU_LOG_WARNING 0x40000000
61 #define EMU_LOG_GENERAL 0x80000000
65 #if defined(USE_CART2)
67 #elif defined(USE_CART1)
73 #elif defined(USE_FD7)
75 #elif defined(USE_FD6)
77 #elif defined(USE_FD5)
79 #elif defined(USE_FD4)
81 #elif defined(USE_FD3)
83 #elif defined(USE_FD2)
85 #elif defined(USE_FD1)
91 #elif defined(USE_QD1)
95 #if defined(USE_BINARY_FILE2)
97 #elif defined(USE_BINARY_FILE1)
105 void save_config_state(void *f);
106 bool load_config_state(void *f);
121 #ifdef USE_DEVICE_TYPE
124 #ifdef USE_DRIVE_TYPE
129 //bool fdd_hack_fast_transfer[16];
134 bool direct_load_mzt;
140 _TCHAR initial_cart_dir[_MAX_PATH];
141 _TCHAR recent_cart_path[MAX_CART][MAX_HISTORY][_MAX_PATH];
144 _TCHAR initial_disk_dir[_MAX_PATH];
145 _TCHAR recent_disk_path[MAX_FD][MAX_HISTORY][_MAX_PATH];
148 _TCHAR initial_quickdisk_dir[_MAX_PATH];
149 _TCHAR recent_quickdisk_path[MAX_QD][MAX_HISTORY][_MAX_PATH];
152 _TCHAR initial_tape_dir[_MAX_PATH];
153 _TCHAR recent_tape_path[MAX_HISTORY][_MAX_PATH];
155 #ifdef USE_LASER_DISC
156 _TCHAR initial_laser_disc_dir[_MAX_PATH];
157 _TCHAR recent_laser_disc_path[MAX_HISTORY][_MAX_PATH];
159 #ifdef USE_BINARY_FILE1
160 _TCHAR initial_binary_dir[_MAX_PATH];
161 _TCHAR recent_binary_path[MAX_BINARY][MAX_HISTORY][_MAX_PATH];
163 #ifdef USE_SCREEN_ROTATE
164 bool rotate_type; // FIXME: wanna support +90deg, +180deg and +270deg
174 #ifdef USE_MONITOR_TYPE
177 #ifdef USE_CRT_FILTER
187 int general_sound_level;
188 #ifdef USE_MULTIPLE_SOUNDCARDS
189 int sound_device_level[USE_MULTIPLE_SOUNDCARDS];
191 bool multiple_speakers; // Effext if multiple sound boards : TRUE = not monoral.
193 bool use_opengl_scanline;
194 bool opengl_scanline_vert;
195 bool opengl_scanline_horiz;
197 bool use_opengl_filters;
198 int opengl_filter_num;
200 #ifdef USE_SOUND_DEVICE_TYPE
201 int sound_device_type;
203 _TCHAR fmgen_dll_path[_MAX_PATH];
207 bool use_direct_input;
210 bool swap_joy_buttons;
213 extern config_t config;
215 #if defined(_USE_AGAR) || defined(_USE_QT)
219 extern bool WritePrivateProfileString(char *lpAppName, char *lpKeyName, char *Value, FILEIO *lpFileName);
220 extern bool WritePrivateProfileInt(char *lpAppName, char *lpKeyName, int Value, FILEIO *lpFileName);
221 extern BOOL WritePrivateProfileBool(char *lpAppName, char *lpKeyName, bool Value, FILEIO *lpFileName);
222 extern std::string GetPrivateProfileStr(char *lpAppName, char *lpKeyName, FILEIO *lpFileName);
223 extern void GetPrivateProfileString(char *section, char *key, char *defaultstr, char *str, int max_len, FILEIO *p);
224 extern int GetPrivateProfileInt(char *lpAppName, char *lpKeyName, int nDefault, FILEIO *lpFileName);
225 extern bool GetPrivateProfileBool(char *lpAppName, char *lpKeyName, bool bDefault, FILEIO *lpFileName);