SNAPSHOT_LOAD and QUICKLOAD_LOAD made members, still need to cleanup (nw)

This commit is contained in:
Miodrag Milanovic 2013-04-19 14:47:35 +00:00
parent 1cf6d1965d
commit be5e1248c4
109 changed files with 252 additions and 232 deletions

View File

@ -9,7 +9,7 @@
#ifndef __SNAPQUIK_H__
#define __SNAPQUIK_H__
typedef int (*snapquick_load_func)(device_image_interface &image, const char *file_type, int file_size);
typedef delegate<int (device_image_interface &,const char *, int)> snapquick_load_delegate;
// ======================> snapshot_image_device
class snapshot_image_device : public device_t,
@ -36,14 +36,14 @@ public:
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_handler(snapquick_load_delegate 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();
virtual void device_start();
snapquick_load_func m_load; /* loading function */
snapquick_load_delegate m_load; /* loading function */
const char * m_file_extensions; /* file extensions */
const char * m_interface;
seconds_t m_delay_seconds; /* loading delay (seconds) */
@ -71,23 +71,28 @@ extern const device_type QUICKLOAD;
/***************************************************************************
DEVICE CONFIGURATION MACROS
***************************************************************************/
#define SNAPSHOT_LOAD_NAME(name) snapshot_load_##name
#define SNAPSHOT_LOAD(name) int SNAPSHOT_LOAD_NAME(name)(device_image_interface &image, const char *file_type, int snapshot_size)
#define SNAPSHOT_LOAD_MEMBER_NAME(_name) snapshot_load_##_name
#define SNAPSHOT_LOAD_NAME(_class,_name) _class::SNAPSHOT_LOAD_MEMBER_NAME(_name)
#define DECLARE_SNAPSHOT_LOAD_MEMBER(_name) int SNAPSHOT_LOAD_MEMBER_NAME(_name)(device_image_interface &image, const char *file_type, int snapshot_size)
#define SNAPSHOT_LOAD_MEMBER(_class,_name) int SNAPSHOT_LOAD_NAME(_class,_name)(device_image_interface &image, const char *file_type, int snapshot_size)
#define SNAPSHOT_LOAD_DELEGATE(_class,_name) snapquick_load_delegate(&SNAPSHOT_LOAD_NAME(_class,_name),#_class "::snapshot_load_" #_name, downcast<_class *>(device->owner()))
#define QUICKLOAD_LOAD_NAME(name) quickload_load_##name
#define QUICKLOAD_LOAD(name) int QUICKLOAD_LOAD_NAME(name)(device_image_interface &image, const char *file_type, int quickload_size)
#define QUICKLOAD_LOAD_MEMBER_NAME(_name) quickload_load##_name
#define QUICKLOAD_LOAD_NAME(_class,_name) _class::QUICKLOAD_LOAD_MEMBER_NAME(_name)
#define DECLARE_QUICKLOAD_LOAD_MEMBER(_name) int QUICKLOAD_LOAD_MEMBER_NAME(_name)(device_image_interface &image, const char *file_type, int quickload_size)
#define QUICKLOAD_LOAD_MEMBER(_class,_name) int QUICKLOAD_LOAD_NAME(_class,_name)(device_image_interface &image, const char *file_type, int quickload_size)
#define QUICKLOAD_LOAD_DELEGATE(_class,_name) snapquick_load_delegate(&QUICKLOAD_LOAD_NAME(_class,_name),#_class "::quickload_load_" #_name, downcast<_class *>(device->owner()))
#define MCFG_SNAPSHOT_ADD(_tag, _load, _file_extensions, _delay) \
#define MCFG_SNAPSHOT_ADD(_tag, _class, _load, _file_extensions, _delay) \
MCFG_DEVICE_ADD(_tag, SNAPSHOT, 0) \
static_cast<snapshot_image_device *>(device)->set_handler(SNAPSHOT_LOAD_NAME(_load), _file_extensions, _delay);
static_cast<snapshot_image_device *>(device)->set_handler(SNAPSHOT_LOAD_DELEGATE(_class,_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) \
#define MCFG_QUICKLOAD_ADD(_tag, _class, _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);
static_cast<quickload_image_device *>(device)->set_handler(QUICKLOAD_LOAD_DELEGATE(_class,_load), _file_extensions, _delay);
#define MCFG_QUICKLOAD_INTERFACE(_interface) \
static_cast<quickload_image_device *>(device)->set_interface(_interface);

View File

@ -347,8 +347,6 @@ Notes:
#define R3000_CLOCK XTAL_40MHz
#define M68K_CLOCK XTAL_50MHz
static QUICKLOAD_LOAD( jaguar );
/*************************************
*
@ -1615,7 +1613,7 @@ static MACHINE_CONFIG_START( jaguar, jaguar_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", jaguar, "abs,bin,cof,jag,prg", 2)
MCFG_QUICKLOAD_ADD("quickload", jaguar_state, jaguar, "abs,bin,cof,jag,prg", 2)
/* cartridge */
MCFG_CARTSLOT_ADD("cart")
@ -1673,9 +1671,9 @@ DRIVER_INIT_MEMBER(jaguar_state,jaguar)
}
}
QUICKLOAD_LOAD( jaguar )
QUICKLOAD_LOAD_MEMBER( jaguar_state, jaguar )
{
return image.device().machine().driver_data<jaguar_state>()->quickload(image, file_type, quickload_size);
return quickload(image, file_type, quickload_size);
}
int jaguar_state::quickload(device_image_interface &image, const char *file_type, int quickload_size)

View File

@ -8,6 +8,7 @@
#include "machine/nvram.h"
#include "sound/dac.h"
#include "machine/eeprom.h"
#include "imagedev/snapquik.h"
#ifndef ENABLE_SPEEDUP_HACKS
#define ENABLE_SPEEDUP_HACKS 1
@ -218,6 +219,7 @@ public:
int cart_load(device_image_interface &image);
IRQ_CALLBACK_MEMBER(jaguar_irq_callback);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( jaguar_cart );
DECLARE_QUICKLOAD_LOAD_MEMBER( jaguar );
protected:
// timer IDs
enum

View File

@ -68,10 +68,10 @@ Ports:
Snapshot Handling
******************************************************************************/
SNAPSHOT_LOAD( ace )
SNAPSHOT_LOAD_MEMBER( ace_state, ace )
{
cpu_device *cpu = image.device().machine().firstcpu;
UINT8 *RAM = image.device().machine().root_device().memregion(cpu->tag())->base();
cpu_device *cpu = m_maincpu;
UINT8 *RAM = memregion(cpu->tag())->base();
address_space &space = cpu->space(AS_PROGRAM);
unsigned char ace_repeat, ace_byte, loop;
int done=0, ace_index=0x2000;
@ -765,7 +765,7 @@ static MACHINE_CONFIG_START( ace, ace_state )
// devices
MCFG_CASSETTE_ADD("cassette", ace_cassette_interface)
MCFG_SNAPSHOT_ADD("snapshot", ace, "ace", 1)
MCFG_SNAPSHOT_ADD("snapshot", ace_state, ace, "ace", 1)
MCFG_I8255A_ADD(I8255_TAG, ppi_intf)
MCFG_Z80PIO_ADD(Z80PIO_TAG, XTAL_6_5MHz/2, pio_intf)
MCFG_CENTRONICS_PRINTER_ADD(CENTRONICS_TAG, standard_centronics)

View File

@ -28,9 +28,8 @@ public:
altair_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_terminal(*this, TERMINAL_TAG)
,
m_ram(*this, "ram"){ }
m_terminal(*this, TERMINAL_TAG),
m_ram(*this, "ram"){ }
required_device<cpu_device> m_maincpu;
required_device<generic_terminal_device> m_terminal;
@ -42,6 +41,7 @@ public:
UINT8 m_term_data;
required_shared_ptr<UINT8> m_ram;
virtual void machine_reset();
DECLARE_QUICKLOAD_LOAD_MEMBER(altair);
};
@ -87,7 +87,7 @@ static INPUT_PORTS_START( altair )
INPUT_PORTS_END
QUICKLOAD_LOAD(altair)
QUICKLOAD_LOAD_MEMBER( altair_state,altair)
{
altair_state *state = image.device().machine().driver_data<altair_state>();
int quick_length;
@ -132,7 +132,7 @@ static MACHINE_CONFIG_START( altair, altair_state )
MCFG_GENERIC_TERMINAL_ADD(TERMINAL_TAG, terminal_intf)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", altair, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", altair_state, altair, "bin", 0)
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -872,7 +872,7 @@ static MACHINE_CONFIG_START( amstrad_nofdc, amstrad_state )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", amstrad, "sna", 0)
MCFG_SNAPSHOT_ADD("snapshot", amstrad_state, amstrad, "sna", 0)
MCFG_CASSETTE_ADD( "cassette", amstrad_cassette_interface )
MCFG_SOFTWARE_LIST_ADD("cass_list","cpc_cass")
@ -946,7 +946,7 @@ static MACHINE_CONFIG_START( cpcplus, amstrad_state )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", amstrad, "sna", 0)
MCFG_SNAPSHOT_ADD("snapshot", amstrad_state, amstrad, "sna", 0)
MCFG_CASSETTE_ADD( "cassette", amstrad_cassette_interface )

View File

@ -308,7 +308,7 @@ static MACHINE_CONFIG_START( apple1, apple1_state )
MCFG_PIA6821_ADD( "pia", apple1_pia0 )
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", apple1, "snp", 0)
MCFG_SNAPSHOT_ADD("snapshot", apple1_state, apple1, "snp", 0)
MCFG_CASSETTE_ADD("cassette", apple1_cassette_interface)
MCFG_SOFTWARE_LIST_ADD("cass_list","apple1")

View File

