comparison romdb.h @ 1149:6b0da6021544

Don't lock up CPU if performing a read with writes configured when in PBC mode. Allow access to VDP debug commands from Z80 debugger in PBC mode. Handle Mode 4 in VDP debug print functions
author Michael Pavone <pavone@retrodev.com>
date Wed, 04 Jan 2017 20:43:22 -0800
parents 5fb64487b6e1
children 2e6dcb5c11a2
comparison
equal deleted inserted replaced
1148:80ef49539550 1149:6b0da6021544
11 #define RAM_FLAG_MASK RAM_FLAG_ODD 11 #define RAM_FLAG_MASK RAM_FLAG_ODD
12 #define SAVE_I2C 0x01 12 #define SAVE_I2C 0x01
13 #define SAVE_NONE 0xFF 13 #define SAVE_NONE 0xFF
14 14
15 #include "tern.h" 15 #include "tern.h"
16 #include "backend.h"
17 16
18 typedef struct { 17 typedef struct {
19 uint32_t start; 18 uint32_t start;
20 uint32_t end; 19 uint32_t end;
21 uint16_t sda_write_mask; 20 uint16_t sda_write_mask;
33 uint8_t state; 32 uint8_t state;
34 uint8_t counter; 33 uint8_t counter;
35 uint8_t latch; 34 uint8_t latch;
36 } eeprom_state; 35 } eeprom_state;
37 36
38 typedef struct { 37
38 typedef struct rom_info rom_info;
39
40 #include "backend.h"
41
42 struct rom_info {
39 char *name; 43 char *name;
40 memmap_chunk *map; 44 memmap_chunk *map;
41 uint8_t *save_buffer; 45 uint8_t *save_buffer;
42 eeprom_map *eeprom_map; 46 eeprom_map *eeprom_map;
43 char *port1_override; 47 char *port1_override;
49 uint32_t save_size; 53 uint32_t save_size;
50 uint32_t save_mask; 54 uint32_t save_mask;
51 uint16_t mapper_start_index; 55 uint16_t mapper_start_index;
52 uint8_t save_type; 56 uint8_t save_type;
53 uint8_t regions; 57 uint8_t regions;
54 } rom_info; 58 };
55 59
56 tern_node *load_rom_db(); 60 tern_node *load_rom_db();
57 rom_info configure_rom(tern_node *rom_db, void *vrom, uint32_t rom_size, void *lock_on, uint32_t lock_on_size, memmap_chunk const *base_map, uint32_t base_chunks); 61 rom_info configure_rom(tern_node *rom_db, void *vrom, uint32_t rom_size, void *lock_on, uint32_t lock_on_size, memmap_chunk const *base_map, uint32_t base_chunks);
58 rom_info configure_rom_heuristics(uint8_t *rom, uint32_t rom_size, memmap_chunk const *base_map, uint32_t base_chunks); 62 rom_info configure_rom_heuristics(uint8_t *rom, uint32_t rom_size, memmap_chunk const *base_map, uint32_t base_chunks);
59 uint8_t translate_region_char(uint8_t c); 63 uint8_t translate_region_char(uint8_t c);