summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/mess/drivers/ace.c2
-rw-r--r--src/mess/drivers/altair.c3
-rw-r--r--src/mess/drivers/avigo.c11
-rw-r--r--src/mess/drivers/binbug.c4
-rw-r--r--src/mess/drivers/cd2650.c4
-rw-r--r--src/mess/drivers/comx35.c2
-rw-r--r--src/mess/drivers/cosmicos.c3
-rw-r--r--src/mess/drivers/d6800.c4
-rw-r--r--src/mess/drivers/elf.c6
-rw-r--r--src/mess/drivers/homelab.c2
-rw-r--r--src/mess/drivers/instruct.c4
-rw-r--r--src/mess/drivers/jr100.c35
-rw-r--r--src/mess/drivers/lynx.c9
-rw-r--r--src/mess/drivers/pipbug.c4
-rw-r--r--src/mess/drivers/psx.c17
-rw-r--r--src/mess/drivers/rex6000.c7
-rw-r--r--src/mess/drivers/svmu.c4
-rw-r--r--src/mess/drivers/tmc1800.c5
-rw-r--r--src/mess/drivers/tvc.c3
-rw-r--r--src/mess/drivers/vc4000.c6
-rw-r--r--src/mess/drivers/vip.c13
-rw-r--r--src/mess/drivers/vtech1.c9
-rw-r--r--src/mess/drivers/z1013.c6
-rw-r--r--src/mess/machine/amstrad.c2
-rw-r--r--src/mess/machine/apple1.c7
-rw-r--r--src/mess/machine/cybiko.c9
-rw-r--r--src/mess/machine/galaxy.c5
-rw-r--r--src/mess/machine/kaypro.c18
-rw-r--r--src/mess/machine/kc.c9
-rw-r--r--src/mess/machine/lviv.c7
-rw-r--r--src/mess/machine/mbee.c20
-rw-r--r--src/mess/machine/microtan.c12
-rw-r--r--src/mess/machine/mtx.c2
-rw-r--r--src/mess/machine/nascom1.c16
-rw-r--r--src/mess/machine/poly88.c8
-rw-r--r--src/mess/machine/primo.c6
-rw-r--r--src/mess/machine/sorcerer.c45
-rw-r--r--src/mess/machine/spec_snqk.c28
-rw-r--r--src/mess/machine/super80.c2
-rw-r--r--src/mess/machine/ti85.c15
40 files changed, 170 insertions, 204 deletions
diff --git a/src/mess/drivers/ace.c b/src/mess/drivers/ace.c
index 5e94fc6f7e6..4782237bdb4 100644
--- a/src/mess/drivers/ace.c
+++ b/src/mess/drivers/ace.c
@@ -76,7 +76,7 @@ SNAPSHOT_LOAD_MEMBER( ace_state, ace )
unsigned char ace_repeat, ace_byte, loop;
int done=0, ace_index=0x2000;
- if (image.device().machine().device<ram_device>(RAM_TAG)->size() < 16*1024)
+ if (machine().device<ram_device>(RAM_TAG)->size() < 16*1024)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "At least 16KB RAM expansion required");
image.message("At least 16KB RAM expansion required");
diff --git a/src/mess/drivers/altair.c b/src/mess/drivers/altair.c
index 6fbc4ff5402..58b13cb9e91 100644
--- a/src/mess/drivers/altair.c
+++ b/src/mess/drivers/altair.c
@@ -89,13 +89,12 @@ INPUT_PORTS_END
QUICKLOAD_LOAD_MEMBER( altair_state,altair)
{
- altair_state *state = image.device().machine().driver_data<altair_state>();
int quick_length;
int read_;
quick_length = image.length();
if (quick_length >= 0xfd00)
return IMAGE_INIT_FAIL;
- read_ = image.fread(state->m_ram, quick_length);
+ read_ = image.fread(m_ram, quick_length);
if (read_ != quick_length)
return IMAGE_INIT_FAIL;
diff --git a/src/mess/drivers/avigo.c b/src/mess/drivers/avigo.c
index fbf297670a9..d64f141b483 100644
--- a/src/mess/drivers/avigo.c
+++ b/src/mess/drivers/avigo.c
@@ -825,9 +825,8 @@ TIMER_DEVICE_CALLBACK_MEMBER(avigo_state::avigo_1hz_timer)
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);
- const char *systemname = image.device().machine().system().name;
+ address_space& flash1 = m_flashes[1]->space(0);
+ const char *systemname = machine().system().name;
UINT32 first_app_page = (0x50000>>14);
int app_page;
@@ -859,14 +858,14 @@ QUICKLOAD_LOAD_MEMBER( avigo_state,avigo)
logerror("Application loaded at 0x%05x-0x%05x\n", app_page<<14, (app_page<<14) + (UINT32)image.length());
// copy app file into flash memory
- image.fread((UINT8*)state->m_flashes[1]->space().get_read_ptr(app_page<<14), image.length());
+ image.fread((UINT8*)m_flashes[1]->space().get_read_ptr(app_page<<14), image.length());
// update the application ID
flash1.write_byte((app_page<<14) + 0x1a5, 0x80 + (app_page - (first_app_page>>14)));
// reset the CPU for allow at the Avigo OS to recognize the installed app
- state->m_warm_start = 1;
- state->m_maincpu->reset();
+ m_warm_start = 1;
+ m_maincpu->reset();
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/binbug.c b/src/mess/drivers/binbug.c
index 2e40a6d7a60..c5de8039690 100644
--- a/src/mess/drivers/binbug.c
+++ b/src/mess/drivers/binbug.c
@@ -220,7 +220,7 @@ GFXDECODE_END
QUICKLOAD_LOAD_MEMBER( binbug_state, binbug )
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i;
int quick_addr = 0x0440;
int exec_addr;
@@ -284,7 +284,7 @@ QUICKLOAD_LOAD_MEMBER( binbug_state, binbug )
image.message(" Quickload: size=%04X : exec=%04X",quick_length,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/cd2650.c b/src/mess/drivers/cd2650.c
index 98141166b0d..b366a6c4b26 100644
--- a/src/mess/drivers/cd2650.c
+++ b/src/mess/drivers/cd2650.c
@@ -167,7 +167,7 @@ static ASCII_KEYBOARD_INTERFACE( keyboard_intf )
QUICKLOAD_LOAD_MEMBER( cd2650_state, cd2650 )
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i;
int quick_addr = 0x440;
int exec_addr;
@@ -245,7 +245,7 @@ QUICKLOAD_LOAD_MEMBER( cd2650_state, cd2650 )
image.message(" Quickload: size=%04X : exec=%04X",quick_length,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/comx35.c b/src/mess/drivers/comx35.c
index d8874d5de17..af5a273f4e1 100644
--- a/src/mess/drivers/comx35.c
+++ b/src/mess/drivers/comx35.c
@@ -55,7 +55,7 @@ QUICKLOAD_LOAD_MEMBER( comx35_state, comx35_comx )
UINT8 header[16] = {0};
int size = image.length();
- if (size > image.device().machine().device<ram_device>(RAM_TAG)->size())
+ if (size > machine().device<ram_device>(RAM_TAG)->size())
{
return IMAGE_INIT_FAIL;
}
diff --git a/src/mess/drivers/cosmicos.c b/src/mess/drivers/cosmicos.c
index 57c12222717..20d81c2b4c7 100644
--- a/src/mess/drivers/cosmicos.c
+++ b/src/mess/drivers/cosmicos.c
@@ -533,8 +533,7 @@ void cosmicos_state::machine_reset()
QUICKLOAD_LOAD_MEMBER( cosmicos_state, cosmicos )
{
- cosmicos_state *state = image.device().machine().driver_data<cosmicos_state>();
- UINT8 *ptr = state->m_rom->base();
+ UINT8 *ptr = m_rom->base();
int size = image.length();
/* load image to RAM */
diff --git a/src/mess/drivers/d6800.c b/src/mess/drivers/d6800.c
index 0b4826d62b1..b559addce0d 100644
--- a/src/mess/drivers/d6800.c
+++ b/src/mess/drivers/d6800.c
@@ -336,7 +336,7 @@ static const cassette_interface d6800_cassette_interface =
QUICKLOAD_LOAD_MEMBER( d6800_state, d6800 )
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i;
int quick_addr = 0x0200;
int exec_addr = 0xc000;
@@ -369,7 +369,7 @@ QUICKLOAD_LOAD_MEMBER( d6800_state, d6800 )
image.message(" Quickload: size=%04X : start=%04X : end=%04X : exec=%04X",quick_length,quick_addr,quick_addr+quick_length,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/elf.c b/src/mess/drivers/elf.c
index 1f9a1e16c58..d11b073be08 100644
--- a/src/mess/drivers/elf.c
+++ b/src/mess/drivers/elf.c
@@ -279,16 +279,14 @@ static DM9368_INTERFACE( led_l_intf )
QUICKLOAD_LOAD_MEMBER( elf2_state, elf )
{
- elf2_state *state = image.device().machine().driver_data<elf2_state>();
-
int size = image.length();
- if (size > state->m_ram->size())
+ if (size > m_ram->size())
{
return IMAGE_INIT_FAIL;
}
- image.fread(state->m_ram->pointer(), size);
+ image.fread(m_ram->pointer(), size);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/homelab.c b/src/mess/drivers/homelab.c
index 0cffb0586d3..fe1066587c0 100644
--- a/src/mess/drivers/homelab.c
+++ b/src/mess/drivers/homelab.c
@@ -644,7 +644,7 @@ static const mea8000_interface brailab4_speech_intf = { "speech", DEVCB_NULL };
QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i=0;
UINT8 ch;
UINT16 quick_addr;
diff --git a/src/mess/drivers/instruct.c b/src/mess/drivers/instruct.c
index 22214616d31..06fa3c071f2 100644
--- a/src/mess/drivers/instruct.c
+++ b/src/mess/drivers/instruct.c
@@ -219,7 +219,7 @@ void instruct_state::machine_reset()
QUICKLOAD_LOAD_MEMBER( instruct_state, instruct )
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i;
int quick_addr = 0x0100;
int exec_addr;
@@ -283,7 +283,7 @@ QUICKLOAD_LOAD_MEMBER( instruct_state, instruct )
image.message(" Quickload: size=%04X : exec=%04X",quick_length,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/jr100.c b/src/mess/drivers/jr100.c
index 40742e31eca..04d3edff611 100644
--- a/src/mess/drivers/jr100.c
+++ b/src/mess/drivers/jr100.c
@@ -340,7 +340,6 @@ UINT32 jr100_state::readByLittleEndian(UINT8 *buf,int pos)
QUICKLOAD_LOAD_MEMBER( jr100_state,jr100)
{
- jr100_state *state = image.device().machine().driver_data<jr100_state>();
int quick_length;
UINT8 buf[0x10000];
int read_;
@@ -356,32 +355,32 @@ QUICKLOAD_LOAD_MEMBER( jr100_state,jr100)
return IMAGE_INIT_FAIL;
}
int pos = 4;
- if (state->readByLittleEndian(buf,pos)!=1) {
+ if (readByLittleEndian(buf,pos)!=1) {
// not version 1 of PRG file
return IMAGE_INIT_FAIL;
}
pos += 4;
- UINT32 len =state->readByLittleEndian(buf,pos); pos+= 4;
+ UINT32 len =readByLittleEndian(buf,pos); pos+= 4;
pos += len; // skip name
- UINT32 start_address = state->readByLittleEndian(buf,pos); pos+= 4;
- UINT32 code_length = state->readByLittleEndian(buf,pos); pos+= 4;
- UINT32 flag = state->readByLittleEndian(buf,pos); pos+= 4;
+ UINT32 start_address = readByLittleEndian(buf,pos); pos+= 4;
+ UINT32 code_length = readByLittleEndian(buf,pos); pos+= 4;
+ UINT32 flag = readByLittleEndian(buf,pos); pos+= 4;
UINT32 end_address = start_address + code_length - 1;
// copy code
- memcpy(state->m_ram + start_address,buf + pos,code_length);
+ memcpy(m_ram + start_address,buf + pos,code_length);
if (flag == 0) {
- state->m_ram[end_address + 1] = 0xdf;
- state->m_ram[end_address + 2] = 0xdf;
- state->m_ram[end_address + 3] = 0xdf;
- state->m_ram[6 ] = (end_address >> 8 & 0xFF);
- state->m_ram[7 ] = (end_address & 0xFF);
- state->m_ram[8 ] = ((end_address + 1) >> 8 & 0xFF);
- state->m_ram[9 ] = ((end_address + 1) & 0xFF);
- state->m_ram[10] = ((end_address + 2) >> 8 & 0xFF);
- state->m_ram[11] = ((end_address + 2) & 0xFF);
- state->m_ram[12] = ((end_address + 3) >> 8 & 0xFF);
- state->m_ram[13] = ((end_address + 3) & 0xFF);
+ m_ram[end_address + 1] = 0xdf;
+ m_ram[end_address + 2] = 0xdf;
+ m_ram[end_address + 3] = 0xdf;
+ m_ram[6 ] = (end_address >> 8 & 0xFF);
+ m_ram[7 ] = (end_address & 0xFF);
+ m_ram[8 ] = ((end_address + 1) >> 8 & 0xFF);
+ m_ram[9 ] = ((end_address + 1) & 0xFF);
+ m_ram[10] = ((end_address + 2) >> 8 & 0xFF);
+ m_ram[11] = ((end_address + 2) & 0xFF);
+ m_ram[12] = ((end_address + 3) >> 8 & 0xFF);
+ m_ram[13] = ((end_address + 3) & 0xFF);
}
return IMAGE_INIT_PASS;
diff --git a/src/mess/drivers/lynx.c b/src/mess/drivers/lynx.c
index 204ec5b443c..8d3504f427a 100644
--- a/src/mess/drivers/lynx.c
+++ b/src/mess/drivers/lynx.c
@@ -135,10 +135,9 @@ ROM_END
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);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
UINT8 *data = NULL;
- UINT8 *rom = state->memregion("maincpu")->base();
+ UINT8 *rom = memregion("maincpu")->base();
UINT8 header[10]; // 80 08 dw Start dw Len B S 9 3
UINT16 start, length;
int i;
@@ -147,7 +146,7 @@ QUICKLOAD_LOAD_MEMBER( lynx_state, lynx )
return IMAGE_INIT_FAIL;
/* Check the image */
- if (state->lynx_verify_cart((char*)header, LYNX_QUICKLOAD) == IMAGE_VERIFY_FAIL)
+ if (lynx_verify_cart((char*)header, LYNX_QUICKLOAD) == IMAGE_VERIFY_FAIL)
return IMAGE_INIT_FAIL;
start = header[3] | (header[2]<<8); //! big endian format in file format for little endian cpu
@@ -172,7 +171,7 @@ QUICKLOAD_LOAD_MEMBER( lynx_state, lynx )
space.write_byte(0x1fc, start & 0xff);
space.write_byte(0x1fd, start >> 8);
- state->m_maincpu->set_pc(start);
+ m_maincpu->set_pc(start);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/pipbug.c b/src/mess/drivers/pipbug.c
index 226178082ed..1f6c3483d32 100644
--- a/src/mess/drivers/pipbug.c
+++ b/src/mess/drivers/pipbug.c
@@ -95,7 +95,7 @@ static const serial_terminal_interface terminal_intf =
QUICKLOAD_LOAD_MEMBER( pipbug_state, pipbug )
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i;
int quick_addr = 0x0440;
int exec_addr;
@@ -159,7 +159,7 @@ QUICKLOAD_LOAD_MEMBER( pipbug_state, pipbug )
image.message(" Quickload: size=%04X : exec=%04X",quick_length,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/psx.c b/src/mess/drivers/psx.c
index 957998b8222..853dc69d943 100644
--- a/src/mess/drivers/psx.c
+++ b/src/mess/drivers/psx.c
@@ -451,23 +451,22 @@ DIRECT_UPDATE_MEMBER(psx1_state::psx_setopbase)
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 );
+ address_space &space = m_maincpu->space( AS_PROGRAM );
- state->m_exe_size = 0;
- state->m_exe_buffer = (UINT8*)malloc( quickload_size );
- if( state->m_exe_buffer == NULL )
+ m_exe_size = 0;
+ m_exe_buffer = (UINT8*)malloc( quickload_size );
+ if( m_exe_buffer == NULL )
{
logerror( "psx_exe_load: out of memory\n" );
return IMAGE_INIT_FAIL;
}
- if( image.fread( state->m_exe_buffer, quickload_size ) != quickload_size )
+ if( image.fread( m_exe_buffer, quickload_size ) != quickload_size )
{
- free( state->m_exe_buffer );
+ free( m_exe_buffer );
return IMAGE_INIT_FAIL;
}
- state->m_exe_size = quickload_size;
- space.set_direct_update_handler(direct_update_delegate(FUNC(psx1_state::psx_setopbase), state));
+ m_exe_size = quickload_size;
+ space.set_direct_update_handler(direct_update_delegate(FUNC(psx1_state::psx_setopbase), this));
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/rex6000.c b/src/mess/drivers/rex6000.c
index dfd40299054..fce3b02468c 100644
--- a/src/mess/drivers/rex6000.c
+++ b/src/mess/drivers/rex6000.c
@@ -565,12 +565,11 @@ void rex6000_state::palette_init()
QUICKLOAD_LOAD_MEMBER( rex6000_state,rex6000)
{
static const char magic[] = "ApplicationName:Addin";
- running_machine &machine = image.device().machine();
- address_space& flash = machine.device("flash0b")->memory().space(0);
+ address_space& flash = machine().device("flash0b")->memory().space(0);
UINT32 img_start = 0;
UINT8 *data;
- data = (UINT8*)auto_alloc_array(machine, UINT8, image.length());
+ data = (UINT8*)auto_alloc_array(machine(), UINT8, image.length());
image.fread(data, image.length());
if(strncmp((const char*)data, magic, 21))
@@ -582,7 +581,7 @@ QUICKLOAD_LOAD_MEMBER( rex6000_state,rex6000)
for (int i=0; i<image.length() - img_start ;i++)
flash.write_byte(i, data[img_start + i]);
- auto_free(machine, data);
+ auto_free(machine(), data);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/drivers/svmu.c b/src/mess/drivers/svmu.c
index e206bfa2854..aa13837bdcc 100644
--- a/src/mess/drivers/svmu.c
+++ b/src/mess/drivers/svmu.c
@@ -194,10 +194,8 @@ inline void vmufat_write_word(UINT8* flash, UINT8 block, offs_t offset, UINT16 d
QUICKLOAD_LOAD_MEMBER( svmu_state, svmu )
{
- running_machine &machine = image.device().machine();
- svmu_state *state = machine.driver_data<svmu_state>();
UINT32 size = image.length();
- UINT8 *flash = (UINT8*)state->m_flash->space().get_read_ptr(0);
+ UINT8 *flash = (UINT8*)m_flash->space().get_read_ptr(0);
image.fread(flash, size);
diff --git a/src/mess/drivers/tmc1800.c b/src/mess/drivers/tmc1800.c
index 75afc90f656..6a6306895a2 100644
--- a/src/mess/drivers/tmc1800.c
+++ b/src/mess/drivers/tmc1800.c
@@ -768,11 +768,10 @@ static const cassette_interface tmc1800_cassette_interface =
QUICKLOAD_LOAD_MEMBER( tmc1800_state, tmc1800 )
{
- tmc1800_state *state = image.device().machine().driver_data<tmc1800_state>();
- UINT8 *ptr = state->m_rom->base();
+ UINT8 *ptr = m_rom->base();
int size = image.length();
- if (size > state->m_ram->size())
+ if (size > m_ram->size())
{
return IMAGE_INIT_FAIL;
}
diff --git a/src/mess/drivers/tvc.c b/src/mess/drivers/tvc.c
index fcf04c054f5..ac0f3f7a475 100644
--- a/src/mess/drivers/tvc.c
+++ b/src/mess/drivers/tvc.c
@@ -615,14 +615,13 @@ WRITE_LINE_MEMBER(tvc_state::tvc_centronics_ack)
QUICKLOAD_LOAD_MEMBER( tvc_state,tvc64)
{
- running_machine &machine = image.device().machine();
UINT8 first_byte;
image.fread(&first_byte, 1);
if (first_byte == 0x11)
{
image.fseek(0x90, SEEK_SET);
- image.fread(machine.device<ram_device>(RAM_TAG)->pointer() + 0x19ef, image.length() - 0x90);
+ image.fread(machine().device<ram_device>(RAM_TAG)->pointer() + 0x19ef, image.length() - 0x90);
return IMAGE_INIT_PASS;
}
else
diff --git a/src/mess/drivers/vc4000.c b/src/mess/drivers/vc4000.c
index a7f776bae68..8f226c100f9 100644
--- a/src/mess/drivers/vc4000.c
+++ b/src/mess/drivers/vc4000.c
@@ -526,7 +526,7 @@ ROM_END
QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
int i;
int quick_addr = 0x08c0;
int exec_addr;
@@ -574,7 +574,7 @@ QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
image.message(" Quickload: size=%04X : start=%04X : end=%04X : exec=%04X",quick_length-5,quick_addr,quick_addr+quick_length-5,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
else
@@ -619,7 +619,7 @@ QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
image.message(" Quickload: size=%04X : exec=%04X",quick_length,exec_addr);
// Start the quickload
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
return IMAGE_INIT_PASS;
}
else
diff --git a/src/mess/drivers/vip.c b/src/mess/drivers/vip.c
index 48e4c4769be..1e35511fa8d 100644
--- a/src/mess/drivers/vip.c
+++ b/src/mess/drivers/vip.c
@@ -717,8 +717,7 @@ void vip_state::machine_reset()
QUICKLOAD_LOAD_MEMBER( vip_state, vip )
{
- vip_state *state = image.device().machine().driver_data<vip_state>();
- UINT8 *ram = state->m_ram->pointer();
+ UINT8 *ram = m_ram->pointer();
UINT8 *chip8_ptr = NULL;
int chip8_size = 0;
int size = image.length();
@@ -726,17 +725,17 @@ QUICKLOAD_LOAD_MEMBER( vip_state, vip )
if (strcmp(image.filetype(), "c8") == 0)
{
/* CHIP-8 program */
- chip8_ptr = state->m_chip8->base();
- chip8_size = state->m_chip8->bytes();
+ chip8_ptr = m_chip8->base();
+ chip8_size = m_chip8->bytes();
}
else if (strcmp(image.filename(), "c8x") == 0)
{
/* CHIP-8X program */
- chip8_ptr = state->m_chip8x->base();
- chip8_size = state->m_chip8x->bytes();
+ chip8_ptr = m_chip8x->base();
+ chip8_size = m_chip8x->bytes();
}
- if ((size + chip8_size) > state->m_ram->size())
+ if ((size + chip8_size) > m_ram->size())
{
return IMAGE_INIT_FAIL;
}
diff --git a/src/mess/drivers/vtech1.c b/src/mess/drivers/vtech1.c
index dd0c869c8e5..eca0c48d102 100644
--- a/src/mess/drivers/vtech1.c
+++ b/src/mess/drivers/vtech1.c
@@ -213,8 +213,7 @@ public:
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);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
UINT8 i, header[24];
UINT16 start, end, size;
char pgmname[18];
@@ -230,7 +229,7 @@ SNAPSHOT_LOAD_MEMBER( vtech1_state, vtech1 )
size = end - start;
/* check if we have enough ram */
- if (vtech1->m_ram_size < size)
+ if (m_ram_size < size)
{
char message[256];
snprintf(message, ARRAY_LENGTH(message), "SNAPLOAD: %s\nInsufficient RAM - need %04X",pgmname,size);
@@ -240,7 +239,7 @@ SNAPSHOT_LOAD_MEMBER( vtech1_state, vtech1 )
}
/* write it to ram */
- image.fread( &vtech1->m_ram[start - 0x7800], size);
+ image.fread( &m_ram[start - 0x7800], size);
/* patch variables depending on snapshot type */
switch (header[21])
@@ -261,7 +260,7 @@ SNAPSHOT_LOAD_MEMBER( vtech1_state, vtech1 )
space.write_byte(0x788e, start % 256); /* usr subroutine address */
space.write_byte(0x788f, start / 256);
image.message(" %s (M)\nsize=%04X : start=%04X : end=%04X",pgmname,size,start,end);
- image.device().machine().device("maincpu")->state().set_pc(start); /* start program */
+ m_maincpu->set_pc(start); /* start program */
break;
default:
diff --git a/src/mess/drivers/z1013.c b/src/mess/drivers/z1013.c
index a5e1f5ebf3e..c1686a7c74a 100644
--- a/src/mess/drivers/z1013.c
+++ b/src/mess/drivers/z1013.c
@@ -331,7 +331,7 @@ SNAPSHOT_LOAD_MEMBER( z1013_state, z1013 )
0020 up - Program to load
*/
- UINT8* data= auto_alloc_array(image.device().machine(), UINT8, snapshot_size);
+ UINT8* data= auto_alloc_array(machine(), UINT8, snapshot_size);
UINT16 startaddr,endaddr,runaddr;
image.fread( data, snapshot_size);
@@ -349,11 +349,11 @@ SNAPSHOT_LOAD_MEMBER( z1013_state, z1013 )
return IMAGE_INIT_FAIL;
}
- memcpy (image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).get_read_ptr(startaddr),
+ memcpy (m_maincpu->space(AS_PROGRAM).get_read_ptr(startaddr),
data+0x20, endaddr - startaddr + 1);
if (runaddr)
- image.device().machine().device("maincpu")->state().set_state_int(Z80_PC, runaddr);
+ m_maincpu->set_state_int(Z80_PC, runaddr);
else
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Loaded but cannot run");
diff --git a/src/mess/machine/amstrad.c b/src/mess/machine/amstrad.c
index 450fea311e4..295f222bc58 100644
--- a/src/mess/machine/amstrad.c
+++ b/src/mess/machine/amstrad.c
@@ -3114,7 +3114,7 @@ SNAPSHOT_LOAD_MEMBER( amstrad_state,amstrad)
return IMAGE_INIT_FAIL;
}
- image.device().machine().driver_data<amstrad_state>()->amstrad_handle_snapshot(snapshot);
+ amstrad_handle_snapshot(snapshot);
free(snapshot);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/machine/apple1.c b/src/mess/machine/apple1.c
index a6ce16d2ba2..804099afc7c 100644
--- a/src/mess/machine/apple1.c
+++ b/src/mess/machine/apple1.c
@@ -205,7 +205,6 @@ int apple1_state::apple1_verify_header (UINT8 *data)
*****************************************************************************/
SNAPSHOT_LOAD_MEMBER( apple1_state,apple1)
{
- apple1_state *state = image.device().machine().driver_data<apple1_state>();
UINT64 filesize, datasize;
UINT8 *snapbuf, *snapptr;
UINT16 start_addr, end_addr, addr;
@@ -220,7 +219,7 @@ SNAPSHOT_LOAD_MEMBER( apple1_state,apple1)
return IMAGE_INIT_FAIL;
/* Verify the snapshot header */
- if (state->apple1_verify_header(snapbuf) == IMAGE_VERIFY_FAIL)
+ if (apple1_verify_header(snapbuf) == IMAGE_VERIFY_FAIL)
{
logerror("apple1 - Snapshot Header is in incorrect format - needs to be LOAD:xxyyDATA:\n");
return IMAGE_INIT_FAIL;
@@ -234,7 +233,7 @@ SNAPSHOT_LOAD_MEMBER( apple1_state,apple1)
end_addr = start_addr + datasize - 1;
- if ((start_addr < 0xE000 && end_addr > image.device().machine().device<ram_device>(RAM_TAG)->size() - 1)
+ if ((start_addr < 0xE000 && end_addr > machine().device<ram_device>(RAM_TAG)->size() - 1)
|| end_addr > 0xEFFF)
{
logerror("apple1 - Snapshot won't fit in this memory configuration;\n"
@@ -246,7 +245,7 @@ SNAPSHOT_LOAD_MEMBER( apple1_state,apple1)
for (addr = start_addr, snapptr = snapbuf + SNAP_HEADER_LEN;
addr <= end_addr;
addr++, snapptr++)
- state->m_maincpu->space(AS_PROGRAM).write_byte(addr, *snapptr);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr, *snapptr);
return IMAGE_INIT_PASS;
diff --git a/src/mess/machine/cybiko.c b/src/mess/machine/cybiko.c
index 63de668dc3e..7e41af8d7f6 100644
--- a/src/mess/machine/cybiko.c
+++ b/src/mess/machine/cybiko.c
@@ -36,19 +36,14 @@ DRIVER_INIT_MEMBER(cybiko_state,cybikoxt)
QUICKLOAD_LOAD_MEMBER( cybiko_state, cybiko )
{
- running_machine &machine = image.device().machine();
- cybiko_state *state = machine.driver_data<cybiko_state>();
-
- image.fread(state->m_flash1->get_ptr(), MIN(image.length(), 0x84000));
+ image.fread(m_flash1->get_ptr(), MIN(image.length(), 0x84000));
return IMAGE_INIT_PASS;
}
QUICKLOAD_LOAD_MEMBER( cybiko_state, cybikoxt )
{
- running_machine &machine = image.device().machine();
- cybiko_state *state = machine.driver_data<cybiko_state>();
- address_space &dest = state->m_maincpu->space(AS_PROGRAM);
+ address_space &dest = m_maincpu->space(AS_PROGRAM);
UINT32 size = MIN(image.length(), RAMDISK_SIZE);
UINT8 *buffer = global_alloc_array(UINT8, size);
diff --git a/src/mess/machine/galaxy.c b/src/mess/machine/galaxy.c
index 20ec09434ba..83ce925e710 100644
--- a/src/mess/machine/galaxy.c
+++ b/src/mess/machine/galaxy.c
@@ -125,12 +125,11 @@ SNAPSHOT_LOAD_MEMBER( galaxy_state, galaxy )
{
UINT8* snapshot_data;
- galaxy_state *state = image.device().machine().driver_data<galaxy_state>();
switch (snapshot_size)
{
case GALAXY_SNAPSHOT_V1_SIZE:
case GALAXY_SNAPSHOT_V2_SIZE:
- snapshot_data = auto_alloc_array(image.device().machine(), UINT8, snapshot_size);
+ snapshot_data = auto_alloc_array(machine(), UINT8, snapshot_size);
break;
default:
return IMAGE_INIT_FAIL;
@@ -138,7 +137,7 @@ SNAPSHOT_LOAD_MEMBER( galaxy_state, galaxy )
image.fread( snapshot_data, snapshot_size);
- state->galaxy_setup_snapshot(snapshot_data, snapshot_size);
+ galaxy_setup_snapshot(snapshot_data, snapshot_size);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/machine/kaypro.c b/src/mess/machine/kaypro.c
index 989757eef69..0dddadd7766 100644
--- a/src/mess/machine/kaypro.c
+++ b/src/mess/machine/kaypro.c
@@ -345,9 +345,8 @@ MACHINE_RESET_MEMBER(kaypro_state,kaypro2x)
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);
- UINT8 *RAM = state->memregion("rambank")->base();
+ address_space &space = m_maincpu->space(AS_PROGRAM);
+ UINT8 *RAM = memregion("rambank")->base();
UINT16 i;
UINT8 data;
@@ -359,18 +358,17 @@ QUICKLOAD_LOAD_MEMBER( kaypro_state, kayproii )
RAM[i+0x100] = data;
}
- state->common_pio_system_w(space, 0, state->m_system_port & 0x7f); // switch TPA in
+ common_pio_system_w(space, 0, m_system_port & 0x7f); // switch TPA in
RAM[0x80]=0; // clear out command tail
RAM[0x81]=0;
- state->m_maincpu->set_pc(0x100); // start program
+ m_maincpu->set_pc(0x100); // start program
return IMAGE_INIT_PASS;
}
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);
- UINT8 *RAM = state->memregion("rambank")->base();
+ address_space &space = m_maincpu->space(AS_PROGRAM);
+ UINT8 *RAM = memregion("rambank")->base();
UINT16 i;
UINT8 data;
@@ -381,9 +379,9 @@ QUICKLOAD_LOAD_MEMBER( kaypro_state, kaypro2x )
RAM[i+0x100] = data;
}
- state->kaypro2x_system_port_w(space, 0, state->m_system_port & 0x7f);
+ kaypro2x_system_port_w(space, 0, m_system_port & 0x7f);
RAM[0x80]=0;
RAM[0x81]=0;
- state->m_maincpu->set_pc(0x100);
+ m_maincpu->set_pc(0x100);
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/machine/kc.c b/src/mess/machine/kc.c
index b9dc221a0a2..90433d8d54a 100644
--- a/src/mess/machine/kc.c
+++ b/src/mess/machine/kc.c
@@ -26,7 +26,6 @@ struct kcc_header
/* load snapshot */
QUICKLOAD_LOAD_MEMBER( kc_state,kc)
{
- kc_state *state = image.device().machine().driver_data<kc_state>();
UINT8 *data;
struct kcc_header *header;
int addr;
@@ -40,7 +39,7 @@ QUICKLOAD_LOAD_MEMBER( kc_state,kc)
if (datasize != 0)
{
/* malloc memory for this data */
- data = (UINT8 *)auto_alloc_array(image.device().machine(), UINT8, datasize);
+ data = (UINT8 *)auto_alloc_array(machine(), UINT8, datasize);
if (data != NULL)
image.fread( data, datasize);
@@ -61,7 +60,7 @@ QUICKLOAD_LOAD_MEMBER( kc_state,kc)
datasize = image.length() - 128;
}
- address_space &space = state->m_maincpu->space( AS_PROGRAM );
+ address_space &space = m_maincpu->space( AS_PROGRAM );
for (i=0; i<datasize; i++)
space.write_byte((addr+i) & 0xffff, data[i+128]);
@@ -69,10 +68,10 @@ QUICKLOAD_LOAD_MEMBER( kc_state,kc)
if (execution_address != 0 && header->number_addresses >= 3 )
{
// if specified, jumps to the quickload start address
- state->m_maincpu->set_pc(execution_address);
+ m_maincpu->set_pc(execution_address);
}
- auto_free(image.device().machine(), data);
+ auto_free(machine(), data);
logerror("Snapshot loaded at: 0x%04x-0x%04x, execution address: 0x%04x\n", addr, addr + datasize - 1, execution_address);
diff --git a/src/mess/machine/lviv.c b/src/mess/machine/lviv.c
index af3575d556f..dff973c498d 100644
--- a/src/mess/machine/lviv.c
+++ b/src/mess/machine/lviv.c
@@ -331,7 +331,6 @@ int lviv_state::lviv_verify_snapshot (UINT8 * data, UINT32 size)
SNAPSHOT_LOAD_MEMBER( lviv_state, lviv )
{
UINT8 *lviv_snapshot_data;
- lviv_state *state = image.device().machine().driver_data<lviv_state>();
lviv_snapshot_data = (UINT8*)malloc(LVIV_SNAPSHOT_SIZE);
if (!lviv_snapshot_data)
@@ -342,15 +341,15 @@ SNAPSHOT_LOAD_MEMBER( lviv_state, lviv )
image.fread( lviv_snapshot_data, LVIV_SNAPSHOT_SIZE);
- if(state->lviv_verify_snapshot(lviv_snapshot_data, snapshot_size) == IMAGE_VERIFY_FAIL)
+ if(lviv_verify_snapshot(lviv_snapshot_data, snapshot_size) == IMAGE_VERIFY_FAIL)
{
free(lviv_snapshot_data);
return IMAGE_INIT_FAIL;
}
- state->lviv_setup_snapshot (lviv_snapshot_data);
+ lviv_setup_snapshot (lviv_snapshot_data);
- state->dump_registers();
+ dump_registers();
free(lviv_snapshot_data);
diff --git a/src/mess/machine/mbee.c b/src/mess/machine/mbee.c
index ff05ea4bc4f..0661b63c8cb 100644
--- a/src/mess/machine/mbee.c
+++ b/src/mess/machine/mbee.c
@@ -752,10 +752,9 @@ DRIVER_INIT_MEMBER(mbee_state,mbeett)
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);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
UINT16 i, j;
- UINT8 data, sw = state->ioport("CONFIG")->read() & 1; /* reading the dipswitch: 1 = autorun */
+ UINT8 data, sw = ioport("CONFIG")->read() & 1; /* reading the dipswitch: 1 = autorun */
if (!mame_stricmp(image.filetype(), "mwb"))
{
@@ -770,7 +769,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
return IMAGE_INIT_FAIL;
}
- if ((j < state->m_size) || (j > 0xefff))
+ if ((j < m_size) || (j > 0xefff))
space.write_byte(j, data);
else
{
@@ -782,7 +781,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
if (sw)
{
space.write_word(0xa2,0x801e); /* fix warm-start vector to get around some copy-protections */
- state->m_maincpu->set_pc(0x801e);
+ m_maincpu->set_pc(0x801e);
}
else
space.write_word(0xa2,0x8517);
@@ -800,7 +799,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
return IMAGE_INIT_FAIL;
}
- if ((j < state->m_size) || (j > 0xefff))
+ if ((j < m_size) || (j > 0xefff))
space.write_byte(j, data);
else
{
@@ -809,7 +808,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
}
}
- if (sw) state->m_maincpu->set_pc(0x100);
+ if (sw) m_maincpu->set_pc(0x100);
}
return IMAGE_INIT_PASS;
@@ -822,7 +821,6 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
QUICKLOAD_LOAD_MEMBER( mbee_state, mbee_z80bin )
{
- mbee_state *state = image.device().machine().driver_data<mbee_state>();
UINT16 execute_address, start_addr, end_addr;
int autorun;
@@ -834,16 +832,16 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee_z80bin )
if (execute_address != 0xffff)
{
/* check to see if autorun is on (I hate how this works) */
- autorun = state->ioport("CONFIG")->read_safe(0xFF) & 1;
+ autorun = ioport("CONFIG")->read_safe(0xFF) & 1;
- address_space &space = state->m_maincpu->space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
space.write_word(0xa6, execute_address); /* fix the EXEC command */
if (autorun)
{
space.write_word(0xa2, execute_address); /* fix warm-start vector to get around some copy-protections */
- state->m_maincpu->set_pc(execute_address);
+ m_maincpu->set_pc(execute_address);
}
else
{
diff --git a/src/mess/machine/microtan.c b/src/mess/machine/microtan.c
index ab750c407ff..56c42411451 100644
--- a/src/mess/machine/microtan.c
+++ b/src/mess/machine/microtan.c
@@ -873,23 +873,21 @@ void microtan_state::microtan_snapshot_copy(UINT8 *snapshot_buff, int snapshot_s
SNAPSHOT_LOAD_MEMBER( microtan_state, microtan )
{
- microtan_state *state = image.device().machine().driver_data<microtan_state>();
UINT8 *snapshot_buff;
snapshot_buff = (UINT8*)image.ptr();
if (!snapshot_buff)
return IMAGE_INIT_FAIL;
- if (state->microtan_verify_snapshot(snapshot_buff, snapshot_size)==IMAGE_VERIFY_FAIL)
+ if (microtan_verify_snapshot(snapshot_buff, snapshot_size)==IMAGE_VERIFY_FAIL)
return IMAGE_INIT_FAIL;
- state->microtan_snapshot_copy(snapshot_buff, snapshot_size);
+ microtan_snapshot_copy(snapshot_buff, snapshot_size);
return IMAGE_INIT_PASS;
}
QUICKLOAD_LOAD_MEMBER( microtan_state, microtan )
{
- microtan_state *state = image.device().machine().driver_data<microtan_state>();
int snapshot_size;
UINT8 *snapshot_buff;
char *buff;
@@ -916,11 +914,11 @@ QUICKLOAD_LOAD_MEMBER( microtan_state, microtan )
buff[quickload_size] = '\0';
if (buff[0] == ':')
- rc = state->parse_intel_hex(snapshot_buff, buff);
+ rc = parse_intel_hex(snapshot_buff, buff);
else
- rc = state->parse_zillion_hex(snapshot_buff, buff);
+ rc = parse_zillion_hex(snapshot_buff, buff);
if (rc == IMAGE_INIT_PASS)
- state->microtan_snapshot_copy(snapshot_buff, snapshot_size);
+ microtan_snapshot_copy(snapshot_buff, snapshot_size);
free(snapshot_buff);
return rc;
}
diff --git a/src/mess/machine/mtx.c b/src/mess/machine/mtx.c
index 04e8cf8abab..3cb01f5a48f 100644
--- a/src/mess/machine/mtx.c
+++ b/src/mess/machine/mtx.c
@@ -325,7 +325,7 @@ WRITE8_MEMBER(mtx_state::hrx_attr_w)
SNAPSHOT_LOAD_MEMBER( mtx_state, mtx )
{
- address_space &program = image.device().machine().device(Z80_TAG)->memory().space(AS_PROGRAM);
+ address_space &program = m_maincpu->space(AS_PROGRAM);
UINT8 header[18];
UINT16 addr;
diff --git a/src/mess/machine/nascom1.c b/src/mess/machine/nascom1.c
index f6b0b42b88b..bbc56cebab0 100644
--- a/src/mess/machine/nascom1.c
+++ b/src/mess/machine/nascom1.c
@@ -217,14 +217,14 @@ SNAPSHOT_LOAD_MEMBER( nascom1_state, nascom1 )
if (sscanf((char *)line, "%x %x %x %x %x %x %x %x %x %x\010\010\n",
&addr, &b0, &b1, &b2, &b3, &b4, &b5, &b6, &b7, &dummy) == 10)
{
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b0);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b1);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b2);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b3);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b4);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b5);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b6);
- image.device().machine().device("maincpu")->memory().space(AS_PROGRAM).write_byte(addr++, b7);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b0);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b1);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b2);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b3);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b4);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b5);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b6);
+ m_maincpu->space(AS_PROGRAM).write_byte(addr++, b7);
}
}
diff --git a/src/mess/machine/poly88.c b/src/mess/machine/poly88.c
index 40bea79a1f9..3e61db50079 100644
--- a/src/mess/machine/poly88.c
+++ b/src/mess/machine/poly88.c
@@ -254,8 +254,8 @@ WRITE8_MEMBER(poly88_state::poly88_intr_w)
SNAPSHOT_LOAD_MEMBER( poly88_state, poly88 )
{
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
- UINT8* data= auto_alloc_array(image.device().machine(), UINT8, snapshot_size);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
+ UINT8* data= auto_alloc_array(machine(), UINT8, snapshot_size);
UINT16 recordNum;
UINT16 recordLen;
UINT16 address;
@@ -297,7 +297,7 @@ SNAPSHOT_LOAD_MEMBER( poly88_state, poly88 )
break;
case 3 :
/* 03 Auto Start @ Address */
- image.device().machine().device("maincpu")->state().set_state_int(I8085_PC, address);
+ m_maincpu->set_state_int(I8085_PC, address);
theend = 1;
break;
case 4 :
@@ -322,6 +322,6 @@ SNAPSHOT_LOAD_MEMBER( poly88_state, poly88 )
}
pos+=recordLen;
}
- image.device().machine().device("uart")->reset();
+ machine().device("uart")->reset();
return IMAGE_INIT_PASS;
}
diff --git a/src/mess/machine/primo.c b/src/mess/machine/primo.c
index 38df4c04620..03e27549fd3 100644
--- a/src/mess/machine/primo.c
+++ b/src/mess/machine/primo.c
@@ -300,7 +300,6 @@ void primo_state::primo_setup_pss (UINT8* snapshot_data, UINT32 snapshot_size)
SNAPSHOT_LOAD_MEMBER( primo_state, primo )
{
UINT8 *snapshot_data;
- primo_state *state = image.device().machine().driver_data<primo_state>();
if (!(snapshot_data = (UINT8*) malloc(snapshot_size)))
return IMAGE_INIT_FAIL;
@@ -317,7 +316,7 @@ SNAPSHOT_LOAD_MEMBER( primo_state, primo )
return IMAGE_INIT_FAIL;
}
- state->primo_setup_pss(snapshot_data, snapshot_size);
+ primo_setup_pss(snapshot_data, snapshot_size);
free(snapshot_data);
return IMAGE_INIT_PASS;
@@ -352,7 +351,6 @@ void primo_state::primo_setup_pp (UINT8* quickload_data, UINT32 quickload_size)
QUICKLOAD_LOAD_MEMBER( primo_state, primo )
{
UINT8 *quickload_data;
- primo_state *state = image.device().machine().driver_data<primo_state>();
if (!(quickload_data = (UINT8*) malloc(quickload_size)))
return IMAGE_INIT_FAIL;
@@ -363,7 +361,7 @@ QUICKLOAD_LOAD_MEMBER( primo_state, primo )
return IMAGE_INIT_FAIL;
}
- state->primo_setup_pp(quickload_data, quickload_size);
+ primo_setup_pp(quickload_data, quickload_size);
free(quickload_data);
return IMAGE_INIT_PASS;
diff --git a/src/mess/machine/sorcerer.c b/src/mess/machine/sorcerer.c
index 9651d09a70b..96265f48f6f 100644
--- a/src/mess/machine/sorcerer.c
+++ b/src/mess/machine/sorcerer.c
@@ -290,9 +290,8 @@ READ8_MEMBER(sorcerer_state::sorcerer_ff_r)
SNAPSHOT_LOAD_MEMBER( sorcerer_state,sorcerer)
{
- device_t *cpu = image.device().machine().device("maincpu");
- UINT8 *RAM = memregion(cpu->tag())->base();
- address_space &space = cpu->memory().space(AS_PROGRAM);
+ UINT8 *RAM = memregion(m_maincpu->tag())->base();
+ address_space &space = m_maincpu->space(AS_PROGRAM);
UINT8 header[28];
unsigned char s_byte;
@@ -316,23 +315,23 @@ SNAPSHOT_LOAD_MEMBER( sorcerer_state,sorcerer)
image.fread( RAM+0xc000, 0x4000);
/* patch CPU registers */
- cpu->state().set_state_int(Z80_I, header[0]);
- cpu->state().set_state_int(Z80_HL2, header[1] | (header[2] << 8));
- cpu->state().set_state_int(Z80_DE2, header[3] | (header[4] << 8));
- cpu->state().set_state_int(Z80_BC2, header[5] | (header[6] << 8));
- cpu->state().set_state_int(Z80_AF2, header[7] | (header[8] << 8));
- cpu->state().set_state_int(Z80_HL, header[9] | (header[10] << 8));
- cpu->state().set_state_int(Z80_DE, header[11] | (header[12] << 8));
- cpu->state().set_state_int(Z80_BC, header[13] | (header[14] << 8));
- cpu->state().set_state_int(Z80_IY, header[15] | (header[16] << 8));
- cpu->state().set_state_int(Z80_IX, header[17] | (header[18] << 8));
- cpu->state().set_state_int(Z80_IFF1, header[19]&2 ? 1 : 0);
- cpu->state().set_state_int(Z80_IFF2, header[19]&4 ? 1 : 0);
- cpu->state().set_state_int(Z80_R, header[20]);
- cpu->state().set_state_int(Z80_AF, header[21] | (header[22] << 8));
- cpu->state().set_state_int(STATE_GENSP, header[23] | (header[24] << 8));
- cpu->state().set_state_int(Z80_IM, header[25]);
- cpu->state().set_pc(header[26] | (header[27] << 8));
+ m_maincpu->set_state_int(Z80_I, header[0]);
+ m_maincpu->set_state_int(Z80_HL2, header[1] | (header[2] << 8));
+ m_maincpu->set_state_int(Z80_DE2, header[3] | (header[4] << 8));
+ m_maincpu->set_state_int(Z80_BC2, header[5] | (header[6] << 8));
+ m_maincpu->set_state_int(Z80_AF2, header[7] | (header[8] << 8));
+ m_maincpu->set_state_int(Z80_HL, header[9] | (header[10] << 8));
+ m_maincpu->set_state_int(Z80_DE, header[11] | (header[12] << 8));
+ m_maincpu->set_state_int(Z80_BC, header[13] | (header[14] << 8));
+ m_maincpu->set_state_int(Z80_IY, header[15] | (header[16] << 8));
+ m_maincpu->set_state_int(Z80_IX, header[17] | (header[18] << 8));
+ m_maincpu->set_state_int(Z80_IFF1, header[19]&2 ? 1 : 0);
+ m_maincpu->set_state_int(Z80_IFF2, header[19]&4 ? 1 : 0);
+ m_maincpu->set_state_int(Z80_R, header[20]);
+ m_maincpu->set_state_int(Z80_AF, header[21] | (header[22] << 8));
+ m_maincpu->set_state_int(STATE_GENSP, header[23] | (header[24] << 8));
+ m_maincpu->set_state_int(Z80_IM, header[25]);
+ m_maincpu->set_pc(header[26] | (header[27] << 8));
return IMAGE_INIT_PASS;
}
@@ -427,7 +426,7 @@ QUICKLOAD_LOAD_MEMBER( sorcerer_state, sorcerer )
/* check to see if autorun is on (I hate how this works) */
autorun = ioport("CONFIG")->read_safe(0xFF) & 1;
- address_space &space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM);
+ address_space &space = m_maincpu->space(AS_PROGRAM);
if ((execute_address >= 0xc000) && (execute_address <= 0xdfff) && (space.read_byte(0xdffa) != 0xc3))
return IMAGE_INIT_FAIL; /* can't run a program if the cartridge isn't in */
@@ -463,12 +462,12 @@ QUICKLOAD_LOAD_MEMBER( sorcerer_state, sorcerer )
if ((execute_address != 0xc858) && autorun)
space.write_word(0xf028, execute_address);
- image.device().machine().device("maincpu")->state().set_pc(0xf01f);
+ m_maincpu->set_pc(0xf01f);
}
else
{
if (autorun)
- image.device().machine().device("maincpu")->state().set_pc(execute_address);
+ m_maincpu->set_pc(execute_address);
}
}
diff --git a/src/mess/machine/spec_snqk.c b/src/mess/machine/spec_snqk.c
index 3a5aa8ceb7f..c195073d1da 100644
--- a/src/mess/machine/spec_snqk.c
+++ b/src/mess/machine/spec_snqk.c
@@ -127,7 +127,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .SNA file size.\n");
goto error;
}
- spectrum_setup_sna(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_sna(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "sp"))
{
@@ -139,7 +139,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
goto error;
}
}
- spectrum_setup_sp(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_sp(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "ach"))
{
@@ -148,7 +148,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .ACH file size.\n");
goto error;
}
- spectrum_setup_ach(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_ach(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "prg"))
{
@@ -157,7 +157,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .PRG file size.\n");
goto error;
}
- spectrum_setup_prg(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_prg(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "plusd"))
{
@@ -166,7 +166,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .PLUSD file size.\n");
goto error;
}
- spectrum_setup_plusd(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_plusd(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "sem"))
{
@@ -180,7 +180,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
goto error;
}
}
- spectrum_setup_sem(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_sem(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "sit"))
{
@@ -189,7 +189,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .SIT file size.\n");
goto error;
}
- spectrum_setup_sit(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_sit(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "zx"))
{
@@ -198,7 +198,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .ZX file size.\n");
goto error;
}
- spectrum_setup_zx(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_zx(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "snp"))
{
@@ -207,7 +207,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .SNP file size.\n");
goto error;
}
- spectrum_setup_snp(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_snp(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "snx"))
{
@@ -217,7 +217,7 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .SNX file size.\n");
goto error;
}
- spectrum_setup_snx(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_snx(machine(), snapshot_data, snapshot_size);
}
else if (!mame_stricmp(file_type, "frz"))
{
@@ -226,11 +226,11 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .FRZ file size.\n");
goto error;
}
- spectrum_setup_frz(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_frz(machine(), snapshot_data, snapshot_size);
}
else
{
- spectrum_setup_z80(image.device().machine(), snapshot_data, snapshot_size);
+ spectrum_setup_z80(machine(), snapshot_data, snapshot_size);
}
free(snapshot_data);
@@ -2468,7 +2468,7 @@ QUICKLOAD_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .SCR file size.\n");
goto error;
}
- spectrum_setup_scr(image.device().machine(), quickload_data, quickload_size);
+ spectrum_setup_scr(machine(), quickload_data, quickload_size);
}
else if (!mame_stricmp(file_type, "raw"))
{
@@ -2477,7 +2477,7 @@ QUICKLOAD_LOAD_MEMBER( spectrum_state,spectrum)
logerror("Invalid .RAW file size.\n");
goto error;
}
- spectrum_setup_raw(image.device().machine(), quickload_data, quickload_size);
+ spectrum_setup_raw(machine(), quickload_data, quickload_size);
}
free(quickload_data);
diff --git a/src/mess/machine/super80.c b/src/mess/machine/super80.c
index 813398ebd88..98a95bc5efe 100644
--- a/src/mess/machine/super80.c
+++ b/src/mess/machine/super80.c
@@ -247,7 +247,7 @@ QUICKLOAD_LOAD_MEMBER( super80_state, super80 )
autorun = ioport("CONFIG")->read_safe(0xFF) & 1;
if (autorun)
- image.device().machine().device("maincpu")->state().set_pc(exec_addr);
+ m_maincpu->set_pc(exec_addr);
}
return IMAGE_INIT_PASS;
diff --git a/src/mess/machine/ti85.c b/src/mess/machine/ti85.c
index 128d3a7858a..c6aed25e2ed 100644
--- a/src/mess/machine/ti85.c
+++ b/src/mess/machine/ti85.c
@@ -680,11 +680,10 @@ SNAPSHOT_LOAD_MEMBER( ti85_state, ti8x )
{
int expected_snapshot_size = 0;
UINT8 *ti8x_snapshot_data;
- ti85_state *state = image.device().machine().driver_data<ti85_state>();
-
- if (!strncmp(image.device().machine().system().name, "ti85", 4))
+
+ if (!strncmp(machine().system().name, "ti85", 4))
expected_snapshot_size = TI85_SNAPSHOT_SIZE;
- else if (!strncmp(image.device().machine().system().name, "ti86", 4))
+ else if (!strncmp(machine().system().name, "ti86", 4))
expected_snapshot_size = TI86_SNAPSHOT_SIZE;
logerror("Snapshot loading\n");
@@ -700,10 +699,10 @@ SNAPSHOT_LOAD_MEMBER( ti85_state, ti8x )
image.fread( ti8x_snapshot_data, snapshot_size);
- if (!strncmp(image.device().machine().system().name, "ti85", 4))
- state->ti85_setup_snapshot(ti8x_snapshot_data);
- else if (!strncmp(image.device().machine().system().name, "ti86", 4))
- state->ti86_setup_snapshot(ti8x_snapshot_data);
+ if (!strncmp(machine().system().name, "ti85", 4))
+ ti85_setup_snapshot(ti8x_snapshot_data);
+ else if (!strncmp(machine().system().name, "ti86", 4))
+ ti86_setup_snapshot(ti8x_snapshot_data);
free(ti8x_snapshot_data);
return IMAGE_INIT_PASS;