Previous 199869 Revisions Next

r19697 Thursday 20th December, 2012 at 09:57:03 UTC by Barry Rodewald
s11a:  Hooked up background music board communication, and implemented music board banking.
[src/mame/drivers]s11a.c

trunk/src/mame/drivers/s11a.c
r19696r19697
77
88
99ToDo:
10- Can coin up but not start
1110- Doesn't react to the Advance button very well
1211- Some LEDs flicker
1312- Diagnostic LED blinks constantly
1413
14Note: To start a game, certain switches need to be activated.  You must first press and
15      hold one of the trough switches (usually the left) and the ball shooter switch for
16      about 1 second.  Then you are able to start a game.
17      Example: For Pinbot, you must hold L and V for a second, then press start.
18
1519*****************************************************************************************/
1620
1721
r19696r19697
4953   DECLARE_READ8_MEMBER(dac_r);
5054   DECLARE_WRITE8_MEMBER(dac_w);
5155   DECLARE_WRITE8_MEMBER(bank_w);
56   DECLARE_WRITE8_MEMBER(bgbank_w);
5257   DECLARE_WRITE8_MEMBER(dig0_w);
5358   DECLARE_WRITE8_MEMBER(dig1_w);
5459   DECLARE_WRITE8_MEMBER(lamp0_w);
r19696r19697
134139   AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM
135140   AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
136141   AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia40", pia6821_device, read, write)
137   AM_RANGE(0x8000, 0xffff) AM_ROM
142   AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bgbank")
138143ADDRESS_MAP_END
139144
140145static INPUT_PORTS_START( s11a )
r19696r19697
221226{
222227   membank("bank0")->set_entry(0);
223228   membank("bank1")->set_entry(0);
229   membank("bgbank")->set_entry(0);
224230}
225231
226232INPUT_CHANGED_MEMBER( s11a_state::main_nmi )
r19696r19697
433439
434440WRITE8_MEMBER( s11a_state::pia34_pb_w )
435441{
442   m_pia40->portb_w(data);
443   m_pia40->cb1_w(1);
444   m_pia40->cb1_w(0);
436445}
437446
438447static const pia6821_interface pia34_intf =
r19696r19697
457466   membank("bank1")->set_entry(BIT(data, 0));
458467}
459468
469WRITE8_MEMBER( s11a_state::bgbank_w )
470{
471   membank("bgbank")->set_entry(BIT(data, 0));
472}
473
460474READ_LINE_MEMBER( s11a_state::pias_ca1_r )
461475{
462476   return m_ca1;
r19696r19697
513527static const pia6821_interface pia40_intf =
514528{
515529   DEVCB_NULL,      /* port A in */
516   DEVCB_DRIVER_MEMBER(s11a_state, dac_r),      /* port B in */
530   DEVCB_NULL,      /* port B in */
517531   DEVCB_DRIVER_LINE_MEMBER(s11a_state, pias_ca1_r),      /* line CA1 in */
518532   DEVCB_NULL,      /* line CB1 in */
519533   DEVCB_LINE_VCC,      /* line CA2 in */
r19696r19697
529543DRIVER_INIT_MEMBER( s11a_state, s11a )
530544{
531545   UINT8 *ROM = memregion("audiocpu")->base();
546   UINT8 *BGROM = memregion("bgcpu")->base();
532547   membank("bank0")->configure_entries(0, 2, &ROM[0x10000], 0x4000);
533548   membank("bank1")->configure_entries(0, 2, &ROM[0x18000], 0x4000);
549   membank("bgbank")->configure_entries(0, 2, &BGROM[0x10000], 0x8000);
534550   membank("bank0")->set_entry(0);
535551   membank("bank1")->set_entry(0);
552   membank("bgbank")->set_entry(0);
536553}
537554
538555TIMER_DEVICE_CALLBACK_MEMBER( s11a_state::irq)
r19696r19697
606623   ROM_LOAD("f14_u22.l1", 0x10000, 0x8000, CRC(c9dd7496) SHA1(de3cb855d87033274cc912578b02d1593d2d69f9))
607624
608625   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
609   ROM_LOAD("f14_u4.l1", 0x08000, 0x8000, CRC(43ecaabf) SHA1(64b50dbff03cd556130d0cff47b951fdf37d397d))
610   ROM_LOAD("f14_u19.l1", 0x10000, 0x8000, CRC(d0de4a7c) SHA1(46ecd5786653add47751cc56b38d9db7c4622377))
626   ROM_LOAD("f14_u4.l1", 0x10000, 0x8000, CRC(43ecaabf) SHA1(64b50dbff03cd556130d0cff47b951fdf37d397d))
627   ROM_LOAD("f14_u19.l1", 0x18000, 0x8000, CRC(d0de4a7c) SHA1(46ecd5786653add47751cc56b38d9db7c4622377))
611628ROM_END
612629
613630ROM_START(f14_p4)
r19696r19697
620637   ROM_LOAD("f14_u22.l1", 0x10000, 0x8000, CRC(c9dd7496) SHA1(de3cb855d87033274cc912578b02d1593d2d69f9))
621638
622639   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
623   ROM_LOAD("f14_u4.l1", 0x08000, 0x8000, CRC(43ecaabf) SHA1(64b50dbff03cd556130d0cff47b951fdf37d397d))
624   ROM_LOAD("f14_u19.l1", 0x10000, 0x8000, CRC(d0de4a7c) SHA1(46ecd5786653add47751cc56b38d9db7c4622377))
640   ROM_LOAD("f14_u4.l1", 0x10000, 0x8000, CRC(43ecaabf) SHA1(64b50dbff03cd556130d0cff47b951fdf37d397d))
641   ROM_LOAD("f14_u19.l1", 0x18000, 0x8000, CRC(d0de4a7c) SHA1(46ecd5786653add47751cc56b38d9db7c4622377))
625642ROM_END
626643
627644ROM_START(f14_l1)
r19696r19697
634651   ROM_LOAD("f14_u22.l1", 0x10000, 0x8000, CRC(c9dd7496) SHA1(de3cb855d87033274cc912578b02d1593d2d69f9))
635652
636653   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
637   ROM_LOAD("f14_u4.l1", 0x08000, 0x8000, CRC(43ecaabf) SHA1(64b50dbff03cd556130d0cff47b951fdf37d397d))
638   ROM_LOAD("f14_u19.l1", 0x10000, 0x8000, CRC(d0de4a7c) SHA1(46ecd5786653add47751cc56b38d9db7c4622377))
654   ROM_LOAD("f14_u4.l1", 0x10000, 0x8000, CRC(43ecaabf) SHA1(64b50dbff03cd556130d0cff47b951fdf37d397d))
655   ROM_LOAD("f14_u19.l1", 0x18000, 0x8000, CRC(d0de4a7c) SHA1(46ecd5786653add47751cc56b38d9db7c4622377))
639656ROM_END
640657
641658/*--------------------
r19696r19697
651668   ROM_LOAD("fire_u22.l2", 0x10000, 0x8000, CRC(16145c97) SHA1(523e99df3907a2c843c6e27df4d16799c4136a46))
652669
653670   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
654   ROM_LOAD("fire_u4.l1", 0x8000, 0x8000, CRC(0e058918) SHA1(4d6bf2290141119174787f8dd653c47ea4c73693))
671   ROM_LOAD("fire_u4.l1", 0x10000, 0x8000, CRC(0e058918) SHA1(4d6bf2290141119174787f8dd653c47ea4c73693))
655672ROM_END
656673
657674/*--------------------------------------
r19696r19697
671688   ROM_LOAD("mill_u22.l1", 0x10000, 0x8000, CRC(73735cfc) SHA1(f74c873a20990263e0d6b35609fc51c08c9f8e31))
672689
673690   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
674   ROM_LOAD("mill_u4.l1", 0x08000, 0x8000, CRC(cf766506) SHA1(a6e4df19a513102abbce2653d4f72245f54407b1))
675   ROM_LOAD("mill_u19.l1", 0x10000, 0x8000, CRC(e073245a) SHA1(cbaddde6bb19292ace574a8329e18c97c2ee9763))
691   ROM_LOAD("mill_u4.l1", 0x10000, 0x8000, CRC(cf766506) SHA1(a6e4df19a513102abbce2653d4f72245f54407b1))
692   ROM_LOAD("mill_u19.l1", 0x18000, 0x8000, CRC(e073245a) SHA1(cbaddde6bb19292ace574a8329e18c97c2ee9763))
676693ROM_END
677694
678695/*--------------------
r19696r19697
688705   ROM_LOAD("pbot_u22.l1", 0x10000, 0x8000, CRC(a2d2c9cb) SHA1(46437dc54538f1626caf41a2818ddcf8000c44e4))
689706
690707   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
691   ROM_LOAD("pbot_u4.l1", 0x08000, 0x8000, CRC(de5926bd) SHA1(3d111e27c5f0c8c0afc5fe5cc45bf77c12b69228))
692   ROM_LOAD("pbot_u19.l1", 0x10000, 0x8000, CRC(40eb4e9f) SHA1(07b0557b35599a2dd5aa66a306fbbe8f50eed998))
708   ROM_LOAD("pbot_u4.l1", 0x10000, 0x8000, CRC(de5926bd) SHA1(3d111e27c5f0c8c0afc5fe5cc45bf77c12b69228))
709   ROM_LOAD("pbot_u19.l1", 0x18000, 0x8000, CRC(40eb4e9f) SHA1(07b0557b35599a2dd5aa66a306fbbe8f50eed998))
693710ROM_END
694711
695712ROM_START(pb_l2)
r19696r19697
702719   ROM_LOAD("pbot_u22.l1", 0x10000, 0x8000, CRC(a2d2c9cb) SHA1(46437dc54538f1626caf41a2818ddcf8000c44e4))
703720
704721   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
705   ROM_LOAD("pbot_u4.l1", 0x08000, 0x8000, CRC(de5926bd) SHA1(3d111e27c5f0c8c0afc5fe5cc45bf77c12b69228))
706   ROM_LOAD("pbot_u19.l1", 0x10000, 0x8000, CRC(40eb4e9f) SHA1(07b0557b35599a2dd5aa66a306fbbe8f50eed998))
722   ROM_LOAD("pbot_u4.l1", 0x10000, 0x8000, CRC(de5926bd) SHA1(3d111e27c5f0c8c0afc5fe5cc45bf77c12b69228))
723   ROM_LOAD("pbot_u19.l1", 0x18000, 0x8000, CRC(40eb4e9f) SHA1(07b0557b35599a2dd5aa66a306fbbe8f50eed998))
707724ROM_END
708725
709726ROM_START(pb_l3)
r19696r19697
716733   ROM_LOAD("pbot_u22.l1", 0x10000, 0x8000, CRC(a2d2c9cb) SHA1(46437dc54538f1626caf41a2818ddcf8000c44e4))
717734
718735   ROM_REGION(0x20000, "bgcpu", ROMREGION_ERASEFF)
719   ROM_LOAD("pbot_u4.l1", 0x08000, 0x8000, CRC(de5926bd) SHA1(3d111e27c5f0c8c0afc5fe5cc45bf77c12b69228))
720   ROM_LOAD("pbot_u19.l1", 0x10000, 0x8000, CRC(40eb4e9f) SHA1(07b0557b35599a2dd5aa66a306fbbe8f50eed998))
736   ROM_LOAD("pbot_u4.l1", 0x10000, 0x8000, CRC(de5926bd) SHA1(3d111e27c5f0c8c0afc5fe5cc45bf77c12b69228))
737   ROM_LOAD("pbot_u19.l1", 0x18000, 0x8000, CRC(40eb4e9f) SHA1(07b0557b35599a2dd5aa66a306fbbe8f50eed998))
721738ROM_END
722739
723740GAME(1987, f14_l1,   0,      s11a, s11a, s11a_state, s11a, ROT0, "Williams", "F14 Tomcat (L-1)", GAME_IS_SKELETON_MECHANICAL)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team