summaryrefslogtreecommitdiff
path: root/mapper.c
blob: 7e374df8c40f54d5d8098be4e063cc66576b45b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28


#include "mapper_nrom.c"
// #include "mapper_mmc1.c"
// #include "mapper_uxrom.c"

static void mapper_setup(struct nes_state *state) {
	switch(state->ines.mapper) {
	case 0:
		state->mapper.read  = mapper_nrom_read;
		state->mapper.write = mapper_nrom_write;
		state->mapper.tick  = mapper_nrom_tick;
		state->mapper.init  = mapper_nrom_init;
		state->mapper.init(state);
		break;

	default:
		// fallback: NROM-compatible
		state->mapper.read  = mapper_nrom_read;
		state->mapper.write = mapper_nrom_write;
		state->mapper.tick  = mapper_nrom_tick;
		state->mapper.init  = mapper_nrom_init;
		state->mapper.init(state);
		break;
	}
}