comparison blastem.h @ 957:1618d3676a35

Save state menu WIP
author Michael Pavone <pavone@retrodev.com>
date Fri, 15 Apr 2016 23:57:50 -0700
parents f5550cdffe49
children 750995b587a0
comparison
equal deleted inserted replaced
956:f5550cdffe49 957:1618d3676a35
15 #include "io.h" 15 #include "io.h"
16 #include "config.h" 16 #include "config.h"
17 #include "romdb.h" 17 #include "romdb.h"
18 #include "arena.h" 18 #include "arena.h"
19 19
20 typedef struct { 20 typedef struct genesis_context genesis_context;
21 m68k_context *m68k; 21
22 z80_context *z80; 22 struct genesis_context {
23 vdp_context *vdp; 23 m68k_context *m68k;
24 ym2612_context *ym; 24 z80_context *z80;
25 psg_context *psg; 25 vdp_context *vdp;
26 uint16_t *cart; 26 ym2612_context *ym;
27 uint16_t *work_ram; 27 psg_context *psg;
28 uint8_t *zram; 28 genesis_context *next_context;
29 void *extra; 29 uint16_t *cart;
30 arena *arena; 30 uint16_t *work_ram;
31 char *next_rom; 31 uint8_t *zram;
32 char *save_dir; 32 void *extra;
33 uint8_t *save_storage; 33 arena *arena;
34 eeprom_map *eeprom_map; 34 char *next_rom;
35 uint32_t num_eeprom; 35 char *save_dir;
36 uint32_t save_size; 36 uint8_t *save_storage;
37 uint32_t save_ram_mask; 37 eeprom_map *eeprom_map;
38 uint32_t master_clock; //Current master clock value 38 uint32_t num_eeprom;
39 uint32_t normal_clock; //Normal master clock (used to restore master clock after turbo mode) 39 uint32_t save_size;
40 uint32_t frame_end; 40 uint32_t save_ram_mask;
41 uint32_t max_cycles; 41 uint32_t master_clock; //Current master clock value
42 uint8_t bank_regs[8]; 42 uint32_t normal_clock; //Normal master clock (used to restore master clock after turbo mode)
43 uint16_t mapper_start_index; 43 uint32_t frame_end;
44 uint8_t save_type; 44 uint32_t max_cycles;
45 io_port ports[3]; 45 uint8_t bank_regs[8];
46 uint8_t bus_busy; 46 uint16_t mapper_start_index;
47 uint8_t should_exit; 47 uint8_t save_type;
48 eeprom_state eeprom; 48 io_port ports[3];
49 } genesis_context; 49 uint8_t bus_busy;
50 uint8_t should_exit;
51 eeprom_state eeprom;
52 };
50 53
51 extern genesis_context * genesis; 54 extern genesis_context * genesis;
52 extern int headless; 55 extern int headless;
53 extern int break_on_sync; 56 extern int break_on_sync;
54 extern int save_state; 57 extern int save_state;