@ -128,18 +128,18 @@ Hardware: PPIA 8255
image_fread_memory - read image to memory
-------------------------------------------------*/
static void image_fread_memory(device_image_interface &image, UINT16 addr, UINT32 count)
void atom_state::image_fread_memory(device_image_interface &image, UINT16 addr, UINT32 count)
{
void *ptr = image.device().machine().firstcpu->space(AS_PROGRAM).get_write_ptr(addr);
void *ptr = m_maincpu->space(AS_PROGRAM).get_write_ptr(addr);
image.fread( ptr, count);
}
/*-------------------------------------------------
QUICKLOAD_LOAD( atom_atm )
QUICKLOAD_LOAD_MEMBER( atom_state, atom_atm )
-------------------------------------------------*/
QUICKLOAD_LOAD( atom_atm )
QUICKLOAD_LOAD_MEMBER( atom_state, atom_atm )
{
/*
@ -174,7 +174,7 @@ QUICKLOAD_LOAD( atom_atm )
image_fread_memory(image, start_address, size);
image.device().machine().firstcpu->set_pc(run_address);
m_maincpu->set_pc(run_address);
return IMAGE_INIT_PASS;
}
@ -877,7 +877,7 @@ static MACHINE_CONFIG_START( atom, atom_state )
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(atom_floppy_interface)
MCFG_CENTRONICS_PRINTER_ADD(CENTRONICS_TAG, atom_centronics_config)
MCFG_CASSETTE_ADD("cassette", atom_cassette_interface)
MCFG_QUICKLOAD_ADD("quickload", atom_atm, "atm", 0)
MCFG_QUICKLOAD_ADD("quickload", atom_state, atom_atm, "atm", 0)
/* cartridge */
MCFG_ATOM_CARTSLOT_ADD("cart")

View File

@ -823,7 +823,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(avigo_state::avigo_1hz_timer)
refresh_ints();
}
static QUICKLOAD_LOAD(avigo)
QUICKLOAD_LOAD_MEMBER( avigo_state,avigo)
{
avigo_state *state = image.device().machine().driver_data<avigo_state>();
address_space& flash1 = state->m_flashes[1]->space(0);
@ -932,7 +932,7 @@ static MACHINE_CONFIG_START( avigo, avigo_state )
MCFG_TIMER_DRIVER_ADD_PERIODIC("1hz_timer", avigo_state, avigo_1hz_timer, attotime::from_hz(1))
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", avigo, "app", 0)
MCFG_QUICKLOAD_ADD("quickload", avigo_state, avigo, "app", 0)
MACHINE_CONFIG_END

View File

@ -79,6 +79,7 @@ public:
required_shared_ptr<const UINT8> m_p_videoram;
required_shared_ptr<const UINT8> m_p_attribram;
required_device<cpu_device> m_maincpu;
DECLARE_QUICKLOAD_LOAD_MEMBER( binbug );
};
WRITE8_MEMBER( binbug_state::binbug_ctrl_w )
@ -217,7 +218,7 @@ static GFXDECODE_START( dg640 )
GFXDECODE_ENTRY( "chargen", 0x0000, dg640_charlayout, 0, 1 )
GFXDECODE_END
QUICKLOAD_LOAD( binbug )
QUICKLOAD_LOAD_MEMBER( binbug_state, binbug )
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i;
@ -314,7 +315,7 @@ static MACHINE_CONFIG_START( binbug, binbug_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", binbug, "pgm", 1)
MCFG_QUICKLOAD_ADD("quickload", binbug_state, binbug, "pgm", 1)
MACHINE_CONFIG_END

View File

@ -27,7 +27,7 @@
static QUICKLOAD_LOAD( cbm_c64 )
QUICKLOAD_LOAD_MEMBER( c128_state, cbm_c64 )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbm_quick_sethiaddress);
}
@ -1454,7 +1454,7 @@ static MACHINE_CONFIG_START( ntsc, c128_state )
MCFG_C64_USER_PORT_ADD(C64_USER_PORT_TAG, c64_user_port_cards, NULL, NULL, DEVWRITELINE(DEVICE_SELF, c128_state, exp_reset_w))
MCFG_C64_USER_PORT_CIA1_CALLBACKS(DEVWRITELINE(MOS6526_1_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_1_TAG, mos6526_device, sp_w))
MCFG_C64_USER_PORT_CIA2_CALLBACKS(DEVWRITELINE(MOS6526_2_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, sp_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, flag_w))
MCFG_QUICKLOAD_ADD("quickload", cbm_c64, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", c128_state, cbm_c64, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// software list
MCFG_SOFTWARE_LIST_ADD("cart_list_vic10", "vic10")
@ -1577,7 +1577,7 @@ static MACHINE_CONFIG_START( pal, c128_state )
MCFG_C64_USER_PORT_ADD(C64_USER_PORT_TAG, c64_user_port_cards, NULL, NULL, DEVWRITELINE(DEVICE_SELF, c128_state, exp_reset_w))
MCFG_C64_USER_PORT_CIA1_CALLBACKS(DEVWRITELINE(MOS6526_1_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_1_TAG, mos6526_device, sp_w))
MCFG_C64_USER_PORT_CIA2_CALLBACKS(DEVWRITELINE(MOS6526_2_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, sp_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, flag_w))
MCFG_QUICKLOAD_ADD("quickload", cbm_c64, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", c128_state, cbm_c64, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// software list
MCFG_SOFTWARE_LIST_ADD("cart_list_vic10", "vic10")

View File

@ -28,7 +28,7 @@
#define VA13 BIT(va, 13)
#define VA12 BIT(va, 12)
static QUICKLOAD_LOAD( cbm_c64 )
QUICKLOAD_LOAD_MEMBER( c64_state, cbm_c64 )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbm_quick_sethiaddress);
}
@ -1090,7 +1090,7 @@ static MACHINE_CONFIG_START( ntsc, c64_state )
MCFG_C64_USER_PORT_ADD(C64_USER_PORT_TAG, c64_user_port_cards, NULL, NULL, DEVWRITELINE(DEVICE_SELF, c64_state, exp_reset_w))
MCFG_C64_USER_PORT_CIA1_CALLBACKS(DEVWRITELINE(MOS6526_1_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_1_TAG, mos6526_device, sp_w))
MCFG_C64_USER_PORT_CIA2_CALLBACKS(DEVWRITELINE(MOS6526_2_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, sp_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, flag_w))
MCFG_QUICKLOAD_ADD("quickload", cbm_c64, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", c64_state, cbm_c64, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
// software list
MCFG_SOFTWARE_LIST_ADD("cart_list_vic10", "vic10")
@ -1203,7 +1203,7 @@ static MACHINE_CONFIG_START( pal, c64_state )
MCFG_C64_USER_PORT_ADD(C64_USER_PORT_TAG, c64_user_port_cards, NULL, NULL, DEVWRITELINE(DEVICE_SELF, c64_state, exp_reset_w))
MCFG_C64_USER_PORT_CIA1_CALLBACKS(DEVWRITELINE(MOS6526_1_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_1_TAG, mos6526_device, sp_w))
MCFG_C64_USER_PORT_CIA2_CALLBACKS(DEVWRITELINE(MOS6526_2_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, sp_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, flag_w))
MCFG_QUICKLOAD_ADD("quickload", cbm_c64, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", c64_state, cbm_c64, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
// software list
MCFG_SOFTWARE_LIST_ADD("cart_list_vic10", "vic10")
@ -1294,7 +1294,7 @@ static MACHINE_CONFIG_START( pal_gs, c64gs_state )
MCFG_C64_USER_PORT_ADD(C64_USER_PORT_TAG, c64_user_port_cards, NULL, NULL, DEVWRITELINE(DEVICE_SELF, c64_state, exp_reset_w))
MCFG_C64_USER_PORT_CIA1_CALLBACKS(DEVWRITELINE(MOS6526_1_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_1_TAG, mos6526_device, sp_w))
MCFG_C64_USER_PORT_CIA2_CALLBACKS(DEVWRITELINE(MOS6526_2_TAG, mos6526_device, cnt_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, sp_w), DEVWRITELINE(MOS6526_2_TAG, mos6526_device, flag_w))
MCFG_QUICKLOAD_ADD("quickload", cbm_c64, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", c64_state, cbm_c64, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
// software list
MCFG_SOFTWARE_LIST_ADD("cart_list_vic10", "vic10")

View File

@ -70,7 +70,7 @@ static void cbm_c65_quick_sethiaddress( running_machine &machine, UINT16 hiaddre
space.write_byte(0x83, hiaddress >> 8);
}
static QUICKLOAD_LOAD( cbm_c65 )
QUICKLOAD_LOAD_MEMBER( c65_state, cbm_c65 )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbm_c65_quick_sethiaddress);
}
@ -435,7 +435,7 @@ static MACHINE_CONFIG_START( c65, c65_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", cbm_c65, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", c65_state, cbm_c65, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
/* cia */
MCFG_LEGACY_MOS6526R1_ADD("cia_0", 3500000, 60, c65_cia0)

View File

@ -37,12 +37,12 @@ static void cbmb_quick_sethiaddress(running_machine &machine, UINT16 hiaddress)
space.write_byte(0xf0047, hiaddress >> 8);
}
static QUICKLOAD_LOAD( cbmb )
QUICKLOAD_LOAD_MEMBER( cbm2_state, cbmb )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0x10000, cbmb_quick_sethiaddress);
}
static QUICKLOAD_LOAD( p500 )
QUICKLOAD_LOAD_MEMBER( p500_state, p500 )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbmb_quick_sethiaddress);
}
@ -2211,7 +2211,7 @@ static MACHINE_CONFIG_START( p500_ntsc, p500_state )
MCFG_CBM2_EXPANSION_SLOT_ADD(CBM2_EXPANSION_SLOT_TAG, VIC6567_CLOCK, cbm2_expansion_cards, NULL, NULL)
MCFG_CBM2_USER_PORT_ADD(CBM2_USER_PORT_TAG, p500_user_intf, cbm2_user_port_cards, NULL, NULL)
MCFG_RS232_PORT_ADD(RS232_TAG, rs232_intf, default_rs232_devices, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", p500, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", p500_state, p500, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// internal ram
MCFG_FRAGMENT_ADD(128k)
@ -2268,7 +2268,7 @@ static MACHINE_CONFIG_START( p500_pal, p500_state )
MCFG_CBM2_EXPANSION_SLOT_ADD(CBM2_EXPANSION_SLOT_TAG, VIC6569_CLOCK, cbm2_expansion_cards, NULL, NULL)
MCFG_CBM2_USER_PORT_ADD(CBM2_USER_PORT_TAG, p500_user_intf, cbm2_user_port_cards, NULL, NULL)
MCFG_RS232_PORT_ADD(RS232_TAG, rs232_intf, default_rs232_devices, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", p500, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", p500_state, p500, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// internal ram
MCFG_FRAGMENT_ADD(128k)
@ -2331,7 +2331,7 @@ static MACHINE_CONFIG_START( cbm2lp_ntsc, cbm2_state )
MCFG_CBM2_EXPANSION_SLOT_ADD(CBM2_EXPANSION_SLOT_TAG, XTAL_18MHz/9, cbm2_expansion_cards, NULL, NULL)
MCFG_CBM2_USER_PORT_ADD(CBM2_USER_PORT_TAG, user_intf, cbm2_user_port_cards, NULL, NULL)
MCFG_RS232_PORT_ADD(RS232_TAG, rs232_intf, default_rs232_devices, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", cbmb, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", cbm2_state, cbmb, "p00,prg,t64", CBM_QUICKLOAD_DELAY_SECONDS)
// software list
MCFG_SOFTWARE_LIST_ADD("cart_list", "cbm2_cart")

View File

@ -44,6 +44,7 @@ public:
DECLARE_WRITE8_MEMBER(kbd_put);
DECLARE_READ8_MEMBER(cass_r);
DECLARE_WRITE8_MEMBER(cass_w);
DECLARE_QUICKLOAD_LOAD_MEMBER( cd2650 );
const UINT8 *m_p_chargen;
UINT8 m_term_data;
virtual void machine_reset();
@ -164,7 +165,7 @@ static ASCII_KEYBOARD_INTERFACE( keyboard_intf )
DEVCB_DRIVER_MEMBER(cd2650_state, kbd_put)
};
QUICKLOAD_LOAD( cd2650 )
QUICKLOAD_LOAD_MEMBER( cd2650_state, cd2650 )
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i;
@ -267,7 +268,7 @@ static MACHINE_CONFIG_START( cd2650, cd2650_state )
MCFG_ASCII_KEYBOARD_ADD(KEYBOARD_TAG, keyboard_intf)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", cd2650, "pgm", 1)
MCFG_QUICKLOAD_ADD("quickload", cd2650_state, cd2650, "pgm", 1)
/* cassette */
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )

