# HG changeset patch # User Michael Pavone # Date 1451530803 28800 # Node ID 2e465934bddce95ca61784c7562fa6470ae480d9 # Parent f057975212e9fb7d0580245bb0135bc1afbad86d Allow DMA from cartridge ROM above the 4MB mark. Should probably use get_native_pointer for everyting, but want to check the performance implications diff -r f057975212e9 -r 2e465934bddc blastem.c --- a/blastem.c Thu Dec 17 20:41:43 2015 -0800 +++ b/blastem.c Wed Dec 30 19:00:03 2015 -0800 @@ -134,6 +134,11 @@ 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;