2 #ifndef __CSP_QT_COMMON_MENU_FLAGS_H
3 #define __CSP_QT_COMMON_MENU_FLAGS_H
9 #ifndef _SCREEN_MODE_NUM
10 #define _SCREEN_MODE_NUM 32
29 class DLL_PREFIX USING_FLAGS {
38 bool use_auto_key_caps;
39 bool use_auto_key_no_caps;
40 bool use_auto_key_release;
41 bool use_auto_key_shift;
61 bool use_compact_disc;
74 uint32_t ram_size_order;
86 int use_joystick_type;
87 bool use_joy_button_captions;
88 int num_joy_button_captions;
90 int use_keyboard_type;
102 bool independent_caps_kana_led;
108 bool use_minimum_rendering;
109 bool use_dig_resolution;
111 int use_monitor_type;
115 bool use_movie_player;
117 bool use_notify_power_off;
119 bool use_one_board_computer;
121 int use_printer_type;
128 bool use_screen_rotate;
132 int use_sound_device_type;
133 int use_sound_volume;
135 bool use_sound_files_fdd;
136 bool use_sound_files_relay;
138 bool use_special_reset;
144 bool use_tape_button;
149 bool use_vm_auto_key_table;
153 bool use_vertical_pixel_lines;
158 int real_screen_width;
159 int real_screen_height;
164 int screen_width_aspect;
165 int screen_height_aspect;
166 double custom_screen_zoom_factor;
168 bool tape_binary_only;
171 bool support_tv_render;
173 bool machine_basicmaster_variants;
174 bool machine_pasopia_variants;
175 bool machine_tk80_series;
176 bool machine_cmt_mz_series;
178 bool machine_pc8001_variants;
179 bool machine_mz80a_variants;
180 bool machine_mz80b_variants;
181 bool machine_x1_series;
182 bool machine_fm7_series;
183 bool machine_gamegear;
184 bool machine_mastersystem;
185 bool machine_has_pcengine;
187 bool machine_z80tvgame;
189 button_desc_t *vm_buttons_d;
190 vm_ranges_t *vm_ranges_d;
195 USING_FLAGS(config_t *cfg);
197 QString get_config_name() { return config_name; }
198 QString get_device_name() { return device_name; }
200 bool is_use_alt_f10_key() { return use_alt_f10_key; }
201 bool is_use_auto_key() { return use_auto_key; }
202 bool is_use_auto_key_us() { return use_auto_key_us; }
203 bool is_use_auto_key_caps() { return use_auto_key_caps; }
204 bool is_use_auto_key_no_caps() { return use_auto_key_no_caps; }
205 bool is_use_auto_key_release() { return use_auto_key_release; }
206 bool is_use_auto_key_shift() { return use_auto_key_shift; }
208 bool is_use_binary_file() { return use_binary_file; }
209 int get_max_binary() { return max_binary; }
210 int get_base_binary_num() { return base_binary_num; }
212 bool is_use_bitmap() { return use_bitmap; }
214 int get_use_boot_mode() { return use_boot_mode; }
216 bool is_use_bubble() { return use_bubble; }
217 int get_max_bubble() { return max_bubble; }
218 int get_max_b77_banks() { return max_b77_banks; }
219 int get_base_bubble_num() { return base_bubble_num; }
221 bool is_use_cart() { return use_cart; }
222 int get_max_cart() { return max_cart; }
223 int get_base_cart_num() { return base_cart_num; }
225 int get_use_cpu_type() { return use_cpu_type; }
227 bool is_use_compact_disc() { return use_compact_disc; }
228 int get_max_cd() { return max_compact_disc; }
229 int get_base_compact_disc_num() { return base_cd_num; }
230 bool is_cdaudio_swap_byteorder(int drv) {
231 if((use_compact_disc) && (p_config != NULL) && (drv < USE_COMPACT_DISC_TMP) && (drv >= 0)) {
232 return p_config->swap_audio_byteorder[drv];
237 bool is_use_ram_size() { return use_ram_size; }
238 int get_max_ram_size() { return max_ram_size; }
239 int get_min_ram_size() { return min_ram_size; }
240 uint32_t get_ram_size_order() { return ram_size_order; }
241 int get_current_ram_size() {
242 if(p_config != NULL) {
243 return p_config->current_ram_size;
248 bool is_use_debugger() { return use_debugger; }
250 int get_use_device_type() { return use_device_type; }
251 int get_use_mouse_type() { return use_mouse_type; }
252 bool is_use_dipswitch() { return use_dipswitch; }
254 int get_use_drive_type() { return use_drive_type; }
256 bool is_use_fd() { return use_fd; }
257 int get_max_drive() { return max_drive; }
258 int get_max_d88_banks() { return max_d88_banks; }
259 int get_base_floppy_disk_num() { return base_fd_num; }
261 bool is_use_joystick() { return use_joystick; }
262 bool is_use_joy_button_captions() { return use_joy_button_captions; }
263 int get_num_joy_button_captions() { return num_joy_button_captions; }
264 int get_use_joystick_type() { return use_joystick_type; }
266 int get_use_keyboard_type() { return use_keyboard_type; }
268 bool is_use_hdd() { return use_hd; }
269 int get_max_hdd() { return max_hd; }
270 int get_base_hdd_num() { return base_hd_num; }
272 bool is_use_laser_disc() {return use_laser_disc; }
273 int get_max_ld() { return max_laser_disc; }
274 int get_base_laser_disc_num() { return base_ld_num; }
276 bool get_use_key_locked() { return use_key_locked; }
277 int get_use_led_devices() { return use_led_devices; }
278 bool get_independent_caps_kana_led() { return independent_caps_kana_led; }
280 int get_max_memcard() { return max_memcard; }
282 bool is_use_minimum_rendering() { return use_minimum_rendering; }
283 bool is_use_dig_resolution() { return use_dig_resolution; }
285 int get_use_monitor_type() { return use_monitor_type; }
287 bool is_use_mouse() { return use_mouse; }
289 bool is_use_movie_player() { return use_movie_player; }
291 bool is_use_notify_power_off() { return use_notify_power_off; }
293 bool is_use_one_board_computer() { return use_one_board_computer; }
294 bool is_use_printer() { return use_printer; }
295 int get_use_printer_type() { return use_printer_type; }
297 bool is_use_qd() { return use_qd; }
298 int get_max_qd() { return max_qd; }
299 int get_base_quick_disk_num() { return base_qd_num; }
301 bool is_use_scanline() { return use_scanline; }
302 bool is_use_screen_rotate() { return use_screen_rotate; }
304 int get_max_scsi() { return max_scsi; }
306 int get_use_sound_device_type() { return use_sound_device_type; }
307 int get_use_sound_volume() { return use_sound_volume; }
308 bool is_without_sound() { return without_sound; }
309 bool is_use_sound_files_fdd() { return use_sound_files_fdd; }
310 bool is_use_sound_files_relay() { return use_sound_files_relay; }
311 bool is_use_special_reset() { return use_special_reset; }
313 bool is_use_state() { return use_state; }
315 bool is_use_tape() { return use_tape; }
316 bool is_use_tape_baud() { return use_tape_baud; }
317 bool is_use_tape_button() { return use_tape_button; }
318 bool is_use_tape_ptr() { return use_tape_ptr; }
319 int get_max_tape() { return max_tape; }
320 int get_base_tape_num() { return base_tape_num; }
322 bool is_use_vm_auto_key_table() { return use_vm_auto_key_table; }
324 bool is_use_vertical_pixel_lines() { return use_vertical_pixel_lines; }
325 bool is_support_tv_render() { return support_tv_render; }
327 int get_screen_width() { return screen_width; }
328 int get_screen_height() { return screen_height; }
329 int get_screen_width_aspect() { return screen_width_aspect; }
330 int get_screen_height_aspect() { return screen_height_aspect; }
331 int get_real_screen_width() { return real_screen_width; }
332 int get_real_screen_height() { return real_screen_height; }
333 float get_screen_x_zoom() { return screen_x_zoom; }
334 float get_screen_y_zoom() { return screen_y_zoom; }
336 int get_screen_mode_num() { return screen_mode_num; }
337 double get_custom_screen_zoom_factor() { return custom_screen_zoom_factor; }
338 int get_max_button() { return max_button; }
339 int get_max_draw_ranges() { return max_ranges; }
340 button_desc_t *get_vm_buttons() { return vm_buttons_d; }
341 vm_ranges_t *get_draw_ranges() { return vm_ranges_d; }
343 bool is_tape_binary_only() { return tape_binary_only; }
345 bool is_machine_basicmaster_variants() { return machine_basicmaster_variants; }
346 bool is_machine_pasopia_variants() { return machine_pasopia_variants; }
347 bool is_machine_tk80_series() { return machine_tk80_series; }
348 bool is_machine_cmt_mz_series() { return machine_cmt_mz_series; }
349 bool is_machine_pc6001() { return machine_pc6001; }
350 bool is_machine_pc8001_variants() { return machine_pc8001_variants; }
351 bool is_machine_mz80a_variants() { return machine_mz80a_variants; }
352 bool is_machine_mz80b_variants() { return machine_mz80b_variants; }
353 bool is_machine_x1_series() { return machine_x1_series; }
354 bool is_machine_fm7_series() { return machine_fm7_series; }
355 bool is_machine_gamegear() { return machine_gamegear; }
356 bool is_machine_mastersystem() { return machine_mastersystem; }
357 bool is_machine_has_pcengine() { return machine_has_pcengine; }
358 bool is_machine_sc3000() { return machine_sc3000; }
359 bool is_machine_z80tvgame() { return machine_z80tvgame; }
360 virtual const _TCHAR *get_joy_button_captions(int num);
361 virtual const _TCHAR *get_sound_device_caption(int num);
362 virtual int get_s_freq_table(int num);
363 void set_emu(EMU_TEMPLATE *p);
364 EMU_TEMPLATE *get_emu(void);
365 void set_osd(OSD *p);
367 virtual const _TCHAR *get_sound_device_name(int num);
368 virtual int get_sound_device_num();
370 virtual int get_vm_node_size();
371 virtual void set_vm_node_name(int id, const _TCHAR *name);
372 virtual _TCHAR *get_vm_node_name(int id);
373 virtual bool is_support_phy_key_name();
374 config_t *get_config_ptr(void);
378 #endif //#ifndef __CSP_QT_COMMON_MENU_FLAGS_H