View File

@ -707,7 +707,7 @@ DEVICE_IMAGE_LOAD( cgenie_floppy )
spt = pd_list[i].SPT / heads;
dir_sector = pd_list[i].DDSL * pd_list[i].GATM * pd_list[i].GPL + pd_list[i].SPT;
dir_length = pd_list[i].DDGA * pd_list[i].GPL;
memcpy(image.device().machine().root_device().memregion("maincpu")->base() + 0x5A71 + floppy_get_drive(image) * sizeof(PDRIVE), &pd_list[i], sizeof(PDRIVE));
memcpy(memregion("maincpu")->base() + 0x5A71 + floppy_get_drive(image) * sizeof(PDRIVE), &pd_list[i], sizeof(PDRIVE));
break;
}
}

View File

@ -45,12 +45,12 @@ static void image_fread_memory(device_image_interface &image, UINT16 addr, UINT3
}
/*-------------------------------------------------
QUICKLOAD_LOAD( comx35_comx )
QUICKLOAD_LOAD_MEMBER( comx35_state, comx35_comx )
-------------------------------------------------*/
QUICKLOAD_LOAD( comx35_comx )
QUICKLOAD_LOAD_MEMBER( comx35_state, comx35_comx )
{
address_space &program = image.device().machine().firstcpu->space(AS_PROGRAM);
address_space &program = m_maincpu->space(AS_PROGRAM);
UINT8 header[16] = {0};
int size = image.length();
@ -691,7 +691,7 @@ static MACHINE_CONFIG_START( pal, comx35_state )
// peripheral hardware
MCFG_CDP1871_ADD(CDP1871_TAG, kbc_intf, CDP1869_CPU_CLK_PAL / 8)
MCFG_QUICKLOAD_ADD("quickload", comx35_comx, "comx", 0)
MCFG_QUICKLOAD_ADD("quickload", comx35_state, comx35_comx, "comx", 0)
MCFG_CASSETTE_ADD("cassette", cassette_intf)
// expansion bus
@ -722,7 +722,7 @@ static MACHINE_CONFIG_START( ntsc, comx35_state )
// peripheral hardware
MCFG_CDP1871_ADD(CDP1871_TAG, kbc_intf, CDP1869_CPU_CLK_NTSC / 8)
MCFG_QUICKLOAD_ADD("quickload", comx35_comx, "comx", 0)
MCFG_QUICKLOAD_ADD("quickload", comx35_state, comx35_comx, "comx", 0)
MCFG_CASSETTE_ADD("cassette", cassette_intf)
// expansion bus

View File

@ -531,7 +531,7 @@ void cosmicos_state::machine_reset()
/* Quickload */
static QUICKLOAD_LOAD( cosmicos )
QUICKLOAD_LOAD_MEMBER( cosmicos_state, cosmicos )
{
cosmicos_state *state = image.device().machine().driver_data<cosmicos_state>();
UINT8 *ptr = state->m_rom->base();
@ -587,7 +587,7 @@ static MACHINE_CONFIG_START( cosmicos, cosmicos_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
/* devices */
MCFG_QUICKLOAD_ADD("quickload", cosmicos, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", cosmicos_state, cosmicos, "bin", 0)
MCFG_CASSETTE_ADD("cassette", cosmicos_cassette_interface)
/* internal ram */

View File

@ -330,7 +330,7 @@ static MACHINE_CONFIG_START( cybikov1, cybiko_state )
MCFG_RAM_EXTRA_OPTIONS("1M")
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", cybiko, "bin,nv", 0)
MCFG_QUICKLOAD_ADD("quickload", cybiko_state, cybiko, "bin,nv", 0)
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( cybikov2, cybikov1)
@ -364,7 +364,7 @@ static MACHINE_CONFIG_DERIVED( cybikoxt, cybikov1)
/* quickload */
MCFG_DEVICE_REMOVE("quickload")
MCFG_QUICKLOAD_ADD("quickload", cybikoxt, "bin,nv", 0)
MCFG_QUICKLOAD_ADD("quickload", cybiko_state, cybikoxt, "bin,nv", 0)
MACHINE_CONFIG_END

View File

@ -77,6 +77,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( d6800_screen_w );
UINT32 screen_update_d6800(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(d6800_p);
DECLARE_QUICKLOAD_LOAD_MEMBER( d6800 );
protected:
required_device<cpu_device> m_maincpu;
required_device<cassette_image_device> m_cass;
@ -333,7 +334,7 @@ static const cassette_interface d6800_cassette_interface =
NULL
};
static QUICKLOAD_LOAD( d6800 )
QUICKLOAD_LOAD_MEMBER( d6800_state, d6800 )
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i;
@ -401,7 +402,7 @@ static MACHINE_CONFIG_START( d6800, d6800_state )
MCFG_TIMER_DRIVER_ADD_PERIODIC("d6800_p", d6800_state, d6800_p, attotime::from_hz(40000))
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", d6800, "ch8", 1)
MCFG_QUICKLOAD_ADD("quickload", d6800_state, d6800, "ch8", 1)
MACHINE_CONFIG_END
/* ROMs */

View File

@ -277,7 +277,7 @@ static DM9368_INTERFACE( led_l_intf )
DEVCB_NULL
};
static QUICKLOAD_LOAD( elf )
QUICKLOAD_LOAD_MEMBER( elf2_state, elf )
{
elf2_state *state = image.device().machine().driver_data<elf2_state>();
@ -314,7 +314,7 @@ static MACHINE_CONFIG_START( elf2, elf2_state )
/* devices */
MCFG_CASSETTE_ADD("cassette", elf_cassette_interface)
MCFG_QUICKLOAD_ADD("quickload", elf, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", elf2_state, elf, "bin", 0)
/* internal ram */
MCFG_RAM_ADD(RAM_TAG)

View File

@ -204,7 +204,7 @@ static MACHINE_CONFIG_START( galaxy, galaxy_state )
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", galaxy, "gal", 0)
MCFG_SNAPSHOT_ADD("snapshot", galaxy_state, galaxy, "gal", 0)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_WAVE_ADD(WAVE_TAG, "cassette")
@ -240,7 +240,7 @@ static MACHINE_CONFIG_START( galaxyp, galaxy_state )
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", galaxy, "gal", 0)
MCFG_SNAPSHOT_ADD("snapshot", galaxy_state, galaxy, "gal", 0)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")

View File

@ -129,7 +129,7 @@ INPUT_CHANGED_MEMBER(gizmondo_state::port_changed)
}
#if 0
static QUICKLOAD_LOAD( gizmondo )
QUICKLOAD_LOAD_MEMBER( gizmondo_state, gizmondo )
{
return gizmondo_quickload( image, file_type, quickload_size, 0x3000E000); // eboot
//return gizmondo_quickload( image, file_type, quickload_size, 0x30400000); // wince
@ -216,7 +216,7 @@ static MACHINE_CONFIG_START( gizmondo, gizmondo_state )
MCFG_DISKONCHIP_G3_ADD("diskonchip", 64)
#if 0
MCFG_QUICKLOAD_ADD("quickload", wince, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", gizmondo_state, wince, "bin", 0)
#endif
MACHINE_CONFIG_END

View File

@ -74,6 +74,7 @@ public:
UINT32 screen_update_homelab2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
UINT32 screen_update_homelab3(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(homelab_frame);
DECLARE_QUICKLOAD_LOAD_MEMBER(homelab);
};
INTERRUPT_GEN_MEMBER(homelab_state::homelab_frame)
@ -641,7 +642,7 @@ GFXDECODE_END
static const mea8000_interface brailab4_speech_intf = { "speech", DEVCB_NULL };
static QUICKLOAD_LOAD(homelab)
QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i=0;
@ -760,7 +761,7 @@ static MACHINE_CONFIG_START( homelab, homelab_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )
MCFG_QUICKLOAD_ADD("quickload", homelab, "htp", 2)
MCFG_QUICKLOAD_ADD("quickload", homelab_state, homelab, "htp", 2)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( homelab3, homelab_state )
@ -790,7 +791,7 @@ static MACHINE_CONFIG_START( homelab3, homelab_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )
MCFG_QUICKLOAD_ADD("quickload", homelab, "htp", 2)
MCFG_QUICKLOAD_ADD("quickload", homelab_state, homelab, "htp", 2)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( brailab4, homelab_state )
@ -823,7 +824,7 @@ static MACHINE_CONFIG_START( brailab4, homelab_state )
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )
MCFG_MEA8000_ADD("mea8000", brailab4_speech_intf)
MCFG_QUICKLOAD_ADD("quickload", homelab, "htp", 18)
MCFG_QUICKLOAD_ADD("quickload", homelab_state, homelab, "htp", 18)
MACHINE_CONFIG_END
DRIVER_INIT_MEMBER(homelab_state,brailab4)

View File

@ -70,6 +70,7 @@ public:
DECLARE_WRITE8_MEMBER(portf8_w);
DECLARE_WRITE8_MEMBER(portf9_w);
DECLARE_WRITE8_MEMBER(portfa_w);
DECLARE_QUICKLOAD_LOAD_MEMBER( instruct );
virtual void machine_reset();
UINT8 m_digit;
bool m_valid_digit;
@ -216,7 +217,7 @@ void instruct_state::machine_reset()
memcpy(m_p_ram, ROM+0x1800, 0x0200);
}
QUICKLOAD_LOAD( instruct )
QUICKLOAD_LOAD_MEMBER( instruct_state, instruct )
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i;
@ -296,7 +297,7 @@ static MACHINE_CONFIG_START( instruct, instruct_state )
MCFG_DEFAULT_LAYOUT(layout_instruct)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", instruct, "pgm", 1)
MCFG_QUICKLOAD_ADD("quickload", instruct_state, instruct, "pgm", 1)
/* cassette */
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )

View File

@ -64,6 +64,8 @@ public:
DECLARE_WRITE8_MEMBER(jr100_via_write_b);
DECLARE_WRITE_LINE_MEMBER(jr100_via_write_cb2);
UINT32 readByLittleEndian(UINT8 *buf,int pos);
DECLARE_QUICKLOAD_LOAD_MEMBER(jr100);
protected:
required_device<via6522_device> m_via;
@ -336,7 +338,7 @@ UINT32 jr100_state::readByLittleEndian(UINT8 *buf,int pos)
return buf[pos] + (buf[pos+1] << 8) + (buf[pos+2] << 16) + (buf[pos+3] << 24);
}
static QUICKLOAD_LOAD(jr100)
QUICKLOAD_LOAD_MEMBER( jr100_state,jr100)
{
jr100_state *state = image.device().machine().driver_data<jr100_state>();
int quick_length;
@ -420,7 +422,7 @@ static MACHINE_CONFIG_START( jr100, jr100_state )
MCFG_TIMER_DRIVER_ADD_PERIODIC("sound_tick", jr100_state, sound_tick, attotime::from_hz(XTAL_14_31818MHz / 16))
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", jr100, "prg", 2)
MCFG_QUICKLOAD_ADD("quickload", jr100_state, jr100, "prg", 2)
MACHINE_CONFIG_END

View File

@ -267,7 +267,7 @@ static MACHINE_CONFIG_START( kayproii, kaypro_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
/* devices */
MCFG_QUICKLOAD_ADD("quickload", kayproii, "com,cpm", 3)
MCFG_QUICKLOAD_ADD("quickload", kaypro_state, kayproii, "com,cpm", 3)
MCFG_FD1793_ADD("wd1793", kaypro_wd1793_interface )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
MCFG_COM8116_ADD("brg", XTAL_5_0688MHz, kayproii_brg_intf) // WD1943, SMC8116
@ -313,7 +313,7 @@ static MACHINE_CONFIG_START( kaypro2x, kaypro_state )
/* devices */
MCFG_MC6845_ADD("crtc", MC6845, 2000000, kaypro2x_crtc) /* comes out of ULA - needs to be measured */
MCFG_QUICKLOAD_ADD("quickload", kaypro2x, "com,cpm", 3)
MCFG_QUICKLOAD_ADD("quickload", kaypro_state, kaypro2x, "com,cpm", 3)
MCFG_FD1793_ADD("wd1793", kaypro_wd1793_interface )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
MCFG_COM8116_ADD("brg", XTAL_5_0688MHz, kaypro2x_brg_intf) // WD1943, SMC8116

View File

@ -155,7 +155,7 @@ static MACHINE_CONFIG_START( kc85_3, kc_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* devices */
MCFG_QUICKLOAD_ADD("quickload", kc, "kcc", 2)
MCFG_QUICKLOAD_ADD("quickload", kc_state, kc, "kcc", 2)
MCFG_CASSETTE_ADD( "cassette", kc_cassette_interface )
@ -207,7 +207,7 @@ static MACHINE_CONFIG_START( kc85_4, kc85_4_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* devices */
MCFG_QUICKLOAD_ADD("quickload", kc, "kcc", 2)
MCFG_QUICKLOAD_ADD("quickload", kc_state, kc, "kcc", 2)
MCFG_CASSETTE_ADD( "cassette", kc_cassette_interface )

View File

@ -458,7 +458,7 @@ static MACHINE_CONFIG_START( lviv, lviv_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", lviv, "sav", 0)
MCFG_SNAPSHOT_ADD("snapshot", lviv_state, lviv, "sav", 0)
MCFG_CASSETTE_ADD( "cassette", lviv_cassette_interface )
MCFG_SOFTWARE_LIST_ADD("cass_list","lviv")

View File

@ -13,8 +13,6 @@
#include "imagedev/snapquik.h"
#include "lynx.lh"
static QUICKLOAD_LOAD( lynx );
static ADDRESS_MAP_START( lynx_mem , AS_PROGRAM, 8, lynx_state )
AM_RANGE(0x0000, 0xfbff) AM_RAM AM_SHARE("mem_0000")
AM_RANGE(0xfc00, 0xfcff) AM_RAM AM_SHARE("mem_fc00")
@ -89,7 +87,7 @@ static MACHINE_CONFIG_START( lynx, lynx_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* devices */
MCFG_QUICKLOAD_ADD("quickload", lynx, "o", 0)
MCFG_QUICKLOAD_ADD("quickload", lynx_state, lynx, "o", 0)
MCFG_FRAGMENT_ADD(lynx_cartslot)
MACHINE_CONFIG_END
@ -135,7 +133,7 @@ ROM_START(lynx2)
ROM_END
static QUICKLOAD_LOAD( lynx )
QUICKLOAD_LOAD_MEMBER( lynx_state, lynx )
{
lynx_state *state = image.device().machine().driver_data<lynx_state>();
address_space &space = state->m_maincpu->space(AS_PROGRAM);

View File

@ -708,8 +708,8 @@ static MACHINE_CONFIG_START( mbee, mbee_state )
/* devices */
MCFG_MC6845_ADD("crtc", SY6545_1, XTAL_12MHz / 8, mbee_crtc)
MCFG_QUICKLOAD_ADD("quickload", mbee, "mwb,com", 2)
MCFG_QUICKLOAD_ADD("quickload2", mbee_z80bin, "bin", 2)
MCFG_QUICKLOAD_ADD("quickload", mbee_state, mbee, "mwb,com", 2)
MCFG_QUICKLOAD_ADD("quickload2", mbee_state, mbee_z80bin, "bin", 2)
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )
MACHINE_CONFIG_END
@ -749,8 +749,8 @@ static MACHINE_CONFIG_START( mbeeic, mbee_state )
/* devices */
MCFG_MC6845_ADD("crtc", SY6545_1, XTAL_13_5MHz / 8, mbeeic_crtc)
MCFG_QUICKLOAD_ADD("quickload", mbee, "mwb,com", 2)
MCFG_QUICKLOAD_ADD("quickload2", mbee_z80bin, "bin", 2)
MCFG_QUICKLOAD_ADD("quickload", mbee_state, mbee, "mwb,com", 2)
MCFG_QUICKLOAD_ADD("quickload2", mbee_state, mbee_z80bin, "bin", 2)
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )
MACHINE_CONFIG_END

View File

@ -248,8 +248,8 @@ static MACHINE_CONFIG_START( microtan, microtan_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* snapshot/quickload */
MCFG_SNAPSHOT_ADD("snapshot", microtan, "m65", 0.5)
MCFG_QUICKLOAD_ADD("quickload", microtan, "hex", 0.5)
MCFG_SNAPSHOT_ADD("snapshot", microtan_state, microtan, "m65", 0.5)
MCFG_QUICKLOAD_ADD("quickload", microtan_state, microtan, "hex", 0.5)
/* cassette */
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )

View File

@ -372,7 +372,7 @@ static MACHINE_CONFIG_START( mtx512, mtx_state )
MCFG_Z80CTC_ADD(Z80CTC_TAG, XTAL_4MHz, ctc_intf )
MCFG_TIMER_DRIVER_ADD_PERIODIC("z80ctc_timer", mtx_state, ctc_tick, attotime::from_hz(XTAL_4MHz/13))
MCFG_CENTRONICS_PRINTER_ADD(CENTRONICS_TAG, standard_centronics)
MCFG_SNAPSHOT_ADD("snapshot", mtx, "mtb", 0.5)
MCFG_SNAPSHOT_ADD("snapshot", mtx_state, mtx, "mtb", 0.5)
MCFG_CASSETTE_ADD("cassette", mtx_cassette_interface)
MCFG_TIMER_DRIVER_ADD_PERIODIC("cassette_timer", mtx_state, cassette_tick, attotime::from_hz(44100))

View File

@ -299,7 +299,7 @@ static MACHINE_CONFIG_START( nascom1, nascom1_state )
MCFG_Z80PIO_ADD( "z80pio", XTAL_16MHz/8, nascom1_z80pio_intf )
/* devices */
MCFG_SNAPSHOT_ADD("snapshot", nascom1, "nas", 0.5)
MCFG_SNAPSHOT_ADD("snapshot", nascom1_state, nascom1, "nas", 0.5)
MCFG_CASSETTE_ADD( "cassette", default_cassette_interface )

View File

@ -163,7 +163,7 @@ static void cbm_pet_quick_sethiaddress( running_machine &machine, UINT16 hiaddre
space.write_byte(0x2b, hiaddress >> 8);
}
static QUICKLOAD_LOAD( cbm_pet )
QUICKLOAD_LOAD_MEMBER( pet_state, cbm_pet )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbm_pet_quick_sethiaddress);
}
@ -1463,7 +1463,7 @@ static MACHINE_CONFIG_START( pet, pet_state )
MCFG_PET_EXPANSION_SLOT_ADD(PET_EXPANSION_SLOT_TAG, XTAL_8MHz/8, pet_expansion_cards, NULL, NULL)
MCFG_PET_EXPANSION_SLOT_DMA_CALLBACKS(READ8(pet_state, read), WRITE8(pet_state, write))
MCFG_PET_USER_PORT_ADD(PET_USER_PORT_TAG, user_intf, pet_user_port_cards, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", cbm_pet, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", pet_state, cbm_pet, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// software lists
MCFG_SOFTWARE_LIST_ADD("cass_list", "pet_cass")
@ -1742,7 +1742,7 @@ static MACHINE_CONFIG_START( pet80, pet80_state )
MCFG_PET_EXPANSION_SLOT_ADD(PET_EXPANSION_SLOT_TAG, XTAL_16MHz/16, pet_expansion_cards, NULL, NULL)
MCFG_PET_EXPANSION_SLOT_DMA_CALLBACKS(READ8(pet_state, read), WRITE8(pet_state, write))
MCFG_PET_USER_PORT_ADD(PET_USER_PORT_TAG, user_intf, pet_user_port_cards, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", cbm_pet, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", pet_state, cbm_pet, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// software lists
MCFG_SOFTWARE_LIST_ADD("cass_list", "pet_cass")

View File

@ -54,6 +54,7 @@ public:
DECLARE_WRITE8_MEMBER(pipbug_serial_w);
required_device<serial_terminal_device> m_terminal;
required_device<cpu_device> m_maincpu;
DECLARE_QUICKLOAD_LOAD_MEMBER( pipbug );
};
WRITE8_MEMBER( pipbug_state::pipbug_ctrl_w )
@ -92,7 +93,7 @@ static const serial_terminal_interface terminal_intf =
DEVCB_NULL
};
QUICKLOAD_LOAD( pipbug )
QUICKLOAD_LOAD_MEMBER( pipbug_state, pipbug )
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i;
@ -172,7 +173,7 @@ static MACHINE_CONFIG_START( pipbug, pipbug_state )
MCFG_SERIAL_TERMINAL_ADD(TERMINAL_TAG, terminal_intf, 110)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", pipbug, "pgm", 1)
MCFG_QUICKLOAD_ADD("quickload", pipbug_state, pipbug, "pgm", 1)
MACHINE_CONFIG_END

View File

@ -33,7 +33,7 @@
static QUICKLOAD_LOAD( cbm_c16 )
QUICKLOAD_LOAD_MEMBER( plus4_state, cbm_c16 )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbm_quick_sethiaddress);
}
@ -744,7 +744,7 @@ static MACHINE_CONFIG_START( ntsc, plus4_state )
MCFG_PLUS4_EXPANSION_SLOT_ADD(PLUS4_EXPANSION_SLOT_TAG, XTAL_14_31818MHz/16, plus4_expansion_cards, "c1551", NULL, DEVWRITELINE(DEVICE_SELF, plus4_state, exp_irq_w))
MCFG_PLUS4_EXPANSION_SLOT_DMA_CALLBACKS(DEVREAD8(DEVICE_SELF, plus4_state, read), DEVWRITE8(DEVICE_SELF, plus4_state, write), INPUTLINE(MOS7501_TAG, INPUT_LINE_HALT))
MCFG_PLUS4_USER_PORT_ADD(PLUS4_USER_PORT_TAG, plus4_user_port_cards, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", cbm_c16, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", plus4_state, cbm_c16, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// internal ram
MCFG_RAM_ADD(RAM_TAG)
@ -790,7 +790,7 @@ static MACHINE_CONFIG_START( pal, plus4_state )
MCFG_PLUS4_EXPANSION_SLOT_ADD(PLUS4_EXPANSION_SLOT_TAG, XTAL_17_73447MHz/20, plus4_expansion_cards, "c1551", NULL, DEVWRITELINE(DEVICE_SELF, plus4_state, exp_irq_w))
MCFG_PLUS4_EXPANSION_SLOT_DMA_CALLBACKS(DEVREAD8(DEVICE_SELF, plus4_state, read), DEVWRITE8(DEVICE_SELF, plus4_state, write), INPUTLINE(MOS7501_TAG, INPUT_LINE_HALT))
MCFG_PLUS4_USER_PORT_ADD(PLUS4_USER_PORT_TAG, plus4_user_port_cards, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", cbm_c16, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", plus4_state, cbm_c16, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// internal ram
MCFG_RAM_ADD(RAM_TAG)

View File

@ -198,7 +198,7 @@ static MACHINE_CONFIG_START( poly88, poly88_state )
MCFG_SERIAL_SOURCE_ADD("sercas")
/* snapshot */
MCFG_SNAPSHOT_ADD("snapshot", poly88, "img", 0)
MCFG_SNAPSHOT_ADD("snapshot", poly88_state, poly88, "img", 0)
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( poly8813, poly88 )

View File

@ -275,8 +275,8 @@ static MACHINE_CONFIG_START( primoa32, primo_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* snapshot/quickload */
MCFG_SNAPSHOT_ADD("snapshot", primo, "pss", 0)
MCFG_QUICKLOAD_ADD("quickload", primo, "pp", 0)
MCFG_SNAPSHOT_ADD("snapshot", primo_state, primo, "pss", 0)
MCFG_QUICKLOAD_ADD("quickload", primo_state, primo, "pp", 0)
MCFG_CASSETTE_ADD( "cassette", primo_cassette_interface )

View File

@ -50,6 +50,7 @@ public:
int load_psf( cpu_device *cpu, unsigned char *p_n_file, int n_len );
void cd_dma_read( UINT32 *p_n_psxram, UINT32 n_address, INT32 n_size );
void cd_dma_write( UINT32 *p_n_psxram, UINT32 n_address, INT32 n_size );
DECLARE_QUICKLOAD_LOAD_MEMBER( psx_exe_load );
required_device<cpu_device> m_maincpu;
};
@ -448,7 +449,7 @@ DIRECT_UPDATE_MEMBER(psx1_state::psx_setopbase)
return address;
}
static QUICKLOAD_LOAD( psx_exe_load )
QUICKLOAD_LOAD_MEMBER( psx1_state, psx_exe_load )
{
psx1_state *state = image.device().machine().driver_data<psx1_state>();
address_space &space = state->m_maincpu->space( AS_PROGRAM );
@ -517,7 +518,7 @@ static MACHINE_CONFIG_START( psxntsc, psx1_state )
MCFG_SOUND_ROUTE( 1, "rspeaker", 1.00 )
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", psx_exe_load, "cpe,exe,psf,psx", 0)
MCFG_QUICKLOAD_ADD("quickload", psx1_state, psx_exe_load, "cpe,exe,psf,psx", 0)
MCFG_SOFTWARE_LIST_ADD("cd_list","psx")
@ -551,7 +552,7 @@ static MACHINE_CONFIG_START( psxpal, psx1_state )
MCFG_SOUND_ROUTE( 1, "rspeaker", 1.00 )
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", psx_exe_load, "cpe,exe,psf,psx", 0)
MCFG_QUICKLOAD_ADD("quickload", psx1_state, psx_exe_load, "cpe,exe,psf,psx", 0)
MCFG_SOFTWARE_LIST_ADD("cd_list","psx")

View File

@ -119,6 +119,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(irq_timer1);
TIMER_DEVICE_CALLBACK_MEMBER(irq_timer2);
TIMER_DEVICE_CALLBACK_MEMBER(sec_timer);
DECLARE_QUICKLOAD_LOAD_MEMBER(rex6000);
};
@ -561,7 +562,7 @@ void rex6000_state::palette_init()
palette_set_color(machine(), 1, MAKE_RGB(92, 83, 88));
}
static QUICKLOAD_LOAD(rex6000)
QUICKLOAD_LOAD_MEMBER( rex6000_state,rex6000)
{
static const char magic[] = "ApplicationName:Addin";
running_machine &machine = image.device().machine();
@ -662,7 +663,7 @@ static MACHINE_CONFIG_START( rex6000, rex6000_state )
MCFG_GFXDECODE(rex6000)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", rex6000, "rex,ds2", 0)
MCFG_QUICKLOAD_ADD("quickload", rex6000_state, rex6000, "rex,ds2", 0)
MCFG_RP5C01_ADD(TC8521_TAG, XTAL_32_768kHz, rtc_intf)

View File

@ -451,8 +451,8 @@ static MACHINE_CONFIG_START( sorcerer, sorcerer_state )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
/* quickload */
MCFG_SNAPSHOT_ADD("snapshot", sorcerer, "snp", 2)
MCFG_QUICKLOAD_ADD("quickload", sorcerer, "bin", 3)
MCFG_SNAPSHOT_ADD("snapshot", sorcerer_state, sorcerer, "snp", 2)
MCFG_QUICKLOAD_ADD("quickload", sorcerer_state, sorcerer, "bin", 3)
MCFG_CASSETTE_ADD( "cassette", sorcerer_cassette_interface )
MCFG_CASSETTE_ADD( "cassette2", sorcerer_cassette_interface )

View File

@ -717,8 +717,8 @@ MACHINE_CONFIG_START( spectrum_common, spectrum_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* devices */
MCFG_SNAPSHOT_ADD("snapshot", spectrum, "ach,frz,plusd,prg,sem,sit,sna,snp,snx,sp,z80,zx", 0)
MCFG_QUICKLOAD_ADD("quickload", spectrum, "raw,scr", 2) // The delay prevents the screen from being cleared by the RAM test at boot
MCFG_SNAPSHOT_ADD("snapshot", spectrum_state, spectrum, "ach,frz,plusd,prg,sem,sit,sna,snp,snx,sp,z80,zx", 0)
MCFG_QUICKLOAD_ADD("quickload", spectrum_state, spectrum, "raw,scr", 2) // The delay prevents the screen from being cleared by the RAM test at boot
MCFG_CASSETTE_ADD( "cassette", spectrum_cassette_interface )
MCFG_SOFTWARE_LIST_ADD("cass_list","spectrum_cass")

View File

@ -661,7 +661,7 @@ static MACHINE_CONFIG_START( super80, super80_state )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", super80, "bin", 3)
MCFG_QUICKLOAD_ADD("quickload", super80_state, super80, "bin", 3)
/* cassette */
MCFG_CASSETTE_ADD( "cassette", super80_cassette_interface )
@ -730,7 +730,7 @@ static MACHINE_CONFIG_START( super80v, super80_state )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", super80, "bin", 3)
MCFG_QUICKLOAD_ADD("quickload", super80_state, super80, "bin", 3)
/* cassette */
MCFG_CASSETTE_ADD( "cassette", super80_cassette_interface )

View File

@ -43,6 +43,7 @@ public:
DECLARE_READ8_MEMBER(p1_r);
DECLARE_WRITE8_MEMBER(p1_w);
DECLARE_READ8_MEMBER(p7_r);
DECLARE_QUICKLOAD_LOAD_MEMBER( svmu );
private:
UINT8 * m_bios;
@ -191,7 +192,7 @@ inline void vmufat_write_word(UINT8* flash, UINT8 block, offs_t offset, UINT16 d
flash[(block * 512) + offset + 1] = (data>>8) & 0xff;
}
static QUICKLOAD_LOAD( svmu )
QUICKLOAD_LOAD_MEMBER( svmu_state, svmu )
{
running_machine &machine = image.device().machine();
svmu_state *state = machine.driver_data<svmu_state>();
@ -322,7 +323,7 @@ static MACHINE_CONFIG_START( svmu, svmu_state )
/* devices */
MCFG_ATMEL_29C010_ADD("flash")
MCFG_QUICKLOAD_ADD("quickload", svmu, "vms,bin", 0)
MCFG_QUICKLOAD_ADD("quickload", svmu_state, svmu, "vms,bin", 0)
MCFG_QUICKLOAD_INTERFACE("svmu_quik")
/* Software lists */

View File

@ -529,7 +529,7 @@ MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( ti85d, ti85 )
MCFG_SNAPSHOT_ADD("snapshot", ti8x, "sav", 0)
MCFG_SNAPSHOT_ADD("snapshot", ti85_state, ti8x, "sav", 0)
//MCFG_TI85SERIAL_ADD( "tiserial" )
MACHINE_CONFIG_END
@ -594,7 +594,7 @@ static MACHINE_CONFIG_DERIVED( ti86, ti85 )
MCFG_DEVICE_REMOVE("nvram")
MCFG_NVRAM_HANDLER( ti86 )
MCFG_SNAPSHOT_ADD("snapshot", ti8x, "sav", 0)
MCFG_SNAPSHOT_ADD("snapshot", ti85_state, ti8x, "sav", 0)
//MCFG_TI86SERIAL_ADD( "tiserial" )
MACHINE_CONFIG_END

View File

@ -766,7 +766,7 @@ static const cassette_interface tmc1800_cassette_interface =
NULL
};
static QUICKLOAD_LOAD( tmc1800 )
QUICKLOAD_LOAD_MEMBER( tmc1800_state, tmc1800 )
{
tmc1800_state *state = image.device().machine().driver_data<tmc1800_state>();
UINT8 *ptr = state->m_rom->base();
@ -799,7 +799,7 @@ static MACHINE_CONFIG_START( tmc1800, tmc1800_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
// devices
MCFG_QUICKLOAD_ADD("quickload", tmc1800, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", tmc1800_state, tmc1800, "bin", 0)
MCFG_CASSETTE_ADD( "cassette", tmc1800_cassette_interface )
// internal ram
@ -825,7 +825,7 @@ static MACHINE_CONFIG_START( osc1000b, osc1000b_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
// devices
MCFG_QUICKLOAD_ADD("quickload", tmc1800, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", tmc1800_state, tmc1800, "bin", 0)
MCFG_CASSETTE_ADD( "cassette", tmc1800_cassette_interface )
// internal ram
@ -845,7 +845,7 @@ static MACHINE_CONFIG_START( tmc2000, tmc2000_state )
MCFG_FRAGMENT_ADD(tmc2000_video)
// devices
MCFG_QUICKLOAD_ADD("quickload", tmc1800, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", tmc1800_state, tmc1800, "bin", 0)
MCFG_CASSETTE_ADD( "cassette", tmc1800_cassette_interface )
// internal ram
@ -865,7 +865,7 @@ static MACHINE_CONFIG_START( nano, nano_state )
MCFG_FRAGMENT_ADD(nano_video)
// devices
MCFG_QUICKLOAD_ADD("quickload", tmc1800, "bin", 0)
MCFG_QUICKLOAD_ADD("quickload", tmc1800_state, tmc1800, "bin", 0)
MCFG_CASSETTE_ADD( "cassette", tmc1800_cassette_interface )
// internal ram

View File

@ -614,7 +614,7 @@ static MACHINE_CONFIG_DERIVED( model1, trs80 ) // model I, level II
/* devices */
MCFG_CASSETTE_MODIFY( "cassette", trs80l2_cassette_interface )
MCFG_QUICKLOAD_ADD("quickload", trs80_cmd, "cmd", 0.5)
MCFG_QUICKLOAD_ADD("quickload", trs80_state, trs80_cmd, "cmd", 0.5)
MCFG_FD1793_ADD("wd179x", trs80_wd17xx_interface ) // should be FD1771 or FD1791 but inverted data lines are too tricky to fix now
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(trs80_floppy_interface)
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)

View File

@ -613,7 +613,7 @@ WRITE_LINE_MEMBER(tvc_state::tvc_centronics_ack)
m_centronics_ff = 1;
}
static QUICKLOAD_LOAD(tvc64)
QUICKLOAD_LOAD_MEMBER( tvc_state,tvc64)
{
running_machine &machine = image.device().machine();
UINT8 first_byte;
@ -726,7 +726,7 @@ static MACHINE_CONFIG_START( tvc, tvc_state )
MCFG_CASSETTE_ADD( "cassette", tvc_cassette_interface )
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", tvc64, "cas", 6)
MCFG_QUICKLOAD_ADD("quickload", tvc_state, tvc64, "cas", 6)
/* Software lists */
MCFG_SOFTWARE_LIST_ADD("cart_list", "tvc_cart")

View File

@ -106,8 +106,6 @@ to work on the vc4000 as well. Procedure:
#include "includes/vc4000.h"
static QUICKLOAD_LOAD( vc4000 );
READ8_MEMBER( vc4000_state::vc4000_key_r )
{
UINT8 data=0;
@ -408,7 +406,7 @@ static MACHINE_CONFIG_START( vc4000, vc4000_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", vc4000, "pgm,tvc", 0)
MCFG_QUICKLOAD_ADD("quickload", vc4000_state, vc4000, "pgm,tvc", 0)
/* cartridge */
MCFG_CARTSLOT_ADD("cart")
@ -526,7 +524,7 @@ ROM_START( elektor )
ROM_LOAD( "elektor.rom", 0x0000, 0x0800, CRC(e6ef1ee1) SHA1(6823b5a22582344016415f2a37f9f3a2dc75d2a7))
ROM_END
QUICKLOAD_LOAD(vc4000)
QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
{
address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
int i;

View File

@ -11,7 +11,7 @@
static QUICKLOAD_LOAD( cbm_vc20 )
QUICKLOAD_LOAD_MEMBER( vic20_state, cbm_vc20 )
{
return general_cbm_loadsnap(image, file_type, quickload_size, 0, cbm_quick_sethiaddress);
}
@ -672,7 +672,7 @@ static MACHINE_CONFIG_START( vic20, vic20_state )
MCFG_CBM_IEC_ADD("c1541")
MCFG_CBM_IEC_BUS_SRQ_CALLBACK(DEVWRITELINE(M6522_2_TAG, via6522_device, write_cb1))
MCFG_VIC20_USER_PORT_ADD(VIC20_USER_PORT_TAG, user_intf, vic20_user_port_cards, NULL, NULL)
MCFG_QUICKLOAD_ADD("quickload", cbm_vc20, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
MCFG_QUICKLOAD_ADD("quickload", vic20_state, cbm_vc20, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
// software lists
MCFG_SOFTWARE_LIST_ADD("cart_list", "vic1001_cart")

View File

@ -712,10 +712,10 @@ void vip_state::machine_reset()
//-------------------------------------------------
// QUICKLOAD_LOAD( vip )
// QUICKLOAD_LOAD_MEMBER( vip_state, vip )
//-------------------------------------------------
static QUICKLOAD_LOAD( vip )
QUICKLOAD_LOAD_MEMBER( vip_state, vip )
{
vip_state *state = image.device().machine().driver_data<vip_state>();
UINT8 *ram = state->m_ram->pointer();
@ -787,7 +787,7 @@ static MACHINE_CONFIG_START( vip, vip_state )
MCFG_VIP_EXPANSION_SLOT_ADD(VIP_EXPANSION_SLOT_TAG, XTAL_3_52128MHz/2, expansion_intf, vip_expansion_cards, NULL, NULL)
// devices
MCFG_QUICKLOAD_ADD("quickload", vip, "bin,c8,c8x", 0)
MCFG_QUICKLOAD_ADD("quickload", vip_state, vip, "bin,c8,c8x", 0)
MCFG_CASSETTE_ADD("cassette", vip_cassette_interface)
// software lists

View File

@ -200,6 +200,7 @@ public:
DECLARE_READ8_MEMBER(vtech1_printer_r);
DECLARE_WRITE8_MEMBER(vtech1_strobe_w);
DECLARE_READ8_MEMBER(vtech1_mc6847_videoram_r);
DECLARE_SNAPSHOT_LOAD_MEMBER( vtech1 );
void vtech1_get_track();
void vtech1_put_track();
required_device<cpu_device> m_maincpu;
@ -210,7 +211,7 @@ public:
SNAPSHOT LOADING
***************************************************************************/
static SNAPSHOT_LOAD( vtech1 )
SNAPSHOT_LOAD_MEMBER( vtech1_state, vtech1 )
{
vtech1_state *vtech1 = image.device().machine().driver_data<vtech1_state>();
address_space &space = vtech1->m_maincpu->space(AS_PROGRAM);
@ -985,7 +986,7 @@ static MACHINE_CONFIG_START( laser110, vtech1_state )
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
/* snapshot/quickload */
MCFG_SNAPSHOT_ADD("snapshot", vtech1, "vz", 1.5)
MCFG_SNAPSHOT_ADD("snapshot", vtech1_state, vtech1, "vz", 1.5)
MCFG_CASSETTE_ADD( "cassette", laser_cassette_interface )

View File

@ -77,6 +77,7 @@ public:
virtual void machine_reset();
virtual void video_start();
UINT32 screen_update_z1013(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_SNAPSHOT_LOAD_MEMBER( z1013 );
};
@ -317,7 +318,7 @@ const z80pio_interface z1013k7659_z80pio_intf =
DEVCB_NULL
};
SNAPSHOT_LOAD( z1013 )
SNAPSHOT_LOAD_MEMBER( z1013_state, z1013 )
{
/* header layout
0000,0001 - load address
@ -417,7 +418,7 @@ static MACHINE_CONFIG_START( z1013, z1013_state )
/* Devices */
MCFG_Z80PIO_ADD( "z80pio", XTAL_1MHz, z1013_z80pio_intf )
MCFG_CASSETTE_ADD( "cassette", z1013_cassette_interface )
MCFG_SNAPSHOT_ADD("snapshot", z1013, "z80", 0)
MCFG_SNAPSHOT_ADD("snapshot", z1013_state, z1013, "z80", 0)
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( z1013k76, z1013 )

View File

@ -70,6 +70,7 @@ public:
DECLARE_WRITE8_MEMBER(pio_bc_w);
DECLARE_READ8_MEMBER(sby_r);
DECLARE_WRITE8_MEMBER(ald_w);
DECLARE_SNAPSHOT_LOAD_MEMBER( ace );
};
#endif /* ACE_H_ */

View File

@ -230,6 +230,7 @@ public:
void amstrad_handle_snapshot(unsigned char *pSnapshot);
void amstrad_rethinkMemory();
DECLARE_SNAPSHOT_LOAD_MEMBER( amstrad );
protected:
required_memory_region m_region_maincpu;
@ -300,7 +301,6 @@ WRITE_LINE_DEVICE_HANDLER( cpc_nmi_w );
WRITE_LINE_DEVICE_HANDLER( cpc_romdis );
WRITE_LINE_DEVICE_HANDLER( cpc_romen );
SNAPSHOT_LOAD( amstrad );
extern const mc6845_interface amstrad_mc6845_intf;
extern const mc6845_interface amstrad_plus_mc6845_intf;

View File

@ -79,13 +79,13 @@ public:
void cassette_toggle_output();
terminal_t *terminal_create(int gfx, int blank_char, int char_bits,int (*getcursorcode)(int original_code),int num_cols, int num_rows);
attotime apple1_vh_dsp_time_to_ready();
DECLARE_SNAPSHOT_LOAD_MEMBER( apple1 );
};
/*----------- defined in machine/apple1.c -----------*/
extern const pia6821_interface apple1_pia0;
SNAPSHOT_LOAD( apple1 );
/*----------- defined in drivers/apple1.c -----------*/

View File

@ -117,6 +117,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(cassette_output_tick);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( atom_cart );
DECLARE_QUICKLOAD_LOAD_MEMBER(atom_atm);
void image_fread_memory(device_image_interface &image, UINT16 addr, UINT32 count);
};
class atomeb_state : public atom_state

View File

@ -107,5 +107,7 @@ public:
virtual void palette_init();
TIMER_DEVICE_CALLBACK_MEMBER(avigo_scan_timer);
TIMER_DEVICE_CALLBACK_MEMBER(avigo_1hz_timer);
DECLARE_QUICKLOAD_LOAD_MEMBER( avigo);
};
#endif /* AVIGO_H_ */

View File

@ -193,7 +193,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER( restore );
DECLARE_INPUT_CHANGED_MEMBER( caps_lock );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_c64 );
// memory state
int m_z80en;
int m_loram;

View File

@ -137,6 +137,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( exp_dma_w );
DECLARE_WRITE_LINE_MEMBER( exp_reset_w );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_c64 );
// memory state
int m_loram;
int m_hiram;

View File

@ -10,6 +10,7 @@
#include "machine/6526cia.h"
#include "machine/cbmiec.h"
#include "imagedev/cartslot.h"
#include "imagedev/snapquik.h"
#define C64_MAX_ROMBANK 64 // .crt files contain multiple 'CHIPs', i.e. rom banks (of variable size) with headers. Known carts have at most 64 'CHIPs'.
@ -158,6 +159,8 @@ public:
DECLARE_WRITE8_MEMBER( c65_write_io_dc00 );
DECLARE_READ8_MEMBER( c65_read_io );
DECLARE_READ8_MEMBER( c65_read_io_dc00 );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_c65 );
int c64_paddle_read( device_t *device, address_space &space, int which );
void c65_nmi( );
void c65_irq( int level );

View File

@ -215,6 +215,7 @@ public:
IRQ_CALLBACK_MEMBER( pic_irq_callback );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbmb );
// memory state
int m_dramon;
int m_busen1;
@ -312,6 +313,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( user_irq_w );
DECLARE_QUICKLOAD_LOAD_MEMBER( p500 );
// video state
int m_statvid;
int m_vicdotsel;

View File

@ -91,6 +91,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( int_w );
DECLARE_WRITE_LINE_MEMBER( prd_w );
DECLARE_INPUT_CHANGED_MEMBER( trigger_reset );
DECLARE_QUICKLOAD_LOAD_MEMBER( comx35_comx );
// processor state
int m_clear; // CPU mode

View File

@ -109,6 +109,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER( memory_disable );
DECLARE_DIRECT_UPDATE_MEMBER(cosmicos_direct_update_handler);
DECLARE_QUICKLOAD_LOAD_MEMBER( cosmicos );
void set_cdp1802_mode(int mode);
void clear_input_data();
void set_ram_mode();

View File

@ -90,10 +90,10 @@ public:
virtual void machine_reset();
virtual void palette_init();
void machine_stop_cybiko();
DECLARE_QUICKLOAD_LOAD_MEMBER( cybiko );
DECLARE_QUICKLOAD_LOAD_MEMBER( cybikoxt );
};
NVRAM_HANDLER( cybikoxt );
QUICKLOAD_LOAD( cybiko );
QUICKLOAD_LOAD( cybikoxt );
#endif /* CYBIKO_H_ */

View File

@ -59,6 +59,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( da_w );
DECLARE_INPUT_CHANGED_MEMBER( input_w );
DECLARE_QUICKLOAD_LOAD_MEMBER( elf );
// display state
UINT8 m_data;
};

View File

@ -44,6 +44,7 @@ public:
void galaxy_set_timer();
void galaxy_setup_snapshot (const UINT8 * data, UINT32 size);
required_device<cpu_device> m_maincpu;
DECLARE_SNAPSHOT_LOAD_MEMBER( galaxy );
protected:
required_device<cassette_image_device> m_cassette;
required_device<ram_device> m_ram;
@ -52,7 +53,4 @@ protected:
};
/*----------- defined in machine/galaxy.c -----------*/
SNAPSHOT_LOAD( galaxy );
#endif /* GALAXY_H_ */

View File

@ -83,6 +83,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(kaypro_interrupt);
DECLARE_READ8_MEMBER(kaypro_sio_r);
DECLARE_WRITE8_MEMBER(kaypro_sio_w);
DECLARE_QUICKLOAD_LOAD_MEMBER(kayproii );
DECLARE_QUICKLOAD_LOAD_MEMBER(kaypro2x );
};
@ -103,10 +105,6 @@ extern const z80pio_interface kaypro4_pio_s_intf;
extern const z80sio_interface kaypro_sio_intf;
extern const wd17xx_interface kaypro_wd1793_interface;
QUICKLOAD_LOAD( kayproii );
QUICKLOAD_LOAD( kaypro2x );
/*----------- defined in video/kaypro.c -----------*/
MC6845_UPDATE_ROW( kaypro2x_update_row );

View File

@ -149,6 +149,8 @@ public:
TIMER_CALLBACK_MEMBER(kc_cassette_oneshot_timer);
TIMER_CALLBACK_MEMBER(kc_cassette_timer_callback);
TIMER_DEVICE_CALLBACK_MEMBER(kc_scanline);
DECLARE_QUICKLOAD_LOAD_MEMBER( kc );
};
@ -182,9 +184,4 @@ public:
UINT8 * m_display_video_ram;
};
/*----------- defined in machine/kc.c -----------*/
QUICKLOAD_LOAD( kc );
#endif /* KC_H_ */

View File

@ -53,6 +53,7 @@ public:
void lviv_setup_snapshot (UINT8 * data);
void dump_registers();
int lviv_verify_snapshot (UINT8 * data, UINT32 size);
DECLARE_SNAPSHOT_LOAD_MEMBER( lviv );
};
@ -62,8 +63,6 @@ extern const i8255_interface lviv_ppi8255_interface_0;
extern const i8255_interface lviv_ppi8255_interface_1;
SNAPSHOT_LOAD( lviv );
/*----------- defined in video/lviv.c -----------*/
extern const unsigned char lviv_palette[8*3];

View File

@ -8,7 +8,7 @@
#define LYNX_H_
#include "imagedev/cartslot.h"
#include "imagedev/snapquik.h"
#define LYNX_CART 0
#define LYNX_QUICKLOAD 1
@ -163,6 +163,7 @@ public:
UINT32 lynx_time_factor(int val);
void lynx_uart_reset();
int lynx_verify_cart (char *header, int kind);
DECLARE_QUICKLOAD_LOAD_MEMBER( lynx );
};

View File

@ -173,6 +173,8 @@ public:
TIMER_CALLBACK_MEMBER(mbee256_kbd);
TIMER_CALLBACK_MEMBER(mbee_rtc_irq);
TIMER_CALLBACK_MEMBER(mbee_reset);
DECLARE_QUICKLOAD_LOAD_MEMBER( mbee );
DECLARE_QUICKLOAD_LOAD_MEMBER( mbee_z80bin );
protected:
required_memory_bank m_boot;
@ -214,9 +216,6 @@ protected:
extern const wd17xx_interface mbee_wd17xx_interface;
extern const z80pio_interface mbee_z80pio_intf;
QUICKLOAD_LOAD( mbee );
QUICKLOAD_LOAD( mbee_z80bin );
/*----------- defined in video/mbee.c -----------*/
MC6845_UPDATE_ROW( mbee_update_row );

View File

@ -89,6 +89,8 @@ public:
int parse_zillion_hex(UINT8 *snapshot_buff, char *src);
void microtan_set_cpu_regs(const UINT8 *snapshot_buff, int base);
void microtan_snapshot_copy(UINT8 *snapshot_buff, int snapshot_size);
DECLARE_SNAPSHOT_LOAD_MEMBER( microtan );
DECLARE_QUICKLOAD_LOAD_MEMBER( microtan );
};
@ -96,7 +98,4 @@ public:
extern const via6522_interface microtan_via6522_0;
extern const via6522_interface microtan_via6522_1;
SNAPSHOT_LOAD( microtan );
QUICKLOAD_LOAD( microtan );
#endif /* MICROTAN_H_ */

