summaryrefslogtreecommitdiff
path: root/mapper.h
blob: 46db0a4e23cead4b2ff2c3b9ef2ebe9fb8e0334c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

#include "mapper_066.h"



struct mapper {
	void (*init)(struct nes_state *state);
	uint8_t (*prg_read)(struct nes_state *state, uint32_t addr);
	void (*prg_write)(struct nes_state *state, uint32_t addr, uint8_t value);
	uint8_t (*chr_read)(struct nes_state *state, uint32_t addr);
	void (*chr_write)(struct nes_state *state, uint32_t addr, uint8_t value);
	uint8_t (*ciram_read)(struct nes_state *state, uint32_t addr);
	void (*ciram_write)(struct nes_state *state, uint32_t addr, uint8_t value);
	void (*tick)(struct nes_state *state);
};

union mapper_data {
	struct mapper_066 m066;
};