Previous 199869 Revisions Next

r32200 Friday 19th September, 2014 at 11:16:02 UTC by Robbbert
spinb.c : wip
[src/mame/drivers]spinb.c

trunk/src/mame/drivers/spinb.c
r32199r32200
44  Spinball (previously Inder)
55
66  Hardware is much the same as Inder, except the digital display is replaced by a DMD controlled by
7  a i8031.
7  a i8031. You need to pick "Pixel Aspect (4:1)" video option in the tab menu.
88
9  Status
10  - Verne's World has different hardware, does nothing
11  - The others make a horrible noise when 5 pressed, nothing else, no display.
12  - Code for inputs and outputs is wrong (copied from inder.c)
13  - There are 2 sound cards (one for effects and one for music), however looks like they
14    both receive the same commands? Diagram only shows J9 for sound control.
15  - The DMD uses a i8031 but no luck getting it to do anything so far.
16  - There are mistakes in the sound board schematic: IC14 pin12 goes to IC5 pin13 only. IC16 pin 22
17    is the CS0 line only. So, they are not joined but are separate tracks. Also, according to PinMAME,
18    the outputs of IC11 are all wrong. They should be (from top to bottom): A16, A17, A18, NC, NC,
19    CS2, CS1, CS0.
9  There are mistakes in the sound board schematic: IC14 pin12 goes to IC5 pin13 only. IC16 pin 22
10  is the CS0 line only. So, they are not joined but are separate tracks. Also, according to PinMAME,
11  the outputs of IC11 are all wrong. They should be (from top to bottom): A16, A17, A18, NC, NC,
12  CS2, CS1, CS0.
2013
14  Also, very unobvious is the fact that PIA ports A and B are swapped around compared to the Inder
15  soundcard.
2116
17Status
18- Bushido: If you quickly press 5 you get a sound.
19- Mach 2: Makes a sound if 5 pressed
20- Jolly Park: Display flashes. After a few moments it plays music
21- Verne's World: Display flashes for a second then goes blank. After a few moments music plays.
22
23ToDo:
24- Inputs and outputs (copied from inder.c)
25- DMD doesn't act on commands
26- Electronic volume control on the music card
27- Display on jolypark and vrnwrld has dots of 2 intensities
28
2229****************************************************************************************************/
2330
2431#include "machine/genpin.h"
r32199r32200
6168   DECLARE_WRITE8_MEMBER(ppi64c_w);
6269   DECLARE_READ8_MEMBER(sw_r);
6370   DECLARE_WRITE8_MEMBER(sw_w);
71   DECLARE_WRITE8_MEMBER(dmdram_w);
72   DECLARE_READ8_MEMBER(dmdram_r);
6473   DECLARE_READ8_MEMBER(sndcmd_r);
6574   DECLARE_WRITE8_MEMBER(sndbank_a_w);
6675   DECLARE_WRITE8_MEMBER(sndbank_m_w);
r32199r32200
7382   DECLARE_WRITE_LINE_MEMBER(ic5m_w);
7483   DECLARE_WRITE_LINE_MEMBER(vck_a_w);
7584   DECLARE_WRITE_LINE_MEMBER(vck_m_w);
76   DECLARE_DRIVER_INIT(spinb);
85   DECLARE_DRIVER_INIT(game0);
86   DECLARE_DRIVER_INIT(game1);
87   DECLARE_DRIVER_INIT(game2);
88   UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
89   //UINT32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
7790private:
7891   bool m_pc0a;
7992   bool m_pc0m;
r32199r32200
8194   UINT8 m_portc_a;
8295   UINT8 m_portc_m;
8396   UINT8 m_row;
84   UINT8 m_segment[8];
97   UINT8 m_p3;
98   UINT8 m_p32;
99   UINT8 m_dmdcmd;
100   UINT8 m_dmdbank;
101   UINT8 m_dmdextaddr;
102   UINT8 m_dmdram[0x2000];
85103   UINT8 m_sndcmd;
86104   UINT8 m_sndbank_a;
87105   UINT8 m_sndbank_m;
r32199r32200
89107   UINT32 m_sound_addr_m;
90108   UINT8 *m_p_audio;
91109   UINT8 *m_p_music;
110   UINT8 *m_p_dmdcpu;
92111   virtual void machine_reset();
93112   required_device<cpu_device> m_maincpu;
94113   required_device<cpu_device> m_audiocpu;
r32199r32200
114133   AM_RANGE(0x6ce0, 0x6ce0) AM_WRITENOP
115134ADDRESS_MAP_END
116135
136static ADDRESS_MAP_START( vrnwrld_map, AS_PROGRAM, 8, spinb_state )
137   AM_RANGE(0x0000, 0x7fff) AM_ROM
138   AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("nvram") // 6164, battery-backed
139   AM_RANGE(0xc000, 0xc003) AM_MIRROR(0x13fc) AM_DEVREADWRITE("ppi60", i8255_device, read, write)
140   AM_RANGE(0xc400, 0xc403) AM_MIRROR(0x13fc) AM_DEVREADWRITE("ppi64", i8255_device, read, write)
141   AM_RANGE(0xc800, 0xc803) AM_MIRROR(0x13fc) AM_DEVREADWRITE("ppi68", i8255_device, read, write)
142   AM_RANGE(0xcc00, 0xcc03) AM_MIRROR(0x131c) AM_DEVREADWRITE("ppi6c", i8255_device, read, write)
143   AM_RANGE(0xcc20, 0xcc3f) AM_MIRROR(0x1300) AM_WRITE(sndcmd_w)
144   AM_RANGE(0xcc40, 0xcc45) AM_MIRROR(0x1300) AM_WRITE(lamp1_w)
145   AM_RANGE(0xcc60, 0xcc60) AM_MIRROR(0x1300) AM_WRITE(disp_w)
146   AM_RANGE(0xcce0, 0xcce0) AM_WRITENOP
147ADDRESS_MAP_END
148
117149static ADDRESS_MAP_START( spinb_audio_map, AS_PROGRAM, 8, spinb_state )
118150   AM_RANGE(0x0000, 0x1fff) AM_ROM
119151   AM_RANGE(0x2000, 0x3fff) AM_RAM // 6164
r32199r32200
136168ADDRESS_MAP_END
137169
138170static ADDRESS_MAP_START(dmd_io, AS_IO, 8, spinb_state)
139   AM_RANGE(0x0000, 0x1fff) AM_RAM
171   AM_RANGE(0x0000, 0x1fff) AM_WRITE(dmdram_w)
172   AM_RANGE(0x0000, 0xffff) AM_READ(dmdram_r)
140173   AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(p1_w)
141174   AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(p3_r, p3_w)
142175ADDRESS_MAP_END
r32199r32200
244277d5 = part of the data input circuit
245278d6 = STAT0
246279d7 = STAT1
280
281m_game == 0 : P1.0 low for RAM, P1.5 low for data input. They shouldn't both be low.
282m_game == 1 : P1.0 low for RAM, P1.5 low for data input. They shouldn't both be low. Extra ROM selected by P3.4
283m_game == 2 : P1.0 and P1.5 go to 74LS139 selector: 0 = RAM; 1 = ROM1; 2 = ROM2; 3 = data input
247284*/
248285WRITE8_MEMBER( spinb_state::p1_w )
249286{
287   m_dmdbank = (BIT(data, 5) << 1) + BIT(data, 0);
288
289   if (m_game < 2)
290   {
291      switch (m_dmdbank)
292      {
293         case 0:
294            printf("DMD Illegal selection\n");
295            break;
296         case 1: // ram
297            m_dmdbank = 0;
298            break;
299         case 2: // input
300            m_dmdbank = 3;
301            break;
302         case 3: // nothing or (game1 external rom)
303            m_dmdbank = 1;
304            break;
305      }
306   }
307
308   if (m_dmdbank==3)
309   {
310      m_p32 = 4;
311      m_dmdcpu->set_input_line(MCS51_INT0_LINE, CLEAR_LINE);
312   }
250313}
251314
252315READ8_MEMBER( spinb_state::p3_r )
253316{
254   return 0;
317   return m_p3 | m_p32;
255318}
256319
257320/*
258321d0 = RXD - SDATA ) to DMD
259322d1 = TXD - DOTCK )
260323d2 = Interrupt Input when data is coming from maincpu
261d6 = R/W of RAM
262d7 = OE of RAM , also part of data input circuit
324d6 = External /WR
325d7 = External /RD
263326*/
264327WRITE8_MEMBER( spinb_state::p3_w )
265328{
329   m_p3 = data & 0xfb;
330   m_dmdextaddr = 0;
331
332   if (m_game == 1)
333      m_dmdextaddr = BIT(data, 3);// | (BIT(data, 5) << 1);
334   else
335   if (m_game == 2)
336      m_dmdextaddr = BIT(data, 3) | (BIT(data, 5) << 1) | (BIT(data, 4) << 2);
266337}
267338
268339READ8_MEMBER( spinb_state::sw_r )
r32199r32200
285356   return m_sndcmd;
286357}
287358
288WRITE8_MEMBER( spinb_state::disp_w )
359WRITE8_MEMBER( spinb_state::dmdram_w )
289360{
290   UINT8 i;
291   if (offset < 8)
292      m_segment[offset] = data;
293   else
294   // From here, only used on old cpu board
295   if (offset > 0x40)
361   m_dmdram[offset & 0x1fff] = data;
362}
363
364READ8_MEMBER( spinb_state::dmdram_r )
365{
366   switch (m_dmdbank)
296367   {
297      offset = (offset >> 3) & 7;
298      for (i = 0; i < 5; i++)
299         output_set_digit_value(i*10+offset, m_segment[i]);
368      case 0:
369         return m_dmdram[offset & 0x1fff];
370      case 1:
371         return m_p_dmdcpu[offset + (m_dmdextaddr << 16)];
372      case 2:
373         return m_p_dmdcpu[0x80000 + offset + (m_dmdextaddr << 16)];
300374   }
375
376   return m_dmdcmd;
301377}
302378
379WRITE8_MEMBER( spinb_state::disp_w )
380{
381   m_dmdcmd = data;
382   m_p32 = 0;
383   m_dmdcpu->set_input_line(MCS51_INT0_LINE, HOLD_LINE);
384}
385
303386WRITE8_MEMBER( spinb_state::ppi60a_w )
304387{
305388   if (data)
r32199r32200
319402
320403WRITE8_MEMBER( spinb_state::ppi64c_w )
321404{
322   UINT8 i;
323   data &= 15;
324   if BIT(data, 3) // 8 to 15
325   {
326      data ^= 15; // now 7 to 0
327      for (i = 0; i < 5; i++)
328      {
329         if ((m_game==1) && (i == 4))  // mundial,clown,250cc,atleta have credit and ball displays swapped
330            data ^= 4;
331         output_set_digit_value(i*10+data, m_segment[i]);
332      }
333   }
334405}
335406
336407WRITE8_MEMBER( spinb_state::sndbank_a_w )
r32199r32200
417488   return m_pc0m | m_portc_m;
418489}
419490
420WRITE8_MEMBER( spinb_state::ppia_a_w )
491WRITE8_MEMBER( spinb_state::ppia_b_w )
421492{
422   m_sound_addr_a = (m_sound_addr_a & 0xfff00) | data;
493   m_sound_addr_a = (m_sound_addr_a & 0xffff00) | data;
423494}
424495
425WRITE8_MEMBER( spinb_state::ppim_a_w )
496WRITE8_MEMBER( spinb_state::ppim_b_w )
426497{
427   m_sound_addr_m = (m_sound_addr_m & 0xfff00) | data;
498   m_sound_addr_m = (m_sound_addr_m & 0xffff00) | data;
428499}
429500
430WRITE8_MEMBER( spinb_state::ppia_b_w )
501WRITE8_MEMBER( spinb_state::ppia_a_w )
431502{
432   m_sound_addr_a = (m_sound_addr_a & 0xf00ff) | (data << 8);
503   m_sound_addr_a = (m_sound_addr_a & 0xff00ff) | (data << 8);
433504}
434505
435WRITE8_MEMBER( spinb_state::ppim_b_w )
506WRITE8_MEMBER( spinb_state::ppim_a_w )
436507{
437   m_sound_addr_m = (m_sound_addr_m & 0xf00ff) | (data << 8);
508   m_sound_addr_m = (m_sound_addr_m & 0xff00ff) | (data << 8);
438509}
439510
440511WRITE8_MEMBER( spinb_state::ppia_c_w )
r32199r32200
466537   m_row = 0;
467538}
468539
469DRIVER_INIT_MEMBER( spinb_state, spinb )
540DRIVER_INIT_MEMBER( spinb_state, game0 )
470541{
471542   m_p_audio = memregion("audiorom")->base();
472543   m_p_music = memregion("musicrom")->base();
473544   m_game = 0;
474545}
475546
547DRIVER_INIT_MEMBER( spinb_state, game1 )
548{
549   m_p_audio = memregion("audiorom")->base();
550   m_p_music = memregion("musicrom")->base();
551   m_p_dmdcpu = memregion("dmdcpu")->base()+0x10000;
552   m_game = 1;
553}
554
555DRIVER_INIT_MEMBER( spinb_state, game2 )
556{
557   m_p_audio = memregion("audiorom")->base();
558   m_p_music = memregion("musicrom")->base();
559   m_p_dmdcpu = memregion("dmdcpu")->base()+0x10000;
560   m_game = 2;
561}
562
563UINT32 spinb_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
564{
565   UINT8 y,gfx;
566   UINT16 sy=0,ma,x;
567   address_space &internal = m_dmdcpu->space(AS_DATA);
568   ma = internal.read_byte(0x05) << 8; // find where display memory is
569   ma &= 0xfe00;
570
571   for(y=0; y<32; y++)
572   {
573      UINT16 *p = &bitmap.pix16(sy++);
574      for(x = 0; x < 16; x++)
575      {
576         gfx = m_dmdram[ma++];
577
578         *p++ = BIT(gfx, 0);
579         *p++ = BIT(gfx, 1);
580         *p++ = BIT(gfx, 2);
581         *p++ = BIT(gfx, 3);
582         *p++ = BIT(gfx, 4);
583         *p++ = BIT(gfx, 5);
584         *p++ = BIT(gfx, 6);
585         *p++ = BIT(gfx, 7);
586      }
587   }
588   return 0;
589}
590
476591static MACHINE_CONFIG_START( spinb, spinb_state )
477592   /* basic machine hardware */
478593   MCFG_CPU_ADD("maincpu", Z80, XTAL_5MHz / 2)
r32199r32200
488603
489604   MCFG_NVRAM_ADD_1FILL("nvram")
490605
606   /* Video */
607   MCFG_SCREEN_ADD("screen", LCD)
608   MCFG_SCREEN_REFRESH_RATE(60)
609   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
610   MCFG_SCREEN_UPDATE_DRIVER(spinb_state, screen_update)
611   MCFG_SCREEN_SIZE(128, 32)
612   MCFG_SCREEN_VISIBLE_AREA(0, 127, 0, 31)
613   MCFG_SCREEN_PALETTE("palette")
614   MCFG_PALETTE_ADD_MONOCHROME_AMBER("palette")
615
491616   /* Sound */
492617   MCFG_FRAGMENT_ADD( genpin_audio )
493618   MCFG_SPEAKER_STANDARD_MONO("msmavol")
r32199r32200
553678   MCFG_7474_COMP_OUTPUT_CB(WRITELINE(spinb_state, ic5m_w))
554679MACHINE_CONFIG_END
555680
556#if 0
557static MACHINE_CONFIG_START( spinb, spinb_state )
681static MACHINE_CONFIG_DERIVED( vrnwrld, spinb )
558682   /* basic machine hardware */
559   MCFG_CPU_ADD("maincpu", I8031, XTAL_16MHz)
560   MCFG_CPU_PROGRAM_MAP(spinb_map)
683   MCFG_CPU_MODIFY("maincpu")
684   MCFG_CPU_PROGRAM_MAP(vrnwrld_map)
561685MACHINE_CONFIG_END
562#endif
563686
687
564688/*-------------------------------------------------------------------
565689/ Bushido (1993) - ( Last game by Inder - before becoming Spinball - but same hardware)
566690/-------------------------------------------------------------------*/
567691ROM_START(bushido)
568   ROM_REGION(0x10000, "maincpu", 0)
692   ROM_REGION(0x4000, "maincpu", 0)
569693   ROM_LOAD("0-z80.bin", 0x0000, 0x2000, CRC(3ea1eb1d) SHA1(cceb6c68e481f36a5646ff4f38d3dfc4275b0c79))
570694   ROM_LOAD("1-z80.old", 0x2000, 0x2000, CRC(648da72b) SHA1(1005a13b4746e302d979c8b1da300e943cdcab3d))
571   ROM_REGION(0x32001, "dmdcpu", 0)
695
696   ROM_REGION(0x10000, "dmdcpu", 0)
572697   ROM_LOAD("g-disply.bin", 0x00000, 0x10000, CRC(9a1df82f) SHA1(4ad6a12ae36ec898b8ac5243da6dec3abcd9dc33))
573   ROM_REGION(0x10000, "audiocpu", 0)
698
699   ROM_REGION(0x2000, "audiocpu", 0)
574700   ROM_LOAD("a-sonido.bin", 0x0000, 0x2000, CRC(cf7d5399) SHA1(c79145826cfa6be2487e3add477d9b452c553762))
701
575702   ROM_REGION(0x180000, "audiorom", 0)
576703   ROM_LOAD("b-sonido.bin", 0x00000, 0x80000, CRC(cb4fc885) SHA1(569f389fa8f91f886b58f44f701d2752ef01f3fa))
577704   ROM_LOAD("c-sonido.bin", 0x80000, 0x80000, CRC(35a43dd8) SHA1(f2b1994f67f749c65a88c95d970b655990d85b96))
578   ROM_REGION(0x10000, "musiccpu", 0)
705
706   ROM_REGION(0x2000, "musiccpu", 0)
579707   ROM_LOAD("d-musica.bin", 0x0000, 0x2000, CRC(2cb9697c) SHA1(d5c66d616ccd5e299832704e494743429dafd569))
708
580709   ROM_REGION(0x180000, "musicrom", 0)
581710   ROM_LOAD("e-musica.bin", 0x00000, 0x80000, CRC(1414b921) SHA1(5df9e538ee109df28953ec8f162c60cb8c6e4d96))
582711   ROM_LOAD("f-musica.bin", 0x80000, 0x80000, CRC(80f3a6df) SHA1(e09ad4660e511779c6e55559fa0c2c0b0c6600c8))
583712ROM_END
584713
585714ROM_START(bushidoa)
586   ROM_REGION(0x10000, "maincpu", 0)
715   ROM_REGION(0x4000, "maincpu", 0)
587716   ROM_LOAD("0-cpu.bin", 0x0000, 0x2000, CRC(7f7e6642) SHA1(6872397eed7525f384b79cdea13531d273d8cf14))
588717   ROM_LOAD("1-cpu.bin", 0x2000, 0x2000, CRC(a538d37f) SHA1(d2878ad0d31b4221b823812485c7faaf666ce185))
589   ROM_REGION(0x32001, "dmdcpu", 0)
718
719   ROM_REGION(0x10000, "dmdcpu", 0)
590720   ROM_LOAD("g-disply.bin", 0x00000, 0x10000, CRC(9a1df82f) SHA1(4ad6a12ae36ec898b8ac5243da6dec3abcd9dc33))
591   ROM_REGION(0x10000, "audiocpu", 0)
721
722   ROM_REGION(0x2000, "audiocpu", 0)
592723   ROM_LOAD("a-sonido.bin", 0x0000, 0x2000, CRC(cf7d5399) SHA1(c79145826cfa6be2487e3add477d9b452c553762))
724
593725   ROM_REGION(0x180000, "audiorom", 0)
594726   ROM_LOAD("b-sonido.bin", 0x00000, 0x80000, CRC(cb4fc885) SHA1(569f389fa8f91f886b58f44f701d2752ef01f3fa))
595727   ROM_LOAD("c-sonido.bin", 0x80000, 0x80000, CRC(35a43dd8) SHA1(f2b1994f67f749c65a88c95d970b655990d85b96))
596   ROM_REGION(0x10000, "musiccpu", 0)
728
729   ROM_REGION(0x2000, "musiccpu", 0)
597730   ROM_LOAD("d-musica.bin", 0x0000, 0x2000, CRC(2cb9697c) SHA1(d5c66d616ccd5e299832704e494743429dafd569))
731
598732   ROM_REGION(0x180000, "musicrom", 0)
599733   ROM_LOAD("e-musica.bin", 0x00000, 0x80000, CRC(1414b921) SHA1(5df9e538ee109df28953ec8f162c60cb8c6e4d96))
600734   ROM_LOAD("f-musica.bin", 0x80000, 0x80000, CRC(80f3a6df) SHA1(e09ad4660e511779c6e55559fa0c2c0b0c6600c8))
601735ROM_END
602736
603737/*-------------------------------------------------------------------
738/ Mach 2 (1995)
739/-------------------------------------------------------------------*/
740ROM_START(mach2)
741   ROM_REGION(0x4000, "maincpu", 0)
742   ROM_LOAD("m2cpu0.19", 0x0000, 0x2000, CRC(274c8040) SHA1(6b039b79b7e08f2bf2045bc4f1cbba790c999fed))
743   ROM_LOAD("m2cpu1.19", 0x2000, 0x2000, CRC(c445df0b) SHA1(1f346c1df8df0a3c4e8cb1186280d2f34959b3f8))
744
745   ROM_REGION(0x10000, "dmdcpu", 0)
746   ROM_LOAD("m2dmdf.01", 0x00000, 0x10000, CRC(c45ccc74) SHA1(8362e799a76536a16dd2d5dde500ad3db273180f))
747
748   ROM_REGION(0x2000, "audiocpu", 0)
749   ROM_LOAD("m2sndd.01", 0x0000, 0x2000, CRC(e789f22d) SHA1(36aa7eac1dd37a02c982d109462dddbd85a305cc))
750
751   ROM_REGION(0x180000, "audiorom", 0)
752   ROM_LOAD("m2snde.01", 0x00000, 0x80000, CRC(f5721119) SHA1(9082198e8d875b67323266c4bf8c2c378b63dfbb))
753
754   ROM_REGION(0x2000, "musiccpu", 0)
755   ROM_LOAD("m2musa.01", 0x0000, 0x2000, CRC(2d92a882) SHA1(cead22e434445e5c25414646b1e9ae2b9457439d))
756
757   ROM_REGION(0x180000, "musicrom", 0)
758   ROM_LOAD("m2musb.01", 0x00000, 0x80000, CRC(6689cd19) SHA1(430092d51704dfda8bd8264875f1c1f4461c56e5))
759   ROM_LOAD("m2musc.01", 0x80000, 0x80000, CRC(88851b82) SHA1(d0c9fa391ca213a69b7c8ae7ca52063503b5656e))
760ROM_END
761
762/*-------------------------------------------------------------------
604763/ Jolly Park (1996)
605764/-------------------------------------------------------------------*/
606765ROM_START(jolypark)
607   ROM_REGION(0x10000, "maincpu", 0)
766   ROM_REGION(0x4000, "maincpu", 0)
608767   ROM_LOAD("jpcpu0.rom", 0x0000, 0x2000, CRC(061967af) SHA1(45048e1d9f17efa3382460fd474a5aeb4191d617))
609768   ROM_LOAD("jpcpu1.rom", 0x2000, 0x2000, CRC(ea99202f) SHA1(e04825e73fd25f6469b3315f063f598ea1ab44c7))
610   ROM_REGION(0x32001, "dmdcpu", 0)
769
770   ROM_REGION(0x30000, "dmdcpu", 0)
611771   ROM_LOAD("jpdmd0.rom", 0x00000, 0x10000, CRC(b57565cb) SHA1(3fef66d298893029de78fdb6ecdb562c33d76180))
612   ROM_LOAD("jpdmd1.rom", 0x12000, 0x20000, CRC(40d1563f) SHA1(90dbea742202340da6fa950eedc2bceec5a2af7e))
613   ROM_REGION(0x10000, "audiocpu", 0)
772   ROM_LOAD("jpdmd1.rom", 0x10000, 0x20000, CRC(40d1563f) SHA1(90dbea742202340da6fa950eedc2bceec5a2af7e)) // according to schematic this rom should be twice as big
773
774   ROM_REGION(0x2000, "audiocpu", 0)
614775   ROM_LOAD("jpsndc1.rom", 0x0000, 0x2000, CRC(0475318f) SHA1(7154bd5ca5b28019eb0ff598ec99bbe49260932b))
776
615777   ROM_REGION(0x180000, "audiorom", 0)
616778   ROM_LOAD("jpsndm4.rom", 0x00000, 0x80000, CRC(735f3db7) SHA1(81dc893f5194d6ac1af54b262555a40c5c3e0292))
617779   ROM_LOAD("jpsndm5.rom", 0x80000, 0x80000, CRC(769374bd) SHA1(8121369714c55cc06c493b15e5c2ca79b13aff52))
618   ROM_REGION(0x10000, "musiccpu", 0)
780
781   ROM_REGION(0x2000, "musiccpu", 0)
619782   ROM_LOAD("jpsndc0.rom", 0x0000, 0x2000, CRC(a97259dc) SHA1(58dea3f36b760112cfc32d306077da8cf6cdec5a))
783
620784   ROM_REGION(0x180000, "musicrom", 0)
621785   ROM_LOAD("jpsndm1.rom", 0x000000, 0x80000, CRC(fc91d2f1) SHA1(c838a0b31bbec9dbc96b46d692c8d6f1286fe46a))
622786   ROM_LOAD("jpsndm2.rom", 0x080000, 0x80000, CRC(fb2d1882) SHA1(fb0ef9def54d9163a46354a0df0757fac6cbd57c))
r32199r32200
624788ROM_END
625789
626790/*-------------------------------------------------------------------
627/ Mach 2 (1995)
628/-------------------------------------------------------------------*/
629ROM_START(mach2)
630   ROM_REGION(0x10000, "maincpu", 0)
631   ROM_LOAD("m2cpu0.19", 0x0000, 0x2000, CRC(274c8040) SHA1(6b039b79b7e08f2bf2045bc4f1cbba790c999fed))
632   ROM_LOAD("m2cpu1.19", 0x2000, 0x2000, CRC(c445df0b) SHA1(1f346c1df8df0a3c4e8cb1186280d2f34959b3f8))
633   ROM_REGION(0x32001, "dmdcpu", 0)
634   ROM_LOAD("m2dmdf.01", 0x00000, 0x10000, CRC(c45ccc74) SHA1(8362e799a76536a16dd2d5dde500ad3db273180f))
635   ROM_REGION(0x10000, "audiocpu", 0)
636   ROM_LOAD("m2sndd.01", 0x0000, 0x2000, CRC(e789f22d) SHA1(36aa7eac1dd37a02c982d109462dddbd85a305cc))
637   ROM_REGION(0x180000, "audiorom", 0)
638   ROM_LOAD("m2snde.01", 0x00000, 0x80000, CRC(f5721119) SHA1(9082198e8d875b67323266c4bf8c2c378b63dfbb))
639   ROM_REGION(0x10000, "musiccpu", 0)
640   ROM_LOAD("m2musa.01", 0x0000, 0x2000, CRC(2d92a882) SHA1(cead22e434445e5c25414646b1e9ae2b9457439d))
641   ROM_REGION(0x180000, "musicrom", 0)
642   ROM_LOAD("m2musb.01", 0x00000, 0x80000, CRC(6689cd19) SHA1(430092d51704dfda8bd8264875f1c1f4461c56e5))
643   ROM_LOAD("m2musc.01", 0x80000, 0x80000, CRC(88851b82) SHA1(d0c9fa391ca213a69b7c8ae7ca52063503b5656e))
644ROM_END
645
646/*-------------------------------------------------------------------
647791/ Verne's World (1996)
648792/-------------------------------------------------------------------*/
649793ROM_START(vrnwrld)
650   ROM_REGION(0x10000, "maincpu", 0)
794   ROM_REGION(0x8000, "maincpu", 0)
651795   ROM_LOAD("vwcpu0.rom", 0x0000, 0x4000, CRC(89c980e7) SHA1(09eeed0232255875cf119d59143d839ff40e30dd))
652796   ROM_LOAD("vwcpu1.rom", 0x4000, 0x4000, CRC(a4db4e64) SHA1(fc55781295fc723741de24ad60311b7e33551830))
653   ROM_REGION(0x114000, "dmdcpu", 0)
797
798   ROM_REGION(0x110000, "dmdcpu", 0)
654799   ROM_LOAD("vwdmd0.rom", 0x00000, 0x10000, CRC(40600060) SHA1(7ad619bcb5e5e50325360f4e946b5bfa072caead))
655   ROM_LOAD("vwdmd1.rom", 0x14000, 0x80000, CRC(de4a1060) SHA1(6b848dfd8aafdbcf7e1593f98bd1c3d69306aa11))
656   ROM_LOAD("vwdmd2.rom", 0x94000, 0x80000, CRC(29fc8da7) SHA1(2704f14a3338a63abda3bcbc56e9f984a679eb38))
657   ROM_REGION(0x10000, "audiocpu", 0)
800   ROM_LOAD("vwdmd1.rom", 0x10000, 0x80000, CRC(de4a1060) SHA1(6b848dfd8aafdbcf7e1593f98bd1c3d69306aa11))
801   ROM_LOAD("vwdmd2.rom", 0x90000, 0x80000, CRC(29fc8da7) SHA1(2704f14a3338a63abda3bcbc56e9f984a679eb38))
802
803   ROM_REGION(0x2000, "audiocpu", 0)
658804   ROM_LOAD("vws2ic9.rom", 0x0000, 0x2000, CRC(ab8cb4c5) SHA1(92a702c11e2cef703992244529ba86079d5ab9b0))
805
659806   ROM_REGION(0x180000, "audiorom", 0)
660807   ROM_LOAD("vws3ic15.rom", 0x00000, 0x80000, CRC(d62c9443) SHA1(7c6b8662d88ba6592da8b83af11087647105e8dd))
661   ROM_REGION(0x10000, "musiccpu", 0)
808
809   ROM_REGION(0x2000, "musiccpu", 0)
662810   ROM_LOAD("vws4ic30.rom", 0x0000, 0x2000, CRC(ecd18a19) SHA1(558e687e0429d31fafe8db05954d9a8ad90d6aeb))
811
663812   ROM_REGION(0x180000, "musicrom", 0)
664813   ROM_LOAD("vws5ic25.rom", 0x000000, 0x80000, CRC(56d349f0) SHA1(e71d2d03c3e978c552e272de8850cc265255fbd1))
665814   ROM_LOAD("vws6ic26.rom", 0x080000, 0x80000, CRC(bee399c1) SHA1(b2c6e4830641ed32b9643dc8c1fa08a2da5a7e9b))
666815   ROM_LOAD("vws7ic27.rom", 0x100000, 0x80000, CRC(7335b29c) SHA1(4de6de09f069feecbad2e5ef50032e8d381ff9b1))
667816ROM_END
668817
669GAME(1993, bushido,   0,       spinb,  spinb, spinb_state,  spinb,  ROT0,  "Inder/Spinball", "Bushido (set 1)", GAME_IS_SKELETON_MECHANICAL)
670GAME(1993, bushidoa,  bushido, spinb,  spinb, spinb_state,  spinb,  ROT0,  "Inder/Spinball", "Bushido (set 2)", GAME_IS_SKELETON_MECHANICAL)
671GAME(1996, jolypark,  0,       spinb,  spinb, spinb_state,  spinb,  ROT0,  "Spinball",       "Jolly Park",      GAME_IS_SKELETON_MECHANICAL)
672GAME(1995, mach2,     0,       spinb,  spinb, spinb_state,  spinb,  ROT0,  "Spinball",       "Mach 2",          GAME_IS_SKELETON_MECHANICAL)
673GAME(1996, vrnwrld,   0,       spinb,  spinb, spinb_state,  spinb,  ROT0,  "Spinball",       "Verne's World",   GAME_IS_SKELETON_MECHANICAL)
818GAME(1993, bushido,   0,       spinb,   spinb, spinb_state,  game0,  ROT0,  "Inder/Spinball", "Bushido (set 1)", GAME_IS_SKELETON_MECHANICAL)
819GAME(1993, bushidoa,  bushido, spinb,   spinb, spinb_state,  game0,  ROT0,  "Inder/Spinball", "Bushido (set 2)", GAME_IS_SKELETON_MECHANICAL)
820GAME(1995, mach2,     0,       spinb,   spinb, spinb_state,  game0,  ROT0,  "Spinball",       "Mach 2",          GAME_IS_SKELETON_MECHANICAL)
821GAME(1996, jolypark,  0,       spinb,   spinb, spinb_state,  game1,  ROT0,  "Spinball",       "Jolly Park",      GAME_IS_SKELETON_MECHANICAL)
822GAME(1996, vrnwrld,   0,       vrnwrld, spinb, spinb_state,  game2,  ROT0,  "Spinball",       "Verne's World",   GAME_IS_SKELETON_MECHANICAL)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team