Mercurial > repos > blastem
comparison romdb.h @ 1648:b7ecd0d6a77b mame_interp
Merge from default
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Tue, 25 Dec 2018 11:12:26 -0800 |
parents | c206a422d466 |
children | 5dacaef602a7 d60f2d7c02a5 |
comparison
equal
deleted
inserted
replaced
1509:36732f5c2281 | 1648:b7ecd0d6a77b |
---|---|
29 uint8_t *page_buffer; | 29 uint8_t *page_buffer; |
30 uint32_t size; | 30 uint32_t size; |
31 uint32_t page_size; | 31 uint32_t page_size; |
32 uint32_t current_page; | 32 uint32_t current_page; |
33 uint32_t last_write_cycle; | 33 uint32_t last_write_cycle; |
34 uint32_t cmd_address1; | |
35 uint32_t cmd_address2; | |
34 uint16_t product_id; | 36 uint16_t product_id; |
35 uint8_t mode; | 37 uint8_t mode; |
36 uint8_t cmd_state; | 38 uint8_t cmd_state; |
37 uint8_t alt_cmd; | 39 uint8_t alt_cmd; |
38 uint8_t bus_flags; | 40 uint8_t bus_flags; |
41 enum { | 43 enum { |
42 MAPPER_NONE, | 44 MAPPER_NONE, |
43 MAPPER_SEGA, | 45 MAPPER_SEGA, |
44 MAPPER_REALTEC, | 46 MAPPER_REALTEC, |
45 MAPPER_XBAND, | 47 MAPPER_XBAND, |
46 MAPPER_MULTI_GAME | 48 MAPPER_MULTI_GAME, |
49 MAPPER_JCART | |
47 }; | 50 }; |
48 | 51 |
49 | 52 |
50 typedef struct rom_info rom_info; | 53 typedef struct rom_info rom_info; |
51 | 54 |
52 #include "backend.h" | 55 #include "memmap.h" |
53 | 56 |
54 struct rom_info { | 57 struct rom_info { |
55 char *name; | 58 char *name; |
56 memmap_chunk *map; | 59 memmap_chunk *map; |
57 uint8_t *save_buffer; | 60 uint8_t *save_buffer; |
59 eeprom_map *eeprom_map; | 62 eeprom_map *eeprom_map; |
60 char *port1_override; | 63 char *port1_override; |
61 char *port2_override; | 64 char *port2_override; |
62 char *ext_override; | 65 char *ext_override; |
63 char *mouse_mode; | 66 char *mouse_mode; |
67 nor_state *nor; | |
64 uint32_t num_eeprom; | 68 uint32_t num_eeprom; |
65 uint32_t map_chunks; | 69 uint32_t map_chunks; |
66 uint32_t rom_size; | 70 uint32_t rom_size; |
67 uint32_t save_size; | 71 uint32_t save_size; |
68 uint32_t save_mask; | 72 uint32_t save_mask; |
69 uint32_t save_page_size; | |
70 uint16_t save_product_id; | |
71 uint16_t mapper_start_index; | 73 uint16_t mapper_start_index; |
72 uint8_t save_type; | 74 uint8_t save_type; |
73 uint8_t save_bus; //only used for NOR currently | 75 uint8_t save_bus; //only used for NOR currently |
74 uint8_t mapper_type; | 76 uint8_t mapper_type; |
75 uint8_t regions; | 77 uint8_t regions; |
85 uint8_t translate_region_char(uint8_t c); | 87 uint8_t translate_region_char(uint8_t c); |
86 char const *save_type_name(uint8_t save_type); | 88 char const *save_type_name(uint8_t save_type); |
87 //Note: free_rom_info only frees things pointed to by a rom_info struct, not the struct itself | 89 //Note: free_rom_info only frees things pointed to by a rom_info struct, not the struct itself |
88 //this is because rom_info structs are typically stack allocated | 90 //this is because rom_info structs are typically stack allocated |
89 void free_rom_info(rom_info *info); | 91 void free_rom_info(rom_info *info); |
92 typedef struct system_header system_header; | |
90 void cart_serialize(system_header *sys, serialize_buffer *buf); | 93 void cart_serialize(system_header *sys, serialize_buffer *buf); |
91 void cart_deserialize(deserialize_buffer *buf, void *vcontext); | 94 void cart_deserialize(deserialize_buffer *buf, void *vcontext); |
92 | 95 |
93 #endif //ROMDB_H_ | 96 #endif //ROMDB_H_ |