diff --git a/src/mame/drivers/cgang.cpp b/src/mame/drivers/cgang.cpp index 811c0346a04..88030b36832 100644 --- a/src/mame/drivers/cgang.cpp +++ b/src/mame/drivers/cgang.cpp @@ -95,6 +95,7 @@ public: m_ticket(*this, "ticket"), m_adpcm(*this, "adpcm%u", 0), m_ymsnd(*this, "ymsnd"), + m_spot(*this, "spot"), m_digits(*this, "digits"), m_fake(*this, "FAKE%u", 1), m_conf(*this, "CONF1"), @@ -129,6 +130,7 @@ private: required_device m_ticket; required_device_array m_adpcm; required_device m_ymsnd; + required_device m_spot; required_device m_digits; required_ioport_array<2> m_fake; required_ioport m_conf; @@ -173,6 +175,7 @@ private: template DECLARE_WRITE8_MEMBER(adpcm_w); DECLARE_WRITE8_MEMBER(spot_w); + DECLARE_WRITE8_MEMBER(output_spot_w) { m_spot_lamps[offset >> 6] = data; } DECLARE_WRITE8_MEMBER(ppi5_a_w); DECLARE_WRITE8_MEMBER(ppi5_b_w); @@ -543,8 +546,9 @@ WRITE8_MEMBER(cgang_state::spot_w) { // d0-d2: ufo boss spotlights // d3-d7: cosmo spotlights + // it strobes them for dimming for (int i = 0; i < 8; i++) - m_spot_lamps[i] = BIT(data, i); + m_spot->matrix(1, data); } WRITE8_MEMBER(cgang_state::ppi5_a_w) @@ -808,6 +812,10 @@ void cgang_state::cgang(machine_config &config) PWM_DISPLAY(config, m_digits).set_size(10, 7); m_digits->set_segmask(0x3ff, 0x7f); + PWM_DISPLAY(config, m_spot).set_size(1, 8); + m_spot->output_x().set(FUNC(cgang_state::output_spot_w)); + m_spot->set_bri_levels(0.0576, 0.144, 0.36, 0.9); // dimmed lights + config.set_default_layout(layout_cgang); /* sound hardware */ @@ -851,4 +859,4 @@ ROM_END ******************************************************************************/ /* YEAR NAME PARENT MACHINE INPUT CLASS INIT MONITOR COMPANY, FULLNAME, FLAGS */ -GAME( 1990, cgang, 0, cgang, cgang, cgang_state, empty_init, ROT0, "Namco (Data East license)", "Cosmo Gang (US)", MACHINE_SUPPORTS_SAVE | MACHINE_MECHANICAL | MACHINE_CLICKABLE_ARTWORK | MACHINE_NOT_WORKING ) +GAME( 1990, cgang, 0, cgang, cgang, cgang_state, empty_init, ROT0, "Namco (Data East license)", "Cosmo Gang (US)", MACHINE_SUPPORTS_SAVE | MACHINE_MECHANICAL | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_CONTROLS | MACHINE_NOT_WORKING ) diff --git a/src/mame/layout/cgang.lay b/src/mame/layout/cgang.lay index ea414dcfb82..02956627c2f 100644 --- a/src/mame/layout/cgang.lay +++ b/src/mame/layout/cgang.lay @@ -1,259 +1,633 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + +