summaryrefslogtreecommitdiff
path: root/mapper_066.c
diff options
context:
space:
mode:
authorPeter Fors <peter.fors@mindkiller.com>2025-04-05 08:58:12 +0200
committerPeter Fors <peter.fors@mindkiller.com>2025-04-05 08:58:12 +0200
commitf1bd6a7d2f4ffe3e5263e0254bcf7522ab381264 (patch)
treee75bde292329f337d619f9a997aab9b17c37e38b /mapper_066.c
parent8c82be43720d9e221a9e2541c9ff6151015838bb (diff)
transform to switch case for ppu_tick()
Diffstat (limited to 'mapper_066.c')
-rw-r--r--mapper_066.c58
1 files changed, 0 insertions, 58 deletions
diff --git a/mapper_066.c b/mapper_066.c
deleted file mode 100644
index 7a2b542..0000000
--- a/mapper_066.c
+++ /dev/null
@@ -1,58 +0,0 @@
-
-static void mapper_066_init(struct nes_state *state) {
- state->map.m066.prg_offset = 0;
- state->map.m066.chr_offset = 0;
-}
-
-static uint8_t mapper_066_prg_read(struct nes_state *state, uint32_t addr) {
- if(addr >= 0x8000) {
- uint32_t base = state->map.m066.prg_offset;
- return state->prg_rom[base + (addr - 0x8000)];
- }
- return 0;
-}
-
-static void mapper_066_prg_write(struct nes_state *state, uint32_t addr, uint8_t value) {
- if(addr >= 0x8000) {
- uint32_t prg_bank = (value >> 4) & 3;
- uint32_t chr_bank = (value >> 0) & 3;
-
- state->map.m066.prg_offset = prg_bank * 0x8000;
- state->map.m066.chr_offset = chr_bank * 0x2000;
- }
-}
-
-static uint8_t mapper_066_chr_read(struct nes_state *state, uint32_t addr) {
- return state->chr_rom[state->map.m066.chr_offset + addr];
-}
-
-static void mapper_066_chr_write(struct nes_state *state, uint32_t addr, uint8_t value) {
-}
-
-static uint8_t mapper_066_ciram_read(struct nes_state *state, uint32_t addr) {
- uint32_t mirrored = addr & 0x0fff;
-
- if(state->ines.mirroring == 0) { // Horizontal
- mirrored = (mirrored & 0x800) | (mirrored & 0x3ff);
- } else { // Vertical (default fallback)
- mirrored = mirrored & 0x7ff;
- }
-
- return state->ciram[mirrored];
-}
-
-static void mapper_066_ciram_write(struct nes_state *state, uint32_t addr, uint8_t value) {
- uint32_t mirrored = addr & 0x0fff;
-
- if(state->ines.mirroring == 0) {
- mirrored = (mirrored & 0x800) | (mirrored & 0x3ff);
- } else {
- mirrored = mirrored & 0x7ff;
- }
-
- state->ciram[mirrored] = value;
-}
-
-static void mapper_066_tick(struct nes_state *state) {
- // No IRQ or timing logic needed
-}