View File

@ -77,10 +77,7 @@ public:
DECLARE_WRITE8_MEMBER(mtx_cst_w);
DECLARE_READ8_MEMBER(mtx_prt_r);
void bankswitch(UINT8 data);
DECLARE_SNAPSHOT_LOAD_MEMBER( mtx );
};
/*----------- defined in machine/mtx.c -----------*/
SNAPSHOT_LOAD( mtx );
#endif /* __MTX_H__ */

View File

@ -61,12 +61,11 @@ public:
DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( nascom1_cassette );
required_device<cpu_device> m_maincpu;
required_device<cassette_image_device> m_cassette;
DECLARE_SNAPSHOT_LOAD_MEMBER( nascom1 );
};
/*----------- defined in machine/nascom1.c -----------*/
extern const wd17xx_interface nascom2_wd17xx_interface;
SNAPSHOT_LOAD( nascom1 );
#endif /* NASCOM1_H_ */

View File

@ -128,7 +128,9 @@ public:
DECLARE_WRITE_LINE_MEMBER( pia2_irqb_w );
TIMER_DEVICE_CALLBACK_MEMBER( sync_tick );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_pet );
enum
{
SEL0 = 0,

View File

@ -120,6 +120,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( acia_irq_w );
DECLARE_WRITE_LINE_MEMBER( exp_irq_w );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_c16 );
enum
{

View File

@ -54,7 +54,7 @@ public:
TIMER_CALLBACK_MEMBER(setup_machine_state);
DECLARE_WRITE_LINE_MEMBER(poly88_usart_rxready);
IRQ_CALLBACK_MEMBER(poly88_irq_callback);
DECLARE_SNAPSHOT_LOAD_MEMBER( poly88 );
protected:
required_device<cpu_device> m_maincpu;
required_device<i8251_device> m_uart;
@ -75,6 +75,5 @@ protected:
/*----------- defined in machine/poly88.c -----------*/
extern const i8251_interface poly88_usart_interface;
extern SNAPSHOT_LOAD( poly88 );
#endif /* POLY88_H_ */

View File

@ -48,13 +48,9 @@ public:
void primo_common_machine_init ();
void primo_setup_pss (UINT8* snapshot_data, UINT32 snapshot_size);
void primo_setup_pp (UINT8* quickload_data, UINT32 quickload_size);
DECLARE_SNAPSHOT_LOAD_MEMBER( primo );
DECLARE_QUICKLOAD_LOAD_MEMBER( primo );
};
/*----------- defined in machine/primo.c -----------*/
extern SNAPSHOT_LOAD( primo );
extern QUICKLOAD_LOAD( primo );
#endif /* PRIMO_H_ */

