From 405489769eb1192920525dca698df508df77b98f Mon Sep 17 00:00:00 2001 From: ekeeke31 Date: Tue, 16 Jun 2009 17:00:40 +0000 Subject: [PATCH] ~modified default 68k mapped memory (VDP DMA accesses WRAM only above $800000) --- source/cart_hw/cart_hw.c | 5 +++-- source/genesis.c | 8 +++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/source/cart_hw/cart_hw.c b/source/cart_hw/cart_hw.c index 8ef5fed..09aa254 100644 --- a/source/cart_hw/cart_hw.c +++ b/source/cart_hw/cart_hw.c @@ -163,7 +163,7 @@ void cart_hw_init() ***********************************************/ for (i=0; i<0x40; i++) { - /* cartridge ROM */ + /* cartridge ROM */ m68k_memory_map[i].base = cart_rom + (i<<16); m68k_memory_map[i].read8 = NULL; m68k_memory_map[i].read16 = NULL; @@ -175,7 +175,8 @@ void cart_hw_init() for (i=0x40; i<0x80; i++) { - /* unused area */ + /* unused area */ + m68k_memory_map[i].base = cart_rom + (i<<16); m68k_memory_map[i].read8 = m68k_read_bus_8; m68k_memory_map[i].read16 = m68k_read_bus_16; m68k_memory_map[i].write8 = m68k_unused_8_w; diff --git a/source/genesis.c b/source/genesis.c index 7e64db1..7c849e8 100644 --- a/source/genesis.c +++ b/source/genesis.c @@ -53,8 +53,10 @@ void gen_init (void) m68k_init(); z80_init(0,0,0,z80_irq_callback); - /* initialize 68k default address space */ - for (i=0x0; i<0x100; i++) + /* initialize 68k mapped memory */ + /* $000000-$7fffff is affected to cartridge area (see cart_hw.c) */ + /* $800000-$ffffff is affected to WRAM (see VDP DMA) */ + for (i=0x80; i<0x100; i++) { m68k_memory_map[i].base = work_ram; m68k_memory_map[i].read8 = NULL; @@ -65,7 +67,7 @@ void gen_init (void) zbank_memory_map[i].write = NULL; } - /* initialize 68k memory map */ + /* initialize 68k memory handlers */ for (i=0x80; i<0xe0; i++) { /* illegal area */