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)
78 #if defined(USE_SHARED_DLL) || defined(USE_DIPSWITCH)
81 #if defined(USE_SHARED_DLL) || defined(USE_DEVICE_TYPE)
84 #if defined(USE_SHARED_DLL) || defined(USE_DRIVE_TYPE)
88 #if defined(USE_SHARED_DLL) || defined(USE_FD1)
89 bool correct_disk_timing[/*MAX_FD_TMP*/ 16];
90 bool ignore_disk_crc[/*MAX_FD_TMP*/ 16];
92 #if defined(USE_SHARED_DLL) || defined(USE_TAPE1)
93 bool wave_shaper[MAX_TAPE_TMP];
94 bool direct_load_mzt[MAX_TAPE_TMP];
95 bool baud_high[MAX_TAPE_TMP];
98 #if defined(USE_SHARED_DLL) || defined(USE_CART1)
99 _TCHAR initial_cart_dir[_MAX_PATH];
100 _TCHAR recent_cart_path[MAX_CART_TMP][MAX_HISTORY][_MAX_PATH];
102 #if defined(USE_SHARED_DLL) || defined(USE_FD1)
103 _TCHAR initial_floppy_disk_dir[_MAX_PATH];
104 _TCHAR recent_floppy_disk_path[MAX_FD_TMP][MAX_HISTORY][_MAX_PATH];
106 #if defined(USE_SHARED_DLL) || defined(USE_QD1)
107 _TCHAR initial_quick_disk_dir[_MAX_PATH];
108 _TCHAR recent_quick_disk_path[MAX_QD_TMP][MAX_HISTORY][_MAX_PATH];
110 #if defined(USE_SHARED_DLL) || defined(USE_TAPE1)
111 _TCHAR initial_tape_dir[_MAX_PATH];
112 _TCHAR recent_tape_path[MAX_TAPE_TMP][MAX_HISTORY][_MAX_PATH];
114 #if defined(USE_SHARED_DLL) || defined(USE_COMPACT_DISC)
115 _TCHAR initial_compact_disc_dir[_MAX_PATH];
116 _TCHAR recent_compact_disc_path[MAX_HISTORY][_MAX_PATH];
118 #if defined(USE_SHARED_DLL) || defined(USE_LASER_DISC)
119 _TCHAR initial_laser_disc_dir[_MAX_PATH];
120 _TCHAR recent_laser_disc_path[MAX_HISTORY][_MAX_PATH];
122 #if defined(USE_SHARED_DLL) || defined(USE_BINARY_FILE1)
123 _TCHAR initial_binary_dir[_MAX_PATH];
124 _TCHAR recent_binary_path[MAX_BINARY_TMP][MAX_HISTORY][_MAX_PATH];
126 #if defined(USE_SHARED_DLL) || defined(USE_BUBBLE1)
127 _TCHAR initial_bubble_casette_dir[_MAX_PATH];
128 _TCHAR recent_bubble_casette_path[MAX_BUBBLE_TMP][MAX_HISTORY][_MAX_PATH];
136 int window_stretch_type;
137 int fullscreen_stretch_type;
138 #if defined(USE_SHARED_DLL) || defined(USE_MONITOR_TYPE)
141 #if defined(USE_SHARED_DLL) || defined(USE_CRT_FILTER)
144 #if defined(USE_SHARED_DLL) || defined(USE_SCANLINE)
147 #if defined(USE_SHARED_DLL) || defined(USE_SCREEN_ROTATE)
151 bool use_opengl_scanline;
152 bool opengl_scanline_vert;
153 bool opengl_scanline_horiz;
154 bool use_opengl_filters;
155 int opengl_filter_num;
157 bool swap_kanji_pause;
160 * 0 : OpenGL/Main Profile
161 * 1 : OpenGL/Core Profile
163 * 8 : Qt3D(Will not implement)
164 * 16 : Vulkan (Will not implement)
165 * 24 : DirectDraw (Will not implement)
166 * 25 : SDLFB(Will not implement)
167 * 32 : DirectX(Will not implement)
170 int render_major_version;
171 int render_minor_version;
177 bool sound_strict_rendering;
179 int general_sound_level;
181 #if defined(USE_SHARED_DLL) || defined(USE_SOUND_DEVICE_TYPE)
182 int sound_device_type;
184 #if defined(USE_SHARED_DLL) || defined(USE_FD1)
185 bool sound_noise_fdd;
187 #if defined(USE_SHARED_DLL) || defined(USE_TAPE1)
188 bool sound_noise_cmt;
189 bool sound_play_tape;
191 #if defined(USE_SHARED_DLL) || defined(USE_SOUND_VOLUME)
192 int sound_volume_l[MAX_VOLUME_TMP];
193 int sound_volume_r[MAX_VOLUME_TMP];
197 _TCHAR fmgen_dll_path[_MAX_PATH];
198 bool use_direct_input;
201 #if defined(USE_SHARED_DLL) || defined(USE_KEYBOARD_TYPE)
204 #if defined(USE_SHARED_DLL) || defined(USE_JOYSTICK)
205 int joy_buttons[4][16];
209 _TCHAR assigned_joystick_name[16][256];
213 int video_codec_type;
214 int audio_codec_type;
216 int video_h264_bitrate;
217 int video_h264_bframes;
218 int video_h264_b_adapt;
221 int video_h264_subme;
223 int video_mpeg4_bitrate;
224 int video_mpeg4_bframes;
225 int video_mpeg4_minq;
226 int video_mpeg4_maxq;
230 int video_frame_rate; // FPS * 1000.0
234 #if defined(USE_SHARED_DLL) || defined(USE_PRINTER)
235 int printer_device_type;
236 _TCHAR printer_dll_path[_MAX_PATH];
243 bool dev_log_to_syslog[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1][8];
244 bool dev_log_to_console[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1][8];
245 bool dev_log_recording[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1][8];
247 bool roma_kana_conversion;
252 extern DLL_PREFIX config_t config;