comparison system.h @ 1983:a7b753e260a2 mame_interp

Merge from default
author Michael Pavone <pavone@retrodev.com>
date Sat, 09 May 2020 23:39:44 -0700
parents 81df9aa2de9b
children 3414a4423de1
comparison
equal deleted inserted replaced
1937:cafde1255ad3 1983:a7b753e260a2
7 typedef struct system_media system_media; 7 typedef struct system_media system_media;
8 8
9 typedef enum { 9 typedef enum {
10 SYSTEM_UNKNOWN, 10 SYSTEM_UNKNOWN,
11 SYSTEM_GENESIS, 11 SYSTEM_GENESIS,
12 SYSTEM_GENESIS_PLAYER,
12 SYSTEM_SMS, 13 SYSTEM_SMS,
13 SYSTEM_JAGUAR 14 SYSTEM_SMS_PLAYER,
15 SYSTEM_JAGUAR,
14 } system_type; 16 } system_type;
15 17
16 typedef enum { 18 typedef enum {
17 DEBUGGER_NATIVE, 19 DEBUGGER_NATIVE,
18 DEBUGGER_GDB 20 DEBUGGER_GDB
31 typedef uint8_t *(*system_ptrszt_fun_rptr8)(system_header *, size_t *); 33 typedef uint8_t *(*system_ptrszt_fun_rptr8)(system_header *, size_t *);
32 typedef void (*system_ptr8_sizet_fun)(system_header *, uint8_t *, size_t); 34 typedef void (*system_ptr8_sizet_fun)(system_header *, uint8_t *, size_t);
33 35
34 #include "arena.h" 36 #include "arena.h"
35 #include "romdb.h" 37 #include "romdb.h"
38 #include "event_log.h"
36 39
37 struct system_header { 40 struct system_header {
38 system_header *next_context; 41 system_header *next_context;
39 system_str_fun start_context; 42 system_str_fun start_context;
40 system_fun resume_context; 43 system_fun resume_context;
68 uint8_t should_exit; 71 uint8_t should_exit;
69 uint8_t save_state; 72 uint8_t save_state;
70 uint8_t delayed_load_slot; 73 uint8_t delayed_load_slot;
71 uint8_t has_keyboard; 74 uint8_t has_keyboard;
72 uint8_t vgm_logging; 75 uint8_t vgm_logging;
76 uint8_t force_release;
73 debugger_type debugger_type; 77 debugger_type debugger_type;
74 system_type type; 78 system_type type;
75 }; 79 };
76 80
77 struct system_media { 81 struct system_media {
85 89
86 #define OPT_ADDRESS_LOG (1U << 31U) 90 #define OPT_ADDRESS_LOG (1U << 31U)
87 91
88 system_type detect_system_type(system_media *media); 92 system_type detect_system_type(system_media *media);
89 system_header *alloc_config_system(system_type stype, system_media *media, uint32_t opts, uint8_t force_region); 93 system_header *alloc_config_system(system_type stype, system_media *media, uint32_t opts, uint8_t force_region);
94 system_header *alloc_config_player(system_type stype, event_reader *reader);
95 void system_request_exit(system_header *system, uint8_t force_release);
90 96
91 #endif //SYSTEM_H_ 97 #endif //SYSTEM_H_