From 63f71342417637fa003923a0770f817a02366069 Mon Sep 17 00:00:00 2001 From: Michael Pavone Date: Wed, 30 Dec 2015 19:00:03 -0800 Subject: Allow DMA from cartridge ROM above the 4MB mark. Should probably use get_native_pointer for everyting, but want to check the performance implications --- blastem.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'blastem.c') diff --git a/blastem.c b/blastem.c index 3f1bffd..a24b8b6 100644 --- a/blastem.c +++ b/blastem.c @@ -134,6 +134,11 @@ uint16_t read_dma_value(uint32_t address) return cart[address]; } else if(address >= 0x700000) { return ram[address & 0x7FFF]; + } else { + uint16_t *ptr = get_native_pointer(address*2, (void **)genesis->m68k->mem_pointers, &genesis->m68k->options->gen); + if (ptr) { + return *ptr; + } } //TODO: Figure out what happens when you try to DMA from weird adresses like IO or banked Z80 area return 0; -- cgit v1.2.3