Mercurial > repos > blastem
comparison romdb.c @ 2027:0f54a898db03
Implement Heartbeat Personal Trainer peripheral and add ROM DB entry for Outback Joey
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 15 Feb 2021 11:24:06 -0800 |
parents | 42c12d141f6e |
children | 8b2ef428d1aa |
comparison
equal
deleted
inserted
replaced
2026:aa338eb0eded | 2027:0f54a898db03 |
---|---|
30 { | 30 { |
31 if (save_type == SAVE_I2C) { | 31 if (save_type == SAVE_I2C) { |
32 return "EEPROM"; | 32 return "EEPROM"; |
33 } else if(save_type == SAVE_NOR) { | 33 } else if(save_type == SAVE_NOR) { |
34 return "NOR Flash"; | 34 return "NOR Flash"; |
35 } else if(save_type == SAVE_HBPT) { | |
36 return "Heartbeat Personal Trainer"; | |
35 } | 37 } |
36 return "SRAM"; | 38 return "SRAM"; |
37 } | 39 } |
38 | 40 |
39 tern_node *load_rom_db() | 41 tern_node *load_rom_db() |
984 tern_node *device_overrides = tern_find_node(entry, "device_overrides"); | 986 tern_node *device_overrides = tern_find_node(entry, "device_overrides"); |
985 if (device_overrides) { | 987 if (device_overrides) { |
986 info.port1_override = tern_find_ptr(device_overrides, "1"); | 988 info.port1_override = tern_find_ptr(device_overrides, "1"); |
987 info.port2_override = tern_find_ptr(device_overrides, "2"); | 989 info.port2_override = tern_find_ptr(device_overrides, "2"); |
988 info.ext_override = tern_find_ptr(device_overrides, "ext"); | 990 info.ext_override = tern_find_ptr(device_overrides, "ext"); |
991 if ( | |
992 info.save_type == SAVE_NONE | |
993 && ( | |
994 (info.port1_override && startswith(info.port1_override, "heartbeat_trainer.")) | |
995 || (info.port2_override && startswith(info.port2_override, "heartbeat_trainer.")) | |
996 || (info.ext_override && startswith(info.ext_override, "heartbeat_trainer.")) | |
997 ) | |
998 ) { | |
999 info.save_type = SAVE_HBPT; | |
1000 info.save_size = atoi(tern_find_path_default(entry, "HeartbeatTrainer\0size\0", (tern_val){.ptrval="512"}, TVAL_PTR).ptrval); | |
1001 info.save_buffer = calloc(info.save_size + 5 + 8, 1); | |
1002 memset(info.save_buffer, 0xFF, info.save_size); | |
1003 } | |
989 } else { | 1004 } else { |
990 info.port1_override = info.port2_override = info.ext_override = NULL; | 1005 info.port1_override = info.port2_override = info.ext_override = NULL; |
991 } | 1006 } |
992 info.mouse_mode = tern_find_ptr(entry, "mouse_mode"); | 1007 info.mouse_mode = tern_find_ptr(entry, "mouse_mode"); |
993 | 1008 |