summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/machine
diff options
context:
space:
mode:
author Couriersud <couriersud@users.noreply.github.com>2013-11-24 20:08:04 +0000
committer Couriersud <couriersud@users.noreply.github.com>2013-11-24 20:08:04 +0000
commitcb6f1d0194b07e3817131d9b589797f7b67a7d59 (patch)
tree397a12f9c437dbcc549effed69505c7b85804e8a /src/emu/machine
parent0d0f072d59bdd04ce519c7ec6d61e13ebcf0c6dc (diff)
Netlist: Added pascal like strings (pstring) class. These use only size(void *) in objects. Uses reference counter to share identical string between various pstrings.
In addition, fixed some bugs and added auto-sizing to netlist_list_t. There shouldn't be memory holes left now, apart from memory allocated in a static class factory.
Diffstat (limited to 'src/emu/machine')
-rw-r--r--src/emu/machine/netlist.c6
-rw-r--r--src/emu/machine/netlist.h4
2 files changed, 5 insertions, 5 deletions
diff --git a/src/emu/machine/netlist.c b/src/emu/machine/netlist.c
index 81bee490d21..55fbb9782b5 100644
--- a/src/emu/machine/netlist.c
+++ b/src/emu/machine/netlist.c
@@ -49,8 +49,6 @@
#include "netlist/nl_setup.h"
#include "netlist/devices/net_lib.h"
-const netlist_time netlist_time::zero = netlist_time::from_raw(0);
-
// ----------------------------------------------------------------------------------------
// netlist_mame_device
// ----------------------------------------------------------------------------------------
@@ -91,8 +89,8 @@ void netlist_mame_device::device_start()
m_setup->start_devices();
bool allok = true;
- for (on_device_start **ods = m_device_start_list.first(); ods <= m_device_start_list.last(); ods++)
- allok &= (*ods)->OnDeviceStart();
+ for (device_start_list_t::entry_t *ods = m_device_start_list.first(); ods != NULL; ods = m_device_start_list.next(ods))
+ allok &= ods->object()->OnDeviceStart();
if (!allok)
fatalerror("required elements not found\n");
diff --git a/src/emu/machine/netlist.h b/src/emu/machine/netlist.h
index b3704b0d0d9..d79b0c4f783 100644
--- a/src/emu/machine/netlist.h
+++ b/src/emu/machine/netlist.h
@@ -118,7 +118,9 @@ public:
netlist_setup_t &setup() { return *m_setup; }
netlist_t &netlist() { return *m_netlist; }
- netlist_list_t<on_device_start *> m_device_start_list;
+ typedef netlist_list_t<on_device_start *> device_start_list_t;
+
+ device_start_list_t m_device_start_list;
protected:
// device-level overrides