summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/ti99/gromport/gromport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/ti99/gromport/gromport.cpp')
-rw-r--r--src/devices/bus/ti99/gromport/gromport.cpp36
1 files changed, 15 insertions, 21 deletions
diff --git a/src/devices/bus/ti99/gromport/gromport.cpp b/src/devices/bus/ti99/gromport/gromport.cpp
index 65c6f15d284..6204c9b5af1 100644
--- a/src/devices/bus/ti99/gromport/gromport.cpp
+++ b/src/devices/bus/ti99/gromport/gromport.cpp
@@ -114,20 +114,20 @@
#include "multiconn.h"
#include "gkracker.h"
-#define LOG_WARN (1U<<1) // Warnings
-#define LOG_READ (1U<<2) // Reading
-#define LOG_WRITE (1U<<3) // Writing
+#define LOG_WARN (1U << 1) // Warnings
+#define LOG_READ (1U << 2) // Reading
+#define LOG_WRITE (1U << 3) // Writing
-#define VERBOSE ( LOG_WARN )
+#define VERBOSE (LOG_WARN)
#include "logmacro.h"
-DEFINE_DEVICE_TYPE_NS(TI99_GROMPORT, bus::ti99::gromport, gromport_device, "gromport", "TI-99 Cartridge port")
+DEFINE_DEVICE_TYPE(TI99_GROMPORT, bus::ti99::gromport::gromport_device, "gromport", "TI-99 Cartridge port")
-namespace bus { namespace ti99 { namespace gromport {
+namespace bus::ti99::gromport {
gromport_device::gromport_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, TI99_GROMPORT, tag, owner, clock),
- device_slot_interface(mconfig, *this),
+ device_single_card_slot_interface<cartridge_connector_device>(mconfig, *this),
m_connector(nullptr),
m_reset_on_insert(true),
m_console_ready(*this),
@@ -173,7 +173,7 @@ void gromport_device::cruwrite(offs_t offset, uint8_t data)
m_connector->cruwrite(offset, data);
}
-WRITE_LINE_MEMBER(gromport_device::ready_line)
+void gromport_device::ready_line(int state)
{
m_console_ready(state);
}
@@ -181,14 +181,14 @@ WRITE_LINE_MEMBER(gromport_device::ready_line)
/*
Asserted when the console addresses cartridge rom.
*/
-WRITE_LINE_MEMBER(gromport_device::romgq_line)
+void gromport_device::romgq_line(int state)
{
m_romgq = state;
if (m_connector != nullptr)
m_connector->romgq_line(state);
}
-WRITE_LINE_MEMBER(gromport_device::gclock_in)
+void gromport_device::gclock_in(int state)
{
if (m_connector != nullptr)
m_connector->gclock_in(state);
@@ -205,10 +205,9 @@ void gromport_device::set_gromlines(line_state mline, line_state moline, line_st
void gromport_device::device_start()
{
- m_console_ready.resolve();
- m_console_reset.resolve();
-
save_item(NAME(m_romgq));
+ if (m_connector != nullptr)
+ m_connector->set_port(this);
}
void gromport_device::device_reset()
@@ -246,7 +245,7 @@ bool gromport_device::is_grom_idle()
void gromport_device::device_config_complete()
{
- m_connector = downcast<cartridge_connector_device*>(subdevices().first());
+ m_connector = get_card_device();
}
INPUT_PORTS_START(gromport)
@@ -278,17 +277,12 @@ cartridge_connector_device::cartridge_connector_device(const machine_config &mco
{
}
-WRITE_LINE_MEMBER( cartridge_connector_device::ready_line )
+void cartridge_connector_device::ready_line(int state)
{
m_gromport->ready_line(state);
}
-void cartridge_connector_device::device_config_complete()
-{
- m_gromport = static_cast<gromport_device*>(owner());
-}
-
-} } } // end namespace bus::ti99::gromport
+} // end namespace bus::ti99::gromport
void ti99_gromport_options(device_slot_interface &device)
{