diff options
author | 2019-09-22 13:36:16 +0100 | |
---|---|---|
committer | 2019-09-22 22:36:16 +1000 | |
commit | 74b647597be246d4e94e23ac7dc428ed1caf3ccb (patch) | |
tree | 570787c15bca1fcc4eef41e84d556d4db8686f23 | |
parent | 4cfb7ac9ec59ebb10b3991c7514b4a731f7b2e3e (diff) |
cfx9850 fixes (graph mode zoom menu and memory size) (#5674)
* hcd62121: Added xor instruction with indirect addressing (needed for zoom menu in graph mode to work).
* cfx9850.cpp: Reduce RAM size to 32 KB (0000-7FFF) and add overlapping region 8000-FFFF. The code that detects memory size assumes that FFFF aliases 7FFF.
-rw-r--r-- | src/devices/cpu/hcd62121/hcd62121.cpp | 17 | ||||
-rw-r--r-- | src/mame/drivers/cfx9850.cpp | 2 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/devices/cpu/hcd62121/hcd62121.cpp b/src/devices/cpu/hcd62121/hcd62121.cpp index 53e9a1ed5da..4a99178dde5 100644 --- a/src/devices/cpu/hcd62121/hcd62121.cpp +++ b/src/devices/cpu/hcd62121/hcd62121.cpp @@ -1175,6 +1175,23 @@ void hcd62121_cpu_device::execute_run() } break; + case 0x50: /* xorb ir1,r2 */ + case 0x51: /* xorw ir1,r2 */ + case 0x52: /* xorq ir1,r2 */ + case 0x53: /* xort ir1,r2 */ + { + int size = datasize(op); + u8 reg1 = read_op(); + u8 reg2 = read_op(); + + read_iregreg(size, reg1, reg2, true); + + op_xor(size); + + write_iregreg(size, reg1, reg2); + } + break; + case 0x54: /* cmpb ir1,r2 */ case 0x55: /* cmpw ir1,r2 */ case 0x56: /* cmpq ir1,r2 */ diff --git a/src/mame/drivers/cfx9850.cpp b/src/mame/drivers/cfx9850.cpp index fa965bbdae8..f26d3485f92 100644 --- a/src/mame/drivers/cfx9850.cpp +++ b/src/mame/drivers/cfx9850.cpp @@ -75,7 +75,7 @@ void cfx9850_state::cfx9850_mem(address_map &map) // AM_RANGE( 0x100000, 0x10ffff ) // some memory mapped i/o??? // AM_RANGE( 0x110000, 0x11ffff ) // some memory mapped i/o??? map(0x200000, 0x27ffff).rom().region("bios", 0); - map(0x400000, 0x40ffff).ram(); + map(0x400000, 0x407fff).mirror(0x008000).ram(); map(0x600000, 0x6007ff).mirror(0xf800).ram().share("display_ram"); // AM_RANGE( 0xe10000, 0xe1ffff ) // some memory mapped i/o??? } |