View File

@ -89,11 +89,8 @@ public:
TIMER_CALLBACK_MEMBER(sorcerer_serial_tc);
TIMER_CALLBACK_MEMBER(sorcerer_cassette_tc);
TIMER_CALLBACK_MEMBER(sorcerer_reset);
DECLARE_SNAPSHOT_LOAD_MEMBER( sorcerer );
DECLARE_QUICKLOAD_LOAD_MEMBER( sorcerer);
};
/*----------- defined in machine/sorcerer.c -----------*/
SNAPSHOT_LOAD( sorcerer );
QUICKLOAD_LOAD(sorcerer);
#endif /* SORCERER_H_ */

View File

@ -180,6 +180,10 @@ public:
void spectrum_plus3_update_memory();
void ts2068_update_memory();
DECLARE_SNAPSHOT_LOAD_MEMBER( spectrum );
DECLARE_QUICKLOAD_LOAD_MEMBER( spectrum );
protected:
required_device<cpu_device> m_maincpu;
required_device<cassette_image_device> m_cassette;

View File

@ -114,6 +114,7 @@ public:
void palette_set_colors_rgb(const UINT8 *colors);
void super80_cassette_motor( UINT8 data );
void driver_init_common( );
DECLARE_QUICKLOAD_LOAD_MEMBER( super80 );
};
@ -123,4 +124,3 @@ MC6845_UPDATE_ROW( super80v_update_row );
/*----------- defined in machine/super80.c -----------*/
extern const z80pio_interface super80_pio_intf;
QUICKLOAD_LOAD( super80 );

