Previous 199869 Revisions Next

r32437 Saturday 27th September, 2014 at 21:00:01 UTC by Robbbert
s6.c : Gorgar Speaks!
Gorgar, Blackout marked as working.
[src/mame/drivers]s6.c

trunk/src/mame/drivers/s6.c
r32436r32437
22// copyright-holders:Robbbert
33/***********************************************************************************
44
5    PINBALL
6    Williams System 6
5  PINBALL
6  Williams System 6
77
8    After starting a game, nothing much works.
9
10
118Each game has its own switches, you need to know the outhole and slam-tilt ones.
129Note that T is also a tilt, but it may take 3 hits to activate it.
1310
r32436r32437
2421Blackout      X         Backspace
2522Firepower     unknown
2623
24Blackout: wait for the background sound before attempting to score.
2725
28
2926ToDo:
30- Speech not working in-game (works with test button)
27- Diagnostic mode freezes
3128- Mechanical sounds
3229- Blackout: slow response at times
3330- Firepower: unable to start / unknown key combo?
r32436r32437
7370   DECLARE_WRITE8_MEMBER(pias_pb_w) { }; // dummy to stop log filling up
7471   DECLARE_READ_LINE_MEMBER(pia28_ca1_r);
7572   DECLARE_READ_LINE_MEMBER(pia28_cb1_r);
76   DECLARE_WRITE_LINE_MEMBER(pias_ca2_w);
77   DECLARE_WRITE_LINE_MEMBER(pias_cb2_w);
7873   DECLARE_WRITE_LINE_MEMBER(pia22_ca2_w) { }; //ST5
7974   DECLARE_WRITE_LINE_MEMBER(pia22_cb2_w) { }; //ST-solenoids enable
8075   DECLARE_WRITE_LINE_MEMBER(pia24_ca2_w) { }; //ST2
r32436r32437
193188   PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
194189
195190   PORT_START("SND")
196   PORT_BIT( 0xbf, IP_ACTIVE_LOW, IPT_UNUSED )
191   PORT_BIT( 0x9f, IP_ACTIVE_LOW, IPT_UNUSED )
192   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Speech") PORT_CODE(KEYCODE_3) PORT_TOGGLE
197193   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Music") PORT_CODE(KEYCODE_4) PORT_TOGGLE
198194
199195   PORT_START("DIAGS")
r32436r32437
299295   if (BIT(data, 4))
300296      sound_data &= 0xef;
301297
302   bool cb1 = ((sound_data & 0xbf) != 0xbf);
298   bool cb1 = ((sound_data & 0x9f) != 0x9f);
303299
304300   if (cb1)
305301      m_sound_data = sound_data;
r32436r32437
379375   m_kbdrow = data;
380376}
381377
382WRITE_LINE_MEMBER( s6_state::pias_cb2_w )
383{
384// speech clock
385   m_hc55516->clock_w(state);
386}
387
388WRITE_LINE_MEMBER( s6_state::pias_ca2_w )
389{
390// speech data
391   m_hc55516->digit_w(state);
392}
393
394378READ8_MEMBER( s6_state::dac_r )
395379{
396380   return m_sound_data;
r32436r32437
469453   MCFG_PIA_READPB_HANDLER(READ8(s6_state, dac_r))
470454   MCFG_PIA_WRITEPA_HANDLER(DEVWRITE8("dac", dac_device, write_unsigned8))
471455   MCFG_PIA_WRITEPB_HANDLER(WRITE8(s6_state, pias_pb_w))
472   MCFG_PIA_CA2_HANDLER(WRITELINE(s6_state, pias_ca2_w))
473   MCFG_PIA_CB2_HANDLER(WRITELINE(s6_state, pias_cb2_w))
456   MCFG_PIA_CA2_HANDLER(DEVWRITELINE("hc55516", hc55516_device, digit_w))
457   MCFG_PIA_CB2_HANDLER(DEVWRITELINE("hc55516", hc55516_device, clock_w))
474458   MCFG_PIA_IRQA_HANDLER(DEVWRITELINE("audioroms", m6802_cpu_device, irq_line))
475459   MCFG_PIA_IRQB_HANDLER(DEVWRITELINE("audioroms", m6802_cpu_device, irq_line))
476460MACHINE_CONFIG_END
r32436r32437
652636GAME( 1980, lzbal_t2, lzbal_l2, s6, s6, driver_device, 0, ROT0, "Williams", "Laser Ball (T-2)", GAME_MECHANICAL )
653637GAME( 1980, scrpn_l1, 0,        s6, s6, driver_device, 0, ROT0, "Williams", "Scorpion (L-1)", GAME_MECHANICAL )
654638GAME( 1980, scrpn_t1, scrpn_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Scorpion (T-1)", GAME_MECHANICAL )
655GAME( 1979, blkou_l1, 0,        s6, s6, driver_device, 0, ROT0, "Williams", "Blackout (L-1)", GAME_MECHANICAL | GAME_IMPERFECT_SOUND)
656GAME( 1979, blkou_t1, blkou_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Blackout (T-1)", GAME_MECHANICAL | GAME_IMPERFECT_SOUND)
657GAME( 1979, blkou_f1, blkou_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Blackout (L-1, French Speech)", GAME_MECHANICAL | GAME_IMPERFECT_SOUND)
658GAME( 1979, grgar_l1, 0,        s6, s6, driver_device, 0, ROT0, "Williams", "Gorgar (L-1)", GAME_MECHANICAL | GAME_IMPERFECT_SOUND)
659GAME( 1979, grgar_t1, grgar_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Gorgar (T-1)", GAME_MECHANICAL | GAME_IMPERFECT_SOUND)
639GAME( 1979, blkou_l1, 0,        s6, s6, driver_device, 0, ROT0, "Williams", "Blackout (L-1)", GAME_MECHANICAL )
640GAME( 1979, blkou_t1, blkou_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Blackout (T-1)", GAME_MECHANICAL )
641GAME( 1979, blkou_f1, blkou_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Blackout (L-1, French Speech)", GAME_MECHANICAL )
642GAME( 1979, grgar_l1, 0,        s6, s6, driver_device, 0, ROT0, "Williams", "Gorgar (L-1)", GAME_MECHANICAL )
643GAME( 1979, grgar_t1, grgar_l1, s6, s6, driver_device, 0, ROT0, "Williams", "Gorgar (T-1)", GAME_MECHANICAL )
660644GAME( 1980, frpwr_l6, 0,        s6, s6, driver_device, 0, ROT0, "Williams", "Firepower (L-6)", GAME_MECHANICAL | GAME_NOT_WORKING | GAME_NO_SOUND)
661645GAME( 1980, frpwr_t6, frpwr_l6, s6, s6, driver_device, 0, ROT0, "Williams", "Firepower (T-6)", GAME_MECHANICAL | GAME_NOT_WORKING | GAME_NO_SOUND)
662646GAME( 1980, frpwr_l2, frpwr_l6, s6, s6, driver_device, 0, ROT0, "Williams", "Firepower (L-2)", GAME_MECHANICAL | GAME_NOT_WORKING | GAME_NO_SOUND)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team