summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author MetalliC <0vetal0@gmail.com>2020-06-04 20:45:55 +0300
committer MetalliC <0vetal0@gmail.com>2020-06-04 20:45:55 +0300
commit7c6d6d19cf2894bec84beb30a0b840f1233f44d4 (patch)
tree8fa34d8a42184265965fbb9ef28bdd3998859f7b
parent754a13530ce857f609f5fe3dbbad460bd2f6ec29 (diff)
spec128.cpp remove old hacks, misc minor notes (nw)
-rw-r--r--src/devices/bus/spectrum/beta128.cpp6
-rw-r--r--src/mame/drivers/dccons.cpp1
-rw-r--r--src/mame/drivers/spec128.cpp26
3 files changed, 15 insertions, 18 deletions
diff --git a/src/devices/bus/spectrum/beta128.cpp b/src/devices/bus/spectrum/beta128.cpp
index 85423618b79..e528fbc8154 100644
--- a/src/devices/bus/spectrum/beta128.cpp
+++ b/src/devices/bus/spectrum/beta128.cpp
@@ -11,6 +11,7 @@
is moved from 3cxx to 3dxx for example)
TODO:
+ original ROMs should have bits 0 and 7 swapped
there were many unofficial ROMs available for this, make them
available for use.
@@ -39,7 +40,8 @@ INPUT_PORTS_START(beta128)
PORT_START("SWITCH")
PORT_CONFNAME(0x03, 0x01, "System Switch") //PORT_CHANGED_MEMBER(DEVICE_SELF, spectrum_beta128_device, switch_changed, 0)
PORT_CONFSETTING(0x00, "Off (128)")
- PORT_CONFSETTING(0x01, "Normal (auto-boot)")
+ PORT_CONFSETTING(0x01, "Normal (auto-boot)") // also enable Beta-disk V3/V4 compatibility, auto-boot feature does not work on Spectrum128.
+ //PORT_CONFSETTING(0x02, "Reset") // TODO: implement RESET callback
INPUT_PORTS_END
//-------------------------------------------------
@@ -154,7 +156,7 @@ void spectrum_beta128_device::device_reset()
else
m_romcs = 0;
- m_128rom_bit = false;
+ m_128rom_bit = true;
}
//**************************************************************************
diff --git a/src/mame/drivers/dccons.cpp b/src/mame/drivers/dccons.cpp
index cb56a3ad89a..7e8e1c24601 100644
--- a/src/mame/drivers/dccons.cpp
+++ b/src/mame/drivers/dccons.cpp
@@ -881,6 +881,7 @@ Consists of HKS-0300 main unit and HKS-0100 LCD with touch screen
HDR-0095 673-01??? Fish Life Episode 1 Basic Edition
HDR-0096 673-01??? Fish Life Episode 2 Basic Edition
HDR-0097 673-01??? Fish Life Episode 3 Basic Edition
+ MSD-0001 ???-????? Fish Life Red Sea & Amazon PDP Ver.
* denotes these games are archived.
Machines high likely based on Fish Life:
diff --git a/src/mame/drivers/spec128.cpp b/src/mame/drivers/spec128.cpp
index fd9fd5012ae..8cbc4c3726a 100644
--- a/src/mame/drivers/spec128.cpp
+++ b/src/mame/drivers/spec128.cpp
@@ -167,25 +167,19 @@ resulting mess can be seen in the F4 viewer display.
READ8_MEMBER(spectrum_state::spectrum_128_pre_opcode_fetch_r)
{
- /* this allows expansion devices to act upon opcode fetches from MEM addresses */
- if (BIT(m_port_7ffd_data, 4))
- {
- /* this allows expansion devices to act upon opcode fetches from MEM addresses
- for example, interface1 detection fetches requires fetches at 0008 / 0708 to
- enable paged ROM and then fetches at 0700 to disable it
- */
- m_exp->pre_opcode_fetch(offset);
- uint8_t retval = m_maincpu->space(AS_PROGRAM).read_byte(offset);
- m_exp->post_opcode_fetch(offset);
- return retval;
- }
-
- return m_maincpu->space(AS_PROGRAM).read_byte(offset);
+ /* this allows expansion devices to act upon opcode fetches from MEM addresses
+ for example, interface1 detection fetches requires fetches at 0008 / 0708 to
+ enable paged ROM and then fetches at 0700 to disable it
+ */
+ m_exp->pre_opcode_fetch(offset);
+ uint8_t retval = m_maincpu->space(AS_PROGRAM).read_byte(offset);
+ m_exp->post_opcode_fetch(offset);
+ return retval;
}
WRITE8_MEMBER( spectrum_state::spectrum_128_bank1_w )
{
- if (m_exp->romcs() && BIT(m_port_7ffd_data, 4))
+ if (m_exp->romcs())
m_exp->mreq_w(offset, data);
}
@@ -193,7 +187,7 @@ READ8_MEMBER( spectrum_state::spectrum_128_bank1_r )
{
uint8_t data;
- if (m_exp->romcs() && BIT(m_port_7ffd_data, 4))
+ if (m_exp->romcs())
{
data = m_exp->mreq_r(offset);
}