View File

@ -109,6 +109,7 @@ public:
void ti8x_snapshot_setup_registers (UINT8 * data);
void ti85_setup_snapshot (UINT8 * data);
void ti86_setup_snapshot (UINT8 * data);
DECLARE_SNAPSHOT_LOAD_MEMBER( ti8x );
};
@ -116,7 +117,5 @@ public:
NVRAM_HANDLER( ti83p );
NVRAM_HANDLER( ti86 );
SNAPSHOT_LOAD( ti8x );
#endif /* TI85_H_ */

View File

@ -55,6 +55,8 @@ public:
int m_keylatch; /* key latch */
DECLARE_DRIVER_INIT(tmc1800);
TIMER_CALLBACK_MEMBER(setup_beep);
DECLARE_QUICKLOAD_LOAD_MEMBER( tmc1800 );
};
class osc1000b_state : public driver_device

View File

@ -152,6 +152,7 @@ public:
INTERRUPT_GEN_MEMBER(trs80_fdc_interrupt);
TIMER_CALLBACK_MEMBER(cassette_data_callback);
DECLARE_WRITE_LINE_MEMBER(trs80_fdc_intrq_w);
DECLARE_QUICKLOAD_LOAD_MEMBER( trs80_cmd );
protected:
required_memory_region m_region_maincpu;
@ -191,6 +192,4 @@ protected:
extern const wd17xx_interface trs80_wd17xx_interface;
QUICKLOAD_LOAD( trs80_cmd );
#endif /* TRS80_H_ */

