summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/coco/cococart.cpp
diff options
context:
space:
mode:
author tim lindner <tlindner@macmess.org>2020-12-12 18:57:54 -0800
committer GitHub <noreply@github.com>2020-12-12 21:57:54 -0500
commit8ab7b5c4d054d0798bd3b3ce97b6dc7e692eb59a (patch)
tree19e0b444cfaa41264174007f4e078ed5dc94a365 /src/devices/bus/coco/cococart.cpp
parent728a0937fc675c938644a12cb1a5fbd7d8481de4 (diff)
Adjust CoCo 3 PIA mirrors (#7551)
* readjust pia mirrors in coco3. set proper step rates for wd1773. factor out wdc in floppy controller logging. * refined some logging. fixed up pia mirrors. * set step rates back to what they were
Diffstat (limited to 'src/devices/bus/coco/cococart.cpp')
-rw-r--r--src/devices/bus/coco/cococart.cpp36
1 files changed, 29 insertions, 7 deletions
diff --git a/src/devices/bus/coco/cococart.cpp b/src/devices/bus/coco/cococart.cpp
index 6dc79efefb2..4a13fb4491c 100644
--- a/src/devices/bus/coco/cococart.cpp
+++ b/src/devices/bus/coco/cococart.cpp
@@ -58,7 +58,17 @@
PARAMETERS
***************************************************************************/
-#define LOG_LINE 0
+//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
+#define LOG_CART (1U << 1) // shows cart line changes
+#define LOG_NMI (1U << 2) // shows switch changes
+#define LOG_HALT (1U << 3) // shows switch changes
+// #define VERBOSE (LOG_CART)
+
+#include "logmacro.h"
+
+#define LOGCART(...) LOGMASKED(LOG_CART, __VA_ARGS__)
+#define LOGNMI(...) LOGMASKED(LOG_NMI, __VA_ARGS__)
+#define LOGHALT(...) LOGMASKED(LOG_HALT, __VA_ARGS__)
/***************************************************************************
@@ -150,15 +160,15 @@ void cococart_slot_device::device_timer(emu_timer &timer, device_timer_id id, in
switch(id)
{
case TIMER_CART:
- set_line("CART", m_cart_line, (line_value) param);
+ set_line(line::CART, m_cart_line, (line_value) param);
break;
case TIMER_NMI:
- set_line("NMI", m_nmi_line, (line_value) param);
+ set_line(line::NMI, m_nmi_line, (line_value) param);
break;
case TIMER_HALT:
- set_line("HALT", m_halt_line, (line_value) param);
+ set_line(line::HALT, m_halt_line, (line_value) param);
break;
}
}
@@ -242,14 +252,26 @@ const char *cococart_slot_device::line_value_string(line_value value)
// set_line
//-------------------------------------------------
-void cococart_slot_device::set_line(const char *line_name, coco_cartridge_line &line, cococart_slot_device::line_value value)
+void cococart_slot_device::set_line(line ln, coco_cartridge_line &line, cococart_slot_device::line_value value)
{
if ((line.value != value) || (value == line_value::Q))
{
line.value = value;
- if (LOG_LINE)
- logerror("[%s]: set_line(): %s <= %s\n", machine().describe_context(), line_name, line_value_string(value));
+ switch (ln)
+ {
+ case line::CART:
+ LOGCART( "set_line: CART, value: %s\n", line_value_string(value));
+ break;
+ case line::NMI:
+ LOGNMI( "set_line: NMI, value: %s\n", line_value_string(value));
+ break;
+ case line::HALT:
+ LOGHALT( "set_line: HALT, value: %s\n", line_value_string(value));
+ break;
+ case line::SOUND_ENABLE:
+ break;
+ }
// engage in a bit of gymnastics for this odious 'Q' value
switch(line.value)