comparison system.h @ 1648:b7ecd0d6a77b mame_interp

Merge from default
author Michael Pavone <pavone@retrodev.com>
date Tue, 25 Dec 2018 11:12:26 -0800
parents 6909c5d0bbb5
children 319d90025d50 5dacaef602a7
comparison
equal deleted inserted replaced
1509:36732f5c2281 1648:b7ecd0d6a77b
19 19
20 typedef void (*system_fun)(system_header *); 20 typedef void (*system_fun)(system_header *);
21 typedef uint16_t (*system_fun_r16)(system_header *); 21 typedef uint16_t (*system_fun_r16)(system_header *);
22 typedef void (*system_str_fun)(system_header *, char *); 22 typedef void (*system_str_fun)(system_header *, char *);
23 typedef uint8_t (*system_str_fun_r8)(system_header *, char *); 23 typedef uint8_t (*system_str_fun_r8)(system_header *, char *);
24 typedef void (*speed_system_fun)(system_header *, uint32_t); 24 typedef void (*system_u32_fun)(system_header *, uint32_t);
25 typedef void (*system_u8_fun)(system_header *, uint8_t);
25 typedef uint8_t (*system_u8_fun_r8)(system_header *, uint8_t); 26 typedef uint8_t (*system_u8_fun_r8)(system_header *, uint8_t);
27 typedef void (*system_u8_u8_fun)(system_header *, uint8_t, uint8_t);
28 typedef void (*system_mabs_fun)(system_header *, uint8_t, uint16_t, uint16_t);
29 typedef void (*system_mrel_fun)(system_header *, uint8_t, int32_t, int32_t);
26 30
27 #include "arena.h" 31 #include "arena.h"
28 #include "romdb.h" 32 #include "romdb.h"
29 33
30 struct system_header { 34 struct system_header {
36 system_u8_fun_r8 load_state; 40 system_u8_fun_r8 load_state;
37 system_fun request_exit; 41 system_fun request_exit;
38 system_fun soft_reset; 42 system_fun soft_reset;
39 system_fun free_context; 43 system_fun free_context;
40 system_fun_r16 get_open_bus_value; 44 system_fun_r16 get_open_bus_value;
41 speed_system_fun set_speed_percent; 45 system_u32_fun set_speed_percent;
42 system_fun inc_debug_mode; 46 system_fun inc_debug_mode;
43 system_fun inc_debug_pal; 47 system_u8_u8_fun gamepad_down;
48 system_u8_u8_fun gamepad_up;
49 system_u8_u8_fun mouse_down;
50 system_u8_u8_fun mouse_up;
51 system_mabs_fun mouse_motion_absolute;
52 system_mrel_fun mouse_motion_relative;
53 system_u8_fun keyboard_down;
54 system_u8_fun keyboard_up;
55 system_fun config_updated;
56 rom_info info;
44 arena *arena; 57 arena *arena;
45 char *next_rom; 58 char *next_rom;
46 char *save_dir; 59 char *save_dir;
47 uint8_t enter_debugger; 60 uint8_t enter_debugger;
48 uint8_t should_exit; 61 uint8_t should_exit;
49 uint8_t save_state; 62 uint8_t save_state;
63 uint8_t delayed_load_slot;
64 uint8_t has_keyboard;
50 debugger_type debugger_type; 65 debugger_type debugger_type;
51 system_type type; 66 system_type type;
52 }; 67 };
53 68
54 struct system_media { 69 struct system_media {
61 }; 76 };
62 77
63 #define OPT_ADDRESS_LOG (1U << 31U) 78 #define OPT_ADDRESS_LOG (1U << 31U)
64 79
65 system_type detect_system_type(system_media *media); 80 system_type detect_system_type(system_media *media);
66 system_header *alloc_config_system(system_type stype, system_media *media, uint32_t opts, uint8_t force_region, rom_info *info_out); 81 system_header *alloc_config_system(system_type stype, system_media *media, uint32_t opts, uint8_t force_region);
67 82
68 #endif //SYSTEM_H_ 83 #endif //SYSTEM_H_