1 // license:BSD-3-Clause
2 // copyright-holders:Phil Stroffolino
3 /*
4 Namco System NB-1
5
6 Notes:
7 - tilemap system is identical to Namco System2
8
9 ToDo:
10 - improve interrupts
11 - gunbulet force feedback
12
13 Main CPU : Motorola 68020 32-bit processor @ 25MHz
14 Secondary CPUs : C329 + 137 (both custom)
15 Custom Graphics Chips : GFX:123,145,156,C116 - Motion Objects:C355,187,C347
16 Sound CPU : C75 (Mitsu M37702 with internal ROM)
17 PCM Sound chip : C352 (custom)
18 I/O Chip : 160 (custom)
19 Board composition : Single board
20
21 Known games using this hardware:
22 - Great Sluggers '93
23 - Great Sluggers '94
24 - Gun Bullet / Point Blank
25 - Nebulas Ray
26 - Super World Stadium '95
27 - Super World Stadium '96
28 - Super World Stadium '97
29 - The Outfoxies
30 - Mach Breakers
31
32 *****************************************************
33
34 Gun Bullet (JPN Ver.)
35 (c)1994 Namco
36 KeyCus.:C386
37
38 Note: CPU - Main PCB (NB-1)
39 MEM - MEMEXT OBJ8 PCB at J103 on the main PCB
40 SPR - MEMEXT SPR PCB at location 5B on the main PCB
41
42 - Namco main PCB: NB-1 8634961101, (8634963101)
43 - MEMEXT OBJ8 PCB: 8635902201, (8635902301)
44
45 * - Surface mounted ROMs
46 # - 32 pin DIP Custom IC (16bytes x 16-bit)
47
48 Brief hardware overview
49 -----------------------
50
51 Main processor - MC68EC020FG25 25MHz (100 pin PQFP)
52 - C329 custom (100 pin PQFP)
53 - 137 custom PLD (28 pin NDIP)
54 - C366 Key Custom
55
56 Sound processor - C75 custom
57 (PCM) - C352 custom (100 pin PQFP)
58 (control inputs) - 160 custom (80 pin PQFP)
59
60 GFX - 123 custom (80 pin PQFP)
61 - 145 custom (80 pin PQFP)
62 - 156 custom (64 pin PQFP)
63 - C116 custom (80 pin PQFP)
64
65 Motion Objects - C355 custom (160 pin PQFP)
66 - 187 custom (160 pin PQFP)
67 - C347 custom (80 pin PQFP)
68
69 PCB Jumper Settings
70 -------------------
71
72 Location Setting Alt. Setting
73 ----------------------------------------
74 JP1 1M 4M
75 JP2 4M 1M
76 JP5 <1M 1M
77 JP6 8M >8M
78 JP7 4M 1M
79 JP8 4M 1M
80 JP9 cON cOFF
81 JP10 24M (MHz) 12M (MHz)
82 JP11 24M (MHz) 28M (MHz)
83 JP12 355 F32
84
85 *****************************************************
86
87 Super World Stadium '95 (JPN Ver.)
88 (c)1986-1993 1995 Namco
89
90 Namco NB-1 system
91
92 KeyCus.:C393
93
94 *****************************************************
95
96 Super World Stadium '96 (JPN Ver.)
97 (c)1986-1993 1995 1996 Namco
98
99 Namco NB-1 system
100
101 KeyCus.:C426
102
103 *****************************************************
104
105 Super World Stadium '97 (JPN Ver.)
106 (c)1986-1993 1995 1996 1997 Namco
107
108 Namco NB-1 system
109
110 KeyCus.:C434
111
112 *****************************************************
113
114 Great Sluggers Featuring 1994 Team Rosters
115 (c)1993 1994 Namco / 1994 MLBPA
116
117 Namco NB-1 system
118
119 KeyCus.:C359
120
121 *****************************************************
122
123 --------------------------
124 Nebulasray by NAMCO (1994)
125 --------------------------
126 Location Device File ID Checksum
127 -------------------------------------------------
128 CPU 13B 27C402 NR1-MPRU B0ED [ MAIN PROG ]
129 CPU 15B 27C240 NR1-MPRL 90C4 [ MAIN PROG ]
130 SPR 27C1024 NR1-SPR0 99A6 [ SOUND PRG ]
131 CPU 5M MB834000B NR1-SHA0 DD59 [ SHAPE ]
132 CPU 8J MB838000B NR1-CHR0 22A4 [ CHARACTER ]
133 CPU 9J MB838000B NR1-CHR1 19D0 [ CHARACTER ]
134 CPU 10J MB838000B NR1-CHR2 B524 [ CHARACTER ]
135 CPU 11J MB838000B NR1-CHR3 0AF4 [ CHARACTER ]
136 CPU 5J KM2316000 NR1-VOI0 8C41 [ VOICE ]
137 MEM IC1 MT26C1600 * NR1-OBJ0L FD7C [ MOTION OBJL ]
138 MEM IC3 MT26C1600 * NR1-OBJ1L 7069 [ MOTION OBJL ]
139 MEM IC5 MT26C1600 * NR1-OBJ2L 07DC [ MOTION OBJL ]
140 MEM IC7 MT26C1600 * NR1-OBJ3L A61E [ MOTION OBJL ]
141 MEM IC2 MT26C1600 * NR1-OBJ0U 44D3 [ MOTION OBJU ]
142 MEM IC4 MT26C1600 * NR1-OBJ1U F822 [ MOTION OBJU ]
143 MEM IC6 MT26C1600 * NR1-OBJ2U DD24 [ MOTION OBJU ]
144 MEM IC8 MT26C1600 * NR1-OBJ3U F750 [ MOTION OBJU ]
145 CPU 11D Custom # C366.BIN 1C93 [ KEYCUSTUM ]
146
147 Note: CPU - Main PCB (NB-1)
148 MEM - MEMEXT OBJ8 PCB at J103 on the main PCB
149 SPR - MEMEXT SPR PCB at location 5B on the main PCB
150
151 - Namco main PCB: NB-1 8634961101, (8634963101)
152 - MEMEXT OBJ8 PCB: 8635902201, (8635902301)
153
154 * - Surface mounted ROMs
155 # - 32 pin DIP Custom IC (16bytes x 16-bit)
156
157 Brief hardware overview
158 -----------------------
159
160 Main processor - MC68EC020FG25 25MHz (100 pin PQFP)
161 - C329 custom (100 pin PQFP)
162 - 137 custom PLD (28 pin NDIP)
163 - C366 Key Custom
164
165 Sound processor - C75 custom
166 (PCM) - C352 custom (100 pin PQFP)
167 (control inputs) - 160 custom (80 pin PQFP)
168
169 GFX - 123 custom (80 pin PQFP)
170 - 145 custom (80 pin PQFP)
171 - 156 custom (64 pin PQFP)
172 - C116 custom (80 pin PQFP)
173
174 Motion Objects - C355 custom (160 pin PQFP)
175 - 187 custom (160 pin PQFP)
176 - C347 custom (80 pin PQFP)
177
178 PCB Jumper Settings
179 -------------------
180
181 Location Setting Alt. Setting
182 ----------------------------------------
183 JP1 1M 4M
184 JP2 4M 1M
185 JP5 <1M 1M
186 JP6 8M >8M
187 JP7 4M 1M
188 JP8 4M 1M
189 JP9 cON cOFF
190 JP10 24M (MHz) 12M (MHz)
191 JP11 24M (MHz) 28M (MHz)
192 JP12 355 F32
193
194
195 Namco System NB2
196
197 Games running on this hardware:
198 - The Outfoxies
199 - Mach Breakers
200
201 Changes from Namco System NB1 include:
202 - different memory map
203 - more complex sprite and tile banking
204 - 2 additional ROZ layers
205
206 -----------------------------
207 The Outfoxies by NAMCO (1994)
208 -----------------------------
209 Location Device File ID Checksum
210 ----------------------------------------------------
211 CPU 11C PRGL 27C4002 OU2-MPRL 166F
212 CPU 11D PRGU 27C4002 OU2-MPRU F4C1
213 CPU 5B SPR0 27C240 OU1-SPR0 7361
214 CPU 20A DAT0 27C4002 OU1-DAT0 FCD1
215 CPU 20B DAT1 27C4002 OU1-DAT1 0973
216 CPU 18S SHAPE-R MB83800 OU1-SHAR C922
217 CPU 12S SHAPE-S MB83400 OU1-SHAS 2820
218 CPU 6N VOICE0 MB831600 OU1-VOI0 4132
219 ROM 4C OBJ0L 16Meg SMD OU1-OBJ0L 171B
220 ROM 8C OBJ0U 16Meg SMD OU1-OBJ0U F961
221 ROM 4B OBJ1L 16Meg SMD OU1-OBJ1L 1579
222 ROM 8B OBJ1U 16Meg SMD OU1-OBJ1U E8DF
223 ROM 4A OBJ2L 16Meg SMD OU1-OBJ2L AE7B
224 ROM 8A OBJ2U 16Meg SMD OU1-OBJ2U 6588
225 ROM 6C OBJ3L 16Meg SMD OU1-OBJ3L 9ED3
226 ROM 9C OBJ3U 16Meg SMD OU1-OBJ3U ED3B
227 ROM 6B OBJ4L 16Meg SMD OU1-OBJ4L 59D4
228 ROM 9B OBJ4U 16Meg SMD OU1-OBJ4U 56CA
229 ROM 3D ROT0 16Meg SMD OU1-ROT0 A615
230 ROM 3C ROT1 16Meg SMD OU1-ROT1 6C0A
231 ROM 3B ROT2 16Meg SMD OU1-ROT2 313E
232 ROM 1D SCR0 16Meg SMD OU1-SCR0 751A
233
234 CPU 8B DEC75 PAL16L8A NB1-2
235 CPU 16N MIXER PAL16V8H NB2-1
236 CPU 11E SIZE PAL16L8A NB2-2
237 CPU 22C KEYCUS KeyCustom C390
238
239 CPU - Namco NB-2 Main PCB 8639960102 (8639970102)
240 ROM - Namco NB-2 Mask ROM PCB 8639969800 (8639979800)
241
242 - Audio out is Stereo
243
244 Jumper Settings:
245
246 Setting Alternate
247 JP1 4M 1M
248 JP2 GND A20
249 JP3 GND A20
250 JP6 4M 1M
251 JP8 GND A20
252 JP9 CON COFF
253 JP10 GND A20
254
255 Hardware info:
256
257 Main CPU: MC68EC020FG25
258 Custom C383 (100 pin PQFP)
259 Custom C385 (144 pin PQFP)
260
261 Slave CPU: ?Custom C382 (160 pin PQFP)
262 Custom 160 ( 80 pin PQFP)
263 Custom C352 (100 pin PQFP)
264
265 GFX: Custom 145 ( 80 pin PQFP)
266 Custom 156 ( 64 pin PQFP)
267 Custom 123 ( 64 pin PQFP)
268 3x Custom 384 ( 48 pin PQFP)
269 Custom C355 (160 pin PQFP)
270 Custom 187 (120 pin PQFP)
271 Custom 169 (120 pin PQFP)
272 */
273 #include "emu.h"
274 #include "includes/namconb1.h"
275
276 #include "cpu/m68000/m68000.h"
277 #include "sound/c352.h"
278
279 #include "speaker.h"
280
281
282 #define MASTER_CLOCK XTAL(48'384'000)
283
284 #define ENABLE_LOGGING (0)
285
286
machine_start()287 void namconb1_state::machine_start()
288 {
289 save_item(NAME(m_vbl_irq_level));
290 save_item(NAME(m_pos_irq_level));
291 save_item(NAME(m_unk_irq_level));
292 save_item(NAME(m_count));
293 save_item(NAME(m_port6));
294 }
295
296 /****************************************************************************/
297
TIMER_DEVICE_CALLBACK_MEMBER(namconb1_state::scantimer)298 TIMER_DEVICE_CALLBACK_MEMBER(namconb1_state::scantimer)
299 {
300 int scanline = param;
301
302 // Handle VBLANK
303 if (scanline == 224)
304 {
305 if (m_vbl_irq_level != 0)
306 m_maincpu->set_input_line(m_vbl_irq_level, ASSERT_LINE);
307 }
308
309 // Handle POSIRQ
310 u32 posirq_scanline = m_c116->get_reg(5) - 32;
311
312 if (scanline == posirq_scanline)
313 {
314 m_screen->update_partial(posirq_scanline);
315
316 if (m_pos_irq_level != 0)
317 m_maincpu->set_input_line(m_pos_irq_level, ASSERT_LINE);
318 }
319 /*
320 // TODO: Real sources of these
321 if (scanline == 224)
322 m_mcu->set_input_line(M37710_LINE_IRQ0, HOLD_LINE);
323 else if (scanline == 0)
324 m_mcu->set_input_line(M37710_LINE_IRQ2, HOLD_LINE);
325 else if (scanline == 128)
326 m_mcu->set_input_line(M37710_LINE_ADC, HOLD_LINE);
327 */
328 }
329
TIMER_DEVICE_CALLBACK_MEMBER(namconb1_state::mcu_irq0_cb)330 TIMER_DEVICE_CALLBACK_MEMBER(namconb1_state::mcu_irq0_cb)
331 {
332 m_mcu->set_input_line(M37710_LINE_IRQ0, HOLD_LINE);
333 }
334
TIMER_DEVICE_CALLBACK_MEMBER(namconb1_state::mcu_irq2_cb)335 TIMER_DEVICE_CALLBACK_MEMBER(namconb1_state::mcu_irq2_cb)
336 {
337 m_mcu->set_input_line(M37710_LINE_IRQ2, HOLD_LINE);
338 }
339
340 /****************************************************************************/
341
namconb1_cpureg_w(offs_t offset,u8 data)342 void namconb1_state::namconb1_cpureg_w(offs_t offset, u8 data)
343 {
344 /**
345 * 400000 0x00
346 * 400001 POS IRQ enable/level
347 * 400002 ??? IRQ enable/level
348 * 400003 0x00
349 * 400004 VBL IRQ enable/level
350 * 400005 0x00
351 * 400006 POS IRQ ack
352 * 400007 ??? IRQ ack
353 * 400008 0x00
354 * 400009 VBL IRQ ack
355 * 40000a ??? (0x00)
356 * 40000b ??? (0x03)
357 * 40000c ??? (0x07)
358 * 40000d ??? (0x01)
359 * 40000e ??? (0x10)
360 * 40000f ??? (0x03)
361 * 400010 ??? (0x00)
362 * 400011 ??? (0x07)
363 * 400012 ??? (0x10)
364 * 400013 ??? (0x10)
365 * 400014 ??? (0x00)
366 * 400015 ??? (0x01)
367 * 400016 Watchdog
368 * 400017 ??? (0x00)
369 * 400018 C75 Control
370 * 400019 ??? (0x00)
371 * 40001a ??? (0x00)
372 * 40001b ??? (0x00)
373 * 40001c ??? (0x00)
374 * 40001d ??? (0x00)
375 * 40001e ??? (0x00)
376 * 40001f ??? (0x00)
377 */
378 switch (offset)
379 {
380 case 0x01:
381 // Bits 5-4 unknown
382 m_maincpu->set_input_line(m_pos_irq_level, CLEAR_LINE);
383 m_pos_irq_level = data & 0x0f;
384 break;
385
386 case 0x02:
387 m_maincpu->set_input_line(m_unk_irq_level, CLEAR_LINE);
388 m_unk_irq_level = data & 0x0f;
389 break;
390
391 case 0x04:
392 m_maincpu->set_input_line(m_vbl_irq_level, CLEAR_LINE);
393 m_vbl_irq_level = data & 0x0f;
394 break;
395
396 case 0x06:
397 m_maincpu->set_input_line(m_pos_irq_level, CLEAR_LINE);
398 break;
399
400 case 0x07:
401 m_maincpu->set_input_line(m_unk_irq_level, CLEAR_LINE);
402 break;
403
404 case 0x09:
405 m_maincpu->set_input_line(m_vbl_irq_level, CLEAR_LINE);
406 break;
407
408 case 0x16:
409 break;
410
411 case 0x18:
412 if (data & 1)
413 {
414 m_mcu->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
415 m_mcu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
416 m_mcu->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
417 }
418 else
419 m_mcu->set_input_line(INPUT_LINE_HALT, ASSERT_LINE);
420 break;
421
422 default:
423 if (ENABLE_LOGGING)
424 logerror("Unhandled CPU reg write to [0x%.2x] with 0x%.2x (PC=0x%x)\n", offset, data, m_maincpu->pc());
425 }
426 }
427
428
namconb2_cpureg_w(offs_t offset,u8 data)429 void namconb1_state::namconb2_cpureg_w(offs_t offset, u8 data)
430 {
431 /**
432 * f00000 VBL IRQ enable/level
433 * f00001 ??? IRQ enable/level
434 * f00002 POS IRQ enable/level
435 * f00003 ??? (0x00)
436 * f00004 VBL IRQ ack
437 * f00005 ??? IRQ ack
438 * f00006 POS IRQ ack
439 * f00007
440 * f00008
441 * f00009 ??? (0x62)
442 * f0000a ??? (0x0f)
443 * f0000b ??? (0x41)
444 * f0000c ??? (0x70)
445 * f0000d ??? (0x70)
446 * f0000e ??? (0x23)
447 * f0000f ??? (0x50)
448 * f00010 ??? (0x00)
449 * f00011 ??? (0x64)
450 * f00012 ??? (0x18)
451 * f00013 ??? (0xe7)
452 * f00014 Watchdog
453 * f00015
454 * f00016 C75 Control
455 * f00017
456 * f00018
457 * f00019
458 * f0001a
459 * f0001b
460 * f0001c
461 * f0001d
462 * f0001e ??? (0x00)
463 * f0001f ??? (0x01)
464 */
465 switch (offset)
466 {
467 case 0x00:
468 m_maincpu->set_input_line(m_vbl_irq_level, CLEAR_LINE);
469 m_vbl_irq_level = data & 0x0f;
470 break;
471
472 case 0x01:
473 m_maincpu->set_input_line(m_unk_irq_level, CLEAR_LINE);
474 m_unk_irq_level = data & 0x0f;
475 break;
476
477 case 0x02:
478 m_maincpu->set_input_line(m_pos_irq_level, CLEAR_LINE);
479 m_pos_irq_level = data & 0x0f;
480 break;
481
482 case 0x04:
483 m_maincpu->set_input_line(m_vbl_irq_level, CLEAR_LINE);
484 break;
485
486 case 0x05:
487 m_maincpu->set_input_line(m_unk_irq_level, CLEAR_LINE);
488 break;
489
490 case 0x06:
491 m_maincpu->set_input_line(m_pos_irq_level, CLEAR_LINE);
492 break;
493
494 case 0x14:
495 break;
496
497 case 0x16:
498 if (data & 1)
499 {
500 m_mcu->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
501 m_mcu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
502 m_mcu->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
503 }
504 else
505 {
506 m_mcu->set_input_line(INPUT_LINE_HALT, ASSERT_LINE);
507 }
508 break;
509
510 default:
511 if (ENABLE_LOGGING)
512 logerror("Unhandled CPU reg write to [0x%.2x] with 0x%.2x (PC=0x%x)\n", offset, data, m_maincpu->pc());
513 }
514 }
515
516
namconb1_cpureg_r(offs_t offset)517 u8 namconb1_state::namconb1_cpureg_r(offs_t offset)
518 {
519 // 16: Watchdog
520 if (ENABLE_LOGGING)
521 {
522 if (offset != 0x16)
523 logerror("Unhandled CPU reg read from [0x%.2x] (PC=0x%x)\n", offset, m_maincpu->pc());
524 }
525
526 return 0xff;
527 }
528
529
namconb2_cpureg_r(offs_t offset)530 u8 namconb1_state::namconb2_cpureg_r(offs_t offset)
531 {
532 // 14: Watchdog
533 if (ENABLE_LOGGING)
534 {
535 if (offset != 0x14)
536 logerror("Unhandled CPU reg read from [0x%.2x] (PC=0x%x)\n", offset, m_maincpu->pc());
537 }
538
539 return 0xff;
540 }
541
542
543 /****************************************************************************/
544
custom_key_r(offs_t offset)545 u32 namconb1_state::custom_key_r(offs_t offset)
546 {
547 u16 old_count = m_count;
548
549 do
550 { /* pick a random number, but don't pick the same twice in a row */
551 m_count = machine().rand();
552 } while (m_count == old_count);
553
554 switch (m_gametype)
555 {
556 /*
557 Gunbullet/Point Blank keycus notes (thanks Guru):
558
559 These games use the keycus in an unconventional way. Instead of reading it for a PRNG or a
560 magic value, it writes a scratch value to the keycus once per frame.
561
562 On hardware, if there is no keycus or the wrong keycus is present, this write will stall the
563 68000 (probably nothing completes the bus cycle in that case) and the game will hang instead
564 of booting.
565
566 Patching these writes out causes the game to run fine with no keycus present.
567 */
568 case NAMCONB1_GUNBULET:
569 return 0;
570
571 case NAMCONB1_SWS95:
572 switch (offset)
573 {
574 case 0: return 0x0189;
575 case 1: return m_count << 16;
576 }
577 break;
578
579 case NAMCONB1_SWS96:
580 switch (offset)
581 {
582 case 0: return 0x01aa << 16;
583 case 4: return m_count << 16;
584 }
585 break;
586
587 case NAMCONB1_SWS97:
588 switch (offset)
589 {
590 case 2: return 0x1b2 << 16;
591 case 5: return m_count << 16;
592 }
593 break;
594
595 case NAMCONB1_GSLGR94U:
596 switch (offset)
597 {
598 case 0: return 0x0167;
599 case 1: return m_count << 16;
600 }
601 break;
602
603 case NAMCONB1_GSLGR94J:
604 switch (offset)
605 {
606 case 1: return 0;
607 case 3: return (0x0171 << 16) | m_count;
608 }
609 break;
610
611 case NAMCONB1_NEBULRAY:
612 switch (offset)
613 {
614 case 1: return 0x016e;
615 case 3: return m_count;
616 }
617 break;
618
619 case NAMCONB1_VSHOOT:
620 switch (offset)
621 {
622 case 2: return m_count << 16;
623 case 3: return 0x0170 << 16;
624 }
625 break;
626
627 case NAMCONB2_OUTFOXIES:
628 switch (offset)
629 {
630 case 0: return 0x0186;
631 case 1: return m_count << 16;
632 }
633 break;
634
635 case NAMCONB2_MACH_BREAKERS:
636 break; /* no protection? */
637 }
638 if (ENABLE_LOGGING)
639 logerror( "custom_key_r(%d); pc=%08x\n", offset, m_maincpu->pc() );
640 return 0;
641 } /* custom_key_r */
642
643 /***************************************************************/
644
645
gunbulet_gun_r(offs_t offset)646 u32 namconb1_state::gunbulet_gun_r(offs_t offset)
647 {
648 int result = 0;
649
650 switch (offset)
651 {
652 case 0: case 1: result = (u8)(0x0f + m_light1_y->read() * 224/255); break; /* Y (p2) */
653 case 2: case 3: result = (u8)(0x26 + m_light1_x->read() * 288/314); break; /* X (p2) */
654 case 4: case 5: result = (u8)(0x0f + m_light0_y->read() * 224/255); break; /* Y (p1) */
655 case 6: case 7: result = (u8)(0x26 + m_light0_x->read() * 288/314); break; /* X (p1) */
656 }
657 return result<<24;
658 } /* gunbulet_gun_r */
659
randgen_r()660 u32 namconb1_state::randgen_r()
661 {
662 return machine().rand();
663 } /* randgen_r */
664
srand_w(u32 data)665 void namconb1_state::srand_w(u32 data)
666 {
667 /**
668 * Used to seed the hardware random number generator.
669 * We don't yet know the algorithm that is used, so for now this is a NOP.
670 */
671 } /* srand_w */
672
share_r(offs_t offset)673 u32 namconb1_state::share_r(offs_t offset)
674 {
675 return (m_namconb_shareram[offset * 2] << 16) | m_namconb_shareram[offset * 2 + 1];
676 }
677
share_w(offs_t offset,u32 data,u32 mem_mask)678 void namconb1_state::share_w(offs_t offset, u32 data, u32 mem_mask)
679 {
680 COMBINE_DATA(m_namconb_shareram + offset * 2 + 1);
681 data >>= 16;
682 mem_mask >>= 16;
683 COMBINE_DATA(m_namconb_shareram + offset *2);
684 }
685
namconb1_am(address_map & map)686 void namconb1_state::namconb1_am(address_map &map)
687 {
688 map(0x000000, 0x0fffff).rom();
689 map(0x100000, 0x10001f).r(FUNC(namconb1_state::gunbulet_gun_r));
690 map(0x1c0000, 0x1cffff).ram();
691 map(0x1e4000, 0x1e4003).rw(FUNC(namconb1_state::randgen_r), FUNC(namconb1_state::srand_w));
692 map(0x200000, 0x207fff).rw(FUNC(namconb1_state::share_r), FUNC(namconb1_state::share_w));
693 map(0x208000, 0x2fffff).ram();
694 map(0x400000, 0x40001f).rw(FUNC(namconb1_state::namconb1_cpureg_r), FUNC(namconb1_state::namconb1_cpureg_w));
695 map(0x580000, 0x5807ff).rw(m_eeprom, FUNC(eeprom_parallel_28xx_device::read), FUNC(eeprom_parallel_28xx_device::write));
696 map(0x600000, 0x61ffff).rw(m_c355spr, FUNC(namco_c355spr_device::spriteram_r), FUNC(namco_c355spr_device::spriteram_w)).share("objram");
697 map(0x620000, 0x620007).rw(m_c355spr, FUNC(namco_c355spr_device::position_r), FUNC(namco_c355spr_device::position_w));
698 map(0x640000, 0x64ffff).rw(m_c123tmap, FUNC(namco_c123tmap_device::videoram16_r), FUNC(namco_c123tmap_device::videoram16_w));
699 map(0x660000, 0x66003f).rw(m_c123tmap, FUNC(namco_c123tmap_device::control16_r), FUNC(namco_c123tmap_device::control16_w));
700 map(0x680000, 0x68000f).ram().share("spritebank32");
701 map(0x6e0000, 0x6e001f).r(FUNC(namconb1_state::custom_key_r)).nopw();
702 map(0x700000, 0x707fff).rw(m_c116, FUNC(namco_c116_device::read), FUNC(namco_c116_device::write));
703 }
704
namconb2_am(address_map & map)705 void namconb1_state::namconb2_am(address_map &map)
706 {
707 map(0x000000, 0x0fffff).rom();
708 map(0x1c0000, 0x1cffff).ram();
709 map(0x1e4000, 0x1e4003).rw(FUNC(namconb1_state::randgen_r), FUNC(namconb1_state::srand_w));
710 map(0x200000, 0x207fff).rw(FUNC(namconb1_state::share_r), FUNC(namconb1_state::share_w));
711 map(0x208000, 0x2fffff).ram();
712 map(0x400000, 0x4fffff).rom().region("data", 0);
713 map(0x600000, 0x61ffff).rw(m_c355spr, FUNC(namco_c355spr_device::spriteram_r), FUNC(namco_c355spr_device::spriteram_w)).share("objram");
714 map(0x620000, 0x620007).rw(m_c355spr, FUNC(namco_c355spr_device::position_r), FUNC(namco_c355spr_device::position_w));
715 map(0x640000, 0x64000f).ram(); /* unknown xy offset */
716 map(0x680000, 0x68ffff).rw(m_c123tmap, FUNC(namco_c123tmap_device::videoram16_r), FUNC(namco_c123tmap_device::videoram16_w));
717 map(0x6c0000, 0x6c003f).rw(m_c123tmap, FUNC(namco_c123tmap_device::control16_r), FUNC(namco_c123tmap_device::control16_w));
718 map(0x700000, 0x71ffff).rw(m_c169roz, FUNC(namco_c169roz_device::videoram_r), FUNC(namco_c169roz_device::videoram_w));
719 map(0x740000, 0x74001f).rw(m_c169roz, FUNC(namco_c169roz_device::control_r), FUNC(namco_c169roz_device::control_w));
720 map(0x800000, 0x807fff).rw(m_c116, FUNC(namco_c116_device::read), FUNC(namco_c116_device::write));
721 map(0x900008, 0x90000f).ram().share("spritebank32");
722 map(0x940000, 0x94000f).ram().share("tilebank32");
723 map(0x980000, 0x98000f).ram().w(FUNC(namconb1_state::rozbank32_w)).share("rozbank32");
724 map(0xa00000, 0xa007ff).rw(m_eeprom, FUNC(eeprom_parallel_28xx_device::read), FUNC(eeprom_parallel_28xx_device::write));
725 map(0xc00000, 0xc0001f).r(FUNC(namconb1_state::custom_key_r)).nopw();
726 map(0xf00000, 0xf0001f).rw(FUNC(namconb1_state::namconb2_cpureg_r), FUNC(namconb1_state::namconb2_cpureg_w));
727 }
728
mcu_shared_w(offs_t offset,u16 data,u16 mem_mask)729 void namconb1_state::mcu_shared_w(offs_t offset, u16 data, u16 mem_mask)
730 {
731 // HACK! Many games data ROM routines redirect the vector from the sound command read to an RTS.
732 // This needs more investigation. nebulray and vshoot do NOT do this.
733 // Timers A2 and A3 are set up in "external input counter" mode, this may be related.
734 #if 0
735 if ((offset == 0x647c/2) && (data != 0))
736 {
737 data = 0xd2f6;
738 }
739 #endif
740
741 COMBINE_DATA(&m_namconb_shareram[offset]);
742
743 // C74 BIOS has a very short window on the CPU sync signal, so immediately let the '020 at it
744 if ((offset == 0x6000/2) && (data & 0x80))
745 {
746 m_mcu->spin_until_time(m_mcu->cycles_to_attotime(300)); // was 300
747 }
748 }
749
namcoc75_am(address_map & map)750 void namconb1_state::namcoc75_am(address_map &map)
751 {
752 map(0x002000, 0x002fff).rw("c352", FUNC(c352_device::read), FUNC(c352_device::write));
753 map(0x004000, 0x00bfff).ram().w(FUNC(namconb1_state::mcu_shared_w)).share("namconb_share");
754 map(0x200000, 0x27ffff).rom().region("c75data", 0);
755 }
756
757
port6_r()758 uint8_t namconb1_state::port6_r()
759 {
760 return m_port6;
761 }
762
port6_w(uint8_t data)763 void namconb1_state::port6_w(uint8_t data)
764 {
765 m_port6 = data;
766 }
767
port7_r()768 uint8_t namconb1_state::port7_r()
769 {
770 switch (m_port6 & 0xf0)
771 {
772 case 0x00:
773 return m_p4.read_safe(0xff);
774
775 case 0x20:
776 return m_misc->read();
777
778 case 0x40:
779 return m_p1->read();
780
781 case 0x60:
782 return m_p2->read();
783
784 default:
785 break;
786 }
787
788 return 0xff;
789 }
790
791 // Is this madness? No, this is Namco. They didn't have enough digital ports for all 4 players,
792 // so the 8 bits of player 3 got routed to the 8 analog inputs. +5V on the analog input will
793 // register full scale, so it works...
794 template <int Bit>
dac_bit_r()795 u16 namconb1_state::dac_bit_r()
796 {
797 return (m_p3.read_safe(0xff) << (7 - Bit)) & 0x80;
798 }
799
800
801 /****************************************************************************/
802
803 static INPUT_PORTS_START( gunbulet )
804 PORT_START("MISC")
805 PORT_DIPUNUSED_DIPLOC(0x01, 0x01, "SW1: 2")
806 PORT_SERVICE_DIPLOC(0x02, 0x02, "SW1: 1")
807
808 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
809 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
810 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
811 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
812 PORT_DIPNAME( 0x40, 0x40, "Test switch" )
DEF_STR(Off)813 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
814 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
815 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
816
817 PORT_START("P1")
818 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
819 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
820
821 PORT_START("P2")
822 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
823 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
824
825 PORT_START("LIGHT0_X")
826 PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, 1.0, 0.0, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4)
827 PORT_START("LIGHT0_Y")
828 PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4)
829 PORT_START("LIGHT1_X")
830 PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, 1.0, 0.0, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4) PORT_PLAYER(2)
831 PORT_START("LIGHT1_Y")
832 PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4) PORT_PLAYER(2)
833 INPUT_PORTS_END
834
835 static INPUT_PORTS_START( namconb1 )
836 PORT_START("P1")
837 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
838 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
839 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
840 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
841 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
842 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
843 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 )
844 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
845
846 PORT_START("P2")
847 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
848 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
849 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
850 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
851 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
852 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
853 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
854 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
855
856 PORT_START("P3")
857 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
858 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
859 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3)
860 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
861 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
862 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
863 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
864 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
865
866 PORT_START("P4")
867 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
868 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
869 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(4)
870 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4)
871 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4)
872 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4)
873 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
874 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
875
876 PORT_START("MISC")
877 PORT_DIPNAME( 0x01, 0x01, "Freeze Screen" ) PORT_DIPLOCATION("SW1: 2")
878 PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
879 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
880 PORT_SERVICE_DIPLOC(0x02, 0x02, "SW1: 1")
881 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 )
882 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN3 )
883 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
884 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
885 PORT_DIPNAME( 0x40, 0x40, "Test switch" )
886 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
887 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
888 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
889 INPUT_PORTS_END
890
891
892 /****************************************************************************/
893
894 void namconb1_state::init_nebulray()
895 {
896 m_gametype = NAMCONB1_NEBULRAY;
897 } /* nebulray */
898
init_gslgr94u()899 void namconb1_state::init_gslgr94u()
900 {
901 m_gametype = NAMCONB1_GSLGR94U;
902 } /* gslgr94u */
903
init_gslgr94j()904 void namconb1_state::init_gslgr94j()
905 {
906 m_gametype = NAMCONB1_GSLGR94J;
907 } /* gslgr94j */
908
init_sws95()909 void namconb1_state::init_sws95()
910 {
911 m_gametype = NAMCONB1_SWS95;
912 } /* sws95 */
913
init_sws96()914 void namconb1_state::init_sws96()
915 {
916 m_gametype = NAMCONB1_SWS96;
917 } /* sws96 */
918
init_sws97()919 void namconb1_state::init_sws97()
920 {
921 m_gametype = NAMCONB1_SWS97;
922 } /* sws97 */
923
init_gunbulet()924 void namconb1_state::init_gunbulet()
925 {
926 m_gametype = NAMCONB1_GUNBULET;
927 } /* gunbulet */
928
init_vshoot()929 void namconb1_state::init_vshoot()
930 {
931 m_gametype = NAMCONB1_VSHOOT;
932 } /* vshoot */
933
init_machbrkr()934 void namconb1_state::init_machbrkr()
935 {
936 m_gametype = NAMCONB2_MACH_BREAKERS;
937 }
938
init_outfxies()939 void namconb1_state::init_outfxies()
940 {
941 m_gametype = NAMCONB2_OUTFOXIES;
942 }
943
944 /***************************************************************/
945
machine_reset()946 void namconb1_state::machine_reset()
947 {
948 m_pos_irq_level = 0;
949 m_unk_irq_level = 0;
950 m_vbl_irq_level = 0;
951 }
952
953
954 /***************************************************************/
955
namconb1(machine_config & config)956 void namconb1_state::namconb1(machine_config &config)
957 {
958 M68EC020(config, m_maincpu, MASTER_CLOCK / 2);
959 m_maincpu->set_addrmap(AS_PROGRAM, &namconb1_state::namconb1_am);
960
961 NAMCO_C75(config, m_mcu, MASTER_CLOCK / 3);
962 m_mcu->set_addrmap(AS_PROGRAM, &namconb1_state::namcoc75_am);
963 m_mcu->p6_in_cb().set(FUNC(namconb1_state::port6_r));
964 m_mcu->p6_out_cb().set(FUNC(namconb1_state::port6_w));
965 m_mcu->p7_in_cb().set(FUNC(namconb1_state::port7_r));
966 m_mcu->an7_cb().set(FUNC(namconb1_state::dac_bit_r<7>));
967 m_mcu->an6_cb().set(FUNC(namconb1_state::dac_bit_r<3>));
968 m_mcu->an5_cb().set(FUNC(namconb1_state::dac_bit_r<2>));
969 m_mcu->an4_cb().set(FUNC(namconb1_state::dac_bit_r<1>));
970 m_mcu->an3_cb().set(FUNC(namconb1_state::dac_bit_r<0>));
971 m_mcu->an2_cb().set(FUNC(namconb1_state::dac_bit_r<4>));
972 m_mcu->an1_cb().set(FUNC(namconb1_state::dac_bit_r<5>));
973 m_mcu->an0_cb().set(FUNC(namconb1_state::dac_bit_r<6>));
974
975 EEPROM_2816(config, "eeprom");
976
977 TIMER(config, "scantimer").configure_scanline(FUNC(namconb1_state::scantimer), "screen", 0, 1);
978
979 // has to be 60 hz or music will go crazy in nebulray, vshoot, gslugrs*
980 TIMER(config, "mcu_irq0").configure_periodic(FUNC(namconb1_state::mcu_irq0_cb), attotime::from_hz(60));
981 TIMER(config, "mcu_irq2").configure_periodic(FUNC(namconb1_state::mcu_irq2_cb), attotime::from_hz(60));
982
983 SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
984 m_screen->set_raw(MASTER_CLOCK / 8, 384, 0, 288, 264, 0, 224);
985 m_screen->set_screen_update(FUNC(namconb1_state::screen_update_namconb1));
986 m_screen->screen_vblank().set(FUNC(namconb1_state::screen_vblank));
987 m_screen->set_palette(m_c116);
988
989 NAMCO_C355SPR(config, m_c355spr, 0);
990 m_c355spr->set_screen(m_screen);
991 m_c355spr->set_palette(m_c116);
992 m_c355spr->set_scroll_offsets(0x26, 0x19);
993 m_c355spr->set_tile_callback(namco_c355spr_device::c355_obj_code2tile_delegate(&namconb1_state::NB1objcode2tile, this));
994 m_c355spr->set_palxor(0x0);
995 m_c355spr->set_buffer(2); // triple buffered
996 m_c355spr->set_color_base(0);
997
998 NAMCO_C123TMAP(config, m_c123tmap, 0);
999 m_c123tmap->set_palette(m_c116);
1000 m_c123tmap->set_tile_callback(namco_c123tmap_device::c123_tilemap_delegate(&namconb1_state::NB1TilemapCB, this));
1001 m_c123tmap->set_color_base(0x1000);
1002
1003 NAMCO_C116(config, m_c116, 0);
1004 m_c116->enable_shadows();
1005
1006 SPEAKER(config, "lspeaker").front_left();
1007 SPEAKER(config, "rspeaker").front_right();
1008
1009 c352_device &c352(C352(config, "c352", MASTER_CLOCK/2, 288));
1010 c352.add_route(0, "lspeaker", 1.00);
1011 c352.add_route(1, "rspeaker", 1.00);
1012 //c352.add_route(2, "lspeaker", 1.00); // Second DAC not present.
1013 //c352.add_route(3, "rspeaker", 1.00);
1014 }
1015
namconb2(machine_config & config)1016 void namconb1_state::namconb2(machine_config &config)
1017 {
1018 namconb1(config);
1019
1020 m_maincpu->set_addrmap(AS_PROGRAM, &namconb1_state::namconb2_am);
1021
1022 m_screen->set_screen_update(FUNC(namconb1_state::screen_update_namconb2));
1023
1024 NAMCO_C169ROZ(config, m_c169roz, 0);
1025 m_c169roz->set_palette(m_c116);
1026 m_c169roz->set_is_namcofl(false);
1027 m_c169roz->set_ram_words(0x20000 / 2);
1028 m_c169roz->set_color_base(0x1800);
1029 }
1030
machbrkr(machine_config & config)1031 void namconb1_state::machbrkr(machine_config &config)
1032 {
1033 namconb2(config);
1034
1035 m_c123tmap->set_tile_callback(namco_c123tmap_device::c123_tilemap_delegate(&namconb1_state::NB2TilemapCB_machbrkr, this));
1036
1037 m_c169roz->set_tile_callback(namco_c169roz_device::c169_tilemap_delegate(&namconb1_state::NB2RozCB_machbrkr, this));
1038
1039 m_c355spr->set_tile_callback(namco_c355spr_device::c355_obj_code2tile_delegate(&namconb1_state::NB2objcode2tile_machbrkr, this));
1040 }
1041
outfxies(machine_config & config)1042 void namconb1_state::outfxies(machine_config &config)
1043 {
1044 namconb2(config);
1045
1046 m_c123tmap->set_tile_callback(namco_c123tmap_device::c123_tilemap_delegate(&namconb1_state::NB2TilemapCB_outfxies, this));
1047
1048 m_c169roz->set_tile_callback(namco_c169roz_device::c169_tilemap_delegate(&namconb1_state::NB2RozCB_outfxies, this));
1049
1050 m_c355spr->set_tile_callback(namco_c355spr_device::c355_obj_code2tile_delegate(&namconb1_state::NB2objcode2tile_outfxies, this));
1051 }
1052
1053
1054 /***************************************************************/
1055
1056 ROM_START( ptblank ) /* World set using 4Mb sound data ROM (verified) */
1057 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1058 ROM_LOAD32_WORD( "gn2_mprlb.15b", 0x00002, 0x80000, CRC(fe2d9425) SHA1(51b166a629cbb522720d63720558816b496b6b76) )
1059 ROM_LOAD32_WORD( "gn2_mprub.13b", 0x00000, 0x80000, CRC(3bf4985a) SHA1(f559e0d5f55d23d886fe61bd7d5ca556acc7f87c) )
1060
1061 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data - JP1 jumper selectable between 1Mb (27C1024) or 4Mb (27C4096) either ROM is correct */
1062 // ROM_LOAD( "gn1_spr0.5b", 0, 0x20000, CRC(6836ba38) SHA1(6ea17ea4bbb59be108e8887acd7871409580732f) ) /* 1Megabit, same data as the 4Mb ROM at 0x00000-0x1ffff */
1063 ROM_LOAD( "gn1-spr0.5b", 0, 0x80000, CRC(71773811) SHA1(e482784d9b9ebf8c2e4a2a3f6f6c4dc8304d2251) ) /* 4Megabit, same data at 0x00000-0x1ffff, 0x20000-0x7ffff is 0xff filled */
1064
1065 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1066 ROM_LOAD( "gn1-voi0.5j", 0, 0x200000, CRC(05477eb7) SHA1(f2eaacb5dbac06c37c56b9b131230c9cf6602221) )
1067
1068 ROM_REGION( 0x800000, "c355spr", 0 )
1069 ROM_LOAD32_WORD( "gn1obj0l.ic1", 0x000000, 0x200000, CRC(06722dc8) SHA1(56fee4e17ed707fa6dbc6bad0d0281fc8cdf72d1) ) /* These four located on MEMEXT OBJ8 PCB daughter-card */
1070 ROM_LOAD32_WORD( "gn1obj0u.ic2", 0x000002, 0x200000, CRC(fcefc909) SHA1(48c19b6032096dd80777aa6d5eb5f90463095cbe) )
1071 ROM_LOAD32_WORD( "gn1obj1l.ic3", 0x400000, 0x200000, CRC(48468df7) SHA1(c5fb9082c84ac2ffceb6f5f4cbc1d40047c55e3d) )
1072 ROM_LOAD32_WORD( "gn1obj1u.ic4", 0x400002, 0x200000, CRC(3109a071) SHA1(4bb16df5a3aecdf37baf843edfc82952d46f5227) )
1073
1074 ROM_REGION( 0x400000, "c123tmap", 0 )
1075 ROM_LOAD( "gn1-chr0.8j", 0x000000, 0x100000, CRC(a5c61246) SHA1(d1d9f286b93b5b9880160029c53384d13c08dd8a) )
1076 ROM_LOAD( "gn1-chr1.9j", 0x100000, 0x100000, CRC(c8c59772) SHA1(91de633a300e3b25a919579eaada5549640ab6f0) )
1077 ROM_LOAD( "gn1-chr2.10j", 0x200000, 0x100000, CRC(dc96d999) SHA1(d006a401762b57fef6716f56eb3a7edcb3d3c00e) )
1078 ROM_LOAD( "gn1-chr3.11j", 0x300000, 0x100000, CRC(4352c308) SHA1(785c13df219dceac2f940519141665b630a29f86) )
1079
1080 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1081 ROM_LOAD( "gn1-sha0.5m", 0, 0x80000, CRC(86d4ff85) SHA1(a71056b2bcbba50c834fe28269ebda9719df354a) )
1082
1083 ROM_REGION( 0x0800, "eeprom", 0 ) // default gun calibration and settings
1084 ROM_LOAD( "eeprom", 0x0000, 0x0800, CRC(95760d0f) SHA1(94ac5a261d9afc77c2a163a50950b0e86b1f8041) )
1085 ROM_END
1086
1087 ROM_START( ptblanka ) /* World set using non standard ROM labels (NR is Namco's prefix for Nebulas Ray, but NOT here!!), verified on 2 seperate PCBs */
1088 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1089 ROM_LOAD32_WORD( "nr3_spr0.15b", 0x00002, 0x80000, CRC(fe2d9425) SHA1(51b166a629cbb522720d63720558816b496b6b76) ) // == gn2_mprlb.15b
1090 ROM_LOAD32_WORD( "nr2_spr0.13b", 0x00000, 0x80000, CRC(3bf4985a) SHA1(f559e0d5f55d23d886fe61bd7d5ca556acc7f87c) ) // == gn2_mprub.12b
1091
1092 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data - JP1 jumper selectable between 1Mb (27C1024) or 4Mb (27C4096) either ROM is correct */
1093 // ROM_LOAD( "nr1_spr0.5b", 0, 0x20000, CRC(6836ba38) SHA1(6ea17ea4bbb59be108e8887acd7871409580732f) ) /* 1Megabit, same data as the 4Mb ROM at 0x00000-0x1ffff */
1094 ROM_LOAD( "nr1_spr0.5b", 0, 0x80000, CRC(a0bde3fb) SHA1(b5fac1d0339b1df6b8880fcd7aa2725a774765a4) ) /* 4Megabit, same data at 0x00000-0x1ffff repeated 4 time */
1095
1096 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1097 ROM_LOAD( "nr4_spr0.5j", 0, 0x200000, CRC(05477eb7) SHA1(f2eaacb5dbac06c37c56b9b131230c9cf6602221) ) // == gn1-voi0.5j
1098
1099 ROM_REGION( 0x800000, "c355spr", 0 )
1100 ROM_LOAD32_WORD( "gn1obj0l.ic1", 0x000000, 0x200000, CRC(06722dc8) SHA1(56fee4e17ed707fa6dbc6bad0d0281fc8cdf72d1) ) /* These four located on MEMEXT OBJ8 PCB daughter-card */
1101 ROM_LOAD32_WORD( "gn1obj0u.ic2", 0x000002, 0x200000, CRC(fcefc909) SHA1(48c19b6032096dd80777aa6d5eb5f90463095cbe) )
1102 ROM_LOAD32_WORD( "gn1obj1l.ic3", 0x400000, 0x200000, CRC(48468df7) SHA1(c5fb9082c84ac2ffceb6f5f4cbc1d40047c55e3d) )
1103 ROM_LOAD32_WORD( "gn1obj1u.ic4", 0x400002, 0x200000, CRC(3109a071) SHA1(4bb16df5a3aecdf37baf843edfc82952d46f5227) )
1104
1105 ROM_REGION( 0x400000, "c123tmap", 0 )
1106 ROM_LOAD( "nr5_spr0.8j", 0x000000, 0x100000, CRC(a5c61246) SHA1(d1d9f286b93b5b9880160029c53384d13c08dd8a) ) // == gn1_chr0.8j
1107 ROM_LOAD( "nr6_spr0.9j", 0x100000, 0x100000, CRC(c8c59772) SHA1(91de633a300e3b25a919579eaada5549640ab6f0) ) // == gn1_chr1.8j
1108 ROM_LOAD( "nr7_spr0.10j", 0x200000, 0x100000, CRC(dc96d999) SHA1(d006a401762b57fef6716f56eb3a7edcb3d3c00e) ) // == gn1_chr2.10j
1109 ROM_LOAD( "nr8_spr0.11j", 0x300000, 0x100000, CRC(4352c308) SHA1(785c13df219dceac2f940519141665b630a29f86) ) // == gn1_chr3.11j
1110
1111 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1112 ROM_LOAD( "nr9_spr0.5m", 0, 0x80000, CRC(86d4ff85) SHA1(a71056b2bcbba50c834fe28269ebda9719df354a) ) // == gn1-sha0.5m
1113
1114 ROM_REGION( 0x0800, "eeprom", 0 ) // default gun calibration and settings
1115 ROM_LOAD( "eeprom", 0x0000, 0x0800, CRC(95760d0f) SHA1(94ac5a261d9afc77c2a163a50950b0e86b1f8041) )
1116 ROM_END
1117
1118 ROM_START( gunbuletw ) /* World set using 4Mb sound data ROM (verified) */
1119 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1120 ROM_LOAD32_WORD( "gn3_mprlb.15b", 0x00002, 0x80000, CRC(9260fce5) SHA1(064579be1ac90e04082a8b403c6adf35dbb46a7e) )
1121 ROM_LOAD32_WORD( "gn3_mprub.13b", 0x00000, 0x80000, CRC(6c1ac697) SHA1(7b52b5ef8154a5d741ac24673f3e6bbfa246a494) )
1122
1123 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data - JP1 jumper selectable between 1Mb (27C1024) or 4Mb (27C4096) either ROM is correct */
1124 // ROM_LOAD( "gn1_spr0.5b", 0, 0x20000, CRC(6836ba38) SHA1(6ea17ea4bbb59be108e8887acd7871409580732f) ) /* 1Megabit, same data as the 4Mb ROM at 0x00000-0x1ffff */
1125 ROM_LOAD( "gn1-spr0.5b", 0, 0x80000, CRC(71773811) SHA1(e482784d9b9ebf8c2e4a2a3f6f6c4dc8304d2251) ) /* 4Megabit, same data at 0x00000-0x1ffff, 0x20000-0x7ffff is 0xff filled */
1126
1127 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1128 ROM_LOAD( "gn1-voi0.5j", 0, 0x200000, CRC(05477eb7) SHA1(f2eaacb5dbac06c37c56b9b131230c9cf6602221) )
1129
1130 ROM_REGION( 0x800000, "c355spr", 0 )
1131 ROM_LOAD32_WORD( "gn1obj0l.ic1", 0x000000, 0x200000, CRC(06722dc8) SHA1(56fee4e17ed707fa6dbc6bad0d0281fc8cdf72d1) ) /* These four located on MEMEXT OBJ8 PCB daughter-card */
1132 ROM_LOAD32_WORD( "gn1obj0u.ic2", 0x000002, 0x200000, CRC(fcefc909) SHA1(48c19b6032096dd80777aa6d5eb5f90463095cbe) )
1133 ROM_LOAD32_WORD( "gn1obj1l.ic3", 0x400000, 0x200000, CRC(48468df7) SHA1(c5fb9082c84ac2ffceb6f5f4cbc1d40047c55e3d) )
1134 ROM_LOAD32_WORD( "gn1obj1u.ic4", 0x400002, 0x200000, CRC(3109a071) SHA1(4bb16df5a3aecdf37baf843edfc82952d46f5227) )
1135
1136 ROM_REGION( 0x400000, "c123tmap", 0 )
1137 ROM_LOAD( "gn1-chr0.8j", 0x000000, 0x100000, CRC(a5c61246) SHA1(d1d9f286b93b5b9880160029c53384d13c08dd8a) )
1138 ROM_LOAD( "gn1-chr1.9j", 0x100000, 0x100000, CRC(c8c59772) SHA1(91de633a300e3b25a919579eaada5549640ab6f0) )
1139 ROM_LOAD( "gn1-chr2.10j", 0x200000, 0x100000, CRC(dc96d999) SHA1(d006a401762b57fef6716f56eb3a7edcb3d3c00e) )
1140 ROM_LOAD( "gn1-chr3.11j", 0x300000, 0x100000, CRC(4352c308) SHA1(785c13df219dceac2f940519141665b630a29f86) )
1141
1142 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1143 ROM_LOAD( "gn1-sha0.5m", 0, 0x80000, CRC(86d4ff85) SHA1(a71056b2bcbba50c834fe28269ebda9719df354a) )
1144
1145 ROM_REGION( 0x0800, "eeprom", 0 ) // default gun calibration and settings
1146 ROM_LOAD( "eeprom", 0x0000, 0x0800, CRC(95760d0f) SHA1(94ac5a261d9afc77c2a163a50950b0e86b1f8041) )
1147 ROM_END
1148
1149 ROM_START( gunbuletj ) /* Japanese set using 1Mb sound data ROM (verified) */
1150 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1151 ROM_LOAD32_WORD( "gn1_mprl.15b", 0x00002, 0x80000, CRC(f99e309e) SHA1(3fe0ddf756e6849f8effc7672456cbe32f65c98a) )
1152 ROM_LOAD32_WORD( "gn1_mpru.13b", 0x00000, 0x80000, CRC(72a4db07) SHA1(8c5e1e51cd961b311d03f7b21f36a5bd5e8e9104) )
1153
1154 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data - JP1 jumper selectable between 1Mb (27C1024) or 4Mb (27C4096) either ROM is correct */
1155 ROM_LOAD( "gn1_spr0.5b", 0, 0x20000, CRC(6836ba38) SHA1(6ea17ea4bbb59be108e8887acd7871409580732f) ) /* 1Megabit, same data as the 4Mb ROM at 0x00000-0x1ffff */
1156 // ROM_LOAD( "gn1-spr0.5b", 0, 0x80000, CRC(71773811) SHA1(e482784d9b9ebf8c2e4a2a3f6f6c4dc8304d2251) ) /* 4Megabit, same data at 0x00000-0x1ffff, 0x20000-0x7ffff is 0xff filled */
1157
1158 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1159 ROM_LOAD( "gn1-voi0.5j", 0, 0x200000, CRC(05477eb7) SHA1(f2eaacb5dbac06c37c56b9b131230c9cf6602221) )
1160
1161 ROM_REGION( 0x800000, "c355spr", 0 )
1162 ROM_LOAD32_WORD( "gn1obj0l.ic1", 0x000000, 0x200000, CRC(06722dc8) SHA1(56fee4e17ed707fa6dbc6bad0d0281fc8cdf72d1) ) /* These four located on MEMEXT OBJ8 PCB daughter-card */
1163 ROM_LOAD32_WORD( "gn1obj0u.ic2", 0x000002, 0x200000, CRC(fcefc909) SHA1(48c19b6032096dd80777aa6d5eb5f90463095cbe) )
1164 ROM_LOAD32_WORD( "gn1obj1l.ic3", 0x400000, 0x200000, CRC(48468df7) SHA1(c5fb9082c84ac2ffceb6f5f4cbc1d40047c55e3d) )
1165 ROM_LOAD32_WORD( "gn1obj1u.ic4", 0x400002, 0x200000, CRC(3109a071) SHA1(4bb16df5a3aecdf37baf843edfc82952d46f5227) )
1166
1167 ROM_REGION( 0x400000, "c123tmap", 0 )
1168 ROM_LOAD( "gn1-chr0.8j", 0x000000, 0x100000, CRC(a5c61246) SHA1(d1d9f286b93b5b9880160029c53384d13c08dd8a) )
1169 ROM_LOAD( "gn1-chr1.9j", 0x100000, 0x100000, CRC(c8c59772) SHA1(91de633a300e3b25a919579eaada5549640ab6f0) )
1170 ROM_LOAD( "gn1-chr2.10j", 0x200000, 0x100000, CRC(dc96d999) SHA1(d006a401762b57fef6716f56eb3a7edcb3d3c00e) )
1171 ROM_LOAD( "gn1-chr3.11j", 0x300000, 0x100000, CRC(4352c308) SHA1(785c13df219dceac2f940519141665b630a29f86) )
1172
1173 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1174 ROM_LOAD( "gn1-sha0.5m", 0, 0x80000, CRC(86d4ff85) SHA1(a71056b2bcbba50c834fe28269ebda9719df354a) )
1175
1176 ROM_REGION( 0x0800, "eeprom", 0 ) // default gun calibration and settings
1177 ROM_LOAD( "eeprom", 0x0000, 0x0800, CRC(95760d0f) SHA1(94ac5a261d9afc77c2a163a50950b0e86b1f8041) )
1178 ROM_END
1179
1180 ROM_START( nebulray )
1181 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1182 ROM_LOAD32_WORD( "nr2_mprl.15b", 0x00002, 0x80000, CRC(0431b6d4) SHA1(54c96e8ac9e753956c31bdef79d390f1c20e10ff) )
1183 ROM_LOAD32_WORD( "nr2_mpru.13b", 0x00000, 0x80000, CRC(049b97cb) SHA1(0e344b29a4d4bdc854fa9849589772df2eeb0a05) )
1184
1185 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1186 ROM_LOAD( "nr1-spr0", 0, 0x20000, CRC(1cc2b44b) SHA1(161f4ed39fabe89d7ee1d539f8b9f08cd0ff3111) )
1187
1188 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1189 ROM_LOAD( "nr1-voi0", 0, 0x200000, CRC(332d5e26) SHA1(9daddac3fbe0709e25ed8e0b456bac15bfae20d7) )
1190
1191 ROM_REGION( 0x1000000, "c355spr", 0 )
1192 ROM_LOAD32_WORD( "nr1obj0l", 0x000000, 0x200000, CRC(0e99ef46) SHA1(450fe61e448270b633f312361bd5ca89bb9684dd) )
1193 ROM_LOAD32_WORD( "nr1obj0u", 0x000002, 0x200000, CRC(fb82a881) SHA1(c9fa0728a37376a5c85bff1f6e8400c13ce15769) )
1194 ROM_LOAD32_WORD( "nr1obj1l", 0x400000, 0x200000, CRC(f7a898f0) SHA1(a25a134a42adeb9088019bde42a96d120f20407e) )
1195 ROM_LOAD32_WORD( "nr1obj1u", 0x400002, 0x200000, CRC(49d9dbd7) SHA1(2dbd842c192d65888f931cdb5c9387127b1ab632) )
1196 ROM_LOAD32_WORD( "nr1obj2l", 0x800000, 0x200000, CRC(b39871d1) SHA1(a8f910702bb88a001f2bfd1b33ad355aa3b0f429) )
1197 ROM_LOAD32_WORD( "nr1obj2u", 0x800002, 0x200000, CRC(8c8205b1) SHA1(2c5fb9392d8cd5f8d1f9aba6ddbbafd061271cd4) )
1198 ROM_LOAD32_WORD( "nr1obj3l", 0xc00000, 0x200000, CRC(c90d13ae) SHA1(675f7b8b3325aac91b2bae1cbebe274a65aedc43) )
1199 ROM_LOAD32_WORD( "nr1obj3u", 0xc00002, 0x200000, CRC(d5918c9e) SHA1(530781fb44d7bbf01669bb265b658cb60e27bcd7) )
1200
1201 ROM_REGION( 0x400000, "c123tmap", 0 )
1202 ROM_LOAD( "nr1-chr0", 0x000000, 0x100000,CRC(8d5b54ea) SHA1(616d5729f474da91da19a8246066280652da998c) )
1203 ROM_LOAD( "nr1-chr1", 0x100000, 0x100000,CRC(cd21630c) SHA1(9974c0eb1051ca52f001e6631264a1936bb50620) )
1204 ROM_LOAD( "nr1-chr2", 0x200000, 0x100000,CRC(70a11023) SHA1(bead486a86bd96c6fdfd2ea4d4d37c38bbe9bfbb) )
1205 ROM_LOAD( "nr1-chr3", 0x300000, 0x100000,CRC(8f4b1d51) SHA1(b48fb2c8ccd9105a5b48be44dd3fe4309769efa4) )
1206
1207 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1208 ROM_LOAD( "nr1-sha0", 0, 0x80000,CRC(ca667e13) SHA1(685032603224cb81bcb85361921477caec570d5e) )
1209
1210 ROM_REGION( 0x20, "proms", 0 ) /* custom key data? */
1211 ROM_LOAD( "c366.bin", 0, 0x20, CRC(8c96f31d) SHA1(d186859cfc19a63266084372080d0a5bee687ae2) )
1212 ROM_END
1213
1214 ROM_START( nebulrayj )
1215 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1216 ROM_LOAD32_WORD( "nr1_mprl.15b", 0x00002, 0x80000, CRC(fae5f62c) SHA1(143d716abbc834aac6270db3bbb89ec71ea3804d) )
1217 ROM_LOAD32_WORD( "nr1_mpru.13b", 0x00000, 0x80000, CRC(42ef71f9) SHA1(20e3cb63e1fde293c60c404b378d901d635c4b79) )
1218
1219 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1220 ROM_LOAD( "nr1-spr0", 0, 0x20000, CRC(1cc2b44b) SHA1(161f4ed39fabe89d7ee1d539f8b9f08cd0ff3111) )
1221
1222 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1223 ROM_LOAD( "nr1-voi0", 0, 0x200000, CRC(332d5e26) SHA1(9daddac3fbe0709e25ed8e0b456bac15bfae20d7) )
1224
1225 ROM_REGION( 0x1000000, "c355spr", 0 )
1226 ROM_LOAD32_WORD( "nr1obj0l", 0x000000, 0x200000, CRC(0e99ef46) SHA1(450fe61e448270b633f312361bd5ca89bb9684dd) )
1227 ROM_LOAD32_WORD( "nr1obj0u", 0x000002, 0x200000, CRC(fb82a881) SHA1(c9fa0728a37376a5c85bff1f6e8400c13ce15769) )
1228 ROM_LOAD32_WORD( "nr1obj1l", 0x400000, 0x200000, CRC(f7a898f0) SHA1(a25a134a42adeb9088019bde42a96d120f20407e) )
1229 ROM_LOAD32_WORD( "nr1obj1u", 0x400002, 0x200000, CRC(49d9dbd7) SHA1(2dbd842c192d65888f931cdb5c9387127b1ab632) )
1230 ROM_LOAD32_WORD( "nr1obj2l", 0x800000, 0x200000, CRC(b39871d1) SHA1(a8f910702bb88a001f2bfd1b33ad355aa3b0f429) )
1231 ROM_LOAD32_WORD( "nr1obj2u", 0x800002, 0x200000, CRC(8c8205b1) SHA1(2c5fb9392d8cd5f8d1f9aba6ddbbafd061271cd4) )
1232 ROM_LOAD32_WORD( "nr1obj3l", 0xc00000, 0x200000, CRC(c90d13ae) SHA1(675f7b8b3325aac91b2bae1cbebe274a65aedc43) )
1233 ROM_LOAD32_WORD( "nr1obj3u", 0xc00002, 0x200000, CRC(d5918c9e) SHA1(530781fb44d7bbf01669bb265b658cb60e27bcd7) )
1234
1235 ROM_REGION( 0x400000, "c123tmap", 0 )
1236 ROM_LOAD( "nr1-chr0", 0x000000, 0x100000,CRC(8d5b54ea) SHA1(616d5729f474da91da19a8246066280652da998c) )
1237 ROM_LOAD( "nr1-chr1", 0x100000, 0x100000,CRC(cd21630c) SHA1(9974c0eb1051ca52f001e6631264a1936bb50620) )
1238 ROM_LOAD( "nr1-chr2", 0x200000, 0x100000,CRC(70a11023) SHA1(bead486a86bd96c6fdfd2ea4d4d37c38bbe9bfbb) )
1239 ROM_LOAD( "nr1-chr3", 0x300000, 0x100000,CRC(8f4b1d51) SHA1(b48fb2c8ccd9105a5b48be44dd3fe4309769efa4) )
1240
1241 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1242 ROM_LOAD( "nr1-sha0", 0, 0x80000,CRC(ca667e13) SHA1(685032603224cb81bcb85361921477caec570d5e) )
1243
1244 ROM_REGION( 0x20, "proms", 0 ) /* custom key data? */
1245 ROM_LOAD( "c366.bin", 0, 0x20, CRC(8c96f31d) SHA1(d186859cfc19a63266084372080d0a5bee687ae2) )
1246 ROM_END
1247
1248 ROM_START( gslgr94u )
1249 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1250 ROM_LOAD32_WORD( "gse2mprl.15b", 0x00002, 0x80000, CRC(a514349c) SHA1(1f7ec81cd6193410d2f01e6f0f84878561fc8035) )
1251 ROM_LOAD32_WORD( "gse2mpru.13b", 0x00000, 0x80000, CRC(b6afd238) SHA1(438a3411ac8ce3d22d5da8c0800738cb8d2994a9) )
1252
1253 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1254 ROM_LOAD( "gse2spr0.bin", 0, 0x20000, CRC(17e87cfc) SHA1(9cbeadb6dfcb736e8c80eab344f70fc2f58469d6) )
1255
1256 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1257 ROM_LOAD( "gse-voi0.bin", 0, 0x200000, CRC(d3480574) SHA1(0c468ed060769b36b7e41cf4919cb6d8691d64f6) )
1258
1259 ROM_REGION( 0x400000, "c355spr", 0 )
1260 ROM_LOAD32_WORD( "gseobj0l.bin", 0x000000, 0x200000, CRC(531520ca) SHA1(2a1a5282549c6f7a37d5fb8c0b342edb9dc45315) )
1261 ROM_LOAD32_WORD( "gseobj0u.bin", 0x000002, 0x200000, CRC(fcc1283c) SHA1(fb44ed742f362e6737412cabf3f67d9506456a9e) )
1262
1263 ROM_REGION( 0x400000, "c123tmap", 0 )
1264 ROM_LOAD( "gse-chr0.bin", 0x000000, 0x100000, CRC(9314085d) SHA1(150e8ea908861337f9be2749aa7f9e1d52570586) )
1265 ROM_LOAD( "gse-chr1.bin", 0x100000, 0x100000, CRC(c128a887) SHA1(4faf78064dd48ec50684a7dc8d120f8c5985bf2a) )
1266 ROM_LOAD( "gse-chr2.bin", 0x200000, 0x100000, CRC(48f0a311) SHA1(e39adcce835542e64ca87f6019d4a85fcbe388c2) )
1267 ROM_LOAD( "gse-chr3.bin", 0x300000, 0x100000, CRC(adbd1f88) SHA1(3c7bb1a9a398412bd3c98cadf8ce63a16e2bfed5) )
1268
1269 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1270 ROM_LOAD( "gse-sha0.bin", 0, 0x80000, CRC(6b2beabb) SHA1(815f7aef44735584edd4a9ca7e672471d07f225e) )
1271 ROM_END
1272
1273 ROM_START( gslgr94j )
1274 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1275 ROM_LOAD32_WORD( "gs41mprl.15b", 0x00002, 0x80000, CRC(5759bdb5) SHA1(a0fb332c484e168369a69cd9dd8ea72e5f4565df) )
1276 ROM_LOAD32_WORD( "gs41mpru.13b", 0x00000, 0x80000, CRC(78bde1e7) SHA1(911d33897f03c59c6505f5f755d80471ff019812) )
1277
1278 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1279 ROM_LOAD( "gs41spr0.5b", 0, 0x80000, CRC(3e2b6d55) SHA1(f6a1ecaee3a9a7a535850084e469aa7f873f301e) )
1280
1281 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1282 ROM_LOAD( "gs4voi0.5j", 0, 0x200000, CRC(c3053a90) SHA1(e76799b33b2457421255b03786bc24266d59c7dd) )
1283
1284 ROM_REGION( 0x800000, "c355spr", 0 )
1285 ROM_LOAD32_WORD( "gs4obj0l.bin", 0x000000, 0x200000, CRC(3b499da0) SHA1(91ad5f68dbda64dd07e1133eb09ee69da3da3103) )
1286 ROM_LOAD32_WORD( "gs4obj0u.bin", 0x000002, 0x200000, CRC(80016b50) SHA1(9f7604c196835d31894ba4db1de43d7d2614da84) )
1287 ROM_LOAD32_WORD( "gs4obj1l.bin", 0x400000, 0x200000, CRC(1f4847a7) SHA1(908e419e42fa8bd786cc3bc96d5ccb3a47c8e2dc) )
1288 ROM_LOAD32_WORD( "gs4obj1u.bin", 0x400002, 0x200000, CRC(49bc48cd) SHA1(6bcc41546f3bd609e3aa962e5ce3bf5bc6b9229a) )
1289
1290 ROM_REGION( 0x400000, "c123tmap", 0 )
1291 ROM_LOAD( "gs4chr0.8j", 0x000000, 0x100000, CRC(8c6c682e) SHA1(ecf21035d5af28299c9cdb98d5d811b4d52857b8) )
1292 ROM_LOAD( "gs4chr1.9j", 0x100000, 0x100000, CRC(523989f7) SHA1(fae0e2f58e9a8d0ddc7297b567579849e24e0a40) )
1293 ROM_LOAD( "gs4chr2.10j", 0x200000, 0x100000, CRC(37569559) SHA1(ce31673f51c6302f4fb4e4c377e6693a40874f81) )
1294 ROM_LOAD( "gs4chr3.11j", 0x300000, 0x100000, CRC(73ca58f6) SHA1(44bdc943fb10dc53279662cd528169a27d57e478) )
1295
1296 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1297 ROM_LOAD( "gs4sha0.5m", 0, 0x80000, CRC(40e7e6a5) SHA1(70af76b6034e0d6e1b96bf54c973ab411e5907ab) )
1298 ROM_END
1299
1300 /*
1301 Great Sluggers (Japan)
1302 Namco, 1993
1303
1304 This game runs on Namco NB-1 hardware.
1305
1306 PCB Layout
1307 ----------
1308 NB-1 MAIN PCB MEMEXT OBJ2 PCB
1309 8634961101 (8634963101) 8635901201 (8635901301)
1310 |------------------------------------------------------|---------|
1311 | 62256 62256 | |
1312 |LA4705 VOL M5M5178 62256 62256 |GS1OBJ-0 |
1313 | M5M5178 C347 | |
1314 | 4558 M5M5178 62256 62256 | |
1315 | 62256 62256 | |
1316 | LC78815 C116 156 | |
1317 |JP3 62256 62256 62256 | |
1318 | 145 62256 62256 62256 |GS1OBJ-1 |
1319 | GS1SHA-0 | |
1320 |J JP2 62256 62256 C355|---------|
1321 |A 62256 62256 62256 |
1322 |M 123 62256 |
1323 |M JP12 |
1324 |A %3 JP11 |
1325 | JP5 GS1CHR-0 GS1CHR-2 JP10 137 187 M3771|
1326 | GS1VOI-0 JP6 GS1CHR-1 GS1CHR-3 48.384MHz |
1327 | |
1328 | C352 |
1329 |SW1 75 |
1330 | |
1331 | TC551001 %1 |
1332 | KM28C16 GS1MPRU JP9 |
1333 | TC551001 PAL2 %2 GS1MPRL |
1334 | JP1 JP7 JP8 |
1335 | GS1SPR0 PAL1 C329 68EC020 |
1336 | |
1337 |----------------------------------------------------------------|
1338 Notes:
1339
1340 CLOCKs
1341 ------
1342 MASTER clock : 48.384 MHz
1343 68020 clock : 24.192MHz (MASTER / 2)
1344 HSYNC : 15.75kHz
1345 VSYNC : 59.7Hz
1346
1347 DIPs
1348 ----
1349 SW1: 2 position, both are OFF. Position 1 toggles TEST mode, position 2 is freeze.
1350
1351 RAM
1352 ---
1353 TC551001AFL x 2 (SOP32, 128k x8 SRAM)
1354 62256 x 20 (SOP28, 32k x8 SRAM)
1355 M5M5178 x 3 (SOP28, 8k x8 SRAM)
1356
1357 NAMCO CUSTOM CHIPS
1358 ------------------
1359 75 (QFP80, M37702 in disguise; sound CPU with internal BIOS)
1360 123 (QFP80)
1361 137 (NDIP28)
1362 145 (QFP80)
1363 156 (QFP64)
1364 187 (QFP120)
1365 C116 (QFP64)
1366 C329 (QFP100)
1367 C347 (QFP80)
1368 C351 (QFP160)
1369 C352 (QFP100)
1370 C355 (QFP160)
1371
1372 OTHER
1373 -----
1374 KM28C16 2K x8 EEPROM (DIP24)
1375 %1 Unpopulated KEYCUS socket
1376 %2 Unpopulated DATA ROM socket
1377 %3 Unpopulated position for 28MHz OSC
1378
1379 PALs
1380 ----
1381 PAL1 PALCE16V8 (NAMCO CODE = NB1-1)
1382 PAL2 PAL16L8 (NAMCO CODE = NB1-2)
1383
1384 JUMPERs
1385 -------
1386 JP1 4M O-O O 1M Config jumper for ROM size, 4M = 27C4096, 1M = 27C1024
1387 JP2 4M O-O O 1M Config jumper for ROM size, 4M = 27C4096, 1M = 27C1024
1388 JP3 O-O (2 pins shorted, hardwired on PCB)
1389 JP5 /1M O-O O 1M Config jumper for ROM size (hardwired on PCB)
1390 JP6 8M O-O O /8M Config jumper for ROM size (hardwired on PCB)
1391 JP7 4M O-O O 1M Config jumper for ROM size (hardwired on PCB), 4M = 27C4096, 1M = 27C1024
1392 JP8 4M O-O O 1M Config jumper for ROM size (hardwired on PCB), 4M = 27C4096, 1M = 27C1024
1393 JP9 CON O-O O COFF (hardwired on PCB)
1394 JP10 24M O-O O 28M Config jumper for 28MHz OSC (hardwired on PCB)
1395 JP11 24M O-O O 12M Config jumper for 28MHz OSC (hardwired on PCB)
1396 JP12 F32 O O-O 355 (hardwired on PCB)
1397
1398 ROMs, MAIN PCB
1399 --------------
1400 Filename / PCB ROM
1401 ROM Label Label Type
1402 ------------------------------------------------------------------------------
1403 GS1MPRU.13B PRGU 27C240 \ Main program
1404 GS1MPRL.15B PRGL 27C240 /
1405 GS1SPR0.5B SPRG 27C240 Sound program, linked to 75, C351 and C352
1406 GS1VOI-0.5J VOICE 16M mask Sound voices
1407 GS1CHR-0.8J CHR0 8M mask Character
1408 GS1CHR-1.9J CHR1 8M mask Character
1409 GS1CHR-2.10J CHR2 8M mask Character
1410 GS1CHR-3.11J CHR3 8M mask Character
1411 GS1SHA-0.5M SHAPE 4M mask Shape
1412
1413 ROMs, MEMEXT OBJ2 PCB (All ROMs surface mounted)
1414 ---------------------
1415 Filename / PCB ROM
1416 ROM Label Label Type
1417 ----------------------------------------
1418 GS1OBJ-0.IC1 OBJL 16M mask SOP44
1419 GS1OBJ-1.IC2 OBJU 16M mask SOP44
1420
1421 Note! All ROMs are different to the Great Sluggers '94 set.
1422
1423 */
1424
1425 ROM_START( gslugrsj )
1426 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1427 ROM_LOAD32_WORD( "gs1mprl.15b", 0x00002, 0x80000, CRC(1e6c3626) SHA1(56abe21884fd87df10996db19c49ce14214d4b73) )
1428 ROM_LOAD32_WORD( "gs1mpru.13b", 0x00000, 0x80000, CRC(ef355179) SHA1(0ab0ef4301a318681bb5827d35734a0732b35484) )
1429
1430 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1431 ROM_LOAD( "gs1spr0.5b", 0, 0x80000, CRC(561ea20f) SHA1(adac6b77effc3a82079a9b228bafca0fcef72ba5) )
1432
1433 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1434 ROM_LOAD( "gs1voi-0.5j", 0, 0x200000, CRC(6f8262aa) SHA1(beea98d9f8b927a572eb0bfcf678e9d6e40fc68d) )
1435
1436 ROM_REGION( 0x400000, "c355spr", 0 )
1437 ROM_LOAD32_WORD( "gs1obj-0.ic1", 0x000000, 0x200000, CRC(9a55238f) SHA1(fc3fd4b8b6322bbe343edbcad7815b597562266b) )
1438 ROM_LOAD32_WORD( "gs1obj-1.ic2", 0x000002, 0x200000, CRC(31c66f76) SHA1(8903e6586dff6f34a6ffca2d7c75343c0a5bff56) )
1439
1440 ROM_REGION( 0x400000, "c123tmap", 0 )
1441 ROM_LOAD( "gs1chr-0.8j", 0x000000, 0x100000, CRC(e7ced86a) SHA1(de90c2e3870b317431d3910f581660681b46ff9d) )
1442 ROM_LOAD( "gs1chr-1.9j", 0x100000, 0x100000, CRC(1fe46749) SHA1(f4c0ea666d52cb1c8b1da93e7486ade5eae336cc) )
1443 ROM_LOAD( "gs1chr-2.10j", 0x200000, 0x100000, CRC(f53afa20) SHA1(5c317e276ca2355e9737c1e8114dccbb5e11058a) )
1444 ROM_LOAD( "gs1chr-3.11j", 0x300000, 0x100000, CRC(b149d7da) SHA1(d50c6258db0ccdd69b563e880d1711aae811fbe3) )
1445
1446 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1447 ROM_LOAD( "gs1sha-0.5m", 0, 0x80000, CRC(8a2832fe) SHA1(a1f54754fb01bbbc87274b1a0a4127fa9296ad1a) )
1448 ROM_END
1449
1450 ROM_START( sws95 )
1451 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1452 ROM_LOAD32_WORD( "ss51mprl.bin", 0x00002, 0x80000, CRC(c9e0107d) SHA1(0f10582416023a86ea1ef2679f3f06016c086e08) )
1453 ROM_LOAD32_WORD( "ss51mpru.bin", 0x00000, 0x80000, CRC(0d93d261) SHA1(5edef26e2c86dbc09727d910af92747d022e4fed) )
1454
1455 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1456 ROM_LOAD( "ss51spr0.bin", 0, 0x80000, CRC(71cb12f5) SHA1(6e13bd16a5ba14d6e47a21875db3663ada3c06a5) )
1457
1458 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1459 ROM_LOAD( "ss51voi0.bin", 0, 0x200000, CRC(2740ec72) SHA1(9694a7378ea72771d2b1d43db6d74ed347ba27d3) )
1460
1461 ROM_REGION( 0x400000, "c355spr", 0 )
1462 ROM_LOAD32_WORD( "ss51ob0l.bin", 0x000000, 0x200000, CRC(e0395694) SHA1(e52045a7af4c4b0f9935695cfc5ff729bf9bd7c1) )
1463 ROM_LOAD32_WORD( "ss51ob0u.bin", 0x000002, 0x200000, CRC(b0745ca0) SHA1(579ea7fd7b9a181fd9d08c50c6c5941264aa0b6d) )
1464
1465 ROM_REGION( 0x400000, "c123tmap", 0 )
1466 ROM_LOAD( "ss51chr0.bin", 0x000000, 0x100000, CRC(86dd3280) SHA1(07ba6d3edc5c38bf82ddaf8f6de7ef0f5d0788b2) )
1467 ROM_LOAD( "ss51chr1.bin", 0x100000, 0x100000, CRC(2ba0fb9e) SHA1(39ceddad7bc0073b361eb776762002a9fc61b337) )
1468 ROM_LOAD( "ss51chr2.bin", 0x200000, 0x100000, CRC(ca0e6c1a) SHA1(1221cd30894e97e2f7d456509c7b6732ec3d06a5) )
1469 ROM_LOAD( "ss51chr3.bin", 0x300000, 0x100000, CRC(73ca58f6) SHA1(44bdc943fb10dc53279662cd528169a27d57e478) )
1470
1471 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1472 ROM_LOAD( "ss51sha0.bin", 0, 0x80000, CRC(3bf4d081) SHA1(7b07b86f753ea6bcd90eb7d152c12884a6fe785a) )
1473 ROM_END
1474
1475 ROM_START( sws96 )
1476 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1477 ROM_LOAD32_WORD( "ss61mprl.bin", 0x00002, 0x80000, CRC(06f55e73) SHA1(6be26f8a2ef600bf07c580f210d7b265ac464002) )
1478 ROM_LOAD32_WORD( "ss61mpru.bin", 0x00000, 0x80000, CRC(0abdbb83) SHA1(67e8b712291f9bcf2c3a52fbc451fad54679cab8) )
1479
1480 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1481 ROM_LOAD( "ss61spr0.bin", 0, 0x80000, CRC(71cb12f5) SHA1(6e13bd16a5ba14d6e47a21875db3663ada3c06a5) )
1482
1483 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1484 ROM_LOAD( "ss61voi0.bin", 0, 0x200000, CRC(2740ec72) SHA1(9694a7378ea72771d2b1d43db6d74ed347ba27d3) )
1485
1486 ROM_REGION( 0x400000, "c355spr", 0 )
1487 ROM_LOAD32_WORD( "ss61ob0l.bin", 0x000000, 0x200000, CRC(579b19d4) SHA1(7f18097c683d2b1c532f54ee514dd499f5965165) )
1488 ROM_LOAD32_WORD( "ss61ob0u.bin", 0x000002, 0x200000, CRC(a69bbd9e) SHA1(8f4c44e2caa31d25433a04c19c51904ec9461e2f) )
1489
1490 ROM_REGION( 0x400000, "c123tmap", 0 )
1491 ROM_LOAD( "ss61chr0.bin", 0x000000, 0x100000, CRC(9d2ae07b) SHA1(7d268f6c7d8145c913f80049369ae3106d69e939) )
1492 ROM_LOAD( "ss61chr1.bin", 0x100000, 0x100000, CRC(4dc75da6) SHA1(a29932b4fb39648e2c02df668f46cafb80c53619) )
1493 ROM_LOAD( "ss61chr2.bin", 0x200000, 0x100000, CRC(1240704b) SHA1(a24281681053cc6649f00ec5a31c7249101eaee1) )
1494 ROM_LOAD( "ss61chr3.bin", 0x300000, 0x100000, CRC(066581d4) SHA1(999cd478d9da452bb57793cd276c6c0d87e2825e) )
1495
1496 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1497 ROM_LOAD( "ss61sha0.bin", 0, 0x80000, CRC(fceaa19c) SHA1(c9303a755ac7af19c4804a264d1a09d987f39e74) )
1498 ROM_END
1499
1500 ROM_START( sws97 )
1501 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1502 ROM_LOAD32_WORD( "ss71mprl.bin", 0x00002, 0x80000, CRC(bd60b50e) SHA1(9e00bacd506182ab2af2c0efdd5cc401b3e46485) )
1503 ROM_LOAD32_WORD( "ss71mpru.bin", 0x00000, 0x80000, CRC(3444f5a8) SHA1(8d0f35b3ba8f65dbc67c3b2d273833227a8b8b2a) )
1504
1505 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1506 ROM_LOAD( "ss71spr0.bin", 0, 0x80000, CRC(71cb12f5) SHA1(6e13bd16a5ba14d6e47a21875db3663ada3c06a5) )
1507
1508 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1509 ROM_LOAD( "ss71voi0.bin", 0, 0x200000, CRC(2740ec72) SHA1(9694a7378ea72771d2b1d43db6d74ed347ba27d3) )
1510
1511 ROM_REGION( 0x400000, "c355spr", 0 )
1512 ROM_LOAD32_WORD( "ss71ob0l.bin", 0x000000, 0x200000, CRC(9559ad44) SHA1(fd56a8620f6958cc090f783d74cb38bba46d2423) )
1513 ROM_LOAD32_WORD( "ss71ob0u.bin", 0x000002, 0x200000, CRC(4df4a722) SHA1(07eb94628ceeb7cbce2d39d479f33c37583a346a) )
1514
1515 ROM_REGION( 0x400000, "c123tmap", 0 )
1516 ROM_LOAD( "ss71chr0.bin", 0x000000, 0x100000, CRC(bd606356) SHA1(a62c55600e46f8821db0b84d79fc2588742ad7ad) )
1517 ROM_LOAD( "ss71chr1.bin", 0x100000, 0x100000, CRC(4dc75da6) SHA1(a29932b4fb39648e2c02df668f46cafb80c53619) )
1518 ROM_LOAD( "ss71chr2.bin", 0x200000, 0x100000, CRC(1240704b) SHA1(a24281681053cc6649f00ec5a31c7249101eaee1) )
1519 ROM_LOAD( "ss71chr3.bin", 0x300000, 0x100000, CRC(066581d4) SHA1(999cd478d9da452bb57793cd276c6c0d87e2825e) )
1520
1521 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1522 ROM_LOAD( "ss71sha0.bin", 0, 0x80000, CRC(be8c2758) SHA1(0a1b6c03cdaec6103ae8483b67faf3840234f825) )
1523 ROM_END
1524
1525 ROM_START( vshoot )
1526 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1527 ROM_LOAD32_WORD( "vsj1mprl.15b", 0x00002, 0x80000, CRC(83a60d92) SHA1(c3db0c79f772a79418914353a3d6ecc4883ea54e) )
1528 ROM_LOAD32_WORD( "vsj1mpru.13b", 0x00000, 0x80000, CRC(c63eb92d) SHA1(f93bd4b91daee645677955020dc8df14dc9bfd27) )
1529
1530 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1531 ROM_LOAD( "vsj1spr0.5b", 0, 0x80000, CRC(b0c71aa6) SHA1(a94fae02b46a645ff728d2f98827c85ff155892b) )
1532
1533 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1534 ROM_LOAD( "vsjvoi-0.5j", 0, 0x200000, CRC(0528c9ed) SHA1(52b67978fdeb97b77065575774a7ddeb49fe1d81) )
1535
1536 ROM_REGION( 0x800000, "c355spr", 0 )
1537 ROM_LOAD32_WORD( "vsjobj0l.ic1", 0x000000, 0x200000, CRC(e134faa7) SHA1(a844c8a5bd6d8907f9e5c7ba9e2ee8e9a886cd1e) ) /* These four located on MEMEXT OBJ8 PCB daughter-card */
1538 ROM_LOAD32_WORD( "vsjobj0u.ic2", 0x000002, 0x200000, CRC(974d0714) SHA1(976050eaf82d4b66e13c1c579e5521eb867527fb) )
1539 ROM_LOAD32_WORD( "vsjobj1l.ic3", 0x400000, 0x200000, CRC(ba46f967) SHA1(ddfb0ac7fba7369869e4df9a66d465a662eba2e6) )
1540 ROM_LOAD32_WORD( "vsjobj1u.ic4", 0x400002, 0x200000, CRC(09da7e9c) SHA1(e98e07a886a4fe369748fc97f3cee6a4bb668385) )
1541
1542 ROM_REGION( 0x400000, "c123tmap", 0 )
1543 ROM_LOAD( "vsjchr-0.8j", 0x000000, 0x100000, CRC(2af8ba7c) SHA1(74f5a382425974a9b2167bb01672dd13dea882f5) )
1544 ROM_LOAD( "vsjchr-1.9j", 0x100000, 0x100000, CRC(b789d53e) SHA1(48b4cf956f9025e3c2b6f59b317596dfe0b6b142) )
1545 ROM_LOAD( "vsjchr-2.10j", 0x200000, 0x100000, CRC(7ef80758) SHA1(c7e6d14f0823607dfd8a13ea6f164ffa85b5563e) )
1546 ROM_LOAD( "vsjchr-3.11j", 0x300000, 0x100000, CRC(73ca58f6) SHA1(44bdc943fb10dc53279662cd528169a27d57e478) )
1547
1548 ROM_REGION( 0x80000, "c123tmap:mask", 0 )
1549 ROM_LOAD( "vsjsha-0.5m", 0, 0x80000, CRC(78335ea4) SHA1(d4b9f179b1b456a866354ea308664c036de6414d) )
1550 ROM_END
1551
1552 /*
1553
1554 The Outfoxies
1555 Namco, 1994
1556
1557 This game runs on Namco NB-2 hardware.
1558
1559
1560 Main Board
1561 ----------
1562
1563 NB-2 MAIN PCB 8639960102 (8639970102)
1564 |------------------------------------------------------------------------|
1565 ||----------------------------------------------------------------------||
1566 || J103 J104 J105 ||
1567 ||VOL CY7C185 ||
1568 ||458 CY7C185 156 123 C384 C384 C384 LH52250 C355 ||
1569 ||JP5 CY7C185 JP11 LH52250 ||
1570 ||LA4705 ||
1571 ||LC78815 C116 LH52250 OU1SHAS.12S OU1SHAR.18S ||
1572 || LH52250 JP8 JP10 ||
1573 || JP4 ||
1574 || ||
1575 ||--------------------NB-2-MASK-ROM-PCB-(ON-TOP)------------------------||
1576 |J |
1577 | JP3 |
1578 |A JP2 145 PAL1 187 |
1579 | OU1VOI0.6N VSYNC LH52250 |
1580 |M HSYNC LH52250 |
1581 | C352 169 LH52250 TC511632 (x4) |
1582 |M 137 48.384MHz LH52250 |
1583 | |
1584 |A SW1 75 |
1585 | JP7 TC511632 (x4) |
1586 | PAL3 C383 |
1587 | C382 |
1588 | M5M1008 OU2MPRU.11D JP9 BR28C16 C390 |
1589 | M5M1008 PAL2 OU2MPRL.11C 68EC020 C385 |
1590 | OU1SPR0.5B JP6 OU1DAT1.20B |
1591 | JP1 |
1592 | OU1DAT0.20A |
1593 |------------------------------------------------------------------------|
1594
1595 ROM Board
1596 ---------
1597
1598 NB-2 MASK ROM PCB 8639969800 (8639979800)
1599 -------------------------------------------------------------------------|
1600 | J103 J104 J105 |
1601 |OU1SCR0.1D OU1ROT0.3D |
1602 | |
1603 | OU1ROT1.3C OU1OBJ0L.4C OU1OBJ3L.6C OU1OBJ0U.8C OU1OBJ3U.9C |
1604 | |
1605 | OU1ROT2.3B OU1OBJ1L.4B OU1OBJ4L.6B OU1OBJ1U.8B OU1OBJ4U.9B |
1606 | |
1607 | OU1OBJ2L.4A OU1OBJ2U.8A |
1608 |------------------------------------------------------------------------|
1609
1610 Notes:
1611
1612 CLOCKs
1613 ------
1614 MASTER clock 48.384 MHz
1615 68020 clock: 24.192MHz (MASTER / 2)
1616 HSYNC: 15.75kHz
1617 VSYNC: 59.7Hz
1618
1619 DIPs
1620 ----
1621 SW1: 2 position, both are OFF. Position 1 toggles TEST mode, position 2 is freeze.
1622
1623 RAM
1624 ---
1625 TC511632FL x 8 (SOP40, 32k x16)
1626 M5M51008AFP x 2 (SOP32, 128k x8)
1627 LH52250AN x 8 (SOP28, 32k x8)
1628 CY7C185 x 3 (SOP28, 8k x8)
1629
1630 NAMCO CUSTOM CHIPS
1631 ------------------
1632 75 (QFP80)
1633 123 (QFP80)
1634 137 (NDIP28)
1635 145 (QFP80)
1636 156 (QFP64)
1637 169 (QFP120)
1638 187 (QFP120)
1639 C116 (QFP64)
1640 C352 (QFP100)
1641 C355 (QFP160)
1642 C382 (QFP120)
1643 C383 (QFP100)
1644 C384 x 3 (QFP48)
1645 C385 (QFP144)
1646 C390 (DIP32, KEYCUS)
1647
1648 OTHER
1649 -----
1650 BR28C16 (DIP24, EEPROM)
1651 2 gold pins labelled HSYNC & VSYNC, connected to Namco custom chip 145
1652 3 connectors for ROM PCB, labelled J103 (SCROLL), J104 (ROTATE), J105 (OBJECT)
1653
1654 PALs
1655 ----
1656 PAL1 PALCE16V8 (NAMCO CODE = NB2-1, PCB says "MIXER")
1657 PAL2 PAL16L8 (NAMCO CODE = NB1-2, PCB says "DEC75") (note! PAL is NB1-2)
1658 PAL3 PAL16L8 (NAMCO CODE = NB2-2, PCB says "SIZE")
1659
1660 JUMPERs
1661 -------
1662 JP1 4M O-O O 1M Config jumper for ROM size, 4M = 27C4002, 1M = 27C1024
1663 JP2 A20 O O-O GND Config jumper for ROM size, GND = 16M, A20 = 32M
1664 JP3 A20 O O-O GND Config jumper for ROM size, GND = 16M, A20 = 32M
1665 JP4 O-O (2 pins shorted, hardwired on PCB)
1666 JP5 1 O O O L (hardwired on PCB, not shorted)
1667 JP6 1M O O-O 4M Config jumper for ROM size, 1M = 27C1024, 4M = 27C240
1668 JP7 O O-O /WDR (hardwired on PCB)
1669 JP8 GND O-O O A20 Config jumper for ROM size, GND = 16M, A20 = 32M
1670 JP9 CON O-O O COFF (hardwired on PCB)
1671 JP10 GND O-O O A20 Config jumper for ROM size, GND = 16M, A20 = 32M
1672 JP11 355 O O-O F32 (hardwired on PCB)
1673
1674 ROMs, Main PCB
1675 --------------
1676 Filename / PCB ROM
1677 ROM Label Label Type
1678 ------------------------------------------------------------------------------
1679 ou1dat0.20a DATA0 27C4002 Shared Data
1680 ou1dat1.20b DATA1 27C4002 Shared Data
1681 ou2mprl.11c PRGL 27C4002 \ Main program
1682 ou2mpru.11d PRGU 27C4002 /
1683 ou1spr0.5b SPRG 27C240 Sound program, linked to C352 and C382
1684 ou1voi0.6n VOICE0 MB8316200B Sound voices
1685 ou1shas.12s SHAPE-S 16M mask Shape
1686 ou1shar.18s SHAPE-R 16M mask Shape
1687
1688 ROMs, mask ROM PCB (All ROMs surface mounted)
1689 ------------------
1690 Filename / PCB ROM
1691 ROM Label Label Type
1692 ------------------------------------------------
1693 ou1scr0.1d SCR0 MB8316200B (16M SOP44)
1694 ou1rot0.3d ROT0 MB8316200B (16M SOP44)
1695 ou1rot1.3c ROT1 MB8316200B (16M SOP44)
1696 ou1rot2.3b ROT2 MB8316200B (16M SOP44)
1697 ou1obj0l.4c OBJ0L MB8316200B (16M SOP44)
1698 ou1obj1l.4b OBJ1L MB8316200B (16M SOP44)
1699 ou1obj2l.4a OBJ2L MB8316200B (16M SOP44)
1700 ou1obj3l.6c OBJ3L MB8316200B (16M SOP44)
1701 ou1obj4l.6b OBJ4L MB8316200B (16M SOP44)
1702 ou1obj0u.8c OBJ0U MB8316200B (16M SOP44)
1703 ou1obj1u.8b OBJ1U MB8316200B (16M SOP44)
1704 ou1obj2u.8a OBJ2U MB8316200B (16M SOP44)
1705 ou1obj3u.9c OBJ3U MB8316200B (16M SOP44)
1706 ou1obj4u.9b OBJ4U MB8316200B (16M SOP44)
1707
1708 */
1709
1710 ROM_START( outfxies )
1711 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1712 ROM_LOAD32_WORD( "ou2_mprl.11c", 0x00002, 0x80000, CRC(f414a32e) SHA1(9733ab087cfde1b8fb5b676d8a2eb5325ebdbb56) )
1713 ROM_LOAD32_WORD( "ou2_mpru.11d", 0x00000, 0x80000, CRC(ab5083fb) SHA1(cb2e7a4838c2b80057edb83ea63116bccb1394d3) )
1714
1715 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1716 ROM_LOAD( "ou1spr0.5b", 0, 0x80000, CRC(60cee566) SHA1(2f3b96793816d90011586e0f9f71c58b636b6d4c) )
1717
1718 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1719 ROM_LOAD( "ou1voi0.6n", 0, 0x200000, CRC(2d8fb271) SHA1(bde9d45979728f5a2cd8ec89f5f81bf16b694cc2) )
1720
1721 ROM_REGION( 0x200000, "c123tmap:mask", 0 )
1722 ROM_LOAD( "ou1shas.12s", 0, 0x200000,CRC(9bcb0397) SHA1(54a32b6394d0e6f51bfd281f8a4bafce6ddf6246) )
1723
1724 ROM_REGION( 0x200000, "c169roz:mask", 0 )
1725 ROM_LOAD( "ou1shar.18s", 0, 0x200000, CRC(fbb48194) SHA1(2d3ec5bc519fad2b755018f83fadfe0cba13c292) )
1726
1727 ROM_REGION( 0x2000000, "c355spr", 0 )
1728 ROM_LOAD32_WORD( "ou1obj0l.4c", 0x0000000, 0x200000, CRC(1b4f7184) SHA1(a05d67842fce92f321d1fdd3bd30aa3427775a0c) )
1729 ROM_LOAD32_WORD( "ou1obj0u.8c", 0x0000002, 0x200000, CRC(d0a69794) SHA1(07d449e54e9971abeb9cd5bb7b372270fafa8bac) )
1730 ROM_LOAD32_WORD( "ou1obj1l.4b", 0x0400000, 0x200000, CRC(48a93e84) SHA1(6935ec161a12237d4cec732d42070f381c23b47c) )
1731 ROM_LOAD32_WORD( "ou1obj1u.8b", 0x0400002, 0x200000, CRC(999de386) SHA1(d4780ab1929a3e2c2df464363d6451a2bcecb2a2) )
1732 ROM_LOAD32_WORD( "ou1obj2l.4a", 0x0800000, 0x200000, CRC(30386cd0) SHA1(3563c5378288da58136f102381373bd6fcaeec21) )
1733 ROM_LOAD32_WORD( "ou1obj2u.8a", 0x0800002, 0x200000, CRC(ccada5f8) SHA1(75ed95bb295780126879d67bba4d0ae1da63c928) )
1734 ROM_LOAD32_WORD( "ou1obj3l.6c", 0x0c00000, 0x200000, CRC(5f41b44e) SHA1(3f5376fcd3e15af772df65b8eda4d5ee07ee5664) )
1735 ROM_LOAD32_WORD( "ou1obj3u.9c", 0x0c00002, 0x200000, CRC(bc852c8e) SHA1(4863302c45ee16aaf2c36dac07aceaf287959c53) )
1736 ROM_LOAD32_WORD( "ou1obj4l.6b", 0x1000000, 0x200000, CRC(99a5f9d7) SHA1(b0f46f4ac357918137031a19c36a56a47b7aefd6) )
1737 ROM_LOAD32_WORD( "ou1obj4u.9b", 0x1000002, 0x200000, CRC(70ecaabb) SHA1(521c6849526fb271e6447f6c4f5bfa081f96b91e) )
1738
1739 ROM_REGION( 0x600000, "c169roz", 0 )
1740 ROM_LOAD( "ou1-rot0.3d", 0x000000, 0x200000, CRC(a50c67c8) SHA1(432b8451eb9eaa3078134fce1e5e2d58a8b64be3) )
1741 ROM_LOAD( "ou1-rot1.3c", 0x200000, 0x200000, CRC(14866780) SHA1(4a54151fada4dfba7232e53e40623e5697eeb7db) )
1742 ROM_LOAD( "ou1-rot2.3b", 0x400000, 0x200000, CRC(55ccf3af) SHA1(d98489aaa840cbffb21c47609961c1163b0336f3) )
1743
1744 ROM_REGION( 0x200000, "c123tmap", 0 )
1745 ROM_LOAD( "ou1-scr0.1d", 0x000000, 0x200000, CRC(b3b3f2e9) SHA1(541bd7e9ba12aff4ec4033bd9c6bb19476acb3c4) )
1746
1747 ROM_REGION32_BE( 0x100000, "data", 0 )
1748 ROM_LOAD16_WORD_SWAP( "ou1dat0.20a", 0x00000, 0x80000, CRC(1a49aead) SHA1(df243aff1a6fb5bcf4d5d883c5af2374a4aff477) )
1749 ROM_LOAD16_WORD_SWAP( "ou1dat1.20b", 0x80000, 0x80000, CRC(63bb119d) SHA1(d4c2820243b84c3f5cdf7f9e66bb50f53d0efed2) )
1750 ROM_END
1751
1752 ROM_START( outfxiesj )
1753 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1754 ROM_LOAD32_WORD( "ou1_mprl.11c", 0x00002, 0x80000, CRC(d3b9e530) SHA1(3f5fe5eea817a23dfe42e76f32912ce94d4c49c9) )
1755 ROM_LOAD32_WORD( "ou1_mpru.11d", 0x00000, 0x80000, CRC(d98308fb) SHA1(fdefeebf56464a20e3aaefd88df4eee9f7b5c4f3) )
1756
1757 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1758 ROM_LOAD( "ou1spr0.5b", 0, 0x80000, CRC(60cee566) SHA1(2f3b96793816d90011586e0f9f71c58b636b6d4c) )
1759
1760 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1761 ROM_LOAD( "ou1voi0.6n", 0, 0x200000, CRC(2d8fb271) SHA1(bde9d45979728f5a2cd8ec89f5f81bf16b694cc2) )
1762
1763 ROM_REGION( 0x200000, "c123tmap:mask", 0 )
1764 ROM_LOAD( "ou1shas.12s", 0, 0x200000,CRC(9bcb0397) SHA1(54a32b6394d0e6f51bfd281f8a4bafce6ddf6246) )
1765
1766 ROM_REGION( 0x200000, "c169roz:mask", 0 )
1767 ROM_LOAD( "ou1shar.18s", 0, 0x200000, CRC(fbb48194) SHA1(2d3ec5bc519fad2b755018f83fadfe0cba13c292) )
1768
1769 ROM_REGION( 0x2000000, "c355spr", 0 )
1770 ROM_LOAD32_WORD( "ou1obj0l.4c", 0x0000000, 0x200000, CRC(1b4f7184) SHA1(a05d67842fce92f321d1fdd3bd30aa3427775a0c) )
1771 ROM_LOAD32_WORD( "ou1obj0u.8c", 0x0000002, 0x200000, CRC(d0a69794) SHA1(07d449e54e9971abeb9cd5bb7b372270fafa8bac) )
1772 ROM_LOAD32_WORD( "ou1obj1l.4b", 0x0400000, 0x200000, CRC(48a93e84) SHA1(6935ec161a12237d4cec732d42070f381c23b47c) )
1773 ROM_LOAD32_WORD( "ou1obj1u.8b", 0x0400002, 0x200000, CRC(999de386) SHA1(d4780ab1929a3e2c2df464363d6451a2bcecb2a2) )
1774 ROM_LOAD32_WORD( "ou1obj2l.4a", 0x0800000, 0x200000, CRC(30386cd0) SHA1(3563c5378288da58136f102381373bd6fcaeec21) )
1775 ROM_LOAD32_WORD( "ou1obj2u.8a", 0x0800002, 0x200000, CRC(ccada5f8) SHA1(75ed95bb295780126879d67bba4d0ae1da63c928) )
1776 ROM_LOAD32_WORD( "ou1obj3l.6c", 0x0c00000, 0x200000, CRC(5f41b44e) SHA1(3f5376fcd3e15af772df65b8eda4d5ee07ee5664) )
1777 ROM_LOAD32_WORD( "ou1obj3u.9c", 0x0c00002, 0x200000, CRC(bc852c8e) SHA1(4863302c45ee16aaf2c36dac07aceaf287959c53) )
1778 ROM_LOAD32_WORD( "ou1obj4l.6b", 0x1000000, 0x200000, CRC(99a5f9d7) SHA1(b0f46f4ac357918137031a19c36a56a47b7aefd6) )
1779 ROM_LOAD32_WORD( "ou1obj4u.9b", 0x1000002, 0x200000, CRC(70ecaabb) SHA1(521c6849526fb271e6447f6c4f5bfa081f96b91e) )
1780
1781 ROM_REGION( 0x600000, "c169roz", 0 )
1782 ROM_LOAD( "ou1-rot0.3d", 0x000000, 0x200000, CRC(a50c67c8) SHA1(432b8451eb9eaa3078134fce1e5e2d58a8b64be3) )
1783 ROM_LOAD( "ou1-rot1.3c", 0x200000, 0x200000, CRC(14866780) SHA1(4a54151fada4dfba7232e53e40623e5697eeb7db) )
1784 ROM_LOAD( "ou1-rot2.3b", 0x400000, 0x200000, CRC(55ccf3af) SHA1(d98489aaa840cbffb21c47609961c1163b0336f3) )
1785
1786 ROM_REGION( 0x200000, "c123tmap", 0 )
1787 ROM_LOAD( "ou1-scr0.1d", 0x000000, 0x200000, CRC(b3b3f2e9) SHA1(541bd7e9ba12aff4ec4033bd9c6bb19476acb3c4) )
1788
1789 ROM_REGION32_BE( 0x100000, "data", 0 )
1790 ROM_LOAD16_WORD_SWAP( "ou1dat0.20a", 0x00000, 0x80000, CRC(1a49aead) SHA1(df243aff1a6fb5bcf4d5d883c5af2374a4aff477) )
1791 ROM_LOAD16_WORD_SWAP( "ou1dat1.20b", 0x80000, 0x80000, CRC(63bb119d) SHA1(d4c2820243b84c3f5cdf7f9e66bb50f53d0efed2) )
1792 ROM_END
1793
1794 ROM_START( outfxiesa ) /* briefly shows "For use in Japan" notice, but Japanese text removed from game play. A Korean version? */
1795 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1796 ROM_LOAD32_WORD( "mprl.11c", 0x00002, 0x80000, CRC(22cd638d) SHA1(7b11ded9f2265678bb96b3fb706ed5fa37745511) ) // no label on ROM
1797 ROM_LOAD32_WORD( "mpru.11d", 0x00000, 0x80000, CRC(a50f1cf9) SHA1(1c07c7e1ff2bb621c6fb249ae2e650097ce53aea) ) // no label on ROM
1798
1799 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1800 ROM_LOAD( "ou1spr0.5b", 0, 0x80000, CRC(60cee566) SHA1(2f3b96793816d90011586e0f9f71c58b636b6d4c) )
1801
1802 ROM_REGION( 0x1000000, "c352", 0 ) // Samples
1803 ROM_LOAD( "ou1voi0.6n", 0, 0x200000, CRC(2d8fb271) SHA1(bde9d45979728f5a2cd8ec89f5f81bf16b694cc2) )
1804
1805 ROM_REGION( 0x200000, "c123tmap:mask", 0 )
1806 ROM_LOAD( "ou1shas.12s", 0, 0x200000,CRC(9bcb0397) SHA1(54a32b6394d0e6f51bfd281f8a4bafce6ddf6246) )
1807
1808 ROM_REGION( 0x200000, "c169roz:mask", 0 )
1809 ROM_LOAD( "ou1shar.18s", 0, 0x200000, CRC(fbb48194) SHA1(2d3ec5bc519fad2b755018f83fadfe0cba13c292) )
1810
1811 ROM_REGION( 0x2000000, "c355spr", 0 )
1812 ROM_LOAD32_WORD( "ou1obj0l.4c", 0x0000000, 0x200000, CRC(1b4f7184) SHA1(a05d67842fce92f321d1fdd3bd30aa3427775a0c) )
1813 ROM_LOAD32_WORD( "ou1obj0u.8c", 0x0000002, 0x200000, CRC(d0a69794) SHA1(07d449e54e9971abeb9cd5bb7b372270fafa8bac) )
1814 ROM_LOAD32_WORD( "ou1obj1l.4b", 0x0400000, 0x200000, CRC(48a93e84) SHA1(6935ec161a12237d4cec732d42070f381c23b47c) )
1815 ROM_LOAD32_WORD( "ou1obj1u.8b", 0x0400002, 0x200000, CRC(999de386) SHA1(d4780ab1929a3e2c2df464363d6451a2bcecb2a2) )
1816 ROM_LOAD32_WORD( "ou1obj2l.4a", 0x0800000, 0x200000, CRC(30386cd0) SHA1(3563c5378288da58136f102381373bd6fcaeec21) )
1817 ROM_LOAD32_WORD( "ou1obj2u.8a", 0x0800002, 0x200000, CRC(ccada5f8) SHA1(75ed95bb295780126879d67bba4d0ae1da63c928) )
1818 ROM_LOAD32_WORD( "ou1obj3l.6c", 0x0c00000, 0x200000, CRC(5f41b44e) SHA1(3f5376fcd3e15af772df65b8eda4d5ee07ee5664) )
1819 ROM_LOAD32_WORD( "ou1obj3u.9c", 0x0c00002, 0x200000, CRC(bc852c8e) SHA1(4863302c45ee16aaf2c36dac07aceaf287959c53) )
1820 ROM_LOAD32_WORD( "ou1obj4l.6b", 0x1000000, 0x200000, CRC(99a5f9d7) SHA1(b0f46f4ac357918137031a19c36a56a47b7aefd6) )
1821 ROM_LOAD32_WORD( "ou1obj4u.9b", 0x1000002, 0x200000, CRC(70ecaabb) SHA1(521c6849526fb271e6447f6c4f5bfa081f96b91e) )
1822
1823 ROM_REGION( 0x600000, "c169roz", 0 )
1824 ROM_LOAD( "ou1-rot0.3d", 0x000000, 0x200000, CRC(a50c67c8) SHA1(432b8451eb9eaa3078134fce1e5e2d58a8b64be3) )
1825 ROM_LOAD( "ou1-rot1.3c", 0x200000, 0x200000, CRC(14866780) SHA1(4a54151fada4dfba7232e53e40623e5697eeb7db) )
1826 ROM_LOAD( "ou1-rot2.3b", 0x400000, 0x200000, CRC(55ccf3af) SHA1(d98489aaa840cbffb21c47609961c1163b0336f3) )
1827
1828 ROM_REGION( 0x200000, "c123tmap", 0 )
1829 ROM_LOAD( "ou1-scr0.1d", 0x000000, 0x200000, CRC(b3b3f2e9) SHA1(541bd7e9ba12aff4ec4033bd9c6bb19476acb3c4) )
1830
1831 ROM_REGION32_BE( 0x100000, "data", 0 )
1832 ROM_LOAD16_WORD_SWAP( "ou1dat0.20a", 0x00000, 0x80000, CRC(1a49aead) SHA1(df243aff1a6fb5bcf4d5d883c5af2374a4aff477) )
1833 ROM_LOAD16_WORD_SWAP( "ou1dat1.20b", 0x80000, 0x80000, CRC(63bb119d) SHA1(d4c2820243b84c3f5cdf7f9e66bb50f53d0efed2) )
1834 ROM_END
1835
1836 ROM_START( machbrkr ) /* Defaults to Asia / 4 Player cabinet */
1837 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1838 ROM_LOAD32_WORD( "mb2_mprl.11c", 0x00002, 0x80000, CRC(81e2c566) SHA1(e4553938114581ccdedc09309c646144300039ed) )
1839 ROM_LOAD32_WORD( "mb2_mpru.11d", 0x00000, 0x80000, CRC(e8ccec89) SHA1(495be58a18e9122c0fa44bac409ef14b588387e7) )
1840
1841 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1842 ROM_LOAD( "mb1_spr0.5b", 0, 0x80000, CRC(d10f6272) SHA1(cb99e06e050dbf86998ea51ef2ca130b2acfb2f6) )
1843
1844 ROM_REGION( 0x1000000, "c352", 0 )
1845 ROM_LOAD( "mb1_voi0.6n", 0x000000, 0x200000, CRC(d363ca3b) SHA1(71650b66ca3eb00f6ad7d3f1df0f37210b77b942) )
1846 ROM_RELOAD( 0x400000, 0x200000)
1847 ROM_LOAD( "mb1_voi1.6p", 0x800000, 0x200000, CRC(7e1c2603) SHA1(533098a54fb897931f1d75be9e69a5c047e4c446) )
1848 ROM_RELOAD( 0xc00000, 0x200000)
1849
1850 ROM_REGION( 0x200000, "c123tmap:mask", 0 )
1851 ROM_LOAD( "mb1_shas.12s", 0, 0x100000, CRC(c51c614b) SHA1(519ecad2e4543c05ec35a727f4c875ab006291af) )
1852
1853 ROM_REGION( 0x200000, "c169roz:mask", 0 )
1854 ROM_LOAD( "mb1_shar.18s", 0, 0x080000, CRC(d9329b10) SHA1(149c8804c07350f47af36bc7902371f1dfbed272) )
1855
1856 ROM_REGION( 0x2000000, "c355spr", 0 )
1857 ROM_LOAD32_WORD( "mb1obj0l.4c", 0x0000000, 0x200000, CRC(056e6b1c) SHA1(44e49de80c925c8fbe04bf9328a77a50a305a5a7) )
1858 ROM_LOAD32_WORD( "mb1obj0u.8c", 0x0000002, 0x200000, CRC(e19b1714) SHA1(ff43bf3c8e8698934c4057c7b4c72db73929e2af) )
1859 ROM_LOAD32_WORD( "mb1obj1l.4b", 0x0400000, 0x200000, CRC(af69f7f1) SHA1(414544ec1a9aaffb751beaf63d937ce78d0cf9c6) )
1860 ROM_LOAD32_WORD( "mb1obj1u.8b", 0x0400002, 0x200000, CRC(e8ff9082) SHA1(a8c7feb33f6243f1f3bda00deffa695ac2b19171) )
1861 ROM_LOAD32_WORD( "mb1obj2l.4a", 0x0800000, 0x200000, CRC(3a5c7379) SHA1(ffe9a229eb04a894e5f3bb8ac2fc4617b5413ac3) )
1862 ROM_LOAD32_WORD( "mb1obj2u.8a", 0x0800002, 0x200000, CRC(b59cf5e0) SHA1(eee7511f117a4c1a24e4187e3f30e4d66f914a81) )
1863 ROM_LOAD32_WORD( "mb1obj3l.6c", 0x0c00000, 0x200000, CRC(9a765d58) SHA1(2e9ea0f76f80383fcf093e947e1fe161743e33fb) )
1864 ROM_LOAD32_WORD( "mb1obj3u.9c", 0x0c00002, 0x200000, CRC(5329c693) SHA1(955b3b8b9813826347a1211f71fa0a294b759ccd) )
1865 ROM_LOAD32_WORD( "mb1obj4l.6b", 0x1000000, 0x200000, CRC(a650b05e) SHA1(b247699433c7bf4b6ae990fc06255cfd48a248dd) )
1866 ROM_LOAD32_WORD( "mb1obj4u.9b", 0x1000002, 0x200000, CRC(6d0c37e9) SHA1(3a3feb74b890e0a933dcc791e5eee1fb4bdcbb69) )
1867
1868 ROM_REGION( 0x400000, "c169roz", 0 )
1869 ROM_LOAD( "mb1_rot0.3d", 0x000000, 0x200000, CRC(bc353630) SHA1(2bbddda632298899716394ddcfe51412576ca74a) )
1870 ROM_LOAD( "mb1_rot1.3c", 0x200000, 0x200000, CRC(cf7688cb) SHA1(29a040ce2c4e3bf671cff1a7a1ade06103db236a) )
1871
1872 ROM_REGION( 0x600000, "c123tmap", 0 )
1873 ROM_LOAD( "mb1_scr0.1d", 0x000000, 0x200000, CRC(c678d5f3) SHA1(98d1523bef50d444be9485c4e7f6932cccbea191) )
1874 ROM_LOAD( "mb1_scr1.1c", 0x200000, 0x200000, CRC(fb2b1939) SHA1(bf9d7b93205e7012aa86693f3d2ba8f4d729bc97) )
1875 ROM_LOAD( "mb1_scr2.1b", 0x400000, 0x200000, CRC(0e6097a5) SHA1(b6c64b3e34ba913138b6b7c3d99d2be4f3ceda08) )
1876
1877 ROM_REGION32_BE( 0x100000, "data", 0 )
1878 ROM_LOAD16_WORD_SWAP( "mb1_dat0.20a", 0x00000, 0x80000, CRC(fb2e3cd1) SHA1(019b1d645a07619036522f42e0b9a537f39b6b93) )
1879 ROM_END
1880
1881 ROM_START( machbrkrj )
1882 ROM_REGION( 0x100000, "maincpu", 0 ) /* main program */
1883 ROM_LOAD32_WORD( "mb1_mprl.11c", 0x00002, 0x80000, CRC(86cf0644) SHA1(07eeadda1d94c9be2f882edb6f2eb0b98292e500) )
1884 ROM_LOAD32_WORD( "mb1_mpru.11d", 0x00000, 0x80000, CRC(fb1ff916) SHA1(e0ba96c1f26a60f87d8050e582e164d91e132183) )
1885
1886 ROM_REGION16_LE( 0x80000, "c75data", 0 ) /* sound data */
1887 ROM_LOAD( "mb1_spr0.5b", 0, 0x80000, CRC(d10f6272) SHA1(cb99e06e050dbf86998ea51ef2ca130b2acfb2f6) )
1888
1889 ROM_REGION( 0x1000000, "c352", 0 )
1890 ROM_LOAD( "mb1_voi0.6n", 0x000000, 0x200000, CRC(d363ca3b) SHA1(71650b66ca3eb00f6ad7d3f1df0f37210b77b942) )
1891 ROM_RELOAD( 0x400000, 0x200000)
1892 ROM_LOAD( "mb1_voi1.6p", 0x800000, 0x200000, CRC(7e1c2603) SHA1(533098a54fb897931f1d75be9e69a5c047e4c446) )
1893 ROM_RELOAD( 0xc00000, 0x200000)
1894
1895 ROM_REGION( 0x200000, "c123tmap:mask", 0 )
1896 ROM_LOAD( "mb1_shas.12s", 0, 0x100000, CRC(c51c614b) SHA1(519ecad2e4543c05ec35a727f4c875ab006291af) )
1897
1898 ROM_REGION( 0x200000, "c169roz:mask", 0 )
1899 ROM_LOAD( "mb1_shar.18s", 0, 0x080000, CRC(d9329b10) SHA1(149c8804c07350f47af36bc7902371f1dfbed272) )
1900
1901 ROM_REGION( 0x2000000, "c355spr", 0 )
1902 ROM_LOAD32_WORD( "mb1obj0l.4c", 0x0000000, 0x200000, CRC(056e6b1c) SHA1(44e49de80c925c8fbe04bf9328a77a50a305a5a7) )
1903 ROM_LOAD32_WORD( "mb1obj0u.8c", 0x0000002, 0x200000, CRC(e19b1714) SHA1(ff43bf3c8e8698934c4057c7b4c72db73929e2af) )
1904 ROM_LOAD32_WORD( "mb1obj1l.4b", 0x0400000, 0x200000, CRC(af69f7f1) SHA1(414544ec1a9aaffb751beaf63d937ce78d0cf9c6) )
1905 ROM_LOAD32_WORD( "mb1obj1u.8b", 0x0400002, 0x200000, CRC(e8ff9082) SHA1(a8c7feb33f6243f1f3bda00deffa695ac2b19171) )
1906 ROM_LOAD32_WORD( "mb1obj2l.4a", 0x0800000, 0x200000, CRC(3a5c7379) SHA1(ffe9a229eb04a894e5f3bb8ac2fc4617b5413ac3) )
1907 ROM_LOAD32_WORD( "mb1obj2u.8a", 0x0800002, 0x200000, CRC(b59cf5e0) SHA1(eee7511f117a4c1a24e4187e3f30e4d66f914a81) )
1908 ROM_LOAD32_WORD( "mb1obj3l.6c", 0x0c00000, 0x200000, CRC(9a765d58) SHA1(2e9ea0f76f80383fcf093e947e1fe161743e33fb) )
1909 ROM_LOAD32_WORD( "mb1obj3u.9c", 0x0c00002, 0x200000, CRC(5329c693) SHA1(955b3b8b9813826347a1211f71fa0a294b759ccd) )
1910 ROM_LOAD32_WORD( "mb1obj4l.6b", 0x1000000, 0x200000, CRC(a650b05e) SHA1(b247699433c7bf4b6ae990fc06255cfd48a248dd) )
1911 ROM_LOAD32_WORD( "mb1obj4u.9b", 0x1000002, 0x200000, CRC(6d0c37e9) SHA1(3a3feb74b890e0a933dcc791e5eee1fb4bdcbb69) )
1912
1913 ROM_REGION( 0x400000, "c169roz", 0 )
1914 ROM_LOAD( "mb1_rot0.3d", 0x000000, 0x200000, CRC(bc353630) SHA1(2bbddda632298899716394ddcfe51412576ca74a) )
1915 ROM_LOAD( "mb1_rot1.3c", 0x200000, 0x200000, CRC(cf7688cb) SHA1(29a040ce2c4e3bf671cff1a7a1ade06103db236a) )
1916
1917 ROM_REGION( 0x600000, "c123tmap", 0 )
1918 ROM_LOAD( "mb1_scr0.1d", 0x000000, 0x200000, CRC(c678d5f3) SHA1(98d1523bef50d444be9485c4e7f6932cccbea191) )
1919 ROM_LOAD( "mb1_scr1.1c", 0x200000, 0x200000, CRC(fb2b1939) SHA1(bf9d7b93205e7012aa86693f3d2ba8f4d729bc97) )
1920 ROM_LOAD( "mb1_scr2.1b", 0x400000, 0x200000, CRC(0e6097a5) SHA1(b6c64b3e34ba913138b6b7c3d99d2be4f3ceda08) )
1921
1922 ROM_REGION32_BE( 0x100000, "data", 0 )
1923 ROM_LOAD16_WORD_SWAP( "mb1_dat0.20a", 0x00000, 0x80000, CRC(fb2e3cd1) SHA1(019b1d645a07619036522f42e0b9a537f39b6b93) )
1924 ROM_END
1925
1926
1927 /***************************************************************/
1928
1929 /* YEAR, NAME, PARENT, MACHINE, INPUT, CLASS, INIT, MONITOR,COMPANY,FULLNAME, FLAGS */
1930 GAME( 1994, nebulray, 0, namconb1, namconb1, namconb1_state, init_nebulray, ROT90, "Namco", "Nebulas Ray (World, NR2)", MACHINE_SUPPORTS_SAVE )
1931 GAME( 1994, nebulrayj, nebulray, namconb1, namconb1, namconb1_state, init_nebulray, ROT90, "Namco", "Nebulas Ray (Japan, NR1)", MACHINE_SUPPORTS_SAVE )
1932 GAME( 1994, ptblank, 0, namconb1, gunbulet, namconb1_state, init_gunbulet, ROT0, "Namco", "Point Blank (World, GN2 Rev B, set 1)", MACHINE_SUPPORTS_SAVE )
1933 GAME( 1994, ptblanka, ptblank, namconb1, gunbulet, namconb1_state, init_gunbulet, ROT0, "Namco", "Point Blank (World, GN2 Rev B, set 2)", MACHINE_SUPPORTS_SAVE )
1934 GAME( 1994, gunbuletj, ptblank, namconb1, gunbulet, namconb1_state, init_gunbulet, ROT0, "Namco", "Gun Bullet (Japan, GN1)", MACHINE_SUPPORTS_SAVE )
1935 GAME( 1994, gunbuletw, ptblank, namconb1, gunbulet, namconb1_state, init_gunbulet, ROT0, "Namco", "Gun Bullet (World, GN3 Rev B)", MACHINE_SUPPORTS_SAVE )
1936 GAME( 1993, gslugrsj, 0, namconb1, namconb1, namconb1_state, init_gslgr94u, ROT0, "Namco", "Great Sluggers (Japan)", MACHINE_SUPPORTS_SAVE )
1937 GAME( 1994, gslgr94u, 0, namconb1, namconb1, namconb1_state, init_gslgr94u, ROT0, "Namco", "Great Sluggers '94", MACHINE_SUPPORTS_SAVE )
1938 GAME( 1994, gslgr94j, gslgr94u, namconb1, namconb1, namconb1_state, init_gslgr94j, ROT0, "Namco", "Great Sluggers '94 (Japan)", MACHINE_SUPPORTS_SAVE )
1939 GAME( 1995, sws95, 0, namconb1, namconb1, namconb1_state, init_sws95, ROT0, "Namco", "Super World Stadium '95 (Japan)", MACHINE_SUPPORTS_SAVE )
1940 GAME( 1996, sws96, 0, namconb1, namconb1, namconb1_state, init_sws96, ROT0, "Namco", "Super World Stadium '96 (Japan)", MACHINE_SUPPORTS_SAVE )
1941 GAME( 1997, sws97, 0, namconb1, namconb1, namconb1_state, init_sws97, ROT0, "Namco", "Super World Stadium '97 (Japan)", MACHINE_SUPPORTS_SAVE )
1942 GAME( 1994, vshoot, 0, namconb1, namconb1, namconb1_state, init_vshoot, ROT0, "Namco", "J-League Soccer V-Shoot (Japan)", MACHINE_SUPPORTS_SAVE )
1943
1944 GAME( 1994, outfxies, 0, outfxies, namconb1, namconb1_state, init_outfxies, ROT0, "Namco", "The Outfoxies (World, OU2)", MACHINE_SUPPORTS_SAVE )
1945 GAME( 1994, outfxiesj, outfxies, outfxies, namconb1, namconb1_state, init_outfxies, ROT0, "Namco", "The Outfoxies (Japan, OU1)", MACHINE_SUPPORTS_SAVE )
1946 GAME( 1994, outfxiesa, outfxies, outfxies, namconb1, namconb1_state, init_outfxies, ROT0, "Namco", "The Outfoxies (Korea?)", MACHINE_SUPPORTS_SAVE )
1947 GAME( 1995, machbrkr, 0, machbrkr, namconb1, namconb1_state, init_machbrkr, ROT0, "Namco", "Mach Breakers (World, MB2)", MACHINE_SUPPORTS_SAVE ) /* Title screen doesn't show subtitle "Numan Athletics 2" */
1948 GAME( 1995, machbrkrj, machbrkr, machbrkr, namconb1, namconb1_state, init_machbrkr, ROT0, "Namco", "Mach Breakers - Numan Athletics 2 (Japan, MB1)", MACHINE_SUPPORTS_SAVE )
1949