summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/machine/midtunit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/machine/midtunit.cpp')
-rw-r--r--src/mame/machine/midtunit.cpp64
1 files changed, 34 insertions, 30 deletions
diff --git a/src/mame/machine/midtunit.cpp b/src/mame/machine/midtunit.cpp
index 98cb5d91079..4530ae163ce 100644
--- a/src/mame/machine/midtunit.cpp
+++ b/src/mame/machine/midtunit.cpp
@@ -45,13 +45,13 @@ void midtunit_state::register_state_saving()
*
*************************************/
-WRITE16_MEMBER(midtunit_state::midtunit_cmos_enable_w)
+void midtunit_state::midtunit_cmos_enable_w(uint16_t data)
{
m_cmos_write_enable = 1;
}
-WRITE16_MEMBER(midtunit_state::midtunit_cmos_w)
+void midtunit_state::midtunit_cmos_w(offs_t offset, uint16_t data, uint16_t mem_mask)
{
if (1)/*m_cmos_write_enable*/
{
@@ -66,7 +66,7 @@ WRITE16_MEMBER(midtunit_state::midtunit_cmos_w)
}
-READ16_MEMBER(midtunit_state::midtunit_cmos_r)
+uint16_t midtunit_state::midtunit_cmos_r(offs_t offset)
{
return m_nvram[offset];
}
@@ -90,7 +90,7 @@ static const uint8_t mk_prot_values[] =
0xff
};
-READ16_MEMBER(midtunit_state::mk_prot_r)
+uint16_t midtunit_state::mk_prot_r(offs_t offset)
{
logerror("%s:Protection R @ %05X = %04X\n", machine().describe_context(), offset, mk_prot_values[m_mk_prot_index] << 9);
@@ -104,7 +104,7 @@ READ16_MEMBER(midtunit_state::mk_prot_r)
return mk_prot_values[m_mk_prot_index++] << 9;
}
-WRITE16_MEMBER(midtunit_state::mk_prot_w)
+void midtunit_state::mk_prot_w(offs_t offset, uint16_t data, uint16_t mem_mask)
{
if (ACCESSING_BITS_8_15)
{
@@ -138,7 +138,7 @@ WRITE16_MEMBER(midtunit_state::mk_prot_w)
*
*************************************/
-READ16_MEMBER(midtunit_state::mkturbo_prot_r)
+uint16_t midtunit_state::mkturbo_prot_r()
{
/* the security GAL overlays a counter of some sort at 0xfffff400 in ROM &space.
* A startup protection check expects to read back two different values in succession */
@@ -153,22 +153,22 @@ READ16_MEMBER(midtunit_state::mkturbo_prot_r)
*
*************************************/
-READ16_MEMBER(midtunit_state::mk2_prot_const_r)
+uint16_t midtunit_state::mk2_prot_const_r()
{
return 2;
}
-READ16_MEMBER(midtunit_state::mk2_prot_r)
+uint16_t midtunit_state::mk2_prot_r()
{
return m_mk2_prot_data;
}
-READ16_MEMBER(midtunit_state::mk2_prot_shift_r)
+uint16_t midtunit_state::mk2_prot_shift_r()
{
return m_mk2_prot_data >> 1;
}
-WRITE16_MEMBER(midtunit_state::mk2_prot_w)
+void midtunit_state::mk2_prot_w(offs_t offset, uint16_t data, uint16_t mem_mask)
{
COMBINE_DATA(&m_mk2_prot_data);
}
@@ -221,7 +221,7 @@ static const uint32_t nbajamte_prot_values[128] =
0x381c2e17, 0x393c3e3f, 0x3a3d1e0f, 0x3b1d0e27, 0x3c3e1f2f, 0x3d1e0f07, 0x3e1f2f37, 0x3f3f3f1f
};
-READ16_MEMBER(midtunit_state::nbajam_prot_r)
+uint16_t midtunit_state::nbajam_prot_r()
{
int result = m_nbajam_prot_queue[m_nbajam_prot_index];
if (m_nbajam_prot_index < 4)
@@ -229,7 +229,7 @@ READ16_MEMBER(midtunit_state::nbajam_prot_r)
return result;
}
-WRITE16_MEMBER(midtunit_state::nbajam_prot_w)
+void midtunit_state::nbajam_prot_w(offs_t offset, uint16_t data)
{
int table_index = (offset >> 6) & 0x7f;
uint32_t protval = m_nbajam_prot_table[table_index];
@@ -292,7 +292,7 @@ static const uint8_t jdredd_prot_values_80020[] =
0x39,0x33,0x00,0x00,0x00,0x00,0x00,0x00
};
-WRITE16_MEMBER(midtunit_state::jdredd_prot_w)
+void midtunit_state::jdredd_prot_w(offs_t offset, uint16_t data)
{
logerror("%s:jdredd_prot_w(%04X,%04X)\n", machine().describe_context(), offset*16, data);
@@ -335,7 +335,7 @@ WRITE16_MEMBER(midtunit_state::jdredd_prot_w)
}
}
-READ16_MEMBER(midtunit_state::jdredd_prot_r)
+uint16_t midtunit_state::jdredd_prot_r(offs_t offset)
{
uint16_t result = 0xffff;
@@ -379,7 +379,8 @@ void midtunit_state::init_mktunit()
init_tunit_generic(SOUND_ADPCM);
/* protection */
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x1b00000, 0x1b6ffff, read16_delegate(*this, FUNC(midtunit_state::mk_prot_r)), write16_delegate(*this, FUNC(midtunit_state::mk_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x1b00000, 0x1b6ffff, read16sm_delegate(*this, FUNC(midtunit_state::mk_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_write_handler(0x1b00000, 0x1b6ffff, write16s_delegate(*this, FUNC(midtunit_state::mk_prot_w)));
/* sound chip protection (hidden RAM) */
m_adpcm_sound->get_cpu()->space(AS_PROGRAM).install_ram(0xfb9c, 0xfbc6);
@@ -388,7 +389,7 @@ void midtunit_state::init_mktunit()
void midtunit_state::init_mkturbo()
{
/* protection */
- m_maincpu->space(AS_PROGRAM).install_read_handler(0xfffff400, 0xfffff40f, read16_delegate(*this, FUNC(midtunit_state::mkturbo_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0xfffff400, 0xfffff40f, read16smo_delegate(*this, FUNC(midtunit_state::mkturbo_prot_r)));
init_mktunit();
}
@@ -402,13 +403,16 @@ void midtunit_state::init_nbajam_common(int te_protection)
if (!te_protection)
{
m_nbajam_prot_table = nbajam_prot_values;
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x1b14020, 0x1b2503f, read16_delegate(*this, FUNC(midtunit_state::nbajam_prot_r)), write16_delegate(*this, FUNC(midtunit_state::nbajam_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x1b14020, 0x1b2503f, read16smo_delegate(*this, FUNC(midtunit_state::nbajam_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_write_handler(0x1b14020, 0x1b2503f, write16sm_delegate(*this, FUNC(midtunit_state::nbajam_prot_w)));
}
else
{
m_nbajam_prot_table = nbajamte_prot_values;
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x1b15f40, 0x1b37f5f, read16_delegate(*this, FUNC(midtunit_state::nbajam_prot_r)), write16_delegate(*this, FUNC(midtunit_state::nbajam_prot_w)));
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x1b95f40, 0x1bb7f5f, read16_delegate(*this, FUNC(midtunit_state::nbajam_prot_r)), write16_delegate(*this, FUNC(midtunit_state::nbajam_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x1b15f40, 0x1b37f5f, read16smo_delegate(*this, FUNC(midtunit_state::nbajam_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_write_handler(0x1b15f40, 0x1b37f5f, write16sm_delegate(*this, FUNC(midtunit_state::nbajam_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x1b95f40, 0x1bb7f5f, read16smo_delegate(*this, FUNC(midtunit_state::nbajam_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_write_handler(0x1b95f40, 0x1bb7f5f, write16sm_delegate(*this, FUNC(midtunit_state::nbajam_prot_w)));
}
/* sound chip protection (hidden RAM) */
@@ -437,7 +441,7 @@ void midtunit_state::init_jdreddp()
m_maincpu->space(AS_PROGRAM).nop_write(0x01d81060, 0x01d8107f);
/* protection */
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x1b00000, 0x1bfffff, read16_delegate(*this, FUNC(midtunit_state::jdredd_prot_r)), write16_delegate(*this, FUNC(midtunit_state::jdredd_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x1b00000, 0x1bfffff, read16sm_delegate(*this, FUNC(midtunit_state::jdredd_prot_r)), write16sm_delegate(*this, FUNC(midtunit_state::jdredd_prot_w)));
/* sound chip protection (hidden RAM) */
m_adpcm_sound->get_cpu()->space(AS_PROGRAM).install_read_bank(0xfbcf, 0xfbf9, "bank7");
@@ -462,13 +466,13 @@ void midtunit_state::init_mk2()
m_video->set_gfx_rom_large(true);
/* protection */
- m_maincpu->space(AS_PROGRAM).install_write_handler(0x00f20c60, 0x00f20c7f, write16_delegate(*this, FUNC(midtunit_state::mk2_prot_w)));
- m_maincpu->space(AS_PROGRAM).install_write_handler(0x00f42820, 0x00f4283f, write16_delegate(*this, FUNC(midtunit_state::mk2_prot_w)));
- m_maincpu->space(AS_PROGRAM).install_read_handler(0x01a190e0, 0x01a190ff, read16_delegate(*this, FUNC(midtunit_state::mk2_prot_r)));
- m_maincpu->space(AS_PROGRAM).install_read_handler(0x01a191c0, 0x01a191df, read16_delegate(*this, FUNC(midtunit_state::mk2_prot_shift_r)));
- m_maincpu->space(AS_PROGRAM).install_read_handler(0x01a3d0c0, 0x01a3d0ff, read16_delegate(*this, FUNC(midtunit_state::mk2_prot_r)));
- m_maincpu->space(AS_PROGRAM).install_read_handler(0x01d9d1e0, 0x01d9d1ff, read16_delegate(*this, FUNC(midtunit_state::mk2_prot_const_r)));
- m_maincpu->space(AS_PROGRAM).install_read_handler(0x01def920, 0x01def93f, read16_delegate(*this, FUNC(midtunit_state::mk2_prot_const_r)));
+ m_maincpu->space(AS_PROGRAM).install_write_handler(0x00f20c60, 0x00f20c7f, write16s_delegate(*this, FUNC(midtunit_state::mk2_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_write_handler(0x00f42820, 0x00f4283f, write16s_delegate(*this, FUNC(midtunit_state::mk2_prot_w)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x01a190e0, 0x01a190ff, read16smo_delegate(*this, FUNC(midtunit_state::mk2_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x01a191c0, 0x01a191df, read16smo_delegate(*this, FUNC(midtunit_state::mk2_prot_shift_r)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x01a3d0c0, 0x01a3d0ff, read16smo_delegate(*this, FUNC(midtunit_state::mk2_prot_r)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x01d9d1e0, 0x01d9d1ff, read16smo_delegate(*this, FUNC(midtunit_state::mk2_prot_const_r)));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0x01def920, 0x01def93f, read16smo_delegate(*this, FUNC(midtunit_state::mk2_prot_const_r)));
}
@@ -505,7 +509,7 @@ void midtunit_state::machine_reset()
*
*************************************/
-READ16_MEMBER(midtunit_state::midtunit_sound_state_r)
+uint16_t midtunit_state::midtunit_sound_state_r()
{
/* logerror("%s:Sound status read\n", machine().describe_context());*/
@@ -520,7 +524,7 @@ READ16_MEMBER(midtunit_state::midtunit_sound_state_r)
return ~0;
}
-READ16_MEMBER(midtunit_state::midtunit_sound_r)
+uint16_t midtunit_state::midtunit_sound_r()
{
logerror("%08X:Sound data read\n", m_maincpu->pc());
@@ -530,7 +534,7 @@ READ16_MEMBER(midtunit_state::midtunit_sound_r)
return ~0;
}
-WRITE16_MEMBER(midtunit_state::midtunit_sound_w)
+void midtunit_state::midtunit_sound_w(offs_t offset, uint16_t data, uint16_t mem_mask)
{
/* check for out-of-bounds accesses */
if (!offset)