mirror of
https://github.com/holub/mame
synced 2025-04-26 10:13:37 +03:00
previous sc2 pull requests cleaned up and reduced to a single update
makes the DMD be treated as a screen, avoids tag lookups, adds correct dmd rom to some sets etc.
This commit is contained in:
parent
cf8060d762
commit
d53f5dec3c
@ -202,24 +202,18 @@ public:
|
||||
m_reel3(*this, "reel3"),
|
||||
m_reel4(*this, "reel4"),
|
||||
m_reel5(*this, "reel5"),
|
||||
m_strobein0(*this, "STROBE0"),
|
||||
m_strobein1(*this, "STROBE1"),
|
||||
m_strobein2(*this, "STROBE2"),
|
||||
m_strobein3(*this, "STROBE3"),
|
||||
m_strobein4(*this, "STROBE4"),
|
||||
m_strobein5(*this, "STROBE5"),
|
||||
m_strobein6(*this, "STROBE6"),
|
||||
m_strobein7(*this, "STROBE7"),
|
||||
m_strobein8(*this, "STROBE8"),
|
||||
m_strobein9(*this, "STROBE9"),
|
||||
m_strobein10(*this, "STROBE10"),
|
||||
m_strobein11(*this, "STROBE11"),
|
||||
m_strobein(*this, { "STROBE0", "STROBE1", "STROBE2", "STROBE3", "STROBE4", "STROBE5", "STROBE6", "STROBE7", "STROBE8", "STROBE9", "STROBE10", "STROBE11" }),
|
||||
m_rombank1(*this, "bank1"),
|
||||
m_ym2413(*this, "ymsnd"),
|
||||
m_upd7759(*this, "upd"),
|
||||
m_vfd0(*this, "vfd0"),
|
||||
m_vfd1(*this, "vfd1"),
|
||||
m_dm01(*this, "dm01"),
|
||||
m_meters(*this, "meters") { }
|
||||
m_meters(*this, "meters")
|
||||
{
|
||||
for (auto & elem : m_lamps_old)
|
||||
elem = 0;
|
||||
}
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<stepper_device> m_reel0;
|
||||
@ -228,8 +222,10 @@ public:
|
||||
optional_device<stepper_device> m_reel3;
|
||||
optional_device<stepper_device> m_reel4;
|
||||
optional_device<stepper_device> m_reel5;
|
||||
required_ioport m_strobein0, m_strobein1, m_strobein2, m_strobein3, m_strobein4, m_strobein5, m_strobein6, m_strobein7, m_strobein8, m_strobein9, m_strobein10, m_strobein11;
|
||||
required_ioport_array<12> m_strobein;
|
||||
optional_memory_bank m_rombank1;
|
||||
optional_device<ym2413_device> m_ym2413;
|
||||
|
||||
|
||||
required_device<upd7759_device> m_upd7759;
|
||||
optional_device<bfm_bd1_t> m_vfd0;
|
||||
@ -286,6 +282,7 @@ public:
|
||||
int m_e2dummywrite;
|
||||
int m_e2data_to_read;
|
||||
UINT8 m_codec_data[256];
|
||||
UINT8 m_lamps_old[0x20];
|
||||
void e2ram_init(nvram_device &nvram, void *data, size_t size);
|
||||
DECLARE_WRITE_LINE_MEMBER(bfmdm01_busy);
|
||||
DECLARE_WRITE8_MEMBER(bankswitch_w);
|
||||
@ -433,7 +430,8 @@ void bfm_sc2_state::on_scorpion2_reset()
|
||||
|
||||
e2ram_reset();
|
||||
|
||||
machine().device("ymsnd")->reset();
|
||||
if (m_ym2413)
|
||||
m_ym2413->reset();
|
||||
|
||||
// make sure no inputs are overidden ////////////////////////////////////
|
||||
memset(m_input_override, 0, sizeof(m_input_override));
|
||||
@ -643,12 +641,24 @@ WRITE8_MEMBER(bfm_sc2_state::mmtr_w)
|
||||
|
||||
WRITE8_MEMBER(bfm_sc2_state::mux_output_w)
|
||||
{
|
||||
// this is a useful profiler point to make sure the artwork writes / lookups are performing properly.
|
||||
g_profiler.start(PROFILER_USER6);
|
||||
|
||||
int i;
|
||||
int off = offset<<3;
|
||||
|
||||
for (i=0; i<8; i++)
|
||||
output().set_lamp_value(off+i, ((data & (1 << i)) != 0));
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
int oldbit = m_lamps_old[offset] & (1 << i);
|
||||
int newbit = data & (1 << i);
|
||||
|
||||
if (oldbit != newbit)
|
||||
output().set_lamp_value(off + i, newbit != 0);
|
||||
}
|
||||
|
||||
m_lamps_old[offset] = data;
|
||||
|
||||
g_profiler.stop();
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
@ -657,8 +667,6 @@ READ8_MEMBER(bfm_sc2_state::mux_input_r)
|
||||
{
|
||||
int result = 0xFF,t1,t2;
|
||||
|
||||
required_ioport m_strobein[12] = { m_strobein0, m_strobein1, m_strobein2, m_strobein3, m_strobein4, m_strobein5, m_strobein6, m_strobein7, m_strobein8, m_strobein9, m_strobein10, m_strobein11 };
|
||||
|
||||
if (offset < 8)
|
||||
{
|
||||
int idx = (offset & 4) ? 4 : 8;
|
||||
@ -713,7 +721,11 @@ WRITE8_MEMBER(bfm_sc2_state::volume_override_w)
|
||||
|
||||
if ( old != m_volume_override )
|
||||
{
|
||||
ym2413_device *ym = machine().device<ym2413_device>("ymsnd");
|
||||
ym2413_device *ym = m_ym2413;
|
||||
|
||||
if (!m_ym2413)
|
||||
return;
|
||||
|
||||
float percent = m_volume_override? 1.0f : (32-m_global_volume)/32.0f;
|
||||
|
||||
ym->set_output_gain(0, percent);
|
||||
@ -809,12 +821,16 @@ WRITE8_MEMBER(bfm_sc2_state::expansion_latch_w)
|
||||
}
|
||||
|
||||
{
|
||||
ym2413_device *ym = machine().device<ym2413_device>("ymsnd");
|
||||
float percent = m_volume_override ? 1.0f : (32-m_global_volume)/32.0f;
|
||||
ym2413_device *ym = m_ym2413;
|
||||
|
||||
ym->set_output_gain(0, percent);
|
||||
ym->set_output_gain(1, percent);
|
||||
m_upd7759->set_output_gain(0, percent);
|
||||
if (m_ym2413)
|
||||
{
|
||||
float percent = m_volume_override ? 1.0f : (32 - m_global_volume) / 32.0f;
|
||||
|
||||
ym->set_output_gain(0, percent);
|
||||
ym->set_output_gain(1, percent);
|
||||
m_upd7759->set_output_gain(0, percent);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3695,10 +3711,12 @@ static MACHINE_CONFIG_START( scorpion2, bfm_sc2_state )
|
||||
MCFG_FRAGMENT_ADD(_8meters)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
#if 0
|
||||
static MACHINE_CONFIG_DERIVED( scorpion2_3m, scorpion2 )
|
||||
MCFG_DEVICE_REMOVE("meters")
|
||||
MCFG_FRAGMENT_ADD(_3meters)
|
||||
MACHINE_CONFIG_END
|
||||
#endif
|
||||
|
||||
/* machine driver for scorpion3 board */
|
||||
static MACHINE_CONFIG_DERIVED( scorpion3, scorpion2 )
|
||||
@ -5301,7 +5319,7 @@ ROM_START( sc2cpe3 )
|
||||
ROM_LOAD( "club-public-enemy-no1_std_ac_200pnd_ass.bin", 0x0000, 0x010000, CRC(5704e52d) SHA1(dfae48734794cea2e9a952d808dedb96fd5204b3) )
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "matrix.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // seems to be from a cops+robbers instead, will say 'wrong display prom' during attract cycle
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // WRONG this is from cops and robbers
|
||||
|
||||
sc2_cpe_sound_alt2
|
||||
ROM_END
|
||||
@ -5311,7 +5329,7 @@ ROM_START( sc2cpe3p )
|
||||
ROM_LOAD( "club-public-enemy-no1_dat_ac_200pnd_ass.bin", 0x0000, 0x010000, CRC(fec925a3) SHA1(5ce3b6f1236f511ae8975c7ecd1549e8d427a245) )
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "matrix.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // see above comment
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // see above comment
|
||||
|
||||
sc2_cpe_sound_alt2
|
||||
ROM_END
|
||||
@ -5321,7 +5339,7 @@ ROM_START( sc2cpe4 )
|
||||
ROM_LOAD( "95750273.p1", 0x0000, 0x010000, CRC(950da13c) SHA1(2c544e06112969f7914a5b4fd15e6b0dfedf6b0b) )
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "matrix.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // see above comment
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // see above comment
|
||||
|
||||
sc2_cpe_sound_alt2
|
||||
ROM_END
|
||||
@ -5331,7 +5349,7 @@ ROM_START( sc2cpe4p )
|
||||
ROM_LOAD( "club-public-enemy-no1_dat_fe_ac_200pnd_p65_rot_ass.bin", 0x0000, 0x010000, CRC(8d5ff953) SHA1(bdf6b5e014c46f6abac792a5913e98cb897b2a73) )
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "matrix.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // see above comment
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) ) // see above comment
|
||||
|
||||
sc2_cpe_sound_alt2
|
||||
ROM_END
|
||||
@ -5481,120 +5499,180 @@ ROM_START( sc2copcl )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_250pnd-25p_phx_ass.bin", 0x0000, 0x010000, CRC(668def2e) SHA1(802ca565a20d0fce2f5e4340c646429af6aadff6) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copclp )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_ac_250pnd-25p_phx_ass.bin", 0x0000, 0x010000, CRC(f6e9a013) SHA1(02b6c203c3facdd7015ba1119bcb70bf34b4ec00) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl1 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_250pnd-20p_rot_ass.bin", 0x0000, 0x010000, CRC(078651b5) SHA1(2acc45e5d66625753e5869f6f3ac1379d0c9dfcd) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl1p )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_ac_250pnd-20p_rot_ass.bin", 0x0000, 0x010000, CRC(05635f8b) SHA1(d3cf98e3858189db725621d4ba07728a585d7a3b) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl2 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_250pnd-20p_ass.bin", 0x0000, 0x010000, CRC(229c65c1) SHA1(8052c4b8702275235545807e7b075571fc97d4f3) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl3 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_fe_ac_p67_ass.bin", 0x0000, 0x010000, CRC(4906d170) SHA1(c304a2986560d675b2e776965fdf444e4d56f104) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl3p )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_fe_ac_p67_ass.bin", 0x0000, 0x010000, CRC(327db998) SHA1(aa8583cedd52a3cd06be6423a32e48273ec6218a) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl4 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_var_p65_ass.bin", 0x0000, 0x010000, CRC(23d80392) SHA1(d7f5bab4fc8f42c1a38e26b54bc519e0f03d20bc) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl5 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_fe_ac_p63_ass.bin", 0x0000, 0x010000, CRC(fc7f9b85) SHA1(d9f940bca29919d097fa7d128869725e01d6dbc3) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl6 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_200pnd-20p_ass.bin", 0x0000, 0x010000, CRC(214cda40) SHA1(fc585f211256495bfaaa6cb6c4d9c8a110ab5051) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl6p )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_ac_200pnd-20p_ass.bin", 0x0000, 0x010000, CRC(b4071611) SHA1(2596ccee2b94bb56aa629ee892bd357b706005b0) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl7 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_var_200pnd_ijf_ass.bin", 0x0000, 0x010000, CRC(db5a287e) SHA1(5615480767348061b7f08a709a16aa0b9cf0658e) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl8 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_ffp_ass.bin", 0x0000, 0x010000, CRC(347255bf) SHA1(7f96277579e68bdf1e21788cc5e35941d98df87f) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl8p )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_ac_ffp_ass.bin", 0x0000, 0x010000, CRC(ec92b62d) SHA1(f10bc8fa55cd59127f179a35a61c1a57597856b6) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl9 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_fe_ac_ass.bin", 0x0000, 0x010000, CRC(c7461e95) SHA1(f4088056e848742d3795f5b067476b56071f99bd) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl9p )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_fe_ac_ass.bin", 0x0000, 0x010000, CRC(ead8cbe5) SHA1(5594eb9a736e0f15a6f0f097a8cbbd8352e46fc4) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl10 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_std_ac_npr_ass.bin", 0x0000, 0x010000, CRC(b9c0bcb4) SHA1(c1a398bd58097411b80d36030760e7820dc346f4) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl11 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "cops200", 0x0000, 0x010000, CRC(05d29adc) SHA1(06a986356c1b48ad5ee92c9a7f6fb2531e1806af) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl11p )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "club-cops-and-robbers_dat_fr_ac_p63_ass.bin", 0x0000, 0x010000, CRC(93965bfc) SHA1(52af75234f56a77f082132d9532d3ffcaef5d271) )
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copcl12 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "premier-club-manager_dat_ac_250pnd-25p_ass.bin", 0x0000, 0x010000, CRC(6446176c) SHA1(17cccc00d443ffde11943ebda112ef1e79134455) ) // filename is wrong, this is a club cops n robbers
|
||||
sc2_copcl_sound
|
||||
|
||||
ROM_REGION( 0x20000, "dm01:matrix", 0 )
|
||||
ROM_LOAD( "95000569.bin", 0x0000, 0x010000, CRC(64014f73) SHA1(67d44db91944738fcadc38bfd0d2b7c0536adb9a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sc2copdc )
|
||||
@ -7749,37 +7827,37 @@ GAME( 199?, sc2gsclb6p , sc2gsclb , scorpion2 , drwho , bfm_sc2_st
|
||||
********************************************************************************************************************************************************************************************************************/
|
||||
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS - 20-JUL-1993 15:15:32
|
||||
GAMEL( 199?, sc2copcl11 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 1, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-118
|
||||
GAMEL( 199?, sc2copcl11 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 1, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-118
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS 150 POUND JACKPOT - 16-NOV-1993 12:34:10
|
||||
GAMEL( 199?, sc2copcl1 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 2, UK, 250GBP Jackpot) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-154
|
||||
GAMEL( 199?, sc2copcl1p , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 2, UK, 250GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-154
|
||||
GAMEL( 199?, sc2copcl1 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 2, UK, 250GBP Jackpot) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-154
|
||||
GAMEL( 199?, sc2copcl1p , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 2, UK, 250GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-154
|
||||
// PROJECT NUMBER PR6231 CLUB COPS AND ROBBERS FIXED 65% - 16-NOV-1993 12:35:38
|
||||
GAMEL( 199?, sc2copcl4 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 3, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-156
|
||||
GAMEL( 199?, sc2copcl4 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 3, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-156
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS - 16-NOV-1993 12:39:31
|
||||
GAMEL( 199?, sc2copcl6 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 4, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-153
|
||||
GAMEL( 199?, sc2copcl6p , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 4, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-153
|
||||
GAMEL( 199?, sc2copcl6 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 4, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-153
|
||||
GAMEL( 199?, sc2copcl6p , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 4, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-153
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS GENEROUS 5P - 20-JAN-1994 11:13:45
|
||||
GAMEL( 199?, sc2copcl7 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 5, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-190
|
||||
GAMEL( 199?, sc2copcl7 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 5, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-190
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS - 4-AUG-1994 16:23:21
|
||||
GAMEL( 199?, sc2copcl10 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 6, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-268
|
||||
GAMEL( 199?, sc2copcl10 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 6, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-268
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS SEALINK VERSION - 22-MAY-1995 11:47:58
|
||||
GAMEL( 199?, sc2copcl9 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 7, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-409
|
||||
GAMEL( 199?, sc2copcl9p , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 7, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-409
|
||||
GAMEL( 199?, sc2copcl9 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 7, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-409
|
||||
GAMEL( 199?, sc2copcl9p , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 7, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-409
|
||||
// PROJECT NUMBER 6231 CLUB COPS AND ROBBERS GENEROUS 5P NPO - 2-FEB-1996 12:39:22
|
||||
GAMEL( 199?, sc2copcl8 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 8, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-628
|
||||
GAMEL( 199?, sc2copcl8p , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 8, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-628
|
||||
GAMEL( 199?, sc2copcl8 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 8, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-628
|
||||
GAMEL( 199?, sc2copcl8p , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 8, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-628
|
||||
// PROJECT NUMBER PR6231 CLUB COPS AND ROBBERS 25P/#250 - 2-SEP-1996 17:17:50
|
||||
GAMEL( 199?, sc2copcl , 0 , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 9, UK, 250GBP Jackpot) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-859
|
||||
GAMEL( 199?, sc2copclp , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 9, UK, 250GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-859
|
||||
GAMEL( 199?, sc2copcl , 0 , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 9, UK, 250GBP Jackpot) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-859
|
||||
GAMEL( 199?, sc2copclp , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 9, UK, 250GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-859
|
||||
// PROJECT NUMBER PR6231 CLUB COPS AND ROBBERS 20P/#250 - 2-SEP-1996 17:26:44
|
||||
GAMEL( 199?, sc2copcl2 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 10, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-858
|
||||
GAMEL( 199?, sc2copcl12 , sc2copcl , scorpion2_3m , drwho , bfm_sc2_state, prom , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 10, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-858
|
||||
GAMEL( 199?, sc2copcl2 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 10, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-750-858
|
||||
GAMEL( 199?, sc2copcl12 , sc2copcl , scorpion2_dm01_3m , drwho , bfm_sc2_state, prom , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 10, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-751-858
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS NPO 63% SEALINK VERSION - 5-JAN-1998 11:53:49
|
||||
GAMEL( 199?, sc2copcl5 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 11, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-752-015
|
||||
GAMEL( 199?, sc2copcl11p , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 11, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-753-015
|
||||
GAMEL( 199?, sc2copcl5 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 11, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-752-015
|
||||
GAMEL( 199?, sc2copcl11p , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 11, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-753-015
|
||||
// PROJECT PR6231 CLUB COPS AND ROBBERS NPO 67% SEALINK VERSION - 5-JAN-1998 11:56:01
|
||||
GAMEL( 199?, sc2copcl3 , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 12, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-752-014
|
||||
GAMEL( 199?, sc2copcl3p , sc2copcl , scorpion2 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 12, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-753-014
|
||||
GAMEL( 199?, sc2copcl3 , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 12, UK) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-752-014
|
||||
GAMEL( 199?, sc2copcl3p , sc2copcl , scorpion2_dm01 , drwho , bfm_sc2_state, drwho , 0, "BFM", "Cops 'n' Robbers Club (Bellfruit) (set 12, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS, layout_sc2copcl7) // GAME No 95-753-014
|
||||
|
||||
|
||||
/********************************************************************************************************************************************************************************************************************
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -57,6 +57,8 @@ const device_type BF_DM01 = &device_creator<bfmdm01_device>;
|
||||
bfmdm01_device::bfmdm01_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, BF_DM01, "BFM Dotmatrix 01", tag, owner, clock, "bfm_dm01", __FILE__),
|
||||
m_matrixcpu(*this, "matrix"),
|
||||
m_screen(*this, "dmd"),
|
||||
m_palette(*this, "palette_lcd"),
|
||||
m_data_avail(0),
|
||||
m_control(0),
|
||||
m_xcounter(0),
|
||||
@ -77,6 +79,12 @@ bfmdm01_device::bfmdm01_device(const machine_config &mconfig, const char *tag, d
|
||||
|
||||
void bfmdm01_device::device_start()
|
||||
{
|
||||
if(!m_screen->started())
|
||||
throw device_missing_dependencies();
|
||||
|
||||
if(!m_palette->started())
|
||||
throw device_missing_dependencies();
|
||||
|
||||
m_busy_cb.resolve_safe();
|
||||
|
||||
save_item(NAME(m_data_avail));
|
||||
@ -90,8 +98,15 @@ void bfmdm01_device::device_start()
|
||||
|
||||
for (int i = 0; i < DM_BYTESPERROW; i++)
|
||||
save_item(NAME(m_scanline), i);
|
||||
|
||||
m_screen->register_screen_bitmap(m_tmpbitmap);
|
||||
m_palette->set_pen_color(0, rgb_t(10, 5, 0));
|
||||
m_palette->set_pen_color(1, rgb_t(100, 50, 0));
|
||||
m_palette->set_pen_color(2, rgb_t(255, 127, 0));
|
||||
}
|
||||
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_reset - device-specific reset
|
||||
//-------------------------------------------------
|
||||
@ -162,6 +177,8 @@ READ8_MEMBER( bfmdm01_device::mux_r )
|
||||
|
||||
WRITE8_MEMBER( bfmdm01_device::mux_w )
|
||||
{
|
||||
g_profiler.start(PROFILER_USER2);
|
||||
|
||||
if ( m_xcounter < DM_BYTESPERROW )
|
||||
{
|
||||
m_scanline[m_xcounter] = data;
|
||||
@ -190,16 +207,19 @@ WRITE8_MEMBER( bfmdm01_device::mux_w )
|
||||
p++;
|
||||
}
|
||||
|
||||
g_profiler.start(PROFILER_USER1);
|
||||
|
||||
UINT16* pix = &m_tmpbitmap.pix16(row*2);
|
||||
UINT16* pix2 = &m_tmpbitmap.pix16((row*2)+1);
|
||||
for (int pos=0;pos<65;pos++)
|
||||
{
|
||||
machine().output().set_indexed_value("dotmatrix", pos +(65*row), m_segbuffer[(pos)]);
|
||||
}
|
||||
|
||||
g_profiler.stop();
|
||||
pix[0 + (pos * 2)] = m_segbuffer[(pos)]+1;
|
||||
pix[1 + (pos * 2)] = 0;
|
||||
pix2[0 + (pos * 2)] = 0;
|
||||
pix2[1 + (pos * 2)] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
g_profiler.stop();
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
@ -253,6 +273,15 @@ ADDRESS_MAP_START( bfm_dm01_memmap, AS_PROGRAM, 8, bfmdm01_device )
|
||||
AM_RANGE(0x4000, 0xFfff) AM_ROM // 48k ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
UINT32 bfmdm01_device::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
|
||||
{
|
||||
copybitmap(bitmap, m_tmpbitmap, 0, 0, 0, 0, cliprect);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
INTERRUPT_GEN_MEMBER( bfmdm01_device::nmi_line_assert )
|
||||
{
|
||||
m_matrixcpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
|
||||
@ -263,7 +292,16 @@ static MACHINE_CONFIG_FRAGMENT( bdmdm01 )
|
||||
MCFG_CPU_PROGRAM_MAP(bfm_dm01_memmap)
|
||||
MCFG_CPU_PERIODIC_INT_DRIVER(bfmdm01_device, nmi_line_assert, 1500 ) /* generate 1500 NMI's per second ?? what is the exact freq?? */
|
||||
|
||||
MCFG_PALETTE_ADD("palette_lcd", 3)
|
||||
|
||||
MCFG_SCREEN_ADD("dmd", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
|
||||
MCFG_SCREEN_SIZE(65*2, 21*2)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 65*2-1, 0, 21*2-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(bfmdm01_device, screen_update)
|
||||
|
||||
MCFG_SCREEN_PALETTE("palette_lcd")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
machine_config_constructor bfmdm01_device::device_mconfig_additions() const
|
||||
|
@ -35,6 +35,8 @@ public:
|
||||
|
||||
INTERRUPT_GEN_MEMBER(nmi_line_assert);
|
||||
|
||||
UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
@ -43,6 +45,8 @@ protected:
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_matrixcpu;
|
||||
required_device<screen_device> m_screen;
|
||||
required_device<palette_device> m_palette;
|
||||
|
||||
// internal state
|
||||
int m_data_avail;
|
||||
@ -57,6 +61,8 @@ private:
|
||||
devcb_write_line m_busy_cb;
|
||||
|
||||
int read_data(void);
|
||||
|
||||
bitmap_ind16 m_tmpbitmap;
|
||||
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user