1 /***************************************************************************
2
3 Williams 6809 system
4
5 driver by Michael Soderstrom, Marc LaFontaine, Aaron Giles
6
7 Games supported:
8 * Defender
9 * Mayday
10 * Colony 7
11 * Stargate
12 * Robotron
13 * Joust
14 * Bubbles
15 * Splat!
16 * Sinistar
17 * PlayBall!
18 * Blaster
19 * Mystic Marathon
20 * Turkey Shoot
21 * Inferno
22 * Joust 2
23 * Lotto Fun
24
25 ****************************************************************************
26
27 Blitter (Stargate and Defender do not have blitter)
28 ---------------------------------------------------
29
30 CA00 start_blitter Each bits has a function
31 1000 0000 Do not process half the byte 4-7
32 0100 0000 Do not process half the byte 0-3
33 0010 0000 Shift the shape one pixel right (to display a shape on an odd pixel)
34 0001 0000 Remap, if shape != 0 then pixel = mask
35 0000 1000 Source 1 = take source 0 = take Mask only
36 0000 0100 ?
37 0000 0010 Transparent
38 0000 0001
39 CA01 blitter_mask Not really a mask, more a remap color, see Blitter
40 CA02 blitter_source hi
41 CA03 blitter_source lo
42 CA04 blitter_dest hi
43 CA05 blitter_dest lo
44 CA06 blitter_w_h H Do a XOR with 4 to have the real value (Except Splat)
45 CA07 blitter_w_h W Do a XOR with 4 to have the real value (Except Splat)
46
47 CB00 6 bits of the video counters bits 2-7
48
49 CBFF watchdog
50
51 CC00-CFFF 1K X 4 CMOS ram battery backed up (8 bits on Sinistar)
52
53 ****************************************************************************
54
55 Blaster Bubbles Joust Robotron Sinistar Splat Stargate
56 ------------------------------------------------------
57
58 0000-8FFF ROM (for Blaster, 0000-3FFF is a bank of 12 ROMs)
59 0000-97FF Video RAM Bank switched with ROM (96FF for Blaster)
60 9800-BFFF RAM
61 0xBB00 Blaster only, Color 0 for each line (256 entry)
62 0xBC00 Blaster only, Color 0 flags, latch color only if bit 0 = 1 (256 entry)
63 Do something else with the bit 1, I do not know what
64 C000-CFFF I/O
65 D000-FFFF ROM
66
67 c000-C00F color_registers (16 bytes of BBGGGRRR)
68
69 c804 widget_pia_dataa (widget = I/O board)
70 c805 widget_pia_ctrla
71 c806 widget_pia_datab
72 c807 widget_pia_ctrlb (CB2 select between player 1 and player 2
73 controls if Table or Joust)
74 bits 5-3 = 110 = player 2
75 bits 5-3 = 111 = player 1
76
77 c80c rom_pia_dataa
78 c80d rom_pia_ctrla
79 c80e rom_pia_datab
80 bit 0 \
81 bit 1 |
82 bit 2 |-6 bits to sound board
83 bit 3 |
84 bit 4 |
85 bit 5 /
86 bit 6 \
87 bit 7 /Plus CA2 and CB2 = 4 bits to drive the LED 7 segment
88 c80f rom_pia_ctrlb
89
90 C900 rom_enable_scr_ctrl Switch between video ram and rom at 0000-97FF
91
92 C940 Blaster only: Select bank in the color Prom for color remap
93 C980 Blaster only: Select which ROM is at 0000-3FFF
94 C9C0 Blaster only: bit 0 = enable the color 0 changing each lines
95 bit 1 = erase back each frame
96
97 ****************************************************************************
98
99 Robotron
100 --------
101 c804 widget_pia_dataa (widget = I/O board)
102 bit 0 Move Up
103 bit 1 Move Down
104 bit 2 Move Left
105 bit 3 Move Right
106 bit 4 1 Player
107 bit 5 2 Players
108 bit 6 Fire Up
109 bit 7 Fire Down
110
111 c806 widget_pia_datab
112 bit 0 Fire Left
113 bit 1 Fire Right
114 bit 2
115 bit 3
116 bit 4
117 bit 5
118 bit 6
119 bit 7
120
121 c80c rom_pia_dataa
122 bit 0 Auto Up
123 bit 1 Advance
124 bit 2 Right Coin
125 bit 3 High Score Reset
126 bit 4 Left Coin
127 bit 5 Center Coin
128 bit 6 Slam Door Tilt
129 bit 7 Hand Shake from sound board
130
131 ****************************************************************************
132
133 Joust
134 -----
135 c804 widget_pia_dataa (widget = I/O board)
136 bit 0 Move Left player 1/2
137 bit 1 Move Right player 1/2
138 bit 2 Flap player 1/2
139 bit 3
140 bit 4 2 Player
141 bit 5 1 Players
142 bit 6
143 bit 7
144
145 c806 widget_pia_datab
146 bit 0
147 bit 1
148 bit 2
149 bit 3
150 bit 4
151 bit 5
152 bit 6
153 bit 7
154
155 c80c rom_pia_dataa
156 bit 0 Auto Up
157 bit 1 Advance
158 bit 2 Right Coin
159 bit 3 High Score Reset
160 bit 4 Left Coin
161 bit 5 Center Coin
162 bit 6 Slam Door Tilt
163 bit 7 Hand Shake from sound board
164
165 ****************************************************************************
166
167 Stargate
168 --------
169 c804 widget_pia_dataa (widget = I/O board)
170 bit 0 Fire
171 bit 1 Thrust
172 bit 2 Smart Bomb
173 bit 3 HyperSpace
174 bit 4 2 Players
175 bit 5 1 Player
176 bit 6 Reverse
177 bit 7 Down
178
179 c806 widget_pia_datab
180 bit 0 Up
181 bit 1 Inviso
182 bit 2
183 bit 3
184 bit 4
185 bit 5
186 bit 6
187 bit 7 0 = Upright 1 = Table
188
189 c80c rom_pia_dataa
190 bit 0 Auto Up
191 bit 1 Advance
192 bit 2 Right Coin (High Score Reset in schematics)
193 bit 3 High Score Reset (Left Coin in schematics)
194 bit 4 Left Coin (Center Coin in schematics)
195 bit 5 Center Coin (Right Coin in schematics)
196 bit 6 Slam Door Tilt
197 bit 7 Hand Shake from sound board
198
199 ****************************************************************************
200
201 Splat
202 -----
203 c804 widget_pia_dataa (widget = I/O board)
204 bit 0 Walk Up
205 bit 1 Walk Down
206 bit 2 Walk Left
207 bit 3 Walk Right
208 bit 4 1 Player
209 bit 5 2 Players
210 bit 6 Throw Up
211 bit 7 Throw Down
212
213 c806 widget_pia_datab
214 bit 0 Throw Left
215 bit 1 Throw Right
216 bit 2
217 bit 3
218 bit 4
219 bit 5
220 bit 6
221 bit 7
222
223 c80c rom_pia_dataa
224 bit 0 Auto Up
225 bit 1 Advance
226 bit 2 Right Coin
227 bit 3 High Score Reset
228 bit 4 Left Coin
229 bit 5 Center Coin
230 bit 6 Slam Door Tilt
231 bit 7 Hand Shake from sound board
232
233 ****************************************************************************
234
235 Blaster
236 -------
237 c804 widget_pia_dataa (widget = I/O board)
238 bit 0 up/down switch a
239 bit 1 up/down switch b
240 bit 2 up/down switch c
241 bit 3 up/down direction
242 bit 4 left/right switch a
243 bit 5 left/right switch b
244 bit 6 left/right switch c
245 bit 7 left/right direction
246
247 c806 widget_pia_datab
248 bit 0 Thrust (Panel)
249 bit 1 Blast
250 bit 2 Thrust (Joystick)
251 bit 3
252 bit 4 1 Player
253 bit 5 2 Player
254 bit 6
255 bit 7
256
257 c80c rom_pia_dataa
258 bit 0 Auto Up
259 bit 1 Advance
260 bit 2 Right Coin
261 bit 3 High Score Reset
262 bit 4 Left Coin
263 bit 5 Center Coin
264 bit 6 Slam Door Tilt
265 bit 7 Hand Shake from sound board
266
267 ****************************************************************************
268
269 Sinistar
270 --------
271 c804 widget_pia_dataa (widget = I/O board)
272 bit 0 up/down switch a
273 bit 1 up/down switch b
274 bit 2 up/down switch c
275 bit 3 up/down direction
276 bit 4 left/right switch a
277 bit 5 left/right switch b
278 bit 6 left/right switch c
279 bit 7 left/right direction
280
281 c806 widget_pia_datab
282 bit 0 Fire
283 bit 1 Bomb
284 bit 2
285 bit 3
286 bit 4 1 Player
287 bit 5 2 Player
288 bit 6
289 bit 7
290
291 c80c rom_pia_dataa
292 bit 0 Auto Up
293 bit 1 Advance
294 bit 2 Right Coin
295 bit 3 High Score Reset
296 bit 4 Left Coin
297 bit 5 Center Coin
298 bit 6 Slam Door Tilt
299 bit 7 Hand Shake from sound board
300
301 ****************************************************************************
302
303 Bubbles
304 -------
305 c804 widget_pia_dataa (widget = I/O board)
306 bit 0 Up
307 bit 1 Down
308 bit 2 Left
309 bit 3 Right
310 bit 4 2 Players
311 bit 5 1 Player
312 bit 6
313 bit 7
314
315 c806 widget_pia_datab
316 bit 0
317 bit 1
318 bit 2
319 bit 3
320 bit 4
321 bit 5
322 bit 6
323 bit 7
324
325 c80c rom_pia_dataa
326 bit 0 Auto Up
327 bit 1 Advance
328 bit 2 Right Coin (High Score Reset in schematics)
329 bit 3 High Score Reset (Left Coin in schematics)
330 bit 4 Left Coin (Center Coin in schematics)
331 bit 5 Center Coin (Right Coin in schematics)
332 bit 6 Slam Door Tilt
333 bit 7 Hand Shake from sound board
334
335 ****************************************************************************
336
337 Defender
338 --------
339 0000-9800 Video RAM
340 C000-CFFF ROM (4 banks) + I/O
341 d000-ffff ROM
342
343 c000-c00f color_registers (16 bytes of BBGGGRRR)
344
345 C3FC WatchDog
346
347 C400-C4FF CMOS ram battery backed up
348
349 C800 6 bits of the video counters bits 2-7
350
351 cc00 pia1_dataa (widget = I/O board)
352 bit 0 Auto Up
353 bit 1 Advance
354 bit 2 Right Coin
355 bit 3 High Score Reset
356 bit 4 Left Coin
357 bit 5 Center Coin
358 bit 6
359 bit 7
360 cc01 pia1_ctrla
361
362 cc02 pia1_datab
363 bit 0 \
364 bit 1 |
365 bit 2 |-6 bits to sound board
366 bit 3 |
367 bit 4 |
368 bit 5 /
369 bit 6 \
370 bit 7 /Plus CA2 and CB2 = 4 bits to drive the LED 7 segment
371 cc03 pia1_ctrlb (CB2 select between player 1 and player 2 controls if Table)
372
373 cc04 pia2_dataa
374 bit 0 Fire
375 bit 1 Thrust
376 bit 2 Smart Bomb
377 bit 3 HyperSpace
378 bit 4 2 Players
379 bit 5 1 Player
380 bit 6 Reverse
381 bit 7 Down
382 cc05 pia2_ctrla
383
384 cc06 pia2_datab
385 bit 0 Up
386 bit 1
387 bit 2
388 bit 3
389 bit 4
390 bit 5
391 bit 6
392 bit 7
393 cc07 pia2_ctrlb
394 Control the IRQ
395
396 d000 Select bank (c000-cfff)
397 0 = I/O
398 1 = BANK 1
399 2 = BANK 2
400 3 = BANK 3
401 7 = BANK 4
402
403 ****************************************************************************
404
405 Mystic Marathon (1983)
406 Turkey Shoot (1984)
407 Inferno (1984)
408 Joust2 Survival of the Fittest (1986)
409
410 All have two boards, a large board with lots of RAM and
411 three ROMs, and a smaller board with lots of ROMs,
412 the CPU, the 6821 PIAs, and the two "Special Chip 2"
413 custom BIT/BLT chips.
414 Joust 2 has an additional music/speech board that has a
415 68B09E CPU, 68B21 PIA, Harris 55564-5 CVSD, and a YM2151.
416
417 Contact Michael Soderstrom (ichael@geocities.com) if you
418 have any additional information or corrections.
419
420 Memory Map:
421
422 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
423 --------------------------------------------------
424 x x x x x x x x x x x x x x x x 0000-BFFF 48K DRAM
425
426 0 0 0 x x x x x x x x x x x x x 0000-1FFF 8K ROM
427 0 0 1 x x x x x x x x x x x x x 2000-3FFF 8K ROM
428 0 1 0 x x x x x x x x x x x x x 4000-5FFF 8K ROM
429 0 1 1 x x x x x x x x x x x x x 6000-7FFF 8K ROM
430
431 1 0 0 0 x x x x x x x x x x x x 8000-8FFF EN_COLOR* (PAGE3 only)
432
433 0 x x x x x x x x x x x x x x x 0000-7FFF OE_DRAM* (PAGE0 and read only) or:
434 1 0 x x x x x x x x x x x x x x 9000-BFFF OE_DRAM* (!EN COLOR and read only)
435
436 1 1 0 0 x x x x x x x x x x x x C000-CFFF I/O:
437 1 1 0 0 0 x x x x x x x x x x x C000-C7FF MAP_EN*
438 1 1 0 0 1 0 0 0 0 x x x x x x x C800-C87F CS_PAGE
439 1 1 0 0 1 0 0 0 1 x x x x x x x C880-C87F CS_INT* (blitter)
440 1 1 0 0 1 0 0 1 0 x x x x x x x C900-C97F CS_WDOG* (data = 0x14)
441 1 1 0 0 1 0 0 1 1 x x x x x x x C980-C9FF CS_PIA
442 1 1 0 0 1 0 0 1 1 x x x 0 0 x x C980-C983 PIA IC5
443 1 1 0 0 1 0 0 1 1 x x x 0 1 x x C984-C987 PIA IC6
444 1 1 0 0 1 0 0 1 1 x x x 1 1 x x C98C 7 segment LED
445
446 1 1 0 0 1 0 1 1 0 0 0 x x x x x CB00-CB1F CK_FG
447 1 1 0 0 1 0 1 1 0 0 1 x x x x x CB20-CB3F CK_BG
448 1 1 0 0 1 0 1 1 0 1 0 x x x x x CB40-CB5F CK_SCL
449 1 1 0 0 1 0 1 1 0 1 1 x x x x x CB60-CB7F CK_SCH
450 1 1 0 0 1 0 1 1 1 0 0 x x x x x CB80-CB9F FLIP clk
451 1 1 0 0 1 0 1 1 1 0 1 x x x x x CBA0-CBBF DMA_WRINH clk
452
453 1 1 0 0 1 0 1 1 1 1 1 0 x x x x CBE0-CBEF EN VPOS*
454
455 1 1 0 0 1 1 0 0 x x x x x x x x CC00-CCFF 1Kx4 CMOS RAM MEM_PROT protected
456 1 1 0 0 1 1 x x x x x x x x x x CD00-CFFF not MEM_PROT protected
457
458 Mystic Marathon/Inferno:
459 1 1 0 1 0 x x x x x x x x x x x D000-D7FF SRAM0*
460 1 1 0 1 1 x x x x x x x x x x x D800-DFFF SRAM1*
461 1 1 1 0 x x x x x x x x x x x x E000-EFFF EXXX* 4K ROM
462 1 1 1 1 x x x x x x x x x x x x F000-FFFF FXXX* 4K ROM
463
464 Turkey Shoot/Joust2:
465 1 1 0 1 x x x x x x x x x x x x D000-DFFF DXXX* 4K ROM
466 1 1 1 0 x x x x x x x x x x x x E000-EFFF EXXX* 4K ROM
467 1 1 1 1 x x x x x x x x x x x x F000-FFFF FXXX* 4K ROM
468
469 6802/6808 Sound
470
471 0 0 0 x x x x x 0 x x x x x x x 0000-007F 128 bytes RAM
472 0 0 1 x x x x x x x x x x x x x 2000-3FFF CS PIA IC4
473 1 1 1 x x x x x x x x x x x x x E000-FFFF 8K ROM
474
475 ***************************************************************************/
476
477 #include "driver.h"
478 #include "machine/6821pia.h"
479 #include "sndhrdw/williams.h"
480 #include "vidhrdw/generic.h"
481 #include "williams.h"
482
483 #include "bootstrap.h"
484 #include "inptport.h"
485
486 /**** configuration macros ****/
487
488 #define CONFIGURE_CMOS(a,l) \
489 generic_nvram = &memory_region(REGION_CPU1)[a];\
490 generic_nvram_size = l
491
492 #define CONFIGURE_BLITTER(x,r,c) \
493 williams_blitter_xor = x;\
494 williams_blitter_remap = r;\
495 williams_blitter_clip = c
496
497 #define CONFIGURE_TILEMAP(m,p,f,s,b) \
498 williams2_tilemap_mask = m;\
499 williams2_row_to_palette = p;\
500 williams2_M7_flip = (f) ? 0x80 : 0x00;\
501 williams2_videoshift = s;\
502 williams2_special_bg_color = b
503
504 #define CONFIGURE_PIAS(a,b,c) \
505 pia_unconfig();\
506 pia_config(0, PIA_STANDARD_ORDERING, &a);\
507 pia_config(1, PIA_STANDARD_ORDERING, &b);\
508 pia_config(2, PIA_STANDARD_ORDERING, &c)
509
510
511
512 /*************************************
513 *
514 * Defender memory handlers
515 *
516 *************************************/
517
MEMORY_READ_START(defender_readmem)518 static MEMORY_READ_START( defender_readmem )
519 { 0x0000, 0x97ff, MRA_BANK1 },
520 { 0x9800, 0xbfff, MRA_RAM },
521 { 0xc000, 0xcfff, MRA_BANK2 },
522 { 0xd000, 0xffff, MRA_ROM },
523 MEMORY_END
524
525
526 static MEMORY_WRITE_START( defender_writemem )
527 { 0x0000, 0x97ff, williams_videoram_w, &videoram, &videoram_size },
528 { 0x9800, 0xbfff, MWA_RAM },
529 { 0xc000, 0xcfff, MWA_BANK2, &defender_bank_base },
530 { 0xc000, 0xc00f, MWA_RAM, &paletteram },
531 { 0xd000, 0xdfff, defender_bank_select_w },
532 { 0xe000, 0xffff, MWA_ROM },
533 MEMORY_END
534
535
536
537 /*************************************
538 *
539 * General Williams memory handlers
540 *
541 *************************************/
542
543 static MEMORY_READ_START( williams_readmem )
544 { 0x0000, 0x97ff, MRA_BANK1 },
545 { 0x9800, 0xbfff, MRA_RAM },
546 { 0xc804, 0xc807, pia_0_r },
547 { 0xc80c, 0xc80f, pia_1_r },
548 { 0xcb00, 0xcb00, williams_video_counter_r },
549 { 0xcc00, 0xcfff, MRA_RAM },
550 { 0xd000, 0xffff, MRA_ROM },
551 MEMORY_END
552
553
554 static MEMORY_WRITE_START( williams_writemem )
555 { 0x0000, 0x97ff, williams_videoram_w, &williams_bank_base, &videoram_size },
556 { 0x9800, 0xbfff, MWA_RAM },
557 { 0xc000, 0xc00f, paletteram_BBGGGRRR_w, &paletteram },
558 { 0xc804, 0xc807, pia_0_w },
559 { 0xc80c, 0xc80f, pia_1_w },
560 { 0xc900, 0xc900, williams_vram_select_w },
561 { 0xca00, 0xca07, williams_blitter_w, &williams_blitterram },
562 { 0xcbff, 0xcbff, watchdog_reset_w },
563 { 0xcc00, 0xcfff, MWA_RAM },
564 { 0xd000, 0xffff, MWA_ROM },
565 MEMORY_END
566
567
568
569 /*************************************
570 *
571 * Blaster memory handlers
572 *
573 *************************************/
574
575 static MEMORY_READ_START( blaster_readmem )
576 { 0x0000, 0x3fff, MRA_BANK1 },
577 { 0x4000, 0x96ff, MRA_BANK2 },
578 { 0x9700, 0xbfff, MRA_RAM },
579 { 0xc804, 0xc807, pia_0_r },
580 { 0xc80c, 0xc80f, pia_1_r },
581 { 0xcb00, 0xcb00, williams_video_counter_r },
582 { 0xcc00, 0xcfff, MRA_RAM },
583 { 0xd000, 0xffff, MRA_ROM },
584 MEMORY_END
585
586
587 static MEMORY_WRITE_START( blaster_writemem )
588 { 0x0000, 0x96ff, williams_videoram_w, &williams_bank_base, &videoram_size },
589 { 0x9700, 0xbaff, MWA_RAM },
590 { 0xbb00, 0xbbff, blaster_palette_0_w, &blaster_color_zero_table },
591 { 0xbc00, 0xbcff, MWA_RAM, &blaster_color_zero_flags },
592 { 0xbd00, 0xbfff, MWA_RAM },
593 { 0xc000, 0xc00f, paletteram_BBGGGRRR_w, &paletteram },
594 { 0xc804, 0xc807, pia_0_w },
595 { 0xc80c, 0xc80f, pia_1_w },
596 { 0xc900, 0xc900, blaster_vram_select_w },
597 { 0xc940, 0xc940, blaster_remap_select_w },
598 { 0xc980, 0xc980, blaster_bank_select_w },
599 { 0xc9c0, 0xc9c0, MWA_RAM, &blaster_video_bits },
600 { 0xca00, 0xca07, williams_blitter_w, &williams_blitterram },
601 { 0xcbff, 0xcbff, watchdog_reset_w },
602 { 0xcc00, 0xcfff, MWA_RAM },
603 { 0xd000, 0xffff, MWA_ROM },
604 MEMORY_END
605
606
607
608 /*************************************
609 *
610 * Later Williams memory handlers
611 *
612 *************************************/
613
614 static MEMORY_READ_START( williams2_readmem )
615 { 0x0000, 0x7fff, MRA_BANK1 },
616 { 0x8000, 0x87ff, MRA_BANK2 },
617 { 0x8800, 0x8fff, MRA_BANK3 },
618 { 0x9000, 0xbfff, MRA_RAM },
619 { 0xc000, 0xc7ff, MRA_RAM },
620 { 0xc980, 0xc983, pia_1_r },
621 { 0xc984, 0xc987, pia_0_r },
622 { 0xcbe0, 0xcbe0, williams_video_counter_r },
623 { 0xcc00, 0xcfff, MRA_RAM },
624 { 0xd000, 0xffff, MRA_ROM },
625 MEMORY_END
626
627
628 static MEMORY_WRITE_START( williams2_writemem )
629 { 0x0000, 0x8fff, williams2_videoram_w, &videoram, &videoram_size },
630 { 0x9000, 0xbfff, MWA_RAM },
631 { 0xc000, 0xc7ff, MWA_RAM },
632 { 0xc800, 0xc800, williams2_bank_select_w },
633 { 0xc880, 0xc887, williams_blitter_w, &williams_blitterram },
634 { 0xc900, 0xc900, watchdog_reset_w },
635 { 0xc980, 0xc983, pia_1_w },
636 { 0xc984, 0xc987, pia_0_w },
637 { 0xc98c, 0xc98c, williams2_7segment_w },
638 { 0xcb00, 0xcb00, williams2_fg_select_w },
639 { 0xcb20, 0xcb20, williams2_bg_select_w },
640 { 0xcb40, 0xcb40, MWA_RAM, &williams2_xscroll_low },
641 { 0xcb60, 0xcb60, MWA_RAM, &williams2_xscroll_high },
642 { 0xcb80, 0xcb80, MWA_RAM },
643 { 0xcba0, 0xcba0, MWA_RAM, &williams2_blit_inhibit },
644 { 0xcc00, 0xcfff, MWA_RAM },
645 { 0xd000, 0xffff, MWA_ROM },
646 MEMORY_END
647
648
649
650 /*************************************
651 *
652 * Sound board memory handlers
653 *
654 *************************************/
655
656 static MEMORY_READ_START( sound_readmem )
657 { 0x0000, 0x007f, MRA_RAM },
658 { 0x0400, 0x0403, pia_2_r },
659 { 0x8400, 0x8403, pia_2_r }, /* used by Colony 7, perhaps others? */
660 { 0xb000, 0xffff, MRA_ROM }, /* most games start at $F000, Sinistar starts at $B000 */
661 MEMORY_END
662
663
664 static MEMORY_WRITE_START( sound_writemem )
665 { 0x0000, 0x007f, MWA_RAM },
666 { 0x0400, 0x0403, pia_2_w },
667 { 0x8400, 0x8403, pia_2_w }, /* used by Colony 7, perhaps others? */
668 { 0xb000, 0xffff, MWA_ROM }, /* most games start at $F000, Sinistar starts at $B000 */
669 MEMORY_END
670
671
672
673 /*************************************
674 *
675 * Later sound board memory handlers
676 *
677 *************************************/
678
679 static MEMORY_READ_START( williams2_sound_readmem )
680 { 0x0000, 0x00ff, MRA_RAM },
681 { 0x2000, 0x2003, pia_2_r },
682 { 0xe000, 0xffff, MRA_ROM },
683 MEMORY_END
684
685
686 static MEMORY_WRITE_START( williams2_sound_writemem )
687 { 0x0000, 0x00ff, MWA_RAM },
688 { 0x2000, 0x2003, pia_2_w },
689 { 0xe000, 0xffff, MWA_ROM },
690 MEMORY_END
691
692
693
694 /*************************************
695 *
696 * Port definitions
697 *
698 *************************************/
699
700 INPUT_PORTS_START( defender )
701 PORT_START /* IN0 */
702 PORT_BITX(0x01, IP_ACTIVE_HIGH, IPT_BUTTON1, "Fire", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
703 PORT_BITX(0x02, IP_ACTIVE_HIGH, IPT_BUTTON2, "Thrust", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
704 PORT_BITX(0x04, IP_ACTIVE_HIGH, IPT_BUTTON3, "Smart Bomb", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
705 PORT_BITX(0x08, IP_ACTIVE_HIGH, IPT_BUTTON4, "Hyperspace", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
706 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 )
707 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
708 PORT_BITX(0x40, IP_ACTIVE_HIGH, IPT_BUTTON5, "Reverse", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
709 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_8WAY)
710
711 PORT_START /* IN1 */
712 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_8WAY)
713 PORT_BIT( 0xfe, IP_ACTIVE_HIGH, IPT_UNKNOWN )
714
715 PORT_START /* IN2 */
716 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
717 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
718 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
719 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
720 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
721 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
722 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
723
724 PORT_START /* IN3 - fake port for better joystick control */
725 /* This fake port is handled via defender_input_port_1 */
726 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_CHEAT )
727 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_CHEAT )
728 INPUT_PORTS_END
729
730
731 INPUT_PORTS_START( colony7 )
732 PORT_START /* IN0 */
733 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
734 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
735 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
736 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
737 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 )
738 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
739 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 )
740 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 )
741
742 PORT_START /* IN1 */
743 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON3 )
744 PORT_BIT( 0xfe, IP_ACTIVE_HIGH, IPT_UNKNOWN )
745
746 PORT_START /* IN2 */
747 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNKNOWN )
748 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
749 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN )
750 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN )
751 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
752 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
753 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
754 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
755 INPUT_PORTS_END
756
757
758 INPUT_PORTS_START( stargate )
759 PORT_START /* IN0 */
760 PORT_BITX(0x01, IP_ACTIVE_HIGH, IPT_BUTTON1, "Fire", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
761 PORT_BITX(0x02, IP_ACTIVE_HIGH, IPT_BUTTON2, "Thrust", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
762 PORT_BITX(0x04, IP_ACTIVE_HIGH, IPT_BUTTON3, "Smart Bomb", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
763 PORT_BITX(0x08, IP_ACTIVE_HIGH, IPT_BUTTON6, "Hyperspace", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
764 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 )
765 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
766 PORT_BITX(0x40, IP_ACTIVE_HIGH, IPT_BUTTON4, "Reverse", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
767 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_8WAY )
768
769 PORT_START /* IN1 */
770 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_8WAY )
771 PORT_BITX(0x02, IP_ACTIVE_HIGH, IPT_BUTTON5, "Inviso", IP_KEY_DEFAULT, IP_JOY_DEFAULT )
772 PORT_BIT( 0xfc, IP_ACTIVE_HIGH, IPT_UNKNOWN )
773
774 PORT_START /* IN2 */
775 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
776 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
777 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
778 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
779 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
780 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
781 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
782
783 PORT_START /* IN3 - fake port for better joystick control */
784 /* This fake port is handled via stargate_input_port_0 */
785 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_CHEAT )
786 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_CHEAT )
787 INPUT_PORTS_END
788
789
790 INPUT_PORTS_START( joust )
791 PORT_START /* IN0 */
792 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_2WAY | IPF_PLAYER2 )
793 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_2WAY | IPF_PLAYER2 )
794 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 )
795 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
796 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 )
797 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
798 PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )
799
800 PORT_START /* IN1 */
801 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
802
803 PORT_START /* IN2 */
804 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
805 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
806 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
807 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
808 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
809 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
810 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
811
812 PORT_START /* IN3 (muxed with IN0) */
813 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_2WAY | IPF_PLAYER1 )
814 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_2WAY | IPF_PLAYER1 )
815 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 )
816 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
817 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 )
818 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
819 PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )
820 INPUT_PORTS_END
821
822
823 INPUT_PORTS_START( robotron )
824 PORT_START /* IN0 */
825 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_UP )
826 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_DOWN )
827 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_LEFT )
828 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_RIGHT )
829 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
830 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
831 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP )
832 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_DOWN )
833
834 PORT_START /* IN1 */
835 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_LEFT )
836 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_RIGHT )
837 PORT_BIT( 0xfc, IP_ACTIVE_HIGH, IPT_UNKNOWN )
838
839 PORT_START /* IN2 */
840 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
841 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
842 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
843 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
844 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
845 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
846 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
847 INPUT_PORTS_END
848
849
850 INPUT_PORTS_START( spdball )
851 PORT_START /* IN0 */
852 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
853
854 PORT_START /* IN1 */
855 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
856
857 PORT_START /* IN2 */
858 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
859 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
860 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
861 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
862 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
863 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
864 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
865
866 PORT_START /* IN3 */
867 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
868 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
869 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
870 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
871 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 )
872 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
873 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 )
874 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
875
876 PORT_START /* IN4 */
877 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
878 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
879 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
880 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
881 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN )
882 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
883 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
884 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 )
885
886 PORT_START /* analog */
887 PORT_ANALOG( 0xff, 0x80, IPT_TRACKBALL_Y | IPF_PLAYER1 | IPF_REVERSE, 25, 32, 0, 255 )
888
889 PORT_START /* analog */
890 PORT_ANALOG( 0xff, 0x80, IPT_TRACKBALL_X | IPF_PLAYER1, 25, 32, 0, 255 )
891
892 PORT_START /* analog */
893 PORT_ANALOG( 0xff, 0x80, IPT_TRACKBALL_Y | IPF_PLAYER2 | IPF_REVERSE, 25, 32, 0, 255 )
894
895 PORT_START /* analog */
896 PORT_ANALOG( 0xff, 0x80, IPT_TRACKBALL_X | IPF_PLAYER2, 25, 32, 0, 255 )
897 INPUT_PORTS_END
898
899
900 INPUT_PORTS_START( alienar )
901 PORT_START /* IN0 */
902 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
903 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
904 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
905 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
906 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
907 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
908 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 )
909 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 )
910
911 PORT_START /* IN1 */
912 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
913
914 PORT_START /* IN2 */
915 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
916 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
917 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN3 )
918 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
919 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
920 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
921 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
922 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
923
924 PORT_START /* IN3 */ /* (muxed with IN0) */
925 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
926 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
927 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
928 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
929 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
930 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
931 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 )
932 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 )
933 INPUT_PORTS_END
934
935 INPUT_PORTS_START( bubbles )
936 PORT_START /* IN0 */
937 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
938 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
939 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
940 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
941 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 )
942 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
943
944 PORT_START /* IN1 */
945 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
946
947 PORT_START /* IN2 */
948 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
949 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
950 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
951 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
952 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
953 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
954 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
955 INPUT_PORTS_END
956
957
958 INPUT_PORTS_START( splat )
959 PORT_START /* IN0 */
960 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_UP | IPF_8WAY | IPF_PLAYER2 )
961 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_DOWN | IPF_8WAY | IPF_PLAYER2 )
962 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_LEFT | IPF_8WAY | IPF_PLAYER2 )
963 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_RIGHT | IPF_8WAY | IPF_PLAYER2 )
964 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
965 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
966 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP | IPF_8WAY | IPF_PLAYER2 )
967 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_DOWN | IPF_8WAY | IPF_PLAYER2 )
968
969 PORT_START /* IN2 */
970 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_LEFT | IPF_8WAY | IPF_PLAYER2 )
971 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_RIGHT | IPF_8WAY | IPF_PLAYER2 )
972 PORT_BIT( 0xfc, IP_ACTIVE_HIGH, IPT_UNKNOWN )
973
974 PORT_START /* IN4 */
975 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
976 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
977 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
978 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
979 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
980 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
981 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
982
983 PORT_START /* IN3 */
984 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_UP | IPF_8WAY | IPF_PLAYER1 )
985 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_DOWN | IPF_8WAY | IPF_PLAYER1 )
986 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_LEFT | IPF_8WAY | IPF_PLAYER1 )
987 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_RIGHT | IPF_8WAY | IPF_PLAYER1 )
988 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
989 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
990 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP | IPF_8WAY | IPF_PLAYER1 )
991 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_DOWN | IPF_8WAY | IPF_PLAYER1 )
992
993 PORT_START /* IN4 */
994 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_LEFT | IPF_8WAY | IPF_PLAYER1 )
995 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_RIGHT | IPF_8WAY | IPF_PLAYER1 )
996 PORT_BIT( 0xfc, IP_ACTIVE_HIGH, IPT_UNKNOWN )
997 INPUT_PORTS_END
998
999
1000 INPUT_PORTS_START( sinistar )
1001 PORT_START /* IN0 */
1002 /* pseudo analog joystick, see below */
1003
1004 PORT_START /* IN1 */
1005 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 )
1006 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 )
1007 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
1008 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
1009
1010 PORT_START /* IN2 */
1011 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1012 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1013 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1014 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1015 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
1016 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
1017 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1018
1019 PORT_START /* fake, converted by sinistar_input_port_0() */
1020 PORT_ANALOG( 0xff, 0x38, IPT_AD_STICK_X, 100, 10, 0x00, 0x6f )
1021
1022 PORT_START /* fake, converted by sinistar_input_port_0() */
1023 PORT_ANALOG( 0xff, 0x38, IPT_AD_STICK_Y | IPF_REVERSE, 100, 10, 0x00, 0x6f )
1024 INPUT_PORTS_END
1025
1026
1027 INPUT_PORTS_START( playball )
1028 PORT_START /* IN0 */
1029 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 )
1030 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
1031 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
1032 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START2 )
1033
1034 PORT_START /* IN1 */
1035 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1036
1037 PORT_START /* IN2 */
1038 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1039 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1040 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1041 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1042 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
1043 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
1044 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1045 INPUT_PORTS_END
1046
1047
1048 INPUT_PORTS_START( lottofun )
1049 PORT_START /* IN0 */
1050 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
1051 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
1052 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
1053 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
1054 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
1055 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* Used by ticket dispenser */
1056
1057 PORT_START /* IN1 */
1058 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1059
1060 PORT_START /* IN2 */
1061 PORT_BITX(0x01, IP_ACTIVE_HIGH, IPF_TOGGLE, "Memory Protect", KEYCODE_F1, IP_JOY_NONE )
1062 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1063 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN2 )
1064 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1065 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
1066 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* COIN1.5? :)*/
1067 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1068 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* Sound board handshake*/
1069 INPUT_PORTS_END
1070
1071
1072 INPUT_PORTS_START( blaster )
1073 PORT_START /* IN0 */
1074 /* pseudo analog joystick, see below */
1075
1076 PORT_START /* IN1 */
1077 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 )
1078 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 )
1079 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 )
1080 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1081 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
1082 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
1083 PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1084
1085 PORT_START /* IN2 */
1086 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1087 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1088 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1089 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1090 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
1091 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
1092 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1093
1094 PORT_START /* fake, converted by sinistar_input_port_0() */
1095 PORT_ANALOG( 0xff, 0x38, IPT_AD_STICK_X, 100, 10, 0x00, 0x6f )
1096
1097 PORT_START /* fake, converted by sinistar_input_port_0() */
1098 PORT_ANALOG( 0xff, 0x38, IPT_AD_STICK_Y | IPF_REVERSE, 100, 10, 0x00, 0x6f )
1099 INPUT_PORTS_END
1100
1101
1102 INPUT_PORTS_START( blastkit )
1103 PORT_START /* IN0 */
1104 /* pseudo analog joystick, see below */
1105
1106 PORT_START /* IN1 */
1107 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 )
1108 PORT_BIT( 0xfe, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1109
1110 PORT_START /* IN2 */
1111 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1112 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1113 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1114 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1115 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
1116 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
1117 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1118
1119 PORT_START /* fake, converted by sinistar_input_port_0() */
1120 PORT_ANALOG( 0xff, 0x38, IPT_AD_STICK_X, 100, 10, 0x00, 0x6f )
1121
1122 PORT_START /* fake, converted by sinistar_input_port_0() */
1123 PORT_ANALOG( 0xff, 0x38, IPT_AD_STICK_Y | IPF_REVERSE, 100, 10, 0x00, 0x6f )
1124
1125 PORT_START /* IN3 */
1126 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 )
1127 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON3 )
1128 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START1 )
1129 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START2 )
1130 PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1131 INPUT_PORTS_END
1132
1133
1134 INPUT_PORTS_START( mysticm )
1135 PORT_START /* IN1 */
1136 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
1137 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
1138 PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
1139 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
1140 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
1141 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START2 )
1142 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Key */
1143 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON1 )
1144
1145 PORT_START
1146 PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
1147
1148 PORT_START /* IN0 */
1149 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1150 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1151 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1152 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 )
1153 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN2 )
1154 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1155 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1156 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
1157 INPUT_PORTS_END
1158
1159
1160 INPUT_PORTS_START( tshoot )
1161 PORT_START /* IN0 (muxed with IN3)*/
1162 PORT_ANALOG(0x3F, 0x20, IPT_LIGHTGUN_Y, 25, 10, 0, 0x3F)
1163 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1164 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
1165
1166 PORT_START /* IN1 */
1167 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 )
1168 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON3 )
1169 PORT_BIT( 0x3C, IP_ACTIVE_HIGH, IPT_UNUSED ) /* 0011-1100 output */
1170 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
1171 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 )
1172
1173 PORT_START /* IN2 */
1174 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1175 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1176 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1177 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 )
1178 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN2 )
1179 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1180 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1181 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
1182
1183 PORT_START /* IN3 (muxed with IN0) */
1184 PORT_ANALOG(0x3F, 0x20, IPT_LIGHTGUN_X, 25, 10, 0, 0x3F)
1185 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1186 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
1187 INPUT_PORTS_END
1188
1189
1190 INPUT_PORTS_START( inferno )
1191 PORT_START /* IN0 (muxed with IN3) */
1192 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKLEFT_UP )
1193 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKLEFT_LEFT )
1194 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKLEFT_RIGHT )
1195 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKLEFT_DOWN )
1196 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKRIGHT_UP )
1197 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKRIGHT_LEFT )
1198 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKRIGHT_RIGHT )
1199 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPF_PLAYER1 | IPT_JOYSTICKRIGHT_DOWN )
1200
1201 PORT_START /* IN1 */
1202 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPF_PLAYER1 | IPT_BUTTON1 )
1203 PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPF_PLAYER2 | IPT_BUTTON1 )
1204 PORT_BIT( 0x3C, IP_ACTIVE_HIGH, IPT_UNUSED )
1205 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
1206 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 )
1207
1208 PORT_START /* IN2 */
1209 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1210 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1211 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1212 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 )
1213 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN2 )
1214 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1215 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1216 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
1217
1218 PORT_START /* IN3 (muxed with IN0) */
1219 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKLEFT_UP )
1220 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKLEFT_LEFT )
1221 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKLEFT_RIGHT )
1222 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKLEFT_DOWN )
1223 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKRIGHT_UP )
1224 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKRIGHT_LEFT )
1225 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKRIGHT_RIGHT )
1226 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPF_PLAYER2 | IPT_JOYSTICKRIGHT_DOWN )
1227 INPUT_PORTS_END
1228
1229
1230 INPUT_PORTS_START( joust2 )
1231 PORT_START /* IN0 */
1232 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_2WAY | IPF_PLAYER1 )
1233 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_2WAY | IPF_PLAYER1 )
1234 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1235 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
1236 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1237 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1238 PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
1239
1240 PORT_START /* IN1 */
1241 PORT_BIT( 0xFF, IP_ACTIVE_HIGH, IPT_UNUSED )
1242
1243 PORT_START /* IN2 */
1244 PORT_BITX(0x01, IP_ACTIVE_HIGH, 0, "Auto Up", KEYCODE_F1, IP_JOY_NONE )
1245 PORT_BITX(0x02, IP_ACTIVE_HIGH, 0, "Advance", KEYCODE_F2, IP_JOY_NONE )
1246 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "High Score Reset", KEYCODE_7, IP_JOY_NONE )
1247 PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 )
1248 PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN2 )
1249 PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SERVICE1 )
1250 PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
1251 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
1252
1253 PORT_START /* IN3 (muxed with IN0) */
1254 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_2WAY | IPF_PLAYER2 )
1255 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_2WAY | IPF_PLAYER2 )
1256 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1257 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
1258 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1259 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1260 PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
1261 INPUT_PORTS_END
1262
1263
1264
1265 /*************************************
1266 *
1267 * Graphics definitions
1268 *
1269 *************************************/
1270
1271 static struct GfxLayout williams2_layout =
1272 {
1273 24, 16,
1274 256,
1275 4,
1276 { 0, 1, 2, 3 },
1277 { 0+0*8, 4+0*8, 0+0*8+0x4000*8, 4+0*8+0x4000*8, 0+0*8+0x8000*8, 4+0*8+0x8000*8,
1278 0+1*8, 4+1*8, 0+1*8+0x4000*8, 4+1*8+0x4000*8, 0+1*8+0x8000*8, 4+1*8+0x8000*8,
1279 0+2*8, 4+2*8, 0+2*8+0x4000*8, 4+2*8+0x4000*8, 0+2*8+0x8000*8, 4+2*8+0x8000*8,
1280 0+3*8, 4+3*8, 0+3*8+0x4000*8, 4+3*8+0x4000*8, 0+3*8+0x8000*8, 4+3*8+0x8000*8
1281 },
1282 { 0*8, 4*8, 8*8, 12*8, 16*8, 20*8, 24*8, 28*8, 32*8, 36*8, 40*8, 44*8, 48*8, 52*8, 56*8, 60*8 },
1283 4*16*8
1284 };
1285
1286
1287 static struct GfxDecodeInfo williams2_gfxdecodeinfo[] =
1288 {
1289 { REGION_GFX1, 0, &williams2_layout, 16, 8 },
1290 { -1 } /* end of array */
1291 };
1292
1293
1294
1295 /*************************************
1296 *
1297 * Sound definitions
1298 *
1299 *************************************/
1300
1301 static struct DACinterface dac_interface =
1302 {
1303 1,
1304 { 50 }
1305 };
1306
1307
1308 static struct hc55516_interface sinistar_cvsd_interface =
1309 {
1310 1,
1311 { 80 },
1312 };
1313
1314
1315
1316 /*************************************
1317 *
1318 * Machine driver
1319 *
1320 *************************************/
1321
1322 static MACHINE_DRIVER_START( defender )
1323
1324 /* basic machine hardware */
1325 MDRV_CPU_ADD_TAG("main", M6809, 1000000)
MDRV_CPU_MEMORY(defender_readmem,defender_writemem)1326 MDRV_CPU_MEMORY(defender_readmem,defender_writemem)
1327
1328 MDRV_CPU_ADD_TAG("sound", M6808, 3579000/4)
1329 MDRV_CPU_FLAGS(CPU_AUDIO_CPU)
1330 MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
1331
1332 MDRV_FRAMES_PER_SECOND(60)
1333 MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
1334
1335 MDRV_MACHINE_INIT(defender)
1336 MDRV_NVRAM_HANDLER(generic_0fill)
1337
1338 /* video hardware */
1339 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
1340 MDRV_SCREEN_SIZE(304, 256)
1341 MDRV_VISIBLE_AREA(6, 298-1, 7, 247-1)
1342 MDRV_PALETTE_LENGTH(16)
1343
1344 MDRV_VIDEO_START(williams)
1345 MDRV_VIDEO_UPDATE(williams)
1346
1347 /* sound hardware */
1348 MDRV_SOUND_ADD(DAC, dac_interface)
1349 MACHINE_DRIVER_END
1350
1351
1352 static MACHINE_DRIVER_START( williams )
1353
1354 /* basic machine hardware */
1355 MDRV_IMPORT_FROM(defender)
1356
1357 MDRV_CPU_MODIFY("main")
1358 MDRV_CPU_MEMORY(williams_readmem,williams_writemem)
1359
1360 MDRV_MACHINE_INIT(williams)
1361 MACHINE_DRIVER_END
1362
1363 static MACHINE_DRIVER_START( alienar )
1364
1365
1366 /* basic machine hardware */
1367 MDRV_CPU_ADD_TAG("main", M6809, 1000000)
1368 MDRV_CPU_MEMORY(defender_readmem,defender_writemem)
1369
1370 MDRV_FRAMES_PER_SECOND(60)
1371 MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
1372
1373 MDRV_MACHINE_INIT(defender)
1374 MDRV_NVRAM_HANDLER(generic_0fill)
1375
1376 /* video hardware */
1377 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
1378 MDRV_SCREEN_SIZE(304, 256)
1379 MDRV_VISIBLE_AREA(6, 298-1, 7, 247-1)
1380 MDRV_PALETTE_LENGTH(16)
1381
1382 MDRV_VIDEO_START(williams)
1383 MDRV_VIDEO_UPDATE(williams)
1384
1385 /* sound hardware */
1386 MDRV_SOUND_ADD(DAC, dac_interface)
1387
1388 MDRV_CPU_MODIFY("main")
1389 MDRV_CPU_MEMORY(williams_readmem,williams_writemem)
1390
1391 MDRV_MACHINE_INIT(williams)
1392 MACHINE_DRIVER_END
1393
1394 static MACHINE_DRIVER_START( sinistar )
1395
1396 /* basic machine hardware */
1397 MDRV_IMPORT_FROM(williams)
1398
1399 /* sound hardware */
1400 MDRV_SOUND_ADD(HC55516, sinistar_cvsd_interface)
1401 MACHINE_DRIVER_END
1402
1403
1404 static MACHINE_DRIVER_START( alienaru )
1405
1406 /* basic machine hardware */
1407 MDRV_IMPORT_FROM(defender)
1408
1409 MDRV_CPU_MODIFY("main")
1410 MDRV_CPU_MEMORY(williams_readmem,williams_writemem)
1411
1412 MDRV_MACHINE_INIT(williams)
1413 MACHINE_DRIVER_END
1414
1415
1416 static MACHINE_DRIVER_START( playball )
1417
1418 /* basic machine hardware */
1419 MDRV_IMPORT_FROM(sinistar)
1420
1421 /* video hardware */
1422 MDRV_VISIBLE_AREA(6, 298-1, 8, 239-1)
1423 MACHINE_DRIVER_END
1424
1425
1426
1427
1428
1429 static MACHINE_DRIVER_START( blaster )
1430
1431 /* basic machine hardware */
1432 MDRV_IMPORT_FROM(williams)
1433
1434 MDRV_CPU_MODIFY("main")
1435 MDRV_CPU_MEMORY(blaster_readmem,blaster_writemem)
1436
1437 /* video hardware */
1438 MDRV_PALETTE_LENGTH(16+240)
1439
1440 MDRV_VIDEO_START(blaster)
1441 MACHINE_DRIVER_END
1442
1443
1444 static MACHINE_DRIVER_START( williams2 )
1445
1446 /* basic machine hardware */
1447 MDRV_CPU_ADD_TAG("main", M6809, 1000000)
1448 MDRV_CPU_MEMORY(williams2_readmem,williams2_writemem)
1449
1450 MDRV_CPU_ADD_TAG("sound", M6808, 3579000/4)
1451 MDRV_CPU_FLAGS(CPU_AUDIO_CPU)
1452 MDRV_CPU_MEMORY(williams2_sound_readmem,williams2_sound_writemem)
1453
1454 MDRV_FRAMES_PER_SECOND(60)
1455 MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
1456 MDRV_MACHINE_INIT(williams2)
1457 MDRV_NVRAM_HANDLER(generic_0fill)
1458
1459 /* video hardware */
1460 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
1461 MDRV_SCREEN_SIZE(288, 256)
1462 MDRV_VISIBLE_AREA(4, 288-1, 8, 248-1)
1463 MDRV_GFXDECODE(williams2_gfxdecodeinfo)
1464 MDRV_PALETTE_LENGTH(16+8*16)
1465
1466 MDRV_VIDEO_START(williams2)
1467 MDRV_VIDEO_UPDATE(williams2)
1468
1469 /* sound hardware */
1470 MDRV_SOUND_ADD_TAG("wmsdac", DAC, dac_interface)
1471 MACHINE_DRIVER_END
1472
1473
1474 static MACHINE_DRIVER_START( joust2 )
1475
1476 /* basic machine hardware */
1477 MDRV_IMPORT_FROM(williams2)
1478 MDRV_IMPORT_FROM(williams_cvsd_sound)
1479
1480 MDRV_MACHINE_INIT(joust2)
1481
1482 /* sound hardware */
1483 MDRV_SOUND_REMOVE("wmsdac")
1484 MACHINE_DRIVER_END
1485
1486
1487
1488 /*************************************
1489 *
1490 * ROM definitions
1491 *
1492 *************************************/
1493
1494 ROM_START( defender )
1495 ROM_REGION( 0x14000, REGION_CPU1, 0 )
1496 ROM_LOAD( "defend.1", 0x0d000, 0x0800, CRC(c3e52d7e) SHA1(a57f5278ffe44248fc73f9925d107f4024ad981a) )
1497 ROM_LOAD( "defend.4", 0x0d800, 0x0800, CRC(9a72348b) SHA1(ed6ce796702ff32209ced3cb1ba3837dbafa526f) )
1498 ROM_LOAD( "defend.2", 0x0e000, 0x1000, CRC(89b75984) SHA1(a9481478da38f99efb67f0ecf82d084e14b93b42) )
1499 ROM_LOAD( "defend.3", 0x0f000, 0x1000, CRC(94f51e9b) SHA1(a24cfc55de56a72758c76fe2a55f1ec6c353b16f) )
1500 /* bank 0 is the place for CMOS ram */
1501 ROM_LOAD( "defend.9", 0x10000, 0x0800, CRC(6870e8a5) SHA1(67ccc194b1753a18af0c85f5e603355549c4f727) )
1502 ROM_LOAD( "defend.12", 0x10800, 0x0800, CRC(f1f88938) SHA1(26e48dfeefa0766837b1e762695b9532dbc8bc5e) )
1503 ROM_LOAD( "defend.8", 0x11000, 0x0800, CRC(b649e306) SHA1(9d7bc3c89e5a53c575946f06702c722b864b1ff0) )
1504 ROM_LOAD( "defend.11", 0x11800, 0x0800, CRC(9deaf6d9) SHA1(59b018ba0f3fe6eadfd387dc180ac281460358bc) )
1505 ROM_LOAD( "defend.7", 0x12000, 0x0800, CRC(339e092e) SHA1(2f89951dbe55d80df43df8dcf497171f73e726d3) )
1506 ROM_LOAD( "defend.10", 0x12800, 0x0800, CRC(a543b167) SHA1(9292b94b0d74e57e03aada4852ad1997c34122ff) )
1507 ROM_RELOAD( 0x13800, 0x0800 )
1508 ROM_LOAD( "defend.6", 0x13000, 0x0800, CRC(65f4efd1) SHA1(a960fd1559ed74b81deba434391e49fc6ec389ca) )
1509
1510 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1511 ROM_LOAD( "defend.snd", 0xf800, 0x0800, CRC(fefd5b48) SHA1(ceb0d18483f0691978c604db94417e6941ad7ff2) )
1512
1513 ROM_END
1514
1515
1516 ROM_START( defendg )
1517 ROM_REGION( 0x14000, REGION_CPU1, 0 )
1518 ROM_LOAD( "defeng01.bin", 0x0d000, 0x0800, CRC(6111d74d) SHA1(2a335bdce8269f75012df44b446cb261ddd5924c) )
1519 ROM_LOAD( "defeng04.bin", 0x0d800, 0x0800, CRC(3cfc04ce) SHA1(8ee65c7daed4d6956d0e15ada4dc414c28376012) )
1520 ROM_LOAD( "defeng02.bin", 0x0e000, 0x1000, CRC(d184ab6b) SHA1(ed61a95b04f6162aedba8a72bc46005b77283955) )
1521 ROM_LOAD( "defeng03.bin", 0x0f000, 0x1000, CRC(788b76d7) SHA1(92987207770a870b5be61c820e9e229801f1fa7a) )
1522 /* bank 0 is the place for CMOS ram */
1523 ROM_LOAD( "defeng09.bin", 0x10000, 0x0800, CRC(f57caa62) SHA1(c8c91b96fd3bc98eddcc1503159050dae5755001) )
1524 ROM_LOAD( "defeng12.bin", 0x10800, 0x0800, CRC(33db686f) SHA1(34bc7fa10b7996efcc53d3a891b2983874269828) )
1525 ROM_LOAD( "defeng08.bin", 0x11000, 0x0800, CRC(9a9eb3d2) SHA1(306a3a24931e1aa5fcfd71e3f117cc726d0920ac) )
1526 ROM_LOAD( "defeng11.bin", 0x11800, 0x0800, CRC(5ca4e860) SHA1(031188c009b8fca92703a0cc0c2bb44976212ae9) )
1527 ROM_LOAD( "defeng07.bin", 0x12000, 0x0800, CRC(545c3326) SHA1(98199df5206c261061b0108c68ab9128fa0779eb) )
1528 ROM_LOAD( "defeng10.bin", 0x12800, 0x0800, CRC(941cf34e) SHA1(411dcb18b67585982672ff687a9249f4890faa1b) )
1529 ROM_RELOAD( 0x13800, 0x0800 )
1530 ROM_LOAD( "defeng06.bin", 0x13000, 0x0800, CRC(3af34c05) SHA1(71f3ced06a373fa4805c856bd9fc97760787a920) )
1531
1532 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1533 ROM_LOAD( "defend.snd", 0xf800, 0x0800, CRC(fefd5b48) SHA1(ceb0d18483f0691978c604db94417e6941ad7ff2) )
1534 ROM_END
1535
1536
1537 ROM_START( defendw )
1538 ROM_REGION( 0x14000, REGION_CPU1, 0 )
1539 ROM_LOAD( "wb01.bin", 0x0d000, 0x1000, CRC(0ee1019d) SHA1(a76247e825b8267abfd195c12f96348fe10d4cbc) )
1540 ROM_LOAD( "defeng02.bin", 0x0e000, 0x1000, CRC(d184ab6b) SHA1(ed61a95b04f6162aedba8a72bc46005b77283955) )
1541 ROM_LOAD( "wb03.bin", 0x0f000, 0x1000, CRC(a732d649) SHA1(b681882c02c5870ad613edc77255969a5f796422) )
1542 /* bank 0 is the place for CMOS ram */
1543 ROM_LOAD( "defeng09.bin", 0x10000, 0x0800, CRC(f57caa62) SHA1(c8c91b96fd3bc98eddcc1503159050dae5755001) )
1544 ROM_LOAD( "defeng12.bin", 0x10800, 0x0800, CRC(33db686f) SHA1(34bc7fa10b7996efcc53d3a891b2983874269828) )
1545 ROM_LOAD( "defeng08.bin", 0x11000, 0x0800, CRC(9a9eb3d2) SHA1(306a3a24931e1aa5fcfd71e3f117cc726d0920ac) )
1546 ROM_LOAD( "defeng11.bin", 0x11800, 0x0800, CRC(5ca4e860) SHA1(031188c009b8fca92703a0cc0c2bb44976212ae9) )
1547 ROM_LOAD( "defeng07.bin", 0x12000, 0x0800, CRC(545c3326) SHA1(98199df5206c261061b0108c68ab9128fa0779eb) )
1548 ROM_LOAD( "defeng10.bin", 0x12800, 0x0800, CRC(941cf34e) SHA1(411dcb18b67585982672ff687a9249f4890faa1b) )
1549 ROM_RELOAD( 0x13800, 0x0800 )
1550 ROM_LOAD( "defeng06.bin", 0x13000, 0x0800, CRC(3af34c05) SHA1(71f3ced06a373fa4805c856bd9fc97760787a920) )
1551
1552 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1553 ROM_LOAD( "defend.snd", 0xf800, 0x0800, CRC(fefd5b48) SHA1(ceb0d18483f0691978c604db94417e6941ad7ff2) )
1554 ROM_END
1555
1556
1557 ROM_START( defndjeu )
1558 ROM_REGION( 0x15000, REGION_CPU1, 0 )
1559 ROM_LOAD( "15", 0x0d000, 0x1000, CRC(706a24bd) SHA1(60cef3d4f7204eff42de2c08244863e83bc842b4) )
1560 ROM_LOAD( "16", 0x0e000, 0x1000, CRC(03201532) SHA1(77e8c10ba0ecb6e7a7cb4229a5025c4b9ea4c73e) )
1561 ROM_LOAD( "17", 0x0f000, 0x1000, CRC(25287eca) SHA1(ec81181a5a0ac2adf7c0dabbec638f886c13e6ec) )
1562 /* bank 0 is the place for CMOS ram */
1563 ROM_LOAD( "18", 0x10000, 0x1000, CRC(e99d5679) SHA1(b4344a32aed6cc64284661c03993a59718289c82) )
1564 ROM_LOAD( "19", 0x11000, 0x1000, CRC(769f5984) SHA1(0ea49754b45bc214fd2b69846ede738994f07ee3) )
1565 ROM_LOAD( "20", 0x12000, 0x1000, CRC(12fa0788) SHA1(7464386521c9db0153caf1ea05a353f0018651e5) )
1566 ROM_LOAD( "21", 0x13000, 0x1000, CRC(bddb71a3) SHA1(ecba4c09a9d59fd7aa02efa240461df89159d2ec) )
1567 ROM_RELOAD( 0x14000, 0x1000 )
1568
1569 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1570 ROM_LOAD( "s", 0xf800, 0x0800, CRC(cb79ae42) SHA1(d22bef68ef62aa012f1919338a33621138c2278b) )
1571 ROM_END
1572
1573
1574 ROM_START( defcmnd )
1575 ROM_REGION( 0x15000, REGION_CPU1, 0 )
1576 ROM_LOAD( "defcmnda.1", 0x0d000, 0x1000, CRC(68effc1d) SHA1(459fd95cdf94233e1a4302d1c166e0f7cc239579) )
1577 ROM_LOAD( "defcmnda.2", 0x0e000, 0x1000, CRC(1126adc9) SHA1(526cf1ca3a7eefd6115d74ac9af1a50774cc258e) )
1578 ROM_LOAD( "defcmnda.3", 0x0f000, 0x1000, CRC(7340209d) SHA1(d2cdab8ac4830ac027655ed7fe54314c5b87fdb3) )
1579 /* bank 0 is the place for CMOS ram */
1580 ROM_LOAD( "defcmnda.10", 0x10000, 0x0800, CRC(3dddae75) SHA1(f45fcf3e5ca9bf3edd692b4ee1e96f9f1d388522) )
1581 ROM_LOAD( "defcmnda.7", 0x10800, 0x0800, CRC(3f1e7cf8) SHA1(87afb4b1158e64039129bd8a9653bc61ab3e1e37) )
1582 ROM_LOAD( "defcmnda.9", 0x11000, 0x0800, CRC(8882e1ff) SHA1(9d54a39230acd01e0555f67ba2a3c9c6d66b59a1) )
1583 ROM_LOAD( "defcmnda.6", 0x11800, 0x0800, CRC(d068f0c5) SHA1(d32a4232756ca05972780cb35b0add12b31e8283) )
1584 ROM_LOAD( "defcmnda.8", 0x12000, 0x0800, CRC(fef4cb77) SHA1(96202e97f3392bc043a252e78d1c42b51c38d269) )
1585 ROM_LOAD( "defcmnda.5", 0x12800, 0x0800, CRC(49b50b40) SHA1(91cf841271a2f7d06f81477b4a450eb4580c7ca5) )
1586 ROM_LOAD( "defcmnda.4", 0x13000, 0x0800, CRC(43d42a1b) SHA1(b13d59940646451c00b49bbe4a41b9e2df4d7758) )
1587
1588 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1589 ROM_LOAD( "defcmnda.snd", 0xf800, 0x0800, CRC(f122d9c9) SHA1(70092fc354a2efbe7365be922fa36309b50d5c6f) )
1590 ROM_END
1591
1592
1593 ROM_START( defence )
1594 ROM_REGION( 0x15000, REGION_CPU1, 0 )
1595 ROM_LOAD( "1", 0x0d000, 0x1000, CRC(ebc93622) SHA1(bd1c098e91b24409925d01aa25de013451dba8e6) )
1596 ROM_LOAD( "2", 0x0e000, 0x1000, CRC(2a4f4f44) SHA1(8c0519fcb631e05e967cf0953ab2749183655594) )
1597 ROM_LOAD( "3", 0x0f000, 0x1000, CRC(a4112f91) SHA1(aad7ae81da7c20c7f4c1ef41697c8900a0c81f8e) )
1598 /* bank 0 is the place for CMOS ram */
1599 ROM_LOAD( "0", 0x10000, 0x0800, CRC(7a1e5998) SHA1(c133f43427540b39a383db7f46298942420d138a) )
1600 ROM_LOAD( "7", 0x10800, 0x0800, CRC(4c2616a3) SHA1(247411e2bb6618f77df6ea74aef1743fafb491a3) )
1601 ROM_LOAD( "9", 0x11000, 0x0800, CRC(7b146003) SHA1(04746f1b037bf6549fd53cff8f8c37136fce099e) )
1602 ROM_LOAD( "6", 0x11800, 0x0800, CRC(6d748030) SHA1(060ddf95eeb1318695a25c8c082a670fcdf117e7) )
1603 ROM_LOAD( "8", 0x12000, 0x0800, CRC(52d5438b) SHA1(087268ca30a42c00dbeceb4df901ddf80ae50125) )
1604 ROM_LOAD( "5", 0x12800, 0x0800, CRC(4a270340) SHA1(317fcc3156a099dbe48a0658757a9d6c4c54b23a) )
1605 ROM_LOAD( "4", 0x13000, 0x0800, CRC(e13f457c) SHA1(c706babc0005dfeb3c1b880047da6ec04bce407d) )
1606
1607 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1608 ROM_LOAD( "defcmnda.snd", 0xf800, 0x0800, CRC(f122d9c9) SHA1(70092fc354a2efbe7365be922fa36309b50d5c6f) )
1609 ROM_END
1610
1611
1612 ROM_START( mayday )
1613 ROM_REGION( 0x15000, REGION_CPU1, 0 )
1614 ROM_LOAD( "ic03-3.bin", 0x0d000, 0x1000, CRC(a1ff6e62) SHA1(c3c60ce94c6bdc4b07e45f386eff9a4aa4816953) )
1615 ROM_LOAD( "ic02-2.bin", 0x0e000, 0x1000, CRC(62183aea) SHA1(3843fe055ab6d3bb5a3362f57a63ce99e36cec47) )
1616 ROM_LOAD( "ic01-1.bin", 0x0f000, 0x1000, CRC(5dcb113f) SHA1(c41d671c336c68824771b7c4f0ffce39f1b6cd62) )
1617 /* bank 0 is the place for CMOS ram */
1618 ROM_LOAD( "ic04-4.bin", 0x10000, 0x1000, CRC(ea6a4ec8) SHA1(eaedc11968d88fd6f3c5b40c8d15d64ca6d0a1ab) )
1619 ROM_LOAD( "ic05-5.bin", 0x11000, 0x1000, CRC(0d797a3e) SHA1(289d2ecfebd7d71430d6624f3c9fbc91f9ef05cc) )
1620 ROM_LOAD( "ic06-6.bin", 0x12000, 0x1000, CRC(ee8bfcd6) SHA1(f68c44fdc18d57070aea604e261fb7b9407345a2) )
1621 ROM_LOAD( "ic07-7d.bin", 0x13000, 0x1000, CRC(d9c065e7) SHA1(ceeb58d1dfe14106271f17cf1c689b812216c3c0) )
1622 ROM_RELOAD( 0x14000, 0x1000 )
1623
1624 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1625 ROM_LOAD( "ic28-8.bin", 0xf800, 0x0800, CRC(fefd5b48) SHA1(ceb0d18483f0691978c604db94417e6941ad7ff2) )
1626 ROM_END
1627
1628
1629 ROM_START( maydaya )
1630 ROM_REGION( 0x15000, REGION_CPU1, 0 )
1631 ROM_LOAD( "mayday.c", 0x0d000, 0x1000, CRC(872a2f2d) SHA1(5823e889151b34e3fa739775440c788cca0b44c6) )
1632 ROM_LOAD( "mayday.b", 0x0e000, 0x1000, CRC(c4ab5e22) SHA1(757fd9311cffea420b1de8f574e84c13c0aac77d) )
1633 ROM_LOAD( "mayday.a", 0x0f000, 0x1000, CRC(329a1318) SHA1(4aa1d05ca05f37460eccb450ae61c21d86348f02) )
1634 /* bank 0 is the place for CMOS ram */
1635 ROM_LOAD( "mayday.d", 0x10000, 0x1000, CRC(c2ae4716) SHA1(582f763eda7d7d51ed0580045d6c617246b104b7) )
1636 ROM_LOAD( "mayday.e", 0x11000, 0x1000, CRC(41225666) SHA1(6d9c0347ff85bf9f9ae4648976c3ee971fec0f53) )
1637 ROM_LOAD( "mayday.f", 0x12000, 0x1000, CRC(c39be3c0) SHA1(91ac61e20d325a3a018ffe57bd79bfdfdc5a3cbd) )
1638 ROM_LOAD( "mayday.g", 0x13000, 0x1000, CRC(2bd0f106) SHA1(ac74d74a54d5b464e4c82b5b46ad7d20cdb7b6d7) )
1639 ROM_RELOAD( 0x14000, 0x1000 )
1640
1641 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1642 ROM_LOAD( "ic28-8.bin", 0xf800, 0x0800, CRC(fefd5b48) SHA1(ceb0d18483f0691978c604db94417e6941ad7ff2) )
1643 ROM_END
1644
1645
1646 ROM_START( maydayb )
1647 ROM_REGION( 0x15000, REGION_CPU1, 0 )
1648 ROM_LOAD( "ic03-3.bin", 0x0d000, 0x1000, CRC(a1ff6e62) SHA1(c3c60ce94c6bdc4b07e45f386eff9a4aa4816953) )
1649 ROM_LOAD( "ic02-2.bin", 0x0e000, 0x1000, CRC(62183aea) SHA1(3843fe055ab6d3bb5a3362f57a63ce99e36cec47) )
1650 ROM_LOAD( "ic01-1.bin", 0x0f000, 0x1000, CRC(5dcb113f) SHA1(c41d671c336c68824771b7c4f0ffce39f1b6cd62) )
1651 /* bank 0 is the place for CMOS ram */
1652 ROM_LOAD( "rom7.bin", 0x10000, 0x1000, CRC(0c3ca687) SHA1(a83f17c20f5767f092300266dd494bd0abf267bb) )
1653 ROM_LOAD( "ic05-5.bin", 0x11000, 0x1000, CRC(0d797a3e) SHA1(289d2ecfebd7d71430d6624f3c9fbc91f9ef05cc) )
1654 ROM_LOAD( "ic06-6.bin", 0x12000, 0x1000, CRC(ee8bfcd6) SHA1(f68c44fdc18d57070aea604e261fb7b9407345a2) )
1655 ROM_LOAD( "ic07-7d.bin", 0x13000, 0x1000, CRC(d9c065e7) SHA1(ceeb58d1dfe14106271f17cf1c689b812216c3c0) )
1656 ROM_RELOAD( 0x14000, 0x1000 )
1657
1658 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1659 ROM_LOAD( "ic28-8.bin", 0xf800, 0x0800, CRC(fefd5b48) SHA1(ceb0d18483f0691978c604db94417e6941ad7ff2) )
1660
1661 ROM_REGION( 0x2000, REGION_USER1, 0 )
1662 ROM_LOAD( "rom11.bin", 0x0000, 0x0800, CRC(7e113979) SHA1(ac908afb6aa756fc4db1ffddbd3688aa07080693) )
1663 ROM_LOAD( "rom12.bin", 0x0800, 0x0800, CRC(a562c506) SHA1(a0bae41732f05caa80b9c13fba6ae4f01647e680) )
1664 ROM_LOAD( "rom6a.bin", 0x1000, 0x0800, CRC(8e4e981f) SHA1(685c1fca9373f4129c7c6b86f18900a1bd324019) )
1665 ROM_LOAD( "rom8-sos.bin",0x1800, 0x0800, CRC(6a9b383f) SHA1(10e71a3bb9492b6c34ff06760dd55c442611ca75) )
1666 ROM_END
1667
1668
1669 ROM_START( colony7 )
1670 ROM_REGION( 0x14000, REGION_CPU1, 0 )
1671 ROM_LOAD( "cs03.bin", 0x0d000, 0x1000, CRC(7ee75ae5) SHA1(1d268d83c2b0c7897d9e783f5da4e1d892709ba4) )
1672 ROM_LOAD( "cs02.bin", 0x0e000, 0x1000, CRC(c60b08cb) SHA1(8cf91a2c2c04199b2870bb11e10fa6ffef5b877f) )
1673 ROM_LOAD( "cs01.bin", 0x0f000, 0x1000, CRC(1bc97436) SHA1(326692de3491925bbeea9b0e880d9133f0e6440c) )
1674 /* bank 0 is the place for CMOS ram */
1675 ROM_LOAD( "cs06.bin", 0x10000, 0x0800, CRC(318b95af) SHA1(cb276ef440436f6000a2d20252f3197a67965167) )
1676 ROM_LOAD( "cs04.bin", 0x10800, 0x0800, CRC(d740faee) SHA1(aad164e72ebb0de18487c5397ea33d300cf93423) )
1677 ROM_LOAD( "cs07.bin", 0x11000, 0x0800, CRC(0b23638b) SHA1(b577c0cefa3ea2df436ed0fa1efa8ecd04ff78b0) )
1678 ROM_LOAD( "cs05.bin", 0x11800, 0x0800, CRC(59e406a8) SHA1(b64081ca83b6f57ac8fb71b1f8618083f19b99de) )
1679 ROM_LOAD( "cs08.bin", 0x12000, 0x0800, CRC(3bfde87a) SHA1(f5047927833be97324c861aa93a8e95b457058c4) )
1680 ROM_RELOAD( 0x12800, 0x0800 )
1681
1682 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1683 ROM_LOAD( "cs11.bin", 0xf800, 0x0800, CRC(6032293c) SHA1(dd2c6afc1149a879d49e93d1a2fa8e1f6d0b043b) )
1684 ROM_END
1685
1686
1687 ROM_START( colony7a )
1688 ROM_REGION( 0x14000, REGION_CPU1, 0 )
1689 ROM_LOAD( "cs03a.bin", 0x0d000, 0x1000, CRC(e0b0d23b) SHA1(4c50e00a71b3b2bf8d032a3cb496e5473204a8d6) )
1690 ROM_LOAD( "cs02a.bin", 0x0e000, 0x1000, CRC(370c6f41) SHA1(4e13a4cf9c1a3b1c354443c41549b59581d8b357) )
1691 ROM_LOAD( "cs01a.bin", 0x0f000, 0x1000, CRC(ba299946) SHA1(42e5d6ad0505f5a951d92165c9e2fa4e86659469) )
1692 /* bank 0 is the place for CMOS ram */
1693 ROM_LOAD( "cs06.bin", 0x10000, 0x0800, CRC(318b95af) SHA1(cb276ef440436f6000a2d20252f3197a67965167) )
1694 ROM_LOAD( "cs04.bin", 0x10800, 0x0800, CRC(d740faee) SHA1(aad164e72ebb0de18487c5397ea33d300cf93423) )
1695 ROM_LOAD( "cs07.bin", 0x11000, 0x0800, CRC(0b23638b) SHA1(b577c0cefa3ea2df436ed0fa1efa8ecd04ff78b0) )
1696 ROM_LOAD( "cs05.bin", 0x11800, 0x0800, CRC(59e406a8) SHA1(b64081ca83b6f57ac8fb71b1f8618083f19b99de) )
1697 ROM_LOAD( "cs08.bin", 0x12000, 0x0800, CRC(3bfde87a) SHA1(f5047927833be97324c861aa93a8e95b457058c4) )
1698 ROM_RELOAD( 0x12800, 0x0800 )
1699
1700 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1701 ROM_LOAD( "cs11.bin", 0xf800, 0x0800, CRC(6032293c) SHA1(dd2c6afc1149a879d49e93d1a2fa8e1f6d0b043b) )
1702 ROM_END
1703
1704
1705 ROM_START( stargate )
1706 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1707 ROM_LOAD( "01", 0x0000, 0x1000, CRC(88824d18) SHA1(f003a5a9319c4eb8991fa2aae3f10c72d6b8e81a) )
1708 ROM_LOAD( "02", 0x1000, 0x1000, CRC(afc614c5) SHA1(087c6da93318e8dc922d3d22e0a2af7b9759701c) )
1709 ROM_LOAD( "03", 0x2000, 0x1000, CRC(15077a9d) SHA1(7badb4318b208f49d7fa65e915d0aa22a1e37915) )
1710 ROM_LOAD( "04", 0x3000, 0x1000, CRC(a8b4bf0f) SHA1(6b4d47c2899fe9f14f9dab5928499f12078c437d) )
1711 ROM_LOAD( "05", 0x4000, 0x1000, CRC(2d306074) SHA1(54f871983699113e31bb756d4ca885c26c2d66b4) )
1712 ROM_LOAD( "06", 0x5000, 0x1000, CRC(53598dde) SHA1(54b02d944caf95283c9b6f0160e75ea8c4ccc97b) )
1713 ROM_LOAD( "07", 0x6000, 0x1000, CRC(23606060) SHA1(a487ffcd4920d1056b87469735f7e1002f6a2e49) )
1714 ROM_LOAD( "08", 0x7000, 0x1000, CRC(4ec490c7) SHA1(8726ebaf048db9608dfe365bf434ed5ca9452db7) )
1715 ROM_LOAD( "09", 0x8000, 0x1000, CRC(88187b64) SHA1(efacc4a6d4b2af9a236c9d520de6d605c79cc5a8) )
1716 ROM_LOAD( "10", 0xd000, 0x1000, CRC(60b07ff7) SHA1(ba833f48ddfc1bd04ddb41b1d1c840d66ee7da30) )
1717 ROM_LOAD( "11", 0xe000, 0x1000, CRC(7d2c5daf) SHA1(6ca39f493eb8b370154ad46ef01976d352c929e1) )
1718 ROM_LOAD( "12", 0xf000, 0x1000, CRC(a0396670) SHA1(c46872550e0ca031453c6513f8f0448ecc9b5572) )
1719
1720 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1721 ROM_LOAD( "sg.snd", 0xf800, 0x0800, CRC(2fcf6c4d) SHA1(9c4334ac3ff15d94001b22fc367af40f9deb7d57) )
1722 ROM_END
1723
1724
1725 ROM_START( joust )
1726 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1727 ROM_LOAD( "joust.wg1", 0x0000, 0x1000, CRC(fe41b2af) SHA1(0443e00ae2eb3e66cf805562ee04309487bb0ba4) )
1728 ROM_LOAD( "joust.wg2", 0x1000, 0x1000, CRC(501c143c) SHA1(5fda266d43cbbf42eeae1a078b5209d9408ab99f) )
1729 ROM_LOAD( "joust.wg3", 0x2000, 0x1000, CRC(43f7161d) SHA1(686da120aa4bd4a41f3d93e8c79ebb343977851a) )
1730 ROM_LOAD( "joust.wg4", 0x3000, 0x1000, CRC(db5571b6) SHA1(cb1c3285344e2cfbe0a81ab9b51758c40da8a23f) )
1731 ROM_LOAD( "joust.wg5", 0x4000, 0x1000, CRC(c686bb6b) SHA1(d9cac4c46820e1a451a145864bca7a35cfab7d37) )
1732 ROM_LOAD( "joust.wg6", 0x5000, 0x1000, CRC(fac5f2cf) SHA1(febaa8cf5c3a0af901cd12d0b7909f6fec3beadd) )
1733 ROM_LOAD( "joust.wg7", 0x6000, 0x1000, CRC(81418240) SHA1(5ad14aa65e71c3856dcdb04c99edda92e406a3e3) )
1734 ROM_LOAD( "joust.wg8", 0x7000, 0x1000, CRC(ba5359ba) SHA1(f4ee13d5a95ed3e1050a3927a3a0ccf86ed7752d) )
1735 ROM_LOAD( "joust.wg9", 0x8000, 0x1000, CRC(39643147) SHA1(d95d3b746133eac9dcc9ee05eabecb797023f1a5) )
1736 ROM_LOAD( "joust.wga", 0xd000, 0x1000, CRC(3f1c4f89) SHA1(90864a8ab944df45287bf0f68ad3a85194077a82) )
1737 ROM_LOAD( "joust.wgb", 0xe000, 0x1000, CRC(ea48b359) SHA1(6d38003d56bebeb1f5b4d2287d587342847aa195) )
1738 ROM_LOAD( "joust.wgc", 0xf000, 0x1000, CRC(c710717b) SHA1(7d01764e8251c60b3cab96f7dc6dcc1c624f9d12) )
1739
1740 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1741 ROM_LOAD( "joust.snd", 0xf000, 0x1000, CRC(f1835bdd) SHA1(af7c066d2949d36b87ea8c425ca7d12f82b5c653) )
1742 ROM_END
1743
1744
1745 ROM_START( joustwr )
1746 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1747 ROM_LOAD( "joust.wg1", 0x0000, 0x1000, CRC(fe41b2af) SHA1(0443e00ae2eb3e66cf805562ee04309487bb0ba4) )
1748 ROM_LOAD( "joust.wg2", 0x1000, 0x1000, CRC(501c143c) SHA1(5fda266d43cbbf42eeae1a078b5209d9408ab99f) )
1749 ROM_LOAD( "joust.wg3", 0x2000, 0x1000, CRC(43f7161d) SHA1(686da120aa4bd4a41f3d93e8c79ebb343977851a) )
1750 ROM_LOAD( "joust.wg4", 0x3000, 0x1000, CRC(db5571b6) SHA1(cb1c3285344e2cfbe0a81ab9b51758c40da8a23f) )
1751 ROM_LOAD( "joust.wg5", 0x4000, 0x1000, CRC(c686bb6b) SHA1(d9cac4c46820e1a451a145864bca7a35cfab7d37) )
1752 ROM_LOAD( "joust.wg6", 0x5000, 0x1000, CRC(fac5f2cf) SHA1(febaa8cf5c3a0af901cd12d0b7909f6fec3beadd) )
1753 ROM_LOAD( "joust.wr7", 0x6000, 0x1000, CRC(e6f439c4) SHA1(ff8f1d54f3ac91101ab9f5f115baeca4f2670186) )
1754 ROM_LOAD( "joust.wg8", 0x7000, 0x1000, CRC(ba5359ba) SHA1(f4ee13d5a95ed3e1050a3927a3a0ccf86ed7752d) )
1755 ROM_LOAD( "joust.wg9", 0x8000, 0x1000, CRC(39643147) SHA1(d95d3b746133eac9dcc9ee05eabecb797023f1a5) )
1756 ROM_LOAD( "joust.wra", 0xd000, 0x1000, CRC(2039014a) SHA1(b9a76ecf01404585f833f76c54aa5a88a0215715) )
1757 ROM_LOAD( "joust.wgb", 0xe000, 0x1000, CRC(ea48b359) SHA1(6d38003d56bebeb1f5b4d2287d587342847aa195) )
1758 ROM_LOAD( "joust.wgc", 0xf000, 0x1000, CRC(c710717b) SHA1(7d01764e8251c60b3cab96f7dc6dcc1c624f9d12) )
1759
1760 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1761 ROM_LOAD( "joust.snd", 0xf000, 0x1000, CRC(f1835bdd) SHA1(af7c066d2949d36b87ea8c425ca7d12f82b5c653) )
1762 ROM_END
1763
1764
1765 ROM_START( joustr )
1766 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1767 ROM_LOAD( "joust.wg1", 0x0000, 0x1000, CRC(fe41b2af) SHA1(0443e00ae2eb3e66cf805562ee04309487bb0ba4) )
1768 ROM_LOAD( "joust.wg2", 0x1000, 0x1000, CRC(501c143c) SHA1(5fda266d43cbbf42eeae1a078b5209d9408ab99f) )
1769 ROM_LOAD( "joust.wg3", 0x2000, 0x1000, CRC(43f7161d) SHA1(686da120aa4bd4a41f3d93e8c79ebb343977851a) )
1770 ROM_LOAD( "joust.sr4", 0x3000, 0x1000, CRC(ab347170) SHA1(ad50c83fcfa958f2673cae04bd811095f9ee08c0) )
1771 ROM_LOAD( "joust.wg5", 0x4000, 0x1000, CRC(c686bb6b) SHA1(d9cac4c46820e1a451a145864bca7a35cfab7d37) )
1772 ROM_LOAD( "joust.sr6", 0x5000, 0x1000, CRC(3d9a6fac) SHA1(0c81394ae96a2fcfa4c953d38e43f3ef415fe4fc) )
1773 ROM_LOAD( "joust.sr7", 0x6000, 0x1000, CRC(0a70b3d1) SHA1(eb78b694aa29f777f3c7e7104e568f865930c0ec) )
1774 ROM_LOAD( "joust.sr8", 0x7000, 0x1000, CRC(a7f01504) SHA1(0ca3211d060befc102bda2e97d163de7fb12a6f6) )
1775 ROM_LOAD( "joust.sr9", 0x8000, 0x1000, CRC(978687ad) SHA1(25e651af3e3be08d6293aab427a0843e9333a629) )
1776 ROM_LOAD( "joust.sra", 0xd000, 0x1000, CRC(c0c6e52a) SHA1(f14ff16195027f3e199e79e43741f0849c17fd10) )
1777 ROM_LOAD( "joust.srb", 0xe000, 0x1000, CRC(ab11bcf9) SHA1(efb09e92a621d6c4d6cde2f166e8c988c64d81ae) )
1778 ROM_LOAD( "joust.src", 0xf000, 0x1000, CRC(ea14574b) SHA1(7572d118b2343646054e558f0bd48e4959d84ce7) )
1779
1780 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1781 ROM_LOAD( "joust.snd", 0xf000, 0x1000, CRC(f1835bdd) SHA1(af7c066d2949d36b87ea8c425ca7d12f82b5c653) )
1782 ROM_END
1783
1784
1785 ROM_START( robotron )
1786 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1787 ROM_LOAD( "robotron.sb1", 0x0000, 0x1000, CRC(66c7d3ef) SHA1(f6d60e26c209c1df2cc01ac07ad5559daa1b7118) )
1788 ROM_LOAD( "robotron.sb2", 0x1000, 0x1000, CRC(5bc6c614) SHA1(4d6e82bc29f49100f7751ccfc6a9ff35695b84b3) )
1789 ROM_LOAD( "robotron.sb3", 0x2000, 0x1000, CRC(e99a82be) SHA1(06a8c8dd0b4726eb7f0bb0e89c8533931d75fc1c) )
1790 ROM_LOAD( "robotron.sb4", 0x3000, 0x1000, CRC(afb1c561) SHA1(aaf89c19fd8f4e8750717169eb1af476aef38a5e) )
1791 ROM_LOAD( "robotron.sb5", 0x4000, 0x1000, CRC(62691e77) SHA1(79b4680ce19bd28882ae823f0e7b293af17cbb91) )
1792 ROM_LOAD( "robotron.sb6", 0x5000, 0x1000, CRC(bd2c853d) SHA1(f76ec5432a7939b33a27be1c6855e2dbe6d9fdc8) )
1793 ROM_LOAD( "robotron.sb7", 0x6000, 0x1000, CRC(49ac400c) SHA1(06eae5138254723819a5e93cfd9e9f3285fcddf5) )
1794 ROM_LOAD( "robotron.sb8", 0x7000, 0x1000, CRC(3a96e88c) SHA1(7ae38a609ed9a6f62ca003cab719740ed7651b7c) )
1795 ROM_LOAD( "robotron.sb9", 0x8000, 0x1000, CRC(b124367b) SHA1(fd9d75b866f0ebbb723f84889337e6814496a103) )
1796 ROM_LOAD( "robotron.sba", 0xd000, 0x1000, CRC(13797024) SHA1(d426a50e75dabe936de643c83a548da5e399331c) )
1797 ROM_LOAD( "robotron.sbb", 0xe000, 0x1000, CRC(7e3c1b87) SHA1(f8c6cbe3688f256f41a121255fc08f575f6a4b4f) )
1798 ROM_LOAD( "robotron.sbc", 0xf000, 0x1000, CRC(645d543e) SHA1(fad7cea868ebf17347c4bc5193d647bbd8f9517b) )
1799
1800 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1801 ROM_LOAD( "robotron.snd", 0xf000, 0x1000, CRC(c56c1d28) SHA1(15afefef11bfc3ab78f61ab046701db78d160ec3) )
1802 ROM_END
1803
1804
1805 ROM_START( robotryo )
1806 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1807 ROM_LOAD( "robotron.sb1", 0x0000, 0x1000, CRC(66c7d3ef) SHA1(f6d60e26c209c1df2cc01ac07ad5559daa1b7118) )
1808 ROM_LOAD( "robotron.sb2", 0x1000, 0x1000, CRC(5bc6c614) SHA1(4d6e82bc29f49100f7751ccfc6a9ff35695b84b3) )
1809 ROM_LOAD( "robotron.yo3", 0x2000, 0x1000, CRC(67a369bc) SHA1(5a912d485e686de5e3175d3fc0e5daad36f4b836) )
1810 ROM_LOAD( "robotron.yo4", 0x3000, 0x1000, CRC(b0de677a) SHA1(02013e00513dd74e878a01791cbcca92712e2c80) )
1811 ROM_LOAD( "robotron.yo5", 0x4000, 0x1000, CRC(24726007) SHA1(8b4ed881f64e3ce73ac1a9ae2c184721c1ab37cc) )
1812 ROM_LOAD( "robotron.yo6", 0x5000, 0x1000, CRC(028181a6) SHA1(41c4d9ece2ae8a103b7151fc4ff576796303318d) )
1813 ROM_LOAD( "robotron.yo7", 0x6000, 0x1000, CRC(4dfcceae) SHA1(46fe1b1162d6054eb502852d065fc2e8c694b09d) )
1814 ROM_LOAD( "robotron.sb8", 0x7000, 0x1000, CRC(3a96e88c) SHA1(7ae38a609ed9a6f62ca003cab719740ed7651b7c) )
1815 ROM_LOAD( "robotron.sb9", 0x8000, 0x1000, CRC(b124367b) SHA1(fd9d75b866f0ebbb723f84889337e6814496a103) )
1816 ROM_LOAD( "robotron.yoa", 0xd000, 0x1000, CRC(4a9d5f52) SHA1(d5ae801e60ed829e7ef5c54a18aefca54eae827f) )
1817 ROM_LOAD( "robotron.yob", 0xe000, 0x1000, CRC(2afc5e7f) SHA1(f3405be9ad2287f3921e7dbd9c5313c91fa7f8d6) )
1818 ROM_LOAD( "robotron.yoc", 0xf000, 0x1000, CRC(45da9202) SHA1(81b3b2a72a3c871e8d7b9348056622c90a20d876) )
1819
1820 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1821 ROM_LOAD( "robotron.snd", 0xf000, 0x1000, CRC(c56c1d28) SHA1(15afefef11bfc3ab78f61ab046701db78d160ec3) )
1822 ROM_END
1823
1824
1825 ROM_START( spdball )
1826 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1827 ROM_LOAD( "speedbal.01", 0x0000, 0x1000, CRC(7f4801bb) SHA1(8f22396170571189b1d088d73331d6a713c76f41) )
1828 ROM_LOAD( "speedbal.02", 0x1000, 0x1000, CRC(5cd5e489) SHA1(83c1bce945ecbaa4a59e0023198e574d9069680c) )
1829 ROM_LOAD( "speedbal.03", 0x2000, 0x1000, CRC(280e11a4) SHA1(4ef321e1744955a9a54c1e4b1f88c01c01e7b7c8) )
1830 ROM_LOAD( "speedbal.04", 0x3000, 0x1000, CRC(3469cbbf) SHA1(70b46cf686438441484ffeca0fa1398c15c8811e) )
1831 ROM_LOAD( "speedbal.05", 0x4000, 0x1000, CRC(87373c89) SHA1(a3cd72f4b517d5d727059a7d911b79ced27e9f93) )
1832 ROM_LOAD( "speedbal.06", 0x5000, 0x1000, CRC(48779a0d) SHA1(9cdfc12d1021b5d66acd38ab61f385219be39f4f) )
1833 ROM_LOAD( "speedbal.07", 0x6000, 0x1000, CRC(2e5d8db6) SHA1(7a13d60267ce12a6a4b20322c2ed1f39762bc663) )
1834 ROM_LOAD( "speedbal.08", 0x7000, 0x1000, CRC(c173cedf) SHA1(603c4c7cdc712d54a86b59470651d00b369293d8) )
1835 ROM_LOAD( "speedbal.09", 0x8000, 0x1000, CRC(415f424b) SHA1(f7e59385a67319ba152488762af1b42fc62ab264) )
1836 ROM_LOAD( "speedbal.10", 0xd000, 0x1000, CRC(4a3add93) SHA1(6939dd6cb6751a0406f364223029eff99040f9e2) )
1837 ROM_LOAD( "speedbal.11", 0xe000, 0x1000, CRC(1fbcfaa5) SHA1(fccdebbab172b141bbaec6f520b378d21c72f67a) )
1838 ROM_LOAD( "speedbal.12", 0xf000, 0x1000, CRC(f3458f41) SHA1(366fb880b4dc68849d6ea7a9dab55efa9c566123) )
1839
1840 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1841 ROM_LOAD( "speedbal.snd", 0xf000, 0x1000, CRC(78de20e2) SHA1(ece6e04b1d57167faf7aaee0829e7c31eb560437) )
1842
1843 ROM_REGION( 0x1000, REGION_USER1, ROMREGION_DISPOSE )
1844 ROM_LOAD( "mystery.rom", 0x00000, 0x1000, CRC(dcb6a070) SHA1(6a6fcddf5b46eef187dcf5d9b60e03e9375e7276) )
1845 ROM_END
1846
1847 ROM_START( alienar )
1848 ROM_REGION( 0x19000, REGION_CPU1, 0 )
1849 ROM_LOAD( "aarom01", 0x0000, 0x1000, CRC(bb0c21be) SHA1(dbf122870adaa49cd99e2c1e9fa4b78fb74ef2c1) )
1850 ROM_LOAD( "aarom02", 0x1000, 0x1000, CRC(165acd37) SHA1(12466c94bcf5a98f154a639ecc2e95d5193cbab2) )
1851 ROM_LOAD( "aarom03", 0x2000, 0x1000, CRC(e5d51d92) SHA1(598c928499e977a30906319c97ffa1ef2b9395d1) )
1852 ROM_LOAD( "aarom04", 0x3000, 0x1000, CRC(24f6feb8) SHA1(c1b7d764785b4edfe80a90ffdc52a67c8dbbfea5) )
1853 ROM_LOAD( "aarom05", 0x4000, 0x1000, CRC(5b1ac59b) SHA1(9b312eb419e994a006fda2ae61c58c31f048bace) )
1854 ROM_LOAD( "aarom06", 0x5000, 0x1000, CRC(da7195a2) SHA1(ef2c2750c504176fd6a11e8463278d97cac9a5c5) )
1855 ROM_LOAD( "aarom07", 0x6000, 0x1000, CRC(f9812be4) SHA1(5f116345f09cd79790612672aa48ede63fc91f56) )
1856 ROM_LOAD( "aarom08", 0x7000, 0x1000, CRC(cd7f3a87) SHA1(59577059308931139ecc036d06953660a148d91c) )
1857 ROM_LOAD( "aarom09", 0x8000, 0x1000, CRC(e6ce77b4) SHA1(bd4354100067654d0ad2e590591582dbdfb845b6) )
1858 ROM_LOAD( "aarom10", 0xd000, 0x1000, CRC(6feb0314) SHA1(5cf30f097bc695cbd388cb408e78394926362a7b) )
1859 ROM_LOAD( "aarom11", 0xe000, 0x1000, CRC(ae3a270e) SHA1(867fff32062bc876390e8ca6bd7cedae47cd92c9) )
1860 ROM_LOAD( "aarom12", 0xf000, 0x1000, CRC(6be9f09e) SHA1(98821c9b94301c5fd6e7f5d9e4bc9c1bdbab53ec) )
1861 ROM_END
1862
1863 ROM_START( alienaru )
1864 ROM_REGION( 0x19000, REGION_CPU1, 0 )
1865 ROM_LOAD( "aarom01", 0x0000, 0x1000, CRC(bb0c21be) SHA1(dbf122870adaa49cd99e2c1e9fa4b78fb74ef2c1) )
1866 ROM_LOAD( "aarom02", 0x1000, 0x1000, CRC(165acd37) SHA1(12466c94bcf5a98f154a639ecc2e95d5193cbab2) )
1867 ROM_LOAD( "aarom03", 0x2000, 0x1000, CRC(e5d51d92) SHA1(598c928499e977a30906319c97ffa1ef2b9395d1) )
1868 ROM_LOAD( "aarom04", 0x3000, 0x1000, CRC(24f6feb8) SHA1(c1b7d764785b4edfe80a90ffdc52a67c8dbbfea5) )
1869 ROM_LOAD( "aarom05", 0x4000, 0x1000, CRC(5b1ac59b) SHA1(9b312eb419e994a006fda2ae61c58c31f048bace) )
1870 ROM_LOAD( "aarom06", 0x5000, 0x1000, CRC(da7195a2) SHA1(ef2c2750c504176fd6a11e8463278d97cac9a5c5) )
1871 ROM_LOAD( "aarom07", 0x6000, 0x1000, CRC(f9812be4) SHA1(5f116345f09cd79790612672aa48ede63fc91f56) )
1872 ROM_LOAD( "aarom08", 0x7000, 0x1000, CRC(cd7f3a87) SHA1(59577059308931139ecc036d06953660a148d91c) )
1873 ROM_LOAD( "aarom09", 0x8000, 0x1000, CRC(e6ce77b4) SHA1(bd4354100067654d0ad2e590591582dbdfb845b6) )
1874 ROM_LOAD( "aarom10", 0xd000, 0x1000, CRC(6feb0314) SHA1(5cf30f097bc695cbd388cb408e78394926362a7b) )
1875 ROM_LOAD( "aarom11", 0xe000, 0x1000, CRC(ae3a270e) SHA1(867fff32062bc876390e8ca6bd7cedae47cd92c9) )
1876 ROM_LOAD( "aarom12", 0xf000, 0x1000, CRC(6be9f09e) SHA1(98821c9b94301c5fd6e7f5d9e4bc9c1bdbab53ec) )
1877
1878
1879 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1880 ROM_LOAD( "sg.snd", 0xf800, 0x0800, CRC(2fcf6c4d) SHA1(9c4334ac3ff15d94001b22fc367af40f9deb7d57) )
1881
1882 /*
1883 ROM_REGION( 0x0400, REGION_PROMS, 0 )
1884 ROM_LOAD( "decoder.4", 0x0000, 0x0200, CRC(e6631c23) SHA1(9988723269367fb44ef83f627186a1c88cf7877e) )
1885 ROM_LOAD( "decoder.6", 0x0200, 0x0200, CRC(83faf25e) SHA1(30002643d08ed983a6701a7c4b5ee74a2f4a1adb) )
1886 */
1887 ROM_END
1888
1889 ROM_START( bubbles )
1890 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1891 ROM_LOAD( "bubbles.1b", 0x0000, 0x1000, CRC(8234f55c) SHA1(4d60942320c03ae50b0b17267062a321cf49e240) )
1892 ROM_LOAD( "bubbles.2b", 0x1000, 0x1000, CRC(4a188d6a) SHA1(2788c4a21659799e59ab82bc8d1864a3abe3b6d7) )
1893 ROM_LOAD( "bubbles.3b", 0x2000, 0x1000, CRC(7728f07f) SHA1(2a2c6dd8c2196dcd5e71b38554a56ee03d2aa454) )
1894 ROM_LOAD( "bubbles.4b", 0x3000, 0x1000, CRC(040be7f9) SHA1(de4d212cd2967b2dcd7b2c09dea2c1b06ce4c5bd) )
1895 ROM_LOAD( "bubbles.5b", 0x4000, 0x1000, CRC(0b5f29e0) SHA1(ae52f8c69c8b821abb458288c8ee0bc6c28fe535) )
1896 ROM_LOAD( "bubbles.6b", 0x5000, 0x1000, CRC(4dd0450d) SHA1(d55aa8fb8f2974ce5ba7155b01bc3e3622f202af) )
1897 ROM_LOAD( "bubbles.7b", 0x6000, 0x1000, CRC(e0a26ec0) SHA1(2da6213df6c15735a8bbd6750cfb1a1b6232a6f5) )
1898 ROM_LOAD( "bubbles.8b", 0x7000, 0x1000, CRC(4fd23d8d) SHA1(9d71caa30bc3f4151789279d21651e5a4fe4a484) )
1899 ROM_LOAD( "bubbles.9b", 0x8000, 0x1000, CRC(b48559fb) SHA1(551a49a12353044dbbf28dba2bd860c2d00c50bd) )
1900 ROM_LOAD( "bubbles.10b", 0xd000, 0x1000, CRC(26e7869b) SHA1(db428e79fc325ae3c8cab460267c27cdbc35a3bd) )
1901 ROM_LOAD( "bubbles.11b", 0xe000, 0x1000, CRC(5a5b572f) SHA1(f0c3a330abf9c8cfb6007ee372409450d2a15a93) )
1902 ROM_LOAD( "bubbles.12b", 0xf000, 0x1000, CRC(ce22d2e2) SHA1(be4b9800c846660ce2b2ddd75ad872dcf174979a) )
1903
1904 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1905 ROM_LOAD( "bubbles.snd", 0xf000, 0x1000, CRC(689ce2aa) SHA1(b70d2553f731f9a20ddaf9af2f93b7e9c44d4d99) )
1906 ROM_END
1907
1908
1909 ROM_START( bubblesr )
1910 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1911 ROM_LOAD( "bubblesr.1b", 0x0000, 0x1000, CRC(dda4e782) SHA1(ad6825ebc05931942ce1042f18e18e3873083abc) )
1912 ROM_LOAD( "bubblesr.2b", 0x1000, 0x1000, CRC(3c8fa7f5) SHA1(fd3db6c2abab7000d586ef1a4e425329da292144) )
1913 ROM_LOAD( "bubblesr.3b", 0x2000, 0x1000, CRC(f869bb9c) SHA1(ce276fc33136a527eefbbf35c2bcf1f0b9858740) )
1914 ROM_LOAD( "bubblesr.4b", 0x3000, 0x1000, CRC(0c65eaab) SHA1(c622906cbda07421a7024955f3b9e8d173f4b6cb) )
1915 ROM_LOAD( "bubblesr.5b", 0x4000, 0x1000, CRC(7ece4e13) SHA1(c6ec7145c2d3bf51877c7fb995d9732b09e04cf0) )
1916 ROM_LOAD( "bubbles.6b", 0x5000, 0x1000, CRC(4dd0450d) SHA1(d55aa8fb8f2974ce5ba7155b01bc3e3622f202af) )
1917 ROM_LOAD( "bubbles.7b", 0x6000, 0x1000, CRC(e0a26ec0) SHA1(2da6213df6c15735a8bbd6750cfb1a1b6232a6f5) )
1918 ROM_LOAD( "bubblesr.8b", 0x7000, 0x1000, CRC(598b9bd6) SHA1(993cc3fac58310d0e617e58e3a0753002b987df1) )
1919 ROM_LOAD( "bubbles.9b", 0x8000, 0x1000, CRC(b48559fb) SHA1(551a49a12353044dbbf28dba2bd860c2d00c50bd) )
1920 ROM_LOAD( "bubblesr.10b", 0xd000, 0x1000, CRC(8b396db0) SHA1(88cab59ce7f07dfa15d1485d12ebab96d777ca65) )
1921 ROM_LOAD( "bubblesr.11b", 0xe000, 0x1000, CRC(096af43e) SHA1(994e60c1e684ae46ea791b274995d21ff5052e56) )
1922 ROM_LOAD( "bubblesr.12b", 0xf000, 0x1000, CRC(5c1244ef) SHA1(25b0f359c28291894381d73f4ba3a2b991a547f0) )
1923
1924 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1925 ROM_LOAD( "bubbles.snd", 0xf000, 0x1000, CRC(689ce2aa) SHA1(b70d2553f731f9a20ddaf9af2f93b7e9c44d4d99) )
1926 ROM_END
1927
1928
1929 ROM_START( bubblesp )
1930 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1931 ROM_LOAD( "bub_prot.1b", 0x0000, 0x1000, CRC(6466a746) SHA1(ed67d879d82ef05bcd2b655f761f84bc0cf08897) )
1932 ROM_LOAD( "bub_prot.2b", 0x1000, 0x1000, CRC(cca04357) SHA1(98f879675c02e7ad5532da30f663714913a059b9) )
1933 ROM_LOAD( "bub_prot.3b", 0x2000, 0x1000, CRC(7aaff9e5) SHA1(8b377ec5c595a4e062bdc8fb8ca99b52a6bd9298) )
1934 ROM_LOAD( "bub_prot.4b", 0x3000, 0x1000, CRC(4e264f01) SHA1(a6fd2d0613f78c45b3873e06efa2dd99530ed0c8) )
1935 ROM_LOAD( "bub_prot.5b", 0x4000, 0x1000, CRC(121b0be6) SHA1(75ed718b9e83c32390ee0fe2c34e0300ecd98a85) )
1936 ROM_LOAD( "bub_prot.6b", 0x5000, 0x1000, CRC(80e90b25) SHA1(92c83b4333f4f0f65638b1827ace01b02c490339) )
1937 ROM_LOAD( "bubbles.7b", 0x6000, 0x1000, CRC(e0a26ec0) SHA1(2da6213df6c15735a8bbd6750cfb1a1b6232a6f5) )
1938 ROM_LOAD( "bub_prot.8b", 0x7000, 0x1000, CRC(96fb19c8) SHA1(3b1720e5efe2adc1f633216419bdf00c7e7b817d) )
1939 ROM_LOAD( "bub_prot.9b", 0x8000, 0x1000, CRC(be7e1028) SHA1(430b33c8d83ee6756a3ef9298792b71066c88326) )
1940 ROM_LOAD( "bub_prot.10b", 0xd000, 0x1000, CRC(89a565df) SHA1(1f02c17222f7303218962fada6c6f867414551cf) )
1941 ROM_LOAD( "bub_prot.11b", 0xe000, 0x1000, CRC(5a0c36a7) SHA1(2b9dd9006e57ff8214ad4e6b10a4b72e736d472c) )
1942 ROM_LOAD( "bub_prot.12b", 0xf000, 0x1000, CRC(2bfd3438) SHA1(2427a5614e98a9499e4d19f9d6e25f2b73896bf5) )
1943
1944 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1945 ROM_LOAD( "bubbles.snd", 0xf000, 0x1000, CRC(689ce2aa) SHA1(b70d2553f731f9a20ddaf9af2f93b7e9c44d4d99) )
1946 ROM_END
1947
1948
1949 ROM_START( splat )
1950 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1951 ROM_LOAD( "splat.01", 0x0000, 0x1000, CRC(1cf26e48) SHA1(6ba4de6cc7d1359ed450da7bae1000552373f873) )
1952 ROM_LOAD( "splat.02", 0x1000, 0x1000, CRC(ac0d4276) SHA1(710aba98909d5d63c4b9b08579021f9c026b3111) )
1953 ROM_LOAD( "splat.03", 0x2000, 0x1000, CRC(74873e59) SHA1(727c9da682fd10353f3969ef02e9f1826d8cb77a) )
1954 ROM_LOAD( "splat.04", 0x3000, 0x1000, CRC(70a7064e) SHA1(7e6440585462b68b62d6d571d83635bf17149f1a) )
1955 ROM_LOAD( "splat.05", 0x4000, 0x1000, CRC(c6895221) SHA1(6f88ba8ac72d9301760d6e2512549f70b5373c65) )
1956 ROM_LOAD( "splat.06", 0x5000, 0x1000, CRC(ea4ab7fd) SHA1(288a361691a7f147ff3346627a10531d613ad017) )
1957 ROM_LOAD( "splat.07", 0x6000, 0x1000, CRC(82fd8713) SHA1(c4d42b111a0357700ac2bf700117d75ffb3c5be5) )
1958 ROM_LOAD( "splat.08", 0x7000, 0x1000, CRC(7dded1b4) SHA1(73df546dd60870f63a8c3deffea2b2d13149a48b) )
1959 ROM_LOAD( "splat.09", 0x8000, 0x1000, CRC(71cbfe5a) SHA1(bf22bedeceffdccc340637098070b32e9c13cf68) )
1960 ROM_LOAD( "splat.10", 0xd000, 0x1000, CRC(d1a1f632) SHA1(de4f5ba2b92c47757dfd2ca810bf8f87338223f7) )
1961 ROM_LOAD( "splat.11", 0xe000, 0x1000, CRC(ca8cde95) SHA1(8e12f6d9eaf397646691ec5d02963b32973cb32e) )
1962 ROM_LOAD( "splat.12", 0xf000, 0x1000, CRC(5bee3e60) SHA1(b4ee99fb6c353093faf1e088bab82fec66e785bc) )
1963
1964 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1965 ROM_LOAD( "splat.snd", 0xf000, 0x1000, CRC(a878d5f3) SHA1(f3347a354cb54ca228fe0971f0ae3bc778e2aecf) )
1966 ROM_END
1967
1968
1969 ROM_START( sinistar )
1970 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1971 ROM_LOAD( "sinistar.01", 0x0000, 0x1000, CRC(f6f3a22c) SHA1(026d8cab07734fa294a5645edbe65a904bcbc302) )
1972 ROM_LOAD( "sinistar.02", 0x1000, 0x1000, CRC(cab3185c) SHA1(423d1e3b0c07333ec582529bc4d0b7baf591820a) )
1973 ROM_LOAD( "sinistar.03", 0x2000, 0x1000, CRC(1ce1b3cc) SHA1(5bc03d7249529d827dc60c087e074ab3e4ea7361) )
1974 ROM_LOAD( "sinistar.04", 0x3000, 0x1000, CRC(6da632ba) SHA1(72c0c3d5a5ca87ca4d95fcedaf834206e4633950) )
1975 ROM_LOAD( "sinistar.05", 0x4000, 0x1000, CRC(b662e8fc) SHA1(828a89d2ea13d8a362dae708f86bff54cb231887) )
1976 ROM_LOAD( "sinistar.06", 0x5000, 0x1000, CRC(2306183d) SHA1(703e29e6446856615760a4897c0f5d79cc7bdfb2) )
1977 ROM_LOAD( "sinistar.07", 0x6000, 0x1000, CRC(e5dd918e) SHA1(bf4e2ada6a59d246218544d822ba5355da925924) )
1978 ROM_LOAD( "sinistar.08", 0x7000, 0x1000, CRC(4785a787) SHA1(8c7eca656b2c23b0da41a8c7ce51a2735cab85a4) )
1979 ROM_LOAD( "sinistar.09", 0x8000, 0x1000, CRC(50cb63ad) SHA1(96e28e4fef98fff2649741a266fa590e0313e3b0) )
1980 ROM_LOAD( "sinistar.10", 0xe000, 0x1000, CRC(3d670417) SHA1(81802622bee8dbea5c0f08019d87d941dcdbe292) )
1981 ROM_LOAD( "sinistar.11", 0xf000, 0x1000, CRC(3162bc50) SHA1(2f38e572ab9c731e38dfe9bad3cc8222a775c5ea) )
1982
1983 ROM_REGION( 0x10000, REGION_CPU2, 0 )
1984 ROM_LOAD( "speech.ic7", 0xb000, 0x1000, CRC(e1019568) SHA1(442f4f3ccd2e1db2136d2ffb121ea442921f87ca) )
1985 ROM_LOAD( "speech.ic5", 0xc000, 0x1000, CRC(cf3b5ffd) SHA1(d5d51c550581c9d46ab331dd4fd32541a2ef598e) )
1986 ROM_LOAD( "speech.ic6", 0xd000, 0x1000, CRC(ff8d2645) SHA1(16fa2a602acbbc182dd96bab113ab18356f3daf0) )
1987 ROM_LOAD( "speech.ic4", 0xe000, 0x1000, CRC(4b56a626) SHA1(44430cd5c110ec751b0bfb8ae99b26d443350db1) )
1988 ROM_LOAD( "sinistar.snd", 0xf000, 0x1000, CRC(b82f4ddb) SHA1(c70c7dd6e88897920d7709a260f27810f66aade1) )
1989 ROM_END
1990
1991
1992 ROM_START( sinista1 )
1993 ROM_REGION( 0x10000, REGION_CPU1, 0 )
1994 ROM_LOAD( "sinrev1.01", 0x0000, 0x1000, CRC(3810d7b8) SHA1(dcd690cbc958a2f97f022765315d77fb7c7d8e8b) )
1995 ROM_LOAD( "sinistar.02", 0x1000, 0x1000, CRC(cab3185c) SHA1(423d1e3b0c07333ec582529bc4d0b7baf591820a) )
1996 ROM_LOAD( "sinrev1.03", 0x2000, 0x1000, CRC(7c984ca9) SHA1(b32b7d15194051db5d29acf95b049e2eccf6d393) )
1997 ROM_LOAD( "sinrev1.04", 0x3000, 0x1000, CRC(cc6c4f24) SHA1(b4375544e02a19458c6fcc85edb31025c0b8eb71) )
1998 ROM_LOAD( "sinrev1.05", 0x4000, 0x1000, CRC(12285bfe) SHA1(6d433103332ddda2f2af23febc0b15aa93db1f31) )
1999 ROM_LOAD( "sinrev1.06", 0x5000, 0x1000, CRC(7a675f35) SHA1(3a7e9fdb2aef52dc29d33799694737038802b6e0) )
2000 ROM_LOAD( "sinrev1.07", 0x6000, 0x1000, CRC(b0463243) SHA1(95d597856a1942bd176f5f62db0d691f8f2f2932) )
2001 ROM_LOAD( "sinrev1.08", 0x7000, 0x1000, CRC(909040d4) SHA1(5361cc378bdace0799227e901341747dce9bb029) )
2002 ROM_LOAD( "sinrev1.09", 0x8000, 0x1000, CRC(cc949810) SHA1(2d2d1cccd7e43b63e424c34ab5215a412e2b9809) )
2003 ROM_LOAD( "sinrev1.10", 0xe000, 0x1000, CRC(ea87a53f) SHA1(4e4bad5315a8f5740c926ee5681879919a5be37f) )
2004 ROM_LOAD( "sinrev1.11", 0xf000, 0x1000, CRC(88d36e80) SHA1(bb9adaf5b73f9874e52dc2f5fd35e22f8b4fc258) )
2005
2006 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2007 ROM_LOAD( "speech.ic7", 0xb000, 0x1000, CRC(e1019568) SHA1(442f4f3ccd2e1db2136d2ffb121ea442921f87ca) )
2008 ROM_LOAD( "speech.ic5", 0xc000, 0x1000, CRC(cf3b5ffd) SHA1(d5d51c550581c9d46ab331dd4fd32541a2ef598e) )
2009 ROM_LOAD( "speech.ic6", 0xd000, 0x1000, CRC(ff8d2645) SHA1(16fa2a602acbbc182dd96bab113ab18356f3daf0) )
2010 ROM_LOAD( "speech.ic4", 0xe000, 0x1000, CRC(4b56a626) SHA1(44430cd5c110ec751b0bfb8ae99b26d443350db1) )
2011 ROM_LOAD( "sinistar.snd", 0xf000, 0x1000, CRC(b82f4ddb) SHA1(c70c7dd6e88897920d7709a260f27810f66aade1) )
2012 ROM_END
2013
2014
2015 ROM_START( sinista2 )
2016 ROM_REGION( 0x10000, REGION_CPU1, 0 )
2017 ROM_LOAD( "sinistar.01", 0x0000, 0x1000, CRC(f6f3a22c) SHA1(026d8cab07734fa294a5645edbe65a904bcbc302) )
2018 ROM_LOAD( "sinistar.02", 0x1000, 0x1000, CRC(cab3185c) SHA1(423d1e3b0c07333ec582529bc4d0b7baf591820a) )
2019 ROM_LOAD( "sinistar.03", 0x2000, 0x1000, CRC(1ce1b3cc) SHA1(5bc03d7249529d827dc60c087e074ab3e4ea7361) )
2020 ROM_LOAD( "sinistar.04", 0x3000, 0x1000, CRC(6da632ba) SHA1(72c0c3d5a5ca87ca4d95fcedaf834206e4633950) )
2021 ROM_LOAD( "sinistar.05", 0x4000, 0x1000, CRC(b662e8fc) SHA1(828a89d2ea13d8a362dae708f86bff54cb231887) )
2022 ROM_LOAD( "sinistar.06", 0x5000, 0x1000, CRC(2306183d) SHA1(703e29e6446856615760a4897c0f5d79cc7bdfb2) )
2023 ROM_LOAD( "sinistar.07", 0x6000, 0x1000, CRC(e5dd918e) SHA1(bf4e2ada6a59d246218544d822ba5355da925924) )
2024 ROM_LOAD( "sinrev2.08", 0x7000, 0x1000, CRC(d7ecee45) SHA1(f9552035409bce0a36ed93a677b28f8cd361f8f1) )
2025 ROM_LOAD( "sinistar.09", 0x8000, 0x1000, CRC(50cb63ad) SHA1(96e28e4fef98fff2649741a266fa590e0313e3b0) )
2026 ROM_LOAD( "sinistar.10", 0xe000, 0x1000, CRC(3d670417) SHA1(81802622bee8dbea5c0f08019d87d941dcdbe292) )
2027 ROM_LOAD( "sinrev2.11", 0xf000, 0x1000, CRC(792c8b00) SHA1(1f847ca8a67595927c36d69cead02813c2431c7b) )
2028
2029 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2030 ROM_LOAD( "speech.ic7", 0xb000, 0x1000, CRC(e1019568) SHA1(442f4f3ccd2e1db2136d2ffb121ea442921f87ca) )
2031 ROM_LOAD( "speech.ic5", 0xc000, 0x1000, CRC(cf3b5ffd) SHA1(d5d51c550581c9d46ab331dd4fd32541a2ef598e) )
2032 ROM_LOAD( "speech.ic6", 0xd000, 0x1000, CRC(ff8d2645) SHA1(16fa2a602acbbc182dd96bab113ab18356f3daf0) )
2033 ROM_LOAD( "speech.ic4", 0xe000, 0x1000, CRC(4b56a626) SHA1(44430cd5c110ec751b0bfb8ae99b26d443350db1) )
2034 ROM_LOAD( "sinistar.snd", 0xf000, 0x1000, CRC(b82f4ddb) SHA1(c70c7dd6e88897920d7709a260f27810f66aade1) )
2035 ROM_END
2036
2037
2038 ROM_START( playball )
2039 ROM_REGION( 0x10000, REGION_CPU1, 0 )
2040 ROM_LOAD( "playball.01", 0x0000, 0x1000, CRC(7ba8fd71) SHA1(9b77996238c67aead8c2cfc7f964f8cf9c6182eb) )
2041 ROM_LOAD( "playball.02", 0x1000, 0x1000, CRC(2387c3d4) SHA1(19d9da6af317595d0f3336e886154e0b8467cb3e) )
2042 ROM_LOAD( "playball.03", 0x2000, 0x1000, CRC(d34cc5fd) SHA1(d1f6d321c1a6a04a06813c77a3e079836a05956c) )
2043 ROM_LOAD( "playball.04", 0x3000, 0x1000, CRC(f68c3a8e) SHA1(f9cc7250254b9adceff883d3f6ee01c475d859ec) )
2044 ROM_LOAD( "playball.05", 0x4000, 0x1000, CRC(a3f20810) SHA1(678d2a5a06263cc5f74f4cb92287cf4d7a8b934f) )
2045 ROM_LOAD( "playball.06", 0x5000, 0x1000, CRC(f213e48e) SHA1(05b54f5121a887bc24fbe30f322277ae94474c14) )
2046 ROM_LOAD( "playball.07", 0x6000, 0x1000, CRC(9b5574e9) SHA1(1dddd33cd3f13694d7ba6a73e5090594c6677d5b) )
2047 ROM_LOAD( "playball.08", 0x7000, 0x1000, CRC(b2d2074a) SHA1(2defb2ffaca782606f792020f9c96d41abd77518) )
2048 ROM_LOAD( "playball.09", 0x8000, 0x1000, CRC(c4566d0f) SHA1(7848ea87d2d1693ade9129846024fbedc4145cbb) )
2049 ROM_LOAD( "playball.10", 0xd000, 0x1000, CRC(18787b52) SHA1(621754c1eab68de12763616b7bf01948cdce0221) )
2050 ROM_LOAD( "playball.11", 0xe000, 0x1000, CRC(1dd5c8f2) SHA1(17d0380ea05d9ddd17576691d0e5179ae7a71200) )
2051 ROM_LOAD( "playball.12", 0xf000, 0x1000, CRC(a700597b) SHA1(5ba07409ae9315b9ee65530f61155c394bfc69ad) )
2052
2053 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2054 ROM_LOAD( "speech.ic4", 0xb000, 0x1000, CRC(7e4fc798) SHA1(4636ab25238503370063f51f86f37d0e49c0d3b6) )
2055 ROM_LOAD( "speech.ic5", 0xc000, 0x1000, CRC(ddfe860c) SHA1(f847a0a6438af5dc646b7abe994530e6d1cbb803) )
2056 ROM_LOAD( "speech.ic6", 0xd000, 0x1000, CRC(8bfebf87) SHA1(d6829f78e1a2aee85673a42f7f6b78679847b616) )
2057 ROM_LOAD( "speech.ic7", 0xe000, 0x1000, CRC(db351db6) SHA1(94d807df61b5015f5fa78a500e2a58277db95c1f) )
2058 ROM_LOAD( "playball.snd", 0xf000, 0x1000, CRC(f3076f9f) SHA1(436fb1a6456535cd27f85c941ff79c0465b71555) )
2059 ROM_END
2060
2061
2062 ROM_START( lottofun )
2063 ROM_REGION( 0x10000, REGION_CPU1, 0 )
2064 ROM_LOAD( "vl4e.dat", 0x0000, 0x1000, CRC(5e9af236) SHA1(6f26c9be6da6f1195a4569f003a010d3f2e0c24d) )
2065 ROM_LOAD( "vl4c.dat", 0x1000, 0x1000, CRC(4b134ae2) SHA1(86756e1d8de113571857818a98d347789c003339) )
2066 ROM_LOAD( "vl4a.dat", 0x2000, 0x1000, CRC(b2f1f95a) SHA1(89166cdf4aff5e5a8cc4ea6ba589ce095de82f57) )
2067 ROM_LOAD( "vl5e.dat", 0x3000, 0x1000, CRC(c8681c55) SHA1(ac63e53a958f63bd0a05f36303c1aa777aee799d) )
2068 ROM_LOAD( "vl5c.dat", 0x4000, 0x1000, CRC(eb9351e0) SHA1(c66477ca0b3ed95708eb478fb992833beda1a4f8) )
2069 ROM_LOAD( "vl5a.dat", 0x5000, 0x1000, CRC(534f2fa1) SHA1(c034aa037ef6bc7cd2ed85da7531fd8efb7083e4) )
2070 ROM_LOAD( "vl6e.dat", 0x6000, 0x1000, CRC(befac592) SHA1(548cb1f0bc178eeada144c443545f7545c90b6a6) )
2071 ROM_LOAD( "vl6c.dat", 0x7000, 0x1000, CRC(a73d7f13) SHA1(833ff14c33635b61e1bd45b2878a4f6c9e18bf82) )
2072 ROM_LOAD( "vl6a.dat", 0x8000, 0x1000, CRC(5730a43d) SHA1(8acadf105dc373bf2b3087ccc1667b872452c913) )
2073 ROM_LOAD( "vl7a.dat", 0xd000, 0x1000, CRC(fb2aec2c) SHA1(73dc6a6dfe9ba51e3612b6d912bd7af1d5782296) )
2074 ROM_LOAD( "vl7c.dat", 0xe000, 0x1000, CRC(9a496519) SHA1(ae98dadcb63a33c796a3e3083d4b5bc957873cbc) )
2075 ROM_LOAD( "vl7e.dat", 0xf000, 0x1000, CRC(032cab4b) SHA1(87bdd0fd58b12e39efaadcf6e82744886a9292e9) )
2076
2077 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2078 ROM_LOAD( "vl2532.snd", 0xf000, 0x1000, CRC(214b8a04) SHA1(45f06b44a605cca6b293b20cfea4763b469254b8) )
2079 ROM_END
2080
2081
2082 ROM_START( blaster )
2083 ROM_REGION( 0x3c000, REGION_CPU1, 0 )
2084 ROM_LOAD( "blaster.11", 0x04000, 0x2000, CRC(6371e62f) SHA1(dc4173d2ee88757a6ac0838acaee325eadc2c4fb) )
2085 ROM_LOAD( "blaster.12", 0x06000, 0x2000, CRC(9804faac) SHA1(e61218fe190ad268af48d611d140d8f4cd38e4c7) )
2086 ROM_LOAD( "blaster.17", 0x08000, 0x1000, CRC(bf96182f) SHA1(e25a02508eecf79ea1ae5d45278a60becc6c7dcc) )
2087 ROM_LOAD( "blaster.16", 0x0d000, 0x1000, CRC(54a40b21) SHA1(663c7b539e6f1f065a4ecae7bb0477c71951223f) )
2088 ROM_LOAD( "blaster.13", 0x0e000, 0x2000, CRC(f4dae4c8) SHA1(211dcbe085a30419d649afe10ca7c4017d909bd7) )
2089
2090 ROM_LOAD( "blaster.15", 0x00000, 0x4000, CRC(1ad146a4) SHA1(5ab3d9618023b59bc329a9eeef986901867a639b) )
2091 ROM_LOAD( "blaster.8", 0x10000, 0x4000, CRC(f110bbb0) SHA1(314dea232a3706509399348c7415f933c64cea1b) )
2092 ROM_LOAD( "blaster.9", 0x14000, 0x4000, CRC(5c5b0f8a) SHA1(224f89c85b2b1ca511d006180b8d994fccbdfb6b) )
2093 ROM_LOAD( "blaster.10", 0x18000, 0x4000, CRC(d47eb67f) SHA1(5dcde8be1a7b1927b90ffab3219dc47c5b2f20e4) )
2094 ROM_LOAD( "blaster.6", 0x1c000, 0x4000, CRC(47fc007e) SHA1(3a80b9b7ae460e9732f7c1cdd465a5b06ded970f) )
2095 ROM_LOAD( "blaster.5", 0x20000, 0x4000, CRC(15c1b94d) SHA1(5d97628541eb8933870c3ffd3646b7aaf8af6af5) )
2096 ROM_LOAD( "blaster.14", 0x24000, 0x4000, CRC(aea6b846) SHA1(04cb4b5eb000471a0cec377a5236ac8c83529528) )
2097 ROM_LOAD( "blaster.7", 0x28000, 0x4000, CRC(7a101181) SHA1(5f1581911ea7fe3e63ce1b9c50b1d3bf081dbf81) )
2098 ROM_LOAD( "blaster.1", 0x2c000, 0x4000, CRC(8d0ea9e7) SHA1(34f8e2e99748bed29285f7e4929bb920960ab03e) )
2099 ROM_LOAD( "blaster.2", 0x30000, 0x4000, CRC(03c4012c) SHA1(53f0adc91e5f1ac58b08b3a6d2de8de5a40bebab) )
2100 ROM_LOAD( "blaster.4", 0x34000, 0x4000, CRC(fc9d39fb) SHA1(126d43a64471bbf4b40aeda8913d50e82d254f9c) )
2101 ROM_LOAD( "blaster.3", 0x38000, 0x4000, CRC(253690fb) SHA1(06cb2ef95bb06b3618392e298aa690e1f75bc977) )
2102
2103 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2104 ROM_LOAD( "blaster.18", 0xf000, 0x1000, CRC(c33a3145) SHA1(6ffe2da7b70c0b576fbc1790a33eecdbb9ee3d02) )
2105
2106 ROM_REGION( 0x0800, REGION_PROMS, 0 ) /* color PROM data */
2107 ROM_LOAD( "blaster.col", 0x0000, 0x0800, CRC(bac50bc4) SHA1(80a48eb97c6f02703210d00498f9669c36e64326) )
2108 ROM_END
2109
2110
2111 ROM_START( blastkit )
2112 ROM_REGION( 0x3c000, REGION_CPU1, 0 )
2113 ROM_LOAD( "blastkit.11", 0x04000, 0x2000, CRC(b7df4914) SHA1(81f7a89dfde06c160f2c8974eec701f2298ec434) )
2114 ROM_LOAD( "blastkit.12", 0x06000, 0x2000, CRC(8b1e26ab) SHA1(7d30800a9302f5a83792499d8df536693d01f75d) )
2115 ROM_LOAD( "blastkit.17", 0x08000, 0x1000, CRC(577d1e9a) SHA1(0064124a65490e0473dfb0081ec28b7ee43a04b5) )
2116 ROM_LOAD( "blastkit.16", 0x0d000, 0x1000, CRC(414b2abf) SHA1(2bde972d225d6e93e44751f542cee584d57f7983) )
2117 ROM_LOAD( "blastkit.13", 0x0e000, 0x2000, CRC(9c64db76) SHA1(c14508cb2f964af93631779db3adaa960fcc7559) )
2118
2119 ROM_LOAD( "blaster.15", 0x00000, 0x4000, CRC(1ad146a4) SHA1(5ab3d9618023b59bc329a9eeef986901867a639b) )
2120 ROM_LOAD( "blaster.8", 0x10000, 0x4000, CRC(f110bbb0) SHA1(314dea232a3706509399348c7415f933c64cea1b) )
2121 ROM_LOAD( "blaster.9", 0x14000, 0x4000, CRC(5c5b0f8a) SHA1(224f89c85b2b1ca511d006180b8d994fccbdfb6b) )
2122 ROM_LOAD( "blaster.10", 0x18000, 0x4000, CRC(d47eb67f) SHA1(5dcde8be1a7b1927b90ffab3219dc47c5b2f20e4) )
2123 ROM_LOAD( "blaster.6", 0x1c000, 0x4000, CRC(47fc007e) SHA1(3a80b9b7ae460e9732f7c1cdd465a5b06ded970f) )
2124 ROM_LOAD( "blaster.5", 0x20000, 0x4000, CRC(15c1b94d) SHA1(5d97628541eb8933870c3ffd3646b7aaf8af6af5) )
2125 ROM_LOAD( "blaster.14", 0x24000, 0x4000, CRC(aea6b846) SHA1(04cb4b5eb000471a0cec377a5236ac8c83529528) )
2126 ROM_LOAD( "blastkit.7", 0x28000, 0x4000, CRC(6fcc2153) SHA1(00e7b6846c15400315d94e2c7d1c99b1a737c285) )
2127 ROM_LOAD( "blaster.1", 0x2c000, 0x4000, CRC(8d0ea9e7) SHA1(34f8e2e99748bed29285f7e4929bb920960ab03e) )
2128 ROM_LOAD( "blaster.2", 0x30000, 0x4000, CRC(03c4012c) SHA1(53f0adc91e5f1ac58b08b3a6d2de8de5a40bebab) )
2129 ROM_LOAD( "blastkit.4", 0x34000, 0x4000, CRC(f80e9ff5) SHA1(e232d96b6e07c7b4240fa4dd2cb9be4745a1be4b) )
2130 ROM_LOAD( "blastkit.3", 0x38000, 0x4000, CRC(20e851f9) SHA1(efc288ef0333812a6282f22aade8e43e9a827533) )
2131
2132 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2133 ROM_LOAD( "blaster.18", 0xf000, 0x1000, CRC(c33a3145) SHA1(6ffe2da7b70c0b576fbc1790a33eecdbb9ee3d02) )
2134
2135 ROM_REGION( 0x0800, REGION_PROMS, 0 ) /* color PROM data */
2136 ROM_LOAD( "blaster.col", 0x0000, 0x0800, CRC(bac50bc4) SHA1(80a48eb97c6f02703210d00498f9669c36e64326) )
2137 ROM_END
2138
2139
2140 ROM_START( tshoot )
2141 ROM_REGION( 0x48000, REGION_CPU1, 0 )
2142 ROM_LOAD( "rom18.cpu", 0x0d000, 0x1000, CRC(effc33f1) SHA1(cd1b16b4a4a46ce9d550d10b465b8cf1ab3c5273) ) /* IC55 */
2143 ROM_LOAD( "rom2.cpu", 0x0e000, 0x1000, CRC(fd982687) SHA1(70be1ea57ea0a1e75b1bd988492a9c0244e8b91f) ) /* IC9 */
2144 ROM_LOAD( "rom3.cpu", 0x0f000, 0x1000, CRC(9617054d) SHA1(8795b97a6391aa3804f68dc2d2b33866dc17f34c) ) /* IC10 */
2145
2146 ROM_LOAD( "rom11.cpu", 0x10000, 0x2000, CRC(60d5fab8) SHA1(fe75e46dedb7ca153470d6a39cea0a721e5b7b39) ) /* IC18 */
2147 ROM_LOAD( "rom9.cpu", 0x12000, 0x2000, CRC(a4dd4a0e) SHA1(bb2f38c5ef2f3398b6ba605ffa0c30c89387bf14) ) /* IC16 */
2148 ROM_LOAD( "rom7.cpu", 0x14000, 0x2000, CRC(f25505e6) SHA1(d075ff89b6379ad7a47d9723ed1c21468b9d1dae) ) /* IC14 */
2149 ROM_LOAD( "rom5.cpu", 0x16000, 0x2000, CRC(94a7c0ed) SHA1(11f46e1ca7d79b4244ea0f60e0fba44186f1ebde) ) /* IC12 */
2150
2151 ROM_LOAD( "rom17.cpu", 0x20000, 0x2000, CRC(b02d1ccd) SHA1(b08b6d9affb6f3e50a11fd9397fe4255927de3b6) ) /* IC26 */
2152 ROM_LOAD( "rom15.cpu", 0x22000, 0x2000, CRC(11709935) SHA1(ae25bbadbbcab9f3cba2bb4bb92d5217705b38e3) ) /* IC24 */
2153
2154 ROM_LOAD( "rom10.cpu", 0x30000, 0x2000, CRC(0f32bad8) SHA1(7a2f559697d252ceec3a2f55fe51bc755e4bb65a) ) /* IC17 */
2155 ROM_LOAD( "rom8.cpu", 0x32000, 0x2000, CRC(e9b6cbf7) SHA1(6cd6b1e1c5e8e253e779afff8ad1ff90d6116fc9) ) /* IC15 */
2156 ROM_LOAD( "rom6.cpu", 0x34000, 0x2000, CRC(a49f617f) SHA1(759d25e33a09204664880329b86724805a1fe0e8) ) /* IC13 */
2157 ROM_LOAD( "rom4.cpu", 0x36000, 0x2000, CRC(b026dc00) SHA1(8a068997aa19e152d64db47528893046d338389c) ) /* IC11 */
2158
2159 ROM_LOAD( "rom16.cpu", 0x40000, 0x2000, CRC(69ce38f8) SHA1(a2cd678e71bfa5e6a3594d8699660c7fa8b52001) ) /* IC25 */
2160 ROM_LOAD( "rom14.cpu", 0x42000, 0x2000, CRC(769a4ae5) SHA1(1cdfae2d889848d69f68f990714d027cfbca1853) ) /* IC23 */
2161 ROM_LOAD( "rom13.cpu", 0x44000, 0x2000, CRC(ec016c9b) SHA1(f2e40abd14b8b4944b792dd453ebe92eb64355ae) ) /* IC21 */
2162 ROM_LOAD( "rom12.cpu", 0x46000, 0x2000, CRC(98ae7afa) SHA1(6a904408419f576352bd2f895727fd17c0541ff8) ) /* IC19 */
2163
2164 /* sound CPU */
2165 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2166 ROM_LOAD( "rom1.cpu", 0xe000, 0x2000, CRC(011a94a7) SHA1(9f54a742a87ba56b9517e33e556f57dce6eb2eab) ) /* IC8 */
2167
2168 ROM_REGION( 0xc000, REGION_GFX1, ROMREGION_DISPOSE )
2169 ROM_LOAD( "rom20.cpu", 0x00000, 0x2000, CRC(c6e1d253) SHA1(c408a29f75ba2958e229996f903400b3d95e3bd3) ) /* IC57 */
2170 ROM_LOAD( "rom21.cpu", 0x04000, 0x2000, CRC(9874e90f) SHA1(85282823cc862341adf9642d2d5d05972da6dff0) ) /* IC58 */
2171 ROM_LOAD( "rom19.cpu", 0x08000, 0x2000, CRC(b9ce4d2a) SHA1(af5332f340d3c3ae02e77923d6e8f0dd92547728) ) /* IC41 */
2172 ROM_END
2173
2174
2175 ROM_START( mysticm )
2176 ROM_REGION( 0x48000, REGION_CPU1, 0 )
2177 ROM_LOAD( "mm02_2.a09", 0x0e000, 0x1000, CRC(3a776ea8) SHA1(1fef5f5cef5e10606c97ac9c365f000a88d51314) ) /* IC9 */
2178 ROM_LOAD( "mm03_2.a10", 0x0f000, 0x1000, CRC(6e247c75) SHA1(4daf5206d29b887cd1a78528fac4b0cd8ec7f39b) ) /* IC10 */
2179
2180 ROM_LOAD( "mm11_1.a18", 0x10000, 0x2000, CRC(f537968e) SHA1(2660a480d0bba5fe25885453115ef1015f8bdea9) ) /* IC18 */
2181 ROM_LOAD( "mm09_1.a16", 0x12000, 0x2000, CRC(3bd12f6c) SHA1(7925a92c486c994e8f34c8ed52bf81a34cf44f68) ) /* IC16 */
2182 ROM_LOAD( "mm07_1.a14", 0x14000, 0x2000, CRC(ea2a2a68) SHA1(71855c874cd5032f47fafc67e2d1667f956cd9b5) ) /* IC14 */
2183 ROM_LOAD( "mm05_1.a12", 0x16000, 0x2000, CRC(b514eef3) SHA1(0f9309768c416dd98e9c02121cc750993a2923ea) ) /* IC12 */
2184
2185 ROM_LOAD( "mm18_1.a26", 0x20000, 0x2000, CRC(9b391a81) SHA1(b3f34e5d468fe4a4de2d4e771e2fa08de6596f26) ) /* IC26 */
2186 ROM_LOAD( "mm16_1.a24", 0x22000, 0x2000, CRC(399e175d) SHA1(e17301e4159e5a6d83c3ca62c93eb70f34b948df) ) /* IC24 */
2187 ROM_LOAD( "mm14_1.a22", 0x24000, 0x2000, CRC(191153b1) SHA1(fcd8aa6ad6506ba51a01f777f6a3b94e9c051b1c) ) /* IC22 */
2188
2189 ROM_LOAD( "mm10_1.a17", 0x30000, 0x2000, CRC(d6a37509) SHA1(4b1f52954ca208ccc040c017873777fbf7fbd1f2) ) /* IC17 */
2190 ROM_LOAD( "mm08_1.a15", 0x32000, 0x2000, CRC(6f1a64f2) SHA1(4183b658b257d7fe35e1d7271f76d3358df5a7a2) ) /* IC15 */
2191 ROM_LOAD( "mm06_1.a13", 0x34000, 0x2000, CRC(2e6795d4) SHA1(8b074f6a7a4b5a9705de498684180815581faea2) ) /* IC13 */
2192 ROM_LOAD( "mm04_1.a11", 0x36000, 0x2000, CRC(c222fb64) SHA1(b4c51d2b1664ef3267df1dee9e4888acf847c286) ) /* IC11 */
2193
2194 ROM_LOAD( "mm17_1.a25", 0x40000, 0x2000, CRC(d36f0a96) SHA1(9830955ca7e46b5b0dba98b4d2ea325bbbebe3c7) ) /* IC25 */
2195 ROM_LOAD( "mm15_1.a23", 0x42000, 0x2000, CRC(cd5d99da) SHA1(41a37903503c14fb9c801c51afa2f97c83b79f8b) ) /* IC23 */
2196 ROM_LOAD( "mm13_1.a21", 0x44000, 0x2000, CRC(ef4b79db) SHA1(346057cb8c4593df44fb36771553e60610fe1a0c) ) /* IC21 */
2197 ROM_LOAD( "mm12_1.a19", 0x46000, 0x2000, CRC(a1f04bf0) SHA1(389bdb7c9e395af9275abfb20c3ab51bc12dc4db) ) /* IC19 */
2198
2199 /* sound CPU */
2200 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2201 ROM_LOAD( "mm01_1.a08", 0x0e000, 0x2000, CRC(65339512) SHA1(144625d2905c953383bcc90cd2435d332394883f) ) /* IC8 */
2202
2203 ROM_REGION( 0xc000, REGION_GFX1, ROMREGION_DISPOSE )
2204 ROM_LOAD( "mm20_1.b57", 0x00000, 0x2000, CRC(5c0f4f46) SHA1(7dedbbeda2f34a2eac9fb14277874d9d66f468c7) ) /* IC57 */
2205 ROM_LOAD( "mm21_1.b58", 0x04000, 0x2000, CRC(cb90b3c5) SHA1(f28cca2c3ff23d6c9e2952a1b08ab2875655ec70) ) /* IC58 */
2206 ROM_LOAD( "mm19_1.b41", 0x08000, 0x2000, CRC(e274df86) SHA1(9876a487c5efa350ced31acbc39df22c8d414677) ) /* IC41 */
2207 ROM_END
2208
2209
2210 ROM_START( inferno )
2211 ROM_REGION( 0x48000, REGION_CPU1, 0 )
2212 ROM_LOAD( "ic9.inf", 0x0e000, 0x1000, CRC(1a013185) SHA1(9079c082ec043714f9d8ea92bc81d0b93d2ce715) ) /* IC9 */
2213 ROM_LOAD( "ic10.inf", 0x0f000, 0x1000, CRC(dbf64a36) SHA1(54326bc527797f0a3a55764073eb40030aec1aae) ) /* IC10 */
2214
2215 ROM_LOAD( "ic18.inf", 0x10000, 0x2000, CRC(95bcf7b1) SHA1(66687a3962109a25e26ae00bddd33ed973981b91) ) /* IC18 */
2216 ROM_LOAD( "ic16.inf", 0x12000, 0x2000, CRC(8bc4f935) SHA1(12da6faa71e5984047fa14f32af5bb865f228cb2) ) /* IC16 */
2217 ROM_LOAD( "ic14.inf", 0x14000, 0x2000, CRC(a70508a7) SHA1(930bb9af3b6ba9fdf3e7c32f6b5ffae9acd6cee3) ) /* IC14 */
2218 ROM_LOAD( "ic12.inf", 0x16000, 0x2000, CRC(7ffb87f9) SHA1(469f5ae39ad8531c4c11e9d10ab57686e7f54aef) ) /* IC12 */
2219
2220 ROM_LOAD( "ic17.inf", 0x30000, 0x2000, CRC(b4684139) SHA1(c1d6ecd3dc8191250ef70e6972dad234c0d8f739) ) /* IC17 */
2221 ROM_LOAD( "ic15.inf", 0x32000, 0x2000, CRC(128a6ad6) SHA1(357438e50663d6cb96dabfa5110c17836584e15f) ) /* IC15 */
2222 ROM_LOAD( "ic13.inf", 0x34000, 0x2000, CRC(83a9e4d6) SHA1(4937e4d1c516da837213e40a1da862578c8dd272) ) /* IC13 */
2223 ROM_LOAD( "ic11.inf", 0x36000, 0x2000, CRC(c2e9c909) SHA1(21f0b9bf6ef3a9466ea9afde1c7efde9ed04ce5b) ) /* IC11 */
2224
2225 ROM_LOAD( "ic25.inf", 0x40000, 0x2000, CRC(103a5951) SHA1(57c8caa1e9d5e245052822d08add9343fd622e04) ) /* IC25 */
2226 ROM_LOAD( "ic23.inf", 0x42000, 0x2000, CRC(c04749a0) SHA1(b203e8d1df556e10b4ecad4733448f889c63e261) ) /* IC23 */
2227 ROM_LOAD( "ic21.inf", 0x44000, 0x2000, CRC(c405f853) SHA1(6bd74d065a6043849e083c2822925b82c6fedb00) ) /* IC21 */
2228 ROM_LOAD( "ic19.inf", 0x46000, 0x2000, CRC(ade7645a) SHA1(bfaab1840e3171df895a2333a30b9dac214b3351) ) /* IC19 */
2229
2230 /* sound CPU */
2231 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2232 ROM_LOAD( "ic8.inf", 0x0e000, 0x2000, CRC(4e3123b8) SHA1(f453feed3ae3b6430db49eb4325f62eecfee9f5e) ) /* IC8 */
2233
2234 ROM_REGION( 0xc000, REGION_GFX1, ROMREGION_DISPOSE )
2235 ROM_LOAD( "ic57.inf", 0x00000, 0x2000, CRC(65a4ef79) SHA1(270c58901e83665bc388cd9cb92022c55e8eae50) ) /* IC57 */
2236 ROM_LOAD( "ic58.inf", 0x04000, 0x2000, CRC(4bb1c2a0) SHA1(9e8d214b8d1dbe4c2369e4047e165c9e692098a5) ) /* IC58 */
2237 ROM_LOAD( "ic41.inf", 0x08000, 0x2000, CRC(f3f7238f) SHA1(3810f1afd318ec37271c099c989b142b85d8da51) ) /* IC41 */
2238 ROM_END
2239
2240
2241 ROM_START( joust2 )
2242 ROM_REGION( 0x48000, REGION_CPU1, 0 )
2243 ROM_LOAD( "ic55_r1.cpu", 0x0D000, 0x1000, CRC(08b0d5bd) SHA1(b58da478aef36ae20fcfee48151d5d556e16b7b9) ) /* IC55 ROM02 */
2244 ROM_LOAD( "ic09_r2.cpu", 0x0E000, 0x1000, CRC(951175ce) SHA1(ac70df125bb438f9fccc082276df4a76ff693e16) ) /* IC09 ROM03 */
2245 ROM_LOAD( "ic10_r2.cpu", 0x0F000, 0x1000, CRC(ba6e0f6c) SHA1(431cbf38e919011d030f41008e1ad45e7e0ec38b) ) /* IC10 ROM04 */
2246
2247 ROM_LOAD( "ic18_r1.cpu", 0x10000, 0x2000, CRC(9dc986f9) SHA1(5ce479936536ef713cdfc8fc8190d338c46d171e) ) /* IC18 ROM11 */
2248 ROM_LOAD( "ic16_r2.cpu", 0x12000, 0x2000, CRC(56e2b550) SHA1(01211d389ca384987d56c26596aa8c1adffdf8dd) ) /* IC16 ROM09 */
2249 ROM_LOAD( "ic14_r2.cpu", 0x14000, 0x2000, CRC(f3bce576) SHA1(30ee1b212879b3b55b47c9064f123fb77c8f3089) ) /* IC14 ROM07 */
2250 ROM_LOAD( "ic12_r2.cpu", 0x16000, 0x2000, CRC(5f8b4919) SHA1(1215a314c07ef4f244e862743035626cac1d9538) ) /* IC12 ROM05 */
2251
2252 ROM_LOAD( "ic26_r1.cpu", 0x20000, 0x2000, CRC(4ef5e805) SHA1(98b93388ab4a4fa6eeceee3386fa46f5a307b8cb) ) /* IC26 ROM19 */
2253 ROM_LOAD( "ic24_r1.cpu", 0x22000, 0x2000, CRC(4861f063) SHA1(6db00cce230bf4bdfdfbfe59e0dc2d916b84d0dc) ) /* IC24 ROM17 */
2254 ROM_LOAD( "ic22_r1.cpu", 0x24000, 0x2000, CRC(421aafa8) SHA1(06187ba8fef3e89eb399d7040015212bd5f86853) ) /* IC22 ROM15 */
2255 ROM_LOAD( "ic20_r1.cpu", 0x26000, 0x2000, CRC(3432ff55) SHA1(aec0f83b92369de8a830ec298ac490a51bc29f26) ) /* IC20 ROM13 */
2256
2257 ROM_LOAD( "ic17_r1.cpu", 0x30000, 0x2000, CRC(3e01b597) SHA1(17d09482636d6cda2f3266152396f0461121e748) ) /* IC17 ROM10 */
2258 ROM_LOAD( "ic15_r1.cpu", 0x32000, 0x2000, CRC(ff26fb29) SHA1(5ad498db71c384c1928ec965ba3cad48af428f19) ) /* IC15 ROM08 */
2259 ROM_LOAD( "ic13_r2.cpu", 0x34000, 0x2000, CRC(5f107db5) SHA1(c413a2e58853ccda602515b9668a6a620294ba49) ) /* IC13 ROM06 */
2260
2261 ROM_LOAD( "ic25_r1.cpu", 0x40000, 0x2000, CRC(47580af5) SHA1(d2728f32f02b549c7e9691c668f0097e327a1d2d) ) /* IC25 ROM18 */
2262 ROM_LOAD( "ic23_r1.cpu", 0x42000, 0x2000, CRC(869b5942) SHA1(a3f4bab4c0db71589e9be2bbf1f94052ef2f56da) ) /* IC23 ROM16 */
2263 ROM_LOAD( "ic21_r1.cpu", 0x44000, 0x2000, CRC(0bbd867c) SHA1(f2db9fc57b6afb762715617345e8c3dcb89b6cc2) ) /* IC21 ROM14 */
2264 ROM_LOAD( "ic19_r1.cpu", 0x46000, 0x2000, CRC(b9221ed1) SHA1(428ea8f3e2fa58d875f581f5de6e0d05ed855a45) ) /* IC19 ROM12 */
2265
2266 /* sound CPU */
2267 ROM_REGION( 0x10000, REGION_CPU2, 0 )
2268 ROM_LOAD( "ic08_r1.cpu", 0x0E000, 0x2000, CRC(84517c3c) SHA1(de0b6473953783c091ddcc7aaa89fc1ec3b9d378) ) /* IC08 ROM08 */
2269
2270 /* sound board */
2271 ROM_REGION( 0x70000, REGION_CPU3, 0 )
2272 ROM_LOAD( "u04_r1.snd", 0x10000, 0x8000, CRC(3af6b47d) SHA1(aff19d65a4d9c249dec6a9e04a4066fada0f8fa1) ) /* IC04 ROM23 */
2273 ROM_LOAD( "u19_r1.snd", 0x30000, 0x8000, CRC(e7f9ed2e) SHA1(6b9ef5189650f0b6b2866da7f532cdf851f02ead) ) /* IC19 ROM24 */
2274 ROM_LOAD( "u20_r1.snd", 0x50000, 0x8000, CRC(c85b29f7) SHA1(b37e1890bd0dfa0c7db19fc878450718b60c1ca0) ) /* IC20 ROM25 */
2275
2276 ROM_REGION( 0xc000, REGION_GFX1, ROMREGION_DISPOSE )
2277 ROM_LOAD( "ic57_r1.vid", 0x00000, 0x4000, CRC(572c6b01) SHA1(651df3223c1dc42543f57a7204ae492eb15a4999) ) /* IC57 ROM20 */
2278 ROM_LOAD( "ic58_r1.vid", 0x04000, 0x4000, CRC(aa94bf05) SHA1(3412dd181e2c12dc2dd1caabfe7e737005b0ccd7) ) /* IC58 ROM21 */
2279 ROM_LOAD( "ic41_r1.vid", 0x08000, 0x4000, CRC(c41e3daa) SHA1(fafe76bebd6eaf2cd124c1030e3a58eb5a6cddc6) ) /* IC41 ROM22 */
2280 ROM_END
2281
2282
2283
2284 /*************************************
2285 *
2286 * Driver initialization
2287 *
2288 *************************************/
2289
2290 static DRIVER_INIT( defender )
2291 {
2292 static const UINT32 bank[8] = { 0x0c000, 0x10000, 0x11000, 0x12000, 0x0c000, 0x0c000, 0x0c000, 0x13000 };
2293 defender_bank_list = bank;
2294
2295 /* CMOS configuration */
2296 CONFIGURE_CMOS(0xc400, 0x100);
2297
2298 /* PIA configuration */
2299 CONFIGURE_PIAS(defender_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2300 }
2301
2302
DRIVER_INIT(defndjeu)2303 static DRIVER_INIT( defndjeu )
2304 {
2305 /*
2306 Note: Please do not remove these comments in BETA versions. They are
2307 helpful to get the games working. When they will work, useless
2308 comments may be removed as desired.
2309
2310 The encryption in this game is one of the silliest I have ever seen.
2311 I just wondered if the ROMs were encrypted, and figured out how they
2312 were in just about 5 mins...
2313 Very simple: bits 0 and 7 are swapped in the ROMs (not sound).
2314
2315 Game does not work due to bad ROMs 16 and 20. However, the others are
2316 VERY similar (if not nearly SAME) to MAYDAY and DEFENSE ones (and NOT
2317 DEFENDER), although MAYDAY ROMs are more similar than DEFENSE ones...
2318 By putting MAYDAY ROMs and encrypting them, I got a first machine test
2319 and then, reboot... The test was the random graphic drawings, which
2320 were bad. Each time the full screen was drawn, the game rebooted.
2321 Unfortunately, I don't remember which roms I took to get that, and I
2322 could not get the same result anymore (I did not retry ALL the
2323 possibilities I did at 01:30am). :-(
2324
2325 ROM equivalences (not including the sound ROM):
2326
2327 MAYDAY MAYDAY (Alternate) DEFENSE JEUTEL's Defender
2328 -----------------------------------------------------------------
2329 ROMC.BIN IC03-3.BIN DFNDR-C.ROM 15
2330 ROMB.BIN IC02-2.BIN DFNDR-B.ROM 16
2331 ROMA.BIN IC01-1.BIN DFNDR-A.ROM 17
2332 ROMG.BIN IC07-7D.BIN DFNDR-G.ROM 18
2333 ROMF.BIN IC06-6.BIN DFNDR-F.ROM 19
2334 ROME.BIN IC05-5.BIN DFNDR-E.ROM 20
2335 ROMD.BIN IC04-4.BIN DFNDR-D.ROM 21
2336 */
2337 static const UINT32 bank[8] = { 0x0c000, 0x10000, 0x11000, 0x12000, 0x0c000, 0x0c000, 0x0c000, 0x14000 };
2338 UINT8 *rom = memory_region(REGION_CPU1);
2339 int i;
2340
2341 defender_bank_list = bank;
2342
2343 /* CMOS configuration */
2344 CONFIGURE_CMOS(0xc400, 0x100);
2345
2346 /* PIA configuration */
2347 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2348
2349 for (i = 0xd000; i < 0x15000; i++)
2350 rom[i] = BITSWAP8(rom[i],0,6,5,4,3,2,1,7);
2351
2352 }
2353
2354 #if 0
2355 static DRIVER_INIT( defcmnd )
2356 {
2357 static const UINT32 bank[8] = { 0x0c000, 0x10000, 0x11000, 0x12000, 0x13000, 0x0c000, 0x0c000, 0x14000 };
2358 defender_bank_list = bank;
2359
2360 /* CMOS configuration */
2361 CONFIGURE_CMOS(0xc400, 0x100);
2362
2363 /* PIA configuration */
2364 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2365 }
2366 #endif
2367
DRIVER_INIT(mayday)2368 static DRIVER_INIT( mayday )
2369 {
2370 static const UINT32 bank[8] = { 0x0c000, 0x10000, 0x11000, 0x12000, 0x0c000, 0x0c000, 0x0c000, 0x13000 };
2371 defender_bank_list = bank;
2372
2373 /* CMOS configuration */
2374 CONFIGURE_CMOS(0xc400, 0x100);
2375
2376 /* PIA configuration */
2377 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2378
2379 /* install a handler to catch protection checks */
2380 mayday_protection = install_mem_read_handler(0, 0xa190, 0xa191, mayday_protection_r);
2381 }
2382
2383
DRIVER_INIT(colony7)2384 static DRIVER_INIT( colony7 )
2385 {
2386 static const UINT32 bank[8] = { 0x0c000, 0x10000, 0x11000, 0x12000, 0x0c000, 0x0c000, 0x0c000, 0x0c000 };
2387 defender_bank_list = bank;
2388
2389 /* CMOS configuration */
2390 CONFIGURE_CMOS(0xc400, 0x100);
2391
2392 /* PIA configuration */
2393 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2394 }
2395
2396
DRIVER_INIT(stargate)2397 static DRIVER_INIT( stargate )
2398 {
2399 /* CMOS configuration */
2400 CONFIGURE_CMOS(0xcc00, 0x400);
2401
2402 /* PIA configuration */
2403 CONFIGURE_PIAS(stargate_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2404 }
2405
2406
DRIVER_INIT(joust)2407 static DRIVER_INIT( joust )
2408 {
2409 /* CMOS configuration */
2410 CONFIGURE_CMOS(0xcc00, 0x400);
2411
2412 /* video configuration */
2413 CONFIGURE_BLITTER(4, 0, 0);
2414
2415 /* PIA configuration */
2416 CONFIGURE_PIAS(williams_muxed_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2417 }
2418
2419
DRIVER_INIT(robotron)2420 static DRIVER_INIT( robotron )
2421 {
2422 /* CMOS configuration */
2423 CONFIGURE_CMOS(0xcc00, 0x400);
2424
2425 /* video configuration */
2426 CONFIGURE_BLITTER(4, 0, 0);
2427
2428 /* PIA configuration */
2429 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2430 }
2431
2432
DRIVER_INIT(spdball)2433 static DRIVER_INIT( spdball )
2434 {
2435 /* CMOS configuration */
2436 CONFIGURE_CMOS(0xcc00, 0x400);
2437
2438 /* video configuration */
2439 CONFIGURE_BLITTER(4, 0, 0);
2440
2441 /* PIA configuration */
2442 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2443 pia_config(3, PIA_STANDARD_ORDERING, &spdball_pia_3_intf);
2444
2445 /* install extra input handlers */
2446 install_mem_read_handler (0, 0xc800, 0xc800, input_port_5_r);
2447 install_mem_read_handler (0, 0xc801, 0xc801, input_port_6_r);
2448 install_mem_read_handler (0, 0xc802, 0xc802, input_port_7_r);
2449 install_mem_read_handler (0, 0xc803, 0xc803, input_port_8_r);
2450 install_mem_read_handler (0, 0xc808, 0xc80b, pia_3_r);
2451 install_mem_write_handler(0, 0xc808, 0xc80b, pia_3_w);
2452 }
2453
DRIVER_INIT(alienar)2454 static DRIVER_INIT( alienar )
2455 {
2456 /* CMOS configuration */
2457 CONFIGURE_CMOS(0xcc00, 0x400);
2458
2459 /* video configuration */
2460 CONFIGURE_BLITTER(4, 0, 0);
2461
2462 /* PIA configuration */
2463 CONFIGURE_PIAS(williams_muxed_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2464
2465 install_mem_write_handler (0, 0xcbff, 0xcbff, MWA_NOP);
2466 }
2467
2468
DRIVER_INIT(bubbles)2469 static DRIVER_INIT( bubbles )
2470 {
2471 /* CMOS configuration */
2472 CONFIGURE_CMOS(0xcc00, 0x400);
2473
2474 /* video configuration */
2475 CONFIGURE_BLITTER(4, 0, 0);
2476
2477 /* PIA configuration */
2478 CONFIGURE_PIAS(williams_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2479 }
2480
2481
DRIVER_INIT(splat)2482 static DRIVER_INIT( splat )
2483 {
2484 /* CMOS configuration */
2485 CONFIGURE_CMOS(0xcc00, 0x400);
2486
2487 /* video configuration */
2488 CONFIGURE_BLITTER(0, 0, 0);
2489
2490 /* PIA configuration */
2491 CONFIGURE_PIAS(williams_dual_muxed_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2492 }
2493
2494
DRIVER_INIT(sinistar)2495 static DRIVER_INIT( sinistar )
2496 {
2497 /* CMOS configuration */
2498 CONFIGURE_CMOS(0xcc00, 0x400);
2499
2500 /* video configuration */
2501 CONFIGURE_BLITTER(4, 0, 1);
2502
2503 /* PIA configuration */
2504 CONFIGURE_PIAS(williams_49way_pia_0_intf, williams_pia_1_intf, sinistar_snd_pia_intf);
2505
2506 /* install RAM instead of ROM in the Dxxx slot */
2507 install_mem_read_handler (0, 0xd000, 0xdfff, MRA_RAM);
2508 install_mem_write_handler(0, 0xd000, 0xdfff, MWA_RAM);
2509 }
2510
2511
DRIVER_INIT(playball)2512 static DRIVER_INIT( playball )
2513 {
2514 /* CMOS configuration */
2515 CONFIGURE_CMOS(0xcc00, 0x400);
2516
2517 /* video configuration */
2518 CONFIGURE_BLITTER(4, 0, 1);
2519
2520 /* PIA configuration */
2521 CONFIGURE_PIAS(williams_pia_0_intf, playball_pia_1_intf, sinistar_snd_pia_intf);
2522
2523 /* install RAM instead of ROM in the Dxxx slot */
2524 install_mem_read_handler (0, 0xd000, 0xdfff, MRA_RAM);
2525 install_mem_write_handler(0, 0xd000, 0xdfff, MWA_RAM);
2526 }
2527
2528
DRIVER_INIT(lottofun)2529 static DRIVER_INIT( lottofun )
2530 {
2531 /* CMOS configuration */
2532 CONFIGURE_CMOS(0xcc00, 0x400);
2533
2534 /* video configuration */
2535 CONFIGURE_BLITTER(4, 0, 0);
2536
2537 /* PIA configuration */
2538 CONFIGURE_PIAS(lottofun_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2539 }
2540
2541
DRIVER_INIT(blaster)2542 static DRIVER_INIT( blaster )
2543 {
2544 /* CMOS configuration */
2545 CONFIGURE_CMOS(0xcc00, 0x400);
2546
2547 /* video configuration */
2548 CONFIGURE_BLITTER(0, 1, 0);
2549
2550 /* PIA configuration */
2551 CONFIGURE_PIAS(williams_49way_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2552 }
2553
2554
DRIVER_INIT(blastkit)2555 static DRIVER_INIT( blastkit )
2556 {
2557 /* CMOS configuration */
2558 CONFIGURE_CMOS(0xcc00, 0x400);
2559
2560 /* video configuration */
2561 CONFIGURE_BLITTER(0, 1, 0);
2562
2563 /* PIA configuration */
2564 CONFIGURE_PIAS(williams_49way_muxed_pia_0_intf, williams_pia_1_intf, williams_snd_pia_intf);
2565 }
2566
2567
DRIVER_INIT(mysticm)2568 static DRIVER_INIT( mysticm )
2569 {
2570 static const UINT8 tilemap_colors[] = { 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
2571
2572 /* CMOS configuration */
2573 CONFIGURE_CMOS(0xcc00, 0x400);
2574
2575 /* video configuration */
2576 CONFIGURE_BLITTER(0, 0, 0);
2577 CONFIGURE_TILEMAP(0x7f, tilemap_colors, 1, 0, 1);
2578
2579 /* PIA configuration */
2580 CONFIGURE_PIAS(mysticm_pia_0_intf, williams2_pia_1_intf, williams2_snd_pia_intf);
2581
2582 /* install RAM instead of ROM in the Dxxx slot */
2583 install_mem_read_handler (0, 0xd000, 0xdfff, MRA_RAM);
2584 install_mem_write_handler(0, 0xd000, 0xdfff, MWA_RAM);
2585 }
2586
2587
DRIVER_INIT(tshoot)2588 static DRIVER_INIT( tshoot )
2589 {
2590 static const UINT8 tilemap_colors[] = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7 };
2591
2592 /* CMOS configuration */
2593 CONFIGURE_CMOS(0xcc00, 0x400);
2594
2595 /* video configuration */
2596 CONFIGURE_BLITTER(0, 0, 0);
2597 CONFIGURE_TILEMAP(0x7f, tilemap_colors, 1, 0, 0);
2598
2599 /* PIA configuration */
2600 CONFIGURE_PIAS(tshoot_pia_0_intf, williams2_pia_1_intf, tshoot_snd_pia_intf);
2601 }
2602
2603
DRIVER_INIT(inferno)2604 static DRIVER_INIT( inferno )
2605 {
2606 static const UINT8 tilemap_colors[] = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7 };
2607
2608 /* CMOS configuration */
2609 CONFIGURE_CMOS(0xcc00, 0x400);
2610
2611 /* video configuration */
2612 CONFIGURE_BLITTER(0, 0, 0);
2613 CONFIGURE_TILEMAP(0x7f, tilemap_colors, 1, 0, 0);
2614
2615 /* PIA configuration */
2616 CONFIGURE_PIAS(williams2_muxed_pia_0_intf, williams2_pia_1_intf, williams2_snd_pia_intf);
2617
2618 /* install RAM instead of ROM in the Dxxx slot */
2619 install_mem_read_handler (0, 0xd000, 0xdfff, MRA_RAM);
2620 install_mem_write_handler(0, 0xd000, 0xdfff, MWA_RAM);
2621 }
2622
2623
DRIVER_INIT(joust2)2624 static DRIVER_INIT( joust2 )
2625 {
2626 static const UINT8 tilemap_colors[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
2627
2628 /* CMOS configuration */
2629 CONFIGURE_CMOS(0xcc00, 0x400);
2630
2631 /* video configuration */
2632 CONFIGURE_BLITTER(0, 0, 0);
2633 CONFIGURE_TILEMAP(0xff, tilemap_colors, 0, -2, 0);
2634
2635 /* PIA configuration */
2636 CONFIGURE_PIAS(williams2_muxed_pia_0_intf, joust2_pia_1_intf, williams2_snd_pia_intf);
2637
2638 /* expand the sound ROMs */
2639 memcpy(&memory_region(REGION_CPU3)[0x18000], &memory_region(REGION_CPU3)[0x10000], 0x08000);
2640 memcpy(&memory_region(REGION_CPU3)[0x20000], &memory_region(REGION_CPU3)[0x10000], 0x10000);
2641 memcpy(&memory_region(REGION_CPU3)[0x38000], &memory_region(REGION_CPU3)[0x30000], 0x08000);
2642 memcpy(&memory_region(REGION_CPU3)[0x40000], &memory_region(REGION_CPU3)[0x30000], 0x10000);
2643 memcpy(&memory_region(REGION_CPU3)[0x58000], &memory_region(REGION_CPU3)[0x50000], 0x08000);
2644 memcpy(&memory_region(REGION_CPU3)[0x60000], &memory_region(REGION_CPU3)[0x50000], 0x10000);
2645 }
2646
2647
2648
2649 /*************************************
2650 *
2651 * Game drivers
2652 *
2653 *************************************/
2654
2655 GAMEC( 1980, defender, 0, defender, defender, defender, ROT0, "Williams", "Defender (Red label)", &generic_ctrl, &defender_bootstrap )
2656 GAMEC( 1980, defendg, defender, defender, defender, defender, ROT0, "Williams", "Defender (Green label)", &generic_ctrl, &defendg_bootstrap )
2657 GAMEC( 1980, defendw, defender, defender, defender, defender, ROT0, "Williams", "Defender (White label)", &generic_ctrl, &defendg_bootstrap )
2658 GAMEX( 1980, defndjeu, defender, defender, defender, defndjeu, ROT0, "Jeutel", "Defender [Q] (bootleg)", GAME_NOT_WORKING )
2659 GAMEC( 1980, defcmnd, defender, defender, defender, defender, ROT0, "bootleg", "Defense Command (set 1)", &generic_ctrl, &defcmnd_bootstrap )
2660 GAMEC( 1981, defence, defender, defender, defender, defender, ROT0, "Outer Limits", "Defence Command", &generic_ctrl, &defence_bootstrap )
2661
2662 GAME( 1980, mayday, 0, defender, defender, mayday, ROT0, "<unknown>", "Mayday (set 1)" )
2663 GAME( 1980, maydaya, mayday, defender, defender, mayday, ROT0, "<unknown>", "Mayday (set 2)" )
2664 GAME( 1980, maydayb, mayday, defender, defender, mayday, ROT0, "<unknown>", "Mayday (set 3)" )
2665
2666 GAME( 1981, colony7, 0, defender, colony7, colony7, ROT270, "Taito", "Colony 7 (set 1)" )
2667 GAME( 1981, colony7a, colony7, defender, colony7, colony7, ROT270, "Taito", "Colony 7 (set 2)" )
2668
2669 GAME( 1981, stargate, 0, williams, stargate, stargate, ROT0, "Williams", "Stargate" )
2670
2671 GAMEC( 1982, robotron, 0, williams, robotron, robotron, ROT0, "Williams", "Robotron (Solid Blue label)", &robotron_ctrl, &robotron_bootstrap )
2672 GAMEC( 1982, robotryo, robotron, williams, robotron, robotron, ROT0, "Williams", "Robotron (Yellow-Orange label)", &robotron_ctrl, &robotryo_bootstrap )
2673
2674 GAMEC( 1982, joust, 0, williams, joust, joust, ROT0, "Williams", "Joust (White-Green label)", &joust_ctrl, &joust_bootstrap )
2675 GAMEC( 1982, joustr, joust, williams, joust, joust, ROT0, "Williams", "Joust (Solid Red label)", &joust_ctrl, &joust_bootstrap )
2676 GAMEC( 1982, joustwr, joust, williams, joust, joust, ROT0, "Williams", "Joust (White-Red label)", &joust_ctrl, &joust_bootstrap )
2677
2678 GAME( 1982, bubbles, 0, williams, bubbles, bubbles, ROT0, "Williams", "Bubbles" )
2679 GAME( 1982, bubblesr, bubbles, williams, bubbles, bubbles, ROT0, "Williams", "Bubbles (Solid Red label)" )
2680 GAME( 1982, bubblesp, bubbles, williams, bubbles, bubbles, ROT0, "Williams", "Bubbles (prototype version)" )
2681
2682 GAME( 1982, splat, 0, williams, splat, splat, ROT0, "Williams", "Splat!" )
2683
2684 GAMEC( 1982, sinistar, 0, sinistar, sinistar, sinistar, ROT270, "Williams", "Sinistar (revision 3)", &generic_ctrl, &sinistar_bootstrap)
2685 GAMEC( 1982, sinista1, sinistar, sinistar, sinistar, sinistar, ROT270, "Williams", "Sinistar (prototype version)", &generic_ctrl, &sinista1_bootstrap )
2686 GAMEC( 1982, sinista2, sinistar, sinistar, sinistar, sinistar, ROT270, "Williams", "Sinistar (revision 2)", &generic_ctrl, &sinista2_bootstrap )
2687
2688 GAME( 1983, playball, 0, playball, playball, playball, ROT270, "Williams", "PlayBall! (prototype)" )
2689
2690 GAME( 1983, blaster, 0, blaster, blaster, blaster, ROT0, "Williams", "Blaster" )
2691 GAME( 1983, blastkit, blaster, blaster, blastkit, blastkit, ROT0, "Williams", "Blaster (kit)" )
2692
2693 GAME( 1985, spdball, 0, williams, spdball, spdball, ROT0, "Williams", "Speed Ball (prototype)" )
2694 GAME( 1985, alienar, 0, alienar, alienar, alienar, ROT0, "Duncan Brown", "Alien Arena" )
2695 GAME( 1985, alienaru, 0, alienaru, alienar, alienar, ROT0, "Duncan Brown", "Alien Arena (Stargate upgrade)" )
2696
2697 GAME( 1983, mysticm, 0, williams2,mysticm, mysticm, ROT0, "Williams", "Mystic Marathon" )
2698 GAME( 1984, tshoot, 0, williams2,tshoot, tshoot, ROT0, "Williams", "Turkey Shoot" )
2699 GAMECX(1984, inferno, 0, williams2,inferno, inferno, ROT0, "Williams", "Inferno (Williams)", GAME_IMPERFECT_SOUND, &inferno_ctrl, NULL )
2700 GAMEC( 1986, joust2, 0, joust2, joust2, joust2, ROT270, "Williams", "Joust 2 - Survival of the Fittest (set 1)", &joust2_ctrl, &joust2_bootstrap )
2701
2702 GAME( 1987, lottofun, 0, williams, lottofun, lottofun, ROT0, "H.A.R. Management", "Lotto Fun" )
2703