summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/v810/v810.cpp
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2019-11-03 02:05:07 +1100
committer Vas Crabb <vas@vastheman.com>2019-11-10 00:06:54 +1100
commit295174e4e86432192fb1a8444f2be7b65c0fde17 (patch)
tree1e1f99d642a1cb8622ea055f7f390f03aeb97451 /src/devices/cpu/v810/v810.cpp
parent82e6de6f02b29bd7cd93c39dad5f3289f4999288 (diff)
Cleaned up Virtal Boy slot code.
vboy.xml updates: * Set width and endianness for all ROM regions * Added width and endianness for SRAM, assuming all cartridges have 8k*32 SRAM for now * Removed mirroring - this is an implementation detail * Removed "slot" features - there's enough information to work this out anyway bus/vboy updates: * Made slot probe software part to determine cartridge type * Made cartridges responsible for installing themselves * Added support for arbitrary cartridge sizes, assuming simplistic decoding * Added support for 8-bit and 16-bit SRAM on LSBs * Added support for EXP space and INTCRO output * Fixed SRAM not being loaded bus/generic: added a helper for mapping non-power-of-two memory with simple decoding cpu/v810: send I/O accesses to program space if I/O space is unconfigured vboy.cpp: updated for changed slot and CPU code bus/wswan: added notes The Virtual Boy software list is still in pretty poor shape. It's assuming all carts with SRAM have 8k*32, there are a bunch of feature tags for ICs that don't actually give an IC type, making them useless, 3-D Tetris mentions a battery but doesn't have an SRAM data area, Virtual Fishing refers to a HY6254ALLJ-10 which isn't a real part (I assume it means HY6264ALLJ-10 which is an 8k*8 50µA standby SRAM).
Diffstat (limited to 'src/devices/cpu/v810/v810.cpp')
-rw-r--r--src/devices/cpu/v810/v810.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/devices/cpu/v810/v810.cpp b/src/devices/cpu/v810/v810.cpp
index 19de0e7cfca..070048d6f55 100644
--- a/src/devices/cpu/v810/v810.cpp
+++ b/src/devices/cpu/v810/v810.cpp
@@ -1257,7 +1257,7 @@ void v810_device::device_start()
{
m_program = &space(AS_PROGRAM);
m_cache = m_program->cache<2, 0, ENDIANNESS_LITTLE>();
- m_io = &space(AS_IO);
+ m_io = has_space(AS_IO) ? &space(AS_IO) : m_program;
m_irq_line = 0;
m_irq_state = CLEAR_LINE;