summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/devices/nld_9310.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/netlist/devices/nld_9310.cpp')
-rw-r--r--src/lib/netlist/devices/nld_9310.cpp30
1 files changed, 16 insertions, 14 deletions
diff --git a/src/lib/netlist/devices/nld_9310.cpp b/src/lib/netlist/devices/nld_9310.cpp
index 4ddb62af519..dd448c4282b 100644
--- a/src/lib/netlist/devices/nld_9310.cpp
+++ b/src/lib/netlist/devices/nld_9310.cpp
@@ -6,6 +6,7 @@
*/
#include "nld_9310.h"
+#include "nl_base.h"
#define MAXCNT 9
@@ -158,21 +159,22 @@ namespace netlist
{
if (m_loadq)
{
- switch (m_cnt())
+ if (m_cnt < MAXCNT - 1)
{
- case MAXCNT - 1:
- m_cnt = MAXCNT;
- m_RC.push(m_ent, NLTIME_FROM_NS(20));
- m_QA.push(1, NLTIME_FROM_NS(20));
- break;
- case MAXCNT:
- m_RC.push(0, NLTIME_FROM_NS(20));
- m_cnt = 0;
- update_outputs_all(m_cnt, NLTIME_FROM_NS(20));
- break;
- default:
- m_cnt++;
- update_outputs(m_cnt);
+ m_cnt++;
+ update_outputs(m_cnt);
+ }
+ else if (m_cnt == MAXCNT - 1)
+ {
+ m_cnt = MAXCNT;
+ m_RC.push(m_ent, NLTIME_FROM_NS(20));
+ m_QA.push(1, NLTIME_FROM_NS(20));
+ }
+ else // MAXCNT
+ {
+ m_RC.push(0, NLTIME_FROM_NS(20));
+ m_cnt = 0;
+ update_outputs_all(m_cnt, NLTIME_FROM_NS(20));
}
}
else