summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/imagedev
diff options
context:
space:
mode:
author Sandro Ronco <sronco@users.noreply.github.com>2013-02-20 20:05:36 +0000
committer Sandro Ronco <sronco@users.noreply.github.com>2013-02-20 20:05:36 +0000
commitdfccb0a2f756652f0698026aadb5ab33dddc35d8 (patch)
tree7412c1907b9074115e1f11c24bc3e473a18eed15 /src/emu/imagedev
parentd78d5233a471bb461f0579876d8761911ef24352 (diff)
(MESS) Re-enabled softlist support in snapshot and quickload. (nw)
Diffstat (limited to 'src/emu/imagedev')
-rw-r--r--src/emu/imagedev/snapquik.c2
-rw-r--r--src/emu/imagedev/snapquik.h11
2 files changed, 12 insertions, 1 deletions
diff --git a/src/emu/imagedev/snapquik.c b/src/emu/imagedev/snapquik.c
index 84db8011af2..6686b485c8e 100644
--- a/src/emu/imagedev/snapquik.c
+++ b/src/emu/imagedev/snapquik.c
@@ -19,6 +19,7 @@ const device_type SNAPSHOT = &device_creator<snapshot_image_device>;
snapshot_image_device::snapshot_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, SNAPSHOT, "Snapshot", tag, owner, clock),
device_image_interface(mconfig, *this),
+ m_interface(NULL),
m_delay_attoseconds(0)
{
}
@@ -26,6 +27,7 @@ snapshot_image_device::snapshot_image_device(const machine_config &mconfig, cons
snapshot_image_device::snapshot_image_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) :
device_t(mconfig, type, name, tag, owner, clock),
device_image_interface(mconfig, *this),
+ m_interface(NULL),
m_delay_attoseconds(0)
{
}
diff --git a/src/emu/imagedev/snapquik.h b/src/emu/imagedev/snapquik.h
index 00016b66c02..3a0bc8cc88f 100644
--- a/src/emu/imagedev/snapquik.h
+++ b/src/emu/imagedev/snapquik.h
@@ -23,6 +23,7 @@ public:
// image-level overrides
virtual bool call_load();
+ virtual bool call_softlist_load(char *swlist, char *swname, rom_entry *start_entry) { return load_software(swlist, swname, start_entry); }
virtual iodevice_t image_type() const { return IO_SNAPSHOT; }
virtual bool is_readable() const { return 1; }
@@ -30,12 +31,13 @@ public:
virtual bool is_creatable() const { return 0; }
virtual bool must_be_loaded() const { return 0; }
virtual bool is_reset_on_load() const { return 0; }
- virtual const char *image_interface() const { return NULL; }
+ virtual const char *image_interface() const { return m_interface; }
virtual const char *file_extensions() const { return m_file_extensions; }
virtual const option_guide *create_option_guide() const { return NULL; }
void timer_callback();
void set_handler(snapquick_load_func load, const char *ext, seconds_t sec) { m_load = load; m_file_extensions = ext; m_delay_seconds = sec; };
+ void set_interface(const char *_interface) { m_interface = _interface; }
protected:
// device-level overrides
virtual void device_config_complete();
@@ -43,6 +45,7 @@ protected:
snapquick_load_func m_load; /* loading function */
const char * m_file_extensions; /* file extensions */
+ const char * m_interface;
seconds_t m_delay_seconds; /* loading delay (seconds) */
attoseconds_t m_delay_attoseconds; /* loading delay (attoseconds) */
emu_timer *m_timer;
@@ -79,8 +82,14 @@ extern const device_type QUICKLOAD;
MCFG_DEVICE_ADD(_tag, SNAPSHOT, 0) \
static_cast<snapshot_image_device *>(device)->set_handler(SNAPSHOT_LOAD_NAME(_load), _file_extensions, _delay);
+#define MCFG_SNAPSHOT_INTERFACE(_interface) \
+ static_cast<snapshot_image_device *>(device)->set_interface(_interface);
+
#define MCFG_QUICKLOAD_ADD(_tag, _load, _file_extensions, _delay) \
MCFG_DEVICE_ADD(_tag, QUICKLOAD, 0) \
static_cast<quickload_image_device *>(device)->set_handler(QUICKLOAD_LOAD_NAME(_load), _file_extensions, _delay);
+#define MCFG_QUICKLOAD_INTERFACE(_interface) \
+ static_cast<quickload_image_device *>(device)->set_interface(_interface);
+
#endif /* __SNAPQUIK_H__ */