comparison romdb.c @ 1228:2e6dcb5c11a2

WIP support for XBAND mapper hardware
author Michael Pavone <pavone@retrodev.com>
date Thu, 23 Feb 2017 00:08:37 -0800
parents 53fc7efdfdab
children 23c94f5266d1
comparison
equal deleted inserted replaced
1227:262c0ce8f586 1228:2e6dcb5c11a2
3 #include "config.h" 3 #include "config.h"
4 #include "romdb.h" 4 #include "romdb.h"
5 #include "util.h" 5 #include "util.h"
6 #include "genesis.h" 6 #include "genesis.h"
7 #include "menu.h" 7 #include "menu.h"
8 #include "xband.h"
8 9
9 #define DOM_TITLE_START 0x120 10 #define DOM_TITLE_START 0x120
10 #define DOM_TITLE_END 0x150 11 #define DOM_TITLE_END 0x150
11 #define TITLE_START DOM_TITLE_END 12 #define TITLE_START DOM_TITLE_END
12 #define TITLE_END (TITLE_START+48) 13 #define TITLE_END (TITLE_START+48)
13 #define GAME_ID_OFF 0x183
14 #define GAME_ID_LEN 8
15 #define ROM_END 0x1A4 14 #define ROM_END 0x1A4
16 #define RAM_ID 0x1B0 15 #define RAM_ID 0x1B0
17 #define RAM_FLAGS 0x1B2 16 #define RAM_FLAGS 0x1B2
18 #define RAM_START 0x1B4 17 #define RAM_START 0x1B4
19 #define RAM_END 0x1B8 18 #define RAM_END 0x1B8
846 } 845 }
847 printf("Product ID: %s\n", product_id); 846 printf("Product ID: %s\n", product_id);
848 tern_node * entry = tern_find_ptr(rom_db, product_id); 847 tern_node * entry = tern_find_ptr(rom_db, product_id);
849 if (!entry) { 848 if (!entry) {
850 puts("Not found in ROM DB, examining header\n"); 849 puts("Not found in ROM DB, examining header\n");
850 if (xband_detect(rom, rom_size)) {
851 return xband_configure_rom(rom_db, rom, rom_size, lock_on, lock_on_size, base_map, base_chunks);
852 }
851 return configure_rom_heuristics(rom, rom_size, base_map, base_chunks); 853 return configure_rom_heuristics(rom, rom_size, base_map, base_chunks);
852 } 854 }
853 rom_info info; 855 rom_info info;
854 info.name = tern_find_ptr(entry, "name"); 856 info.name = tern_find_ptr(entry, "name");
855 if (info.name) { 857 if (info.name) {