diff options
Diffstat (limited to 'src/mess/machine/galaxy.c')
-rw-r--r-- | src/mess/machine/galaxy.c | 88 |
1 files changed, 44 insertions, 44 deletions
diff --git a/src/mess/machine/galaxy.c b/src/mess/machine/galaxy.c index 6cc548c37df..a4fc34546c9 100644 --- a/src/mess/machine/galaxy.c +++ b/src/mess/machine/galaxy.c @@ -60,72 +60,72 @@ IRQ_CALLBACK_MEMBER(galaxy_state::galaxy_irq_callback) #define GALAXY_SNAPSHOT_V1_SIZE 8268 #define GALAXY_SNAPSHOT_V2_SIZE 8244 -static void galaxy_setup_snapshot (running_machine &machine, const UINT8 * data, UINT32 size) +void galaxy_state::galaxy_setup_snapshot (const UINT8 * data, UINT32 size) { - galaxy_state *state = machine.driver_data<galaxy_state>(); switch (size) { case GALAXY_SNAPSHOT_V1_SIZE: - state->m_maincpu->set_state_int(Z80_AF, data[0x00] | data[0x01] << 8); - state->m_maincpu->set_state_int(Z80_BC, data[0x04] | data[0x05] << 8); - state->m_maincpu->set_state_int(Z80_DE, data[0x08] | data[0x09] << 8); - state->m_maincpu->set_state_int(Z80_HL, data[0x0c] | data[0x0d] << 8); - state->m_maincpu->set_state_int(Z80_IX, data[0x10] | data[0x11] << 8); - state->m_maincpu->set_state_int(Z80_IY, data[0x14] | data[0x15] << 8); - state->m_maincpu->set_state_int(Z80_PC, data[0x18] | data[0x19] << 8); - state->m_maincpu->set_state_int(Z80_SP, data[0x1c] | data[0x1d] << 8); - state->m_maincpu->set_state_int(Z80_AF2, data[0x20] | data[0x21] << 8); - state->m_maincpu->set_state_int(Z80_BC2, data[0x24] | data[0x25] << 8); - state->m_maincpu->set_state_int(Z80_DE2, data[0x28] | data[0x29] << 8); - state->m_maincpu->set_state_int(Z80_HL2, data[0x2c] | data[0x2d] << 8); - state->m_maincpu->set_state_int(Z80_IFF1, data[0x30]); - state->m_maincpu->set_state_int(Z80_IFF2, data[0x34]); - state->m_maincpu->set_state_int(Z80_HALT, data[0x38]); - state->m_maincpu->set_state_int(Z80_IM, data[0x3c]); - state->m_maincpu->set_state_int(Z80_I, data[0x40]); - state->m_maincpu->set_state_int(Z80_R, (data[0x44] & 0x7f) | (data[0x48] & 0x80)); - - memcpy (machine.device<ram_device>(RAM_TAG)->pointer(), data + 0x084c, (machine.device<ram_device>(RAM_TAG)->size() < 0x1800) ? machine.device<ram_device>(RAM_TAG)->size() : 0x1800); + m_maincpu->set_state_int(Z80_AF, data[0x00] | data[0x01] << 8); + m_maincpu->set_state_int(Z80_BC, data[0x04] | data[0x05] << 8); + m_maincpu->set_state_int(Z80_DE, data[0x08] | data[0x09] << 8); + m_maincpu->set_state_int(Z80_HL, data[0x0c] | data[0x0d] << 8); + m_maincpu->set_state_int(Z80_IX, data[0x10] | data[0x11] << 8); + m_maincpu->set_state_int(Z80_IY, data[0x14] | data[0x15] << 8); + m_maincpu->set_state_int(Z80_PC, data[0x18] | data[0x19] << 8); + m_maincpu->set_state_int(Z80_SP, data[0x1c] | data[0x1d] << 8); + m_maincpu->set_state_int(Z80_AF2, data[0x20] | data[0x21] << 8); + m_maincpu->set_state_int(Z80_BC2, data[0x24] | data[0x25] << 8); + m_maincpu->set_state_int(Z80_DE2, data[0x28] | data[0x29] << 8); + m_maincpu->set_state_int(Z80_HL2, data[0x2c] | data[0x2d] << 8); + m_maincpu->set_state_int(Z80_IFF1, data[0x30]); + m_maincpu->set_state_int(Z80_IFF2, data[0x34]); + m_maincpu->set_state_int(Z80_HALT, data[0x38]); + m_maincpu->set_state_int(Z80_IM, data[0x3c]); + m_maincpu->set_state_int(Z80_I, data[0x40]); + m_maincpu->set_state_int(Z80_R, (data[0x44] & 0x7f) | (data[0x48] & 0x80)); + + memcpy (machine().device<ram_device>(RAM_TAG)->pointer(), data + 0x084c, (machine().device<ram_device>(RAM_TAG)->size() < 0x1800) ? machine().device<ram_device>(RAM_TAG)->size() : 0x1800); break; case GALAXY_SNAPSHOT_V2_SIZE: - state->m_maincpu->set_state_int(Z80_AF, data[0x00] | data[0x01] << 8); - state->m_maincpu->set_state_int(Z80_BC, data[0x02] | data[0x03] << 8); - state->m_maincpu->set_state_int(Z80_DE, data[0x04] | data[0x05] << 8); - state->m_maincpu->set_state_int(Z80_HL, data[0x06] | data[0x07] << 8); - state->m_maincpu->set_state_int(Z80_IX, data[0x08] | data[0x09] << 8); - state->m_maincpu->set_state_int(Z80_IY, data[0x0a] | data[0x0b] << 8); - state->m_maincpu->set_state_int(Z80_PC, data[0x0c] | data[0x0d] << 8); - state->m_maincpu->set_state_int(Z80_SP, data[0x0e] | data[0x0f] << 8); - state->m_maincpu->set_state_int(Z80_AF2, data[0x10] | data[0x11] << 8); - state->m_maincpu->set_state_int(Z80_BC2, data[0x12] | data[0x13] << 8); - state->m_maincpu->set_state_int(Z80_DE2, data[0x14] | data[0x15] << 8); - state->m_maincpu->set_state_int(Z80_HL2, data[0x16] | data[0x17] << 8); + m_maincpu->set_state_int(Z80_AF, data[0x00] | data[0x01] << 8); + m_maincpu->set_state_int(Z80_BC, data[0x02] | data[0x03] << 8); + m_maincpu->set_state_int(Z80_DE, data[0x04] | data[0x05] << 8); + m_maincpu->set_state_int(Z80_HL, data[0x06] | data[0x07] << 8); + m_maincpu->set_state_int(Z80_IX, data[0x08] | data[0x09] << 8); + m_maincpu->set_state_int(Z80_IY, data[0x0a] | data[0x0b] << 8); + m_maincpu->set_state_int(Z80_PC, data[0x0c] | data[0x0d] << 8); + m_maincpu->set_state_int(Z80_SP, data[0x0e] | data[0x0f] << 8); + m_maincpu->set_state_int(Z80_AF2, data[0x10] | data[0x11] << 8); + m_maincpu->set_state_int(Z80_BC2, data[0x12] | data[0x13] << 8); + m_maincpu->set_state_int(Z80_DE2, data[0x14] | data[0x15] << 8); + m_maincpu->set_state_int(Z80_HL2, data[0x16] | data[0x17] << 8); - state->m_maincpu->set_state_int(Z80_IFF1, data[0x18] & 0x01); - state->m_maincpu->set_state_int(Z80_IFF2, (UINT64)0); + m_maincpu->set_state_int(Z80_IFF1, data[0x18] & 0x01); + m_maincpu->set_state_int(Z80_IFF2, (UINT64)0); - state->m_maincpu->set_state_int(Z80_HALT, (UINT64)0); + m_maincpu->set_state_int(Z80_HALT, (UINT64)0); - state->m_maincpu->set_state_int(Z80_IM, (data[0x18] >> 1) & 0x03); + m_maincpu->set_state_int(Z80_IM, (data[0x18] >> 1) & 0x03); - state->m_maincpu->set_state_int(Z80_I, data[0x19]); - state->m_maincpu->set_state_int(Z80_R, data[0x1a]); + m_maincpu->set_state_int(Z80_I, data[0x19]); + m_maincpu->set_state_int(Z80_R, data[0x1a]); - memcpy (machine.device<ram_device>(RAM_TAG)->pointer(), data + 0x0834, (machine.device<ram_device>(RAM_TAG)->size() < 0x1800) ? machine.device<ram_device>(RAM_TAG)->size() : 0x1800); + memcpy (machine().device<ram_device>(RAM_TAG)->pointer(), data + 0x0834, (machine().device<ram_device>(RAM_TAG)->size() < 0x1800) ? machine().device<ram_device>(RAM_TAG)->size() : 0x1800); break; } - state->m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE); - state->m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE); + m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE); + m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE); } SNAPSHOT_LOAD( galaxy ) { UINT8* snapshot_data; + galaxy_state *state = image.device().machine().driver_data<galaxy_state>(); switch (snapshot_size) { case GALAXY_SNAPSHOT_V1_SIZE: @@ -138,7 +138,7 @@ SNAPSHOT_LOAD( galaxy ) image.fread( snapshot_data, snapshot_size); - galaxy_setup_snapshot(image.device().machine(), snapshot_data, snapshot_size); + state->galaxy_setup_snapshot(snapshot_data, snapshot_size); return IMAGE_INIT_PASS; } |