View File

@ -116,6 +116,8 @@ public:
DECLARE_READ8_MEMBER(tvc_expansion_r);
DECLARE_READ8_MEMBER(tvc_exp_id_r);
DECLARE_WRITE8_MEMBER(tvc_expint_ack_w);
DECLARE_QUICKLOAD_LOAD_MEMBER( tvc64);
tvcexp_slot_device * m_expansions[4];
UINT8 m_video_mode;

View File

@ -115,6 +115,7 @@ public:
UINT32 screen_update_vc4000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(vc4000_video_line);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(vc4000_cart);
DECLARE_QUICKLOAD_LOAD_MEMBER(vc4000);
protected:
required_device<cpu_device> m_maincpu;

View File

@ -108,6 +108,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( exp_reset_w );
DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_vc20 );
// keyboard state
int m_key_col;

View File

@ -99,6 +99,7 @@ public:
DECLARE_INPUT_CHANGED_MEMBER( reset_w );
DECLARE_INPUT_CHANGED_MEMBER( beeper_w );
DECLARE_QUICKLOAD_LOAD_MEMBER( vip );
// memory state
int m_8000;

View File

@ -3093,7 +3093,7 @@ MACHINE_RESET_MEMBER(amstrad_state,aleste)
/* load snapshot */
SNAPSHOT_LOAD(amstrad)
SNAPSHOT_LOAD_MEMBER( amstrad_state,amstrad)
{
UINT8 *snapshot;

View File

@ -203,7 +203,7 @@ int apple1_state::apple1_verify_header (UINT8 *data)
** The image can be of arbitrary length, but it must fit in available
** memory.
*****************************************************************************/
SNAPSHOT_LOAD(apple1)
SNAPSHOT_LOAD_MEMBER( apple1_state,apple1)
{
apple1_state *state = image.device().machine().driver_data<apple1_state>();
UINT64 filesize, datasize;

View File

@ -34,7 +34,7 @@ DRIVER_INIT_MEMBER(cybiko_state,cybikoxt)
m_maincpu->space(AS_PROGRAM).install_ram(0x400000, 0x400000 + m_ram->size() - 1, 0, 0x200000 - m_ram->size(), m_ram->pointer());
}
QUICKLOAD_LOAD( cybiko )
QUICKLOAD_LOAD_MEMBER( cybiko_state, cybiko )
{
running_machine &machine = image.device().machine();
cybiko_state *state = machine.driver_data<cybiko_state>();
@ -44,7 +44,7 @@ QUICKLOAD_LOAD( cybiko )
return IMAGE_INIT_PASS;
}
QUICKLOAD_LOAD( cybikoxt )
QUICKLOAD_LOAD_MEMBER( cybiko_state, cybikoxt )
{
running_machine &machine = image.device().machine();
cybiko_state *state = machine.driver_data<cybiko_state>();

View File

@ -121,7 +121,7 @@ void galaxy_state::galaxy_setup_snapshot (const UINT8 * data, UINT32 size)
m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE);
}
SNAPSHOT_LOAD( galaxy )
SNAPSHOT_LOAD_MEMBER( galaxy_state, galaxy )
{
UINT8* snapshot_data;

View File

@ -343,7 +343,7 @@ MACHINE_RESET_MEMBER(kaypro_state,kaypro2x)
************************************************************/
QUICKLOAD_LOAD( kayproii )
QUICKLOAD_LOAD_MEMBER( kaypro_state, kayproii )
{
kaypro_state *state = image.device().machine().driver_data<kaypro_state>();
address_space &space = state->m_maincpu->space(AS_PROGRAM);
@ -366,7 +366,7 @@ QUICKLOAD_LOAD( kayproii )
return IMAGE_INIT_PASS;
}
QUICKLOAD_LOAD( kaypro2x )
QUICKLOAD_LOAD_MEMBER( kaypro_state, kaypro2x )
{
kaypro_state *state = image.device().machine().driver_data<kaypro_state>();
address_space &space = state->m_maincpu->space(AS_PROGRAM);

View File

@ -24,7 +24,7 @@ struct kcc_header
/* now type name that has appeared! */
/* load snapshot */
QUICKLOAD_LOAD(kc)
QUICKLOAD_LOAD_MEMBER( kc_state,kc)
{
kc_state *state = image.device().machine().driver_data<kc_state>();
UINT8 *data;

View File

@ -328,7 +328,7 @@ int lviv_state::lviv_verify_snapshot (UINT8 * data, UINT32 size)
return IMAGE_VERIFY_PASS;
}
SNAPSHOT_LOAD( lviv )
SNAPSHOT_LOAD_MEMBER( lviv_state, lviv )
{
UINT8 *lviv_snapshot_data;
lviv_state *state = image.device().machine().driver_data<lviv_state>();

View File

@ -750,7 +750,7 @@ DRIVER_INIT_MEMBER(mbee_state,mbeett)
************************************************************/
QUICKLOAD_LOAD( mbee )
QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
{
mbee_state *state = image.device().machine().driver_data<mbee_state>();
address_space &space = state->m_maincpu->space(AS_PROGRAM);
@ -817,10 +817,10 @@ QUICKLOAD_LOAD( mbee )
/*-------------------------------------------------
QUICKLOAD_LOAD( mbee_z80bin )
QUICKLOAD_LOAD_MEMBER( mbee_state, mbee_z80bin )
-------------------------------------------------*/
QUICKLOAD_LOAD( mbee_z80bin )
QUICKLOAD_LOAD_MEMBER( mbee_state, mbee_z80bin )
{
mbee_state *state = image.device().machine().driver_data<mbee_state>();
UINT16 execute_address, start_addr, end_addr;

View File

@ -871,7 +871,7 @@ void microtan_state::microtan_snapshot_copy(UINT8 *snapshot_buff, int snapshot_s
}
}
SNAPSHOT_LOAD( microtan )
SNAPSHOT_LOAD_MEMBER( microtan_state, microtan )
{
microtan_state *state = image.device().machine().driver_data<microtan_state>();
UINT8 *snapshot_buff;
@ -887,7 +887,7 @@ SNAPSHOT_LOAD( microtan )
return IMAGE_INIT_PASS;
}
QUICKLOAD_LOAD( microtan )
QUICKLOAD_LOAD_MEMBER( microtan_state, microtan )
{
microtan_state *state = image.device().machine().driver_data<microtan_state>();
int snapshot_size;

View File

@ -323,7 +323,7 @@ WRITE8_MEMBER(mtx_state::hrx_attr_w)
SNAPSHOT
***************************************************************************/
SNAPSHOT_LOAD( mtx )
SNAPSHOT_LOAD_MEMBER( mtx_state, mtx )
{
address_space &program = image.device().machine().device(Z80_TAG)->memory().space(AS_PROGRAM);

Some files were not shown because too many files have changed in this diff Show More