Mercurial > repos > blastem
comparison blastem.c @ 918:2e465934bddc
Allow DMA from cartridge ROM above the 4MB mark. Should probably use get_native_pointer for everyting, but want to check the performance implications
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 30 Dec 2015 19:00:03 -0800 |
parents | a5a51465f8b0 |
children | 8bd82aead087 |
comparison
equal
deleted
inserted
replaced
917:f057975212e9 | 918:2e465934bddc |
---|---|
132 //addresses here are word addresses (i.e. bit 0 corresponds to A1), so no need to do div by 2 | 132 //addresses here are word addresses (i.e. bit 0 corresponds to A1), so no need to do div by 2 |
133 if (address < 0x200000) { | 133 if (address < 0x200000) { |
134 return cart[address]; | 134 return cart[address]; |
135 } else if(address >= 0x700000) { | 135 } else if(address >= 0x700000) { |
136 return ram[address & 0x7FFF]; | 136 return ram[address & 0x7FFF]; |
137 } else { | |
138 uint16_t *ptr = get_native_pointer(address*2, (void **)genesis->m68k->mem_pointers, &genesis->m68k->options->gen); | |
139 if (ptr) { | |
140 return *ptr; | |
141 } | |
137 } | 142 } |
138 //TODO: Figure out what happens when you try to DMA from weird adresses like IO or banked Z80 area | 143 //TODO: Figure out what happens when you try to DMA from weird adresses like IO or banked Z80 area |
139 return 0; | 144 return 0; |
140 } | 145 } |
141 | 146 |