~ubuntu-branches/debian/sid/mame/sid

« back to all changes in this revision

Viewing changes to mess/src/mame/drivers/namconb1.c

  • Committer: Package Import Robot
  • Author(s): Jordi Mallach, Jordi Mallach, Emmanuel Kasper
  • Date: 2011-12-19 22:56:27 UTC
  • mfrom: (0.1.2)
  • Revision ID: package-import@ubuntu.com-20111219225627-ub5oga1oys4ogqzm
Tags: 0.144-1
[ Jordi Mallach ]
* Fix syntax errors in DEP5 copyright file (lintian).
* Use a versioned copyright Format specification field.
* Update Vcs-* URLs.
* Move transitional packages to the new metapackages section, and make
  them priority extra.
* Remove references to GNU/Linux and MESS sources from copyright.
* Add build variables for s390x.
* Use .xz tarballs as it cuts 4MB for the upstream sources.
* Add nplayers.ini as a patch. Update copyright file to add CC-BY-SA-3.0.

[ Emmanuel Kasper ]
* New upstream release. Closes: #651538.
* Add Free Desktop compliant png icons of various sizes taken from
  the hydroxygen iconset
* Mess is now built from a new source package, to avoid possible source
  incompatibilities between mame and the mess overlay.
* Mame-tools are not built from the mame source package anymore, but
  from the mess source package

Show diffs side-by-side

added added

removed removed

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