Mercurial > repos > blastem
diff blastem.h @ 803:236a184bf6f0
Merge
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 26 Jul 2015 16:51:03 -0700 |
parents | 092524bb2e8f |
children | 69a6ec208111 |
line wrap: on
line diff
--- a/blastem.h Sun Jul 26 16:48:25 2015 -0700 +++ b/blastem.h Sun Jul 26 16:51:03 2015 -0700 @@ -14,12 +14,7 @@ #include "psg.h" #include "io.h" #include "config.h" - -#define RAM_FLAG_ODD 0x1800 -#define RAM_FLAG_EVEN 0x1000 -#define RAM_FLAG_BOTH 0x0000 - -#define CYCLE_NEVER 0xFFFFFFFF +#include "romdb.h" typedef struct { m68k_context *m68k; @@ -27,14 +22,23 @@ vdp_context *vdp; ym2612_context *ym; psg_context *psg; - uint8_t *save_ram; + uint16_t *work_ram; + uint8_t *zram; + uint8_t *save_storage; + eeprom_map *eeprom_map; + uint32_t num_eeprom; + uint32_t save_size; uint32_t save_ram_mask; - uint32_t save_flags; uint32_t master_clock; //Current master clock value uint32_t normal_clock; //Normal master clock (used to restore master clock after turbo mode) + uint32_t frame_end; + uint32_t max_cycles; uint8_t bank_regs[8]; + uint16_t mapper_start_index; + uint8_t save_type; io_port ports[3]; uint8_t bus_busy; + eeprom_state eeprom; } genesis_context; extern genesis_context * genesis; @@ -42,18 +46,16 @@ extern int break_on_sync; extern int save_state; extern tern_node * config; -extern uint8_t busreq; -extern uint8_t reset; -#define CARTRIDGE_WORDS 0x200000 #define RAM_WORDS 32 * 1024 #define Z80_RAM_BYTES 8 * 1024 -extern uint16_t cart[CARTRIDGE_WORDS]; +extern uint16_t *cart; extern uint16_t ram[RAM_WORDS]; extern uint8_t z80_ram[Z80_RAM_BYTES]; uint16_t read_dma_value(uint32_t address); +m68k_context * sync_components(m68k_context *context, uint32_t address); m68k_context * debugger(m68k_context * context, uint32_t address); void set_speed_percent(genesis_context * context, uint32_t percent);