summaryrefslogtreecommitdiff
path: root/mappers/mapper.c
diff options
context:
space:
mode:
authorPeter Fors <peter.fors@mindkiller.com>2025-05-08 21:03:43 +0200
committerPeter Fors <peter.fors@mindkiller.com>2025-05-08 21:03:43 +0200
commite28ad1546509de31b706f0fd300a906e5bc55199 (patch)
tree40d708336cf770b8c68302bd32b069951a3df428 /mappers/mapper.c
parentda9d961bbc3662064599f4b0b4759a2c641924a2 (diff)
new and changed mappers
Diffstat (limited to 'mappers/mapper.c')
-rw-r--r--mappers/mapper.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/mappers/mapper.c b/mappers/mapper.c
index 099b6d7..71caff1 100644
--- a/mappers/mapper.c
+++ b/mappers/mapper.c
@@ -23,7 +23,10 @@ static void mapper_default_chr_write(struct nes_state *state, uint32_t addr, uin
static void mapper_default_tick(struct nes_state *state) { }
#include "mapper_000_0.c"
+#include "mapper_001_0.c"
#include "mapper_002_2.c"
+#include "mapper_003_0.c"
+#include "mapper_003_1.c"
#include "mapper_003_2.c"
#include "mapper_007_2.c"
#include "mapper_011_0.c"
@@ -33,7 +36,10 @@ static void mapper_default_tick(struct nes_state *state) { }
static void (*mapper_table[4096])(struct nes_state *state) = {
[MAPPER_ID( 0, 0)] = mapper_000_0_init,
+ [MAPPER_ID( 1, 0)] = mapper_001_0_init,
[MAPPER_ID( 2, 2)] = mapper_002_2_init,
+ [MAPPER_ID( 3, 0)] = mapper_003_0_init,
+ [MAPPER_ID( 3, 1)] = mapper_003_1_init,
[MAPPER_ID( 3, 2)] = mapper_003_2_init,
[MAPPER_ID( 7, 2)] = mapper_007_2_init,
[MAPPER_ID(11, 0)] = mapper_011_0_init,
@@ -52,6 +58,8 @@ static void mapper_reset(struct nes_state *state) {
static void mapper_setup(struct nes_state *state) {
uint32_t mapper = state->ines.mapper << 4 | state->ines.submapper;
+ printf("Mapper %d_%x requested.\n", state->ines.mapper, state->ines.submapper);
+
mapper_reset(state);
if(mapper_table[mapper]) {
mapper_table[mapper](state);