2 Skelton for retropc emulator
4 Author : Takeda.Toshiya
16 #include "qt/gui/csp_logger.h"
20 CONFIG_RENDER_TYPE_STD = 0,
21 CONFIG_RENDER_TYPE_TV,
22 CONFIG_RENDER_TYPE_END
25 CONFIG_RENDER_PLATFORM_OPENGL_MAIN = 0,
26 CONFIG_RENDER_PLATFORM_OPENGL_CORE = 1,
27 CONFIG_RENDER_PLATFORM_OPENGL_ES = 2,
28 CONFIG_RENDER_PLATFORM_QT3D = 8,
29 CONFIG_RENDER_PLATFORM_VULKAN = 16,
30 CONFIG_RENDER_PLATFORM_DIRECTDRAW = 24,
31 CONFIG_RENDER_PLATFORM_SDLFB = 25,
32 CONFIG_RENDER_PLATFORM_DIRECTX = 32,
38 #define MAX_CART_TMP 8
41 #define MAX_TAPE_TMP 8
42 #define MAX_BINARY_TMP 8
43 #define MAX_BUBBLE_TMP 16
44 #define MAX_VOLUME_TMP 32
46 #define MAX_CART_TMP MAX_CART
47 #define MAX_FD_TMP MAX_FD
48 #define MAX_QD_TMP MAX_QD
49 #define MAX_TAPE_TMP MAX_TAPE
50 #define MAX_BINARY_TMP MAX_BINARY
51 #define MAX_BUBBLE_TMP MAX_BUBBLE
52 #ifdef USE_SOUND_VOLUME
53 #define MAX_VOLUME_TMP USE_SOUND_VOLUME
57 void DLL_PREFIX initialize_config();
58 void DLL_PREFIX load_config(const _TCHAR* config_path);
59 void DLL_PREFIX save_config(const _TCHAR* config_path);
60 void DLL_PREFIX save_config_state(void *f);
61 bool DLL_PREFIX load_config_state(void *f);
66 * To reduce time to build, compiling common blocks of GUI at once.
67 * So, you should not separate items with #ifdef.
71 #if defined(USE_SHARED_DLL) || defined(USE_BOOT_MODE)
74 #if defined(USE_SHARED_DLL) || defined(USE_CPU_TYPE)
77 #if defined(USE_SHARED_DLL) || defined(USE_DIPSWITCH)
80 #if defined(USE_SHARED_DLL) || defined(USE_DEVICE_TYPE)
83 #if defined(USE_SHARED_DLL) || defined(USE_DRIVE_TYPE)
86 #if defined(USE_SHARED_DLL) || defined(USE_KEYBOARD_TYPE)
89 #if defined(USE_SHARED_DLL) || defined(USE_MOUSE_TYPE)
92 #if defined(USE_SHARED_DLL) || defined(USE_JOYSTICK_TYPE)
95 #if defined(USE_SHARED_DLL) || defined(USE_SOUND_TYPE)
98 #if defined(USE_SHARED_DLL) || defined(USE_MONITOR_TYPE)
101 #if defined(USE_SHARED_DLL) || defined(USE_SCANLINE)
104 #if defined(USE_SHARED_DLL) || defined(USE_PRINTER_TYPE)
107 #if defined(USE_SHARED_DLL) || defined(USE_FD1)
108 bool correct_disk_timing[/*MAX_FD_TMP*/16];
109 bool ignore_disk_crc[/*MAX_FD_TMP*/16];
111 #if defined(USE_SHARED_DLL) || defined(USE_TAPE1)
112 bool wave_shaper[MAX_TAPE_TMP];
113 bool direct_load_mzt[MAX_TAPE_TMP];
114 bool baud_high[MAX_TAPE_TMP];
120 #if defined(USE_SHARED_DLL) || defined(USE_CART1)
121 _TCHAR initial_cart_dir[_MAX_PATH];
122 _TCHAR recent_cart_path[MAX_CART_TMP][MAX_HISTORY][_MAX_PATH];
124 #if defined(USE_SHARED_DLL) || defined(USE_FD1)
125 _TCHAR initial_floppy_disk_dir[_MAX_PATH];
126 _TCHAR recent_floppy_disk_path[MAX_FD_TMP][MAX_HISTORY][_MAX_PATH];
128 #if defined(USE_SHARED_DLL) || defined(USE_QD1)
129 _TCHAR initial_quick_disk_dir[_MAX_PATH];
130 _TCHAR recent_quick_disk_path[MAX_QD_TMP][MAX_HISTORY][_MAX_PATH];
132 #if defined(USE_SHARED_DLL) || defined(USE_TAPE1)
133 _TCHAR initial_tape_dir[_MAX_PATH];
134 _TCHAR recent_tape_path[MAX_TAPE_TMP][MAX_HISTORY][_MAX_PATH];
136 #if defined(USE_SHARED_DLL) || defined(USE_COMPACT_DISC)
137 _TCHAR initial_compact_disc_dir[_MAX_PATH];
138 _TCHAR recent_compact_disc_path[MAX_HISTORY][_MAX_PATH];
140 #if defined(USE_SHARED_DLL) || defined(USE_LASER_DISC)
141 _TCHAR initial_laser_disc_dir[_MAX_PATH];
142 _TCHAR recent_laser_disc_path[MAX_HISTORY][_MAX_PATH];
144 #if defined(USE_SHARED_DLL) || defined(USE_BINARY_FILE1)
145 _TCHAR initial_binary_dir[_MAX_PATH];
146 _TCHAR recent_binary_path[MAX_BINARY_TMP][MAX_HISTORY][_MAX_PATH];
148 #if defined(USE_SHARED_DLL) || defined(USE_BUBBLE1)
149 _TCHAR initial_bubble_casette_dir[_MAX_PATH];
150 _TCHAR recent_bubble_casette_path[MAX_BUBBLE_TMP][MAX_HISTORY][_MAX_PATH];
155 int window_stretch_type;
156 int fullscreen_stretch_type;
157 // #if defined(USE_SHARED_DLL) || defined(USE_SCREEN_ROTATE)
162 #if defined(USE_SHARED_DLL) || defined(USE_SCREEN_FILTER)
167 bool use_opengl_scanline;
168 bool opengl_scanline_vert;
169 bool opengl_scanline_horiz;
170 bool use_opengl_filters;
171 int opengl_filter_num;
173 bool swap_kanji_pause;
176 * 0 : OpenGL/Main Profile
177 * 1 : OpenGL/Core Profile
179 * 8 : Qt3D(Will not implement)
180 * 16 : Vulkan (Will not implement)
181 * 24 : DirectDraw (Will not implement)
182 * 25 : SDLFB(Will not implement)
183 * 32 : DirectX(Will not implement)
186 int render_major_version;
187 int render_minor_version;
193 bool sound_strict_rendering;
195 int general_sound_level;
197 #if defined(USE_SHARED_DLL) || defined(USE_FD1)
198 bool sound_noise_fdd;
200 #if defined(USE_SHARED_DLL) || defined(USE_TAPE1)
201 bool sound_noise_cmt;
202 bool sound_play_tape;
204 #if defined(USE_SHARED_DLL) || defined(USE_SOUND_VOLUME)
205 int sound_volume_l[MAX_VOLUME_TMP];
206 int sound_volume_r[MAX_VOLUME_TMP];
209 #if defined(USE_SHARED_DLL) || defined(USE_JOYSTICK)
210 int joy_buttons[4][16];
214 #if defined(USE_SHARED_DLL) || defined(USE_PRINTER)
215 _TCHAR printer_dll_path[_MAX_PATH];
218 #if defined(_WIN32) && !defined(_USE_QT)
219 _TCHAR fmgen_dll_path[_MAX_PATH];
220 bool use_direct_input;
226 bool show_status_bar;
230 _TCHAR assigned_joystick_name[16][256];
234 int video_codec_type;
235 int audio_codec_type;
237 int video_h264_bitrate;
238 int video_h264_bframes;
239 int video_h264_b_adapt;
242 int video_h264_subme;
244 int video_mpeg4_bitrate;
245 int video_mpeg4_bframes;
246 int video_mpeg4_minq;
247 int video_mpeg4_maxq;
251 int video_frame_rate; // FPS * 1000.0
254 bool dev_log_to_syslog[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1][8];
255 bool dev_log_to_console[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1][8];
256 bool dev_log_recording[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1][8];
258 bool roma_kana_conversion;
264 extern DLL_PREFIX config_t config;