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

« back to all changes in this revision

Viewing changes to mess/src/mame/drivers/model2.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
 
    Sega Model 2: i960KB + (5x TGP) or (2x SHARC) or (2x TGPx4)
3
 
    System 24 tilemaps
4
 
    Custom Sega/Lockheed-Martin rasterization hardware
5
 
    (68000 + YM3834 + 2x MultiPCM) or (68000 + SCSP)
6
 
 
7
 
    Hardware and protection reverse-engineering and general assistance by ElSemi.
8
 
    MAME driver by R. Belmont, Olivier Galibert, and ElSemi.
9
 
 
10
 
    OK (controls may be wrong/missing/incomplete)
11
 
    --
12
 
    daytona/daytonat/daytonam
13
 
    desert
14
 
    vcop
15
 
    vf2
16
 
    vcop2
17
 
    zerogun
18
 
    gunblade
19
 
    indy500
20
 
    bel
21
 
    hotd
22
 
    topskatr
23
 
    von
24
 
    fvipers
25
 
    schamp
26
 
    stcc
27
 
    srallyc
28
 
    skytargt
29
 
    dynamcop
30
 
    dynabb
31
 
    lastbrnj/lastbrnx
32
 
    skisuprg
33
 
 
34
 
    almost OK
35
 
    ---------
36
 
    overrev: sound CPU crashes.
37
 
    vstriker: shows some attract mode, then hangs
38
 
    manxtt: no escape from "active motion slider" tutorial (needs analog inputs), bypass it by entering then exiting service mode
39
 
    manxtt: crashes after the title screen, the TGP is the cause
40
 
    pltkids/pltkidsa: crashes after some time of gameplay.
41
 
    rchase2: fails drive bd i/o check
42
 
 
43
 
    TODO
44
 
    ----
45
 
    Controls are pretty basic right now
46
 
    Some games (sgt24h, indy500) hangs at random places, presumably due to a regression with the SHARC fifo comms
47
 
    Sound doesn't work properly in all games
48
 
    System 24 tilemaps need more advanced linescroll support (see fvipers, daytona)
49
 
    2C needs DSP still
50
 
 
51
 
======================================================================================================================================
52
 
 
53
 
    Sega Model 2 Feedback Driver Board
54
 
    ----------------------------------
55
 
 
56
 
 
57
 
    PCB Layout
58
 
    ----------
59
 
 
60
 
    SJ25-0207-01
61
 
    838-10646 (Daytona)
62
 
    838-11661 (Sega Rally)
63
 
    |---------------------------------------------|
64
 
    |             7-SEG-LED 7-SEG-LED             |
65
 
    |                                             |
66
 
    |   315-5296      315-5296                    |
67
 
    |                 DSW(8)                      |
68
 
    |    M6253                      MB3759        |
69
 
    |                                             |
70
 
    |           GAL.IC23  ROM.IC12                |
71
 
    |                                             |
72
 
    |     Z80                                     |
73
 
    |8MHz   MB3771 MB3771  8464                   |
74
 
    |---------------------------------------------|
75
 
    Notes:
76
 
          Z80      - clock 4.000MHz [8/2]
77
 
          8464     - 8k x8 SRAM
78
 
          ROM.IC12 - EPR-16488A for Daytona
79
 
                     EPR-17891  for Sega Rally
80
 
          GAL      - Lattice GAL16V8B stamped 315-5625 common to both Daytona and Sega Rally
81
 
          DSW(8)   - 8-Position dip switch, all OFF
82
 
          M6253    - Oki M6253
83
 
          315-5296 - Sega Custom QFP100
84
 
          plus several transistors, resistors, a couple of relays and 8 connectors.
85
 
 
86
 
 
87
 
*/
88
 
 
89
 
#include "emu.h"
90
 
#include "deprecat.h"
91
 
#include "machine/eeprom.h"
92
 
#include "machine/nvram.h"
93
 
#include "video/segaic24.h"
94
 
#include "cpu/i960/i960.h"
95
 
#include "cpu/m68000/m68000.h"
96
 
#include "cpu/sharc/sharc.h"
97
 
#include "cpu/mb86233/mb86233.h"
98
 
#include "cpu/z80/z80.h"
99
 
#include "sound/scsp.h"
100
 
#include "sound/multipcm.h"
101
 
#include "sound/2612intf.h"
102
 
#include "includes/model2.h"
103
 
 
104
 
 
105
 
enum {
106
 
        DSP_TYPE_TGP    = 1,
107
 
        DSP_TYPE_SHARC  = 2,
108
 
        DSP_TYPE_TGPX4  = 3,
109
 
};
110
 
 
111
 
 
112
 
#define COPRO_FIFOIN_SIZE       32000
113
 
static int copro_fifoin_pop(device_t *device, UINT32 *result)
114
 
{
115
 
        model2_state *state = device->machine().driver_data<model2_state>();
116
 
        UINT32 r;
117
 
 
118
 
        if (state->m_copro_fifoin_num == 0)
119
 
        {
120
 
                if (state->m_dsp_type == DSP_TYPE_TGP)
121
 
                        return 0;
122
 
 
123
 
                fatalerror("Copro FIFOIN underflow (at %08X)", cpu_get_pc(device));
124
 
                return 0;
125
 
        }
126
 
 
127
 
        r = state->m_copro_fifoin_data[state->m_copro_fifoin_rpos++];
128
 
 
129
 
        if (state->m_copro_fifoin_rpos == COPRO_FIFOIN_SIZE)
130
 
        {
131
 
                state->m_copro_fifoin_rpos = 0;
132
 
        }
133
 
 
134
 
        state->m_copro_fifoin_num--;
135
 
        if (state->m_dsp_type == DSP_TYPE_SHARC)
136
 
        {
137
 
                if (state->m_copro_fifoin_num == 0)
138
 
                {
139
 
                        sharc_set_flag_input(device, 0, ASSERT_LINE);
140
 
                }
141
 
                else
142
 
                {
143
 
                        sharc_set_flag_input(device, 0, CLEAR_LINE);
144
 
                }
145
 
        }
146
 
 
147
 
        *result = r;
148
 
 
149
 
        return 1;
150
 
}
151
 
 
152
 
static void copro_fifoin_push(device_t *device, UINT32 data)
153
 
{
154
 
        model2_state *state = device->machine().driver_data<model2_state>();
155
 
        if (state->m_copro_fifoin_num == COPRO_FIFOIN_SIZE)
156
 
        {
157
 
                fatalerror("Copro FIFOIN overflow (at %08X)", cpu_get_pc(device));
158
 
                return;
159
 
        }
160
 
 
161
 
        //mame_printf_debug("COPRO FIFOIN at %08X, %08X, %f\n", cpu_get_pc(device), data, *(float*)&data);
162
 
 
163
 
        state->m_copro_fifoin_data[state->m_copro_fifoin_wpos++] = data;
164
 
        if (state->m_copro_fifoin_wpos == COPRO_FIFOIN_SIZE)
165
 
        {
166
 
                state->m_copro_fifoin_wpos = 0;
167
 
        }
168
 
 
169
 
        state->m_copro_fifoin_num++;
170
 
 
171
 
        // clear FIFO empty flag on SHARC
172
 
        if (state->m_dsp_type == DSP_TYPE_SHARC)
173
 
        {
174
 
                sharc_set_flag_input(device, 0, CLEAR_LINE);
175
 
        }
176
 
}
177
 
 
178
 
 
179
 
#define COPRO_FIFOOUT_SIZE      32000
180
 
static UINT32 copro_fifoout_pop(address_space *space)
181
 
{
182
 
        model2_state *state = space->machine().driver_data<model2_state>();
183
 
        UINT32 r;
184
 
 
185
 
        if (state->m_copro_fifoout_num == 0)
186
 
        {
187
 
                /* Reading from empty FIFO causes the i960 to enter wait state */
188
 
                i960_stall(&space->device());
189
 
 
190
 
                /* spin the main cpu and let the TGP catch up */
191
 
                device_spin_until_time(&space->device(), attotime::from_usec(100));
192
 
 
193
 
                return 0;
194
 
        }
195
 
 
196
 
        r = state->m_copro_fifoout_data[state->m_copro_fifoout_rpos++];
197
 
 
198
 
        if (state->m_copro_fifoout_rpos == COPRO_FIFOOUT_SIZE)
199
 
        {
200
 
                state->m_copro_fifoout_rpos = 0;
201
 
        }
202
 
 
203
 
        state->m_copro_fifoout_num--;
204
 
 
205
 
//  logerror("COPRO FIFOOUT POP %08X, %f, %d\n", r, *(float*)&r,state->m_copro_fifoout_num);
206
 
 
207
 
        // set SHARC flag 1: 0 if space available, 1 if FIFO full
208
 
        if (state->m_dsp_type == DSP_TYPE_SHARC)
209
 
        {
210
 
                if (state->m_copro_fifoout_num == COPRO_FIFOOUT_SIZE)
211
 
                {
212
 
                        sharc_set_flag_input(space->machine().device("dsp"), 1, ASSERT_LINE);
213
 
                }
214
 
                else
215
 
                {
216
 
                        sharc_set_flag_input(space->machine().device("dsp"), 1, CLEAR_LINE);
217
 
                }
218
 
        }
219
 
 
220
 
        return r;
221
 
}
222
 
 
223
 
static void copro_fifoout_push(device_t *device, UINT32 data)
224
 
{
225
 
        model2_state *state = device->machine().driver_data<model2_state>();
226
 
        //if (state->m_copro_fifoout_wpos == state->m_copro_fifoout_rpos)
227
 
        if (state->m_copro_fifoout_num == COPRO_FIFOOUT_SIZE)
228
 
        {
229
 
                fatalerror("Copro FIFOOUT overflow (at %08X)", cpu_get_pc(device));
230
 
                return;
231
 
        }
232
 
 
233
 
//  logerror("COPRO FIFOOUT PUSH %08X, %f, %d\n", data, *(float*)&data,state->m_copro_fifoout_num);
234
 
 
235
 
        state->m_copro_fifoout_data[state->m_copro_fifoout_wpos++] = data;
236
 
        if (state->m_copro_fifoout_wpos == COPRO_FIFOOUT_SIZE)
237
 
        {
238
 
                state->m_copro_fifoout_wpos = 0;
239
 
        }
240
 
 
241
 
        state->m_copro_fifoout_num++;
242
 
 
243
 
        // set SHARC flag 1: 0 if space available, 1 if FIFO full
244
 
        if (state->m_dsp_type == DSP_TYPE_SHARC)
245
 
        {
246
 
                if (state->m_copro_fifoout_num == COPRO_FIFOOUT_SIZE)
247
 
                {
248
 
                        sharc_set_flag_input(device, 1, ASSERT_LINE);
249
 
 
250
 
                        //device_set_input_line(device, SHARC_INPUT_FLAG1, ASSERT_LINE);
251
 
                }
252
 
                else
253
 
                {
254
 
                        sharc_set_flag_input(device, 1, CLEAR_LINE);
255
 
 
256
 
                        //device_set_input_line(device, SHARC_INPUT_FLAG1, CLEAR_LINE);
257
 
                }
258
 
        }
259
 
}
260
 
 
261
 
/* Timers - these count down at 25 MHz and pull IRQ2 when they hit 0 */
262
 
static READ32_HANDLER( timers_r )
263
 
{
264
 
        model2_state *state = space->machine().driver_data<model2_state>();
265
 
        i960_noburst(&space->device());
266
 
 
267
 
        // if timer is running, calculate current value
268
 
        if (state->m_timerrun[offset])
269
 
        {
270
 
                // get elapsed time, convert to units of 25 MHz
271
 
                UINT32 cur = (state->m_timers[offset]->time_elapsed() * 25000000).as_double();
272
 
 
273
 
                // subtract units from starting value
274
 
                state->m_timervals[offset] = state->m_timerorig[offset] - cur;
275
 
        }
276
 
 
277
 
        return state->m_timervals[offset];
278
 
}
279
 
 
280
 
static WRITE32_HANDLER( timers_w )
281
 
{
282
 
        model2_state *state = space->machine().driver_data<model2_state>();
283
 
        attotime period;
284
 
 
285
 
        i960_noburst(&space->device());
286
 
        COMBINE_DATA(&state->m_timervals[offset]);
287
 
 
288
 
        state->m_timerorig[offset] = state->m_timervals[offset];
289
 
        period = attotime::from_hz(25000000) * state->m_timerorig[offset];
290
 
        state->m_timers[offset]->adjust(period);
291
 
        state->m_timerrun[offset] = 1;
292
 
}
293
 
 
294
 
static TIMER_DEVICE_CALLBACK( model2_timer_cb )
295
 
{
296
 
        model2_state *state = timer.machine().driver_data<model2_state>();
297
 
        int tnum = (int)(FPTR)ptr;
298
 
        int bit = tnum + 2;
299
 
 
300
 
        state->m_timers[tnum]->reset();
301
 
 
302
 
        state->m_intreq |= (1<<bit);
303
 
        if (state->m_intena & (1<<bit))
304
 
        {
305
 
                cputag_set_input_line(timer.machine(), "maincpu", I960_IRQ2, ASSERT_LINE);
306
 
        }
307
 
 
308
 
        state->m_timervals[tnum] = 0;
309
 
        state->m_timerrun[tnum] = 0;
310
 
}
311
 
 
312
 
static MACHINE_START(model2)
313
 
{
314
 
        model2_state *state = machine.driver_data<model2_state>();
315
 
        state->m_copro_fifoin_data = auto_alloc_array_clear(machine, UINT32, COPRO_FIFOIN_SIZE);
316
 
        state->m_copro_fifoout_data = auto_alloc_array_clear(machine, UINT32, COPRO_FIFOOUT_SIZE);
317
 
}
318
 
 
319
 
static MACHINE_RESET(model2_common)
320
 
{
321
 
        model2_state *state = machine.driver_data<model2_state>();
322
 
        int i;
323
 
 
324
 
        state->m_intreq = 0;
325
 
        state->m_intena = 0;
326
 
        state->m_coproctl = 0;
327
 
        state->m_coprocnt = 0;
328
 
        state->m_geoctl = 0;
329
 
        state->m_geocnt = 0;
330
 
        state->m_ctrlmode = 0;
331
 
        state->m_analog_channel = 0;
332
 
 
333
 
        state->m_timervals[0] = 0xfffff;
334
 
        state->m_timervals[1] = 0xfffff;
335
 
        state->m_timervals[2] = 0xfffff;
336
 
        state->m_timervals[3] = 0xfffff;
337
 
 
338
 
        state->m_timerrun[0] = state->m_timerrun[1] = state->m_timerrun[2] = state->m_timerrun[3] = 0;
339
 
 
340
 
        state->m_timers[0] = machine.device<timer_device>("timer0");
341
 
        state->m_timers[1] = machine.device<timer_device>("timer1");
342
 
        state->m_timers[2] = machine.device<timer_device>("timer2");
343
 
        state->m_timers[3] = machine.device<timer_device>("timer3");
344
 
        for (i=0; i<4; i++)
345
 
                state->m_timers[i]->reset();
346
 
}
347
 
 
348
 
static MACHINE_RESET(model2o)
349
 
{
350
 
        model2_state *state = machine.driver_data<model2_state>();
351
 
        MACHINE_RESET_CALL(model2_common);
352
 
 
353
 
        // hold TGP in halt until we have code
354
 
        cputag_set_input_line(machine, "tgp", INPUT_LINE_HALT, ASSERT_LINE);
355
 
 
356
 
        state->m_dsp_type = DSP_TYPE_TGP;
357
 
}
358
 
 
359
 
static MACHINE_RESET(model2_scsp)
360
 
{
361
 
        model2_state *state = machine.driver_data<model2_state>();
362
 
        memory_set_bankptr(machine, "bank4", machine.region("scsp")->base() + 0x200000);
363
 
        memory_set_bankptr(machine, "bank5", machine.region("scsp")->base() + 0x600000);
364
 
 
365
 
        // copy the 68k vector table into RAM
366
 
        memcpy(state->m_soundram, machine.region("audiocpu")->base() + 0x80000, 16);
367
 
        machine.device("audiocpu")->reset();
368
 
}
369
 
 
370
 
static MACHINE_RESET(model2)
371
 
{
372
 
        model2_state *state = machine.driver_data<model2_state>();
373
 
        MACHINE_RESET_CALL(model2_common);
374
 
        MACHINE_RESET_CALL(model2_scsp);
375
 
 
376
 
        // hold TGP in halt until we have code
377
 
        cputag_set_input_line(machine, "tgp", INPUT_LINE_HALT, ASSERT_LINE);
378
 
 
379
 
        state->m_dsp_type = DSP_TYPE_TGP;
380
 
}
381
 
 
382
 
static MACHINE_RESET(model2b)
383
 
{
384
 
        model2_state *state = machine.driver_data<model2_state>();
385
 
        MACHINE_RESET_CALL(model2_common);
386
 
        MACHINE_RESET_CALL(model2_scsp);
387
 
 
388
 
        cputag_set_input_line(machine, "dsp", INPUT_LINE_HALT, ASSERT_LINE);
389
 
 
390
 
        // set FIFOIN empty flag on SHARC
391
 
        cputag_set_input_line(machine, "dsp", SHARC_INPUT_FLAG0, ASSERT_LINE);
392
 
        // clear FIFOOUT buffer full flag on SHARC
393
 
        cputag_set_input_line(machine, "dsp", SHARC_INPUT_FLAG1, CLEAR_LINE);
394
 
 
395
 
        state->m_dsp_type = DSP_TYPE_SHARC;
396
 
}
397
 
 
398
 
static MACHINE_RESET(model2c)
399
 
{
400
 
        model2_state *state = machine.driver_data<model2_state>();
401
 
        MACHINE_RESET_CALL(model2_common);
402
 
        MACHINE_RESET_CALL(model2_scsp);
403
 
 
404
 
        state->m_dsp_type = DSP_TYPE_TGPX4;
405
 
}
406
 
 
407
 
static void chcolor(running_machine &machine, pen_t color, UINT16 data)
408
 
{
409
 
        palette_set_color_rgb(machine, color, pal5bit(data >> 0), pal5bit(data >> 5), pal5bit(data >> 10));
410
 
}
411
 
 
412
 
static WRITE32_HANDLER( pal32_w )
413
 
{
414
 
        model2_state *state = space->machine().driver_data<model2_state>();
415
 
        COMBINE_DATA(state->m_paletteram32 + offset);
416
 
        if(ACCESSING_BITS_0_15)
417
 
                chcolor(space->machine(), offset * 2, state->m_paletteram32[offset]);
418
 
        if(ACCESSING_BITS_16_31)
419
 
                chcolor(space->machine(), offset * 2 + 1, state->m_paletteram32[offset] >> 16);
420
 
}
421
 
 
422
 
static WRITE32_HANDLER( ctrl0_w )
423
 
{
424
 
        model2_state *state = space->machine().driver_data<model2_state>();
425
 
        if(ACCESSING_BITS_0_7)
426
 
        {
427
 
                eeprom_device *eeprom = space->machine().device<eeprom_device>("eeprom");
428
 
                state->m_ctrlmode = data & 0x01;
429
 
                eeprom->write_bit(data & 0x20);
430
 
                eeprom->set_clock_line((data & 0x80) ? ASSERT_LINE : CLEAR_LINE);
431
 
                eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
432
 
        }
433
 
}
434
 
 
435
 
static WRITE32_HANDLER( analog_2b_w )
436
 
{
437
 
        model2_state *state = space->machine().driver_data<model2_state>();
438
 
        state->m_analog_channel = (data >> 16) & 0x07;
439
 
}
440
 
 
441
 
 
442
 
static READ32_HANDLER( fifoctl_r )
443
 
{
444
 
        model2_state *state = space->machine().driver_data<model2_state>();
445
 
        UINT32 r = 0;
446
 
 
447
 
        if (state->m_copro_fifoout_num == 0)
448
 
        {
449
 
                r |= 1;
450
 
        }
451
 
 
452
 
        // #### 1 if fifo empty, zerogun needs | 0x04 set
453
 
        return r | 0x04;
454
 
}
455
 
 
456
 
static READ32_HANDLER( videoctl_r )
457
 
{
458
 
        return (space->machine().primary_screen->frame_number() & 1) << 2;
459
 
}
460
 
 
461
 
static CUSTOM_INPUT( _1c00000_r )
462
 
{
463
 
        model2_state *state = field.machine().driver_data<model2_state>();
464
 
        UINT32 ret = input_port_read(field.machine(), "IN0");
465
 
 
466
 
        if(state->m_ctrlmode == 0)
467
 
        {
468
 
                return ret;
469
 
        }
470
 
        else
471
 
        {
472
 
                ret &= ~0x0030;
473
 
                return ret | 0x00d0 | (field.machine().device<eeprom_device>("eeprom")->read_bit() << 5);
474
 
        }
475
 
}
476
 
 
477
 
static CUSTOM_INPUT( _1c0001c_r )
478
 
{
479
 
        model2_state *state = field.machine().driver_data<model2_state>();
480
 
        UINT32 iptval = 0x00ff;
481
 
        if(state->m_analog_channel < 4)
482
 
        {
483
 
                static const char *const ports[] = { "ANA0", "ANA1", "ANA2", "ANA3" };
484
 
                iptval = input_port_read_safe(field.machine(), ports[state->m_analog_channel], 0);
485
 
                ++state->m_analog_channel;
486
 
        }
487
 
        return iptval;
488
 
}
489
 
 
490
 
/*
491
 
    Rail Chase 2 "Drive I/O BD" documentation
492
 
 
493
 
    I'm fairly sure that this is actually controlled by a CPU with undumped program code.
494
 
 
495
 
    commands 0x2* are for device status bits (all of them active low)
496
 
 
497
 
    command 0x27 (4 port valve rear cylinder)
498
 
    ---- --xx Cylinder Position (00 - neutral, 01 - up, 10 - down, 11 - error)
499
 
 
500
 
    command 0x29
501
 
    ---- -x-- Compressor Motor
502
 
    ---- --x- Unloader Valve
503
 
    ---- ---x Compression Valve
504
 
 
505
 
    command 0x2a (4 port valve left cylinder)
506
 
    ---- -x-- Rev Valve
507
 
    ---- --x- Down Valve
508
 
    ---- ---x Up Valve
509
 
 
510
 
    command 0x2b (4 port valve right cylinder)
511
 
    ---- -x-- Rev Valve
512
 
    ---- --x- Down Valve
513
 
    ---- ---x Up Valve
514
 
 
515
 
    command 0x2e
516
 
    ---- --xx Compression SW (00 - error, 01 - low, 10 - high, 11 - error)
517
 
 
518
 
    command 0x2f
519
 
    ---- x--- Emergency SW
520
 
    ---- ---x Safety Sensor
521
 
 
522
 
    These are all used on network check, probably some specific data port R/Ws
523
 
 
524
 
    command 0x3b
525
 
    command 0xe0
526
 
    command 0xd0
527
 
    command 0xb0
528
 
    command 0x70
529
 
    command 0x0e
530
 
    command 0x0d
531
 
    command 0x0b
532
 
    command 0x07
533
 
 
534
 
    Every other write of this controls devices behaviour:
535
 
 
536
 
    command 0x4f (left up valve off)
537
 
    command 0x5b (left down valve off)
538
 
    command 0x5d (compression valve on)
539
 
    command 0x5e (left rev valve on)
540
 
    command 0x5f (left Cylinder reset)
541
 
 
542
 
    command 0x6f (right up valve off)
543
 
    command 0x7b (right down valve off)
544
 
    command 0x7d (compression valve on)
545
 
    command 0x7e (right rev valve on)
546
 
    command 0x7f (right Cylinder reset)
547
 
 
548
 
    command 0x84 (reset up/down valves of rear cylinder)
549
 
    command 0x85 (rear up valve on)
550
 
    command 0x86 (rear down valve on)
551
 
 
552
 
    command 0x8b (compression valve on)
553
 
    command 0x8d (left rev valve is on)
554
 
    command 0x8e (right rev valve is on)
555
 
    command 0x8f (reset 4 port valve left / right cylinders and compression valve)
556
 
 
557
 
*/
558
 
 
559
 
 
560
 
static CUSTOM_INPUT( rchase2_devices_r )
561
 
{
562
 
        return 0xffff;
563
 
}
564
 
 
565
 
static WRITE32_HANDLER( rchase2_devices_w )
566
 
{
567
 
        model2_state *state = space->machine().driver_data<model2_state>();
568
 
        /*
569
 
    0x00040000 start 1 lamp
570
 
    0x00080000 start 2 lamp
571
 
    */
572
 
 
573
 
        if(mem_mask == 0x0000ffff)
574
 
                state->m_cmd_data = data;
575
 
}
576
 
 
577
 
 
578
 
static WRITE32_HANDLER( srallyc_devices_w )
579
 
{
580
 
        model2_state *state = space->machine().driver_data<model2_state>();
581
 
        /*
582
 
    0x00040000 start 1 lamp
583
 
    0x00200000 vr lamp
584
 
    0x00800000 leader lamp
585
 
    */
586
 
 
587
 
        if(mem_mask == 0x000000ff || mem_mask == 0x0000ffff)
588
 
        {
589
 
                state->m_driveio_comm_data = data & 0xff;
590
 
                cputag_set_input_line(space->machine(), "drivecpu", 0, HOLD_LINE);
591
 
        }
592
 
}
593
 
 
594
 
/*****************************************************************************/
595
 
/* COPRO */
596
 
 
597
 
static READ32_HANDLER(copro_prg_r)
598
 
{
599
 
 
600
 
        return 0xffffffff;
601
 
}
602
 
 
603
 
static WRITE32_HANDLER(copro_prg_w)
604
 
{
605
 
        model2_state *state = space->machine().driver_data<model2_state>();
606
 
        if (state->m_coproctl & 0x80000000)
607
 
        {
608
 
                logerror("copro_prg_w: %08X:   %08X\n", state->m_coprocnt, data);
609
 
                state->m_coprocnt++;
610
 
        }
611
 
        else
612
 
        {
613
 
                //mame_printf_debug("COPRO: push %08X\n", data);
614
 
        }
615
 
}
616
 
 
617
 
static WRITE32_HANDLER( copro_ctl1_w )
618
 
{
619
 
        model2_state *state = space->machine().driver_data<model2_state>();
620
 
        // did hi bit change?
621
 
        if ((data ^ state->m_coproctl) == 0x80000000)
622
 
        {
623
 
                if (data & 0x80000000)
624
 
                {
625
 
                        logerror("Start copro upload\n");
626
 
                        state->m_coprocnt = 0;
627
 
                }
628
 
                else
629
 
                {
630
 
                        logerror("Boot copro, %d dwords\n", state->m_coprocnt);
631
 
                        if (state->m_dsp_type != DSP_TYPE_TGPX4)
632
 
                        {
633
 
                                if (state->m_dsp_type == DSP_TYPE_SHARC)
634
 
                                        cputag_set_input_line(space->machine(), "dsp", INPUT_LINE_HALT, CLEAR_LINE);
635
 
                                else
636
 
                                        cputag_set_input_line(space->machine(), "tgp", INPUT_LINE_HALT, CLEAR_LINE);
637
 
                        }
638
 
                }
639
 
        }
640
 
 
641
 
        state->m_coproctl = data;
642
 
}
643
 
 
644
 
static WRITE32_HANDLER(copro_function_port_w)
645
 
{
646
 
        model2_state *state = space->machine().driver_data<model2_state>();
647
 
        UINT32 d = data & 0x800fffff;
648
 
        UINT32 a = (offset >> 2) & 0xff;
649
 
        d |= a << 23;
650
 
 
651
 
        //logerror("copro_function_port_w: %08X, %08X, %08X\n", data, offset, mem_mask);
652
 
        if (state->m_dsp_type == DSP_TYPE_SHARC)
653
 
                copro_fifoin_push(space->machine().device("dsp"), d);
654
 
        else
655
 
                copro_fifoin_push(space->machine().device("tgp"), d);
656
 
}
657
 
 
658
 
static READ32_HANDLER(copro_fifo_r)
659
 
{
660
 
        //logerror("copro_fifo_r: %08X, %08X\n", offset, mem_mask);
661
 
        return copro_fifoout_pop(space);
662
 
}
663
 
 
664
 
static WRITE32_HANDLER(copro_fifo_w)
665
 
{
666
 
        model2_state *state = space->machine().driver_data<model2_state>();
667
 
        if (state->m_coproctl & 0x80000000)
668
 
        {
669
 
                if (state->m_dsp_type == DSP_TYPE_SHARC)
670
 
                {
671
 
                        sharc_external_dma_write(space->machine().device("dsp"), state->m_coprocnt, data & 0xffff);
672
 
                }
673
 
                else if (state->m_dsp_type == DSP_TYPE_TGP)
674
 
                {
675
 
                        state->m_tgp_program[state->m_coprocnt] = data;
676
 
                }
677
 
 
678
 
                state->m_coprocnt++;
679
 
        }
680
 
        else
681
 
        {
682
 
                //mame_printf_debug("copro_fifo_w: %08X, %08X, %08X at %08X\n", data, offset, mem_mask, cpu_get_pc(&space->device()));
683
 
                if (state->m_dsp_type == DSP_TYPE_SHARC)
684
 
                        copro_fifoin_push(space->machine().device("dsp"), data);
685
 
                else
686
 
                        copro_fifoin_push(space->machine().device("tgp"), data);
687
 
        }
688
 
}
689
 
 
690
 
static WRITE32_HANDLER(copro_sharc_iop_w)
691
 
{
692
 
        model2_state *state = space->machine().driver_data<model2_state>();
693
 
        /* FIXME: clean this up */
694
 
        if ((strcmp(space->machine().system().name, "schamp" ) == 0) ||
695
 
                (strcmp(space->machine().system().name, "sfight" ) == 0) ||
696
 
                (strcmp(space->machine().system().name, "fvipers" ) == 0) ||
697
 
                (strcmp(space->machine().system().name, "vstriker" ) == 0) ||
698
 
                (strcmp(space->machine().system().name, "vstrikero" ) == 0) ||
699
 
                (strcmp(space->machine().system().name, "gunblade" ) == 0) ||
700
 
                (strcmp(space->machine().system().name, "von" ) == 0) ||
701
 
                (strcmp(space->machine().system().name, "vonj" ) == 0) ||
702
 
                (strcmp(space->machine().system().name, "rchase2" ) == 0))
703
 
        {
704
 
                sharc_external_iop_write(space->machine().device("dsp"), offset, data);
705
 
        }
706
 
        else
707
 
        {
708
 
                if ((state->m_iop_write_num & 1) == 0)
709
 
                {
710
 
                        state->m_iop_data = data & 0xffff;
711
 
                }
712
 
                else
713
 
                {
714
 
                        state->m_iop_data |= (data & 0xffff) << 16;
715
 
                        sharc_external_iop_write(space->machine().device("dsp"), offset, state->m_iop_data);
716
 
                }
717
 
                state->m_iop_write_num++;
718
 
        }
719
 
}
720
 
 
721
 
 
722
 
 
723
 
 
724
 
 
725
 
/*****************************************************************************/
726
 
/* GEO */
727
 
 
728
 
 
729
 
static WRITE32_HANDLER( geo_ctl1_w )
730
 
{
731
 
        model2_state *state = space->machine().driver_data<model2_state>();
732
 
        // did hi bit change?
733
 
        if ((data ^ state->m_geoctl) == 0x80000000)
734
 
        {
735
 
                if (data & 0x80000000)
736
 
                {
737
 
                        logerror("Start geo upload\n");
738
 
                        state->m_geocnt = 0;
739
 
                }
740
 
                else
741
 
                {
742
 
                        logerror("Boot geo, %d dwords\n", state->m_geocnt);
743
 
                }
744
 
        }
745
 
 
746
 
        state->m_geoctl = data;
747
 
}
748
 
 
749
 
 
750
 
#ifdef UNUSED_FUNCTION
751
 
static WRITE32_HANDLER( geo_sharc_ctl1_w )
752
 
{
753
 
        model2_state *state = space->machine().driver_data<model2_state>();
754
 
    // did hi bit change?
755
 
    if ((data ^ state->m_geoctl) == 0x80000000)
756
 
    {
757
 
        if (data & 0x80000000)
758
 
        {
759
 
            logerror("Start geo upload\n");
760
 
            state->m_geocnt = 0;
761
 
        }
762
 
        else
763
 
        {
764
 
            logerror("Boot geo, %d dwords\n", state->m_geocnt);
765
 
            cputag_set_input_line(space->machine(), "dsp2", INPUT_LINE_HALT, CLEAR_LINE);
766
 
            //device_spin_until_time(&space->device(), attotime::from_usec(1000));       // Give the SHARC enough time to boot itself
767
 
        }
768
 
    }
769
 
 
770
 
    state->m_geoctl = data;
771
 
}
772
 
 
773
 
static READ32_HANDLER(geo_sharc_fifo_r)
774
 
{
775
 
    if ((strcmp(space->machine().system().name, "manxtt" ) == 0) || (strcmp(space->machine().system().name, "srallyc" ) == 0))
776
 
    {
777
 
        return 8;
778
 
    }
779
 
    else
780
 
    {
781
 
        //logerror("copro_fifo_r: %08X, %08X\n", offset, mem_mask);
782
 
        return 0;
783
 
    }
784
 
}
785
 
 
786
 
static WRITE32_HANDLER(geo_sharc_fifo_w)
787
 
{
788
 
        model2_state *state = space->machine().driver_data<model2_state>();
789
 
    if (state->m_geoctl & 0x80000000)
790
 
    {
791
 
        sharc_external_dma_write(space->machine().device("dsp2"), state->m_geocnt, data & 0xffff);
792
 
 
793
 
        state->m_geocnt++;
794
 
    }
795
 
    else
796
 
    {
797
 
        //mame_printf_debug("copro_fifo_w: %08X, %08X, %08X at %08X\n", data, offset, mem_mask, cpu_get_pc(&space->device()));
798
 
    }
799
 
}
800
 
 
801
 
static WRITE32_HANDLER(geo_sharc_iop_w)
802
 
{
803
 
        model2_state *state = space->machine().driver_data<model2_state>();
804
 
    if ((strcmp(space->machine().system().name, "schamp" ) == 0))
805
 
    {
806
 
        sharc_external_iop_write(space->machine().device("dsp2"), offset, data);
807
 
    }
808
 
    else
809
 
    {
810
 
        if ((state->m_geo_iop_write_num & 1) == 0)
811
 
        {
812
 
            state->m_geo_iop_data = data & 0xffff;
813
 
        }
814
 
        else
815
 
        {
816
 
            state->m_geo_iop_data |= (data & 0xffff) << 16;
817
 
            sharc_external_iop_write(space->machine().device("dsp2"), offset, state->m_geo_iop_data);
818
 
        }
819
 
        state->m_geo_iop_write_num++;
820
 
    }
821
 
}
822
 
#endif
823
 
 
824
 
 
825
 
static void push_geo_data(model2_state *state, UINT32 data)
826
 
{
827
 
        //mame_printf_debug("push_geo_data: %08X: %08X\n", 0x900000+state->m_geo_write_start_address, data);
828
 
        state->m_bufferram[state->m_geo_write_start_address/4] = data;
829
 
        state->m_geo_write_start_address += 4;
830
 
}
831
 
 
832
 
static READ32_HANDLER(geo_prg_r)
833
 
{
834
 
        return 0xffffffff;
835
 
}
836
 
 
837
 
static WRITE32_HANDLER(geo_prg_w)
838
 
{
839
 
        model2_state *state = space->machine().driver_data<model2_state>();
840
 
        if (state->m_geoctl & 0x80000000)
841
 
        {
842
 
                //logerror("geo_prg_w: %08X:   %08X\n", state->m_geocnt, data);
843
 
                state->m_geocnt++;
844
 
        }
845
 
        else
846
 
        {
847
 
                //mame_printf_debug("GEO: %08X: push %08X\n", state->m_geo_write_start_address, data);
848
 
                push_geo_data(state, data);
849
 
        }
850
 
}
851
 
 
852
 
static READ32_HANDLER( geo_r )
853
 
{
854
 
        model2_state *state = space->machine().driver_data<model2_state>();
855
 
        int address = offset * 4;
856
 
        if (address == 0x2008)
857
 
        {
858
 
                return state->m_geo_write_start_address;
859
 
        }
860
 
        else if (address == 0x3008)
861
 
        {
862
 
                return state->m_geo_read_start_address;
863
 
        }
864
 
 
865
 
//  fatalerror("geo_r: %08X, %08X\n", address, mem_mask);
866
 
        mame_printf_debug("geo_r: PC:%08x - %08X\n", cpu_get_pc(&space->device()), address);
867
 
 
868
 
        return 0;
869
 
}
870
 
 
871
 
static WRITE32_HANDLER( geo_w )
872
 
{
873
 
        model2_state *state = space->machine().driver_data<model2_state>();
874
 
        int address = offset * 4;
875
 
 
876
 
        if (address < 0x1000)
877
 
        {
878
 
                /*if (data & 0x80000000)
879
 
        {
880
 
            int i;
881
 
            UINT32 a;
882
 
            mame_printf_debug("GEO: jump to %08X\n", (data & 0xfffff));
883
 
            a = (data & 0xfffff) / 4;
884
 
            for (i=0; i < 4; i++)
885
 
            {
886
 
                mame_printf_debug("   %08X: %08X %08X %08X %08X\n", 0x900000+(a*4)+(i*16),
887
 
                    state->m_bufferram[a+(i*4)+0], state->m_bufferram[a+(i*4)+1], state->m_bufferram[a+(i*4)+2], state->m_bufferram[a+(i*4)+3]);
888
 
            }
889
 
        }
890
 
        else
891
 
        {
892
 
            int function = (address >> 4) & 0x3f;
893
 
            switch (address & 0xf)
894
 
            {
895
 
                case 0x0:
896
 
                {
897
 
                    mame_printf_debug("GEO: function %02X (%08X, %08X)\n", function, address, data);
898
 
                    break;
899
 
                }
900
 
 
901
 
                case 0x4:   mame_printf_debug("GEO: function %02X, command length %d\n", function, data & 0x3f); break;
902
 
                case 0x8:   mame_printf_debug("GEO: function %02X, data length %d\n", function, data & 0x7f); break;
903
 
            }
904
 
        }*/
905
 
 
906
 
                if (data & 0x80000000)
907
 
                {
908
 
                        UINT32 r = 0;
909
 
                        r |= data & 0x800fffff;
910
 
                        r |= ((address >> 4) & 0x3f) << 23;
911
 
                        push_geo_data(state, r);
912
 
                }
913
 
                else
914
 
                {
915
 
                        if ((address & 0xf) == 0)
916
 
                        {
917
 
                                UINT32 r = 0;
918
 
                                r |= data & 0x000fffff;
919
 
                                r |= ((address >> 4) & 0x3f) << 23;
920
 
                                push_geo_data(state, r);
921
 
                        }
922
 
                }
923
 
        }
924
 
        else if (address == 0x1008)
925
 
        {
926
 
                //mame_printf_debug("GEO: Write Start Address: %08X\n", data);
927
 
                state->m_geo_write_start_address = data & 0xfffff;
928
 
        }
929
 
        else if (address == 0x3008)
930
 
        {
931
 
                //mame_printf_debug("GEO: Read Start Address: %08X\n", data);
932
 
                state->m_geo_read_start_address = data & 0xfffff;
933
 
        }
934
 
        else
935
 
        {
936
 
                fatalerror("geo_w: %08X = %08X\n", address, data);
937
 
        }
938
 
}
939
 
 
940
 
/*****************************************************************************/
941
 
 
942
 
 
943
 
static READ32_HANDLER(hotd_unk_r)
944
 
{
945
 
        return 0x000c0000;
946
 
}
947
 
 
948
 
#ifdef UNUSED_FUNCTION
949
 
static READ32_HANDLER(sonic_unk_r)
950
 
{
951
 
    return 0x001a0000;
952
 
}
953
 
#endif
954
 
 
955
 
static READ32_HANDLER(daytona_unk_r)
956
 
{
957
 
        return 0x00400000;
958
 
}
959
 
 
960
 
static READ32_HANDLER(desert_unk_r)
961
 
{
962
 
        // vcop needs bit 3 clear (infinite loop otherwise)
963
 
        // desert needs other bits set (not sure which specifically)
964
 
        // daytona needs the MSW to return ff
965
 
        return 0x00ff00f7;
966
 
}
967
 
 
968
 
static READ32_HANDLER(model2_irq_r)
969
 
{
970
 
        model2_state *state = space->machine().driver_data<model2_state>();
971
 
        i960_noburst(&space->device());
972
 
 
973
 
        if (offset)
974
 
        {
975
 
                return state->m_intena;
976
 
        }
977
 
 
978
 
        return state->m_intreq;
979
 
}
980
 
 
981
 
static WRITE32_HANDLER(model2_irq_w)
982
 
{
983
 
        model2_state *state = space->machine().driver_data<model2_state>();
984
 
        i960_noburst(&space->device());
985
 
 
986
 
        if (offset)
987
 
        {
988
 
                COMBINE_DATA(&state->m_intena);
989
 
                return;
990
 
        }
991
 
 
992
 
        state->m_intreq &= data;
993
 
}
994
 
 
995
 
 
996
 
static int snd_68k_ready_r(address_space *space)
997
 
{
998
 
        int sr = cpu_get_reg(space->machine().device("audiocpu"), M68K_SR);
999
 
 
1000
 
        if ((sr & 0x0700) > 0x0100)
1001
 
        {
1002
 
                device_spin_until_time(&space->device(), attotime::from_usec(40));
1003
 
                return 0;       // not ready yet, interrupts disabled
1004
 
        }
1005
 
 
1006
 
        return 0xff;
1007
 
}
1008
 
 
1009
 
static void snd_latch_to_68k_w(address_space *space, int data)
1010
 
{
1011
 
        model2_state *state = space->machine().driver_data<model2_state>();
1012
 
        if (!snd_68k_ready_r(space))
1013
 
        {
1014
 
                device_spin_until_time(&space->device(), attotime::from_usec(40));
1015
 
        }
1016
 
 
1017
 
        state->m_to_68k = data;
1018
 
 
1019
 
        cputag_set_input_line(space->machine(), "audiocpu", 2, HOLD_LINE);
1020
 
 
1021
 
        // give the 68k time to notice
1022
 
        device_spin_until_time(&space->device(), attotime::from_usec(40));
1023
 
}
1024
 
 
1025
 
static READ32_HANDLER( model2_serial_r )
1026
 
{
1027
 
        if ((offset == 0) && (mem_mask == 0xffff0000))
1028
 
        {
1029
 
                return 0x00070000;      // TxRdy RxRdy (zeroguna also needs bit 4 set)
1030
 
        }
1031
 
 
1032
 
        return 0xffffffff;
1033
 
}
1034
 
 
1035
 
static WRITE32_HANDLER( model2o_serial_w )
1036
 
{
1037
 
        if (mem_mask == 0x0000ffff)
1038
 
        {
1039
 
                snd_latch_to_68k_w(space, data&0xff);
1040
 
        }
1041
 
}
1042
 
 
1043
 
static WRITE32_HANDLER( model2_serial_w )
1044
 
{
1045
 
        if (ACCESSING_BITS_0_7 && (offset == 0))
1046
 
        {
1047
 
                scsp_midi_in(space->machine().device("scsp"), 0, data&0xff, 0);
1048
 
 
1049
 
                // give the 68k time to notice
1050
 
                device_spin_until_time(&space->device(), attotime::from_usec(40));
1051
 
        }
1052
 
}
1053
 
 
1054
 
/* Protection handling */
1055
 
 
1056
 
static const UINT8 ZGUNProt[] =
1057
 
{
1058
 
        0x7F,0x4E,0x1B,0x1E,0xA8,0x48,0xF5,0x49,0x31,0x32,0x4A,0x09,0x89,0x29,0xC0,0x41,
1059
 
        0x3A,0x49,0x85,0x24,0xA0,0x4D,0x21,0x31,0xEA,0xC3,0x3F,0xAF,0x0E,0x4B,0x25,0x02,
1060
 
        0xFB,0x0F,0x44,0x55,0x2E,0x82,0x55,0xC3,0xCB,0x91,0x52,0x7E,0x72,0x53,0xF2,0xAA,
1061
 
        0x39,0x19,0xB1,0x42,0x33,0x63,0x13,0xFA,0x39,0x9C,0xE0,0x53,0x93,0x8B,0x14,0x91,
1062
 
        0x9D,0x1C,0xFE,0x52,0x59,0xD4,0x2A,0x6A,0xA3,0xC5,0xA0,0xCA,0x92,0x5A,0x58,0xAC,
1063
 
        0x95,0x4A,0x19,0x89,0x65,0xD3,0xA8,0x4A,0xE3,0xCE,0x8D,0x89,0xC5,0x48,0x95,0xE4,
1064
 
        0x94,0xD5,0x73,0x09,0xE4,0x3D,0x2D,0x92,0xC9,0xA7,0xA3,0x53,0x42,0x82,0x55,0x67,
1065
 
        0xE4,0x66,0xD0,0x4A,0x7D,0x4A,0x13,0xDE,0xD7,0x9F,0x38,0xAA,0x00,0x56,0x85,0x0A
1066
 
};
1067
 
static const UINT8 DCOPKey1326[]=
1068
 
{
1069
 
        0x43,0x66,0x54,0x11,0x99,0xfe,0xcc,0x8e,0xdd,0x87,0x11,0x89,0x22,0xdf,0x44,0x09
1070
 
};
1071
 
 
1072
 
static READ32_HANDLER( model2_prot_r )
1073
 
{
1074
 
        model2_state *state = space->machine().driver_data<model2_state>();
1075
 
        UINT32 retval = 0;
1076
 
 
1077
 
        if (offset == 0x10000/4)
1078
 
        {
1079
 
                // status: bit 0 = 1 for busy, 0 for ready
1080
 
                return 0;       // we're always ready
1081
 
        }
1082
 
        else if (offset == 0x1000e/4)
1083
 
        {
1084
 
                retval = state->m_protram[state->m_protstate+1] | state->m_protram[state->m_protstate]<<8;
1085
 
                retval <<= 16;
1086
 
                state->m_protstate+=2;
1087
 
        }
1088
 
        else if (offset == 0x7ff8/4)
1089
 
        {
1090
 
                retval = state->m_protram[state->m_protstate+1] | state->m_protram[state->m_protstate]<<8;
1091
 
                state->m_protstate+=2;
1092
 
        }
1093
 
        else if (offset == 0x400c/4)
1094
 
        {
1095
 
                state->m_prot_a = !state->m_prot_a;
1096
 
                if (state->m_prot_a)
1097
 
                        return 0xffff;
1098
 
                else
1099
 
                        return 0xfff0;
1100
 
        }
1101
 
        else logerror("Unhandled Protection READ @ %x mask %x (PC=%x)\n", offset, mem_mask, cpu_get_pc(&space->device()));
1102
 
 
1103
 
        return retval;
1104
 
}
1105
 
 
1106
 
static WRITE32_HANDLER( model2_prot_w )
1107
 
{
1108
 
        model2_state *state = space->machine().driver_data<model2_state>();
1109
 
        if (mem_mask == 0xffff0000)
1110
 
        {
1111
 
                data >>= 16;
1112
 
        }
1113
 
 
1114
 
        if (offset == 0x10008/4)
1115
 
        {
1116
 
                state->m_protpos = data;
1117
 
        }
1118
 
        else if (offset == 0x1000c/4)
1119
 
        {
1120
 
                switch (data)
1121
 
                {
1122
 
                        // dynamcop
1123
 
                        case 0x7700:
1124
 
                                strcpy((char *)state->m_protram+2, "UCHIDA MOMOKA   ");
1125
 
                                break;
1126
 
 
1127
 
                        // dynamcop
1128
 
                        case 0x1326:
1129
 
                                state->m_protstate = 0;
1130
 
                                memcpy(state->m_protram+2, DCOPKey1326, sizeof(DCOPKey1326));
1131
 
                                break;
1132
 
 
1133
 
                        // zerogun
1134
 
                        case 0xA1BC:
1135
 
                        case 0xAD23:
1136
 
                        case 0x13CD:
1137
 
                        case 0x4D53:
1138
 
                        case 0x234D:
1139
 
                        case 0x113D:
1140
 
                        case 0x1049:
1141
 
                        case 0x993D:
1142
 
                        case 0x983C:
1143
 
                        case 0x935:
1144
 
                        case 0x9845:
1145
 
                        case 0x556D:
1146
 
                        case 0x98CC:
1147
 
                        case 0x3422:
1148
 
                        case 0x10:
1149
 
                                state->m_protstate = 0;
1150
 
                                memcpy(state->m_protram+2, ZGUNProt+((2*state->m_protpos)/12)*8, sizeof(ZGUNProt));
1151
 
                                break;
1152
 
 
1153
 
                        // pltkids
1154
 
                        case 0x7140:
1155
 
                                state->m_protstate = 0;
1156
 
                                strcpy((char *)state->m_protram+2, "98-PILOT  ");
1157
 
                                break;
1158
 
 
1159
 
                        default:
1160
 
                                state->m_protstate = 0;
1161
 
                                break;
1162
 
                }
1163
 
        }
1164
 
        else if (offset == 0x7ff2/4)
1165
 
        {
1166
 
                if (data == 0)
1167
 
                {
1168
 
                        state->m_protstate = 0;
1169
 
                        strcpy((char *)state->m_protram, "  TECMO LTD.  DEAD OR ALIVE  1996.10.22  VER. 1.00");
1170
 
                }
1171
 
        }
1172
 
        else logerror("Unhandled Protection WRITE %x @ %x mask %x (PC=%x)\n", data, offset, mem_mask, cpu_get_pc(&space->device()));
1173
 
 
1174
 
}
1175
 
 
1176
 
/* Daytona "To The MAXX" PIC protection simulation */
1177
 
 
1178
 
 
1179
 
static READ32_HANDLER( maxx_r )
1180
 
{
1181
 
        model2_state *state = space->machine().driver_data<model2_state>();
1182
 
        UINT32 *ROM = (UINT32 *)space->machine().region("maincpu")->base();
1183
 
 
1184
 
        if (offset <= 0x1f/4)
1185
 
        {
1186
 
                // special
1187
 
                if (mem_mask == 0xffff0000)
1188
 
                {
1189
 
                        // 16-bit protection reads
1190
 
                        state->m_maxxstate++;
1191
 
                        state->m_maxxstate &= 0xf;
1192
 
                        if (!state->m_maxxstate)
1193
 
                        {
1194
 
                                return 0x00070000;
1195
 
                        }
1196
 
                        else
1197
 
                        {
1198
 
                                if (state->m_maxxstate & 0x2)
1199
 
                                {
1200
 
                                        return 0;
1201
 
                                }
1202
 
                                else
1203
 
                                {
1204
 
                                        return 0x00040000;
1205
 
                                }
1206
 
                        }
1207
 
                }
1208
 
                else if (mem_mask == 0xffffffff)
1209
 
                {
1210
 
                        // 32-bit read
1211
 
                        if (offset == 0x22/4)
1212
 
                        {
1213
 
                                return 0x00ff0000;
1214
 
                        }
1215
 
                }
1216
 
        }
1217
 
 
1218
 
        return ROM[offset + (0x040000/4)];
1219
 
}
1220
 
 
1221
 
/* Network board emulation */
1222
 
 
1223
 
 
1224
 
 
1225
 
static READ32_HANDLER( network_r )
1226
 
{
1227
 
        model2_state *state = space->machine().driver_data<model2_state>();
1228
 
        if ((mem_mask == 0xffffffff) || (mem_mask == 0x0000ffff) || (mem_mask == 0xffff0000))
1229
 
        {
1230
 
                return 0xffffffff;
1231
 
        }
1232
 
 
1233
 
        if (offset < 0x4000/4)
1234
 
        {
1235
 
                return state->m_netram[offset];
1236
 
        }
1237
 
 
1238
 
        if (mem_mask == 0x00ff0000)
1239
 
        {
1240
 
                return state->m_sysres<<16;
1241
 
        }
1242
 
        else if (mem_mask == 0x000000ff)
1243
 
        {
1244
 
                return state->m_zflagi;
1245
 
        }
1246
 
 
1247
 
        return 0xffffffff;
1248
 
}
1249
 
 
1250
 
static WRITE32_HANDLER( network_w )
1251
 
{
1252
 
        model2_state *state = space->machine().driver_data<model2_state>();
1253
 
        if ((mem_mask == 0xffffffff) || (mem_mask == 0x0000ffff) || (mem_mask == 0xffff0000))
1254
 
        {
1255
 
                COMBINE_DATA(&state->m_netram[offset+0x4000/4]);
1256
 
                return;
1257
 
        }
1258
 
 
1259
 
        if (offset < 0x4000/4)
1260
 
        {
1261
 
                COMBINE_DATA(&state->m_netram[offset]);
1262
 
                return;
1263
 
        }
1264
 
 
1265
 
        if (mem_mask == 0x00ff0000)
1266
 
        {
1267
 
                state->m_sysres = data>>16;
1268
 
        }
1269
 
        else if (mem_mask == 0x000000ff)
1270
 
        {
1271
 
                state->m_zflagi = data;
1272
 
                state->m_zflag = 0;
1273
 
                if (data & 0x01) state->m_zflag |= 0x80;
1274
 
                if (data & 0x80) state->m_zflag |= 0x01;
1275
 
        }
1276
 
}
1277
 
 
1278
 
#ifdef UNUSED_FUNCTION
1279
 
static WRITE32_HANDLER( copro_w )
1280
 
{
1281
 
        int address = offset * 4;
1282
 
 
1283
 
        if (address < 0x400)
1284
 
        {
1285
 
                int function = (address & 0xfff) >> 4;
1286
 
                switch (address & 0xf)
1287
 
                {
1288
 
                        case 0x0:       mame_printf_debug("COPRO: function %02X, command %d\n", function, (data >> 23) & 0x3f); break;
1289
 
                        case 0x4:       mame_printf_debug("COPRO: function %02X, command length %d\n", function, data & 0x3f); break;
1290
 
                        case 0x8:       mame_printf_debug("COPRO: function %02X, data length %d\n", function, data & 0x7f); break;
1291
 
                }
1292
 
        }
1293
 
 
1294
 
        //mame_printf_debug("COPRO: %08X = %08X\n", offset, data);
1295
 
}
1296
 
#endif
1297
 
 
1298
 
static WRITE32_HANDLER(mode_w)
1299
 
{
1300
 
        mame_printf_debug("Mode = %08X\n", data);
1301
 
}
1302
 
 
1303
 
static WRITE32_HANDLER(model2o_tex_w0)
1304
 
{
1305
 
        model2_state *state = space->machine().driver_data<model2_state>();
1306
 
        if ( (offset & 1) == 0 )
1307
 
        {
1308
 
                state->m_textureram0[offset>>1] &= 0xffff0000;
1309
 
                state->m_textureram0[offset>>1] |= data & 0xffff;
1310
 
        }
1311
 
        else
1312
 
        {
1313
 
                state->m_textureram0[offset>>1] &= 0x0000ffff;
1314
 
                state->m_textureram0[offset>>1] |= (data & 0xffff) << 16;
1315
 
        }
1316
 
}
1317
 
 
1318
 
static WRITE32_HANDLER(model2o_tex_w1)
1319
 
{
1320
 
        model2_state *state = space->machine().driver_data<model2_state>();
1321
 
        if ( (offset & 1) == 0 )
1322
 
        {
1323
 
                state->m_textureram1[offset>>1] &= 0xffff0000;
1324
 
                state->m_textureram1[offset>>1] |= data & 0xffff;
1325
 
        }
1326
 
        else
1327
 
        {
1328
 
                state->m_textureram1[offset>>1] &= 0x0000ffff;
1329
 
                state->m_textureram1[offset>>1] |= (data & 0xffff) << 16;
1330
 
        }
1331
 
}
1332
 
 
1333
 
static WRITE32_HANDLER(model2o_luma_w)
1334
 
{
1335
 
        model2_state *state = space->machine().driver_data<model2_state>();
1336
 
        if ( (offset & 1) == 0 )
1337
 
        {
1338
 
                state->m_lumaram[offset>>1] &= 0xffff0000;
1339
 
                state->m_lumaram[offset>>1] |= data & 0xffff;
1340
 
        }
1341
 
        else
1342
 
        {
1343
 
                state->m_lumaram[offset>>1] &= 0x0000ffff;
1344
 
                state->m_lumaram[offset>>1] |= (data & 0xffff) << 16;
1345
 
        }
1346
 
}
1347
 
 
1348
 
static WRITE32_HANDLER(model2_3d_zclip_w)
1349
 
{
1350
 
        model2_3d_set_zclip( space->machine(), data & 0xFF );
1351
 
}
1352
 
 
1353
 
/* common map for all Model 2 versions */
1354
 
static ADDRESS_MAP_START( model2_base_mem, AS_PROGRAM, 32 )
1355
 
        AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_WRITENOP
1356
 
 
1357
 
        AM_RANGE(0x00500000, 0x005fffff) AM_RAM AM_BASE_MEMBER(model2_state, m_workram)
1358
 
 
1359
 
        AM_RANGE(0x00800000, 0x00803fff) AM_READWRITE(geo_r, geo_w)
1360
 
        //AM_RANGE(0x00800010, 0x00800013) AM_WRITENOP
1361
 
        //AM_RANGE(0x008000b0, 0x008000b3) AM_WRITENOP
1362
 
        //AM_RANGE(0x00804004, 0x0080400f) AM_WRITENOP  // quiet psikyo games
1363
 
 
1364
 
        //AM_RANGE(0x00880000, 0x00883fff) AM_WRITE(copro_w)
1365
 
 
1366
 
        AM_RANGE(0x00900000, 0x0097ffff) AM_RAM AM_BASE_MEMBER(model2_state, m_bufferram)
1367
 
 
1368
 
 
1369
 
        AM_RANGE(0x00980004, 0x00980007) AM_READ(fifoctl_r)
1370
 
        AM_RANGE(0x0098000c, 0x0098000f) AM_READ(videoctl_r)
1371
 
 
1372
 
        AM_RANGE(0x00e80000, 0x00e80007) AM_READWRITE(model2_irq_r, model2_irq_w)
1373
 
 
1374
 
        AM_RANGE(0x00f00000, 0x00f0000f) AM_READWRITE(timers_r, timers_w)
1375
 
 
1376
 
        AM_RANGE(0x01000000, 0x0100ffff) AM_DEVREADWRITE_MODERN("tile", segas24_tile, tile32_r, tile32_w) AM_MIRROR(0x110000)
1377
 
        AM_RANGE(0x01020000, 0x01020003) AM_WRITENOP AM_MIRROR(0x100000)                // Unknown, always 0
1378
 
        AM_RANGE(0x01040000, 0x01040003) AM_WRITENOP AM_MIRROR(0x100000)                // Horizontal synchronization register
1379
 
        AM_RANGE(0x01060000, 0x01060003) AM_WRITENOP AM_MIRROR(0x100000)                // Vertical synchronization register
1380
 
        AM_RANGE(0x01070000, 0x01070003) AM_WRITENOP AM_MIRROR(0x100000)                // Video synchronization switch
1381
 
        AM_RANGE(0x01080000, 0x010fffff) AM_DEVREADWRITE_MODERN("tile", segas24_tile, char32_r, char32_w) AM_MIRROR(0x100000)
1382
 
 
1383
 
        AM_RANGE(0x01800000, 0x01803fff) AM_RAM_WRITE(pal32_w) AM_BASE_MEMBER(model2_state, m_paletteram32)
1384
 
        AM_RANGE(0x01810000, 0x0181bfff) AM_RAM AM_BASE_MEMBER(model2_state, m_colorxlat)
1385
 
        AM_RANGE(0x0181c000, 0x0181c003) AM_WRITE(model2_3d_zclip_w)
1386
 
        AM_RANGE(0x01a10000, 0x01a1ffff) AM_READWRITE(network_r, network_w)
1387
 
        AM_RANGE(0x01d00000, 0x01d03fff) AM_RAM AM_SHARE("backup1") // Backup sram
1388
 
        AM_RANGE(0x02000000, 0x03ffffff) AM_ROM AM_REGION("user1", 0)
1389
 
 
1390
 
        // "extra" data
1391
 
        AM_RANGE(0x06000000, 0x06ffffff) AM_ROM AM_REGION("user1", 0x1000000)
1392
 
 
1393
 
        AM_RANGE(0x10000000, 0x101fffff) AM_WRITE(mode_w)
1394
 
 
1395
 
        AM_RANGE(0x11600000, 0x1167ffff) AM_RAM AM_SHARE("share1") // framebuffer (last bronx)
1396
 
        AM_RANGE(0x11680000, 0x116fffff) AM_RAM AM_SHARE("share1") // FB mirror
1397
 
ADDRESS_MAP_END
1398
 
 
1399
 
/* original Model 2 overrides */
1400
 
static ADDRESS_MAP_START( model2o_mem, AS_PROGRAM, 32 )
1401
 
        AM_RANGE(0x00200000, 0x0021ffff) AM_RAM
1402
 
        AM_RANGE(0x00220000, 0x0023ffff) AM_ROM AM_REGION("maincpu", 0x20000)
1403
 
 
1404
 
        AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w)
1405
 
 
1406
 
        AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w)
1407
 
        AM_RANGE(0x00880000, 0x00883fff) AM_WRITE(copro_function_port_w)
1408
 
        AM_RANGE(0x00884000, 0x00887fff) AM_READWRITE(copro_fifo_r, copro_fifo_w)
1409
 
 
1410
 
        AM_RANGE(0x00980000, 0x00980003) AM_WRITE( copro_ctl1_w )
1411
 
        AM_RANGE(0x00980008, 0x0098000b) AM_WRITE( geo_ctl1_w )
1412
 
        AM_RANGE(0x009c0000, 0x009cffff) AM_READWRITE( model2_serial_r, model2o_serial_w )
1413
 
 
1414
 
        AM_RANGE(0x12000000, 0x121fffff) AM_RAM_WRITE(model2o_tex_w0) AM_MIRROR(0x200000) AM_BASE_MEMBER(model2_state, m_textureram0)   // texture RAM 0
1415
 
        AM_RANGE(0x12400000, 0x125fffff) AM_RAM_WRITE(model2o_tex_w1) AM_MIRROR(0x200000) AM_BASE_MEMBER(model2_state, m_textureram1)   // texture RAM 1
1416
 
        AM_RANGE(0x12800000, 0x1281ffff) AM_RAM_WRITE(model2o_luma_w) AM_BASE_MEMBER(model2_state, m_lumaram) // polygon "luma" RAM
1417
 
 
1418
 
        AM_RANGE(0x01c00000, 0x01c00003) AM_READ_PORT("1c00000")
1419
 
        AM_RANGE(0x01c00004, 0x01c00007) AM_READ_PORT("1c00004")
1420
 
        AM_RANGE(0x01c00010, 0x01c00013) AM_READ_PORT("1c00010")
1421
 
        AM_RANGE(0x01c00014, 0x01c00017) AM_READ_PORT("1c00014")
1422
 
        AM_RANGE(0x01c0001c, 0x01c0001f) AM_READ( desert_unk_r )
1423
 
        AM_RANGE(0x01c00040, 0x01c00043) AM_READ( daytona_unk_r )
1424
 
        AM_RANGE(0x01c00200, 0x01c002ff) AM_RAM AM_SHARE("backup2")
1425
 
        AM_RANGE(0x01c80000, 0x01c80003) AM_READWRITE( model2_serial_r, model2o_serial_w )
1426
 
 
1427
 
        AM_IMPORT_FROM(model2_base_mem)
1428
 
ADDRESS_MAP_END
1429
 
 
1430
 
/* 2A-CRX overrides */
1431
 
static ADDRESS_MAP_START( model2a_crx_mem, AS_PROGRAM, 32 )
1432
 
        AM_RANGE(0x00200000, 0x0023ffff) AM_RAM
1433
 
 
1434
 
        AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w)
1435
 
 
1436
 
        AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w)
1437
 
        AM_RANGE(0x00880000, 0x00883fff) AM_WRITE(copro_function_port_w)
1438
 
        AM_RANGE(0x00884000, 0x00887fff) AM_READWRITE(copro_fifo_r, copro_fifo_w)
1439
 
 
1440
 
        AM_RANGE(0x00980000, 0x00980003) AM_WRITE( copro_ctl1_w )
1441
 
        AM_RANGE(0x00980008, 0x0098000b) AM_WRITE( geo_ctl1_w )
1442
 
        AM_RANGE(0x009c0000, 0x009cffff) AM_READWRITE( model2_serial_r, model2_serial_w )
1443
 
 
1444
 
        AM_RANGE(0x12000000, 0x121fffff) AM_RAM_WRITE(model2o_tex_w0) AM_MIRROR(0x200000) AM_BASE_MEMBER(model2_state, m_textureram0)   // texture RAM 0
1445
 
        AM_RANGE(0x12400000, 0x125fffff) AM_RAM_WRITE(model2o_tex_w1) AM_MIRROR(0x200000) AM_BASE_MEMBER(model2_state, m_textureram1)   // texture RAM 1
1446
 
        AM_RANGE(0x12800000, 0x1281ffff) AM_RAM_WRITE(model2o_luma_w) AM_BASE_MEMBER(model2_state, m_lumaram) // polygon "luma" RAM
1447
 
 
1448
 
        AM_RANGE(0x01c00000, 0x01c00003) AM_READ_PORT("1c00000") AM_WRITE( ctrl0_w )
1449
 
        AM_RANGE(0x01c00004, 0x01c00007) AM_READ_PORT("1c00004")
1450
 
        AM_RANGE(0x01c00010, 0x01c00013) AM_READ_PORT("1c00010")
1451
 
        AM_RANGE(0x01c00014, 0x01c00017) AM_READ_PORT("1c00014")
1452
 
        AM_RANGE(0x01c00018, 0x01c0001b) AM_READ( hotd_unk_r )
1453
 
        AM_RANGE(0x01c0001c, 0x01c0001f) AM_READ_PORT("1c0001c") AM_WRITE( analog_2b_w )
1454
 
        AM_RANGE(0x01c80000, 0x01c80003) AM_READWRITE( model2_serial_r, model2_serial_w )
1455
 
 
1456
 
        AM_IMPORT_FROM(model2_base_mem)
1457
 
ADDRESS_MAP_END
1458
 
 
1459
 
/* 2B-CRX overrides */
1460
 
static ADDRESS_MAP_START( model2b_crx_mem, AS_PROGRAM, 32 )
1461
 
        AM_RANGE(0x00200000, 0x0023ffff) AM_RAM
1462
 
 
1463
 
        AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w)
1464
 
        //AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_sharc_fifo_r, geo_sharc_fifo_w)
1465
 
        //AM_RANGE(0x00840000, 0x00840fff) AM_WRITE(geo_sharc_iop_w)
1466
 
 
1467
 
        AM_RANGE(0x00880000, 0x00883fff) AM_WRITE(copro_function_port_w)
1468
 
        AM_RANGE(0x00884000, 0x00887fff) AM_READWRITE(copro_fifo_r, copro_fifo_w)
1469
 
        AM_RANGE(0x008c0000, 0x008c0fff) AM_WRITE(copro_sharc_iop_w)
1470
 
 
1471
 
        AM_RANGE(0x00980000, 0x00980003) AM_WRITE( copro_ctl1_w )
1472
 
 
1473
 
        AM_RANGE(0x00980008, 0x0098000b) AM_WRITE( geo_ctl1_w )
1474
 
        //AM_RANGE(0x00980008, 0x0098000b) AM_WRITE( geo_sharc_ctl1_w )
1475
 
 
1476
 
        AM_RANGE(0x009c0000, 0x009cffff) AM_READWRITE( model2_serial_r, model2_serial_w )
1477
 
 
1478
 
        AM_RANGE(0x11000000, 0x111fffff) AM_RAM AM_BASE_MEMBER(model2_state, m_textureram0)     // texture RAM 0 (2b/2c)
1479
 
        AM_RANGE(0x11200000, 0x113fffff) AM_RAM AM_BASE_MEMBER(model2_state, m_textureram1)     // texture RAM 1 (2b/2c)
1480
 
        AM_RANGE(0x11400000, 0x1140ffff) AM_RAM AM_BASE_MEMBER(model2_state, m_lumaram)         // polygon "luma" RAM (2b/2c)
1481
 
 
1482
 
 
1483
 
        AM_RANGE(0x01c00000, 0x01c00003) AM_READ_PORT("1c00000") AM_WRITE( ctrl0_w )
1484
 
        AM_RANGE(0x01c00004, 0x01c00007) AM_READ_PORT("1c00004")
1485
 
        AM_RANGE(0x01c00010, 0x01c00013) AM_READ_PORT("1c00010")
1486
 
        AM_RANGE(0x01c00014, 0x01c00017) AM_READ_PORT("1c00014")
1487
 
        AM_RANGE(0x01c00018, 0x01c0001b) AM_READ( hotd_unk_r )
1488
 
        AM_RANGE(0x01c0001c, 0x01c0001f) AM_READ_PORT("1c0001c") AM_WRITE( analog_2b_w )
1489
 
        AM_RANGE(0x01c80000, 0x01c80003) AM_READWRITE( model2_serial_r, model2_serial_w )
1490
 
 
1491
 
        AM_IMPORT_FROM(model2_base_mem)
1492
 
ADDRESS_MAP_END
1493
 
 
1494
 
/* 2C-CRX overrides */
1495
 
static ADDRESS_MAP_START( model2c_crx_mem, AS_PROGRAM, 32 )
1496
 
        AM_RANGE(0x00200000, 0x0023ffff) AM_RAM
1497
 
 
1498
 
        AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w)
1499
 
        AM_RANGE(0x00884000, 0x00887fff) AM_READWRITE(copro_prg_r, copro_prg_w)
1500
 
 
1501
 
        AM_RANGE(0x00980000, 0x00980003) AM_WRITE( copro_ctl1_w )
1502
 
        AM_RANGE(0x00980008, 0x0098000b) AM_WRITE( geo_ctl1_w )
1503
 
        AM_RANGE(0x009c0000, 0x009cffff) AM_READWRITE( model2_serial_r, model2_serial_w )
1504
 
 
1505
 
        AM_RANGE(0x11000000, 0x111fffff) AM_RAM AM_BASE_MEMBER(model2_state, m_textureram0)     // texture RAM 0 (2b/2c)
1506
 
        AM_RANGE(0x11200000, 0x113fffff) AM_RAM AM_BASE_MEMBER(model2_state, m_textureram1)     // texture RAM 1 (2b/2c)
1507
 
        AM_RANGE(0x11400000, 0x1140ffff) AM_RAM AM_BASE_MEMBER(model2_state, m_lumaram)         // polygon "luma" RAM (2b/2c)
1508
 
 
1509
 
        AM_RANGE(0x01c00000, 0x01c00003) AM_READ_PORT("1c00000") AM_WRITE( ctrl0_w )
1510
 
        AM_RANGE(0x01c00004, 0x01c00007) AM_READ_PORT("1c00004")
1511
 
        AM_RANGE(0x01c00010, 0x01c00013) AM_READ_PORT("1c00010")
1512
 
        AM_RANGE(0x01c00014, 0x01c00017) AM_READ_PORT("1c00014")
1513
 
        AM_RANGE(0x01c00018, 0x01c0001b) AM_READ( hotd_unk_r )
1514
 
        AM_RANGE(0x01c0001c, 0x01c0001f) AM_READ_PORT("1c0001c") AM_WRITE( analog_2b_w )
1515
 
        AM_RANGE(0x01c80000, 0x01c80003) AM_READWRITE( model2_serial_r, model2_serial_w )
1516
 
 
1517
 
        AM_IMPORT_FROM(model2_base_mem)
1518
 
ADDRESS_MAP_END
1519
 
 
1520
 
/* Input definitions */
1521
 
 
1522
 
#define MODEL2_PLAYER_INPUTS(_n_, _b1_, _b2_, _b3_, _b4_) \
1523
 
        PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_##_b1_         ) PORT_PLAYER(_n_) \
1524
 
        PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_##_b2_         ) PORT_PLAYER(_n_) \
1525
 
        PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_##_b3_         ) PORT_PLAYER(_n_) \
1526
 
        PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_##_b4_         ) PORT_PLAYER(_n_) \
1527
 
        PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  ) PORT_PLAYER(_n_) \
1528
 
        PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    ) PORT_PLAYER(_n_) \
1529
 
        PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(_n_) \
1530
 
        PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  ) PORT_PLAYER(_n_)
1531
 
 
1532
 
static INPUT_PORTS_START( model2 )
1533
 
        PORT_START("1c00000")
1534
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_LOW, IPT_UNKNOWN )
1535
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(_1c00000_r, NULL)
1536
 
 
1537
 
        PORT_START("1c00004")
1538
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1539
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1540
 
 
1541
 
        PORT_START("1c00010")
1542
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN0")
1543
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1544
 
 
1545
 
        PORT_START("1c00014")
1546
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1547
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1548
 
 
1549
 
        PORT_START("1c0001c")
1550
 
        PORT_BIT( 0x0000001a, IP_ACTIVE_HIGH, IPT_SPECIAL )     // these must be high
1551
 
        PORT_BIT( 0x0000ffe5, IP_ACTIVE_LOW, IPT_UNKNOWN )
1552
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(_1c0001c_r, NULL)
1553
 
 
1554
 
        PORT_START("IN0")
1555
 
        PORT_BIT(0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
1556
 
        PORT_BIT(0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
1557
 
        PORT_SERVICE_NO_TOGGLE( 0x0004, IP_ACTIVE_LOW )
1558
 
        PORT_BIT(0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 )
1559
 
        PORT_BIT(0x0010, IP_ACTIVE_LOW, IPT_START1 )
1560
 
        PORT_BIT(0x0020, IP_ACTIVE_LOW, IPT_START2 )
1561
 
        PORT_BIT(0x0040, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("1P Push Switch") PORT_CODE(KEYCODE_7)
1562
 
        PORT_BIT(0x0080, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("2P Push Switch") PORT_CODE(KEYCODE_8)
1563
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1564
 
 
1565
 
        PORT_START("IN1")
1566
 
        MODEL2_PLAYER_INPUTS(1, BUTTON1, BUTTON2, BUTTON3, BUTTON4)
1567
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1568
 
 
1569
 
        PORT_START("IN2")
1570
 
        MODEL2_PLAYER_INPUTS(2, BUTTON1, BUTTON2, BUTTON3, BUTTON4)
1571
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1572
 
INPUT_PORTS_END
1573
 
 
1574
 
static INPUT_PORTS_START( desert )
1575
 
        PORT_START("1c00000")
1576
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "STEER")
1577
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "ACCEL")
1578
 
 
1579
 
        PORT_START("1c00004")
1580
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "BRAKE")
1581
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1582
 
 
1583
 
        PORT_START("1c00010")
1584
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN0")
1585
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1586
 
 
1587
 
        PORT_START("1c00014")
1588
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1589
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1590
 
 
1591
 
        PORT_START("IN0")
1592
 
        PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_COIN1 )
1593
 
        PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_COIN2 )
1594
 
        PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW )
1595
 
        PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
1596
 
        PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_START1 )
1597
 
        PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) // VR 1 (Blue)
1598
 
        PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) // VR 2 (Green)
1599
 
        PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) // VR 3 (Red)
1600
 
 
1601
 
        PORT_START("IN1")
1602
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) // shift
1603
 
        PORT_BIT( 0x0e, IP_ACTIVE_LOW, IPT_UNUSED )
1604
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)  // machine gun
1605
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)  // cannon
1606
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
1607
 
 
1608
 
        PORT_START("IN2")
1609
 
        MODEL2_PLAYER_INPUTS(2, BUTTON1, BUTTON2, BUTTON3, BUTTON4)
1610
 
 
1611
 
        PORT_START("STEER")
1612
 
        PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1613
 
 
1614
 
        PORT_START("ACCEL")
1615
 
        PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1616
 
 
1617
 
        PORT_START("BRAKE")
1618
 
        PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1619
 
INPUT_PORTS_END
1620
 
 
1621
 
static INPUT_PORTS_START( daytona )
1622
 
        PORT_START("1c00000")
1623
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "STEER")
1624
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "ACCEL")
1625
 
 
1626
 
        PORT_START("1c00004")
1627
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "BRAKE")
1628
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1629
 
 
1630
 
        PORT_START("1c00010")
1631
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN0")
1632
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1633
 
 
1634
 
        PORT_START("1c00014")
1635
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1636
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1637
 
 
1638
 
        PORT_START("IN0")
1639
 
        PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_COIN1 )
1640
 
        PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_COIN2 )
1641
 
        PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW )
1642
 
        PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
1643
 
        PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_START1 )
1644
 
        PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) // VR 1 (Red)
1645
 
        PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) // VR 2 (Blue)
1646
 
        PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) // VR 3 (Yellow)
1647
 
 
1648
 
        PORT_START("IN1")
1649
 
        PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1) // VR 4 (Green)
1650
 
        PORT_BIT(0x0e, IP_ACTIVE_LOW, IPT_UNUSED )
1651
 
        PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // shift 3
1652
 
        PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) // shift 4
1653
 
        PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
1654
 
        PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
1655
 
 
1656
 
        PORT_START("IN2")
1657
 
        MODEL2_PLAYER_INPUTS(2, BUTTON1, BUTTON2, BUTTON3, BUTTON4)
1658
 
 
1659
 
        PORT_START("STEER")
1660
 
        PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1661
 
 
1662
 
        PORT_START("ACCEL")
1663
 
        PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1664
 
 
1665
 
        PORT_START("BRAKE")
1666
 
        PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1667
 
INPUT_PORTS_END
1668
 
 
1669
 
static INPUT_PORTS_START( srallyc )
1670
 
        PORT_START("1c00000")
1671
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_LOW, IPT_UNKNOWN )
1672
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(_1c00000_r, NULL)
1673
 
 
1674
 
        PORT_START("1c00004")
1675
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1676
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1677
 
 
1678
 
        PORT_START("1c00010")
1679
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN0")
1680
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1681
 
 
1682
 
        PORT_START("1c00014")
1683
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1684
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1685
 
 
1686
 
        PORT_START("1c0001c")
1687
 
        PORT_BIT( 0x0000001a, IP_ACTIVE_HIGH, IPT_SPECIAL )     // these must be high
1688
 
        PORT_BIT( 0x0000ffe5, IP_ACTIVE_LOW, IPT_UNKNOWN )
1689
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(_1c0001c_r, NULL)
1690
 
 
1691
 
        PORT_START("IN0")
1692
 
        PORT_BIT(0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
1693
 
        PORT_BIT(0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
1694
 
        PORT_SERVICE_NO_TOGGLE( 0x0004, IP_ACTIVE_LOW )
1695
 
        PORT_BIT(0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 )
1696
 
        PORT_BIT(0x0020, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) // VR
1697
 
        PORT_BIT(0x0040, IP_ACTIVE_LOW, IPT_START1 )
1698
 
        PORT_BIT(0x0090, IP_ACTIVE_LOW, IPT_UNUSED )
1699
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1700
 
 
1701
 
        PORT_START("IN1")
1702
 
        PORT_BIT(0x00ff, IP_ACTIVE_LOW, IPT_UNUSED )
1703
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1704
 
 
1705
 
        PORT_START("IN2")
1706
 
        PORT_BIT(0x00ff, IP_ACTIVE_LOW, IPT_UNUSED )
1707
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1708
 
 
1709
 
        PORT_START("ANA0")      // steer
1710
 
        PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1711
 
 
1712
 
        PORT_START("ANA1")      // accel
1713
 
        PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1714
 
 
1715
 
        PORT_START("ANA2")      // brake
1716
 
        PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
1717
 
INPUT_PORTS_END
1718
 
 
1719
 
 
1720
 
static INPUT_PORTS_START( bel )
1721
 
        PORT_START("1c00000")
1722
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_LOW, IPT_UNKNOWN )
1723
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(_1c00000_r, NULL)
1724
 
 
1725
 
        PORT_START("1c00004")
1726
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1727
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1728
 
 
1729
 
        PORT_START("1c00010")
1730
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN0")
1731
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN1")
1732
 
 
1733
 
        PORT_START("1c00014")
1734
 
        PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_port_read, "IN2")
1735
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
1736
 
 
1737
 
        PORT_START("1c0001c")
1738
 
        PORT_BIT( 0x0000001a, IP_ACTIVE_HIGH, IPT_SPECIAL )     // these must be high
1739
 
        PORT_BIT( 0x0000ffe5, IP_ACTIVE_LOW, IPT_UNKNOWN )
1740
 
        PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(_1c0001c_r, NULL)
1741
 
 
1742
 
        PORT_START("IN0")
1743
 
        PORT_BIT(0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
1744
 
        PORT_BIT(0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
1745
 
        PORT_BIT(0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1746
 
        PORT_SERVICE_NO_TOGGLE( 0x0008, IP_ACTIVE_LOW )
1747
 
        PORT_BIT(0x0010, IP_ACTIVE_LOW, IPT_START1 )
1748
 
        PORT_BIT(0x0020, IP_ACTIVE_LOW, IPT_START2 )
1749
 
        PORT_BIT(0x0040, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("1P Push Switch") PORT_CODE(KEYCODE_7)
1750
 
        PORT_BIT(0x0080, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("2P Push Switch") PORT_CODE(KEYCODE_8)
1751
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1752
 
 
1753
 
        PORT_START("IN1")
1754
 
        MODEL2_PLAYER_INPUTS(1, BUTTON1, BUTTON2, BUTTON3, BUTTON4)
1755
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1756
 
 
1757
 
        PORT_START("IN2")
1758
 
        MODEL2_PLAYER_INPUTS(2, BUTTON1, BUTTON2, BUTTON3, BUTTON4)
1759
 
        PORT_BIT(0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
1760
 
INPUT_PORTS_END
1761
 
 
1762
 
static INPUT_PORTS_START( rchase2 )
1763
 
        PORT_INCLUDE( model2 )
1764
 
 
1765
 
        PORT_MODIFY("IN1")
1766
 
        PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // 1p shot
1767
 
        PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) // 2p shot
1768
 
        PORT_BIT( 0xfffc, IP_ACTIVE_LOW, IPT_UNKNOWN )
1769
 
 
1770
 
        PORT_MODIFY("IN2")
1771
 
        PORT_BIT( 0xffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(rchase2_devices_r, NULL)
1772
 
 
1773
 
        /* FIXME: don't know yet if min max values are really correct, we'll see ... */
1774
 
        PORT_START("ANA0")
1775
 
        PORT_BIT( 0x00ff, 0x0000, IPT_AD_STICK_X ) PORT_MINMAX(0x80,0x7f) PORT_SENSITIVITY(30) PORT_KEYDELTA(20) PORT_PLAYER(2)
1776
 
 
1777
 
        PORT_START("ANA1")
1778
 
        PORT_BIT( 0x00ff, 0x0000, IPT_AD_STICK_X ) PORT_MINMAX(0x80,0x7f) PORT_SENSITIVITY(30) PORT_KEYDELTA(20) PORT_PLAYER(1)
1779
 
 
1780
 
        PORT_START("ANA2")
1781
 
        PORT_BIT( 0x00ff, 0x0000, IPT_AD_STICK_Y ) PORT_MINMAX(0x00,0xff) PORT_SENSITIVITY(30) PORT_KEYDELTA(20) PORT_PLAYER(2)
1782
 
 
1783
 
        PORT_START("ANA3")
1784
 
        PORT_BIT( 0x00ff, 0x0000, IPT_AD_STICK_Y ) PORT_MINMAX(0x00,0xff) PORT_SENSITIVITY(30) PORT_KEYDELTA(20) PORT_PLAYER(1)
1785
 
INPUT_PORTS_END
1786
 
 
1787
 
static INTERRUPT_GEN(model2_interrupt)
1788
 
{
1789
 
        model2_state *state = device->machine().driver_data<model2_state>();
1790
 
        switch (cpu_getiloops(device))
1791
 
        {
1792
 
                case 0:
1793
 
                        state->m_intreq |= (1<<10);
1794
 
                        if (state->m_intena & (1<<10))
1795
 
                        {
1796
 
                                device_set_input_line(device, I960_IRQ3, ASSERT_LINE);
1797
 
                        }
1798
 
                        break;
1799
 
                case 1:
1800
 
                        state->m_intreq |= (1<<0);
1801
 
                        if (state->m_intena & (1<<0))
1802
 
                        {
1803
 
                                device_set_input_line(device, I960_IRQ0, ASSERT_LINE);
1804
 
                        }
1805
 
                        break;
1806
 
        }
1807
 
}
1808
 
 
1809
 
static INTERRUPT_GEN(model2c_interrupt)
1810
 
{
1811
 
        model2_state *state = device->machine().driver_data<model2_state>();
1812
 
        switch (cpu_getiloops(device))
1813
 
        {
1814
 
                case 0:
1815
 
                        state->m_intreq |= (1<<10);
1816
 
                        if (state->m_intena & (1<<10))
1817
 
                                device_set_input_line(device, I960_IRQ3, ASSERT_LINE);
1818
 
                        break;
1819
 
                case 1:
1820
 
                        state->m_intreq |= (1<<2);
1821
 
                        if (state->m_intena & (1<<2))
1822
 
                                device_set_input_line(device, I960_IRQ2, ASSERT_LINE);
1823
 
 
1824
 
                        break;
1825
 
                case 2:
1826
 
                        state->m_intreq |= (1<<0);
1827
 
                        if (state->m_intena & (1<<0))
1828
 
                                device_set_input_line(device, I960_IRQ0, ASSERT_LINE);
1829
 
                        break;
1830
 
        }
1831
 
}
1832
 
 
1833
 
/* Model 1 sound board emulation */
1834
 
 
1835
 
static READ16_HANDLER( m1_snd_68k_latch_r )
1836
 
{
1837
 
        model2_state *state = space->machine().driver_data<model2_state>();
1838
 
        return state->m_to_68k;
1839
 
}
1840
 
 
1841
 
static READ16_HANDLER( m1_snd_v60_ready_r )
1842
 
{
1843
 
        return 1;
1844
 
}
1845
 
 
1846
 
static WRITE16_DEVICE_HANDLER( m1_snd_mpcm_bnk_w )
1847
 
{
1848
 
        multipcm_set_bank(device, 0x100000 * (data & 0xf), 0x100000 * (data & 0xf));
1849
 
}
1850
 
 
1851
 
static WRITE16_HANDLER( m1_snd_68k_latch1_w )
1852
 
{
1853
 
}
1854
 
 
1855
 
static WRITE16_HANDLER( m1_snd_68k_latch2_w )
1856
 
{
1857
 
}
1858
 
 
1859
 
static ADDRESS_MAP_START( model1_snd, AS_PROGRAM, 16 )
1860
 
        AM_RANGE(0x000000, 0x07ffff) AM_ROM
1861
 
        AM_RANGE(0x080000, 0x0bffff) AM_ROM AM_REGION("audiocpu", 0x20000)      // mirror of second program ROM
1862
 
        AM_RANGE(0xc20000, 0xc20001) AM_READWRITE( m1_snd_68k_latch_r, m1_snd_68k_latch1_w )
1863
 
        AM_RANGE(0xc20002, 0xc20003) AM_READWRITE( m1_snd_v60_ready_r, m1_snd_68k_latch2_w )
1864
 
        AM_RANGE(0xc40000, 0xc40007) AM_DEVREADWRITE8( "sega1", multipcm_r, multipcm_w, 0x00ff )
1865
 
        AM_RANGE(0xc40012, 0xc40013) AM_WRITENOP
1866
 
        AM_RANGE(0xc50000, 0xc50001) AM_DEVWRITE( "sega1", m1_snd_mpcm_bnk_w )
1867
 
        AM_RANGE(0xc60000, 0xc60007) AM_DEVREADWRITE8( "sega2", multipcm_r, multipcm_w, 0x00ff )
1868
 
        AM_RANGE(0xc70000, 0xc70001) AM_DEVWRITE( "sega2", m1_snd_mpcm_bnk_w )
1869
 
        AM_RANGE(0xd00000, 0xd00007) AM_DEVREADWRITE8( "ymsnd", ym3438_r, ym3438_w, 0x00ff )
1870
 
        AM_RANGE(0xf00000, 0xf0ffff) AM_RAM
1871
 
ADDRESS_MAP_END
1872
 
 
1873
 
/* Model 2 sound board emulation */
1874
 
 
1875
 
static WRITE16_HANDLER( model2snd_ctrl )
1876
 
{
1877
 
        // handle sample banking
1878
 
        if (space->machine().region("scsp")->bytes() > 0x800000)
1879
 
        {
1880
 
                UINT8 *snd = space->machine().region("scsp")->base();
1881
 
                if (data & 0x20)
1882
 
                {
1883
 
                        memory_set_bankptr(space->machine(), "bank4", snd + 0x200000);
1884
 
                        memory_set_bankptr(space->machine(), "bank5", snd + 0x600000);
1885
 
                }
1886
 
                else
1887
 
                {
1888
 
                        memory_set_bankptr(space->machine(), "bank4", snd + 0x800000);
1889
 
                        memory_set_bankptr(space->machine(), "bank5", snd + 0xa00000);
1890
 
                }
1891
 
        }
1892
 
}
1893
 
 
1894
 
static ADDRESS_MAP_START( model2_snd, AS_PROGRAM, 16 )
1895
 
        AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_REGION("audiocpu", 0) AM_BASE_MEMBER(model2_state, m_soundram)
1896
 
        AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp", scsp_r, scsp_w)
1897
 
        AM_RANGE(0x400000, 0x400001) AM_WRITE(model2snd_ctrl)
1898
 
        AM_RANGE(0x600000, 0x67ffff) AM_ROM AM_REGION("audiocpu", 0x80000)
1899
 
        AM_RANGE(0x800000, 0x9fffff) AM_ROM AM_REGION("scsp", 0)
1900
 
        AM_RANGE(0xa00000, 0xdfffff) AM_ROMBANK("bank4")
1901
 
        AM_RANGE(0xe00000, 0xffffff) AM_ROMBANK("bank5")
1902
 
ADDRESS_MAP_END
1903
 
 
1904
 
 
1905
 
static void scsp_irq(device_t *device, int irq)
1906
 
{
1907
 
        model2_state *state = device->machine().driver_data<model2_state>();
1908
 
        if (irq > 0)
1909
 
        {
1910
 
                state->m_scsp_last_line = irq;
1911
 
                cputag_set_input_line(device->machine(), "audiocpu", irq, ASSERT_LINE);
1912
 
        }
1913
 
        else
1914
 
                cputag_set_input_line(device->machine(), "audiocpu", -irq, CLEAR_LINE);
1915
 
}
1916
 
 
1917
 
static const scsp_interface scsp_config =
1918
 
{
1919
 
        0,
1920
 
        scsp_irq,
1921
 
        DEVCB_NULL
1922
 
};
1923
 
 
1924
 
 
1925
 
 
1926
 
/*****************************************************************************/
1927
 
// SHARC memory maps
1928
 
 
1929
 
static READ32_HANDLER(copro_sharc_input_fifo_r)
1930
 
{
1931
 
        UINT32 result = 0;
1932
 
        //mame_printf_debug("SHARC FIFOIN pop at %08X\n", cpu_get_pc(&space->device()));
1933
 
 
1934
 
        copro_fifoin_pop(space->machine().device("dsp"), &result);
1935
 
        return result;
1936
 
}
1937
 
 
1938
 
static WRITE32_HANDLER(copro_sharc_output_fifo_w)
1939
 
{
1940
 
        //mame_printf_debug("SHARC FIFOOUT push %08X\n", data);
1941
 
        copro_fifoout_push(space->machine().device("dsp"), data);
1942
 
}
1943
 
 
1944
 
static READ32_HANDLER(copro_sharc_buffer_r)
1945
 
{
1946
 
        model2_state *state = space->machine().driver_data<model2_state>();
1947
 
        return state->m_bufferram[offset & 0x7fff];
1948
 
}
1949
 
 
1950
 
static WRITE32_HANDLER(copro_sharc_buffer_w)
1951
 
{
1952
 
        model2_state *state = space->machine().driver_data<model2_state>();
1953
 
        //mame_printf_debug("sharc_buffer_w: %08X at %08X, %08X, %f\n", offset, cpu_get_pc(&space->device()), data, *(float*)&data);
1954
 
        state->m_bufferram[offset & 0x7fff] = data;
1955
 
}
1956
 
 
1957
 
static ADDRESS_MAP_START( copro_sharc_map, AS_DATA, 32 )
1958
 
        AM_RANGE(0x0400000, 0x0bfffff) AM_READ(copro_sharc_input_fifo_r)
1959
 
        AM_RANGE(0x0c00000, 0x13fffff) AM_WRITE(copro_sharc_output_fifo_w)
1960
 
        AM_RANGE(0x1400000, 0x1bfffff) AM_READWRITE(copro_sharc_buffer_r, copro_sharc_buffer_w)
1961
 
        AM_RANGE(0x1c00000, 0x1dfffff) AM_ROM AM_REGION("user5", 0)
1962
 
ADDRESS_MAP_END
1963
 
 
1964
 
#if 0
1965
 
static ADDRESS_MAP_START( geo_sharc_map, AS_DATA, 32 )
1966
 
ADDRESS_MAP_END
1967
 
#endif
1968
 
 
1969
 
/*****************************************************************************/
1970
 
/* TGP memory maps */
1971
 
 
1972
 
static READ32_HANDLER(copro_tgp_buffer_r)
1973
 
{
1974
 
        model2_state *state = space->machine().driver_data<model2_state>();
1975
 
        return state->m_bufferram[offset & 0x7fff];
1976
 
}
1977
 
 
1978
 
static WRITE32_HANDLER(copro_tgp_buffer_w)
1979
 
{
1980
 
        model2_state *state = space->machine().driver_data<model2_state>();
1981
 
        state->m_bufferram[offset&0x7fff] = data;
1982
 
}
1983
 
 
1984
 
static ADDRESS_MAP_START( copro_tgp_map, AS_PROGRAM, 32 )
1985
 
        AM_RANGE(0x00000000, 0x00007fff) AM_RAM AM_BASE_MEMBER(model2_state, m_tgp_program)
1986
 
        AM_RANGE(0x00400000, 0x00407fff) AM_READWRITE(copro_tgp_buffer_r, copro_tgp_buffer_w)
1987
 
        AM_RANGE(0xff800000, 0xff9fffff) AM_ROM AM_REGION("tgp", 0)
1988
 
ADDRESS_MAP_END
1989
 
 
1990
 
/*****************************************************************************/
1991
 
 
1992
 
static const mb86233_cpu_core tgp_config =
1993
 
{
1994
 
        copro_fifoin_pop,
1995
 
        copro_fifoout_push,
1996
 
        "user5",
1997
 
};
1998
 
 
1999
 
 
2000
 
 
2001
 
/* original Model 2 */
2002
 
static MACHINE_CONFIG_START( model2o, model2_state )
2003
 
        MCFG_CPU_ADD("maincpu", I960, 25000000)
2004
 
        MCFG_CPU_PROGRAM_MAP(model2o_mem)
2005
 
        MCFG_CPU_VBLANK_INT_HACK(model2_interrupt,2)
2006
 
 
2007
 
        MCFG_CPU_ADD("audiocpu", M68000, 10000000)
2008
 
        MCFG_CPU_PROGRAM_MAP(model1_snd)
2009
 
 
2010
 
        MCFG_CPU_ADD("tgp", MB86233, 16000000)
2011
 
        MCFG_CPU_CONFIG(tgp_config)
2012
 
        MCFG_CPU_PROGRAM_MAP(copro_tgp_map)
2013
 
 
2014
 
        MCFG_MACHINE_START(model2)
2015
 
        MCFG_MACHINE_RESET(model2o)
2016
 
 
2017
 
        MCFG_EEPROM_93C46_ADD("eeprom")
2018
 
        MCFG_NVRAM_ADD_1FILL("backup1")
2019
 
        MCFG_NVRAM_ADD_1FILL("backup2")
2020
 
 
2021
 
        MCFG_TIMER_ADD("timer0", model2_timer_cb)
2022
 
        MCFG_TIMER_PTR((FPTR)0)
2023
 
        MCFG_TIMER_ADD("timer1", model2_timer_cb)
2024
 
        MCFG_TIMER_PTR((FPTR)1)
2025
 
        MCFG_TIMER_ADD("timer2", model2_timer_cb)
2026
 
        MCFG_TIMER_PTR((FPTR)2)
2027
 
        MCFG_TIMER_ADD("timer3", model2_timer_cb)
2028
 
        MCFG_TIMER_PTR((FPTR)3)
2029
 
 
2030
 
        MCFG_S24TILE_DEVICE_ADD("tile", 0x3fff)
2031
 
 
2032
 
        MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
2033
 
 
2034
 
        MCFG_SCREEN_ADD("screen", RASTER)
2035
 
        MCFG_SCREEN_REFRESH_RATE(60)
2036
 
        MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
2037
 
        MCFG_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
2038
 
        MCFG_SCREEN_SIZE(62*8, 48*8)
2039
 
        MCFG_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
2040
 
        MCFG_SCREEN_UPDATE(model2)
2041
 
 
2042
 
        MCFG_PALETTE_LENGTH(8192)
2043
 
 
2044
 
        MCFG_VIDEO_START(model2)
2045
 
 
2046
 
        MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
2047
 
 
2048
 
        MCFG_SOUND_ADD("ymsnd", YM3438, 8000000)
2049
 
        MCFG_SOUND_ROUTE(0, "lspeaker", 0.60)
2050
 
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.60)
2051
 
 
2052
 
        MCFG_SOUND_ADD("sega1", MULTIPCM, 8000000)
2053
 
        MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
2054
 
        MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
2055
 
 
2056
 
        MCFG_SOUND_ADD("sega2", MULTIPCM, 8000000)
2057
 
        MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
2058
 
        MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
2059
 
MACHINE_CONFIG_END
2060
 
 
2061
 
/* 2A-CRX */
2062
 
static MACHINE_CONFIG_START( model2a, model2_state )
2063
 
        MCFG_CPU_ADD("maincpu", I960, 25000000)
2064
 
        MCFG_CPU_PROGRAM_MAP(model2a_crx_mem)
2065
 
        MCFG_CPU_VBLANK_INT_HACK(model2_interrupt,2)
2066
 
 
2067
 
        MCFG_CPU_ADD("audiocpu", M68000, 12000000)
2068
 
        MCFG_CPU_PROGRAM_MAP(model2_snd)
2069
 
 
2070
 
        MCFG_CPU_ADD("tgp", MB86233, 16000000)
2071
 
        MCFG_CPU_CONFIG(tgp_config)
2072
 
        MCFG_CPU_PROGRAM_MAP(copro_tgp_map)
2073
 
 
2074
 
        MCFG_MACHINE_START(model2)
2075
 
        MCFG_MACHINE_RESET(model2)
2076
 
 
2077
 
        MCFG_EEPROM_93C46_ADD("eeprom")
2078
 
        MCFG_NVRAM_ADD_1FILL("backup1")
2079
 
 
2080
 
        MCFG_TIMER_ADD("timer0", model2_timer_cb)
2081
 
        MCFG_TIMER_PTR((FPTR)0)
2082
 
        MCFG_TIMER_ADD("timer1", model2_timer_cb)
2083
 
        MCFG_TIMER_PTR((FPTR)1)
2084
 
        MCFG_TIMER_ADD("timer2", model2_timer_cb)
2085
 
        MCFG_TIMER_PTR((FPTR)2)
2086
 
        MCFG_TIMER_ADD("timer3", model2_timer_cb)
2087
 
        MCFG_TIMER_PTR((FPTR)3)
2088
 
 
2089
 
        MCFG_S24TILE_DEVICE_ADD("tile", 0x3fff)
2090
 
 
2091
 
        MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
2092
 
 
2093
 
        MCFG_SCREEN_ADD("screen", RASTER)
2094
 
        MCFG_SCREEN_REFRESH_RATE(60)
2095
 
        MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
2096
 
        MCFG_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
2097
 
        MCFG_SCREEN_SIZE(62*8, 48*8)
2098
 
        MCFG_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
2099
 
        MCFG_SCREEN_UPDATE(model2)
2100
 
 
2101
 
        MCFG_PALETTE_LENGTH(8192)
2102
 
 
2103
 
        MCFG_VIDEO_START(model2)
2104
 
 
2105
 
        MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
2106
 
 
2107
 
        MCFG_SOUND_ADD("scsp", SCSP, 0)
2108
 
        MCFG_SOUND_CONFIG(scsp_config)
2109
 
        MCFG_SOUND_ROUTE(0, "lspeaker", 2.0)
2110
 
        MCFG_SOUND_ROUTE(0, "rspeaker", 2.0)
2111
 
MACHINE_CONFIG_END
2112
 
 
2113
 
static READ8_HANDLER( driveio_port_r )
2114
 
{
2115
 
        model2_state *state = space->machine().driver_data<model2_state>();
2116
 
        return state->m_driveio_comm_data;
2117
 
}
2118
 
 
2119
 
static WRITE8_HANDLER( driveio_port_w )
2120
 
{
2121
 
//  TODO: hook up to the main CPU
2122
 
//  popmessage("%02x",data);
2123
 
}
2124
 
 
2125
 
static READ8_HANDLER( driveio_port_str_r )
2126
 
{
2127
 
        static const char sega_str[4] = { 'S', 'E', 'G', 'A' };
2128
 
 
2129
 
        return sega_str[offset];
2130
 
}
2131
 
 
2132
 
static ADDRESS_MAP_START( drive_map, AS_PROGRAM, 8 )
2133
 
        AM_RANGE(0x0000, 0x7fff) AM_ROM
2134
 
        AM_RANGE(0xe000, 0xffff) AM_RAM
2135
 
ADDRESS_MAP_END
2136
 
 
2137
 
static ADDRESS_MAP_START( drive_io_map, AS_IO, 8 )
2138
 
        ADDRESS_MAP_GLOBAL_MASK(0xff)
2139
 
        AM_RANGE(0x00, 0x00) AM_WRITENOP //watchdog
2140
 
        AM_RANGE(0x23, 0x23) AM_WRITE(driveio_port_w)
2141
 
        AM_RANGE(0x26, 0x27) AM_READ(driveio_port_r)
2142
 
        AM_RANGE(0x28, 0x2b) AM_READ(driveio_port_str_r)
2143
 
        AM_RANGE(0x40, 0x4f) AM_WRITENOP //Oki M6253
2144
 
        AM_RANGE(0x80, 0x83) AM_NOP //r/w it during irq
2145
 
ADDRESS_MAP_END
2146
 
 
2147
 
static MACHINE_CONFIG_DERIVED( srallyc, model2a )
2148
 
 
2149
 
        MCFG_CPU_ADD("drivecpu", Z80, 16000000/4) //???
2150
 
        MCFG_CPU_PROGRAM_MAP(drive_map)
2151
 
        MCFG_CPU_IO_MAP(drive_io_map)
2152
 
//  MCFG_CPU_VBLANK_INT("screen", irq0_line_hold)
2153
 
MACHINE_CONFIG_END
2154
 
 
2155
 
static const sharc_config sharc_cfg =
2156
 
{
2157
 
        BOOT_MODE_HOST
2158
 
};
2159
 
 
2160
 
/* 2B-CRX */
2161
 
static MACHINE_CONFIG_START( model2b, model2_state )
2162
 
        MCFG_CPU_ADD("maincpu", I960, 25000000)
2163
 
        MCFG_CPU_PROGRAM_MAP(model2b_crx_mem)
2164
 
        MCFG_CPU_VBLANK_INT_HACK(model2_interrupt,2)
2165
 
 
2166
 
        MCFG_CPU_ADD("audiocpu", M68000, 12000000)
2167
 
        MCFG_CPU_PROGRAM_MAP(model2_snd)
2168
 
 
2169
 
        MCFG_CPU_ADD("dsp", ADSP21062, 40000000)
2170
 
        MCFG_CPU_CONFIG(sharc_cfg)
2171
 
        MCFG_CPU_DATA_MAP(copro_sharc_map)
2172
 
 
2173
 
        //MCFG_CPU_ADD("dsp2", ADSP21062, 40000000)
2174
 
        //MCFG_CPU_CONFIG(sharc_cfg)
2175
 
        //MCFG_CPU_DATA_MAP(geo_sharc_map)
2176
 
 
2177
 
        MCFG_QUANTUM_TIME(attotime::from_hz(18000))
2178
 
 
2179
 
        MCFG_MACHINE_START(model2)
2180
 
        MCFG_MACHINE_RESET(model2b)
2181
 
 
2182
 
        MCFG_EEPROM_93C46_ADD("eeprom")
2183
 
        MCFG_NVRAM_ADD_1FILL("backup1")
2184
 
 
2185
 
        MCFG_TIMER_ADD("timer0", model2_timer_cb)
2186
 
        MCFG_TIMER_PTR((FPTR)0)
2187
 
        MCFG_TIMER_ADD("timer1", model2_timer_cb)
2188
 
        MCFG_TIMER_PTR((FPTR)1)
2189
 
        MCFG_TIMER_ADD("timer2", model2_timer_cb)
2190
 
        MCFG_TIMER_PTR((FPTR)2)
2191
 
        MCFG_TIMER_ADD("timer3", model2_timer_cb)
2192
 
        MCFG_TIMER_PTR((FPTR)3)
2193
 
 
2194
 
        MCFG_S24TILE_DEVICE_ADD("tile", 0x3fff)
2195
 
 
2196
 
        MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
2197
 
 
2198
 
        MCFG_SCREEN_ADD("screen", RASTER)
2199
 
        MCFG_SCREEN_REFRESH_RATE(60)
2200
 
        MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
2201
 
        MCFG_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
2202
 
        MCFG_SCREEN_SIZE(62*8, 48*8)
2203
 
        MCFG_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
2204
 
        MCFG_SCREEN_UPDATE(model2)
2205
 
 
2206
 
        MCFG_PALETTE_LENGTH(8192)
2207
 
 
2208
 
        MCFG_VIDEO_START(model2)
2209
 
 
2210
 
        MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
2211
 
 
2212
 
        MCFG_SOUND_ADD("scsp", SCSP, 0)
2213
 
        MCFG_SOUND_CONFIG(scsp_config)
2214
 
        MCFG_SOUND_ROUTE(0, "lspeaker", 2.0)
2215
 
        MCFG_SOUND_ROUTE(0, "rspeaker", 2.0)
2216
 
MACHINE_CONFIG_END
2217
 
 
2218
 
/* 2C-CRX */
2219
 
static MACHINE_CONFIG_START( model2c, model2_state )
2220
 
        MCFG_CPU_ADD("maincpu", I960, 25000000)
2221
 
        MCFG_CPU_PROGRAM_MAP(model2c_crx_mem)
2222
 
        MCFG_CPU_VBLANK_INT_HACK(model2c_interrupt,3)
2223
 
 
2224
 
        MCFG_CPU_ADD("audiocpu", M68000, 12000000)
2225
 
        MCFG_CPU_PROGRAM_MAP(model2_snd)
2226
 
 
2227
 
        MCFG_MACHINE_START(model2)
2228
 
        MCFG_MACHINE_RESET(model2c)
2229
 
 
2230
 
        MCFG_EEPROM_93C46_ADD("eeprom")
2231
 
        MCFG_NVRAM_ADD_1FILL("backup1")
2232
 
 
2233
 
        MCFG_TIMER_ADD("timer0", model2_timer_cb)
2234
 
        MCFG_TIMER_PTR((FPTR)0)
2235
 
        MCFG_TIMER_ADD("timer1", model2_timer_cb)
2236
 
        MCFG_TIMER_PTR((FPTR)1)
2237
 
        MCFG_TIMER_ADD("timer2", model2_timer_cb)
2238
 
        MCFG_TIMER_PTR((FPTR)2)
2239
 
        MCFG_TIMER_ADD("timer3", model2_timer_cb)
2240
 
        MCFG_TIMER_PTR((FPTR)3)
2241
 
 
2242
 
        MCFG_S24TILE_DEVICE_ADD("tile", 0x3fff)
2243
 
 
2244
 
        MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
2245
 
 
2246
 
        MCFG_SCREEN_ADD("screen", RASTER)
2247
 
        MCFG_SCREEN_REFRESH_RATE(60)
2248
 
        MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
2249
 
        MCFG_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
2250
 
        MCFG_SCREEN_SIZE(62*8, 48*8)
2251
 
        MCFG_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
2252
 
        MCFG_SCREEN_UPDATE(model2)
2253
 
 
2254
 
        MCFG_PALETTE_LENGTH(8192)
2255
 
 
2256
 
        MCFG_VIDEO_START(model2)
2257
 
 
2258
 
        MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
2259
 
 
2260
 
        MCFG_SOUND_ADD("scsp", SCSP, 0)
2261
 
        MCFG_SOUND_CONFIG(scsp_config)
2262
 
        MCFG_SOUND_ROUTE(0, "lspeaker", 2.0)
2263
 
        MCFG_SOUND_ROUTE(0, "rspeaker", 2.0)
2264
 
MACHINE_CONFIG_END
2265
 
 
2266
 
/* ROM definitions */
2267
 
 
2268
 
/*
2269
 
(info from 2a)
2270
 
 
2271
 
The smt ROMs are located on the CPU board and are labelled....
2272
 
OPR-14742A \
2273
 
OPR-14743A /  Linked to 315-5674
2274
 
OPR-14744    \
2275
 
OPR-14745    /  Linked to 315-5679B
2276
 
OPR-14746    \
2277
 
OPR-14747    /  Linked to 315-5679B
2278
 
 
2279
 
*/
2280
 
 
2281
 
#define MODEL2_CPU_BOARD \
2282
 
        ROM_REGION( 0xc0000, "user5", 0 ) \
2283
 
        ROM_LOAD32_WORD("opr-14742a.45",  0x000000,  0x20000, CRC(90c6b117) SHA1(f46429fffcee17d056f56d5fe035a33f1fd6c27e) ) \
2284
 
        ROM_LOAD32_WORD("opr-14743a.46",  0x000002,  0x20000, CRC(ae7f446b) SHA1(5b9f1fc47caf21e061e930c0d72804e4ec8c7bca) ) \
2285
 
        ROM_LOAD("opr-14744.58",   0x040000,  0x20000, CRC(730ea9e0) SHA1(651f1db4089a400d073b19ada299b4b08b08f372) ) \
2286
 
        ROM_LOAD("opr-14745.59",   0x060000,  0x20000, CRC(4c934d96) SHA1(e3349ece0e47f684d61ad11bfea4a90602287350) ) \
2287
 
        ROM_LOAD("opr-14746.62",   0x080000,  0x20000, CRC(2a266cbd) SHA1(34e047a93459406c22acf4c25089d1a4955f94ca) ) \
2288
 
        ROM_LOAD("opr-14747.63",   0x0a0000,  0x20000, CRC(a4ad5e19) SHA1(7d7ec300eeb9a8de1590011e37108688c092f329) ) \
2289
 
 
2290
 
/*
2291
 
These are smt ROMs found on Sega Model 2A Video board
2292
 
They are linked to a QFP208 IC labelled 315-5645
2293
 
*/
2294
 
 
2295
 
#define MODEL2A_VID_BOARD \
2296
 
        ROM_REGION( 0x180000, "user6", 0 ) \
2297
 
        ROM_LOAD("mpr-16310.15",   0x000000,  0x80000, CRC(c078a780) SHA1(0ad5b49774172743e2708b7ca4c061acfe10957a) ) \
2298
 
        ROM_LOAD("mpr-16311.16",   0x080000,  0x80000, CRC(452a492b) SHA1(88c2f6c2dbfd0c1b39a7bf15c74455fb68c7274e) ) \
2299
 
        ROM_LOAD("mpr-16312.14",   0x100000,  0x80000, CRC(a25fef5b) SHA1(c6a37856b97f5bc4996cb6b66209f47af392cc38) ) \
2300
 
 
2301
 
 
2302
 
 
2303
 
ROM_START( zeroguna ) /* Zero Gunner (Export), Model 2A */
2304
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2305
 
        ROM_LOAD32_WORD("epr-20437", 0x000000, 0x080000, CRC(fad30cc0) SHA1(5c6222e07594b4be59b5095f7cc0a164d5895306) )
2306
 
        ROM_LOAD32_WORD("epr-20438", 0x000002, 0x080000, CRC(ca364408) SHA1(4672ebdd7d9ccab5e107fda9d322b70583246c7a) )
2307
 
 
2308
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
2309
 
        ROM_LOAD32_WORD("mpr-20296.11", 0x000000, 0x400000, CRC(072d8a5e) SHA1(7f69c90dd3c3e6e522d1065b3c4b09434cb4e634) )
2310
 
        ROM_LOAD32_WORD("mpr-20297.12", 0x000002, 0x400000, CRC(ba6a825b) SHA1(670a86c3a1a78550c760cc66c0a6181928fb9054) )
2311
 
        ROM_LOAD32_WORD("mpr-20294.9",  0x800000, 0x400000, CRC(a0bd1474) SHA1(c0c032adac69bd545e3aab481878b08f3c3edab8) )
2312
 
        ROM_LOAD32_WORD("mpr-20295.10", 0x800002, 0x400000, CRC(c548cced) SHA1(d34f2fc9b4481c75a6824aa4bdd3f1884188d35b) )
2313
 
 
2314
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2315
 
 
2316
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
2317
 
        ROM_LOAD32_WORD("mpr-20298.17", 0x000000, 0x400000, CRC(8ab782fc) SHA1(595f6fc2e9c58ce9763d51798ceead8d470f0a33) )
2318
 
        ROM_LOAD32_WORD("mpr-20299.21", 0x000002, 0x400000, CRC(90e20cdb) SHA1(730d58286fb7e91aa4128dc208b0f60eb3becc78) )
2319
 
 
2320
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures
2321
 
        ROM_LOAD32_WORD("mpr-20301.27", 0x000000, 0x200000, CRC(52010fb2) SHA1(8dce67c6f9e48d749c64b11d4569df413dc40e07) )
2322
 
        ROM_LOAD32_WORD("mpr-20300.25", 0x000002, 0x200000, CRC(6f042792) SHA1(75db68e57ec3fbc7af377342eef81f26fae4e1c4) )
2323
 
 
2324
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2325
 
        ROM_LOAD16_WORD_SWAP("epr-20302.31",  0x080000,  0x80000, CRC(44ff50d2) SHA1(6ffec81042fd5708e8a5df47b63f9809f93bf0f8) )
2326
 
 
2327
 
        ROM_REGION( 0x400000, "scsp", 0 ) // Samples
2328
 
        ROM_LOAD("mpr-20303.32", 0x000000, 0x200000, CRC(c040973f) SHA1(57a496c5dcc1a3931b6e41bf8d41e45d6dac0c31) )
2329
 
        ROM_LOAD("mpr-20304.33", 0x200000, 0x200000, CRC(6decfe83) SHA1(d73adafceff2f1776c93e53bd5677d67f1c2c08f) )
2330
 
 
2331
 
        MODEL2_CPU_BOARD
2332
 
        MODEL2A_VID_BOARD
2333
 
ROM_END
2334
 
 
2335
 
ROM_START( zerogun ) /* Zero Gunner (Export), Model 2B */
2336
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2337
 
        ROM_LOAD32_WORD("epr-20439.15", 0x000000, 0x080000, CRC(10125381) SHA1(1e178e6bd2b1312cd6290f1be4b386f520465836) )
2338
 
        ROM_LOAD32_WORD("epr-20440.16", 0x000002, 0x080000, CRC(ce872747) SHA1(82bf138a42c659b675b14e41d526b1628fb46ae3) )
2339
 
 
2340
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
2341
 
        ROM_LOAD32_WORD("mpr-20296.11", 0x000000, 0x400000, CRC(072d8a5e) SHA1(7f69c90dd3c3e6e522d1065b3c4b09434cb4e634) )
2342
 
        ROM_LOAD32_WORD("mpr-20297.12", 0x000002, 0x400000, CRC(ba6a825b) SHA1(670a86c3a1a78550c760cc66c0a6181928fb9054) )
2343
 
        ROM_LOAD32_WORD("mpr-20294.9",  0x800000, 0x400000, CRC(a0bd1474) SHA1(c0c032adac69bd545e3aab481878b08f3c3edab8) )
2344
 
        ROM_LOAD32_WORD("mpr-20295.10", 0x800002, 0x400000, CRC(c548cced) SHA1(d34f2fc9b4481c75a6824aa4bdd3f1884188d35b) )
2345
 
 
2346
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
2347
 
        ROM_LOAD32_WORD("mpr-20298.17", 0x000000, 0x400000, CRC(8ab782fc) SHA1(595f6fc2e9c58ce9763d51798ceead8d470f0a33) )
2348
 
        ROM_LOAD32_WORD("mpr-20299.21", 0x000002, 0x400000, CRC(90e20cdb) SHA1(730d58286fb7e91aa4128dc208b0f60eb3becc78) )
2349
 
 
2350
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures
2351
 
        ROM_LOAD32_WORD("mpr-20301.27", 0x000000, 0x200000, CRC(52010fb2) SHA1(8dce67c6f9e48d749c64b11d4569df413dc40e07) )
2352
 
        ROM_LOAD32_WORD("mpr-20300.25", 0x000002, 0x200000, CRC(6f042792) SHA1(75db68e57ec3fbc7af377342eef81f26fae4e1c4) )
2353
 
 
2354
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
2355
 
 
2356
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2357
 
        ROM_LOAD16_WORD_SWAP("epr-20302.31",  0x080000,  0x80000, CRC(44ff50d2) SHA1(6ffec81042fd5708e8a5df47b63f9809f93bf0f8) )
2358
 
 
2359
 
        ROM_REGION( 0x400000, "scsp", 0 ) // Samples
2360
 
        ROM_LOAD("mpr-20303.32", 0x000000, 0x200000, CRC(c040973f) SHA1(57a496c5dcc1a3931b6e41bf8d41e45d6dac0c31) )
2361
 
        ROM_LOAD("mpr-20304.33", 0x200000, 0x200000, CRC(6decfe83) SHA1(d73adafceff2f1776c93e53bd5677d67f1c2c08f) )
2362
 
ROM_END
2363
 
 
2364
 
ROM_START( zerogunj ) /* Zero Gunner (Japan), Model 2B */
2365
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2366
 
        ROM_LOAD32_WORD("epr-20290.15", 0x000000, 0x080000, CRC(9ce3ad21) SHA1(812ab45cc9e2920e74e58937d1826774f3f54183) )
2367
 
        ROM_LOAD32_WORD("epr-20291.16", 0x000002, 0x080000, CRC(7267a03d) SHA1(a7216914ee7535fa1856cb19bc05c89948a93c89) )
2368
 
 
2369
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
2370
 
        ROM_LOAD32_WORD("mpr-20296.11", 0x000000, 0x400000, CRC(072d8a5e) SHA1(7f69c90dd3c3e6e522d1065b3c4b09434cb4e634) )
2371
 
        ROM_LOAD32_WORD("mpr-20297.12", 0x000002, 0x400000, CRC(ba6a825b) SHA1(670a86c3a1a78550c760cc66c0a6181928fb9054) )
2372
 
        ROM_LOAD32_WORD("mpr-20294.9",  0x800000, 0x400000, CRC(a0bd1474) SHA1(c0c032adac69bd545e3aab481878b08f3c3edab8) )
2373
 
        ROM_LOAD32_WORD("mpr-20295.10", 0x800002, 0x400000, CRC(c548cced) SHA1(d34f2fc9b4481c75a6824aa4bdd3f1884188d35b) )
2374
 
 
2375
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
2376
 
        ROM_LOAD32_WORD("mpr-20298.17", 0x000000, 0x400000, CRC(8ab782fc) SHA1(595f6fc2e9c58ce9763d51798ceead8d470f0a33) )
2377
 
        ROM_LOAD32_WORD("mpr-20299.21", 0x000002, 0x400000, CRC(90e20cdb) SHA1(730d58286fb7e91aa4128dc208b0f60eb3becc78) )
2378
 
 
2379
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures
2380
 
        ROM_LOAD32_WORD("mpr-20301.27", 0x000000, 0x200000, CRC(52010fb2) SHA1(8dce67c6f9e48d749c64b11d4569df413dc40e07) )
2381
 
        ROM_LOAD32_WORD("mpr-20300.25", 0x000002, 0x200000, CRC(6f042792) SHA1(75db68e57ec3fbc7af377342eef81f26fae4e1c4) )
2382
 
 
2383
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
2384
 
 
2385
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2386
 
        ROM_LOAD16_WORD_SWAP("epr-20302.31",  0x080000,  0x80000, CRC(44ff50d2) SHA1(6ffec81042fd5708e8a5df47b63f9809f93bf0f8) )
2387
 
 
2388
 
        ROM_REGION( 0x400000, "scsp", 0 ) // Samples
2389
 
        ROM_LOAD("mpr-20303.32", 0x000000, 0x200000, CRC(c040973f) SHA1(57a496c5dcc1a3931b6e41bf8d41e45d6dac0c31) )
2390
 
        ROM_LOAD("mpr-20304.33", 0x200000, 0x200000, CRC(6decfe83) SHA1(d73adafceff2f1776c93e53bd5677d67f1c2c08f) )
2391
 
ROM_END
2392
 
 
2393
 
ROM_START( gunblade ) /* Gunblade NY Revision A, Model 2A */
2394
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2395
 
        ROM_LOAD32_WORD("epr-18988a.15", 0x000000, 0x080000, CRC(f63f1ad2) SHA1(fcfb0a4691cd7d66168c421e4e1694ecaea56ab2) )
2396
 
        ROM_LOAD32_WORD("epr-18989a.16", 0x000002, 0x080000, CRC(c1c84d65) SHA1(92bffbf1250c53499c37a53f9e2a054fc7bf256f) )
2397
 
 
2398
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
2399
 
        ROM_LOAD32_WORD("mpr-18974.11",  0x000000, 0x400000, CRC(e29ecaff) SHA1(dcdfe9f59158cec2f02b213ee13f5e40cdb92e55) )
2400
 
        ROM_LOAD32_WORD("mpr-18975.12",  0x000002, 0x400000, CRC(d8187582) SHA1(34a0b32eeed1a9f41bca8b9261851881b2ba79f2) )
2401
 
        ROM_LOAD32_WORD("mpr-18976.9",   0x800000, 0x400000, CRC(c95c15eb) SHA1(892063e91b2ed20e0600d4b188da1e9f45a19692) )
2402
 
        ROM_LOAD32_WORD("mpr-18977.10",  0x800002, 0x400000, CRC(db8f5b6f) SHA1(c11d2c9e1e215aa7b2ebb777639c8cd651901f52) )
2403
 
 
2404
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
2405
 
        ROM_LOAD32_WORD("mpr-18986.29",  0x000000, 0x400000, CRC(04820f7b) SHA1(5eb6682399b358d77658d82e612b02b724e3f3e1) )
2406
 
        ROM_LOAD32_WORD("mpr-18987.30",  0x000002, 0x400000, CRC(2419367f) SHA1(0a04a1049d2da486dc9dbb97b383bd24259b78c8) )
2407
 
 
2408
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
2409
 
        ROM_LOAD32_WORD("mpr-18980.17",  0x000000, 0x400000, CRC(22345534) SHA1(7b8bdcfe88953ce1b2d75af2ce4712ab6507e2cf) )
2410
 
        ROM_LOAD32_WORD("mpr-18981.21",  0x000002, 0x400000, CRC(2544a33d) SHA1(a76193f70adb6abeba02328b290af5cca47d4e25) )
2411
 
        ROM_LOAD32_WORD("mpr-18982.18",  0x800000, 0x400000, CRC(d0a92b2a) SHA1(95404baed88cc95b75ff9b9084d09622961d3e57) )
2412
 
        ROM_LOAD32_WORD("mpr-18983.22",  0x800002, 0x400000, CRC(1b4af982) SHA1(550f8248699b9267da7d2e64002be56972381714) )
2413
 
 
2414
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
2415
 
        ROM_LOAD32_WORD("mpr-18985.27", 0x000000, 0x400000, CRC(ad6166e3) SHA1(2c487fb743730cacf92dbea952b1efada0f073df) )
2416
 
        ROM_LOAD32_WORD("mpr-18984.25", 0x000002, 0x400000, CRC(756f6f37) SHA1(095964de773f515d64d65dbc8f8ef9bae97e5ba9) )
2417
 
 
2418
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2419
 
        ROM_LOAD16_WORD_SWAP("epr-18990.31", 0x080000,  0x80000, CRC(02b1b0d1) SHA1(759b4683dc7149e04f41ddac7bd395e8d07ea858) )
2420
 
 
2421
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2422
 
        ROM_LOAD("mpr-18978.32", 0x000000, 0x400000, CRC(0f78b3e3) SHA1(6c2cd6236cb001bb8d487a9b1e9907519dc43daa) )
2423
 
        ROM_LOAD("mpr-18979.34", 0x400000, 0x400000, CRC(f13ea36f) SHA1(a8165116b5e07e031ff960201dd8c9a441544961) )
2424
 
ROM_END
2425
 
 
2426
 
ROM_START( vf2 ) /* Virtua Fighter 2 Version 2.1, Model 2A */
2427
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2428
 
        ROM_LOAD32_WORD( "epr-18385.12",    0x000000, 0x020000, CRC(78ed2d41) SHA1(471c19389ceeec6138107dd81863320bd4825327) )
2429
 
        ROM_LOAD32_WORD( "epr-18386.13",    0x000002, 0x020000, CRC(3418f428) SHA1(0f51e389e13efc172a26471331a60c459ad43c38) )
2430
 
        ROM_LOAD32_WORD( "epr-18387.14",    0x040000, 0x020000, CRC(124a8453) SHA1(26fb787451824fc6060724e37fe0ba6bb66796cb) )
2431
 
        ROM_LOAD32_WORD( "epr-18388.15",    0x040002, 0x020000, CRC(8d347980) SHA1(da79e51ad501b9560c4ed7cf1ec768daad93efe0) )
2432
 
 
2433
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2434
 
        ROM_LOAD32_WORD( "mpr-17560.10", 0x000000, 0x200000, CRC(d1389864) SHA1(88e9a8b6b0f58c96957015179e7ff10f837040e6) )
2435
 
        ROM_LOAD32_WORD( "mpr-17561.11", 0x000002, 0x200000, CRC(b98d0101) SHA1(e154877380b9250d8119dd4c14ba306c7b337dcd) )
2436
 
        ROM_LOAD32_WORD( "mpr-17558.8",  0x400000, 0x200000, CRC(4b15f5a6) SHA1(9a34724958fef9b49eae39c6ea136e0cf532154b) )
2437
 
        ROM_LOAD32_WORD( "mpr-17559.9",  0x400002, 0x200000, CRC(d3264de6) SHA1(2f094ff0b95bf1cd5c283414634ea9597204d374) )
2438
 
        ROM_LOAD32_WORD( "mpr-17566.6",  0x800000, 0x200000, CRC(fb41ef98) SHA1(ad4d1ba5e5b39b2d87105ae80750284867aa4ed3) )
2439
 
        ROM_LOAD32_WORD( "mpr-17567.7",  0x800002, 0x200000, CRC(c3396922) SHA1(7e0700ded530e4eb58e9a68cdb92791284c91431) )
2440
 
        ROM_LOAD32_WORD( "mpr-17564.4",  0xc00000, 0x200000, CRC(d8062489) SHA1(57666b6937f79bb65c43ed02b04a454882d01e61) )
2441
 
        ROM_LOAD32_WORD( "mpr-17565.5",  0xc00002, 0x200000, CRC(0517c6e9) SHA1(d9ba93998286713758385033119416714674c8d8) )
2442
 
 
2443
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2444
 
 
2445
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2446
 
        ROM_LOAD32_WORD( "mpr-17554.16", 0x000000, 0x200000, CRC(27896d82) SHA1(c0624e58de2e427465daaa10dbb02ea2a1fd0f1b) )
2447
 
        ROM_LOAD32_WORD( "mpr-17548.20", 0x000002, 0x200000, CRC(c95facc2) SHA1(09d19abe5d75a335df7510df8abb2d4425159cdf) )
2448
 
        ROM_LOAD32_WORD( "mpr-17555.17", 0x400000, 0x200000, CRC(4df2810b) SHA1(720c4628d7783f0323b5723b441e13741556241e) )
2449
 
        ROM_LOAD32_WORD( "mpr-17549.21", 0x400002, 0x200000, CRC(e0bce0e6) SHA1(0570604dc2007288795a3125ffd480bc4b3b0802) )
2450
 
        ROM_LOAD32_WORD( "mpr-17556.18", 0x800000, 0x200000, CRC(41a47616) SHA1(55b909d2bc2079d0dfed5036c78c9e09bce09843) )
2451
 
        ROM_LOAD32_WORD( "mpr-17550.22", 0x800002, 0x200000, CRC(c36ff3f5) SHA1(f14fdf275905a90a0d4cc534d90b0302f26676d8) )
2452
 
 
2453
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2454
 
        ROM_LOAD32_WORD( "mpr-17553.25", 0x000000, 0x200000, CRC(5da1c5d3) SHA1(c627b25a1f61a9fe9182e2199f70f6e485503c7b) )
2455
 
        ROM_LOAD32_WORD( "mpr-17552.24", 0x000002, 0x200000, CRC(e91e7427) SHA1(0ac1111f2ecb4f924b5119eaaac8fa7bc87ab9d1) )
2456
 
        ROM_LOAD32_WORD( "mpr-17547.27", 0x400000, 0x200000, CRC(be940431) SHA1(5c1196a6454a4fead79a930979f2e69639ec2bb9) )
2457
 
        ROM_LOAD32_WORD( "mpr-17546.26", 0x400002, 0x200000, CRC(042a194b) SHA1(c6d8524dc0a879394f1234b7bb04836081bb3830) )
2458
 
 
2459
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2460
 
        ROM_LOAD16_WORD_SWAP( "epr-17574.30", 0x080000, 0x080000, CRC(4d4c3a55) SHA1(b6c0c3f0473bd7fc3ef4f5146110dfcc899a5af9) )
2461
 
 
2462
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2463
 
        ROM_LOAD( "mpr-17573.31", 0x000000, 0x200000, CRC(e43557fe) SHA1(4c61a135819862df02347c118dc4d88a0adac273) )
2464
 
        ROM_LOAD( "mpr-17572.32", 0x200000, 0x200000, CRC(4febecc8) SHA1(9683ea9bedfc5cd7b4a28e9a68792c0dc549d911) )
2465
 
        ROM_LOAD( "mpr-17571.36", 0x400000, 0x200000, CRC(51caa584) SHA1(cbbde1c55eddbeeefd283bb5afd79a670a282e3a) )
2466
 
        ROM_LOAD( "mpr-17570.37", 0x600000, 0x200000, CRC(bccd324b) SHA1(4c7ebdea08b2dedf621f121785ed1c40ebae4236) )
2467
 
 
2468
 
        MODEL2_CPU_BOARD
2469
 
        MODEL2A_VID_BOARD
2470
 
ROM_END
2471
 
 
2472
 
ROM_START( vf2b ) /* Virtua Fighter 2 Revision B, Model 2A */
2473
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2474
 
        ROM_LOAD32_WORD( "epr-17568b.12", 0x000000, 0x020000, CRC(5d966bbf) SHA1(01d46313148ce509fa5641fb07a3f840c00886ac) )
2475
 
        ROM_LOAD32_WORD( "epr-17569b.13", 0x000002, 0x020000, CRC(0b8c1ccc) SHA1(ba2e0ac8b31955fed237ba9a5eda9fa14d1db11f) )
2476
 
        ROM_LOAD32_WORD( "epr-17562b.14", 0x040000, 0x020000, CRC(b778d4eb) SHA1(a7162d9c39d601ac92310c8cf2ae388647a5295a) )
2477
 
        ROM_LOAD32_WORD( "epr-17563b.15", 0x040002, 0x020000, CRC(a05c15f6) SHA1(b9b1f3c68c53a86dfa3cbc85fcb9150546c13f23) )
2478
 
 
2479
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2480
 
        ROM_LOAD32_WORD( "mpr-17560.10", 0x000000, 0x200000, CRC(d1389864) SHA1(88e9a8b6b0f58c96957015179e7ff10f837040e6) )
2481
 
        ROM_LOAD32_WORD( "mpr-17561.11", 0x000002, 0x200000, CRC(b98d0101) SHA1(e154877380b9250d8119dd4c14ba306c7b337dcd) )
2482
 
        ROM_LOAD32_WORD( "mpr-17558.8",  0x400000, 0x200000, CRC(4b15f5a6) SHA1(9a34724958fef9b49eae39c6ea136e0cf532154b) )
2483
 
        ROM_LOAD32_WORD( "mpr-17559.9",  0x400002, 0x200000, CRC(d3264de6) SHA1(2f094ff0b95bf1cd5c283414634ea9597204d374) )
2484
 
        ROM_LOAD32_WORD( "mpr-17566.6",  0x800000, 0x200000, CRC(fb41ef98) SHA1(ad4d1ba5e5b39b2d87105ae80750284867aa4ed3) )
2485
 
        ROM_LOAD32_WORD( "mpr-17567.7",  0x800002, 0x200000, CRC(c3396922) SHA1(7e0700ded530e4eb58e9a68cdb92791284c91431) )
2486
 
        ROM_LOAD32_WORD( "mpr-17564.4",  0xc00000, 0x200000, CRC(d8062489) SHA1(57666b6937f79bb65c43ed02b04a454882d01e61) )
2487
 
        ROM_LOAD32_WORD( "mpr-17565.5",  0xc00002, 0x200000, CRC(0517c6e9) SHA1(d9ba93998286713758385033119416714674c8d8) )
2488
 
 
2489
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2490
 
 
2491
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2492
 
        ROM_LOAD32_WORD( "mpr-17554.16", 0x000000, 0x200000, CRC(27896d82) SHA1(c0624e58de2e427465daaa10dbb02ea2a1fd0f1b) )
2493
 
        ROM_LOAD32_WORD( "mpr-17548.20", 0x000002, 0x200000, CRC(c95facc2) SHA1(09d19abe5d75a335df7510df8abb2d4425159cdf) )
2494
 
        ROM_LOAD32_WORD( "mpr-17555.17", 0x400000, 0x200000, CRC(4df2810b) SHA1(720c4628d7783f0323b5723b441e13741556241e) )
2495
 
        ROM_LOAD32_WORD( "mpr-17549.21", 0x400002, 0x200000, CRC(e0bce0e6) SHA1(0570604dc2007288795a3125ffd480bc4b3b0802) )
2496
 
        ROM_LOAD32_WORD( "mpr-17556.18", 0x800000, 0x200000, CRC(41a47616) SHA1(55b909d2bc2079d0dfed5036c78c9e09bce09843) )
2497
 
        ROM_LOAD32_WORD( "mpr-17550.22", 0x800002, 0x200000, CRC(c36ff3f5) SHA1(f14fdf275905a90a0d4cc534d90b0302f26676d8) )
2498
 
 
2499
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2500
 
        ROM_LOAD32_WORD( "mpr-17553.25", 0x000000, 0x200000, CRC(5da1c5d3) SHA1(c627b25a1f61a9fe9182e2199f70f6e485503c7b) )
2501
 
        ROM_LOAD32_WORD( "mpr-17552.24", 0x000002, 0x200000, CRC(e91e7427) SHA1(0ac1111f2ecb4f924b5119eaaac8fa7bc87ab9d1) )
2502
 
        ROM_LOAD32_WORD( "mpr-17547.27", 0x400000, 0x200000, CRC(be940431) SHA1(5c1196a6454a4fead79a930979f2e69639ec2bb9) )
2503
 
        ROM_LOAD32_WORD( "mpr-17546.26", 0x400002, 0x200000, CRC(042a194b) SHA1(c6d8524dc0a879394f1234b7bb04836081bb3830) )
2504
 
 
2505
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2506
 
        ROM_LOAD16_WORD_SWAP( "epr-17574.30", 0x080000, 0x080000, CRC(4d4c3a55) SHA1(b6c0c3f0473bd7fc3ef4f5146110dfcc899a5af9) )
2507
 
 
2508
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2509
 
        ROM_LOAD( "mpr-17573.31", 0x000000, 0x200000, CRC(e43557fe) SHA1(4c61a135819862df02347c118dc4d88a0adac273) )
2510
 
        ROM_LOAD( "mpr-17572.32", 0x200000, 0x200000, CRC(4febecc8) SHA1(9683ea9bedfc5cd7b4a28e9a68792c0dc549d911) )
2511
 
        ROM_LOAD( "mpr-17571.36", 0x400000, 0x200000, CRC(51caa584) SHA1(cbbde1c55eddbeeefd283bb5afd79a670a282e3a) )
2512
 
        ROM_LOAD( "mpr-17570.37", 0x600000, 0x200000, CRC(bccd324b) SHA1(4c7ebdea08b2dedf621f121785ed1c40ebae4236) )
2513
 
 
2514
 
        MODEL2_CPU_BOARD
2515
 
        MODEL2A_VID_BOARD
2516
 
ROM_END
2517
 
 
2518
 
ROM_START( vf2a ) /* Virtua Fighter 2 Revision A, Model 2A */
2519
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2520
 
        ROM_LOAD32_WORD( "epr-17568a.12", 0x000000, 0x020000, CRC(5b10f232) SHA1(04df1eb9cf094d8dc5118b95028b544b47d5d328) )
2521
 
        ROM_LOAD32_WORD( "epr-17569a.13", 0x000002, 0x020000, CRC(17c208e0) SHA1(260c762d7853fb1d6f894d4dd954d82dfbc92d2d) )
2522
 
        ROM_LOAD32_WORD( "epr-17562a.14", 0x040000, 0x020000, CRC(db68a01a) SHA1(1e9d3f09821596d3560bf54f6323ba295ee430d8) )
2523
 
        ROM_LOAD32_WORD( "epr-17563a.15", 0x040002, 0x020000, CRC(4696439d) SHA1(846fa1435a1a5c9f7f9690e1c810ca89008d1626) )
2524
 
 
2525
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2526
 
        ROM_LOAD32_WORD( "mpr-17560.10", 0x000000, 0x200000, CRC(d1389864) SHA1(88e9a8b6b0f58c96957015179e7ff10f837040e6) )
2527
 
        ROM_LOAD32_WORD( "mpr-17561.11", 0x000002, 0x200000, CRC(b98d0101) SHA1(e154877380b9250d8119dd4c14ba306c7b337dcd) )
2528
 
        ROM_LOAD32_WORD( "mpr-17558.8",  0x400000, 0x200000, CRC(4b15f5a6) SHA1(9a34724958fef9b49eae39c6ea136e0cf532154b) )
2529
 
        ROM_LOAD32_WORD( "mpr-17559.9",  0x400002, 0x200000, CRC(d3264de6) SHA1(2f094ff0b95bf1cd5c283414634ea9597204d374) )
2530
 
        ROM_LOAD32_WORD( "mpr-17566.6",  0x800000, 0x200000, CRC(fb41ef98) SHA1(ad4d1ba5e5b39b2d87105ae80750284867aa4ed3) )
2531
 
        ROM_LOAD32_WORD( "mpr-17567.7",  0x800002, 0x200000, CRC(c3396922) SHA1(7e0700ded530e4eb58e9a68cdb92791284c91431) )
2532
 
        ROM_LOAD32_WORD( "mpr-17564.4",  0xc00000, 0x200000, CRC(d8062489) SHA1(57666b6937f79bb65c43ed02b04a454882d01e61) )
2533
 
        ROM_LOAD32_WORD( "mpr-17565.5",  0xc00002, 0x200000, CRC(0517c6e9) SHA1(d9ba93998286713758385033119416714674c8d8) )
2534
 
 
2535
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2536
 
 
2537
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2538
 
        ROM_LOAD32_WORD( "mpr-17554.16", 0x000000, 0x200000, CRC(27896d82) SHA1(c0624e58de2e427465daaa10dbb02ea2a1fd0f1b) )
2539
 
        ROM_LOAD32_WORD( "mpr-17548.20", 0x000002, 0x200000, CRC(c95facc2) SHA1(09d19abe5d75a335df7510df8abb2d4425159cdf) )
2540
 
        ROM_LOAD32_WORD( "mpr-17555.17", 0x400000, 0x200000, CRC(4df2810b) SHA1(720c4628d7783f0323b5723b441e13741556241e) )
2541
 
        ROM_LOAD32_WORD( "mpr-17549.21", 0x400002, 0x200000, CRC(e0bce0e6) SHA1(0570604dc2007288795a3125ffd480bc4b3b0802) )
2542
 
        ROM_LOAD32_WORD( "mpr-17556.18", 0x800000, 0x200000, CRC(41a47616) SHA1(55b909d2bc2079d0dfed5036c78c9e09bce09843) )
2543
 
        ROM_LOAD32_WORD( "mpr-17550.22", 0x800002, 0x200000, CRC(c36ff3f5) SHA1(f14fdf275905a90a0d4cc534d90b0302f26676d8) )
2544
 
 
2545
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2546
 
        ROM_LOAD32_WORD( "mpr-17553.25", 0x000000, 0x200000, CRC(5da1c5d3) SHA1(c627b25a1f61a9fe9182e2199f70f6e485503c7b) )
2547
 
        ROM_LOAD32_WORD( "mpr-17552.24", 0x000002, 0x200000, CRC(e91e7427) SHA1(0ac1111f2ecb4f924b5119eaaac8fa7bc87ab9d1) )
2548
 
        ROM_LOAD32_WORD( "mpr-17547.27", 0x400000, 0x200000, CRC(be940431) SHA1(5c1196a6454a4fead79a930979f2e69639ec2bb9) )
2549
 
        ROM_LOAD32_WORD( "mpr-17546.26", 0x400002, 0x200000, CRC(042a194b) SHA1(c6d8524dc0a879394f1234b7bb04836081bb3830) )
2550
 
 
2551
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2552
 
        ROM_LOAD16_WORD_SWAP( "epr-17574.30", 0x080000, 0x080000, CRC(4d4c3a55) SHA1(b6c0c3f0473bd7fc3ef4f5146110dfcc899a5af9) )
2553
 
 
2554
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2555
 
        ROM_LOAD( "mpr-17573.31", 0x000000, 0x200000, CRC(e43557fe) SHA1(4c61a135819862df02347c118dc4d88a0adac273) )
2556
 
        ROM_LOAD( "mpr-17572.32", 0x200000, 0x200000, CRC(4febecc8) SHA1(9683ea9bedfc5cd7b4a28e9a68792c0dc549d911) )
2557
 
        ROM_LOAD( "mpr-17571.36", 0x400000, 0x200000, CRC(51caa584) SHA1(cbbde1c55eddbeeefd283bb5afd79a670a282e3a) )
2558
 
        ROM_LOAD( "mpr-17570.37", 0x600000, 0x200000, CRC(bccd324b) SHA1(4c7ebdea08b2dedf621f121785ed1c40ebae4236) )
2559
 
 
2560
 
        MODEL2_CPU_BOARD
2561
 
        MODEL2A_VID_BOARD
2562
 
ROM_END
2563
 
 
2564
 
ROM_START( vf2o ) /* Virtua Fighter 2, Model 2A */
2565
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2566
 
        ROM_LOAD32_WORD( "epr-17568.12", 0x000000, 0x020000, CRC(cf5d53d1) SHA1(4ed907bbfc1a47e51c9cc11f55645752574adaef) )
2567
 
        ROM_LOAD32_WORD( "epr-17569.13", 0x000002, 0x020000, CRC(0fb32808) SHA1(95efb3eeaf95fb5f79ddae4ef20e2211b07f8d30) )
2568
 
        ROM_LOAD32_WORD( "epr-17562.14", 0x040000, 0x020000, CRC(b893bcef) SHA1(2f862a7099aa757ee1f2ad8245eb4f8f4fdfb7bc) )
2569
 
        ROM_LOAD32_WORD( "epr-17563.15", 0x040002, 0x020000, CRC(3b55f5a8) SHA1(b1ca3d4d3568c1652dcd8e546ffff23a4a21a699) )
2570
 
 
2571
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2572
 
        ROM_LOAD32_WORD( "mpr-17560.10", 0x000000, 0x200000, CRC(d1389864) SHA1(88e9a8b6b0f58c96957015179e7ff10f837040e6) )
2573
 
        ROM_LOAD32_WORD( "mpr-17561.11", 0x000002, 0x200000, CRC(b98d0101) SHA1(e154877380b9250d8119dd4c14ba306c7b337dcd) )
2574
 
        ROM_LOAD32_WORD( "mpr-17558.8",  0x400000, 0x200000, CRC(4b15f5a6) SHA1(9a34724958fef9b49eae39c6ea136e0cf532154b) )
2575
 
        ROM_LOAD32_WORD( "mpr-17559.9",  0x400002, 0x200000, CRC(d3264de6) SHA1(2f094ff0b95bf1cd5c283414634ea9597204d374) )
2576
 
        ROM_LOAD32_WORD( "mpr-17566.6",  0x800000, 0x200000, CRC(fb41ef98) SHA1(ad4d1ba5e5b39b2d87105ae80750284867aa4ed3) )
2577
 
        ROM_LOAD32_WORD( "mpr-17567.7",  0x800002, 0x200000, CRC(c3396922) SHA1(7e0700ded530e4eb58e9a68cdb92791284c91431) )
2578
 
        ROM_LOAD32_WORD( "mpr-17564.4",  0xc00000, 0x200000, CRC(d8062489) SHA1(57666b6937f79bb65c43ed02b04a454882d01e61) )
2579
 
        ROM_LOAD32_WORD( "mpr-17565.5",  0xc00002, 0x200000, CRC(0517c6e9) SHA1(d9ba93998286713758385033119416714674c8d8) )
2580
 
 
2581
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2582
 
 
2583
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2584
 
        ROM_LOAD32_WORD( "mpr-17554.16", 0x000000, 0x200000, CRC(27896d82) SHA1(c0624e58de2e427465daaa10dbb02ea2a1fd0f1b) )
2585
 
        ROM_LOAD32_WORD( "mpr-17548.20", 0x000002, 0x200000, CRC(c95facc2) SHA1(09d19abe5d75a335df7510df8abb2d4425159cdf) )
2586
 
        ROM_LOAD32_WORD( "mpr-17555.17", 0x400000, 0x200000, CRC(4df2810b) SHA1(720c4628d7783f0323b5723b441e13741556241e) )
2587
 
        ROM_LOAD32_WORD( "mpr-17549.21", 0x400002, 0x200000, CRC(e0bce0e6) SHA1(0570604dc2007288795a3125ffd480bc4b3b0802) )
2588
 
        ROM_LOAD32_WORD( "mpr-17556.18", 0x800000, 0x200000, CRC(41a47616) SHA1(55b909d2bc2079d0dfed5036c78c9e09bce09843) )
2589
 
        ROM_LOAD32_WORD( "mpr-17550.22", 0x800002, 0x200000, CRC(c36ff3f5) SHA1(f14fdf275905a90a0d4cc534d90b0302f26676d8) )
2590
 
 
2591
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2592
 
        ROM_LOAD32_WORD( "mpr-17553.25", 0x000000, 0x200000, CRC(5da1c5d3) SHA1(c627b25a1f61a9fe9182e2199f70f6e485503c7b) )
2593
 
        ROM_LOAD32_WORD( "mpr-17552.24", 0x000002, 0x200000, CRC(e91e7427) SHA1(0ac1111f2ecb4f924b5119eaaac8fa7bc87ab9d1) )
2594
 
        ROM_LOAD32_WORD( "mpr-17547.27", 0x400000, 0x200000, CRC(be940431) SHA1(5c1196a6454a4fead79a930979f2e69639ec2bb9) )
2595
 
        ROM_LOAD32_WORD( "mpr-17546.26", 0x400002, 0x200000, CRC(042a194b) SHA1(c6d8524dc0a879394f1234b7bb04836081bb3830) )
2596
 
 
2597
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2598
 
        ROM_LOAD16_WORD_SWAP( "epr-17574.30", 0x080000, 0x080000, CRC(4d4c3a55) SHA1(b6c0c3f0473bd7fc3ef4f5146110dfcc899a5af9) )
2599
 
 
2600
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2601
 
        ROM_LOAD( "mpr-17573.31", 0x000000, 0x200000, CRC(e43557fe) SHA1(4c61a135819862df02347c118dc4d88a0adac273) )
2602
 
        ROM_LOAD( "mpr-17572.32", 0x200000, 0x200000, CRC(4febecc8) SHA1(9683ea9bedfc5cd7b4a28e9a68792c0dc549d911) )
2603
 
        ROM_LOAD( "mpr-17571.36", 0x400000, 0x200000, CRC(51caa584) SHA1(cbbde1c55eddbeeefd283bb5afd79a670a282e3a) )
2604
 
        ROM_LOAD( "mpr-17570.37", 0x600000, 0x200000, CRC(bccd324b) SHA1(4c7ebdea08b2dedf621f121785ed1c40ebae4236) )
2605
 
 
2606
 
        MODEL2_CPU_BOARD
2607
 
        MODEL2A_VID_BOARD
2608
 
ROM_END
2609
 
 
2610
 
ROM_START( srallyc ) /* Sega Rally Championship Revision C, Model 2A */
2611
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2612
 
        ROM_LOAD32_WORD( "epr-17888c.12",  0x000000, 0x080000, CRC(3d6808aa) SHA1(33abf9cdcee9583dc600c94e1e29ce260e8c5d32) )
2613
 
        ROM_LOAD32_WORD( "epr-17889c.13",  0x000002, 0x080000, CRC(f43c7802) SHA1(4b1efb3d5644fed1753da1750bf5c300d3a15d2c) )
2614
 
 
2615
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2616
 
        ROM_LOAD32_WORD( "mpr-17746.bin", 0x000000, 0x200000, CRC(8fe311f4) SHA1(f4ada8e5c906fc384bed1b96f09cdf313f89e825) )
2617
 
        ROM_LOAD32_WORD( "mpr-17747.bin", 0x000002, 0x200000, CRC(543593fd) SHA1(5ba63a77e9fc70569af21d50b3171bc8ff4522b8) )
2618
 
        ROM_LOAD32_WORD( "mpr-17744.bin", 0x400000, 0x200000, CRC(71fed098) SHA1(1d187cad375121a45348d640edd3cc7dce658d28) )
2619
 
        ROM_LOAD32_WORD( "mpr-17745.bin", 0x400002, 0x200000, CRC(8ecca705) SHA1(ed2b3298aad6f4e52dc672a0168183e457564b43) )
2620
 
        ROM_LOAD32_WORD( "mpr-17884.bin", 0x800000, 0x200000, CRC(4cfc95e1) SHA1(81d927b8c4f9d0c4c5e29d676b30f30f83751fdc) )
2621
 
        ROM_LOAD32_WORD( "mpr-17885.bin", 0x800002, 0x200000, CRC(a08d2467) SHA1(9449ac8f8f9ce8d8e536b05a91e46841fed7f2d0) )
2622
 
 
2623
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
2624
 
        ROM_LOAD32_WORD( "mpr-17754.bin", 0x000000, 0x200000, CRC(81a84f67) SHA1(c0a9b690523a529e4015e9af10dc3fb2a1726f08) )
2625
 
        ROM_LOAD32_WORD( "mpr-17755.bin", 0x000002, 0x200000, CRC(2a6e7da4) SHA1(e60803ae951489fe47d66731d15c32249ca547b4) )
2626
 
 
2627
 
        ROM_REGION( 0x010000, "drivecpu", 0 ) // Drive I/O program
2628
 
        ROM_LOAD( "epr-17891.ic12", 0x000000, 0x010000, CRC(9a33b437) SHA1(3e8f210aa5159e78f640126cb5ce7f05f22560f2) )
2629
 
 
2630
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2631
 
        ROM_LOAD32_WORD( "mpr-17748.bin", 0x000000, 0x200000, CRC(3148a2b2) SHA1(283cc49bfb6c6381a7ead9273fd097dca5b981b6) )
2632
 
        ROM_LOAD32_WORD( "mpr-17750.bin", 0x000002, 0x200000, CRC(232aec29) SHA1(4d470e71df61298282c356814e2d151fda323fb6) )
2633
 
        ROM_LOAD32_WORD( "mpr-17749.bin", 0x400000, 0x200000, CRC(0838d184) SHA1(704175c8b29e4c989afcb7be42e7e0e096740eaf) )
2634
 
        ROM_LOAD32_WORD( "mpr-17751.bin", 0x400002, 0x200000, CRC(ed87ac62) SHA1(601542149d33ca52a47536b4b0af47bf1fd87eb2) )
2635
 
 
2636
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2637
 
        ROM_LOAD32_WORD( "mpr-17753.bin", 0x000000, 0x200000, CRC(6db0eb36) SHA1(dd5fd3c9592360d3e95623ac2491e6faabe9dbcb) )
2638
 
        ROM_LOAD32_WORD( "mpr-17752.bin", 0x000002, 0x200000, CRC(d6aa86ce) SHA1(1d342f87d1af1e5438d1ae818b1b14268e765897) )
2639
 
 
2640
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
2641
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
2642
 
 
2643
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2644
 
        ROM_LOAD16_WORD_SWAP( "epr-17890a.30", 0x080000, 0x040000, CRC(5bac3fa1) SHA1(3635333d36463b6fab25560ed918e05138f964dc) )
2645
 
 
2646
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2647
 
        ROM_LOAD( "mpr-17756.31", 0x000000, 0x200000, CRC(7725f111) SHA1(1f1ee3f19a6bcf57bc5a1c7dd64ee83f8b81f084) )
2648
 
        ROM_LOAD( "mpr-17757.32", 0x000000, 0x200000, CRC(1616e649) SHA1(1d3a0e441d150ada0535a9d50e2f69dd4b99c584) )
2649
 
        ROM_LOAD( "mpr-17886.36", 0x000000, 0x200000, CRC(54a72923) SHA1(103c4838b27378c834c08d29d6fb6ba95e7f9d03) )
2650
 
        ROM_LOAD( "mpr-17887.37", 0x000000, 0x200000, CRC(38c31fdd) SHA1(a85f05160b060d9d4a431aaa73cfc03f24214fb9) )
2651
 
 
2652
 
        MODEL2_CPU_BOARD
2653
 
        MODEL2A_VID_BOARD
2654
 
ROM_END
2655
 
 
2656
 
ROM_START( srallycb ) /* Sega Rally Championship Revision B, Model 2A */
2657
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2658
 
        ROM_LOAD32_WORD( "epr-17888b.12",  0x000000, 0x080000, CRC(95bce0b9) SHA1(9b293b430db14cfab35466d2f9a1e3f7e2df3143) )
2659
 
        ROM_LOAD32_WORD( "epr-17889b.13",  0x000002, 0x080000, CRC(395c425e) SHA1(9868d2b79255120abfdb7f9c0930a607aeef5363) )
2660
 
 
2661
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2662
 
        ROM_LOAD32_WORD( "mpr-17746.bin", 0x000000, 0x200000, CRC(8fe311f4) SHA1(f4ada8e5c906fc384bed1b96f09cdf313f89e825) )
2663
 
        ROM_LOAD32_WORD( "mpr-17747.bin", 0x000002, 0x200000, CRC(543593fd) SHA1(5ba63a77e9fc70569af21d50b3171bc8ff4522b8) )
2664
 
        ROM_LOAD32_WORD( "mpr-17744.bin", 0x400000, 0x200000, CRC(71fed098) SHA1(1d187cad375121a45348d640edd3cc7dce658d28) )
2665
 
        ROM_LOAD32_WORD( "mpr-17745.bin", 0x400002, 0x200000, CRC(8ecca705) SHA1(ed2b3298aad6f4e52dc672a0168183e457564b43) )
2666
 
        ROM_LOAD32_WORD( "mpr-17884.bin", 0x800000, 0x200000, CRC(4cfc95e1) SHA1(81d927b8c4f9d0c4c5e29d676b30f30f83751fdc) )
2667
 
        ROM_LOAD32_WORD( "mpr-17885.bin", 0x800002, 0x200000, CRC(a08d2467) SHA1(9449ac8f8f9ce8d8e536b05a91e46841fed7f2d0) )
2668
 
 
2669
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
2670
 
        ROM_LOAD32_WORD( "mpr-17754.bin", 0x000000, 0x200000, CRC(81a84f67) SHA1(c0a9b690523a529e4015e9af10dc3fb2a1726f08) )
2671
 
        ROM_LOAD32_WORD( "mpr-17755.bin", 0x000002, 0x200000, CRC(2a6e7da4) SHA1(e60803ae951489fe47d66731d15c32249ca547b4) )
2672
 
 
2673
 
        ROM_REGION( 0x010000, "drivecpu", 0 ) // Drive I/O program
2674
 
        ROM_LOAD( "epr-17891.ic12", 0x000000, 0x010000, CRC(9a33b437) SHA1(3e8f210aa5159e78f640126cb5ce7f05f22560f2) )
2675
 
 
2676
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2677
 
        ROM_LOAD32_WORD( "mpr-17748.bin", 0x000000, 0x200000, CRC(3148a2b2) SHA1(283cc49bfb6c6381a7ead9273fd097dca5b981b6) )
2678
 
        ROM_LOAD32_WORD( "mpr-17750.bin", 0x000002, 0x200000, CRC(232aec29) SHA1(4d470e71df61298282c356814e2d151fda323fb6) )
2679
 
        ROM_LOAD32_WORD( "mpr-17749.bin", 0x400000, 0x200000, CRC(0838d184) SHA1(704175c8b29e4c989afcb7be42e7e0e096740eaf) )
2680
 
        ROM_LOAD32_WORD( "mpr-17751.bin", 0x400002, 0x200000, CRC(ed87ac62) SHA1(601542149d33ca52a47536b4b0af47bf1fd87eb2) )
2681
 
 
2682
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2683
 
        ROM_LOAD32_WORD( "mpr-17753.bin", 0x000000, 0x200000, CRC(6db0eb36) SHA1(dd5fd3c9592360d3e95623ac2491e6faabe9dbcb) )
2684
 
        ROM_LOAD32_WORD( "mpr-17752.bin", 0x000002, 0x200000, CRC(d6aa86ce) SHA1(1d342f87d1af1e5438d1ae818b1b14268e765897) )
2685
 
 
2686
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
2687
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
2688
 
 
2689
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2690
 
        ROM_LOAD16_WORD_SWAP( "epr-17890a.30", 0x080000, 0x040000, CRC(5bac3fa1) SHA1(3635333d36463b6fab25560ed918e05138f964dc) )
2691
 
 
2692
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2693
 
        ROM_LOAD( "mpr-17756.31", 0x000000, 0x200000, CRC(7725f111) SHA1(1f1ee3f19a6bcf57bc5a1c7dd64ee83f8b81f084) )
2694
 
        ROM_LOAD( "mpr-17757.32", 0x000000, 0x200000, CRC(1616e649) SHA1(1d3a0e441d150ada0535a9d50e2f69dd4b99c584) )
2695
 
        ROM_LOAD( "mpr-17886.36", 0x000000, 0x200000, CRC(54a72923) SHA1(103c4838b27378c834c08d29d6fb6ba95e7f9d03) )
2696
 
        ROM_LOAD( "mpr-17887.37", 0x000000, 0x200000, CRC(38c31fdd) SHA1(a85f05160b060d9d4a431aaa73cfc03f24214fb9) )
2697
 
 
2698
 
        MODEL2_CPU_BOARD
2699
 
        MODEL2A_VID_BOARD
2700
 
ROM_END
2701
 
 
2702
 
ROM_START( manxtt ) /* Manx TT Superbike Revision C, Model 2A */
2703
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2704
 
        ROM_LOAD32_WORD( "epr-18822c.12",  0x000000, 0x020000, CRC(c7b3e45a) SHA1(d3a6910bf6efc138e0e40332219b90dea7d6ea56) )
2705
 
        ROM_LOAD32_WORD( "epr-18823c.13",  0x000002, 0x020000, CRC(6b0c1dfb) SHA1(6da5c071e3ce842a99f928f473d4ccf7165785ac) )
2706
 
        ROM_LOAD32_WORD( "epr-18824c.14",  0x040000, 0x020000, CRC(352bb817) SHA1(389cbf951ba606acb9ab7bff5cda85d9166e64ff) )
2707
 
        ROM_LOAD32_WORD( "epr-18825c.15",  0x040002, 0x020000, CRC(f88b036c) SHA1(f6196e8da5e6579fe3fa5c24ab9538964c98e267) )
2708
 
 
2709
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2710
 
        ROM_LOAD32_WORD( "mpr-18751.10",  0x000000, 0x200000, CRC(773ad43d) SHA1(4d1601dc08a08b724e33e7cd90a4f22e18cfed9c) )
2711
 
        ROM_LOAD32_WORD( "mpr-18752.11",  0x000002, 0x200000, CRC(4da3719e) SHA1(24007e4ae3ba1a06321328d14e2bd6002fa1936e) )
2712
 
        ROM_LOAD32_WORD( "mpr-18749.8",   0x400000, 0x200000, CRC(c3fe0eea) SHA1(ada21405a136935ac4da1a3535c25fccf903f2d1) )
2713
 
        ROM_LOAD32_WORD( "mpr-18750.9",   0x400002, 0x200000, CRC(40b55494) SHA1(d98ae5518c5d31b155b1a7c4f7d9d67f44d7beae) )
2714
 
        ROM_LOAD32_WORD( "mpr-18747.6",   0x800000, 0x200000, CRC(a65ec1e8) SHA1(92636bdff0ae4cdb43dfc2986fad2d1b59469323) )
2715
 
        ROM_LOAD32_WORD( "mpr-18748.7",   0x800002, 0x200000, CRC(375e3748) SHA1(6c2e903dd073b130bcabb347631b876dc868b494) )
2716
 
        ROM_LOAD32_WORD( "epr-18862.4",   0xc00000, 0x080000, CRC(9adc3a30) SHA1(029db946338f8e0eccace8590082cc96bdf13e31) )
2717
 
        ROM_LOAD32_WORD( "epr-18863.5",   0xc00002, 0x080000, CRC(603742e9) SHA1(f78a5f7e582d313880c734158bb0fa68b256a58a) )
2718
 
        ROM_COPY( "user1", 0xc00000, 0xd00000, 0x100000 )
2719
 
        ROM_COPY( "user1", 0xc00000, 0xe00000, 0x100000 )
2720
 
        ROM_COPY( "user1", 0xc00000, 0xf00000, 0x100000 )
2721
 
 
2722
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2723
 
        ROM_LOAD32_WORD( "mpr-18753.16", 0x000000, 0x200000, CRC(33ddaa0d) SHA1(26f643d6b9cecf08bd249290a670a0edea1b5be4) )
2724
 
        ROM_LOAD32_WORD( "mpr-18756.20", 0x000002, 0x200000, CRC(28713617) SHA1(fc2a6258387a1bc3fae2109b2dae6dd2a1984ab5) )
2725
 
        ROM_LOAD32_WORD( "mpr-18754.17", 0x400000, 0x200000, CRC(09aabde5) SHA1(e50646efb2ca59792833ce91398c4efa861ad6d1) )
2726
 
        ROM_LOAD32_WORD( "mpr-18757.21", 0x400004, 0x200000, CRC(25fc92e9) SHA1(226c4c7289b3b6009c1ffea4a171e3fb4e31a67c) )
2727
 
        ROM_LOAD32_WORD( "mpr-18755.18", 0x000000, 0x200000, CRC(bf094d9e) SHA1(2cd7130b226a28098191a6caf6fd761bb0bfac7b) )
2728
 
        ROM_LOAD32_WORD( "mpr-18758.22", 0x800002, 0x200000, CRC(1b5473d0) SHA1(658e33503f6990f4d9a954c63efad5f53d15f3a4) )
2729
 
 
2730
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
2731
 
        ROM_LOAD32_WORD( "mpr-18761.28", 0x000000, 0x200000, CRC(4e39ec05) SHA1(50696cd320f1a6492e0c193713acbce085d959cd) )
2732
 
        ROM_LOAD32_WORD( "mpr-18762.29", 0x000002, 0x200000, CRC(4ab165d8) SHA1(7ff42a4c7236fec76f94f2d0c5537e503bcc98e5) )
2733
 
 
2734
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2735
 
        ROM_LOAD32_WORD( "mpr-18760.25", 0x000000, 0x200000, CRC(4e3a4a89) SHA1(bba6cd2a15b3f963388a3a87880da86b10f6e0a2) )
2736
 
        ROM_LOAD32_WORD( "mpr-18759.24", 0x000002, 0x200000, CRC(278d8742) SHA1(5f285fc8cfe88c00ba2bbe1b509b49abd38e00ec) )
2737
 
 
2738
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2739
 
//  ROM_LOAD16_WORD_SWAP( "epr-18826.30",  0x080000, 0x040000, CRC(ed9fe4c1) SHA1(c3dd8a1324a4dc9b012bd9bf21d1f48578870f72) ) /* Alternate sound program */
2740
 
        ROM_LOAD16_WORD_SWAP( "epr-18924a.30", 0x080000, 0x040000, CRC(ad6f40ec) SHA1(27aa0477dc325162766d459ffe95b61ee65dd28f) )
2741
 
 
2742
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2743
 
//  ROM_LOAD( "mpr-18827.31", 0x000000, 0x200000, CRC(58d78ca1) SHA1(95275ed8315c044bfde2f23c10416f22627b34df) ) /* Alternate sound sample */
2744
 
        ROM_LOAD( "mpr-18763.31", 0x000000, 0x200000, CRC(1bcb2283) SHA1(a4a8a2f8f0901bfb57778351210ccfc421cacbd4) )
2745
 
        ROM_LOAD( "mpr-18764.32", 0x200000, 0x200000, CRC(0dc6a860) SHA1(cb2ada0f8a592940de11ee781ad4beb5095c3b37) )
2746
 
        ROM_LOAD( "mpr-18765.36", 0x400000, 0x200000, CRC(ca4a803c) SHA1(70b59da8f2532a02e980caba5bb86ec13a4d7ab5) )
2747
 
        ROM_LOAD( "mpr-18766.37", 0x600000, 0x200000, CRC(e41892ea) SHA1(9ef5e26db4abf0ed36df63fc246b568e1c5d6cfa) )
2748
 
 
2749
 
        MODEL2_CPU_BOARD
2750
 
        MODEL2A_VID_BOARD
2751
 
ROM_END
2752
 
 
2753
 
ROM_START( motoraid ) /* Motoraid, Model 2A */
2754
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2755
 
        ROM_LOAD32_WORD( "epr-20007.12",  0x000000, 0x080000, CRC(f040c108) SHA1(a6a0fa8fb9d62d0cc2ac84ea3ad457953952d980) )
2756
 
        ROM_LOAD32_WORD( "epr-20008.13",  0x000002, 0x080000, CRC(78976e1a) SHA1(fd15e8c81b3b2f3bdf3bb8d9414b9b8a6f1f000f) )
2757
 
 
2758
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2759
 
        ROM_LOAD32_WORD( "mpr-20019.10",   0x0000000, 0x400000, CRC(49053727) SHA1(0543d19d1d60b1d12b4409c1491782f2232da685) )
2760
 
        ROM_LOAD32_WORD( "mpr-20020.11",   0x0000002, 0x400000, CRC(cc5ddb15) SHA1(19e15e0e9ec1bb5d1b789876778fbb487cfea1ba) )
2761
 
        ROM_LOAD32_WORD( "mpr-20017.8",    0x0800000, 0x400000, CRC(4e206acd) SHA1(b48b5bd3a2f68c62d16516a037fbd45f49283d23) )
2762
 
        ROM_LOAD32_WORD( "mpr-20018.9",    0x0800002, 0x400000, CRC(e7ed0e85) SHA1(78a0c72095a664c4b6e529beea46a31ae0a99e5a) )
2763
 
        ROM_LOAD32_WORD( "mpr-20015.6",    0x1000000, 0x400000, CRC(23427339) SHA1(3e37cfcb4dcc8976805934faf8805cd83acde66e) )
2764
 
        ROM_LOAD32_WORD( "mpr-20016.7",    0x1000002, 0x400000, CRC(c99a83f4) SHA1(b057d61478f7dc7a32ad233473f1a63498b3779e) )
2765
 
        ROM_LOAD32_WORD( "epr-20013.4",    0x1800000, 0x080000, CRC(a4478f52) SHA1(28f430319b34e715ca57ce4e01be23a786eab4bc) )
2766
 
        ROM_LOAD32_WORD( "epr-20014.5",    0x1800002, 0x080000, CRC(1aa541be) SHA1(c4cc61a42e89aaae075ad1b6e8df2907c5710d3e) )
2767
 
        ROM_COPY( "user1", 0x1800000, 0x1900000, 0x100000 ) // rgn,srcoffset,offset,length.
2768
 
        ROM_COPY( "user1", 0x1800000, 0x1a00000, 0x100000 )
2769
 
        ROM_COPY( "user1", 0x1800000, 0x1b00000, 0x100000 )
2770
 
        ROM_COPY( "user1", 0x1800000, 0x1c00000, 0x100000 )
2771
 
        ROM_COPY( "user1", 0x1800000, 0x1d00000, 0x100000 )
2772
 
        ROM_COPY( "user1", 0x1800000, 0x1e00000, 0x100000 )
2773
 
        ROM_COPY( "user1", 0x1800000, 0x1f00000, 0x100000 )
2774
 
 
2775
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2776
 
        ROM_LOAD32_WORD( "mpr-20023.16", 0x0000000, 0x400000, CRC(016be8d6) SHA1(804f69cd342e25cf1bed48e778981d67c4d1c9c7) )
2777
 
        ROM_LOAD32_WORD( "mpr-20026.20", 0x0000002, 0x400000, CRC(20044a30) SHA1(46be0cc2b8a4a3f530d081d11c6099d814977270) )
2778
 
        ROM_LOAD32_WORD( "mpr-20024.17", 0x0800000, 0x400000, CRC(62fd2d5b) SHA1(6a386a666ae57da5e47364da7b97da9c913710ef) )
2779
 
        ROM_LOAD32_WORD( "mpr-20027.21", 0x0800002, 0x400000, CRC(b2504ea6) SHA1(17c23c64b1080ab6a8eb282cabcd7d7612193045) )
2780
 
        ROM_LOAD32_WORD( "mpr-20025.18", 0x1000000, 0x400000, CRC(d4ecd0be) SHA1(9df0d1db32b818dad28f9eeab3bc19c56d27ec6d) )
2781
 
        ROM_LOAD32_WORD( "mpr-20028.22", 0x1000002, 0x400000, CRC(3147e0e1) SHA1(9aa0e13c8dc5073a603279a538cc7662531dfd19) )
2782
 
 
2783
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
2784
 
        ROM_LOAD32_WORD( "epr-20012", 0x000000, 0x100000, CRC(f53db4e3) SHA1(4474610eed52248e5e36be438eff5d39f076b134) ) /* are these two in the wrong order? */
2785
 
        ROM_LOAD32_WORD( "epr-20011", 0x000002, 0x100000, CRC(794c026c) SHA1(85abd667491fd019ee18ba256fd580356f4e1fe9) )
2786
 
 
2787
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2788
 
        ROM_LOAD32_WORD( "mpr-20022.25", 0x000000, 0x400000, CRC(9e47b3c2) SHA1(c73279e837f56c0417c07ba3c642af28fe9a24fa) )
2789
 
        ROM_LOAD32_WORD( "mpr-20021.24", 0x000002, 0x400000, CRC(3cbf36cb) SHA1(059cea17f9d6f5960d9fd869c36ffb6fcf230c1a) )
2790
 
 
2791
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2792
 
        ROM_LOAD16_WORD_SWAP( "epr-20029.30", 0x080000, 0x080000, CRC(927d31b9) SHA1(e7a18ccf5a0b9ebf18ae1d5518973fa3b4eb4653) )
2793
 
 
2794
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2795
 
        ROM_LOAD( "mpr-20030.31", 0x000000, 0x200000, CRC(b70ab686) SHA1(006911ce6332091d17808855c60a72fe928df778) )
2796
 
        ROM_LOAD( "mpr-20031.32", 0x200000, 0x200000, CRC(84da70e4) SHA1(77962afcac82589cc7bc852329335676ae3e23cf) )
2797
 
        ROM_LOAD( "mpr-20032.36", 0x400000, 0x200000, CRC(15516d35) SHA1(bced0d30f9b6ab579a11ac069cbb9d6d91352246) )
2798
 
        ROM_LOAD( "mpr-20033.37", 0x600000, 0x200000, CRC(8c8ed187) SHA1(a9e8e2d38b23716df2e211748c52b6b666f4c111) )
2799
 
 
2800
 
        MODEL2_CPU_BOARD
2801
 
        MODEL2A_VID_BOARD
2802
 
ROM_END
2803
 
 
2804
 
ROM_START( skytargt ) /* Sky Target, Model 2A */
2805
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2806
 
        ROM_LOAD32_WORD( "epr-18406.12", 0x000000, 0x080000, CRC(fde9c00a) SHA1(01cd519daaf6138d9df4940bf8bb5923a1f163df) )
2807
 
        ROM_LOAD32_WORD( "epr-18407.13", 0x000002, 0x080000, CRC(35f8b529) SHA1(faf6dcf8f345c1e7968823f2dba60afcd88f37c2) )
2808
 
 
2809
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2810
 
        ROM_LOAD32_WORD( "mpr-18415.10",   0x0000000, 0x400000, CRC(d7a1bbd7) SHA1(3061cc68755ca36255f325135aa44659afc3498c) )
2811
 
        ROM_LOAD32_WORD( "mpr-18416.11",   0x0000002, 0x400000, CRC(b77c9243) SHA1(6ffeef418364df9e08398c7564142cbf5750beb2) )
2812
 
        ROM_LOAD32_WORD( "mpr-18417.8",    0x0800000, 0x400000, CRC(a0d03f63) SHA1(88b97a76f0a85a3977915808eee4d64b69734e88) )
2813
 
        ROM_LOAD32_WORD( "mpr-18418.9",    0x0800002, 0x400000, CRC(c7a6f97f) SHA1(cf7c6887519e53d7fa321a2ad888b1673e16565b) )
2814
 
        ROM_LOAD32_WORD( "epr-18404.6",    0x1000000, 0x080000, CRC(f1407ec4) SHA1(d6805faea657ea0f998fb2470d7d24aa78a02bd4) )
2815
 
        ROM_LOAD32_WORD( "epr-18405.7",    0x1000002, 0x080000, CRC(00b40f9e) SHA1(21b6b390d8635349ba76899acea176954a24985e) )
2816
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
2817
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
2818
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
2819
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
2820
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
2821
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
2822
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
2823
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
2824
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
2825
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
2826
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
2827
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
2828
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
2829
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
2830
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
2831
 
 
2832
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2833
 
 
2834
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
2835
 
        ROM_LOAD32_WORD( "mpr-18420.28", 0x000000, 0x200000, CRC(92b87817) SHA1(b6949b745d0bedeecd6d0240f8911cb345c16d8d) )
2836
 
        ROM_LOAD32_WORD( "mpr-18419.29", 0x000002, 0x200000, CRC(74542d87) SHA1(37230e96dd526fb47fcbde5778e5466d8955a969) )
2837
 
 
2838
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2839
 
        ROM_LOAD32_WORD( "mpr-18413.16", 0x000000, 0x400000, CRC(1c4d416c) SHA1(2bd6eae4ab5751d485be105a06776fccd3c48d21) )
2840
 
        ROM_LOAD32_WORD( "mpr-18414.17", 0x000002, 0x400000, CRC(858885ba) SHA1(1729f6ff689a462a3d6e303ebc2dac323145a67c) )
2841
 
        ROM_LOAD32_WORD( "mpr-18409.20", 0x800000, 0x400000, CRC(666037ef) SHA1(6f622a82fd5ffd7a4692b5bf51b76755053a674b) )
2842
 
        ROM_LOAD32_WORD( "mpr-18410.21", 0x800002, 0x400000, CRC(b821a695) SHA1(139cbba0ceffa83c0f9925258944ec8a414b3040) )
2843
 
 
2844
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2845
 
        ROM_LOAD32_WORD( "mpr-18411.24", 0x000000, 0x400000, CRC(9c2dc40c) SHA1(842a647a70ef29a8c775e88c0bcbc63782496bba) )
2846
 
        ROM_LOAD32_WORD( "mpr-18412.25", 0x000002, 0x400000, CRC(4db52f8b) SHA1(66796f6c20e680a87e8939a70692680b1dd0b324) )
2847
 
 
2848
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2849
 
        ROM_LOAD16_WORD_SWAP( "epr-18408.30", 0x080000, 0x080000, CRC(6deb9657) SHA1(30e1894432a0765c64b93dd5ca7ca17ef58ac6c0) )
2850
 
 
2851
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2852
 
        ROM_LOAD( "mpr-18424.31",   0x000000, 0x200000, CRC(590a4338) SHA1(826f167d7a4f5d30466b2f75f0123187c29c2d69) )
2853
 
        ROM_LOAD( "mpr-18423.32",   0x200000, 0x200000, CRC(c356d765) SHA1(ae69c9d4e333579d826178d2863156dc784aedef) )
2854
 
        ROM_LOAD( "mpr-18422.36",   0x400000, 0x200000, CRC(b4f3cea6) SHA1(49669be09e10dfae7fddce0fc4e415466cb29566) )
2855
 
        ROM_LOAD( "mpr-18421.37",   0x600000, 0x200000, CRC(00522390) SHA1(5dbbf2ba008adad36929fcecb7c2c1e5ffd12618) )
2856
 
ROM_END
2857
 
 
2858
 
ROM_START( vcop2 ) /* Virtua Cop 2, Model 2A */
2859
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2860
 
        ROM_LOAD32_WORD( "epr-18524.12", 0x000000, 0x080000, CRC(1858988b) SHA1(2979f8470cc31e6c5c32c6fec1a87dbd29b52309) )
2861
 
        ROM_LOAD32_WORD( "epr-18525.13", 0x000002, 0x080000, CRC(0c13df3f) SHA1(6b4188f04aad80b89f1826e8ca47cff763980410) )
2862
 
        ROM_LOAD32_WORD( "epr-18518.14", 0x100000, 0x080000, CRC(7842951b) SHA1(bed4ec9a5e59807d17e5e602bdaf3c68fcba08b6) )
2863
 
        ROM_LOAD32_WORD( "epr-18519.15", 0x100002, 0x080000, CRC(31a30edc) SHA1(caf3c2676508a2ed032d3657ac640a257f04bdd4) )
2864
 
 
2865
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2866
 
        ROM_LOAD32_WORD( "mpr-18516.10",  0x000000, 0x200000, CRC(a3928ff0) SHA1(5a9695fb5eda394a1111a05ee5fb9cce29970e91) )
2867
 
        ROM_LOAD32_WORD( "mpr-18517.11",  0x000002, 0x200000, CRC(4bd73da4) SHA1(a4434bce019729e2148a95e3a6dea38de7f789c1) )
2868
 
        ROM_LOAD32_WORD( "mpr-18514.8",   0x400000, 0x200000, CRC(791283c5) SHA1(006fb22eefdd9205ede9a74fe53cbffe8c8fd45b) )
2869
 
        ROM_LOAD32_WORD( "mpr-18515.9",   0x400002, 0x200000, CRC(6ba1ffec) SHA1(70f493aa4eb93edce8dd5b7b532d1f50f81069ce) )
2870
 
        ROM_LOAD32_WORD( "mpr-18522.6",   0x800000, 0x200000, CRC(61d18536) SHA1(cc467cb26a8fccc48837d000fe9e1c41b0c0f4f9) )
2871
 
        ROM_LOAD32_WORD( "mpr-18523.7",   0x800002, 0x200000, CRC(61d08dc4) SHA1(40d8231d184582c0fc01ad874371aaec7dfcc337) )
2872
 
        ROM_LOAD32_WORD( "epr-18520.4",   0xc00000, 0x080000, CRC(1d4ec5e8) SHA1(44c4b5560d150909342e4182496f136c8c5e2edb) )
2873
 
        ROM_LOAD32_WORD( "epr-18521.5",   0xc00002, 0x080000, CRC(b8b3781c) SHA1(11956fe912c34d6a86a6b91d55987f6bead73473) )
2874
 
        ROM_COPY( "user1", 0xc00000, 0xd00000, 0x100000 )
2875
 
        ROM_COPY( "user1", 0xc00000, 0xe00000, 0x100000 )
2876
 
        ROM_COPY( "user1", 0xc00000, 0xf00000, 0x100000 )
2877
 
 
2878
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2879
 
 
2880
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2881
 
        ROM_LOAD32_WORD( "mpr-18513.16", 0x000000, 0x200000, CRC(777a3633) SHA1(edc2798c4d88975ce67b54fc0db008e7d24db6ef) )
2882
 
        ROM_LOAD32_WORD( "mpr-18510.20", 0x000002, 0x200000, CRC(e83de997) SHA1(8a8597aa31609663869e584cc5fad6e4b84f7dbe) )
2883
 
 
2884
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2885
 
        ROM_LOAD32_WORD( "mpr-18511.24", 0x000000, 0x200000, CRC(cae77a4f) SHA1(f21474486f0dc4092cbad4566deea8a952862ab7) )
2886
 
        ROM_LOAD32_WORD( "mpr-18512.25", 0x000002, 0x200000, CRC(d9bc7e71) SHA1(774eba886083b0dad9a47519c5801e44346312cf) )
2887
 
 
2888
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2889
 
        ROM_LOAD16_WORD_SWAP( "epr-18530.30", 0x080000, 0x080000, CRC(ac9c8357) SHA1(ad297c7fecaa9b877f0dd31e859983816947e437) )
2890
 
 
2891
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2892
 
        ROM_LOAD( "mpr-18529.31", 0x000000, 0x200000, CRC(f76715b1) SHA1(258418c1cb37338a694e48f3b48fadfae5f40239) )
2893
 
        ROM_LOAD( "mpr-18528.32", 0x200000, 0x200000, CRC(287a2f9a) SHA1(78ba93ab90322152efc37f7130073b0dc516ef5d) )
2894
 
        ROM_LOAD( "mpr-18527.36", 0x400000, 0x200000, CRC(e6a49314) SHA1(26563f425f2f0906ae9278fe5de02955653d49fe) )
2895
 
        ROM_LOAD( "mpr-18526.37", 0x600000, 0x200000, CRC(6516d9b5) SHA1(8f13cb02c76f7b7cd11f3c3772ff13302d55e9c3) )
2896
 
 
2897
 
        MODEL2_CPU_BOARD
2898
 
        MODEL2A_VID_BOARD
2899
 
ROM_END
2900
 
 
2901
 
/* Dynamite Cop program rom EPR numbers via "DYNAMITE COP ROM CVT MANUAL" 421-9897-01:
2902
 
 
2903
 
      USA            Export          Korea           Japan*
2904
 
  ------------------------------------------------------------
2905
 
Model2a:
2906
 
  epr-20926.12    epr-20930.12    epr-20971.12    epr-20922.12
2907
 
  epr-20927.13    epr-20931.13    epr-20972.13    epr-20923.13
2908
 
  epr-20928.14    epr-20932.14    epr-20973.14    epr-20924.14
2909
 
  epr-20929.15    epr-20933.15    epr-20974.15    epr-20925.15
2910
 
Model2b:
2911
 
  epr-20938.13    epr-20942.13    epr-20975.13    epr-20934.13
2912
 
  epr-20939.14    epr-20943.14    epr-20976.14    epr-20935.14
2913
 
  epr-20940.15    epr-20944.15    epr-20977.15    epr-20936.15
2914
 
  epr-20941.16    epr-20945.16    epr-20978.16    epr-20937.16
2915
 
Model2c:
2916
 
  epr-20950.13    epr-20954.13    epr-20979.13    epr-20946.13
2917
 
  epr-20951.14    epr-20955.14    epr-20980.14    epr-20947.14
2918
 
  epr-20952.15    epr-20956.15    epr-20981.15    epr-20948.15
2919
 
  epr-20953.16    epr-20967.16    epr-20982.16    epr-20949.16
2920
 
 
2921
 
* The numbers for the Japan sets were not listed, but are shown for comparision
2922
 
 
2923
 
In Dynamite Deka 2 manual 420-6406-01 it states there are C-CRX versions of the
2924
 
USA, Export and Korea versions as well as the Japan version.
2925
 
 
2926
 
*/
2927
 
 
2928
 
ROM_START( dynamcop ) /* Dynamite Cop (Export), Model 2A */
2929
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2930
 
        ROM_LOAD32_WORD("epr-20930.12", 0x000000, 0x080000, CRC(b8fc8ff7) SHA1(53b0f9dc8494effa077170ddced2d95f43a5f134) )
2931
 
        ROM_LOAD32_WORD("epr-20931.13", 0x000002, 0x080000, CRC(89d13f88) SHA1(5e266b5e153a0d9a57360cfd1af81e3a58a2fb7d) )
2932
 
        ROM_LOAD32_WORD("epr-20932.14", 0x100000, 0x080000, CRC(618a68bf) SHA1(3022283dded4d08d790d034b6d543c0397b5bf5a) )
2933
 
        ROM_LOAD32_WORD("epr-20933.15", 0x100002, 0x080000, CRC(13abe49c) SHA1(a741a0205c1b3664ab4d09d6d991a768269a79ea) )
2934
 
 
2935
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2936
 
        ROM_LOAD32_WORD("mpr-20797.10", 0x0000000, 0x400000, CRC(87bab1e4) SHA1(af2b2d82364621a1528d6ed59fbfbf15dc93ee72) )
2937
 
        ROM_LOAD32_WORD("mpr-20798.11", 0x0000002, 0x400000, CRC(40dd752b) SHA1(8c2e210ac7c7b133ba9befc79a07c4ca6b4e3f18) )
2938
 
        ROM_LOAD32_WORD("mpr-20795.8",  0x0800000, 0x400000, CRC(0ef85e12) SHA1(97c657edd98cde6f0780a04a7711e5b370087a60) )
2939
 
        ROM_LOAD32_WORD("mpr-20796.9",  0x0800002, 0x400000, CRC(870139cb) SHA1(24fda2cd458cf7a3db485564c02ac61d30cbdf5e) )
2940
 
        ROM_LOAD32_WORD("mpr-20793.6",  0x1000000, 0x400000, CRC(42ea08f8) SHA1(e70b55709067628ea0bf3f5190a300100b61eed1) )
2941
 
        ROM_LOAD32_WORD("mpr-20794.7",  0x1000002, 0x400000, CRC(8e5cd1db) SHA1(d90e86d38bda12f2d0f99e23a42928f05bde3ea8) )
2942
 
        ROM_LOAD32_WORD("mpr-20791.4",  0x1800000, 0x400000, CRC(4883d0df) SHA1(b98af63e81f6c1b2766d7e96acbd1821bba000d4) )
2943
 
        ROM_LOAD32_WORD("mpr-20792.5",  0x1800002, 0x400000, CRC(47becfa2) SHA1(a333885872a64b322f3cb464a70352d73654b1b3) )
2944
 
 
2945
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2946
 
 
2947
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2948
 
        ROM_LOAD32_WORD("mpr-20799.16", 0x0000000, 0x400000, CRC(424571bf) SHA1(18a4e8d0e968fff3b645b59a0023b0ef38d51924) )
2949
 
        ROM_LOAD32_WORD("mpr-20803.20", 0x0000002, 0x400000, CRC(61a8ad52) SHA1(0215b5de6d10f0852ac0ca4e10475e10243e39c7) )
2950
 
        ROM_LOAD32_WORD("mpr-20800.17", 0x0800000, 0x400000, CRC(3c2ee808) SHA1(dc0c470c6b410ab991ef0e09ce1cc0f63c8a204d) )
2951
 
        ROM_LOAD32_WORD("mpr-20804.21", 0x0800002, 0x400000, CRC(03b35cb8) SHA1(7bd2ae89f9cc7c0570dbaffe5f54aea2dfa1b39e) )
2952
 
        ROM_LOAD32_WORD("mpr-20801.18", 0x1000000, 0x400000, CRC(c6914173) SHA1(d0861366c4123c833a325df5345f951386a94d1a) )
2953
 
        ROM_LOAD32_WORD("mpr-20805.22", 0x1000002, 0x400000, CRC(f6605ede) SHA1(7c95bfe2e95bae3d59c3c9efe1f40b5bc292ad44) )
2954
 
        ROM_LOAD32_WORD("mpr-20802.19", 0x1800000, 0x400000, CRC(d11b5267) SHA1(b90909849fbe0f62d5ec7c38608c84e7fa845ebf) )
2955
 
        ROM_LOAD32_WORD("mpr-20806.23", 0x1800002, 0x400000, CRC(0c942073) SHA1(5f32a56857e2213b110c32deea184dba882e34b8) )
2956
 
 
2957
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
2958
 
        ROM_LOAD32_WORD("mpr-20809.25", 0x0000000, 0x400000, CRC(3b7b4622) SHA1(c6f1a1fd2684f352d3846b7f859b0405fa2d667a) )
2959
 
        ROM_LOAD32_WORD("mpr-20807.24", 0x0000002, 0x400000, CRC(1241e0f2) SHA1(3f7fa1d7d3d398bc8d5295bc1df6fe11405d20d9) )
2960
 
        ROM_LOAD32_WORD("mpr-20810.27", 0x0800000, 0x400000, CRC(838a10a7) SHA1(a658f1864829058b1d419e7c001e47cd0ab06a20) )
2961
 
        ROM_LOAD32_WORD("mpr-20808.26", 0x0800002, 0x400000, CRC(706bd495) SHA1(f857b303afda6301b19d97dfe5c313126261716e) )
2962
 
 
2963
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
2964
 
        ROM_LOAD16_WORD_SWAP("epr-20811.30", 0x080000,  0x80000, CRC(a154b83e) SHA1(2640c6b6966f4a888329e583b6b713bd0e779b6b) )
2965
 
 
2966
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
2967
 
        ROM_LOAD("mpr-20812.31", 0x000000, 0x200000, CRC(695b6088) SHA1(09682d18144e60d740a9d7a3e19db6f76fa581f1) )
2968
 
        ROM_LOAD("mpr-20813.32", 0x200000, 0x200000, CRC(1908679c) SHA1(32913385f09da2e43af0c4a4612b955527bfe759) )
2969
 
        ROM_LOAD("mpr-20814.36", 0x400000, 0x200000, CRC(e8ebc74c) SHA1(731ce721bb9e148f3a9f7fbe569522567a681c4e) )
2970
 
        ROM_LOAD("mpr-20815.37", 0x600000, 0x200000, CRC(1b5aaae4) SHA1(32b4bf6c096fdccdd5d8f1ddb6c27d3389a52234) )
2971
 
 
2972
 
        MODEL2_CPU_BOARD
2973
 
        MODEL2A_VID_BOARD
2974
 
ROM_END
2975
 
 
2976
 
ROM_START( dyndeka2 ) /* Dynamite Deka 2 (Japan), Model 2A */
2977
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
2978
 
        ROM_LOAD32_WORD("epr-20922.12",  0x000000, 0x080000, CRC(0a8b5604) SHA1(4076998fc600c1df3bb5ef48d42681c01e651495) )
2979
 
        ROM_LOAD32_WORD("epr-20923.13",  0x000002, 0x080000, CRC(83be73d4) SHA1(1404a9c79cd2bae13f60e5e008307417324c3666) )
2980
 
        ROM_LOAD32_WORD("epr-20924.14",  0x100000, 0x080000, CRC(618a68bf) SHA1(3022283dded4d08d790d034b6d543c0397b5bf5a) ) /* same as epr-20932.14 listed above */
2981
 
        ROM_LOAD32_WORD("epr-20925.15",  0x100002, 0x080000, CRC(13abe49c) SHA1(a741a0205c1b3664ab4d09d6d991a768269a79ea) ) /* same as epr-20933.15 listed above */
2982
 
 
2983
 
        ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data
2984
 
        ROM_LOAD32_WORD("mpr-20797.10", 0x0000000, 0x400000, CRC(87bab1e4) SHA1(af2b2d82364621a1528d6ed59fbfbf15dc93ee72) )
2985
 
        ROM_LOAD32_WORD("mpr-20798.11", 0x0000002, 0x400000, CRC(40dd752b) SHA1(8c2e210ac7c7b133ba9befc79a07c4ca6b4e3f18) )
2986
 
        ROM_LOAD32_WORD("mpr-20795.8",  0x0800000, 0x400000, CRC(0ef85e12) SHA1(97c657edd98cde6f0780a04a7711e5b370087a60) )
2987
 
        ROM_LOAD32_WORD("mpr-20796.9",  0x0800002, 0x400000, CRC(870139cb) SHA1(24fda2cd458cf7a3db485564c02ac61d30cbdf5e) )
2988
 
        ROM_LOAD32_WORD("mpr-20793.6",  0x1000000, 0x400000, CRC(42ea08f8) SHA1(e70b55709067628ea0bf3f5190a300100b61eed1) )
2989
 
        ROM_LOAD32_WORD("mpr-20794.7",  0x1000002, 0x400000, CRC(8e5cd1db) SHA1(d90e86d38bda12f2d0f99e23a42928f05bde3ea8) )
2990
 
        ROM_LOAD32_WORD("mpr-20791.4",  0x1800000, 0x400000, CRC(4883d0df) SHA1(b98af63e81f6c1b2766d7e96acbd1821bba000d4) )
2991
 
        ROM_LOAD32_WORD("mpr-20792.5",  0x1800002, 0x400000, CRC(47becfa2) SHA1(a333885872a64b322f3cb464a70352d73654b1b3) )
2992
 
 
2993
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
2994
 
 
2995
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
2996
 
        ROM_LOAD32_WORD("mpr-20799.16", 0x0000000, 0x400000, CRC(424571bf) SHA1(18a4e8d0e968fff3b645b59a0023b0ef38d51924) )
2997
 
        ROM_LOAD32_WORD("mpr-20803.20", 0x0000002, 0x400000, CRC(61a8ad52) SHA1(0215b5de6d10f0852ac0ca4e10475e10243e39c7) )
2998
 
        ROM_LOAD32_WORD("mpr-20800.17", 0x0800000, 0x400000, CRC(3c2ee808) SHA1(dc0c470c6b410ab991ef0e09ce1cc0f63c8a204d) )
2999
 
        ROM_LOAD32_WORD("mpr-20804.21", 0x0800002, 0x400000, CRC(03b35cb8) SHA1(7bd2ae89f9cc7c0570dbaffe5f54aea2dfa1b39e) )
3000
 
        ROM_LOAD32_WORD("mpr-20801.18", 0x1000000, 0x400000, CRC(c6914173) SHA1(d0861366c4123c833a325df5345f951386a94d1a) )
3001
 
        ROM_LOAD32_WORD("mpr-20805.22", 0x1000002, 0x400000, CRC(f6605ede) SHA1(7c95bfe2e95bae3d59c3c9efe1f40b5bc292ad44) )
3002
 
        ROM_LOAD32_WORD("mpr-20802.19", 0x1800000, 0x400000, CRC(d11b5267) SHA1(b90909849fbe0f62d5ec7c38608c84e7fa845ebf) )
3003
 
        ROM_LOAD32_WORD("mpr-20806.23", 0x1800002, 0x400000, CRC(0c942073) SHA1(5f32a56857e2213b110c32deea184dba882e34b8) )
3004
 
 
3005
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3006
 
        ROM_LOAD32_WORD("mpr-20809.25", 0x0000000, 0x400000, CRC(3b7b4622) SHA1(c6f1a1fd2684f352d3846b7f859b0405fa2d667a) )
3007
 
        ROM_LOAD32_WORD("mpr-20807.24", 0x0000002, 0x400000, CRC(1241e0f2) SHA1(3f7fa1d7d3d398bc8d5295bc1df6fe11405d20d9) )
3008
 
        ROM_LOAD32_WORD("mpr-20810.27", 0x0800000, 0x400000, CRC(838a10a7) SHA1(a658f1864829058b1d419e7c001e47cd0ab06a20) )
3009
 
        ROM_LOAD32_WORD("mpr-20808.26", 0x0800002, 0x400000, CRC(706bd495) SHA1(f857b303afda6301b19d97dfe5c313126261716e) )
3010
 
 
3011
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3012
 
        ROM_LOAD16_WORD_SWAP("epr-20811.30", 0x080000,  0x80000, CRC(a154b83e) SHA1(2640c6b6966f4a888329e583b6b713bd0e779b6b) )
3013
 
 
3014
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3015
 
        ROM_LOAD("mpr-20812.31", 0x000000, 0x200000, CRC(695b6088) SHA1(09682d18144e60d740a9d7a3e19db6f76fa581f1) )
3016
 
        ROM_LOAD("mpr-20813.32", 0x200000, 0x200000, CRC(1908679c) SHA1(32913385f09da2e43af0c4a4612b955527bfe759) )
3017
 
        ROM_LOAD("mpr-20814.36", 0x400000, 0x200000, CRC(e8ebc74c) SHA1(731ce721bb9e148f3a9f7fbe569522567a681c4e) )
3018
 
        ROM_LOAD("mpr-20815.37", 0x600000, 0x200000, CRC(1b5aaae4) SHA1(32b4bf6c096fdccdd5d8f1ddb6c27d3389a52234) )
3019
 
 
3020
 
        MODEL2_CPU_BOARD
3021
 
        MODEL2A_VID_BOARD
3022
 
ROM_END
3023
 
 
3024
 
ROM_START( dynamcopb ) /* Dynamite Cop (Export), Model 2B */
3025
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3026
 
        ROM_LOAD32_WORD("epr-20944.15", 0x000000, 0x080000, CRC(29b142f2) SHA1(b81d1ee7203b2f5fb6db4ff4185f4071e99aaedf) )
3027
 
        ROM_LOAD32_WORD("epr-20945.16", 0x000002, 0x080000, CRC(c495912e) SHA1(1a45296a5554923cb52b38586e40ceda2517f1bf) )
3028
 
        ROM_LOAD32_WORD("epr-20942.13", 0x100000, 0x080000, CRC(618a68bf) SHA1(3022283dded4d08d790d034b6d543c0397b5bf5a) ) /* same as epr-20932.14 listed above */
3029
 
        ROM_LOAD32_WORD("epr-20943.14", 0x100002, 0x080000, CRC(13abe49c) SHA1(a741a0205c1b3664ab4d09d6d991a768269a79ea) ) /* same as epr-20933.15 listed above */
3030
 
 
3031
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3032
 
        ROM_LOAD32_WORD("mpr-20797.10", 0x0000000, 0x400000, CRC(87bab1e4) SHA1(af2b2d82364621a1528d6ed59fbfbf15dc93ee72) )
3033
 
        ROM_LOAD32_WORD("mpr-20798.11", 0x0000002, 0x400000, CRC(40dd752b) SHA1(8c2e210ac7c7b133ba9befc79a07c4ca6b4e3f18) )
3034
 
        ROM_LOAD32_WORD("mpr-20795.8",  0x0800000, 0x400000, CRC(0ef85e12) SHA1(97c657edd98cde6f0780a04a7711e5b370087a60) )
3035
 
        ROM_LOAD32_WORD("mpr-20796.9",  0x0800002, 0x400000, CRC(870139cb) SHA1(24fda2cd458cf7a3db485564c02ac61d30cbdf5e) )
3036
 
        ROM_LOAD32_WORD("mpr-20793.6",  0x1000000, 0x400000, CRC(42ea08f8) SHA1(e70b55709067628ea0bf3f5190a300100b61eed1) )
3037
 
        ROM_LOAD32_WORD("mpr-20794.7",  0x1000002, 0x400000, CRC(8e5cd1db) SHA1(d90e86d38bda12f2d0f99e23a42928f05bde3ea8) )
3038
 
        ROM_LOAD32_WORD("mpr-20791.4",  0x1800000, 0x400000, CRC(4883d0df) SHA1(b98af63e81f6c1b2766d7e96acbd1821bba000d4) )
3039
 
        ROM_LOAD32_WORD("mpr-20792.5",  0x1800002, 0x400000, CRC(47becfa2) SHA1(a333885872a64b322f3cb464a70352d73654b1b3) )
3040
 
 
3041
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3042
 
        ROM_LOAD32_WORD("mpr-20799.16", 0x0000000, 0x400000, CRC(424571bf) SHA1(18a4e8d0e968fff3b645b59a0023b0ef38d51924) )
3043
 
        ROM_LOAD32_WORD("mpr-20803.20", 0x0000002, 0x400000, CRC(61a8ad52) SHA1(0215b5de6d10f0852ac0ca4e10475e10243e39c7) )
3044
 
        ROM_LOAD32_WORD("mpr-20800.17", 0x0800000, 0x400000, CRC(3c2ee808) SHA1(dc0c470c6b410ab991ef0e09ce1cc0f63c8a204d) )
3045
 
        ROM_LOAD32_WORD("mpr-20804.21", 0x0800002, 0x400000, CRC(03b35cb8) SHA1(7bd2ae89f9cc7c0570dbaffe5f54aea2dfa1b39e) )
3046
 
        ROM_LOAD32_WORD("mpr-20801.18", 0x1000000, 0x400000, CRC(c6914173) SHA1(d0861366c4123c833a325df5345f951386a94d1a) )
3047
 
        ROM_LOAD32_WORD("mpr-20805.22", 0x1000002, 0x400000, CRC(f6605ede) SHA1(7c95bfe2e95bae3d59c3c9efe1f40b5bc292ad44) )
3048
 
        ROM_LOAD32_WORD("mpr-20802.19", 0x1800000, 0x400000, CRC(d11b5267) SHA1(b90909849fbe0f62d5ec7c38608c84e7fa845ebf) )
3049
 
        ROM_LOAD32_WORD("mpr-20806.23", 0x1800002, 0x400000, CRC(0c942073) SHA1(5f32a56857e2213b110c32deea184dba882e34b8) )
3050
 
 
3051
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3052
 
        ROM_LOAD32_WORD("mpr-20809.25", 0x0000000, 0x400000, CRC(3b7b4622) SHA1(c6f1a1fd2684f352d3846b7f859b0405fa2d667a) )
3053
 
        ROM_LOAD32_WORD("mpr-20807.24", 0x0000002, 0x400000, CRC(1241e0f2) SHA1(3f7fa1d7d3d398bc8d5295bc1df6fe11405d20d9) )
3054
 
        ROM_LOAD32_WORD("mpr-20810.27", 0x0800000, 0x400000, CRC(838a10a7) SHA1(a658f1864829058b1d419e7c001e47cd0ab06a20) )
3055
 
        ROM_LOAD32_WORD("mpr-20808.26", 0x0800002, 0x400000, CRC(706bd495) SHA1(f857b303afda6301b19d97dfe5c313126261716e) )
3056
 
 
3057
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
3058
 
 
3059
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3060
 
        ROM_LOAD16_WORD_SWAP("epr-20811.30", 0x080000,  0x80000, CRC(a154b83e) SHA1(2640c6b6966f4a888329e583b6b713bd0e779b6b) )
3061
 
 
3062
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3063
 
        ROM_LOAD("mpr-20812.31", 0x000000, 0x200000, CRC(695b6088) SHA1(09682d18144e60d740a9d7a3e19db6f76fa581f1) )
3064
 
        ROM_LOAD("mpr-20813.32", 0x200000, 0x200000, CRC(1908679c) SHA1(32913385f09da2e43af0c4a4612b955527bfe759) )
3065
 
        ROM_LOAD("mpr-20814.36", 0x400000, 0x200000, CRC(e8ebc74c) SHA1(731ce721bb9e148f3a9f7fbe569522567a681c4e) )
3066
 
        ROM_LOAD("mpr-20815.37", 0x600000, 0x200000, CRC(1b5aaae4) SHA1(32b4bf6c096fdccdd5d8f1ddb6c27d3389a52234) )
3067
 
ROM_END
3068
 
 
3069
 
ROM_START( dyndeka2b ) /* Dynamite Deka 2 (Japan), Model 2B */
3070
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3071
 
        ROM_LOAD32_WORD("epr-20936.15", 0x000000, 0x080000, CRC(23ef98f2) SHA1(0a106125ed4a2569b54924130ca2ffa05acf2322) )
3072
 
        ROM_LOAD32_WORD("epr-20937.16", 0x000002, 0x080000, CRC(25a14e00) SHA1(ebdd21f269fd8a0798306e349d2985eead7e989f) )
3073
 
        ROM_LOAD32_WORD("epr-20934.13", 0x100000, 0x080000, CRC(618a68bf) SHA1(3022283dded4d08d790d034b6d543c0397b5bf5a) ) /* same as epr-20932.14 listed above */
3074
 
        ROM_LOAD32_WORD("epr-20935.14", 0x100002, 0x080000, CRC(13abe49c) SHA1(a741a0205c1b3664ab4d09d6d991a768269a79ea) ) /* same as epr-20933.15 listed above */
3075
 
 
3076
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3077
 
        ROM_LOAD32_WORD("mpr-20797.10", 0x0000000, 0x400000, CRC(87bab1e4) SHA1(af2b2d82364621a1528d6ed59fbfbf15dc93ee72) )
3078
 
        ROM_LOAD32_WORD("mpr-20798.11", 0x0000002, 0x400000, CRC(40dd752b) SHA1(8c2e210ac7c7b133ba9befc79a07c4ca6b4e3f18) )
3079
 
        ROM_LOAD32_WORD("mpr-20795.8",  0x0800000, 0x400000, CRC(0ef85e12) SHA1(97c657edd98cde6f0780a04a7711e5b370087a60) )
3080
 
        ROM_LOAD32_WORD("mpr-20796.9",  0x0800002, 0x400000, CRC(870139cb) SHA1(24fda2cd458cf7a3db485564c02ac61d30cbdf5e) )
3081
 
        ROM_LOAD32_WORD("mpr-20793.6",  0x1000000, 0x400000, CRC(42ea08f8) SHA1(e70b55709067628ea0bf3f5190a300100b61eed1) )
3082
 
        ROM_LOAD32_WORD("mpr-20794.7",  0x1000002, 0x400000, CRC(8e5cd1db) SHA1(d90e86d38bda12f2d0f99e23a42928f05bde3ea8) )
3083
 
        ROM_LOAD32_WORD("mpr-20791.4",  0x1800000, 0x400000, CRC(4883d0df) SHA1(b98af63e81f6c1b2766d7e96acbd1821bba000d4) )
3084
 
        ROM_LOAD32_WORD("mpr-20792.5",  0x1800002, 0x400000, CRC(47becfa2) SHA1(a333885872a64b322f3cb464a70352d73654b1b3) )
3085
 
 
3086
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3087
 
        ROM_LOAD32_WORD("mpr-20799.16", 0x0000000, 0x400000, CRC(424571bf) SHA1(18a4e8d0e968fff3b645b59a0023b0ef38d51924) )
3088
 
        ROM_LOAD32_WORD("mpr-20803.20", 0x0000002, 0x400000, CRC(61a8ad52) SHA1(0215b5de6d10f0852ac0ca4e10475e10243e39c7) )
3089
 
        ROM_LOAD32_WORD("mpr-20800.17", 0x0800000, 0x400000, CRC(3c2ee808) SHA1(dc0c470c6b410ab991ef0e09ce1cc0f63c8a204d) )
3090
 
        ROM_LOAD32_WORD("mpr-20804.21", 0x0800002, 0x400000, CRC(03b35cb8) SHA1(7bd2ae89f9cc7c0570dbaffe5f54aea2dfa1b39e) )
3091
 
        ROM_LOAD32_WORD("mpr-20801.18", 0x1000000, 0x400000, CRC(c6914173) SHA1(d0861366c4123c833a325df5345f951386a94d1a) )
3092
 
        ROM_LOAD32_WORD("mpr-20805.22", 0x1000002, 0x400000, CRC(f6605ede) SHA1(7c95bfe2e95bae3d59c3c9efe1f40b5bc292ad44) )
3093
 
        ROM_LOAD32_WORD("mpr-20802.19", 0x1800000, 0x400000, CRC(d11b5267) SHA1(b90909849fbe0f62d5ec7c38608c84e7fa845ebf) )
3094
 
        ROM_LOAD32_WORD("mpr-20806.23", 0x1800002, 0x400000, CRC(0c942073) SHA1(5f32a56857e2213b110c32deea184dba882e34b8) )
3095
 
 
3096
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3097
 
        ROM_LOAD32_WORD("mpr-20809.25", 0x0000000, 0x400000, CRC(3b7b4622) SHA1(c6f1a1fd2684f352d3846b7f859b0405fa2d667a) )
3098
 
        ROM_LOAD32_WORD("mpr-20807.24", 0x0000002, 0x400000, CRC(1241e0f2) SHA1(3f7fa1d7d3d398bc8d5295bc1df6fe11405d20d9) )
3099
 
        ROM_LOAD32_WORD("mpr-20810.27", 0x0800000, 0x400000, CRC(838a10a7) SHA1(a658f1864829058b1d419e7c001e47cd0ab06a20) )
3100
 
        ROM_LOAD32_WORD("mpr-20808.26", 0x0800002, 0x400000, CRC(706bd495) SHA1(f857b303afda6301b19d97dfe5c313126261716e) )
3101
 
 
3102
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
3103
 
 
3104
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3105
 
        ROM_LOAD16_WORD_SWAP("epr-20811.30", 0x080000,  0x80000, CRC(a154b83e) SHA1(2640c6b6966f4a888329e583b6b713bd0e779b6b) )
3106
 
 
3107
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3108
 
        ROM_LOAD("mpr-20812.31", 0x000000, 0x200000, CRC(695b6088) SHA1(09682d18144e60d740a9d7a3e19db6f76fa581f1) )
3109
 
        ROM_LOAD("mpr-20813.32", 0x200000, 0x200000, CRC(1908679c) SHA1(32913385f09da2e43af0c4a4612b955527bfe759) )
3110
 
        ROM_LOAD("mpr-20814.36", 0x400000, 0x200000, CRC(e8ebc74c) SHA1(731ce721bb9e148f3a9f7fbe569522567a681c4e) )
3111
 
        ROM_LOAD("mpr-20815.37", 0x600000, 0x200000, CRC(1b5aaae4) SHA1(32b4bf6c096fdccdd5d8f1ddb6c27d3389a52234) )
3112
 
ROM_END
3113
 
 
3114
 
ROM_START( dynamcopc ) /* Dynamite Cop (USA), Model 2C */
3115
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3116
 
        ROM_LOAD32_WORD("epr-20952.15", 0x000000, 0x080000, CRC(ec8bc896) SHA1(85deb1dc1348730a0c9b6ce3679582e7894ff2ed) )
3117
 
        ROM_LOAD32_WORD("epr-20953.16", 0x000002, 0x080000, CRC(a8276ffd) SHA1(9bea99c043775c00742c20e2f917d211dca09cc5) )
3118
 
        ROM_LOAD32_WORD("epr-20950.13", 0x100000, 0x080000, CRC(618a68bf) SHA1(3022283dded4d08d790d034b6d543c0397b5bf5a) ) /* same as epr-20932.14 listed above */
3119
 
        ROM_LOAD32_WORD("epr-20951.14", 0x100002, 0x080000, CRC(13abe49c) SHA1(a741a0205c1b3664ab4d09d6d991a768269a79ea) ) /* same as epr-20933.15 listed above */
3120
 
 
3121
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3122
 
        ROM_LOAD32_WORD("mpr-20797.10", 0x0000000, 0x400000, CRC(87bab1e4) SHA1(af2b2d82364621a1528d6ed59fbfbf15dc93ee72) ) /* Located at position 11 on 2C-CRX rom board */
3123
 
        ROM_LOAD32_WORD("mpr-20798.11", 0x0000002, 0x400000, CRC(40dd752b) SHA1(8c2e210ac7c7b133ba9befc79a07c4ca6b4e3f18) ) /* Located at position 12 on 2C-CRX rom board */
3124
 
        ROM_LOAD32_WORD("mpr-20795.8",  0x0800000, 0x400000, CRC(0ef85e12) SHA1(97c657edd98cde6f0780a04a7711e5b370087a60) ) /* Located at position  9 on 2C-CRX rom board */
3125
 
        ROM_LOAD32_WORD("mpr-20796.9",  0x0800002, 0x400000, CRC(870139cb) SHA1(24fda2cd458cf7a3db485564c02ac61d30cbdf5e) ) /* Located at position 10 on 2C-CRX rom board */
3126
 
        ROM_LOAD32_WORD("mpr-20793.6",  0x1000000, 0x400000, CRC(42ea08f8) SHA1(e70b55709067628ea0bf3f5190a300100b61eed1) ) /* Located at position  7 on 2C-CRX rom board */
3127
 
        ROM_LOAD32_WORD("mpr-20794.7",  0x1000002, 0x400000, CRC(8e5cd1db) SHA1(d90e86d38bda12f2d0f99e23a42928f05bde3ea8) ) /* Located at position  8 on 2C-CRX rom board */
3128
 
        ROM_LOAD32_WORD("mpr-20791.4",  0x1800000, 0x400000, CRC(4883d0df) SHA1(b98af63e81f6c1b2766d7e96acbd1821bba000d4) ) /* Located at position  5 on 2C-CRX rom board */
3129
 
        ROM_LOAD32_WORD("mpr-20792.5",  0x1800002, 0x400000, CRC(47becfa2) SHA1(a333885872a64b322f3cb464a70352d73654b1b3) ) /* Located at position  6 on 2C-CRX rom board */
3130
 
 
3131
 
        ROM_REGION( 0x800000, "cpu2", ROMREGION_ERASE00 ) // TGPx4 program (COPRO sockets)
3132
 
 
3133
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3134
 
        ROM_LOAD32_WORD("mpr-20799.16", 0x0000000, 0x400000, CRC(424571bf) SHA1(18a4e8d0e968fff3b645b59a0023b0ef38d51924) ) /* Located at position 17 on 2C-CRX rom board */
3135
 
        ROM_LOAD32_WORD("mpr-20803.20", 0x0000002, 0x400000, CRC(61a8ad52) SHA1(0215b5de6d10f0852ac0ca4e10475e10243e39c7) ) /* Located at position 21 on 2C-CRX rom board */
3136
 
        ROM_LOAD32_WORD("mpr-20800.17", 0x0800000, 0x400000, CRC(3c2ee808) SHA1(dc0c470c6b410ab991ef0e09ce1cc0f63c8a204d) ) /* Located at position 18 on 2C-CRX rom board */
3137
 
        ROM_LOAD32_WORD("mpr-20804.21", 0x0800002, 0x400000, CRC(03b35cb8) SHA1(7bd2ae89f9cc7c0570dbaffe5f54aea2dfa1b39e) ) /* Located at position 22 on 2C-CRX rom board */
3138
 
        ROM_LOAD32_WORD("mpr-20801.18", 0x1000000, 0x400000, CRC(c6914173) SHA1(d0861366c4123c833a325df5345f951386a94d1a) ) /* Located at position 19 on 2C-CRX rom board */
3139
 
        ROM_LOAD32_WORD("mpr-20805.22", 0x1000002, 0x400000, CRC(f6605ede) SHA1(7c95bfe2e95bae3d59c3c9efe1f40b5bc292ad44) ) /* Located at position 23 on 2C-CRX rom board */
3140
 
        ROM_LOAD32_WORD("mpr-20802.19", 0x1800000, 0x400000, CRC(d11b5267) SHA1(b90909849fbe0f62d5ec7c38608c84e7fa845ebf) ) /* Located at position 20 on 2C-CRX rom board */
3141
 
        ROM_LOAD32_WORD("mpr-20806.23", 0x1800002, 0x400000, CRC(0c942073) SHA1(5f32a56857e2213b110c32deea184dba882e34b8) ) /* Located at position 24 on 2C-CRX rom board */
3142
 
 
3143
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3144
 
        ROM_LOAD32_WORD("mpr-20809.25", 0x0000000, 0x400000, CRC(3b7b4622) SHA1(c6f1a1fd2684f352d3846b7f859b0405fa2d667a) ) /* Located at position 27 on 2C-CRX rom board */
3145
 
        ROM_LOAD32_WORD("mpr-20807.24", 0x0000002, 0x400000, CRC(1241e0f2) SHA1(3f7fa1d7d3d398bc8d5295bc1df6fe11405d20d9) ) /* Located at position 25 on 2C-CRX rom board */
3146
 
        ROM_LOAD32_WORD("mpr-20810.27", 0x0800000, 0x400000, CRC(838a10a7) SHA1(a658f1864829058b1d419e7c001e47cd0ab06a20) ) /* Located at position 28 on 2C-CRX rom board */
3147
 
        ROM_LOAD32_WORD("mpr-20808.26", 0x0800002, 0x400000, CRC(706bd495) SHA1(f857b303afda6301b19d97dfe5c313126261716e) ) /* Located at position 26 on 2C-CRX rom board */
3148
 
 
3149
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3150
 
        ROM_LOAD16_WORD_SWAP("epr-20811.30", 0x080000,  0x80000, CRC(a154b83e) SHA1(2640c6b6966f4a888329e583b6b713bd0e779b6b) ) /* Located at position 31 on 2C-CRX rom board */
3151
 
 
3152
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3153
 
        ROM_LOAD("mpr-20812.31", 0x000000, 0x200000, CRC(695b6088) SHA1(09682d18144e60d740a9d7a3e19db6f76fa581f1) ) /* Located at position 32 on 2C-CRX rom board */
3154
 
        ROM_LOAD("mpr-20813.32", 0x200000, 0x200000, CRC(1908679c) SHA1(32913385f09da2e43af0c4a4612b955527bfe759) ) /* Located at position 33 on 2C-CRX rom board */
3155
 
        ROM_LOAD("mpr-20814.36", 0x400000, 0x200000, CRC(e8ebc74c) SHA1(731ce721bb9e148f3a9f7fbe569522567a681c4e) ) /* Located at position 34 on 2C-CRX rom board */
3156
 
        ROM_LOAD("mpr-20815.37", 0x600000, 0x200000, CRC(1b5aaae4) SHA1(32b4bf6c096fdccdd5d8f1ddb6c27d3389a52234) ) /* Located at position 35 on 2C-CRX rom board */
3157
 
ROM_END
3158
 
 
3159
 
ROM_START( schamp ) /* Sonic Championship, Model 2B - Sega game ID: 834-12786 */
3160
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3161
 
        ROM_LOAD32_WORD("epr-19141.15", 0x000000, 0x080000, CRC(b942ef21) SHA1(2372412d49349894c99d545313c12413c2d1ec86) ) /* Default country is USA, game title is "Sonic Championship" when region */
3162
 
        ROM_LOAD32_WORD("epr-19142.16", 0x000002, 0x080000, CRC(2d54bd76) SHA1(9456fb9a847e01548fc30d36ef161325788653d5) ) /*  is USA or Export; "Sonic the Fighters" when set to Japan */
3163
 
 
3164
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3165
 
        ROM_LOAD32_WORD("mpr-19007.11",    0x0000000, 0x400000, CRC(8b8ff751) SHA1(5343a9a2502052e3587424c984bd48caa7564849) )
3166
 
        ROM_LOAD32_WORD("mpr-19008.12",    0x0000002, 0x400000, CRC(a94654f5) SHA1(39ad2e9431543ea6cbc0307bc39933cf64956a74) )
3167
 
        ROM_LOAD32_WORD("mpr-19005.9",     0x0800000, 0x400000, CRC(98cd1127) SHA1(300c9cdef199f31255bacb95399e9c75be73f817) )
3168
 
        ROM_LOAD32_WORD("mpr-19006.10",    0x0800002, 0x400000, CRC(e79f0a26) SHA1(37a4ff13cfccfda587ca59a9ef08b5914d2c28d4) )
3169
 
        ROM_LOAD32_WORD("epr-19143.7",     0x1000000, 0x080000, CRC(f97176fd) SHA1(8c9d871d4639563f8298a7f93032e07a8f863faa) )
3170
 
        ROM_LOAD32_WORD("epr-19144.8",     0x1000002, 0x080000, CRC(d040202a) SHA1(950ad9174196e776881439545983f91655922a49) )
3171
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
3172
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
3173
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
3174
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
3175
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
3176
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
3177
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
3178
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
3179
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
3180
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
3181
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
3182
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
3183
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
3184
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
3185
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
3186
 
 
3187
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
3188
 
        ROM_LOAD32_WORD("mpr-19015.29", 0x000000, 0x200000, CRC(c74d99e3) SHA1(9914be9925b86af6af670745b5eba3a9e4f24af9) )
3189
 
        ROM_LOAD32_WORD("mpr-19016.30", 0x000002, 0x200000, CRC(746ae931) SHA1(a6f0f589ad174a34493ee24dc0cb509ead3aed70) )
3190
 
 
3191
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
3192
 
        ROM_LOAD32_WORD("mpr-19009.17", 0x000000, 0x400000, CRC(fd410350) SHA1(5af3a90c87ec8a90a8fc58ae469ef23ec6e6213c) )
3193
 
        ROM_LOAD32_WORD("mpr-19012.21", 0x000002, 0x400000, CRC(9bb7b5b6) SHA1(8e13a0bb34e187a340b38d76ab15ff6fe4bae764) )
3194
 
        ROM_LOAD32_WORD("mpr-19010.18", 0x800000, 0x400000, CRC(6fd94187) SHA1(e3318ef0eb0168998e139e527339c7c667c17fb1) )
3195
 
        ROM_LOAD32_WORD("mpr-19013.22", 0x800002, 0x400000, CRC(9e232fe5) SHA1(a6c4b2b3bf8efc6f6263f73d6f4cacf9785010c1) )
3196
 
 
3197
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3198
 
        ROM_LOAD32_WORD("mpr-19019.27", 0x000000, 0x400000, CRC(59121896) SHA1(c29bedb41b14d63c6067ae12ad009deaafca2aa4) )
3199
 
        ROM_LOAD32_WORD("mpr-19017.25", 0x000002, 0x400000, CRC(7b298379) SHA1(52fad61412040c90c7dd300c0fd7aa5b8d5af441) )
3200
 
        ROM_LOAD32_WORD("mpr-19020.28", 0x800000, 0x400000, CRC(9540dba0) SHA1(7b9a75caa8c5b12ba54c6f4f746d80b165ee97ab) )
3201
 
        ROM_LOAD32_WORD("mpr-19018.26", 0x800002, 0x400000, CRC(3b7e7a12) SHA1(9c707a7c2cffc5eff19f9919ddfae7300842fd19) )
3202
 
 
3203
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3204
 
        ROM_LOAD16_WORD_SWAP("epr-19021.31", 0x080000,  0x80000, CRC(0b9f7583) SHA1(21290389cd8bd9e52ed438152cc6cb5793f809d3) )
3205
 
 
3206
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3207
 
        ROM_LOAD("mpr-19022.32", 0x000000, 0x200000, CRC(4381869b) SHA1(43a21609b49926a227558d4938088526acf1fe42) )
3208
 
        ROM_LOAD("mpr-19023.33", 0x200000, 0x200000, CRC(07c67f88) SHA1(696dc85e066fb27c7618e52e0acd0d00451e4589) )
3209
 
        ROM_LOAD("mpr-19024.34", 0x400000, 0x200000, CRC(15ff76d3) SHA1(b431bd85c973aa0a4d6032ac98fb057139f142a2) )
3210
 
        ROM_LOAD("mpr-19025.35", 0x600000, 0x200000, CRC(6ad8fb70) SHA1(b666d31f9be26eb0cdcb71041a3c3c08d5aa41e1) )
3211
 
ROM_END
3212
 
 
3213
 
ROM_START( sfight ) /* Sonic The Fighters, Model 2B */
3214
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3215
 
        ROM_LOAD32_WORD("epr-19001.15", 0x000000, 0x080000, CRC(9b088511) SHA1(20718d985d14f4d2b1b8e982bfbebddd73cdb972) ) /* Default country is Japan, the game title is "Sonic the Fighters" */
3216
 
        ROM_LOAD32_WORD("epr-19002.16", 0x000002, 0x080000, CRC(46f510da) SHA1(edcbf61122db568ccaa4c3106f507087c1740c9b) ) /*  in all regions */
3217
 
 
3218
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3219
 
        ROM_LOAD32_WORD("mpr-19007.11",    0x0000000, 0x400000, CRC(8b8ff751) SHA1(5343a9a2502052e3587424c984bd48caa7564849) )
3220
 
        ROM_LOAD32_WORD("mpr-19008.12",    0x0000002, 0x400000, CRC(a94654f5) SHA1(39ad2e9431543ea6cbc0307bc39933cf64956a74) )
3221
 
        ROM_LOAD32_WORD("mpr-19005.9",     0x0800000, 0x400000, CRC(98cd1127) SHA1(300c9cdef199f31255bacb95399e9c75be73f817) )
3222
 
        ROM_LOAD32_WORD("mpr-19006.10",    0x0800002, 0x400000, CRC(e79f0a26) SHA1(37a4ff13cfccfda587ca59a9ef08b5914d2c28d4) )
3223
 
        ROM_LOAD32_WORD("epr-19003.7",     0x1000000, 0x080000, CRC(63bae5c5) SHA1(cbd55b7b7376ac2f67befaf4c43eef3727ba7b7f) )
3224
 
        ROM_LOAD32_WORD("epr-19004.8",     0x1000002, 0x080000, CRC(c10c9f39) SHA1(cf806501dbfa48d16cb7ed5f39a6146f734ba455) )
3225
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
3226
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
3227
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
3228
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
3229
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
3230
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
3231
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
3232
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
3233
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
3234
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
3235
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
3236
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
3237
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
3238
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
3239
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
3240
 
 
3241
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
3242
 
        ROM_LOAD32_WORD("mpr-19015.29", 0x000000, 0x200000, CRC(c74d99e3) SHA1(9914be9925b86af6af670745b5eba3a9e4f24af9) )
3243
 
        ROM_LOAD32_WORD("mpr-19016.30", 0x000002, 0x200000, CRC(746ae931) SHA1(a6f0f589ad174a34493ee24dc0cb509ead3aed70) )
3244
 
 
3245
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
3246
 
        ROM_LOAD32_WORD("mpr-19009.17", 0x000000, 0x400000, CRC(fd410350) SHA1(5af3a90c87ec8a90a8fc58ae469ef23ec6e6213c) )
3247
 
        ROM_LOAD32_WORD("mpr-19012.21", 0x000002, 0x400000, CRC(9bb7b5b6) SHA1(8e13a0bb34e187a340b38d76ab15ff6fe4bae764) )
3248
 
        ROM_LOAD32_WORD("mpr-19010.18", 0x800000, 0x400000, CRC(6fd94187) SHA1(e3318ef0eb0168998e139e527339c7c667c17fb1) )
3249
 
        ROM_LOAD32_WORD("mpr-19013.22", 0x800002, 0x400000, CRC(9e232fe5) SHA1(a6c4b2b3bf8efc6f6263f73d6f4cacf9785010c1) )
3250
 
 
3251
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3252
 
        ROM_LOAD32_WORD("mpr-19019.27", 0x000000, 0x400000, CRC(59121896) SHA1(c29bedb41b14d63c6067ae12ad009deaafca2aa4) )
3253
 
        ROM_LOAD32_WORD("mpr-19017.25", 0x000002, 0x400000, CRC(7b298379) SHA1(52fad61412040c90c7dd300c0fd7aa5b8d5af441) )
3254
 
        ROM_LOAD32_WORD("mpr-19020.28", 0x800000, 0x400000, CRC(9540dba0) SHA1(7b9a75caa8c5b12ba54c6f4f746d80b165ee97ab) )
3255
 
        ROM_LOAD32_WORD("mpr-19018.26", 0x800002, 0x400000, CRC(3b7e7a12) SHA1(9c707a7c2cffc5eff19f9919ddfae7300842fd19) )
3256
 
 
3257
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3258
 
        ROM_LOAD16_WORD_SWAP("epr-19021.31", 0x080000,  0x80000, CRC(0b9f7583) SHA1(21290389cd8bd9e52ed438152cc6cb5793f809d3) )
3259
 
 
3260
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3261
 
        ROM_LOAD("mpr-19022.32", 0x000000, 0x200000, CRC(4381869b) SHA1(43a21609b49926a227558d4938088526acf1fe42) )
3262
 
        ROM_LOAD("mpr-19023.33", 0x200000, 0x200000, CRC(07c67f88) SHA1(696dc85e066fb27c7618e52e0acd0d00451e4589) )
3263
 
        ROM_LOAD("mpr-19024.34", 0x400000, 0x200000, CRC(15ff76d3) SHA1(b431bd85c973aa0a4d6032ac98fb057139f142a2) )
3264
 
        ROM_LOAD("mpr-19025.35", 0x600000, 0x200000, CRC(6ad8fb70) SHA1(b666d31f9be26eb0cdcb71041a3c3c08d5aa41e1) )
3265
 
ROM_END
3266
 
 
3267
 
ROM_START( stcc ) /* Sega Touring Car Championship, Model 2C - Defaults to Japan, Twin & Default View set to Bird's */
3268
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3269
 
        ROM_LOAD32_WORD("epr-19570.15", 0x000000, 0x080000, CRC(9d6a1965) SHA1(6f1e75d86a37b8579f968b2fb51d32a1a860697f) ) /* Higher rom numbers indicate a newer version */
3270
 
        ROM_LOAD32_WORD("epr-19571.16", 0x000002, 0x080000, CRC(97254d16) SHA1(f9154cd9e954b16f7f45019b4758b1f971190437) )
3271
 
 
3272
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3273
 
        ROM_LOAD32_WORD("mpr-19257.11",  0x000000, 0x400000, CRC(ac28ee24) SHA1(31d360dc435336942f70365d0491a2ccfc24c4c0) )
3274
 
        ROM_LOAD32_WORD("mpr-19258.12",  0x000002, 0x400000, CRC(f5ba7d78) SHA1(9c8304a1f856d1ded869ed2b86de52129510f019) )
3275
 
        ROM_LOAD32_WORD("epr-19270.9",   0x800000, 0x080000, CRC(7bd1d04e) SHA1(0490f3abc97af16e05f0dc9623e8fc635b1d4262) )
3276
 
        ROM_LOAD32_WORD("epr-19271.10",  0x800002, 0x080000, CRC(d2d74f85) SHA1(49e7a1e6478122b4f0e679d7b336fb34044b503b) )
3277
 
        ROM_COPY("user1", 0x800000, 0x900000, 0x100000)
3278
 
        ROM_COPY("user1", 0x800000, 0xa00000, 0x100000)
3279
 
        ROM_COPY("user1", 0x800000, 0xb00000, 0x100000)
3280
 
        ROM_COPY("user1", 0x800000, 0xc00000, 0x100000)
3281
 
        ROM_COPY("user1", 0x800000, 0xd00000, 0x100000)
3282
 
        ROM_COPY("user1", 0x800000, 0xe00000, 0x100000)
3283
 
        ROM_COPY("user1", 0x800000, 0xf00000, 0x100000)
3284
 
 
3285
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
3286
 
        ROM_LOAD32_WORD("mpr-19255.29", 0x000000, 0x200000, CRC(d78bf030) SHA1(e6b3d8422613d22db50cf6c251f9a21356d96653) )
3287
 
        ROM_LOAD32_WORD("mpr-19256.30", 0x000002, 0x200000, CRC(cb2b2d9e) SHA1(86b2b8bb6074352f72eb81e616093a1ba6f5163f) )
3288
 
 
3289
 
        ROM_REGION( 0x900000, "user2", 0 ) // Models
3290
 
        ROM_LOAD32_WORD("mpr-19251.17", 0x000000, 0x400000, CRC(e06ff7ba) SHA1(6d472d03cd3caeb66be929c74ae63c32d305a3db) )
3291
 
        ROM_LOAD32_WORD("mpr-19252.21", 0x000002, 0x400000, CRC(68509993) SHA1(654d5cdf44e7e1e788b26593f418ce76a5c1165a) )
3292
 
        ROM_LOAD32_WORD("epr-19266.18", 0x800000, 0x080000, CRC(41464ee2) SHA1(afbbc0328bd36c34c69f0f54404dfd6a64036417) )
3293
 
        ROM_LOAD32_WORD("epr-19267.22", 0x800002, 0x080000, CRC(780f994d) SHA1(f134482ed0fcfc7b3eea39947da47081301a111a) )
3294
 
 
3295
 
        ROM_REGION( 0x900000, "user3", 0 ) // Textures
3296
 
        ROM_LOAD32_WORD("mpr-19254.27", 0x000000, 0x200000, CRC(1ec49c02) SHA1(a9bdbab7b4b265c9118cf27fd45ca94f4516d5c6) )
3297
 
        ROM_RELOAD     (                0x400000, 0x200000 )
3298
 
        ROM_LOAD32_WORD("mpr-19253.25", 0x000002, 0x200000, CRC(41ba79fb) SHA1(f4d8a4f8278eec6d528bd947b91ebeb5223559d5) )
3299
 
        ROM_RELOAD     (                0x400002, 0x200000 )
3300
 
        ROM_LOAD32_WORD("epr-19269.28", 0x800000, 0x080000, CRC(01881121) SHA1(fe711709e70b3743b2a0318b823d859f233d3ff8) )
3301
 
        ROM_LOAD32_WORD("epr-19268.26", 0x800002, 0x080000, CRC(bc4e081c) SHA1(b89d39ed19a146d1e94e52682f67d2cd23d8df7f) )
3302
 
 
3303
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3304
 
        ROM_LOAD16_WORD_SWAP("epr-19274.31", 0x080000,  0x20000, CRC(2dcc08ae) SHA1(bad26e2c994f2d4db5d9be0e34cf21a8bf5aa7e9) )
3305
 
 
3306
 
        ROM_REGION( 0x20000, "cpu3", 0) // DSB program
3307
 
        ROM_LOAD16_WORD_SWAP("epr-19275.2s", 0x000000,  0x20000, CRC(ee809d3f) SHA1(347080858fbfe9955002f382603a1b86a52d26d5) )
3308
 
 
3309
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
3310
 
        ROM_LOAD16_WORD_SWAP("epr-18643a.7", 0x000000,  0x20000, CRC(b5e048ec) SHA1(8182e05a2ffebd590a936c1359c81e60caa79c2a))
3311
 
 
3312
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3313
 
        ROM_LOAD16_WORD_SWAP("mpr-19259.32", 0x000000, 0x400000, CRC(4d55dbfc) SHA1(6e57e6e6e785b0f14bb5e221a44d518dbde7ad65))
3314
 
        ROM_LOAD16_WORD_SWAP("mpr-19261.34", 0x400000, 0x400000, CRC(b88878ff) SHA1(4bebcfba68b0cc2fa0bcacfaaf2d2e8af3625c5d))
3315
 
 
3316
 
        ROM_REGION( 0x800000, "mpeg", 0 ) // MPEG audio data
3317
 
        ROM_LOAD("mpr-19262.57s", 0x000000, 0x200000, CRC(922aed7a) SHA1(8d6872bdd46eaf2076c10d18c10af8ccbd3b10e8))
3318
 
        ROM_LOAD("mpr-19263.58s", 0x200000, 0x200000, CRC(a256f4cd) SHA1(a17b49050f1ecf1970477b12201cc3b58b31d89c))
3319
 
        ROM_LOAD("mpr-19264.59s", 0x400000, 0x200000, CRC(b6c51d0f) SHA1(9e0969a1e49ec1462f69cd0f0f9ce630d66174ce))
3320
 
        ROM_LOAD("mpr-19265.60s", 0x600000, 0x200000, CRC(7d98700a) SHA1(bedd37314ecab424b5b27030e1e7dc1b596303f3))
3321
 
 
3322
 
        ROM_REGION( 0x10000, "drive", 0 ) // drive board CPU (code is Z80 compatible)
3323
 
        ROM_LOAD( "epr-18261.ic9", 0x000000, 0x010000, CRC(0c7fac58) SHA1(68c1724c41401e28a5123022981c8919fd22656e) )
3324
 
ROM_END
3325
 
 
3326
 
ROM_START( stcca ) /* Sega Touring Car Championship Revision A, Model 2C - Defaults to Japan, Twin & no "Default View" option */
3327
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3328
 
        ROM_LOAD32_WORD("epr-19272a.15", 0x000000, 0x080000, CRC(20cedd05) SHA1(e465967c784de18caaaac77e164796e9779f576a) )
3329
 
        ROM_LOAD32_WORD("epr-19273a.16", 0x000002, 0x080000, CRC(1b0ab4d6) SHA1(142bcd53fa6632fcc866bbda817aa83470111ef1) )
3330
 
 
3331
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3332
 
        ROM_LOAD32_WORD("mpr-19257.11",  0x000000, 0x400000, CRC(ac28ee24) SHA1(31d360dc435336942f70365d0491a2ccfc24c4c0) )
3333
 
        ROM_LOAD32_WORD("mpr-19258.12",  0x000002, 0x400000, CRC(f5ba7d78) SHA1(9c8304a1f856d1ded869ed2b86de52129510f019) )
3334
 
        ROM_LOAD32_WORD("epr-19270.9",   0x800000, 0x080000, CRC(7bd1d04e) SHA1(0490f3abc97af16e05f0dc9623e8fc635b1d4262) )
3335
 
        ROM_LOAD32_WORD("epr-19271.10",  0x800002, 0x080000, CRC(d2d74f85) SHA1(49e7a1e6478122b4f0e679d7b336fb34044b503b) )
3336
 
        ROM_COPY("user1", 0x800000, 0x900000, 0x100000)
3337
 
        ROM_COPY("user1", 0x800000, 0xa00000, 0x100000)
3338
 
        ROM_COPY("user1", 0x800000, 0xb00000, 0x100000)
3339
 
        ROM_COPY("user1", 0x800000, 0xc00000, 0x100000)
3340
 
        ROM_COPY("user1", 0x800000, 0xd00000, 0x100000)
3341
 
        ROM_COPY("user1", 0x800000, 0xe00000, 0x100000)
3342
 
        ROM_COPY("user1", 0x800000, 0xf00000, 0x100000)
3343
 
 
3344
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
3345
 
        ROM_LOAD32_WORD("mpr-19255.29", 0x000000, 0x200000, CRC(d78bf030) SHA1(e6b3d8422613d22db50cf6c251f9a21356d96653) )
3346
 
        ROM_LOAD32_WORD("mpr-19256.30", 0x000002, 0x200000, CRC(cb2b2d9e) SHA1(86b2b8bb6074352f72eb81e616093a1ba6f5163f) )
3347
 
 
3348
 
        ROM_REGION( 0x900000, "user2", 0 ) // Models
3349
 
        ROM_LOAD32_WORD("mpr-19251.17", 0x000000, 0x400000, CRC(e06ff7ba) SHA1(6d472d03cd3caeb66be929c74ae63c32d305a3db) )
3350
 
        ROM_LOAD32_WORD("mpr-19252.21", 0x000002, 0x400000, CRC(68509993) SHA1(654d5cdf44e7e1e788b26593f418ce76a5c1165a) )
3351
 
        ROM_LOAD32_WORD("epr-19266.18", 0x800000, 0x080000, CRC(41464ee2) SHA1(afbbc0328bd36c34c69f0f54404dfd6a64036417) )
3352
 
        ROM_LOAD32_WORD("epr-19267.22", 0x800002, 0x080000, CRC(780f994d) SHA1(f134482ed0fcfc7b3eea39947da47081301a111a) )
3353
 
 
3354
 
        ROM_REGION( 0x900000, "user3", 0 ) // Textures
3355
 
        ROM_LOAD32_WORD("mpr-19254.27", 0x000000, 0x200000, CRC(1ec49c02) SHA1(a9bdbab7b4b265c9118cf27fd45ca94f4516d5c6) )
3356
 
        ROM_RELOAD     (                0x400000, 0x200000 )
3357
 
        ROM_LOAD32_WORD("mpr-19253.25", 0x000002, 0x200000, CRC(41ba79fb) SHA1(f4d8a4f8278eec6d528bd947b91ebeb5223559d5) )
3358
 
        ROM_RELOAD     (                0x400002, 0x200000 )
3359
 
        ROM_LOAD32_WORD("epr-19269.28", 0x800000, 0x080000, CRC(01881121) SHA1(fe711709e70b3743b2a0318b823d859f233d3ff8) )
3360
 
        ROM_LOAD32_WORD("epr-19268.26", 0x800002, 0x080000, CRC(bc4e081c) SHA1(b89d39ed19a146d1e94e52682f67d2cd23d8df7f) )
3361
 
 
3362
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3363
 
        ROM_LOAD16_WORD_SWAP("epr-19274.31", 0x080000,  0x20000, CRC(2dcc08ae) SHA1(bad26e2c994f2d4db5d9be0e34cf21a8bf5aa7e9) )
3364
 
 
3365
 
        ROM_REGION( 0x20000, "cpu3", 0) // DSB program
3366
 
        ROM_LOAD16_WORD_SWAP("epr-19275.2s", 0x000000,  0x20000, CRC(ee809d3f) SHA1(347080858fbfe9955002f382603a1b86a52d26d5) )
3367
 
 
3368
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
3369
 
        ROM_LOAD16_WORD_SWAP("epr-18643a.7", 0x000000,  0x20000, CRC(b5e048ec) SHA1(8182e05a2ffebd590a936c1359c81e60caa79c2a))
3370
 
 
3371
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3372
 
        ROM_LOAD16_WORD_SWAP("mpr-19259.32", 0x000000, 0x400000, CRC(4d55dbfc) SHA1(6e57e6e6e785b0f14bb5e221a44d518dbde7ad65))
3373
 
        ROM_LOAD16_WORD_SWAP("mpr-19261.34", 0x400000, 0x400000, CRC(b88878ff) SHA1(4bebcfba68b0cc2fa0bcacfaaf2d2e8af3625c5d))
3374
 
 
3375
 
        ROM_REGION( 0x800000, "mpeg", 0 ) // MPEG audio data
3376
 
        ROM_LOAD("mpr-19262.57s", 0x000000, 0x200000, CRC(922aed7a) SHA1(8d6872bdd46eaf2076c10d18c10af8ccbd3b10e8))
3377
 
        ROM_LOAD("mpr-19263.58s", 0x200000, 0x200000, CRC(a256f4cd) SHA1(a17b49050f1ecf1970477b12201cc3b58b31d89c))
3378
 
        ROM_LOAD("mpr-19264.59s", 0x400000, 0x200000, CRC(b6c51d0f) SHA1(9e0969a1e49ec1462f69cd0f0f9ce630d66174ce))
3379
 
        ROM_LOAD("mpr-19265.60s", 0x600000, 0x200000, CRC(7d98700a) SHA1(bedd37314ecab424b5b27030e1e7dc1b596303f3))
3380
 
 
3381
 
        ROM_REGION( 0x10000, "drive", 0 ) // drive board CPU (code is Z80 compatible)
3382
 
        ROM_LOAD( "epr-18261.ic9", 0x000000, 0x010000, CRC(0c7fac58) SHA1(68c1724c41401e28a5123022981c8919fd22656e) )
3383
 
ROM_END
3384
 
 
3385
 
ROM_START( stccb ) /* Sega Touring Car Championship Revision unknown, Model 2C - Defaults to Japan, Twin & Default View set to Driver's */
3386
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3387
 
        ROM_LOAD32_WORD("sega-tc.u15", 0x000000, 0x080000, CRC(efdfb625) SHA1(5026e28b9d8267492bd0d9746d64526540a001da) ) /* Actual EPR numbers and revision unknown */
3388
 
        ROM_LOAD32_WORD("sega-tc.u16", 0x000002, 0x080000, CRC(61a357d9) SHA1(3f22f13a3baa46f93cb40e8af9534afaa57ead9c) ) /* Actual EPR numbers and revision unknown */
3389
 
 
3390
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3391
 
        ROM_LOAD32_WORD("mpr-19257.11",  0x000000, 0x400000, CRC(ac28ee24) SHA1(31d360dc435336942f70365d0491a2ccfc24c4c0) )
3392
 
        ROM_LOAD32_WORD("mpr-19258.12",  0x000002, 0x400000, CRC(f5ba7d78) SHA1(9c8304a1f856d1ded869ed2b86de52129510f019) )
3393
 
        ROM_LOAD32_WORD("epr-19270.9",   0x800000, 0x080000, CRC(7bd1d04e) SHA1(0490f3abc97af16e05f0dc9623e8fc635b1d4262) )
3394
 
        ROM_LOAD32_WORD("epr-19271.10",  0x800002, 0x080000, CRC(d2d74f85) SHA1(49e7a1e6478122b4f0e679d7b336fb34044b503b) )
3395
 
        ROM_COPY("user1", 0x800000, 0x900000, 0x100000)
3396
 
        ROM_COPY("user1", 0x800000, 0xa00000, 0x100000)
3397
 
        ROM_COPY("user1", 0x800000, 0xb00000, 0x100000)
3398
 
        ROM_COPY("user1", 0x800000, 0xc00000, 0x100000)
3399
 
        ROM_COPY("user1", 0x800000, 0xd00000, 0x100000)
3400
 
        ROM_COPY("user1", 0x800000, 0xe00000, 0x100000)
3401
 
        ROM_COPY("user1", 0x800000, 0xf00000, 0x100000)
3402
 
 
3403
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
3404
 
        ROM_LOAD32_WORD("mpr-19255.29", 0x000000, 0x200000, CRC(d78bf030) SHA1(e6b3d8422613d22db50cf6c251f9a21356d96653) )
3405
 
        ROM_LOAD32_WORD("mpr-19256.30", 0x000002, 0x200000, CRC(cb2b2d9e) SHA1(86b2b8bb6074352f72eb81e616093a1ba6f5163f) )
3406
 
 
3407
 
        ROM_REGION( 0x900000, "user2", 0 ) // Models
3408
 
        ROM_LOAD32_WORD("mpr-19251.17", 0x000000, 0x400000, CRC(e06ff7ba) SHA1(6d472d03cd3caeb66be929c74ae63c32d305a3db) )
3409
 
        ROM_LOAD32_WORD("mpr-19252.21", 0x000002, 0x400000, CRC(68509993) SHA1(654d5cdf44e7e1e788b26593f418ce76a5c1165a) )
3410
 
        ROM_LOAD32_WORD("epr-19266.18", 0x800000, 0x080000, CRC(41464ee2) SHA1(afbbc0328bd36c34c69f0f54404dfd6a64036417) )
3411
 
        ROM_LOAD32_WORD("epr-19267.22", 0x800002, 0x080000, CRC(780f994d) SHA1(f134482ed0fcfc7b3eea39947da47081301a111a) )
3412
 
 
3413
 
        ROM_REGION( 0x900000, "user3", 0 ) // Textures
3414
 
        ROM_LOAD32_WORD("mpr-19254.27", 0x000000, 0x200000, CRC(1ec49c02) SHA1(a9bdbab7b4b265c9118cf27fd45ca94f4516d5c6) )
3415
 
        ROM_RELOAD     (                0x400000, 0x200000 )
3416
 
        ROM_LOAD32_WORD("mpr-19253.25", 0x000002, 0x200000, CRC(41ba79fb) SHA1(f4d8a4f8278eec6d528bd947b91ebeb5223559d5) )
3417
 
        ROM_RELOAD     (                0x400002, 0x200000 )
3418
 
        ROM_LOAD32_WORD("epr-19269.28", 0x800000, 0x080000, CRC(01881121) SHA1(fe711709e70b3743b2a0318b823d859f233d3ff8) )
3419
 
        ROM_LOAD32_WORD("epr-19268.26", 0x800002, 0x080000, CRC(bc4e081c) SHA1(b89d39ed19a146d1e94e52682f67d2cd23d8df7f) )
3420
 
 
3421
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3422
 
        ROM_LOAD16_WORD_SWAP("epr-19274.31", 0x080000,  0x20000, CRC(2dcc08ae) SHA1(bad26e2c994f2d4db5d9be0e34cf21a8bf5aa7e9) )
3423
 
 
3424
 
        ROM_REGION( 0x20000, "cpu3", 0) // DSB program
3425
 
        ROM_LOAD16_WORD_SWAP("epr-19275.2s", 0x000000,  0x20000, CRC(ee809d3f) SHA1(347080858fbfe9955002f382603a1b86a52d26d5) )
3426
 
 
3427
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
3428
 
        ROM_LOAD16_WORD_SWAP("epr-18643a.7", 0x000000,  0x20000, CRC(b5e048ec) SHA1(8182e05a2ffebd590a936c1359c81e60caa79c2a))
3429
 
 
3430
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3431
 
        ROM_LOAD16_WORD_SWAP("mpr-19259.32", 0x000000, 0x400000, CRC(4d55dbfc) SHA1(6e57e6e6e785b0f14bb5e221a44d518dbde7ad65))
3432
 
        ROM_LOAD16_WORD_SWAP("mpr-19261.34", 0x400000, 0x400000, CRC(b88878ff) SHA1(4bebcfba68b0cc2fa0bcacfaaf2d2e8af3625c5d))
3433
 
 
3434
 
        ROM_REGION( 0x800000, "mpeg", 0 ) // MPEG audio data
3435
 
        ROM_LOAD("mpr-19262.57s", 0x000000, 0x200000, CRC(922aed7a) SHA1(8d6872bdd46eaf2076c10d18c10af8ccbd3b10e8))
3436
 
        ROM_LOAD("mpr-19263.58s", 0x200000, 0x200000, CRC(a256f4cd) SHA1(a17b49050f1ecf1970477b12201cc3b58b31d89c))
3437
 
        ROM_LOAD("mpr-19264.59s", 0x400000, 0x200000, CRC(b6c51d0f) SHA1(9e0969a1e49ec1462f69cd0f0f9ce630d66174ce))
3438
 
        ROM_LOAD("mpr-19265.60s", 0x600000, 0x200000, CRC(7d98700a) SHA1(bedd37314ecab424b5b27030e1e7dc1b596303f3))
3439
 
 
3440
 
        ROM_REGION( 0x10000, "drive", 0 ) // drive board CPU (code is Z80 compatible)
3441
 
        ROM_LOAD( "epr-18261.ic9", 0x000000, 0x010000, CRC(0c7fac58) SHA1(68c1724c41401e28a5123022981c8919fd22656e) )
3442
 
ROM_END
3443
 
 
3444
 
ROM_START( skisuprg ) /* Sega Ski Super G, Model 2C */
3445
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3446
 
        ROM_LOAD32_WORD( "epr-19489.15", 0x000000, 0x080000, CRC(1df948a7) SHA1(a38faeb97c65b379ad05f7311b55217118c8d2be) )
3447
 
        ROM_LOAD32_WORD( "epr-19490.16", 0x000002, 0x080000, CRC(e6fc24d3) SHA1(1ac9172cf0b4d6a3488483ffa490a4ca5d410927) )
3448
 
        ROM_LOAD32_WORD( "epr-19551.13", 0x100000, 0x080000, CRC(3ee8f0d5) SHA1(23f45858559776a70b3b57f4cb2840f44e6a6531) )
3449
 
        ROM_LOAD32_WORD( "epr-19552.14", 0x100002, 0x080000, CRC(baa2e49a) SHA1(b234f3b65e8fabfb6ec7ca62dd9a1d2935b2e95a) )
3450
 
 
3451
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3452
 
        ROM_LOAD32_WORD( "mpr-19494.11", 0x000000, 0x400000, CRC(f19cdb5c) SHA1(bdbb7d9e91a7742ff5a908b6244adbed291e5e7f) )
3453
 
        ROM_LOAD32_WORD( "mpr-19495.12", 0x000002, 0x400000, CRC(d42e5ef2) SHA1(21ca5e7e543595a4691aacdbcdd2af21d464d939) )
3454
 
        ROM_LOAD32_WORD( "mpr-19492.9",  0x800000, 0x400000, CRC(4805318f) SHA1(dbd1359817933313c6d74d3a1450682e8ce5857a) )
3455
 
        ROM_LOAD32_WORD( "mpr-19493.10", 0x800002, 0x400000, CRC(39daa909) SHA1(e29e50c7fc39bd4945f993ceaa100358054efc5a) )
3456
 
 
3457
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
3458
 
        ROM_LOAD32_WORD( "mpr-19502.29", 0x000000, 0x400000, CRC(2212d8d6) SHA1(3b8a4da2dc00a1eac41b48cbdc322ea1c31b8b29) )
3459
 
        ROM_LOAD32_WORD( "mpr-19503.30", 0x000002, 0x400000, CRC(3c9cfc73) SHA1(2213485a00cef0bcef11b67f00027c4159c5e2f5) )
3460
 
 
3461
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3462
 
        ROM_LOAD32_WORD( "mpr-19496.17", 0x000000, 0x400000, CRC(0e9aef4e) SHA1(d4b511b90c0a6e27d6097cb25ff005f68d5fa83c) )
3463
 
        ROM_LOAD32_WORD( "mpr-19497.21", 0x000002, 0x400000, CRC(5397efe9) SHA1(4b20bab36462f9506fa2601c2545051ca49de7f5) )
3464
 
        ROM_LOAD32_WORD( "mpr-19498.18", 0x800000, 0x400000, CRC(32e5ae60) SHA1(b8a1cc117875c3919a78eedb60a06926288d9b95) )
3465
 
        ROM_LOAD32_WORD( "mpr-19499.22", 0x800002, 0x400000, CRC(2b9f5b48) SHA1(40f3f2844244c3f1c8792aa262872243ad20fd69) )
3466
 
 
3467
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3468
 
        ROM_LOAD32_WORD( "mpr-19501.27", 0x000000, 0x400000, CRC(66d7b02e) SHA1(cede0dc5c8d9fbfa8de01fe864b3cc101abf67d7) )
3469
 
        ROM_LOAD32_WORD( "mpr-19500.25", 0x000002, 0x400000, CRC(905f5798) SHA1(31f104e3022b5bc7ed7c667eb801a57949a06c93) )
3470
 
 
3471
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3472
 
        ROM_LOAD16_WORD_SWAP( "epr-19491.31", 0x000000, 0x080000, CRC(1c9b15fd) SHA1(045244a4eebc45f149aecf47f090cede1813477b) )
3473
 
 
3474
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3475
 
        ROM_LOAD( "mpr-19504.32", 0x000000, 0x400000, CRC(9419ec08) SHA1(d05d9ceb7fd09fa8991c0df4d1c57eb621460e30) )
3476
 
        ROM_LOAD( "mpr-19505.34", 0x400000, 0x400000, CRC(eba7f41d) SHA1(f6e521bedf298808a768f6fdcb0b60b320a66d04) )
3477
 
ROM_END
3478
 
 
3479
 
ROM_START( segawski ) /* Sega Water Ski Revision A, Model 2C */
3480
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3481
 
        ROM_LOAD32_WORD("epr-19963a.15", 0x000000, 0x080000, CRC(89c9cb0d) SHA1(7f1f600222447effb28cf2d56193ea9f45fd0646) )
3482
 
        ROM_LOAD32_WORD("epr-19964a.16", 0x000002, 0x080000, CRC(c382cefe) SHA1(c0ccee4eb19d9626dee0f77f08060f1d9708b39d) )
3483
 
 
3484
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3485
 
        ROM_LOAD32_WORD("mpr-19980.11", 0x0000000, 0x400000, CRC(709804f2) SHA1(6633eeb2bc0ddd5eb5994cb7cc39ed4ab2094a7e) )
3486
 
        ROM_LOAD32_WORD("mpr-19981.12", 0x0000002, 0x400000, CRC(a1e8ec09) SHA1(53abaf71e85f874d28a79c8775b1f0ac919fbe22) )
3487
 
        ROM_LOAD32_WORD("mpr-19982.9",  0x0800000, 0x400000, CRC(41c398bb) SHA1(e6652111a494165c93d5e9dc7d1c3df46f1a8961) )
3488
 
        ROM_LOAD32_WORD("mpr-19983.10", 0x0800002, 0x400000, CRC(e210dea2) SHA1(a32010648046738f64cbc7e1a074b9443bbde865) )
3489
 
        ROM_LOAD32_WORD("mpr-19984.7",  0x1000000, 0x400000, CRC(14b967d1) SHA1(8e0fd13f5838218224ce162a55558b75dcda4cbf) )
3490
 
        ROM_LOAD32_WORD("mpr-19985.8",  0x1000002, 0x400000, CRC(57827677) SHA1(0d764ec9e136e4d027aefb10e9f025aa2e081573) )
3491
 
        ROM_LOAD32_WORD("epr-19961.5",  0x1800000, 0x080000, CRC(cc34ecaf) SHA1(8e540a429826d40acef5a34a0b6b1b89e059961b) )
3492
 
        ROM_LOAD32_WORD("epr-19962.6",  0x1800002, 0x080000, CRC(e8a30e5e) SHA1(2d7290186aaca28f3aaf6656b090e1cbe509aa48) )
3493
 
 
3494
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
3495
 
        ROM_LOAD32_WORD("mpr-19986.29", 0x0000000, 0x400000, CRC(4b8e26f8) SHA1(859e3788c75599295a8b57ed7852f2cbb6a2a738) )
3496
 
        ROM_LOAD32_WORD("mpr-19987.30", 0x0000002, 0x400000, CRC(8d5b9d38) SHA1(35f41c474af3754152aecefe81e912120823e0ff) )
3497
 
 
3498
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3499
 
        ROM_LOAD32_WORD("mpr-19972.17", 0x0000000, 0x400000, CRC(493c0f8f) SHA1(c68f662d53fbcec3d2dbd9ebdfd37cbf1ff46408) )
3500
 
        ROM_LOAD32_WORD("mpr-19973.21", 0x0000002, 0x400000, CRC(01b6f8e1) SHA1(be1f1017ff5f43218de2d99090e4e7db64f7a483) )
3501
 
        ROM_LOAD32_WORD("mpr-19974.18", 0x0800000, 0x400000, CRC(2bd947d3) SHA1(7f16e668db5a4673cd909bdfa1b9dc665827b392) )
3502
 
        ROM_LOAD32_WORD("mpr-19975.22", 0x0800002, 0x400000, CRC(07e6b699) SHA1(35bbea4cd42ab39f976cd2ec964c32d5d3982c4a) )
3503
 
        ROM_LOAD32_WORD("mpr-19976.19", 0x1000000, 0x400000, CRC(f9496566) SHA1(e6dee764301c0ed34e5134a5232898bb42563c20) )
3504
 
        ROM_LOAD32_WORD("mpr-19977.23", 0x1000002, 0x400000, CRC(b3dbf54b) SHA1(d61448394b7b2036e27bdbf7a062d63f076db9da) )
3505
 
        ROM_LOAD32_WORD("mpr-19978.20", 0x1800000, 0x400000, CRC(c80f4ed7) SHA1(e7ea6dfb57ab1fe924a80c244b8acfe4aad2b76d) )
3506
 
        ROM_LOAD32_WORD("mpr-19979.24", 0x1800002, 0x400000, CRC(1c0db4d2) SHA1(65a81f4503c6b9c26650befd183db821545c53e2) )
3507
 
 
3508
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3509
 
        ROM_LOAD32_WORD("mpr-19969.27", 0x0000000, 0x400000, CRC(c0c33d39) SHA1(f61a6266556d5687cd03031065baa2dd73112666) )
3510
 
        ROM_LOAD32_WORD("mpr-19968.25", 0x0000002, 0x400000, CRC(b8d2f04f) SHA1(f0f4d2dd06cdf745ed07fe428eaa3e3ad030bff6) )
3511
 
        ROM_LOAD32_WORD("mpr-19971.28", 0x0800000, 0x400000, CRC(c8708096) SHA1(c27e0a90dc1183b0cf7f32e324afa6c126f61d37) )
3512
 
        ROM_LOAD32_WORD("mpr-19970.26", 0x0800002, 0x400000, CRC(c59d8d36) SHA1(24232390f0cac5ffbb17a0093a602363c686fbf8) )
3513
 
 
3514
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3515
 
        ROM_LOAD16_WORD_SWAP("epr-19967.31", 0x000000, 0x080000, CRC(c6b8ef3f) SHA1(9f86d6e365a5535d354ff6b0614f3a19c0790d0f) )
3516
 
 
3517
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3518
 
        ROM_LOAD("mpr-19988.32", 0x000000, 0x400000, CRC(303732fb) SHA1(63efbd9f67b38fddeeed25de660514867e03486a) )
3519
 
        ROM_LOAD("mpr-19989.34", 0x400000, 0x400000, CRC(8074a4b3) SHA1(98dc1d122ffb9b5c52994dea2b5d8c4f004a5f8e) )
3520
 
ROM_END
3521
 
 
3522
 
ROM_START( hotd ) /* House of the Dead, Model 2C */
3523
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3524
 
        ROM_LOAD32_WORD("epr-19696.15", 0x000000, 0x080000, CRC(03da5623) SHA1(be0bd34a9216375c7204445f084f6c74c4d3b0c8) )
3525
 
        ROM_LOAD32_WORD("epr-19697.16", 0x000002, 0x080000, CRC(a9722d87) SHA1(0b14f9a81272f79a5b294bc024711042c5fb2637) )
3526
 
        ROM_LOAD32_WORD("epr-19694.13", 0x100000, 0x080000, CRC(e85ca1a3) SHA1(3d688be98f78fe40c2af1e91df6decd500400ae9) )
3527
 
        ROM_LOAD32_WORD("epr-19695.14", 0x100002, 0x080000, CRC(cd52b461) SHA1(bc96ab2a4ba7f30c0b89814acc8931c8bf800a82) )
3528
 
 
3529
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3530
 
        ROM_LOAD32_WORD("mpr-19704.11",    0x0000000, 0x400000, CRC(aa80dbb0) SHA1(24e63f4392847f288971469cd10448536eb435d4) )
3531
 
        ROM_LOAD32_WORD("mpr-19705.12",    0x0000002, 0x400000, CRC(f906843b) SHA1(bee4f43b3ad15d93a2f9f07b873c9cf5d228e2f9) )
3532
 
        ROM_LOAD32_WORD("mpr-19702.9",     0x0800000, 0x400000, CRC(fc8aa3b7) SHA1(b64afb17d9c97277d8c4f20811f14f65a61cbb56) )
3533
 
        ROM_LOAD32_WORD("mpr-19703.10",    0x0800002, 0x400000, CRC(208d993d) SHA1(e5c45ea5621f99661a87ffe88e24764d2bbcb51e) )
3534
 
        ROM_LOAD32_WORD("mpr-19700.7",     0x1000000, 0x400000, CRC(0558cfd3) SHA1(94440839d3325176c2d03f39a78949d0ef040bba) )
3535
 
        ROM_LOAD32_WORD("mpr-19701.8",     0x1000002, 0x400000, CRC(224a8929) SHA1(933770546d46abca400e7f524eff2ae89241e56d) )
3536
 
        ROM_LOAD32_WORD("epr-19698.5",     0x1800000, 0x080000, CRC(e7a7b6ea) SHA1(77cb53f8730fdb55080b70910ab8c750d79acb02) )
3537
 
        ROM_LOAD32_WORD("epr-19699.6",     0x1800002, 0x080000, CRC(8160b3d9) SHA1(9dab483c60624dddba8085e94a4325739592ec17) )
3538
 
        ROM_COPY( "user1", 0x1800000, 0x1900000, 0x100000 )
3539
 
        ROM_COPY( "user1", 0x1800000, 0x1a00000, 0x100000 )
3540
 
        ROM_COPY( "user1", 0x1800000, 0x1b00000, 0x100000 )
3541
 
        ROM_COPY( "user1", 0x1800000, 0x1c00000, 0x100000 )
3542
 
        ROM_COPY( "user1", 0x1800000, 0x1d00000, 0x100000 )
3543
 
        ROM_COPY( "user1", 0x1800000, 0x1e00000, 0x100000 )
3544
 
        ROM_COPY( "user1", 0x1800000, 0x1f00000, 0x100000 )
3545
 
 
3546
 
 
3547
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
3548
 
        ROM_LOAD32_WORD("epr-19707.29",  0x000000, 0x080000, CRC(384fd133) SHA1(6d060378d0f801b04d12e7ee874f2fa0572992d9) )
3549
 
        ROM_LOAD32_WORD("epr-19706.30",  0x000002, 0x080000, CRC(1277531c) SHA1(08d3e733ba9989fcd32290634171c73f26ab6e2b) )
3550
 
 
3551
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3552
 
        ROM_LOAD32_WORD("mpr-19715.17", 0x0000000, 0x400000, CRC(3ff7dda7) SHA1(0a61b091bb0bc659f0cbca8ad401d0925a1dc2ea) )
3553
 
        ROM_LOAD32_WORD("mpr-19711.21", 0x0000002, 0x400000, CRC(080d13f1) SHA1(4167428a2a903aea2c14631ccf924afb81338b89) )
3554
 
        ROM_LOAD32_WORD("mpr-19714.18", 0x0800000, 0x400000, CRC(3e55ab49) SHA1(70b4c1627db80e6734112c02265495e2b4a53278) )
3555
 
        ROM_LOAD32_WORD("mpr-19710.22", 0x0800002, 0x400000, CRC(80df1036) SHA1(3cc59bb4910aa5382e95762f63325c06b763bd23) )
3556
 
        ROM_LOAD32_WORD("mpr-19713.19", 0x1000000, 0x400000, CRC(4d092cd3) SHA1(b6d0be283c25235249186751c7f025a7c38d2f36) )
3557
 
        ROM_LOAD32_WORD("mpr-19709.23", 0x1000002, 0x400000, CRC(d08937bf) SHA1(c92571e35960f27dc8b0b059f12167026d0666d1) )
3558
 
        ROM_LOAD32_WORD("mpr-19712.20", 0x1800000, 0x400000, CRC(41577943) SHA1(25a0d921c8662043c5860dc7a226d4895ff9fff6) )
3559
 
        ROM_LOAD32_WORD("mpr-19708.24", 0x1800002, 0x400000, CRC(5cb790f2) SHA1(d3cae450186bc62fd746b14d6a05cb397efcfe40) )
3560
 
 
3561
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3562
 
        ROM_LOAD32_WORD("mpr-19718.27", 0x0000000, 0x400000, CRC(a9de5924) SHA1(3ebac2aeb1467939337c9a5c87ad9c293560dae2) )
3563
 
        ROM_LOAD32_WORD("mpr-19716.25", 0x0000002, 0x400000, CRC(45c7dcce) SHA1(f602cabd879c69afee544848feafb9fb9f5d51e2) )
3564
 
        ROM_LOAD32_WORD("mpr-19719.28", 0x0800000, 0x400000, CRC(838f8343) SHA1(fe6622b5917f9a99c097fd60d9446ac6b481fa75) )
3565
 
        ROM_LOAD32_WORD("mpr-19717.26", 0x0800002, 0x400000, CRC(393e440b) SHA1(927ac9cad22f87b339cc86043678470ff139ce1f) )
3566
 
 
3567
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3568
 
        ROM_LOAD16_WORD_SWAP("epr-19720.31", 0x080000,  0x80000, CRC(b367d21d) SHA1(1edaed489a3518ddad85728e416319f940ea02bb) )
3569
 
 
3570
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3571
 
        ROM_LOAD("mpr-19721.32", 0x000000, 0x400000, CRC(f5d8fa9a) SHA1(6836973a687c59dd80f8e6c30d33155e306be199) )
3572
 
        ROM_LOAD("mpr-19722.34", 0x400000, 0x400000, CRC(a56fa539) SHA1(405a892bc368ba862ba71bda7525b421d6973c0e) )
3573
 
ROM_END
3574
 
 
3575
 
ROM_START( lastbrnx ) /* Last Bronx Revision A (Export), Model 2B */
3576
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3577
 
        ROM_LOAD32_WORD("epr-19061a.15", 0x000000, 0x080000, CRC(c0aebab2) SHA1(fa63081b0aa6f02c3d197485865ee38e9c78b43d) )
3578
 
        ROM_LOAD32_WORD("epr-19062a.16", 0x000002, 0x080000, CRC(cdf597e8) SHA1(a85ca36a537ba21d11ef3cfdf914c2c93ac5e68f) )
3579
 
 
3580
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3581
 
        ROM_LOAD32_WORD("mpr-19050.11",  0x000000, 0x400000, CRC(e6af2b61) SHA1(abdf7aa4c594f0916d4335c70fdd67dc6b1f4630) )
3582
 
        ROM_LOAD32_WORD("mpr-19051.12",  0x000002, 0x400000, CRC(14b88961) SHA1(bec22f657c6d939c095b99ca9c6eb44b9683fd72) )
3583
 
        ROM_LOAD32_WORD("mpr-19048.9",   0x800000, 0x400000, CRC(02180215) SHA1(cc5f8e61fee07aa4fc5bfe2d011088ee523c77c2) )
3584
 
        ROM_LOAD32_WORD("mpr-19049.10",  0x800002, 0x400000, CRC(db7eecd6) SHA1(5955885ad2bfd69d7a2c4e1d1df907aca41fbdd0) )
3585
 
 
3586
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
3587
 
        ROM_LOAD32_WORD("mpr-19052.17",  0x000000, 0x400000, CRC(d7f27216) SHA1(b393af96522306dc2e055aea1e837979f41940d4) )
3588
 
        ROM_LOAD32_WORD("mpr-19053.21",  0x000002, 0x400000, CRC(1f328465) SHA1(950a92209b7c24f66db62c31627a1f1d52721f1e) )
3589
 
 
3590
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
3591
 
        ROM_LOAD32_WORD("mpr-19055.27",  0x000000, 0x200000, CRC(85a57d49) SHA1(99c49fe135dc46fa861337b5bac654ae8478778a) )
3592
 
        ROM_LOAD32_WORD("mpr-19054.25",  0x000002, 0x200000, CRC(05366277) SHA1(f618e2b9b26a1f7eccebfc8f8e17ef8ad9029be8) )
3593
 
 
3594
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
3595
 
 
3596
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3597
 
        ROM_LOAD16_WORD_SWAP("mpr-19056.31", 0x080000,  0x80000, CRC(22a22918) SHA1(baa039cd86650b6cd81f295916c4d256e60cb29c) )
3598
 
 
3599
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3600
 
        ROM_LOAD("mpr-19057.32", 0x0000000, 0x400000, CRC(64809438) SHA1(aa008f83e1eff0daafe01944248ebae6054cee9f) )
3601
 
        ROM_LOAD("mpr-19058.34", 0x0400000, 0x400000, CRC(e237c11c) SHA1(7c89cba757bd58747ed0d633b2fe7ef559fcd15e) )
3602
 
ROM_END
3603
 
 
3604
 
ROM_START( lastbrnxj ) /* Last Bronx Revision A (Japan), Model 2B */
3605
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3606
 
        ROM_LOAD32_WORD("epr-19046a.15", 0x000000, 0x080000, CRC(75be7b7a) SHA1(e57320ac3abac54b7b5278596979746ed1856188) )
3607
 
        ROM_LOAD32_WORD("epr-19047a.16", 0x000002, 0x080000, CRC(1f5541e2) SHA1(87214f285a7bf67fbd824f2190cb9b2daf408193) )
3608
 
 
3609
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3610
 
        ROM_LOAD32_WORD("mpr-19050.11",  0x000000, 0x400000, CRC(e6af2b61) SHA1(abdf7aa4c594f0916d4335c70fdd67dc6b1f4630) )
3611
 
        ROM_LOAD32_WORD("mpr-19051.12",  0x000002, 0x400000, CRC(14b88961) SHA1(bec22f657c6d939c095b99ca9c6eb44b9683fd72) )
3612
 
        ROM_LOAD32_WORD("mpr-19048.9",   0x800000, 0x400000, CRC(02180215) SHA1(cc5f8e61fee07aa4fc5bfe2d011088ee523c77c2) )
3613
 
        ROM_LOAD32_WORD("mpr-19049.10",  0x800002, 0x400000, CRC(db7eecd6) SHA1(5955885ad2bfd69d7a2c4e1d1df907aca41fbdd0) )
3614
 
 
3615
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
3616
 
        ROM_LOAD32_WORD("mpr-19052.17",  0x000000, 0x400000, CRC(d7f27216) SHA1(b393af96522306dc2e055aea1e837979f41940d4) )
3617
 
        ROM_LOAD32_WORD("mpr-19053.21",  0x000002, 0x400000, CRC(1f328465) SHA1(950a92209b7c24f66db62c31627a1f1d52721f1e) )
3618
 
 
3619
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
3620
 
        ROM_LOAD32_WORD("mpr-19055.27",  0x000000, 0x200000, CRC(85a57d49) SHA1(99c49fe135dc46fa861337b5bac654ae8478778a) )
3621
 
        ROM_LOAD32_WORD("mpr-19054.25",  0x000002, 0x200000, CRC(05366277) SHA1(f618e2b9b26a1f7eccebfc8f8e17ef8ad9029be8) )
3622
 
 
3623
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
3624
 
 
3625
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3626
 
        ROM_LOAD16_WORD_SWAP("mpr-19056.31", 0x080000,  0x80000, CRC(22a22918) SHA1(baa039cd86650b6cd81f295916c4d256e60cb29c) )
3627
 
 
3628
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3629
 
        ROM_LOAD("mpr-19057.32", 0x0000000, 0x400000, CRC(64809438) SHA1(aa008f83e1eff0daafe01944248ebae6054cee9f) )
3630
 
        ROM_LOAD("mpr-19058.34", 0x0400000, 0x400000, CRC(e237c11c) SHA1(7c89cba757bd58747ed0d633b2fe7ef559fcd15e) )
3631
 
ROM_END
3632
 
 
3633
 
ROM_START( pltkidsa ) /* Pilot Kids, Model 2A */
3634
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3635
 
        ROM_LOAD32_WORD("epr-21281.pr0", 0x000000, 0x080000, CRC(293ead5d) SHA1(5a6295e543d7e68387de0ca4d88e930a0d8ed25c) )
3636
 
        ROM_LOAD32_WORD("epr-21282.pr1", 0x000002, 0x080000, CRC(ed0e7b9e) SHA1(15f3fab6ac2dd40f32bda55503378ab14f998707) )
3637
 
 
3638
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3639
 
        ROM_LOAD32_WORD("mpr-21262.da0", 0x000000, 0x400000, CRC(aa71353e) SHA1(6eb5e8284734f01beec1dbbee049b6b7672e2504) )
3640
 
        ROM_LOAD32_WORD("mpr-21263.da1", 0x000002, 0x400000, CRC(d55d4509) SHA1(641db6ec3e9266f8265a4b541bcd8c2f7d164cc3) )
3641
 
 
3642
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
3643
 
 
3644
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3645
 
        ROM_LOAD32_WORD("mpr-21264.tp0", 0x0000000, 0x400000, CRC(6b35204d) SHA1(3a07701b140eb3088fad29c8b2d9c1e1e7ef9471) )
3646
 
        ROM_LOAD32_WORD("mpr-21268.tp1", 0x0000002, 0x400000, CRC(16ce2147) SHA1(39cba6b4f1130a3da7e2d226c948425eec34090e) )
3647
 
        ROM_LOAD32_WORD("mpr-21265.tp2", 0x0800000, 0x400000, CRC(f061e639) SHA1(a89b7a84192fcc1e9e0fe9adf7446f7b275d5a03) )
3648
 
        ROM_LOAD32_WORD("mpr-21269.tp3", 0x0800002, 0x400000, CRC(8c06255e) SHA1(9a8c302528e590be1b56ed301da30abf21f0be2e) )
3649
 
        ROM_LOAD32_WORD("mpr-21266.tp4", 0x1000000, 0x400000, CRC(f9c32021) SHA1(b21f8bf281bf2cfcdc7e5eb798cd633e905ab8b8) )
3650
 
        ROM_LOAD32_WORD("mpr-21270.tp5", 0x1000002, 0x400000, CRC(b61f81c3) SHA1(7733f44e791974070df139958eb97e0585ee50f8) )
3651
 
        ROM_LOAD32_WORD("mpr-21267.tp6", 0x1800000, 0x400000, CRC(c42cc938) SHA1(6153f52add63295122e1215dd07d648d030a7306) )
3652
 
        ROM_LOAD32_WORD("mpr-21271.tp7", 0x1800002, 0x400000, CRC(a5325c75) SHA1(d52836760475c7d9fbb4e5b8147ac416ffd1fcd9) )
3653
 
 
3654
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3655
 
        ROM_LOAD32_WORD("mpr-21274.tx1", 0x0000000, 0x400000, CRC(f045e3d1) SHA1(548909d2da22ed98594e0ab6ecffebec4fca2f93) )
3656
 
        ROM_LOAD32_WORD("mpr-21272.tx0", 0x0000002, 0x400000, CRC(dd605c21) SHA1(8363a082a666ceeb84df84929ff3fbaff49af821) )
3657
 
        ROM_LOAD32_WORD("mpr-21275.tx3", 0x0800000, 0x400000, CRC(c4870b7c) SHA1(feb8a34acb620a36ed5aea92d22622a76d7e1b29) )
3658
 
        ROM_LOAD32_WORD("mpr-21273.tx2", 0x0800002, 0x400000, CRC(722ec8a2) SHA1(1a1dc92488cde6284a96acce80e47a9cceccde76) )
3659
 
 
3660
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3661
 
        ROM_LOAD16_WORD_SWAP("epr-21276.sd0", 0x080000, 0x080000, CRC(8f415bc3) SHA1(4e8e1ccbe025deca42fcf2582f3da46fa34780b7) )
3662
 
 
3663
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3664
 
        ROM_LOAD("mpr-21277.sd1", 0x0000000, 0x200000, CRC(bfba0ff6) SHA1(11081b3eabc33a42ecfc0b2b535ce16510496144) )
3665
 
        ROM_LOAD("mpr-21278.sd2", 0x0200000, 0x200000, CRC(27e18e08) SHA1(254c0ad4d6bd572ff0efc3ea80489e73716a31a7) )
3666
 
        ROM_LOAD("mpr-21279.sd3", 0x0400000, 0x200000, CRC(3a8dcf68) SHA1(312496b45b699051c8b4dd0e5d94e73fe5f3ad8d) )
3667
 
        ROM_LOAD("mpr-21280.sd4", 0x0600000, 0x200000, CRC(aa548124) SHA1(a94adfe16b5c3236746451c181ccd3e1c27432f4) )
3668
 
 
3669
 
        MODEL2_CPU_BOARD
3670
 
        MODEL2A_VID_BOARD
3671
 
ROM_END
3672
 
 
3673
 
ROM_START( pltkids ) /* Pilot Kids Revision A, Model 2B */
3674
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3675
 
        ROM_LOAD32_WORD("epr-21285a.15",  0x000000, 0x080000, CRC(bdde5b41) SHA1(14c3f5031f85c6756c00bc67765a967ebaf7eb7f) )
3676
 
        ROM_LOAD32_WORD("epr-21286a.16",  0x000002, 0x080000, CRC(c8092e0e) SHA1(01030621efa9c97eb43f4a5e3e029ec99a2363c5) )
3677
 
 
3678
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3679
 
        ROM_LOAD32_WORD("mpr-21262.da0", 0x000000, 0x400000, CRC(aa71353e) SHA1(6eb5e8284734f01beec1dbbee049b6b7672e2504) )
3680
 
        ROM_LOAD32_WORD("mpr-21263.da1", 0x000002, 0x400000, CRC(d55d4509) SHA1(641db6ec3e9266f8265a4b541bcd8c2f7d164cc3) )
3681
 
 
3682
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3683
 
        ROM_LOAD32_WORD("mpr-21264.tp0", 0x0000000, 0x400000, CRC(6b35204d) SHA1(3a07701b140eb3088fad29c8b2d9c1e1e7ef9471) )
3684
 
        ROM_LOAD32_WORD("mpr-21268.tp1", 0x0000002, 0x400000, CRC(16ce2147) SHA1(39cba6b4f1130a3da7e2d226c948425eec34090e) )
3685
 
        ROM_LOAD32_WORD("mpr-21265.tp2", 0x0800000, 0x400000, CRC(f061e639) SHA1(a89b7a84192fcc1e9e0fe9adf7446f7b275d5a03) )
3686
 
        ROM_LOAD32_WORD("mpr-21269.tp3", 0x0800002, 0x400000, CRC(8c06255e) SHA1(9a8c302528e590be1b56ed301da30abf21f0be2e) )
3687
 
        ROM_LOAD32_WORD("mpr-21266.tp4", 0x1000000, 0x400000, CRC(f9c32021) SHA1(b21f8bf281bf2cfcdc7e5eb798cd633e905ab8b8) )
3688
 
        ROM_LOAD32_WORD("mpr-21270.tp5", 0x1000002, 0x400000, CRC(b61f81c3) SHA1(7733f44e791974070df139958eb97e0585ee50f8) )
3689
 
        ROM_LOAD32_WORD("mpr-21267.tp6", 0x1800000, 0x400000, CRC(c42cc938) SHA1(6153f52add63295122e1215dd07d648d030a7306) )
3690
 
        ROM_LOAD32_WORD("mpr-21271.tp7", 0x1800002, 0x400000, CRC(a5325c75) SHA1(d52836760475c7d9fbb4e5b8147ac416ffd1fcd9) )
3691
 
 
3692
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3693
 
        ROM_LOAD32_WORD("mpr-21274.tx1", 0x0000000, 0x400000, CRC(f045e3d1) SHA1(548909d2da22ed98594e0ab6ecffebec4fca2f93) )
3694
 
        ROM_LOAD32_WORD("mpr-21272.tx0", 0x0000002, 0x400000, CRC(dd605c21) SHA1(8363a082a666ceeb84df84929ff3fbaff49af821) )
3695
 
        ROM_LOAD32_WORD("mpr-21275.tx3", 0x0800000, 0x400000, CRC(c4870b7c) SHA1(feb8a34acb620a36ed5aea92d22622a76d7e1b29) )
3696
 
        ROM_LOAD32_WORD("mpr-21273.tx2", 0x0800002, 0x400000, CRC(722ec8a2) SHA1(1a1dc92488cde6284a96acce80e47a9cceccde76) )
3697
 
 
3698
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
3699
 
 
3700
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3701
 
        ROM_LOAD16_WORD_SWAP("epr-21276.sd0", 0x080000, 0x080000, CRC(8f415bc3) SHA1(4e8e1ccbe025deca42fcf2582f3da46fa34780b7) )
3702
 
 
3703
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3704
 
        ROM_LOAD("mpr-21277.sd1", 0x0000000, 0x200000, CRC(bfba0ff6) SHA1(11081b3eabc33a42ecfc0b2b535ce16510496144) )
3705
 
        ROM_LOAD("mpr-21278.sd2", 0x0200000, 0x200000, CRC(27e18e08) SHA1(254c0ad4d6bd572ff0efc3ea80489e73716a31a7) )
3706
 
        ROM_LOAD("mpr-21279.sd3", 0x0400000, 0x200000, CRC(3a8dcf68) SHA1(312496b45b699051c8b4dd0e5d94e73fe5f3ad8d) )
3707
 
        ROM_LOAD("mpr-21280.sd4", 0x0600000, 0x200000, CRC(aa548124) SHA1(a94adfe16b5c3236746451c181ccd3e1c27432f4) )
3708
 
ROM_END
3709
 
 
3710
 
ROM_START( indy500 ) /* Defaults to Twin (Stand Alone) Cab version.  2 credits to start - Can be set to Deluxe setting in service mode, Sega ID# 834-12362 */
3711
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3712
 
        ROM_LOAD32_WORD("epr-18598a.15", 0x000000, 0x080000, CRC(3cdcac0f) SHA1(2f616e363f4d246fece309e81325e5e3c4e9d9f8) ) /* Higher rom numbers indicate a newer version */
3713
 
        ROM_LOAD32_WORD("epr-18599a.16", 0x000002, 0x080000, CRC(32bde9a2) SHA1(0982952ab3c5b035f37beb9304ac950c0e78aea8) ) /* Different attract mode... what else??? */
3714
 
 
3715
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3716
 
        ROM_LOAD32_WORD("mpr-18237.11",    0x0000000, 0x400000, CRC(37e4255a) SHA1(3ee69a5b9364048dfab242773d97f3af430845b7) )
3717
 
        ROM_LOAD32_WORD("mpr-18238.12",    0x0000002, 0x400000, CRC(bf837bac) SHA1(6624417b65f15f20427bc42c27283f10342c76b5) )
3718
 
        ROM_LOAD32_WORD("mpr-18239.9",     0x0800000, 0x400000, CRC(9a2db86e) SHA1(0b81f6037657af7d96ed5e9bfef407d87cbcc294) )
3719
 
        ROM_LOAD32_WORD("mpr-18240.10",    0x0800002, 0x400000, CRC(ab46a35f) SHA1(67da857db7155a858a1fa575b6c50f4be3c9ab7c) )
3720
 
        ROM_LOAD32_WORD("epr-18596.7",     0x1000000, 0x080000, CRC(8be1a5cd) SHA1(56ed21234c6494d95b4efda6c3374199c5ac65db) )
3721
 
        ROM_LOAD32_WORD("epr-18597.8",     0x1000002, 0x080000, CRC(44824e38) SHA1(f0fb0d73c1e72ce77c3931d436c54c034d2107a8) )
3722
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
3723
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
3724
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
3725
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
3726
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
3727
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
3728
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
3729
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
3730
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
3731
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
3732
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
3733
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
3734
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
3735
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
3736
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
3737
 
 
3738
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
3739
 
        ROM_LOAD32_WORD("epr-18249.29", 0x000000, 0x080000, CRC(a399f023) SHA1(8b453313c16d935701ed7dbf71c1607c40aede63) )
3740
 
        ROM_LOAD32_WORD("epr-18250.30", 0x000002, 0x080000, CRC(7479ad52) SHA1(d453e25709cd5970cd21bdc8b4785bc8eb5a50d7) )
3741
 
 
3742
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
3743
 
        ROM_LOAD32_WORD("mpr-18233.17", 0x000000, 0x400000, CRC(48a024d3) SHA1(501c6ab969713187025331942f922cb0e8efa69a) )
3744
 
        ROM_LOAD32_WORD("mpr-18234.21", 0x000002, 0x400000, CRC(1178bfc8) SHA1(4a9982fdce08f9d375371763dd5287e8485c24b1) )
3745
 
        ROM_LOAD32_WORD("mpr-18235.18", 0x800000, 0x400000, CRC(e7d70d59) SHA1(6081739c15a634d5cc7680a4fc7decead93540ed) )
3746
 
        ROM_LOAD32_WORD("mpr-18236.22", 0x800002, 0x400000, CRC(6ca29e0e) SHA1(5de8b569d2a91047836f4a251c21db82fd7841c9) )
3747
 
 
3748
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
3749
 
        ROM_LOAD32_WORD("mpr-18232.27", 0x000000, 0x400000, CRC(f962347d) SHA1(79f07ee6b821724294ca9e7a079cb33249102508) )
3750
 
        ROM_LOAD32_WORD("mpr-18231.25", 0x000002, 0x400000, CRC(673d5338) SHA1(ce592857496ccc0a51efb377cf7cccc000b4296b) )
3751
 
 
3752
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3753
 
        ROM_LOAD16_WORD_SWAP("epr-18600.31", 0x080000,  0x40000, CRC(269ee4a0) SHA1(8ebabfcd27d634ff0bead0a1f138efc8708575e7) )
3754
 
 
3755
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3756
 
        ROM_LOAD("mpr-18241.32", 0x0000000, 0x200000, CRC(3a380ae1) SHA1(114113325e9e5262af8750c05089f24818943cde) )
3757
 
        ROM_LOAD("mpr-18242.33", 0x0200000, 0x200000, CRC(1cc3deae) SHA1(5c9cb8ce43a909b25b4e734c6a4ffd786f4dde31) )
3758
 
        ROM_LOAD("mpr-18243.34", 0x0400000, 0x200000, CRC(a00a0053) SHA1(9c24fbcd0318c7e195dd153d6ba05e8c1e052968) )
3759
 
        ROM_LOAD("mpr-18244.35", 0x0600000, 0x200000, CRC(bfa75beb) SHA1(fec89260d887e90ee9c2803e2eaf937cf9bfa10b) )
3760
 
ROM_END
3761
 
 
3762
 
ROM_START( indy500d ) /* Defaults to Deluxe (Stand Alone) Cab version.  3 credits to start - Can be set to Twin setting in service mode */
3763
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3764
 
        ROM_LOAD32_WORD("epr-18251a.15", 0x000000, 0x080000, CRC(fdabb40b) SHA1(e60a4814b54b76c7c0a4d9cf2b093c577c2f6ecf) )
3765
 
        ROM_LOAD32_WORD("epr-18252a.16", 0x000002, 0x080000, CRC(4935832a) SHA1(8fc9244fd0eaf93d016f4494604e5a70bf1f7303) )
3766
 
 
3767
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3768
 
        ROM_LOAD32_WORD("mpr-18237.11",    0x0000000, 0x400000, CRC(37e4255a) SHA1(3ee69a5b9364048dfab242773d97f3af430845b7) )
3769
 
        ROM_LOAD32_WORD("mpr-18238.12",    0x0000002, 0x400000, CRC(bf837bac) SHA1(6624417b65f15f20427bc42c27283f10342c76b5) )
3770
 
        ROM_LOAD32_WORD("mpr-18239.9",     0x0800000, 0x400000, CRC(9a2db86e) SHA1(0b81f6037657af7d96ed5e9bfef407d87cbcc294) )
3771
 
        ROM_LOAD32_WORD("mpr-18240.10",    0x0800002, 0x400000, CRC(ab46a35f) SHA1(67da857db7155a858a1fa575b6c50f4be3c9ab7c) )
3772
 
        ROM_LOAD32_WORD("epr-18245.7",     0x1000000, 0x080000, CRC(854b1037) SHA1(6bbbae53e2f56ab1007f37fdd5eb66dda4828c28) )
3773
 
        ROM_LOAD32_WORD("epr-18246.8",     0x1000002, 0x080000, CRC(1a68acdc) SHA1(425ca92d75054a17313732a9d11bbb31bea17a38) )
3774
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
3775
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
3776
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
3777
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
3778
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
3779
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
3780
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
3781
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
3782
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
3783
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
3784
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
3785
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
3786
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
3787
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
3788
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
3789
 
 
3790
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
3791
 
        ROM_LOAD32_WORD("epr-18249.29", 0x000000, 0x080000, CRC(a399f023) SHA1(8b453313c16d935701ed7dbf71c1607c40aede63) )
3792
 
        ROM_LOAD32_WORD("epr-18250.30", 0x000002, 0x080000, CRC(7479ad52) SHA1(d453e25709cd5970cd21bdc8b4785bc8eb5a50d7) )
3793
 
 
3794
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
3795
 
        ROM_LOAD32_WORD("mpr-18233.17", 0x000000, 0x400000, CRC(48a024d3) SHA1(501c6ab969713187025331942f922cb0e8efa69a) )
3796
 
        ROM_LOAD32_WORD("mpr-18234.21", 0x000002, 0x400000, CRC(1178bfc8) SHA1(4a9982fdce08f9d375371763dd5287e8485c24b1) )
3797
 
        ROM_LOAD32_WORD("mpr-18235.18", 0x800000, 0x400000, CRC(e7d70d59) SHA1(6081739c15a634d5cc7680a4fc7decead93540ed) )
3798
 
        ROM_LOAD32_WORD("mpr-18236.22", 0x800002, 0x400000, CRC(6ca29e0e) SHA1(5de8b569d2a91047836f4a251c21db82fd7841c9) )
3799
 
 
3800
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
3801
 
        ROM_LOAD32_WORD("mpr-18232.27", 0x000000, 0x400000, CRC(f962347d) SHA1(79f07ee6b821724294ca9e7a079cb33249102508) )
3802
 
        ROM_LOAD32_WORD("mpr-18231.25", 0x000002, 0x400000, CRC(673d5338) SHA1(ce592857496ccc0a51efb377cf7cccc000b4296b) )
3803
 
 
3804
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3805
 
        ROM_LOAD16_WORD_SWAP("epr-18253.31", 0x080000,  0x40000, CRC(2934e034) SHA1(4a3037b69c4835ef16a20c5573de32a862f0b13e) )
3806
 
 
3807
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3808
 
        ROM_LOAD("mpr-18241.32", 0x0000000, 0x200000, CRC(3a380ae1) SHA1(114113325e9e5262af8750c05089f24818943cde) )
3809
 
        ROM_LOAD("mpr-18242.33", 0x0200000, 0x200000, CRC(1cc3deae) SHA1(5c9cb8ce43a909b25b4e734c6a4ffd786f4dde31) )
3810
 
        ROM_LOAD("mpr-18243.34", 0x0400000, 0x200000, CRC(a00a0053) SHA1(9c24fbcd0318c7e195dd153d6ba05e8c1e052968) )
3811
 
        ROM_LOAD("mpr-18244.35", 0x0600000, 0x200000, CRC(bfa75beb) SHA1(fec89260d887e90ee9c2803e2eaf937cf9bfa10b) )
3812
 
ROM_END
3813
 
 
3814
 
ROM_START( indy500to ) /* Defaults to Twin (Stand Alone) Cab version.  2 credits to start - Can be set to Deluxe setting in service mode */
3815
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3816
 
        ROM_LOAD32_WORD("epr-18254a.15", 0x000000, 0x080000, CRC(ad0f1fc5) SHA1(0bff35fc1d892aaffbf1a3965bf3109c54839f4b) )
3817
 
        ROM_LOAD32_WORD("epr-18255a.16", 0x000002, 0x080000, CRC(784daab8) SHA1(299e87f8ec7bdefa6f94f4ab65e29e91f290611e) )
3818
 
 
3819
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3820
 
        ROM_LOAD32_WORD("mpr-18237.11",    0x0000000, 0x400000, CRC(37e4255a) SHA1(3ee69a5b9364048dfab242773d97f3af430845b7) )
3821
 
        ROM_LOAD32_WORD("mpr-18238.12",    0x0000002, 0x400000, CRC(bf837bac) SHA1(6624417b65f15f20427bc42c27283f10342c76b5) )
3822
 
        ROM_LOAD32_WORD("mpr-18239.9",     0x0800000, 0x400000, CRC(9a2db86e) SHA1(0b81f6037657af7d96ed5e9bfef407d87cbcc294) )
3823
 
        ROM_LOAD32_WORD("mpr-18240.10",    0x0800002, 0x400000, CRC(ab46a35f) SHA1(67da857db7155a858a1fa575b6c50f4be3c9ab7c) )
3824
 
        ROM_LOAD32_WORD("epr-18389.7",     0x1000000, 0x080000, CRC(d22ea019) SHA1(ef10bb0ffcb1bbcf4672bb5f705a27679a793764) )
3825
 
        ROM_LOAD32_WORD("epr-18390.8",     0x1000002, 0x080000, CRC(38e796e5) SHA1(b23cfe45c363d616a65decd57aeb8ae61d5370e9) )
3826
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
3827
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
3828
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
3829
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
3830
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
3831
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
3832
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
3833
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
3834
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
3835
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
3836
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
3837
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
3838
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
3839
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
3840
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
3841
 
 
3842
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
3843
 
        ROM_LOAD32_WORD("epr-18249.29", 0x000000, 0x080000, CRC(a399f023) SHA1(8b453313c16d935701ed7dbf71c1607c40aede63) )
3844
 
        ROM_LOAD32_WORD("epr-18250.30", 0x000002, 0x080000, CRC(7479ad52) SHA1(d453e25709cd5970cd21bdc8b4785bc8eb5a50d7) )
3845
 
 
3846
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
3847
 
        ROM_LOAD32_WORD("mpr-18233.17", 0x000000, 0x400000, CRC(48a024d3) SHA1(501c6ab969713187025331942f922cb0e8efa69a) )
3848
 
        ROM_LOAD32_WORD("mpr-18234.21", 0x000002, 0x400000, CRC(1178bfc8) SHA1(4a9982fdce08f9d375371763dd5287e8485c24b1) )
3849
 
        ROM_LOAD32_WORD("mpr-18235.18", 0x800000, 0x400000, CRC(e7d70d59) SHA1(6081739c15a634d5cc7680a4fc7decead93540ed) )
3850
 
        ROM_LOAD32_WORD("mpr-18236.22", 0x800002, 0x400000, CRC(6ca29e0e) SHA1(5de8b569d2a91047836f4a251c21db82fd7841c9) )
3851
 
 
3852
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
3853
 
        ROM_LOAD32_WORD("mpr-18232.27", 0x000000, 0x400000, CRC(f962347d) SHA1(79f07ee6b821724294ca9e7a079cb33249102508) )
3854
 
        ROM_LOAD32_WORD("mpr-18231.25", 0x000002, 0x400000, CRC(673d5338) SHA1(ce592857496ccc0a51efb377cf7cccc000b4296b) )
3855
 
 
3856
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3857
 
        ROM_LOAD16_WORD_SWAP("epr-18391.31", 0x080000,  0x40000, CRC(79579b72) SHA1(36fed8a9eeb34968b2852ea8fc9198427f0d27c6) )
3858
 
 
3859
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3860
 
        ROM_LOAD("mpr-18241.32", 0x0000000, 0x200000, CRC(3a380ae1) SHA1(114113325e9e5262af8750c05089f24818943cde) )
3861
 
        ROM_LOAD("mpr-18242.33", 0x0200000, 0x200000, CRC(1cc3deae) SHA1(5c9cb8ce43a909b25b4e734c6a4ffd786f4dde31) )
3862
 
        ROM_LOAD("mpr-18243.34", 0x0400000, 0x200000, CRC(a00a0053) SHA1(9c24fbcd0318c7e195dd153d6ba05e8c1e052968) )
3863
 
        ROM_LOAD("mpr-18244.35", 0x0600000, 0x200000, CRC(bfa75beb) SHA1(fec89260d887e90ee9c2803e2eaf937cf9bfa10b) )
3864
 
ROM_END
3865
 
 
3866
 
ROM_START( waverunr ) /* Wave Runner Revision A (Japan), Model 2C */
3867
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3868
 
        ROM_LOAD32_WORD("epr-19282a.15", 0x000000, 0x080000, CRC(5df58604) SHA1(a136bb80746f37450be51f98ca60791b4022035d) )
3869
 
        ROM_LOAD32_WORD("epr-19283a.16", 0x000002, 0x080000, CRC(bca188e1) SHA1(428f156f60e61ef314b7b50474abddf6d4dc2aca) )
3870
 
 
3871
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3872
 
        ROM_LOAD32_WORD("mpr-19291.11",    0x0000000, 0x400000, CRC(54431d67) SHA1(25e25d9ecf3b3b1c8f5e017243cc5e02f7a13015) )
3873
 
        ROM_LOAD32_WORD("mpr-19292.12",    0x0000002, 0x400000, CRC(9152d979) SHA1(0e86e21e1c88263c548e03bce48ed4ce75643596) )
3874
 
        ROM_LOAD32_WORD("mpr-19293.9",     0x0800000, 0x400000, CRC(b168bea9) SHA1(0497e886ccd5e5ef0cd8670200bf4cf64d9bfc2b) )
3875
 
        ROM_LOAD32_WORD("mpr-19294.10",    0x0800002, 0x400000, CRC(c731e659) SHA1(a898b03d66973a49deb9799102ab1faf4384c376) )
3876
 
        ROM_LOAD32_WORD("epr-19278.7",     0x1000000, 0x080000, CRC(29ed421d) SHA1(c91eb2d68acd6ded394e0bd9f504cbb8f421c3ed) )
3877
 
        ROM_LOAD32_WORD("epr-19279.8",     0x1000002, 0x080000, CRC(6ae9f899) SHA1(da46379cabe5f151160b2558e255e9b64eaca22e) )
3878
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 )
3879
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
3880
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
3881
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
3882
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
3883
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
3884
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
3885
 
        ROM_COPY( "user1", 0x1000000, 0x1800000, 0x100000 )
3886
 
        ROM_COPY( "user1", 0x1000000, 0x1900000, 0x100000 )
3887
 
        ROM_COPY( "user1", 0x1000000, 0x1a00000, 0x100000 )
3888
 
        ROM_COPY( "user1", 0x1000000, 0x1b00000, 0x100000 )
3889
 
        ROM_COPY( "user1", 0x1000000, 0x1c00000, 0x100000 )
3890
 
        ROM_COPY( "user1", 0x1000000, 0x1d00000, 0x100000 )
3891
 
        ROM_COPY( "user1", 0x1000000, 0x1e00000, 0x100000 )
3892
 
        ROM_COPY( "user1", 0x1000000, 0x1f00000, 0x100000 )
3893
 
 
3894
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
3895
 
        ROM_LOAD32_WORD("epr-19280.29", 0x000000, 0x080000, CRC(c6b59fb9) SHA1(909663f440d19a34591d1f9707972c313e34f909) )
3896
 
        ROM_LOAD32_WORD("epr-19281.30", 0x000002, 0x080000, CRC(5a6110e7) SHA1(39ba8a35fdcfdd6c88b44ab392ca0e958da44767) )
3897
 
 
3898
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3899
 
        ROM_LOAD32_WORD("mpr-19287.17", 0x0000000, 0x400000, CRC(203b9e45) SHA1(8e677a106ceb9355632fadbdb837dc4a23c83684) )
3900
 
        ROM_LOAD32_WORD("mpr-19288.21", 0x0000002, 0x400000, CRC(4a488e4d) SHA1(1e680680354d873c515c955256b0e4e72451326a))
3901
 
        ROM_LOAD32_WORD("mpr-19289.18", 0x0800000, 0x400000, CRC(35361cb3) SHA1(f36033765c93274a1bcdd311fb2026aa2a8a0e42) )
3902
 
        ROM_LOAD32_WORD("mpr-19290.22", 0x0800002, 0x400000, CRC(67300826) SHA1(6e6bf7c709202221e03a06d9e53147d67ab4404f) )
3903
 
        ROM_LOAD32_WORD("epr-19304.19", 0x1000000, 0x080000, CRC(1a7d9521) SHA1(2fdb9344441c625c3841dfc62e424ddaf16416d5) )
3904
 
        ROM_LOAD32_WORD("epr-19305.23", 0x1000002, 0x080000, CRC(00412412) SHA1(93db2c6d672c5c4bf1623edad8d4237c65c4f4e1) )
3905
 
        ROM_COPY( "user2", 0x1000000, 0x1100000, 0x100000 )
3906
 
        ROM_COPY( "user2", 0x1000000, 0x1200000, 0x100000 )
3907
 
        ROM_COPY( "user2", 0x1000000, 0x1300000, 0x100000 )
3908
 
        ROM_COPY( "user2", 0x1000000, 0x1400000, 0x100000 )
3909
 
        ROM_COPY( "user2", 0x1000000, 0x1500000, 0x100000 )
3910
 
        ROM_COPY( "user2", 0x1000000, 0x1600000, 0x100000 )
3911
 
        ROM_COPY( "user2", 0x1000000, 0x1700000, 0x100000 )
3912
 
        ROM_COPY( "user2", 0x1000000, 0x1800000, 0x100000 )
3913
 
        ROM_COPY( "user2", 0x1000000, 0x1900000, 0x100000 )
3914
 
        ROM_COPY( "user2", 0x1000000, 0x1a00000, 0x100000 )
3915
 
        ROM_COPY( "user2", 0x1000000, 0x1b00000, 0x100000 )
3916
 
        ROM_COPY( "user2", 0x1000000, 0x1c00000, 0x100000 )
3917
 
        ROM_COPY( "user2", 0x1000000, 0x1d00000, 0x100000 )
3918
 
        ROM_COPY( "user2", 0x1000000, 0x1e00000, 0x100000 )
3919
 
 
3920
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3921
 
        ROM_LOAD32_WORD("mpr-19286.27", 0x000000, 0x400000, CRC(3ccc33cb) SHA1(1fe53306e370da724df5caace720107798fb24b9) )
3922
 
        ROM_LOAD32_WORD("mpr-19285.25", 0x000002, 0x400000, CRC(a070fbd0) SHA1(2b5441b9d7d613b0a90dfea243e9de44980d219d) )
3923
 
        ROM_LOAD32_WORD("epr-19303.28", 0x800000, 0x080000, CRC(fcffc8a0) SHA1(f4b776028f581329effa583022d8d65e889b6b0a) )
3924
 
        ROM_LOAD32_WORD("epr-19302.26", 0x800002, 0x080000, CRC(bd00933a) SHA1(572b49a4d0189d0513c27753e3563909d1977f03) )
3925
 
        ROM_COPY( "user3", 0x800000, 0x900000, 0x100000 )
3926
 
        ROM_COPY( "user3", 0x800000, 0xa00000, 0x100000 )
3927
 
        ROM_COPY( "user3", 0x800000, 0xb00000, 0x100000 )
3928
 
        ROM_COPY( "user3", 0x800000, 0xc00000, 0x100000 )
3929
 
        ROM_COPY( "user3", 0x800000, 0xd00000, 0x100000 )
3930
 
        ROM_COPY( "user3", 0x800000, 0xe00000, 0x100000 )
3931
 
        ROM_COPY( "user3", 0x800000, 0xf00000, 0x100000 )
3932
 
 
3933
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3934
 
        ROM_LOAD16_WORD_SWAP("epr-19284.31", 0x080000,  0x40000, CRC(efe5f0f3) SHA1(5e36fc7cca92e2eab7d65434cb39597505a2f8cf) )
3935
 
 
3936
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3937
 
        ROM_LOAD("mpr-19295.32", 0x0000000, 0x400000, CRC(b14eeb09) SHA1(2a6d1b14ea3c031cad9905e4b9b6973755689ee1) )
3938
 
        ROM_LOAD("mpr-19296.34", 0x0400000, 0x400000, CRC(b4b9faff) SHA1(3a258e0f7c642d043cbab5f94dfe69fac8561e93) )
3939
 
ROM_END
3940
 
 
3941
 
ROM_START( rchase2 ) /* Rail Chase 2 Revision A, Model 2B */
3942
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
3943
 
        ROM_LOAD32_WORD("epr-18045a.15", 0x000000, 0x080000, CRC(bfca0314) SHA1(9eb0f2cdab8c10fda9edc0ddc439263af3903cdc) )
3944
 
        ROM_LOAD32_WORD("epr-18046a.16", 0x000002, 0x080000, CRC(0b8d3074) SHA1(fee8436399fb97ad5b8357b81e69bd5c27af1dde) )
3945
 
        ROM_LOAD32_WORD("epr-18074a.13", 0x100000, 0x080000, CRC(ca4b58df) SHA1(d41cb8efd9fd65eea9e7aefadebfd0a27ef145fb) )
3946
 
        ROM_LOAD32_WORD("epr-18075a.14", 0x100002, 0x080000, CRC(b82672e4) SHA1(519fdb5a978b6e82989b9841c6b59819f0d417cb) )
3947
 
 
3948
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
3949
 
        ROM_LOAD32_WORD("mpr-18037.11",    0x0000000, 0x200000, CRC(dea8f896) SHA1(8eb45e46bd14a2ffbdaac47d381a1ea9b9a03ca2) )
3950
 
        ROM_LOAD32_WORD("mpr-18038.12",    0x0000002, 0x200000, CRC(441f7709) SHA1(cbfa687839b6cad6a5ace45b44b95c45e4cfab0d) )
3951
 
        ROM_LOAD32_WORD("mpr-18039.9",     0x0800000, 0x200000, CRC(b98c6f06) SHA1(dd1ff9c682778de1c6c09e7a5cbc95a8149488c4) )
3952
 
        ROM_LOAD32_WORD("mpr-18040.10",    0x0800002, 0x200000, CRC(0d872667) SHA1(33e56486ec6b953341552b6bc21dc66f6f8aaf74) )
3953
 
        ROM_LOAD32_WORD("mpr-18041.7",     0x1000000, 0x200000, CRC(e511ab0a) SHA1(c6ea14b3bdefdc59603bd2fc152ac0421fae4d6f) )
3954
 
        ROM_LOAD32_WORD("mpr-18042.8",     0x1000002, 0x200000, CRC(e9a04159) SHA1(0204ba86af2707bc9e277cac68dd9ef759189c23) )
3955
 
        ROM_LOAD32_WORD("mpr-18043.5",     0x1800000, 0x200000, CRC(ff84dfd6) SHA1(82833bf4cb1f367aea5fec6cffb7023cbbd3c8cb) )
3956
 
        ROM_LOAD32_WORD("mpr-18044.6",     0x1800002, 0x200000, CRC(ab9b406d) SHA1(62e95ceea6f71eedbebae59e188aac03e6129e62) )
3957
 
 
3958
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASEFF ) // Coprocessor Data ROM
3959
 
        /* empty?? */
3960
 
 
3961
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
3962
 
        ROM_LOAD32_WORD("mpr-18031.17", 0x0000000, 0x200000, CRC(25d0deae) SHA1(2d0339dd7eeb2625f78e2fbe4ebdc976967175a4) )
3963
 
        ROM_LOAD32_WORD("mpr-18032.21", 0x0000002, 0x200000, CRC(dbae35c2) SHA1(9510104975192a0ef1750251636daff7f089feb9) )
3964
 
        ROM_LOAD32_WORD("mpr-18033.18", 0x0800000, 0x200000, CRC(1e75946c) SHA1(7dee991f0c43de9bfe17ae44767f65f12e83c811) )
3965
 
        ROM_LOAD32_WORD("mpr-18034.22", 0x0800002, 0x200000, CRC(215235ad) SHA1(48227544209412fca3035e85a00d33ea654dc7b5) )
3966
 
 
3967
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
3968
 
        ROM_LOAD32_WORD("mpr-18035.27", 0x000000, 0x200000, CRC(4423f66e) SHA1(c1f8dda4781dea00bd97dbf9ecfbb626dadd2c35) )
3969
 
        ROM_LOAD32_WORD("mpr-18036.25", 0x000002, 0x200000, CRC(69221cf5) SHA1(e39644a08aa631dbdcfc7c0dc356e73f6a4412a9) )
3970
 
 
3971
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
3972
 
        ROM_LOAD16_WORD_SWAP("epr-18047.31", 0x080000,  0x80000, CRC(4c31d459) SHA1(424d5e5a7787d0d4c68aa919ba7d575babfd1ce0) )
3973
 
 
3974
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
3975
 
        ROM_LOAD("mpr-18029.32", 0x0000000, 0x200000, CRC(f6804150) SHA1(ef40c11008c75d04159772ad30f02cdb8c5464f3) )
3976
 
        ROM_LOAD("mpr-18030.34", 0x0400000, 0x200000, CRC(1167615d) SHA1(bae0060aec3c15f08342f11df665c05c5703523d) )
3977
 
 
3978
 
        /* the Drive I/O clearly has a CPU on it (see above) */
3979
 
        ROM_REGION( 0x1000, "iocpu", 0 )
3980
 
        ROM_LOAD("drive_io.bin", 0x0000, 0x1000, NO_DUMP )
3981
 
ROM_END
3982
 
 
3983
 
 
3984
 
/*
3985
 
Behind Enemy Lines
3986
 
Sega, 1998
3987
 
 
3988
 
This game runs on Sega Model2 C-CRX hardware
3989
 
 
3990
 
PCB No: 837-12469-01
3991
 
CPU   : intel i960
3992
 
SOUND : MC68EC000FN12
3993
 
OSC   : 32.000MHz (x3), 50.000MHz, 20.000MHz, 45.158MHz
3994
 
DIPSW : 8 position (x1)
3995
 
RAM   : M5M44170CJ (x2), HM514270CJ7 (x1), HM538254BJ-7 (x4), N341256SJ-15 (x10)
3996
 
        UM62256EM-70LL (x4), TC18128CFWL-80V (x12), TC55V328AJ-15 (x3)
3997
 
        CY7C185-25VC (x7), CY7C188-25VC (x2), dt71256 (x4), BR6265BF-10SL (x2)
3998
 
        65256BLFP-10T (x2), LH521002AK-20 (x16)
3999
 
 
4000
 
CUSTOM: SEGA 315-5687   (128 QFP)
4001
 
        FUJITSU MB86235 (x2, 208 QFP)
4002
 
        SEGA 315-5673   (240 QFP)
4003
 
        SEGA 315-5798   (304 QFP)
4004
 
        SEGA 315-5799   (368 QFP)
4005
 
        SEGA 315-5725   (x2, 144 QFP)
4006
 
        SEGA 315-5292A  (160 QFP)
4007
 
        SEGA 315-5648   (64 QFP)
4008
 
        SEGA 315-5672   (196 QFP)
4009
 
        SEGA 315-5649   (100 QFP)
4010
 
PAL   : 315-5879
4011
 
OTHER : D71051GU-10
4012
 
        LATTICE PLSI 2032 80LJ D702S08 (x2)
4013
 
        TDA1386T
4014
 
 
4015
 
Note: All epr* ROMs are 27C1024
4016
 
      All mpr* ROMs are 16M MASK
4017
 
 
4018
 
[JUMPERS]
4019
 
JP1     2-3
4020
 
JP2     1-2
4021
 
JP3     2-3
4022
 
JP4     1-2
4023
 
JP5     1-2
4024
 
JP6     1-2
4025
 
JP7     1-2
4026
 
JP8     2-3
4027
 
JP9     2-3
4028
 
JP10    1-2
4029
 
JP11    1-2
4030
 
JP12    1-2
4031
 
JP13    1-2
4032
 
JP14    1-2
4033
 
JP15    2-3
4034
 
JP16    1-2
4035
 
JP17    1-2
4036
 
JP18    1-2
4037
 
JP19    1-2
4038
 
JP20    2-3
4039
 
JP21    2-3
4040
 
JP22    2-3
4041
 
JP23    2-3
4042
 
JP24    2-3
4043
 
*/
4044
 
ROM_START( bel ) /* Behind Enemy Lines, Model 2C */
4045
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4046
 
        ROM_LOAD32_WORD("epr-20225.15",   0x000000, 0x020000, CRC(4abc6b59) SHA1(cc6da75aafcbbc86720435182a66e8de065c8e99) )
4047
 
        ROM_LOAD32_WORD("epr-20226.16",   0x000002, 0x020000, CRC(43e05b3a) SHA1(204b3cc6bbfdc92b4871c45fe4abff4ab4a66317) )
4048
 
        ROM_LOAD32_WORD("epr-20223.13",   0x040000, 0x020000, CRC(61b1be98) SHA1(03c308c58a72bf3b78f41d5a9c0adaa7aad631c2) )
4049
 
        ROM_LOAD32_WORD("epr-20224.14",   0x040002, 0x020000, CRC(eb2d7dbf) SHA1(f3b126e2fcef1cf673b239696ed8018241b1170e) )
4050
 
 
4051
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4052
 
        ROM_LOAD32_WORD("mpr-20233.11",   0x000000, 0x200000, CRC(3e079a3b) SHA1(a3f15cd68a514cf80f0a40dbbb08e8b0489a0e4b) )
4053
 
        ROM_LOAD32_WORD("mpr-20234.12",   0x000002, 0x200000, CRC(58bde826) SHA1(386d0d07738f579cb23e4168aceb26f56bcca1c1) )
4054
 
        ROM_LOAD32_WORD("mpr-20231.9",    0x400000, 0x200000, CRC(b3393e93) SHA1(aa52ae307aa37faaaf86c326642af1946c5f4056) )
4055
 
        ROM_LOAD32_WORD("mpr-20232.10",   0x400002, 0x200000, CRC(da4a2e11) SHA1(f9138813f6d1ca2126f5de10d8d69dcbb533aa0e) )
4056
 
        ROM_LOAD32_WORD("mpr-20229.7",    0x800000, 0x200000, CRC(cdec7bf4) SHA1(510b6d41f1d32a9929379ba76037db137164cd43) )
4057
 
        ROM_LOAD32_WORD("mpr-20230.8",    0x800002, 0x200000, CRC(a166fa87) SHA1(d4f6d4fba7f43b21f0bf9d948ec93b372425bf7c) )
4058
 
        ROM_LOAD32_WORD("mpr-20227.5",    0xc00000, 0x200000, CRC(1277686e) SHA1(fff27006659458300001425261b944e690f1d494) )
4059
 
        ROM_LOAD32_WORD("mpr-20228.6",    0xc00002, 0x200000, CRC(49cb5568) SHA1(ee3273302830f3499c7d4e548b629c51e0369e8a) )
4060
 
 
4061
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
4062
 
        ROM_LOAD32_WORD("mpr-20236.29",   0x000000, 0x200000, CRC(8de9a3c2) SHA1(e7fde1fd509531e1002ff813163067dc0d134536) )
4063
 
        ROM_LOAD32_WORD("mpr-20235.30",   0x000002, 0x200000, CRC(78fa11ef) SHA1(a60deabb662e9c09f5d6342dc1a1c6045744d93f) )
4064
 
 
4065
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4066
 
        ROM_LOAD32_WORD("mpr-20244.17",  0x0000000, 0x200000, CRC(9d2a8660) SHA1(59302e7119c9ff779ce0c871713fe3688c29cccb) )
4067
 
        ROM_LOAD32_WORD("mpr-20240.21",  0x0000002, 0x200000, CRC(51615908) SHA1(c70252b0b6f17aa0cd9b5264d4166df8ab7d1784) )
4068
 
        ROM_LOAD32_WORD("mpr-20243.18",  0x0400000, 0x200000, CRC(48671f7c) SHA1(b0bdc7f42450c8d9cebbcf43cf858f7399e378e4) )
4069
 
        ROM_LOAD32_WORD("mpr-20239.22",  0x0400002, 0x200000, CRC(6cd8d8a5) SHA1(1c634fbbcbafb1c3825117682901a3264599b246) )
4070
 
        ROM_LOAD32_WORD("mpr-20242.19",  0x0800000, 0x200000, CRC(e7f86ac7) SHA1(7b7724127b27834eaaa228050ceb779d8a027882) )
4071
 
        ROM_LOAD32_WORD("mpr-20238.23",  0x0800002, 0x200000, CRC(0a480c7c) SHA1(239d2c9c49cb8ddc0d6aa956a497b494217f38d7) )
4072
 
        ROM_LOAD32_WORD("mpr-20241.20",  0x0c00000, 0x200000, CRC(51974b98) SHA1(7d6ab9c0ccec77676222611bf200d2e067e20520) )
4073
 
        ROM_LOAD32_WORD("mpr-20237.24",  0x0c00002, 0x200000, CRC(89b5d8b6) SHA1(6e0a0323d6a804f1f1e4404694cc1ea7dfbf2d95) )
4074
 
 
4075
 
        ROM_REGION( 0xc00000, "user3", 0 ) // Textures
4076
 
        ROM_LOAD32_WORD("mpr-20247.27",   0x000000, 0x200000, CRC(00b0417d) SHA1(5e9d38509c1e5273079a342a64ca2c956cd47e6d) )
4077
 
        ROM_LOAD32_WORD("mpr-20245.25",   0x000002, 0x200000, CRC(36490a08) SHA1(a462e094c9a9ec4743e4bf2c4ce23357257a2a54) )
4078
 
        ROM_LOAD32_WORD("mpr-20248.28",   0x800000, 0x200000, CRC(0ace6bef) SHA1(a231aeb7b984f5b927144f0eec4ef2282429494f) )
4079
 
        ROM_LOAD32_WORD("mpr-20246.26",   0x800002, 0x200000, CRC(250d6ca1) SHA1(cd1d4bc0fcf89e47884b87863a09bb263bce72cc) )
4080
 
 
4081
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4082
 
        ROM_LOAD16_WORD_SWAP("mpr-20249.31",  0x080000, 0x020000, CRC(dc24f13d) SHA1(66ab8e843319d07663ef13f3d2299c6c7414071f) )
4083
 
 
4084
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4085
 
        ROM_LOAD("mpr-20250.32",  0x0000000, 0x200000, CRC(91b735d3) SHA1(b0e7e493fb20ebf30c17378199e49d529ffb3f20) )
4086
 
        ROM_LOAD("mpr-20251.33",  0x0200000, 0x200000, CRC(703a947b) SHA1(95b8d3dc29e87e6537b288d8e946728e0b345dd0) )
4087
 
        ROM_LOAD("mpr-20252.34",  0x0400000, 0x200000, CRC(8f48f375) SHA1(9e511e89e99c77f06a5fba033ca8f9b98bd86f91) )
4088
 
        ROM_LOAD("mpr-20253.35",  0x0600000, 0x200000, CRC(ca6aa17c) SHA1(f6df2483ca75573449ba36638dbbed4be7843a44) )
4089
 
ROM_END
4090
 
 
4091
 
ROM_START( overrev ) /* Over Rev Revision A, Model 2C */
4092
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4093
 
        ROM_LOAD32_WORD( "epr-20124a.15", 0x000000, 0x080000, CRC(74beb8d7) SHA1(c65c641138ecd7312c4930702d1498b8a346175a) )
4094
 
        ROM_LOAD32_WORD( "epr-20125a.16", 0x000002, 0x080000, CRC(def64456) SHA1(cedb64d2d99a73301ef45c2f5f860a9b87faf6a7) )
4095
 
 
4096
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4097
 
        ROM_LOAD32_WORD( "mpr-19996.11",  0x000000, 0x400000, CRC(21928a00) SHA1(6b439fd2b113b64df9378ef8180a17aa6fa975c5) )
4098
 
        ROM_LOAD32_WORD( "mpr-19997.12",  0x000002, 0x400000, CRC(2a169cab) SHA1(dbf9af938afd0599d345c42c1df242e575c14de9) )
4099
 
        ROM_LOAD32_WORD( "mpr-19994.9",   0x800000, 0x400000, CRC(e691fbd5) SHA1(b99c2f3f2a682966d792917dfcb8ed8e53bc0b7a) )
4100
 
        ROM_LOAD32_WORD( "mpr-19995.10",  0x800002, 0x400000, CRC(82a7828e) SHA1(4336a12a07a67f94091b4a9b491bab02c375dd15) )
4101
 
 
4102
 
        ROM_REGION( 0x800000, "cpu2", ROMREGION_ERASE00 ) // TGPx4 program (COPRO sockets)
4103
 
 
4104
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models (TGP sockets)
4105
 
        ROM_LOAD32_WORD( "mpr-19998.17",  0x000000, 0x200000, CRC(6a834574) SHA1(8be19bf42dbb157d6acde62a2018ef4c0d41aab4) )
4106
 
        ROM_LOAD32_WORD( "mpr-19999.21",  0x000002, 0x200000, CRC(ff590a2d) SHA1(ad29e4270b4a2f82189fbab83358eb1200f43777) )
4107
 
 
4108
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures (TEXTURE sockets)
4109
 
        ROM_LOAD32_WORD( "mpr-20001.27",  0x000000, 0x200000, CRC(6ca236aa) SHA1(b3cb89fadb42afed13be4f229d7158dee487978a) )
4110
 
        ROM_LOAD32_WORD( "mpr-20000.25",  0x000002, 0x200000, CRC(894d8ded) SHA1(9bf7c754a29eef47fa49b5567980601895127306) )
4111
 
 
4112
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4113
 
        ROM_LOAD16_WORD_SWAP( "epr-20002.31", 0x000000, 0x080000, CRC(7efb069e) SHA1(30b1bbaf348d6a6b9ee2fdf82a0749baa025e0bf) )
4114
 
 
4115
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4116
 
        ROM_LOAD( "mpr-20003.32", 0x000000, 0x400000, CRC(149ac22b) SHA1(c890bbaebbbb07b62bcb8a3a8edded9fa0ec9a1e) )
4117
 
        ROM_LOAD( "mpr-20004.34", 0x400000, 0x400000, CRC(0b9c5410) SHA1(e5bb30702fc853ccc03316be07a334269d3ebb4a) )
4118
 
ROM_END
4119
 
 
4120
 
ROM_START( topskatr ) /* Top Skater Revision A (Export), Model 2C */
4121
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4122
 
        ROM_LOAD32_WORD("epr-19755a.15", 0x000000, 0x080000, CRC(b80633b9) SHA1(5396da414beeb918e6f38f25a43dd76345a0c8ed) )
4123
 
        ROM_LOAD32_WORD("epr-19756a.16", 0x000002, 0x080000, CRC(472046a2) SHA1(06d0f609257ba476e6bd3b956e0850e7167429ce) )
4124
 
 
4125
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4126
 
        ROM_LOAD32_WORD("mpr-19735.11",  0x000000, 0x400000, CRC(8e509266) SHA1(49afc91467f08befaf34e743cbe823de3e3c9d85) )
4127
 
        ROM_LOAD32_WORD("mpr-19736.12",  0x000002, 0x400000, CRC(094e0a0d) SHA1(de2c739f71e51166263446b9f6a566866ab8bee8) )
4128
 
        ROM_LOAD32_WORD("mpr-19737.9",   0x800000, 0x400000, CRC(281a7dde) SHA1(71d5ba434328a81969bfdc71ac1160c5ff3ae9d3) )
4129
 
        ROM_LOAD32_WORD("mpr-19738.10",  0x800002, 0x400000, CRC(f688327e) SHA1(68c9db242ef7e8f98979e968a09e4b093bc5d470) )
4130
 
 
4131
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
4132
 
        ROM_LOAD32_WORD("mpr-19743.29",  0x000000, 0x200000, CRC(d41a41bf) SHA1(a5f6b24e6526d0d2ef9c526c273c018d1e0fed59) )
4133
 
        ROM_LOAD32_WORD("mpr-19744.30",  0x000002, 0x200000, CRC(84f203bf) SHA1(4952b764e6bf6cd735018738c5eff08781ee2315) )
4134
 
 
4135
 
        ROM_REGION( 0x400000, "user2", 0 ) // Models
4136
 
        ROM_LOAD32_WORD("mpr-19741.17",  0x000000, 0x200000, CRC(111a6e29) SHA1(8664059f157626e4bbdcf8357e3d30b37d3c25b8) )
4137
 
        ROM_LOAD32_WORD("mpr-19742.21",  0x000002, 0x200000, CRC(28510aff) SHA1(3e68aec090f36a60b3b70bc90f09e2f9ce088718) )
4138
 
 
4139
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
4140
 
        ROM_LOAD32_WORD("mpr-19740.27",  0x000000, 0x400000, CRC(b20f508b) SHA1(c90fa3b42d87291ea459ccc137f3a2f3eb7efec0) )
4141
 
        ROM_LOAD32_WORD("mpr-19739.25",  0x000002, 0x400000, CRC(8120cfd8) SHA1(a82744bff5dcdfae296c7c3e8c3fbfda26324e85) )
4142
 
 
4143
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4144
 
        ROM_LOAD16_WORD_SWAP("mpr-19759.31", 0x080000,  0x80000, CRC(573530f2) SHA1(7b205085965d6694f8e75e29c4028f7cb6f631ab) )
4145
 
 
4146
 
        ROM_REGION( 0x20000, "cpu3", 0) // DSB program
4147
 
        ROM_LOAD16_WORD_SWAP("mpr-19760.2s", 0x000000,  0x20000, CRC(2e41ca15) SHA1(a302209bfe0f1491dff2da64b32cfaa13c3d3304) )
4148
 
 
4149
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4150
 
        ROM_LOAD16_WORD_SWAP("mpr-19745.32", 0x000000, 0x400000, CRC(7082a0af) SHA1(415f9d0793a697cb1719bbd96370f4a741866527) )
4151
 
        ROM_LOAD16_WORD_SWAP("mpr-19746.34", 0x400000, 0x400000, CRC(657b5977) SHA1(ca76f211d68b6b55678a4d7949bfd2ddef1b1710) )
4152
 
 
4153
 
        ROM_REGION( 0x1000000, "mpeg", 0 ) // MPEG audio data
4154
 
        ROM_LOAD("mpr-19747.18s", 0x000000, 0x400000, CRC(6e895aaa) SHA1(4c67c1e1d58a3034bbd711252a78689db9f235bb) )
4155
 
        ROM_LOAD("mpr-19748.20s", 0x400000, 0x400000, CRC(fcd74de3) SHA1(fd4da4cf40c4342c6263cf22eee5968292a4d2c0) )
4156
 
        ROM_LOAD("mpr-19749.22s", 0x800000, 0x400000, CRC(842ca1eb) SHA1(6ee6b2eb2ea400bdb9c0a9b4a126b4b86886e813) )
4157
 
        ROM_LOAD("mpr-19750.24s", 0xc00000, 0x400000, CRC(cd95d0bf) SHA1(40e2a2980c89049c339fefd48bf7aac79962cd2e) )
4158
 
ROM_END
4159
 
 
4160
 
ROM_START( topskatru ) /* Top Skater Revision A (USA), Model 2C */
4161
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4162
 
        ROM_LOAD32_WORD( "epr-19753a.15", 0x000000, 0x080000, CRC(3b3028de) SHA1(717ebf0ccd87128a24776e618cf15f07aaf48537) )
4163
 
        ROM_LOAD32_WORD( "epr-19754a.16", 0x000002, 0x080000, CRC(17535b98) SHA1(a2329d09821900ec4f867caf1a93759085bd0a62) )
4164
 
 
4165
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4166
 
        ROM_LOAD32_WORD("mpr-19735.11",  0x000000, 0x400000, CRC(8e509266) SHA1(49afc91467f08befaf34e743cbe823de3e3c9d85) )
4167
 
        ROM_LOAD32_WORD("mpr-19736.12",  0x000002, 0x400000, CRC(094e0a0d) SHA1(de2c739f71e51166263446b9f6a566866ab8bee8) )
4168
 
        ROM_LOAD32_WORD("mpr-19737.9",   0x800000, 0x400000, CRC(281a7dde) SHA1(71d5ba434328a81969bfdc71ac1160c5ff3ae9d3) )
4169
 
        ROM_LOAD32_WORD("mpr-19738.10",  0x800002, 0x400000, CRC(f688327e) SHA1(68c9db242ef7e8f98979e968a09e4b093bc5d470) )
4170
 
 
4171
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
4172
 
        ROM_LOAD32_WORD("mpr-19743.29",  0x000000, 0x200000, CRC(d41a41bf) SHA1(a5f6b24e6526d0d2ef9c526c273c018d1e0fed59) )
4173
 
        ROM_LOAD32_WORD("mpr-19744.30",  0x000002, 0x200000, CRC(84f203bf) SHA1(4952b764e6bf6cd735018738c5eff08781ee2315) )
4174
 
 
4175
 
        ROM_REGION( 0x400000, "user2", 0 ) // Models
4176
 
        ROM_LOAD32_WORD("mpr-19741.17",  0x000000, 0x200000, CRC(111a6e29) SHA1(8664059f157626e4bbdcf8357e3d30b37d3c25b8) )
4177
 
        ROM_LOAD32_WORD("mpr-19742.21",  0x000002, 0x200000, CRC(28510aff) SHA1(3e68aec090f36a60b3b70bc90f09e2f9ce088718) )
4178
 
 
4179
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
4180
 
        ROM_LOAD32_WORD("mpr-19740.27",  0x000000, 0x400000, CRC(b20f508b) SHA1(c90fa3b42d87291ea459ccc137f3a2f3eb7efec0) )
4181
 
        ROM_LOAD32_WORD("mpr-19739.25",  0x000002, 0x400000, CRC(8120cfd8) SHA1(a82744bff5dcdfae296c7c3e8c3fbfda26324e85) )
4182
 
 
4183
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4184
 
        ROM_LOAD16_WORD_SWAP("mpr-19759.31", 0x080000,  0x80000, CRC(573530f2) SHA1(7b205085965d6694f8e75e29c4028f7cb6f631ab) )
4185
 
 
4186
 
        ROM_REGION( 0x20000, "cpu3", 0) // DSB program
4187
 
        ROM_LOAD16_WORD_SWAP("mpr-19760.2s", 0x000000,  0x20000, CRC(2e41ca15) SHA1(a302209bfe0f1491dff2da64b32cfaa13c3d3304) )
4188
 
 
4189
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4190
 
        ROM_LOAD16_WORD_SWAP("mpr-19745.32", 0x000000, 0x400000, CRC(7082a0af) SHA1(415f9d0793a697cb1719bbd96370f4a741866527) )
4191
 
        ROM_LOAD16_WORD_SWAP("mpr-19746.34", 0x400000, 0x400000, CRC(657b5977) SHA1(ca76f211d68b6b55678a4d7949bfd2ddef1b1710) )
4192
 
 
4193
 
        ROM_REGION( 0x1000000, "mpeg", 0 ) // MPEG audio data
4194
 
        ROM_LOAD("mpr-19747.18s", 0x000000, 0x400000, CRC(6e895aaa) SHA1(4c67c1e1d58a3034bbd711252a78689db9f235bb) )
4195
 
        ROM_LOAD("mpr-19748.20s", 0x400000, 0x400000, CRC(fcd74de3) SHA1(fd4da4cf40c4342c6263cf22eee5968292a4d2c0) )
4196
 
        ROM_LOAD("mpr-19749.22s", 0x800000, 0x400000, CRC(842ca1eb) SHA1(6ee6b2eb2ea400bdb9c0a9b4a126b4b86886e813) )
4197
 
        ROM_LOAD("mpr-19750.24s", 0xc00000, 0x400000, CRC(cd95d0bf) SHA1(40e2a2980c89049c339fefd48bf7aac79962cd2e) )
4198
 
ROM_END
4199
 
 
4200
 
ROM_START( topskatrj ) /* Top Skater (Japan), Model 2C */
4201
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4202
 
        ROM_LOAD32_WORD( "epr-19751.15", 0x000000, 0x080000, CRC(d615a15f) SHA1(ca998de446c4c423db186696f3478f3daa4f8373) )
4203
 
        ROM_LOAD32_WORD( "epr-19752.16", 0x000002, 0x080000, CRC(42f0ba8b) SHA1(f72f25cbd380918b919c11a7d2051948c8c484db) )
4204
 
 
4205
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4206
 
        ROM_LOAD32_WORD("mpr-19735.11",  0x000000, 0x400000, CRC(8e509266) SHA1(49afc91467f08befaf34e743cbe823de3e3c9d85) )
4207
 
        ROM_LOAD32_WORD("mpr-19736.12",  0x000002, 0x400000, CRC(094e0a0d) SHA1(de2c739f71e51166263446b9f6a566866ab8bee8) )
4208
 
        ROM_LOAD32_WORD("mpr-19737.9",   0x800000, 0x400000, CRC(281a7dde) SHA1(71d5ba434328a81969bfdc71ac1160c5ff3ae9d3) )
4209
 
        ROM_LOAD32_WORD("mpr-19738.10",  0x800002, 0x400000, CRC(f688327e) SHA1(68c9db242ef7e8f98979e968a09e4b093bc5d470) )
4210
 
 
4211
 
        ROM_REGION( 0x800000, "cpu2", 0 ) // TGPx4 program
4212
 
        ROM_LOAD32_WORD("mpr-19743.29",  0x000000, 0x200000, CRC(d41a41bf) SHA1(a5f6b24e6526d0d2ef9c526c273c018d1e0fed59) )
4213
 
        ROM_LOAD32_WORD("mpr-19744.30",  0x000002, 0x200000, CRC(84f203bf) SHA1(4952b764e6bf6cd735018738c5eff08781ee2315) )
4214
 
 
4215
 
        ROM_REGION( 0x400000, "user2", 0 ) // Models
4216
 
        ROM_LOAD32_WORD("mpr-19741.17",  0x000000, 0x200000, CRC(111a6e29) SHA1(8664059f157626e4bbdcf8357e3d30b37d3c25b8) )
4217
 
        ROM_LOAD32_WORD("mpr-19742.21",  0x000002, 0x200000, CRC(28510aff) SHA1(3e68aec090f36a60b3b70bc90f09e2f9ce088718) )
4218
 
 
4219
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
4220
 
        ROM_LOAD32_WORD("mpr-19740.27",  0x000000, 0x400000, CRC(b20f508b) SHA1(c90fa3b42d87291ea459ccc137f3a2f3eb7efec0) )
4221
 
        ROM_LOAD32_WORD("mpr-19739.25",  0x000002, 0x400000, CRC(8120cfd8) SHA1(a82744bff5dcdfae296c7c3e8c3fbfda26324e85) )
4222
 
 
4223
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4224
 
        ROM_LOAD16_WORD_SWAP("mpr-19759.31", 0x080000,  0x80000, CRC(573530f2) SHA1(7b205085965d6694f8e75e29c4028f7cb6f631ab) )
4225
 
 
4226
 
        ROM_REGION( 0x20000, "cpu3", 0) // DSB program
4227
 
        ROM_LOAD16_WORD_SWAP("mpr-19760.2s", 0x000000,  0x20000, CRC(2e41ca15) SHA1(a302209bfe0f1491dff2da64b32cfaa13c3d3304) )
4228
 
 
4229
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4230
 
        ROM_LOAD16_WORD_SWAP("mpr-19745.32", 0x000000, 0x400000, CRC(7082a0af) SHA1(415f9d0793a697cb1719bbd96370f4a741866527) )
4231
 
        ROM_LOAD16_WORD_SWAP("mpr-19746.34", 0x400000, 0x400000, CRC(657b5977) SHA1(ca76f211d68b6b55678a4d7949bfd2ddef1b1710) )
4232
 
 
4233
 
        ROM_REGION( 0x1000000, "mpeg", 0 ) // MPEG audio data
4234
 
        ROM_LOAD("mpr-19747.18s", 0x000000, 0x400000, CRC(6e895aaa) SHA1(4c67c1e1d58a3034bbd711252a78689db9f235bb) )
4235
 
        ROM_LOAD("mpr-19748.20s", 0x400000, 0x400000, CRC(fcd74de3) SHA1(fd4da4cf40c4342c6263cf22eee5968292a4d2c0) )
4236
 
        ROM_LOAD("mpr-19749.22s", 0x800000, 0x400000, CRC(842ca1eb) SHA1(6ee6b2eb2ea400bdb9c0a9b4a126b4b86886e813) )
4237
 
        ROM_LOAD("mpr-19750.24s", 0xc00000, 0x400000, CRC(cd95d0bf) SHA1(40e2a2980c89049c339fefd48bf7aac79962cd2e) )
4238
 
ROM_END
4239
 
 
4240
 
 
4241
 
ROM_START( doaa ) /* Dead or Alive Revision A, Model 2A */
4242
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4243
 
        ROM_LOAD32_WORD("epr-19310a.12", 0x000000, 0x080000, CRC(06486f7a) SHA1(b3e14103570e5f45aed16e1c158e469bc85002ae) )
4244
 
        ROM_LOAD32_WORD("epr-19311a.13", 0x000002, 0x080000, CRC(1be62912) SHA1(dcc2df8e28e1a107867f74248e6ffcac83afe7c0) )
4245
 
 
4246
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4247
 
        ROM_LOAD32_WORD("mpr-19318.11",  0x0000000, 0x400000, CRC(ab431bfe) SHA1(45b5ccf67c91014daf6bf3c4bd8ec372b246e404) )
4248
 
        ROM_LOAD32_WORD("mpr-19319.12",  0x0000002, 0x400000, CRC(c5cb694d) SHA1(448b45d30cc7a71395a49a2c5789989fd7b7b4e7) )
4249
 
        ROM_LOAD32_WORD("mpr-19316.9",   0x0800000, 0x400000, CRC(2d2d1b1a) SHA1(77ce5d8aa98bdbc97ae08a452f584b30d8885cfc) )
4250
 
        ROM_LOAD32_WORD("mpr-19317.10",  0x0800002, 0x400000, CRC(96b17bcf) SHA1(3aa9d2f8afad74b5626ce2cf2d7a86aef8cac80b) )
4251
 
        ROM_LOAD32_WORD("mpr-19314.7",   0x1000000, 0x400000, CRC(a8d963fb) SHA1(6a1680d6380321279b0d701e4b47d4ae712f3b72) )
4252
 
        ROM_LOAD32_WORD("mpr-19315.8",   0x1000002, 0x400000, CRC(90ae5682) SHA1(ec56df14f0847daf9bd0435f785a8946c94d2988) )
4253
 
        ROM_LOAD32_WORD("mpr-19312.5",   0x1800000, 0x200000, CRC(1dcedb10) SHA1(a60fb9e7c0731004d0f0ff28c4cde272b21dd658) )
4254
 
        ROM_RELOAD     (                 0x1c00000, 0x200000 )
4255
 
        ROM_LOAD32_WORD("mpr-19313.6",   0x1800002, 0x200000, CRC(8c63055e) SHA1(9f375b3f4a8884163ffcf364989499f2cd21e18b) )
4256
 
        ROM_RELOAD     (                 0x1c00002, 0x200000 )
4257
 
 
4258
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP data (COPRO sockets)
4259
 
 
4260
 
        ROM_REGION( 0x1800000, "user2", 0 ) // Models
4261
 
        ROM_LOAD32_WORD("mpr-19322.17",  0x0000000, 0x400000, CRC(d0e6ecf0) SHA1(1b87f6337b4286fd738856da899462e7baa92601) )
4262
 
        ROM_LOAD32_WORD("mpr-19325.21",  0x0000002, 0x400000, CRC(7cbe432d) SHA1(8b31e292160b88df9c77b36096914d09ab8b6086) )
4263
 
        ROM_LOAD32_WORD("mpr-19323.18",  0x0800000, 0x400000, CRC(453d3f4a) SHA1(8c0530824bb8ecb007021ee6e93412597bb0ecd6) )
4264
 
        ROM_LOAD32_WORD("mpr-19326.22",  0x0800002, 0x400000, CRC(b976da02) SHA1(a154eb128604aac9e35438d8811971133eab94a1) )
4265
 
        ROM_LOAD32_WORD("mpr-19324.19",  0x1000000, 0x400000, CRC(d972201f) SHA1(1857ffc58697997ee22436586c398eb0c3daba6c) )
4266
 
        ROM_LOAD32_WORD("mpr-19327.23",  0x1000002, 0x400000, CRC(6a75634c) SHA1(8ed74c7afd95fc7a4df0f01a47479b6f44e3073c) )
4267
 
 
4268
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
4269
 
        ROM_LOAD32_WORD("mpr-19321.27", 0x000000, 0x400000, CRC(9c49e845) SHA1(344839640d9814263fa5ed00c2043cd6f18d5cb2) )
4270
 
        ROM_LOAD32_WORD("mpr-19320.25", 0x000002, 0x400000, CRC(190c017f) SHA1(4c3250b9abe39fc5c8fd0fcdb5fb7ea131434516) )
4271
 
 
4272
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4273
 
        ROM_LOAD16_WORD_SWAP("epr-19328.30", 0x080000,  0x80000, CRC(400bdbfb) SHA1(54db969fa54cf3c502d77aa6a6aaeef5d7db9f04) )
4274
 
 
4275
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4276
 
        ROM_LOAD("mpr-19329.31", 0x000000, 0x200000, CRC(8fd2708a) SHA1(7a341b15afa489aa95af70cb34ac3934b1a7d887) )
4277
 
        ROM_LOAD("mpr-19330.32", 0x200000, 0x200000, CRC(0c69787d) SHA1(dc5870cd93da2babe5fc9c03b252fc6ea6e45721) )
4278
 
        ROM_LOAD("mpr-19331.33", 0x400000, 0x200000, CRC(c18ea0b8) SHA1(0f42458829ae85fffcedd42cd9f728a7a3d75f1c) )
4279
 
        ROM_LOAD("mpr-19332.34", 0x600000, 0x200000, CRC(2877f96f) SHA1(00e5677da30527b862e238f10762a5cbfbabde2b) )
4280
 
 
4281
 
        MODEL2_CPU_BOARD
4282
 
        MODEL2A_VID_BOARD
4283
 
ROM_END
4284
 
 
4285
 
ROM_START( doa ) /* Dead or Alive Revision B, Model 2B */
4286
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4287
 
        ROM_LOAD32_WORD("epr-19379b.15", 0x000000, 0x080000, CRC(8a10a944) SHA1(c675a344f74d0118907fb5292495883c0c30c719) )
4288
 
        ROM_LOAD32_WORD("epr-19380b.16", 0x000002, 0x080000, CRC(766c1ec8) SHA1(49250886f66db9fd37d88bc22c8f22046f74f043) )
4289
 
 
4290
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4291
 
        ROM_LOAD32_WORD("mpr-19318.11",  0x0000000, 0x400000, CRC(ab431bfe) SHA1(45b5ccf67c91014daf6bf3c4bd8ec372b246e404) )
4292
 
        ROM_LOAD32_WORD("mpr-19319.12",  0x0000002, 0x400000, CRC(c5cb694d) SHA1(448b45d30cc7a71395a49a2c5789989fd7b7b4e7) )
4293
 
        ROM_LOAD32_WORD("mpr-19316.9",   0x0800000, 0x400000, CRC(2d2d1b1a) SHA1(77ce5d8aa98bdbc97ae08a452f584b30d8885cfc) )
4294
 
        ROM_LOAD32_WORD("mpr-19317.10",  0x0800002, 0x400000, CRC(96b17bcf) SHA1(3aa9d2f8afad74b5626ce2cf2d7a86aef8cac80b) )
4295
 
        ROM_LOAD32_WORD("mpr-19314.7",   0x1000000, 0x400000, CRC(a8d963fb) SHA1(6a1680d6380321279b0d701e4b47d4ae712f3b72) )
4296
 
        ROM_LOAD32_WORD("mpr-19315.8",   0x1000002, 0x400000, CRC(90ae5682) SHA1(ec56df14f0847daf9bd0435f785a8946c94d2988) )
4297
 
        ROM_LOAD32_WORD("mpr-19312.5",   0x1800000, 0x200000, CRC(1dcedb10) SHA1(a60fb9e7c0731004d0f0ff28c4cde272b21dd658) )
4298
 
        ROM_RELOAD     (                 0x1c00000, 0x200000 )
4299
 
        ROM_LOAD32_WORD("mpr-19313.6",   0x1800002, 0x200000, CRC(8c63055e) SHA1(9f375b3f4a8884163ffcf364989499f2cd21e18b) )
4300
 
        ROM_RELOAD     (                 0x1c00002, 0x200000 )
4301
 
 
4302
 
        ROM_REGION( 0x1800000, "user2", 0 ) // Models
4303
 
        ROM_LOAD32_WORD("mpr-19322.17",  0x0000000, 0x400000, CRC(d0e6ecf0) SHA1(1b87f6337b4286fd738856da899462e7baa92601) )
4304
 
        ROM_LOAD32_WORD("mpr-19325.21",  0x0000002, 0x400000, CRC(7cbe432d) SHA1(8b31e292160b88df9c77b36096914d09ab8b6086) )
4305
 
        ROM_LOAD32_WORD("mpr-19323.18",  0x0800000, 0x400000, CRC(453d3f4a) SHA1(8c0530824bb8ecb007021ee6e93412597bb0ecd6) )
4306
 
        ROM_LOAD32_WORD("mpr-19326.22",  0x0800002, 0x400000, CRC(b976da02) SHA1(a154eb128604aac9e35438d8811971133eab94a1) )
4307
 
        ROM_LOAD32_WORD("mpr-19324.19",  0x1000000, 0x400000, CRC(d972201f) SHA1(1857ffc58697997ee22436586c398eb0c3daba6c) )
4308
 
        ROM_LOAD32_WORD("mpr-19327.23",  0x1000002, 0x400000, CRC(6a75634c) SHA1(8ed74c7afd95fc7a4df0f01a47479b6f44e3073c) )
4309
 
 
4310
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
4311
 
        ROM_LOAD32_WORD("mpr-19321.27", 0x000000, 0x400000, CRC(9c49e845) SHA1(344839640d9814263fa5ed00c2043cd6f18d5cb2) )
4312
 
        ROM_LOAD32_WORD("mpr-19320.25", 0x000002, 0x400000, CRC(190c017f) SHA1(4c3250b9abe39fc5c8fd0fcdb5fb7ea131434516) )
4313
 
 
4314
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
4315
 
 
4316
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4317
 
        ROM_LOAD16_WORD_SWAP("epr-19328.30", 0x080000,  0x80000, CRC(400bdbfb) SHA1(54db969fa54cf3c502d77aa6a6aaeef5d7db9f04) )
4318
 
 
4319
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4320
 
        ROM_LOAD("mpr-19329.31", 0x000000, 0x200000, CRC(8fd2708a) SHA1(7a341b15afa489aa95af70cb34ac3934b1a7d887) )
4321
 
        ROM_LOAD("mpr-19330.32", 0x200000, 0x200000, CRC(0c69787d) SHA1(dc5870cd93da2babe5fc9c03b252fc6ea6e45721) )
4322
 
        ROM_LOAD("mpr-19331.33", 0x400000, 0x200000, CRC(c18ea0b8) SHA1(0f42458829ae85fffcedd42cd9f728a7a3d75f1c) )
4323
 
        ROM_LOAD("mpr-19332.34", 0x600000, 0x200000, CRC(2877f96f) SHA1(00e5677da30527b862e238f10762a5cbfbabde2b) )
4324
 
ROM_END
4325
 
 
4326
 
ROM_START( sgt24h ) /* Super GT 24h, Model 2B */
4327
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4328
 
        ROM_LOAD32_WORD("epr-19155.15", 0x000000, 0x080000, CRC(593952fd) SHA1(1fc4afc6e3910cc8adb0688542e61a9efb442e56) )
4329
 
        ROM_LOAD32_WORD("epr-19156.16", 0x000002, 0x080000, CRC(a91fc4ee) SHA1(a37611da0295f7d7e5d2411c3f9b73140d311f74) )
4330
 
 
4331
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4332
 
        ROM_LOAD32_WORD("mpr-19146.11", 0x000000, 0x400000, CRC(d66b5b0f) SHA1(c2a5b83c9041d8f46dfac4a3ff8cfdefb96d02b3) )
4333
 
        ROM_LOAD32_WORD("mpr-19147.12", 0x000002, 0x400000, CRC(d5558f48) SHA1(c9f40328d6974b7767fa6ba719d0d2b7a173c210) )
4334
 
        ROM_LOAD32_WORD("mpr-19148.9",  0x800000, 0x400000, CRC(a14c86db) SHA1(66cd8672c00e4e2572de7c5648de595674ffa8f8) )
4335
 
        ROM_LOAD32_WORD("mpr-19149.10", 0x800002, 0x400000, CRC(94ef5849) SHA1(3e1748dc5e61c93eedbf0ca6b1946a30be722403) )
4336
 
 
4337
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
4338
 
        ROM_LOAD32_WORD("mpr-19150.17", 0x000000, 0x400000, CRC(e0ad870e) SHA1(3429d9f9434d75ddb5fa05d4b493828adfe826a4) )
4339
 
        ROM_LOAD32_WORD("mpr-19151.21", 0x000002, 0x400000, CRC(e2a1b125) SHA1(cc5c2d9ab8a01f52e66969464f53ae3cefca6a09) )
4340
 
 
4341
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures
4342
 
        ROM_LOAD32_WORD("mpr-19153.27", 0x000000, 0x200000, CRC(136adfd0) SHA1(70ce4e609c8b003ff04518044c18d29089e6a353) )
4343
 
        ROM_LOAD32_WORD("mpr-19152.25", 0x000002, 0x200000, CRC(363769a2) SHA1(51b2f11a01fb72e151025771f8a8496993e605c2) )
4344
 
 
4345
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
4346
 
 
4347
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
4348
 
        ROM_LOAD16_WORD_SWAP("epr-18643a.7", 0x000000,  0x20000, CRC(b5e048ec) SHA1(8182e05a2ffebd590a936c1359c81e60caa79c2a) )
4349
 
 
4350
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4351
 
        ROM_LOAD16_WORD_SWAP("epr-19157.31", 0x080000,  0x80000, CRC(8ffea0cf) SHA1(439e784081329db2fe03419681150f3216f4ccff) )
4352
 
 
4353
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4354
 
        ROM_LOAD("mpr-19154.32", 0x000000, 0x400000, CRC(7cd9e679) SHA1(b9812c4f3042f95febc96bcdd46e3b0724ad4b4f) )
4355
 
ROM_END
4356
 
 
4357
 
ROM_START( von ) /* Virtual On Cyber Troopers Revision B (US), Model 2B */
4358
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4359
 
        ROM_LOAD32_WORD("epr-18828b.15", 0x000000, 0x080000, CRC(6499cc59) SHA1(8289be295f021acbf0c903513ba97ae7de50dedb) )
4360
 
        ROM_LOAD32_WORD("epr-18829b.16", 0x000002, 0x080000, CRC(0053b10f) SHA1(b89cc814b02b4ab5e37c75ee1a9cf57b88b63053) )
4361
 
        ROM_LOAD32_WORD("epr-18666.13",  0x100000, 0x080000, CRC(66edb432) SHA1(b67131b0158a58138380734dd5b9394b70010026) )
4362
 
        ROM_LOAD32_WORD("epr-18667.14",  0x100002, 0x080000, CRC(b593d31f) SHA1(1e9f23f4052ab1b0275307cc80e51352f13bc319) )
4363
 
 
4364
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4365
 
        ROM_LOAD32_WORD("mpr-18648.11",  0x000000, 0x400000, CRC(2edbe489) SHA1(ded2e4b295be08970d13c387818c570c3afe8109) )
4366
 
        ROM_LOAD32_WORD("mpr-18649.12",  0x000002, 0x400000, CRC(e68c5aa6) SHA1(cdee1ba9247eda4282442d0522f8de7d7c86e1e6) )
4367
 
        ROM_LOAD32_WORD("mpr-18650.9",   0x800000, 0x400000, CRC(89a855b9) SHA1(5096db1da1f7e175000e89fca2a1dd3fd53030ea) )
4368
 
        ROM_LOAD32_WORD("mpr-18651.10",  0x800002, 0x400000, CRC(f4c23107) SHA1(f65984614111b12dd414db80751efe64fcf5ef16) )
4369
 
 
4370
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
4371
 
        ROM_LOAD32_WORD("mpr-18662.29",  0x000000, 0x200000, CRC(a33d3335) SHA1(991bbe9dcbef8bfa96682e9d142623fc9b7c0879) )
4372
 
        ROM_LOAD32_WORD("mpr-18663.30",  0x000002, 0x200000, CRC(ea74a641) SHA1(a684e13c0afe2ef3f3108ae9b73389121368fc4e) )
4373
 
 
4374
 
        ROM_REGION( 0x2000000, "user2", 0 ) // Models
4375
 
        ROM_LOAD32_WORD("mpr-18654.17",  0x000000, 0x400000, CRC(6a0caf29) SHA1(9f009f44e62ae0f9dec7a34a163bc186d1c4cbbd) )
4376
 
        ROM_LOAD32_WORD("mpr-18655.21",  0x000002, 0x400000, CRC(a4293e78) SHA1(af512c994bedbdaf3a5eeed607e771dcd87810fc) )
4377
 
        ROM_LOAD32_WORD("mpr-18656.18",  0x800000, 0x400000, CRC(b4f51e76) SHA1(eb71ada331576f2a7219d238ea07a61bcbf6381a) )
4378
 
        ROM_LOAD32_WORD("mpr-18657.22",  0x800002, 0x400000, CRC(a9be4674) SHA1(a918c2a3de78a08104480097edfb9d6aeaeda873) )
4379
 
 
4380
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4381
 
        ROM_LOAD32_WORD("mpr-18660.27",  0x000000, 0x200000, CRC(e53663e5) SHA1(0a4908be654bad4f00d7d58f0e42f631996911c9) )
4382
 
        ROM_LOAD32_WORD("mpr-18658.25",  0x000002, 0x200000, CRC(3d0fcd01) SHA1(c8626c879bfcf7abd095cac5dc03a04ae8629423) )
4383
 
        ROM_LOAD32_WORD("mpr-18661.28",  0x800000, 0x200000, CRC(52b50410) SHA1(64ea7b2f86745954e0b8a15d71203444705240a2) )
4384
 
        ROM_LOAD32_WORD("mpr-18659.26",  0x800002, 0x200000, CRC(27aa8ae2) SHA1(e9b756e5b4b1c19e52e47af03c773fee544be420) )
4385
 
 
4386
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4387
 
        ROM_LOAD16_WORD_SWAP("epr-18643a.7", 0x000000,  0x20000, CRC(b5e048ec) SHA1(8182e05a2ffebd590a936c1359c81e60caa79c2a) )
4388
 
 
4389
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4390
 
        ROM_LOAD16_WORD_SWAP("epr-18670.31", 0x080000,  0x80000, CRC(3e715f76) SHA1(4fd997e379a8cdb94ec3b1986b3ab443fc6fa12a) )
4391
 
 
4392
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4393
 
        ROM_LOAD("mpr-18652.32", 0x000000, 0x400000, CRC(037eee53) SHA1(e592f9e97abe0a7bc9009d8327b93da9bc43749c))
4394
 
        ROM_LOAD("mpr-18653.34", 0x400000, 0x400000, CRC(9ec3e7bf) SHA1(197bc8adc823e93128c1cebf69361a7c7297f808))
4395
 
ROM_END
4396
 
 
4397
 
 
4398
 
ROM_START( vonj ) /* Virtual On Cyber Troopers Revision B (Japan), Model 2B */
4399
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4400
 
        ROM_LOAD32_WORD("epr-18664b.15", 0x000000, 0x080000, CRC(27d0172c) SHA1(f3bcae9898c7d656eccb4d2546c9bb93daaefbb7) )
4401
 
        ROM_LOAD32_WORD("epr-18665b.16", 0x000002, 0x080000, CRC(2f0142ee) SHA1(73f2a19a519ced8e0a1ab5cf69a4bf9d9841e288) )
4402
 
        ROM_LOAD32_WORD("epr-18666.13",  0x100000, 0x080000, CRC(66edb432) SHA1(b67131b0158a58138380734dd5b9394b70010026) )
4403
 
        ROM_LOAD32_WORD("epr-18667.14",  0x100002, 0x080000, CRC(b593d31f) SHA1(1e9f23f4052ab1b0275307cc80e51352f13bc319) )
4404
 
 
4405
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4406
 
        ROM_LOAD32_WORD("mpr-18648.11", 0x000000, 0x400000, CRC(2edbe489) SHA1(ded2e4b295be08970d13c387818c570c3afe8109) )
4407
 
        ROM_LOAD32_WORD("mpr-18649.12", 0x000002, 0x400000, CRC(e68c5aa6) SHA1(cdee1ba9247eda4282442d0522f8de7d7c86e1e6) )
4408
 
        ROM_LOAD32_WORD("mpr-18650.9",  0x800000, 0x400000, CRC(89a855b9) SHA1(5096db1da1f7e175000e89fca2a1dd3fd53030ea) )
4409
 
        ROM_LOAD32_WORD("mpr-18651.10", 0x800002, 0x400000, CRC(f4c23107) SHA1(f65984614111b12dd414db80751efe64fcf5ef16) )
4410
 
 
4411
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
4412
 
        ROM_LOAD32_WORD("mpr-18662.29", 0x000000, 0x200000, CRC(a33d3335) SHA1(991bbe9dcbef8bfa96682e9d142623fc9b7c0879) )
4413
 
        ROM_LOAD32_WORD("mpr-18663.30", 0x000002, 0x200000, CRC(ea74a641) SHA1(a684e13c0afe2ef3f3108ae9b73389121368fc4e) )
4414
 
 
4415
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4416
 
        ROM_LOAD32_WORD("mpr-18654.17", 0x000000, 0x400000, CRC(6a0caf29) SHA1(9f009f44e62ae0f9dec7a34a163bc186d1c4cbbd) )
4417
 
        ROM_LOAD32_WORD("mpr-18655.21", 0x000002, 0x400000, CRC(a4293e78) SHA1(af512c994bedbdaf3a5eeed607e771dcd87810fc) )
4418
 
        ROM_LOAD32_WORD("mpr-18656.18", 0x800000, 0x400000, CRC(b4f51e76) SHA1(eb71ada331576f2a7219d238ea07a61bcbf6381a) )
4419
 
        ROM_LOAD32_WORD("mpr-18657.22", 0x800002, 0x400000, CRC(a9be4674) SHA1(a918c2a3de78a08104480097edfb9d6aeaeda873) )
4420
 
 
4421
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4422
 
        ROM_LOAD32_WORD("mpr-18660.27", 0x000000, 0x200000, CRC(e53663e5) SHA1(0a4908be654bad4f00d7d58f0e42f631996911c9) )
4423
 
        ROM_LOAD32_WORD("mpr-18658.25", 0x000002, 0x200000, CRC(3d0fcd01) SHA1(c8626c879bfcf7abd095cac5dc03a04ae8629423) )
4424
 
        ROM_LOAD32_WORD("mpr-18661.28", 0x800000, 0x200000, CRC(52b50410) SHA1(64ea7b2f86745954e0b8a15d71203444705240a2) )
4425
 
        ROM_LOAD32_WORD("mpr-18659.26", 0x800002, 0x200000, CRC(27aa8ae2) SHA1(e9b756e5b4b1c19e52e47af03c773fee544be420) )
4426
 
 
4427
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4428
 
        ROM_LOAD16_WORD_SWAP("epr-18643a.7", 0x000000,  0x20000, CRC(b5e048ec) SHA1(8182e05a2ffebd590a936c1359c81e60caa79c2a) )
4429
 
 
4430
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4431
 
        ROM_LOAD16_WORD_SWAP("epr-18670.31", 0x080000,  0x80000, CRC(3e715f76) SHA1(4fd997e379a8cdb94ec3b1986b3ab443fc6fa12a) )
4432
 
 
4433
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4434
 
        ROM_LOAD("mpr-18652.32", 0x000000, 0x400000, CRC(037eee53) SHA1(e592f9e97abe0a7bc9009d8327b93da9bc43749c) )
4435
 
        ROM_LOAD("mpr-18653.34", 0x400000, 0x400000, CRC(9ec3e7bf) SHA1(197bc8adc823e93128c1cebf69361a7c7297f808) )
4436
 
ROM_END
4437
 
 
4438
 
ROM_START( vstriker ) /* Virtua Striker Revision A, Model 2B */
4439
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4440
 
        ROM_LOAD32_WORD("epr-18068a.15",  0x000000, 0x020000, CRC(afc69b54) SHA1(2127bde1de3cd6663c31cf2126847815234e09a4) )
4441
 
        ROM_LOAD32_WORD("epr-18069a.16",  0x000002, 0x020000, CRC(0243250c) SHA1(3cbeac09d503a19c5950cf70e3b329f791acfa13) )
4442
 
        ROM_LOAD32_WORD("epr-18066a.13",  0x040000, 0x020000, CRC(e658b33a) SHA1(33266e6372e73f670688f58e51081ec5a7deec11) )
4443
 
        ROM_LOAD32_WORD("epr-18067a.14",  0x040002, 0x020000, CRC(49e94047) SHA1(56c8d1a365985886dffeddf24d692ce6b377760a) )
4444
 
 
4445
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4446
 
        ROM_LOAD32_WORD("mpr-18055.11", 0x000000, 0x200000, CRC(5aba9fc0) SHA1(40d45af7e58fa48b6afa85071c2bd1d4b5b5ffa5) )
4447
 
        ROM_LOAD32_WORD("mpr-18056.12", 0x000002, 0x200000, CRC(017f0c55) SHA1(744e5a02abd82fbeb875c5cd30c5543570140cff) )
4448
 
        ROM_LOAD32_WORD("mpr-18053.9",  0x400000, 0x200000, CRC(46c770c8) SHA1(000e9edfed49cc3dcc136f80e044dcd2b42378ce) )
4449
 
        ROM_LOAD32_WORD("mpr-18054.10", 0x400002, 0x200000, CRC(437af66e) SHA1(c5afa62100a93e160aa96b327a260cc7fee51fdc) )
4450
 
        ROM_LOAD32_WORD("epr-18070a.7", 0x800000, 0x080000, CRC(1961e2fc) SHA1(12ead9b782e092346b7cd5a7343b302f546fe066) )
4451
 
        ROM_LOAD32_WORD("epr-18071a.8", 0x800002, 0x080000, CRC(b2492dca) SHA1(3b35522ab8e1fdfa327245fef797e3d7c0cceb85) )
4452
 
 
4453
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
4454
 
        ROM_LOAD32_WORD("mpr-18057.17", 0x000000, 0x200000, CRC(890d8806) SHA1(fe73e4ea310e13b172e49d39c7eafba8f9052e67) )
4455
 
        ROM_LOAD32_WORD("mpr-18059.21", 0x000002, 0x200000, CRC(c5cdf534) SHA1(fd127d33bc5a78b81aaa7d5886beca2192a62867) )
4456
 
        ROM_LOAD32_WORD("mpr-18058.18", 0x400000, 0x200000, CRC(d4cbdf7c) SHA1(fe783c5bc94c2581fd990f0f0a705bdc5c05a386) )
4457
 
        ROM_LOAD32_WORD("mpr-18060.22", 0x400002, 0x200000, CRC(93d5c95f) SHA1(bca83f024d85c97ca59fae8d9097fc510ec0fc7f) )
4458
 
 
4459
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures
4460
 
        ROM_LOAD32_WORD("mpr-18062.27", 0x000000, 0x200000, CRC(126e7de3) SHA1(0810364934dee8d5035cef623d01dfbacc64bf2b) )
4461
 
        ROM_LOAD32_WORD("mpr-18061.25", 0x000002, 0x200000, CRC(c37f1c67) SHA1(c917046c2d98af17c59ceb0ea4f89d215cc0ead8) )
4462
 
 
4463
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
4464
 
 
4465
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4466
 
        ROM_LOAD16_WORD_SWAP("epr-18072.31", 0x080000,  0x20000, CRC(73eabb58) SHA1(4f6d70d6e0d7b469c5f2527efb08f208f4aa017e) )
4467
 
 
4468
 
        ROM_REGION( 0x600000, "scsp", 0 ) // Samples
4469
 
        ROM_LOAD("mpr-18063.32", 0x000000, 0x200000, CRC(b74d7c8a) SHA1(da0bc8b3822b01087b6f9de0446cab1eb6617e8e) )
4470
 
        ROM_LOAD("mpr-18064.33", 0x200000, 0x200000, CRC(783b9910) SHA1(108b23bb57e3133c555083aa4f9bc573ac6e3152) )
4471
 
        ROM_LOAD("mpr-18065.34", 0x400000, 0x200000, CRC(046b55fe) SHA1(2db7eabf4318881a67b10dba24f6f0cd68940ace) )
4472
 
ROM_END
4473
 
 
4474
 
ROM_START( vstrikero ) /* Virtua Striker, Model 2B */
4475
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4476
 
        ROM_LOAD32_WORD("epr-18068.15", 0x000000, 0x020000, CRC(74a47795) SHA1(3ba34bd467e11e768eda95ff345f5993fb9d6bca) )
4477
 
        ROM_LOAD32_WORD("epr-18069.16", 0x000002, 0x020000, CRC(f6c3fcbf) SHA1(84bf16fc2a441cb724f4bc635a4c4209c240cfbf) )
4478
 
        ROM_LOAD32_WORD("epr-18066.13", 0x040000, 0x020000, CRC(e774229e) SHA1(0ff20aa3e030df869767bb9614565acc9f3fe3b1) )
4479
 
        ROM_LOAD32_WORD("epr-18067.14", 0x040002, 0x020000, CRC(7dfd950c) SHA1(d5eff8aff37fb0ef3c7f9d8bfca8460213b0f0a7) )
4480
 
 
4481
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4482
 
        ROM_LOAD32_WORD("mpr-18055.11", 0x000000, 0x200000, CRC(5aba9fc0) SHA1(40d45af7e58fa48b6afa85071c2bd1d4b5b5ffa5) )
4483
 
        ROM_LOAD32_WORD("mpr-18056.12", 0x000002, 0x200000, CRC(017f0c55) SHA1(744e5a02abd82fbeb875c5cd30c5543570140cff) )
4484
 
        ROM_LOAD32_WORD("mpr-18053.9",  0x400000, 0x200000, CRC(46c770c8) SHA1(000e9edfed49cc3dcc136f80e044dcd2b42378ce) )
4485
 
        ROM_LOAD32_WORD("mpr-18054.10", 0x400002, 0x200000, CRC(437af66e) SHA1(c5afa62100a93e160aa96b327a260cc7fee51fdc) )
4486
 
        ROM_LOAD32_WORD("epr-18070.7",  0x800000, 0x080000, CRC(f52e4db5) SHA1(731452284c45329701258ee9fb8b7df6514fbba1) )
4487
 
        ROM_LOAD32_WORD("epr-18071.8",  0x800002, 0x080000, CRC(1be63a7d) SHA1(c678f1f42de86cc968c3f823994d36c74b2e55fd) )
4488
 
 
4489
 
        ROM_REGION( 0x800000, "user2", 0 ) // Models
4490
 
        ROM_LOAD32_WORD("mpr-18057.17", 0x000000, 0x200000, CRC(890d8806) SHA1(fe73e4ea310e13b172e49d39c7eafba8f9052e67) )
4491
 
        ROM_LOAD32_WORD("mpr-18059.21", 0x000002, 0x200000, CRC(c5cdf534) SHA1(fd127d33bc5a78b81aaa7d5886beca2192a62867) )
4492
 
        ROM_LOAD32_WORD("mpr-18058.18", 0x400000, 0x200000, CRC(d4cbdf7c) SHA1(fe783c5bc94c2581fd990f0f0a705bdc5c05a386) )
4493
 
        ROM_LOAD32_WORD("mpr-18060.22", 0x400002, 0x200000, CRC(93d5c95f) SHA1(bca83f024d85c97ca59fae8d9097fc510ec0fc7f) )
4494
 
 
4495
 
        ROM_REGION( 0x400000, "user3", 0 ) // Textures
4496
 
        ROM_LOAD32_WORD("mpr-18062.27", 0x000000, 0x200000, CRC(126e7de3) SHA1(0810364934dee8d5035cef623d01dfbacc64bf2b) )
4497
 
        ROM_LOAD32_WORD("mpr-18061.25", 0x000002, 0x200000, CRC(c37f1c67) SHA1(c917046c2d98af17c59ceb0ea4f89d215cc0ead8) )
4498
 
 
4499
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
4500
 
 
4501
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4502
 
        ROM_LOAD16_WORD_SWAP("epr-18072.31", 0x080000,  0x20000, CRC(73eabb58) SHA1(4f6d70d6e0d7b469c5f2527efb08f208f4aa017e) )
4503
 
 
4504
 
        ROM_REGION( 0x600000, "scsp", 0 ) // Samples
4505
 
        ROM_LOAD("mpr-18063.32", 0x000000, 0x200000, CRC(b74d7c8a) SHA1(da0bc8b3822b01087b6f9de0446cab1eb6617e8e) )
4506
 
        ROM_LOAD("mpr-18064.33", 0x200000, 0x200000, CRC(783b9910) SHA1(108b23bb57e3133c555083aa4f9bc573ac6e3152) )
4507
 
        ROM_LOAD("mpr-18065.34", 0x400000, 0x200000, CRC(046b55fe) SHA1(2db7eabf4318881a67b10dba24f6f0cd68940ace) )
4508
 
ROM_END
4509
 
 
4510
 
ROM_START( dynabb ) /* Dynamite Baseball '97 Revision A, Model 2B */
4511
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4512
 
        ROM_LOAD32_WORD("epr-19833a.15", 0x000000, 0x080000, CRC(d99ed1b2) SHA1(b04613d564c04c35feafccad56ed85810d894185) )
4513
 
        ROM_LOAD32_WORD("epr-19834a.16", 0x000002, 0x080000, CRC(24192bb1) SHA1(c535ab4b38ffd42f03eed6a5a1706e867eaccd67) )
4514
 
        ROM_LOAD32_WORD("epr-19831a.13", 0x100000, 0x080000, CRC(0527ea40) SHA1(8e80e2627aafe395d8ced4a97ba50cd9a781fb45) )
4515
 
        ROM_LOAD32_WORD("epr-19832a.14", 0x100002, 0x080000, CRC(2f380a40) SHA1(d770dfd70aa14dcc716aa47e6cbf26f32649f294) )
4516
 
 
4517
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4518
 
        ROM_LOAD32_WORD("mpr-19841.11", 0x0000000, 0x400000, CRC(989309af) SHA1(d527f46865d00a91d5b38a93dc38baf62f372cb1) )
4519
 
        ROM_LOAD32_WORD("mpr-19842.12", 0x0000002, 0x400000, CRC(eec54070) SHA1(29ed4a005b52f6e16492998183ec4e5f7475022b) )
4520
 
        ROM_LOAD32_WORD("mpr-19839.9",  0x0800000, 0x400000, CRC(d5a74cf4) SHA1(ddea9cfc0a14461448acae2eed2092829ef3b418) )
4521
 
        ROM_LOAD32_WORD("mpr-19840.10", 0x0800002, 0x400000, CRC(45704e95) SHA1(2a325ee39f9d719399040ed2a41123bcf0c6f385) )
4522
 
        ROM_LOAD32_WORD("mpr-19837.7",  0x1000000, 0x400000, CRC(c02187d9) SHA1(1da108a2ec00e3fc472b1a819655aff8c679051d) )
4523
 
        ROM_LOAD32_WORD("mpr-19838.8",  0x1000002, 0x400000, CRC(546b61cd) SHA1(0cc0edd0a9c288143168d63a7d48d0fbfa64d8bf) )
4524
 
        ROM_LOAD32_WORD("mpr-19835.5",  0x1800000, 0x400000, CRC(a3b0a37c) SHA1(dcde1946008ab86c7fca212ec57c1cc468f30c58) )
4525
 
        ROM_LOAD32_WORD("mpr-19836.6",  0x1800002, 0x400000, CRC(d70a32aa) SHA1(fd56bb284eb66e6c078b386a0db1c2b10dc1dd4a) )
4526
 
 
4527
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4528
 
        ROM_LOAD32_WORD("mpr-19843.17", 0x000000, 0x400000, CRC(019bc583) SHA1(8889a9438d8f3ea50058372ad03ebd4653f23313) )
4529
 
        ROM_LOAD32_WORD("mpr-19845.21", 0x000002, 0x400000, CRC(2d23e73a) SHA1(63e5859518172f88a5ba98b69309d4162c233cf0) )
4530
 
        ROM_LOAD32_WORD("mpr-19844.18", 0x800000, 0x400000, CRC(150198d6) SHA1(3ea5c3e41eb95e715860619f771bc580c91b095f) )
4531
 
        ROM_LOAD32_WORD("mpr-19846.22", 0x800002, 0x400000, CRC(fe53cd17) SHA1(58eab07976972917c345a8d3a50ff1e96e5fa798) )
4532
 
 
4533
 
        ROM_REGION( 0x800000, "user3", 0 ) // Textures
4534
 
        ROM_LOAD32_WORD("mpr-19848.27", 0x0000000, 0x400000, CRC(4c0526b7) SHA1(e8db7125be8a052e41a00c69cc08ca0d75b3b96f) )
4535
 
        ROM_LOAD32_WORD("mpr-19847.25", 0x0000002, 0x400000, CRC(fe55edbd) SHA1(b0b6135b23349d7d6ae007002d8df83748cab7b1) )
4536
 
 
4537
 
        ROM_REGION( 0x800000, "user5", ROMREGION_ERASE00 ) // Coprocessor Data ROM
4538
 
 
4539
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4540
 
        ROM_LOAD16_WORD_SWAP("epr-19849.31", 0x080000,  0x80000, CRC(b0d5bff0) SHA1(1fb824adaf3ed330a8039be726a87eb85c00abd7) )
4541
 
 
4542
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4543
 
        ROM_LOAD("mpr-19880.32", 0x000000, 0x200000, CRC(e1fd27bf) SHA1(a7189ad398138a91f96b192cb7c112c0301dcda4) )
4544
 
        ROM_LOAD("mpr-19850.33", 0x200000, 0x200000, CRC(dc644077) SHA1(8765bdb1d471dbeea065a97ae131f2d8f78aa13d) )
4545
 
        ROM_LOAD("mpr-19851.34", 0x400000, 0x200000, CRC(cfda4efd) SHA1(14d55f127da6673c538c2ef9be34a4e02ca449f3) )
4546
 
        ROM_LOAD("mpr-19853.35", 0x600000, 0x200000, CRC(cfc64857) SHA1(cf51fafb3d45bf799b9ccb407bee862e15c95981) )
4547
 
ROM_END
4548
 
 
4549
 
ROM_START( fvipers ) /* Fighting Vipers Revision D, Model 2B */
4550
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4551
 
        ROM_LOAD32_WORD("epr-18606d.15", 0x000000, 0x020000, CRC(7334de7d) SHA1(d10355198a3f62b503701f44dc49bfe018c787d1) )
4552
 
        ROM_LOAD32_WORD("epr-18607d.16", 0x000002, 0x020000, CRC(700d2ade) SHA1(656e25a6389f04f7fb9099f0b41fb03fa645a2f0) )
4553
 
        ROM_LOAD32_WORD("epr-18604d.13", 0x040000, 0x020000, CRC(704fdfcf) SHA1(52b6ae90231d40a3ece133debaeb210fc36c6fcb) )
4554
 
        ROM_LOAD32_WORD("epr-18605d.14", 0x040002, 0x020000, CRC(7dddf81f) SHA1(3e0da0eaf1f98dbbd4ca5f78c04052b347b234b2) )
4555
 
 
4556
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4557
 
        ROM_LOAD32_WORD("mpr-18614.11",    0x0000000, 0x400000, CRC(0ebc899f) SHA1(49c80b11b207cba4ec10fbb7cc140f3a5b039e82) )
4558
 
        ROM_LOAD32_WORD("mpr-18615.12",    0x0000002, 0x400000, CRC(018abdb7) SHA1(59e5b6378404e10ace4f3675428d61d3ae9d1963) )
4559
 
        ROM_LOAD32_WORD("mpr-18612.9",     0x0800000, 0x400000, CRC(1f174cd1) SHA1(89b56dd2f350edd093dc06f4cc258652c26b1d45) )
4560
 
        ROM_LOAD32_WORD("mpr-18613.10",    0x0800002, 0x400000, CRC(f057cdf2) SHA1(e16d5de2a00670aba4fbe0dc88ccf317de9842be) )
4561
 
        ROM_LOAD32_WORD("epr-18610d.7",    0x1000000, 0x080000, CRC(a1871703) SHA1(8d7b362a8fd9d63f5cea2f3fab97e5fe3fa30d87) )
4562
 
        ROM_LOAD32_WORD("epr-18611d.8",    0x1000002, 0x080000, CRC(39a75fee) SHA1(c962805f03e2503dd1671ba3e906c6e306a92e48) )
4563
 
        ROM_COPY( "user1", 0x1000000, 0x1100000, 0x100000 ) // rgn,srcoffset,offset,length.
4564
 
        ROM_COPY( "user1", 0x1000000, 0x1200000, 0x100000 )
4565
 
        ROM_COPY( "user1", 0x1000000, 0x1300000, 0x100000 )
4566
 
        ROM_COPY( "user1", 0x1000000, 0x1400000, 0x100000 )
4567
 
        ROM_COPY( "user1", 0x1000000, 0x1500000, 0x100000 )
4568
 
        ROM_COPY( "user1", 0x1000000, 0x1600000, 0x100000 )
4569
 
        ROM_COPY( "user1", 0x1000000, 0x1700000, 0x100000 )
4570
 
        ROM_LOAD32_WORD("epr-18608d.5",    0x1800000, 0x080000, CRC(5bc11881) SHA1(97ce5faf9719cb02dd3a15d47245cc4634f08fcb) )
4571
 
        ROM_LOAD32_WORD("epr-18609d.6",    0x1800002, 0x080000, CRC(cd426035) SHA1(94c85a656c86bc4880db6bff2ef795ec30f62f39) )
4572
 
        ROM_COPY( "user1", 0x1800000, 0x1900000, 0x100000 ) // rgn,srcoffset,offset,length.
4573
 
        ROM_COPY( "user1", 0x1800000, 0x1a00000, 0x100000 )
4574
 
        ROM_COPY( "user1", 0x1800000, 0x1b00000, 0x100000 )
4575
 
        ROM_COPY( "user1", 0x1800000, 0x1c00000, 0x100000 )
4576
 
        ROM_COPY( "user1", 0x1800000, 0x1d00000, 0x100000 )
4577
 
        ROM_COPY( "user1", 0x1800000, 0x1e00000, 0x100000 )
4578
 
        ROM_COPY( "user1", 0x1800000, 0x1f00000, 0x100000 )
4579
 
 
4580
 
        ROM_REGION( 0x800000, "user5", 0 ) // Coprocessor Data ROM
4581
 
        ROM_LOAD32_WORD("mpr-18622.29", 0x000000, 0x200000, CRC(c74d99e3) SHA1(9914be9925b86af6af670745b5eba3a9e4f24af9) )
4582
 
        ROM_LOAD32_WORD("mpr-18623.30", 0x000002, 0x200000, CRC(746ae931) SHA1(a6f0f589ad174a34493ee24dc0cb509ead3aed70) )
4583
 
 
4584
 
        ROM_REGION( 0xc00000, "user2", 0 ) // Models
4585
 
        ROM_LOAD32_WORD("mpr-18616.17", 0x000000, 0x200000, CRC(15a239be) SHA1(1a33c48f99eed20da4b622219d21ec5995acc9aa) )
4586
 
        ROM_LOAD32_WORD("mpr-18619.21", 0x000002, 0x200000, CRC(9d5e8e2b) SHA1(f79ae0a7b966ddb0948b464d233845d4f362a2e7) )
4587
 
        ROM_LOAD32_WORD("mpr-18617.18", 0x400000, 0x200000, CRC(a62cab7d) SHA1(f20a545148f2a1d6f4f1c897f1ed82ad17429dce) )
4588
 
        ROM_LOAD32_WORD("mpr-18620.22", 0x400002, 0x200000, CRC(4d432afd) SHA1(30a1ef1e309a163b2d8756810fc33debf069141c) )
4589
 
        ROM_LOAD32_WORD("mpr-18618.19", 0x800000, 0x200000, CRC(adab589f) SHA1(67818ec4185da17f1549fb3a125cade267a46a48) )
4590
 
        ROM_LOAD32_WORD("mpr-18621.23", 0x800002, 0x200000, CRC(f5eeaa95) SHA1(38d7019afcef6dbe292354d717fd49da511cbc2b) )
4591
 
 
4592
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4593
 
        ROM_LOAD32_WORD("mpr-18626.27", 0x000000, 0x200000, CRC(9df0a961) SHA1(d8fb4bbbdc00303330047be380a79da7838d4fd5) )
4594
 
        ROM_LOAD32_WORD("mpr-18624.25", 0x000002, 0x200000, CRC(1d74433e) SHA1(5b6d2d17609ae741546d99d40f575bb24d62b5d3) )
4595
 
        ROM_LOAD32_WORD("mpr-18627.28", 0x800000, 0x200000, CRC(946175a0) SHA1(8b6e5e1342f98c9c6f2f7d61e843275d244f331a) )
4596
 
        ROM_LOAD32_WORD("mpr-18625.26", 0x800002, 0x200000, CRC(182fd572) SHA1(b09a682eff7e835ff8c33aaece12f3727a91dd5e) )
4597
 
 
4598
 
        ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
4599
 
        ROM_LOAD16_WORD_SWAP("epr-18628.31", 0x080000,  0x80000, CRC(aa7dd79f) SHA1(d8bd1485273652d7c2a303bbdcdf607d3b530283) )
4600
 
 
4601
 
        ROM_REGION( 0x800000, "scsp", 0 ) // Samples
4602
 
        ROM_LOAD("mpr-18629.32", 0x000000, 0x200000, CRC(5d0006cc) SHA1(f6d2552ffc5473836aafb06735b62f65ef8f5ef5) )
4603
 
        ROM_LOAD("mpr-18630.33", 0x200000, 0x200000, CRC(9d405615) SHA1(7e7ffbb4ec080a0815c6ca49b9d8efe1f676203b) )
4604
 
        ROM_LOAD("mpr-18631.34", 0x400000, 0x200000, CRC(9dae5b45) SHA1(055ac989eafb81749326520d0be264f7a984c627) )
4605
 
        ROM_LOAD("mpr-18632.35", 0x600000, 0x200000, CRC(39da6805) SHA1(9e9523b7c2bc50f869d062f80955da1281951299) )
4606
 
ROM_END
4607
 
 
4608
 
ROM_START( daytona ) /* Daytona USA (Japan, Revision A), Original Model 2 w/Model 1 sound board */
4609
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4610
 
        ROM_LOAD32_WORD("epr-16722a.12", 0x000000, 0x020000, CRC(48b94318) SHA1(a476a9a3531beef760c88c9634ed4a7d270e8ee7) )
4611
 
        ROM_LOAD32_WORD("epr-16723a.13", 0x000002, 0x020000, CRC(8af8b32d) SHA1(2039ec1f8da524176fcf85473c10a8b6e49e139a) )
4612
 
 
4613
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4614
 
        ROM_LOAD32_WORD("mpr-16528.10",   0x000000, 0x200000, CRC(9ce591f6) SHA1(e22fc8a70b533f7a6191f5952c581fb8f9627906) )
4615
 
        ROM_LOAD32_WORD("mpr-16529.11",   0x000002, 0x200000, CRC(f7095eaf) SHA1(da3c922f950dd730ea348eae12aa1cb69cee9a58) )
4616
 
        ROM_LOAD32_WORD("mpr-16808.8",    0x400000, 0x200000, CRC(44f1f5a0) SHA1(343866a6e2187a8ebc17f6727080f9f2f9ac9200) )
4617
 
        ROM_LOAD32_WORD("mpr-16809.9",    0x400002, 0x200000, CRC(37a2dd12) SHA1(8192d8698d6bd52ee11cc28917aff5840c447627) )
4618
 
        ROM_LOAD32_WORD("epr-16724a.6",   0x800000, 0x080000, CRC(469f10fd) SHA1(7fad3b8d03960e5e1f7a6cb36509238977e00fcc) )
4619
 
        ROM_LOAD32_WORD("epr-16725a.7",   0x800002, 0x080000, CRC(ba0df8db) SHA1(d0c5581c56500b5266cab8e8151db24fcbdea0d7) )
4620
 
        ROM_COPY( "user1", 0x800000, 0x900000, 0x100000 ) // rgn,srcoffset,offset,length.
4621
 
        ROM_COPY( "user1", 0x800000, 0xa00000, 0x100000 )
4622
 
        ROM_COPY( "user1", 0x800000, 0xb00000, 0x100000 )
4623
 
        ROM_COPY( "user1", 0x800000, 0xc00000, 0x100000 )
4624
 
        ROM_COPY( "user1", 0x800000, 0xd00000, 0x100000 )
4625
 
        ROM_COPY( "user1", 0x800000, 0xe00000, 0x100000 )
4626
 
        ROM_COPY( "user1", 0x800000, 0xf00000, 0x100000 )
4627
 
 
4628
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
4629
 
        ROM_LOAD32_WORD("mpr-16537.ic28", 0x000000, 0x200000, CRC(36b7c35a) SHA1(b32fd1d3fc8983fb5f2a7b236b665a8c9b52769f) )
4630
 
        ROM_LOAD32_WORD("mpr-16536.ic29", 0x000002, 0x200000, CRC(6d6afed9) SHA1(2018468d7d849854b3d0cfbcd217317e2fc93555) )
4631
 
 
4632
 
        ROM_REGION32_LE( 0x1000000, "user2", 0 ) // Models
4633
 
        ROM_LOAD32_WORD("mpr-16523.ic16", 0x000000, 0x200000, CRC(2f484d42) SHA1(0b83a3fc92b7d913a14cfb01d688c63555c17c41) )
4634
 
        ROM_LOAD32_WORD("mpr-16518.ic20", 0x000002, 0x200000, CRC(df683bf7) SHA1(16afe5029591f3536b5b75d9cf50a34d0ea72c3d) )
4635
 
        ROM_LOAD32_WORD("mpr-16524.ic17", 0x400000, 0x200000, CRC(34658bd7) SHA1(71b47626ffe5b26d1140afe1b830a9a2be86c88f) )
4636
 
        ROM_LOAD32_WORD("mpr-16519.ic21", 0x400002, 0x200000, CRC(facd1c81) SHA1(dac8c281a5e9a6c4b60197e6676f3727264ee420) )
4637
 
        ROM_LOAD32_WORD("mpr-16525.ic18", 0x800000, 0x200000, CRC(fb517521) SHA1(33f5f37ea2e09fc73eed5388b46fdf1fa9e285e6) )
4638
 
        ROM_LOAD32_WORD("mpr-16520.ic22", 0x800002, 0x200000, CRC(d66bd9bd) SHA1(660171674484375a27595630e5e2d2ad76a06d1a) )
4639
 
        ROM_LOAD32_WORD("mpr-16772.ic19", 0xc00000, 0x200000, CRC(770ed912) SHA1(1789f35dd403f73f8be18495a0fe4ad1e6841417) )
4640
 
        ROM_LOAD32_WORD("mpr-16771.ic23", 0xc00002, 0x200000, CRC(a2205124) SHA1(257a3675e4ef6adbf61285a5daa5954223c28cb2) )
4641
 
 
4642
 
        ROM_REGION16_LE( 0x1000000, "user3", 0 ) // Textures
4643
 
        ROM_LOAD32_WORD("mpr-16522.25", 0x000000, 0x200000, CRC(55d39a57) SHA1(abf7b0fc0f111f90da42463d600db9fa32e95efe) )
4644
 
        ROM_LOAD32_WORD("mpr-16521.24", 0x000002, 0x200000, CRC(af1934fb) SHA1(a6a21a23cd34d0de6d3e6a5c3c2687f905d0dc2a) )
4645
 
        ROM_LOAD32_WORD("mpr-16770.27", 0x800000, 0x200000, CRC(f9fa7bfb) SHA1(8aa933b74d4e05dc49987238705e50b00e5dae73) )
4646
 
        ROM_LOAD32_WORD("mpr-16769.26", 0x800002, 0x200000, CRC(e57429e9) SHA1(8c712ab09e61ef510741a55f29b3c4e497471372) )
4647
 
 
4648
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4649
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
4650
 
 
4651
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4652
 
        ROM_LOAD16_WORD_SWAP("epr-16720.7", 0x000000, 0x020000, CRC(8e73cffd) SHA1(9933ccc0757e8c86e0adb938d1c89210b26841ea) )
4653
 
        ROM_LOAD16_WORD_SWAP("epr-16721.8", 0x020000, 0x020000, CRC(1bb3b7b7) SHA1(ee2fd1480e535fc37e9932e6fe4e31344559fc87) )
4654
 
 
4655
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
4656
 
        ROM_LOAD("mpr-16491.32", 0x000000, 0x200000, CRC(89920903) SHA1(06d1d55470ae99f8de0f8c88c694f34c4eb13668) )
4657
 
        ROM_LOAD("mpr-16492.33", 0x200000, 0x200000, CRC(459e701b) SHA1(2054f69cecad677eb00c6a3051f5b5d90885e19b) )
4658
 
 
4659
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
4660
 
        ROM_LOAD("mpr-16493.4", 0x000000, 0x200000, CRC(9990db15) SHA1(ea9a8b45a07dccaae62be7cf095532ce7596a70c) )
4661
 
        ROM_LOAD("mpr-16494.5", 0x200000, 0x200000, CRC(600e1d6c) SHA1(d4e246fc57a16ff562bbcbccf6a739b706f58696) )
4662
 
 
4663
 
        MODEL2_CPU_BOARD /* Model 2 CPU board extra roms */
4664
 
 
4665
 
        ROM_REGION( 0x10000, "user7", 0 ) // Unknown ROM
4666
 
        ROM_LOAD("epr-14869c.25", 0x000000, 0x010000, CRC(24b68e64) SHA1(c19d044d4c2fe551474492aa51922587394dd371) )
4667
 
ROM_END
4668
 
 
4669
 
ROM_START( daytona93 ) /* Daytona USA Deluxe '93 version (There is said to be a Deluxe '94 edition) */
4670
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4671
 
        ROM_LOAD32_WORD("epr-16530a.12", 0x000000, 0x020000, CRC(39e962b5) SHA1(b98a1faabb4f1eff707a94c32224c7820f259874) )
4672
 
        ROM_LOAD32_WORD("epr-16531a.13", 0x000002, 0x020000, CRC(693126eb) SHA1(779734ba536db67e14760d52e8d8d7db07816481) )
4673
 
 
4674
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4675
 
        ROM_LOAD32_WORD("mpr-16528.10",   0x000000, 0x200000, CRC(9ce591f6) SHA1(e22fc8a70b533f7a6191f5952c581fb8f9627906) )
4676
 
        ROM_LOAD32_WORD("mpr-16529.11",   0x000002, 0x200000, CRC(f7095eaf) SHA1(da3c922f950dd730ea348eae12aa1cb69cee9a58) )
4677
 
        ROM_LOAD32_WORD("mpr-16526.8",    0x400000, 0x200000, CRC(5273b8b5) SHA1(f505910394d41a9ffecfdea7b45ef25b21469b7a) )
4678
 
        ROM_LOAD32_WORD("mpr-16527.9",    0x400002, 0x200000, CRC(fc4cb0ef) SHA1(1bf3aec88ef9fb40bde054f5f0b884bf715cbcc8) )
4679
 
        ROM_LOAD32_WORD("epr-16534a.6",   0x800000, 0x100000, CRC(1bb0d72d) SHA1(814004e3426b5638e9c8b226594f4f2a9138ffed) )
4680
 
        ROM_LOAD32_WORD("epr-16535a.7",   0x800002, 0x100000, CRC(459a8bfb) SHA1(607bc0f6c478c3d83ce81f34b7f69997361f906f) )
4681
 
        ROM_COPY( "user1", 0x900000, 0xa00000, 0x100000 ) // rgn,srcoffset,offset,length.
4682
 
        ROM_COPY( "user1", 0x900000, 0xb00000, 0x100000 )
4683
 
        ROM_COPY( "user1", 0x900000, 0xc00000, 0x100000 )
4684
 
        ROM_COPY( "user1", 0x900000, 0xd00000, 0x100000 )
4685
 
        ROM_COPY( "user1", 0x900000, 0xe00000, 0x100000 )
4686
 
        ROM_COPY( "user1", 0x900000, 0xf00000, 0x100000 )
4687
 
 
4688
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
4689
 
        ROM_LOAD32_WORD("mpr-16537.ic28", 0x000000, 0x200000, CRC(36b7c35a) SHA1(b32fd1d3fc8983fb5f2a7b236b665a8c9b52769f) )
4690
 
        ROM_LOAD32_WORD("mpr-16536.ic29", 0x000002, 0x200000, CRC(6d6afed9) SHA1(2018468d7d849854b3d0cfbcd217317e2fc93555) )
4691
 
 
4692
 
        ROM_REGION32_LE( 0x1000000, "user2", 0 ) // Models
4693
 
        ROM_LOAD32_WORD("mpr-16523.ic16", 0x000000, 0x200000, CRC(2f484d42) SHA1(0b83a3fc92b7d913a14cfb01d688c63555c17c41) )
4694
 
        ROM_LOAD32_WORD("mpr-16518.ic20", 0x000002, 0x200000, CRC(df683bf7) SHA1(16afe5029591f3536b5b75d9cf50a34d0ea72c3d) )
4695
 
        ROM_LOAD32_WORD("mpr-16524.ic17", 0x400000, 0x200000, CRC(34658bd7) SHA1(71b47626ffe5b26d1140afe1b830a9a2be86c88f) )
4696
 
        ROM_LOAD32_WORD("mpr-16519.ic21", 0x400002, 0x200000, CRC(facd1c81) SHA1(dac8c281a5e9a6c4b60197e6676f3727264ee420) )
4697
 
        ROM_LOAD32_WORD("mpr-16525.ic18", 0x800000, 0x200000, CRC(fb517521) SHA1(33f5f37ea2e09fc73eed5388b46fdf1fa9e285e6) )
4698
 
        ROM_LOAD32_WORD("mpr-16520.ic22", 0x800002, 0x200000, CRC(d66bd9bd) SHA1(660171674484375a27595630e5e2d2ad76a06d1a) )
4699
 
        ROM_LOAD32_WORD("epr-16646.ic19", 0xc00000, 0x080000, CRC(7ba9fd6b) SHA1(6bcae009e8264bf038fe5d4bc436ec4fc1674831) )
4700
 
        ROM_LOAD32_WORD("epr-16645.ic23", 0xc00002, 0x080000, CRC(78fe0b8a) SHA1(488fd6c0246752b7d9c25d7ba6cdc5b3911d1836) )
4701
 
 
4702
 
        ROM_REGION16_LE( 0x1000000, "user3", 0 ) // Textures
4703
 
        ROM_LOAD32_WORD("mpr-16522.25", 0x000000, 0x200000, CRC(55d39a57) SHA1(abf7b0fc0f111f90da42463d600db9fa32e95efe) )
4704
 
        ROM_LOAD32_WORD("mpr-16521.24", 0x000002, 0x200000, CRC(af1934fb) SHA1(a6a21a23cd34d0de6d3e6a5c3c2687f905d0dc2a) )
4705
 
        ROM_LOAD32_WORD("mpr-16517.27", 0x800000, 0x200000, CRC(4705d3dd) SHA1(99be9c5d9d99f7016199ffa8404fc471d09e360d) )
4706
 
        ROM_LOAD32_WORD("mpr-16516.26", 0x800002, 0x200000, CRC(a260d45d) SHA1(a2ed7c586dfcb7980190b7057fa5366239035fe8) )
4707
 
 
4708
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4709
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
4710
 
 
4711
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4712
 
        ROM_LOAD16_WORD_SWAP("epr-16720.7", 0x000000, 0x020000, CRC(8e73cffd) SHA1(9933ccc0757e8c86e0adb938d1c89210b26841ea) )
4713
 
        ROM_LOAD16_WORD_SWAP("epr-16721.8", 0x020000, 0x020000, CRC(1bb3b7b7) SHA1(ee2fd1480e535fc37e9932e6fe4e31344559fc87) )
4714
 
 
4715
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
4716
 
        ROM_LOAD("mpr-16491.32", 0x000000, 0x200000, CRC(89920903) SHA1(06d1d55470ae99f8de0f8c88c694f34c4eb13668) )
4717
 
        ROM_LOAD("mpr-16492.33", 0x200000, 0x200000, CRC(459e701b) SHA1(2054f69cecad677eb00c6a3051f5b5d90885e19b) )
4718
 
 
4719
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
4720
 
        ROM_LOAD("mpr-16493.4", 0x000000, 0x200000, CRC(9990db15) SHA1(ea9a8b45a07dccaae62be7cf095532ce7596a70c) )
4721
 
        ROM_LOAD("mpr-16494.5", 0x200000, 0x200000, CRC(600e1d6c) SHA1(d4e246fc57a16ff562bbcbccf6a739b706f58696) )
4722
 
 
4723
 
        MODEL2_CPU_BOARD /* Model 2 CPU board extra roms */
4724
 
 
4725
 
        ROM_REGION( 0x10000, "user7", 0 ) // Unknown ROM
4726
 
        ROM_LOAD("epr-14869c.25", 0x000000, 0x010000, CRC(24b68e64) SHA1(c19d044d4c2fe551474492aa51922587394dd371) )
4727
 
ROM_END
4728
 
 
4729
 
ROM_START( daytonas ) /* Daytona USA (With Saturn Adverts) */
4730
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4731
 
        ROM_LOAD32_WORD("epr-17965.ic12", 0x000000, 0x020000, CRC(f022b3da) SHA1(3c337d12f4e12141b412a7289df46f44c66964b2) )
4732
 
        ROM_LOAD32_WORD("epr-17966.ic13", 0x000002, 0x020000, CRC(f9e4ece5) SHA1(2df03455a00ae7066c30bace5c2b81581529e6f4) )
4733
 
 
4734
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4735
 
        ROM_LOAD32_WORD("mpr-16528.10",   0x000000, 0x200000, CRC(9ce591f6) SHA1(e22fc8a70b533f7a6191f5952c581fb8f9627906) )
4736
 
        ROM_LOAD32_WORD("mpr-16529.11",   0x000002, 0x200000, CRC(f7095eaf) SHA1(da3c922f950dd730ea348eae12aa1cb69cee9a58) )
4737
 
        ROM_LOAD32_WORD("mpr-16808.8",    0x400000, 0x200000, CRC(44f1f5a0) SHA1(343866a6e2187a8ebc17f6727080f9f2f9ac9200) )
4738
 
        ROM_LOAD32_WORD("mpr-16809.9",    0x400002, 0x200000, CRC(37a2dd12) SHA1(8192d8698d6bd52ee11cc28917aff5840c447627) )
4739
 
        ROM_LOAD32_WORD("epr-17967.ic6",  0x800000, 0x080000, CRC(a94d8690) SHA1(a716646be6be0b87a550cb88b40e62a5c203ffdf) )
4740
 
        ROM_LOAD32_WORD("epr-17968.ic7",  0x800002, 0x080000, CRC(9d5a92c6) SHA1(9eb43314f3dc6acbbe0aa991d7a5fa44afe9cdd0) )
4741
 
        ROM_COPY( "user1", 0x800000, 0x900000, 0x100000 ) // rgn,srcoffset,offset,length.
4742
 
        ROM_COPY( "user1", 0x800000, 0xa00000, 0x100000 )
4743
 
        ROM_COPY( "user1", 0x800000, 0xb00000, 0x100000 )
4744
 
        ROM_COPY( "user1", 0x800000, 0xc00000, 0x100000 )
4745
 
        ROM_COPY( "user1", 0x800000, 0xd00000, 0x100000 )
4746
 
        ROM_COPY( "user1", 0x800000, 0xe00000, 0x100000 )
4747
 
        ROM_COPY( "user1", 0x800000, 0xf00000, 0x100000 )
4748
 
 
4749
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
4750
 
        ROM_LOAD32_WORD("mpr-16537.ic28", 0x000000, 0x200000, CRC(36b7c35a) SHA1(b32fd1d3fc8983fb5f2a7b236b665a8c9b52769f) )
4751
 
        ROM_LOAD32_WORD("mpr-16536.ic29", 0x000002, 0x200000, CRC(6d6afed9) SHA1(2018468d7d849854b3d0cfbcd217317e2fc93555) )
4752
 
 
4753
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4754
 
        ROM_LOAD32_WORD("mpr-16523.ic16", 0x000000, 0x200000, CRC(2f484d42) SHA1(0b83a3fc92b7d913a14cfb01d688c63555c17c41) )
4755
 
        ROM_LOAD32_WORD("mpr-16518.ic20", 0x000002, 0x200000, CRC(df683bf7) SHA1(16afe5029591f3536b5b75d9cf50a34d0ea72c3d) )
4756
 
        ROM_LOAD32_WORD("mpr-16524.ic17", 0x400000, 0x200000, CRC(34658bd7) SHA1(71b47626ffe5b26d1140afe1b830a9a2be86c88f) )
4757
 
        ROM_LOAD32_WORD("mpr-16519.ic21", 0x400002, 0x200000, CRC(facd1c81) SHA1(dac8c281a5e9a6c4b60197e6676f3727264ee420) )
4758
 
        ROM_LOAD32_WORD("mpr-16525.ic18", 0x800000, 0x200000, CRC(fb517521) SHA1(33f5f37ea2e09fc73eed5388b46fdf1fa9e285e6) )
4759
 
        ROM_LOAD32_WORD("mpr-16520.ic22", 0x800002, 0x200000, CRC(d66bd9bd) SHA1(660171674484375a27595630e5e2d2ad76a06d1a) )
4760
 
        ROM_LOAD32_WORD("mpr-16772.ic19", 0xc00000, 0x200000, CRC(770ed912) SHA1(1789f35dd403f73f8be18495a0fe4ad1e6841417) )
4761
 
        ROM_LOAD32_WORD("mpr-16771.ic23", 0xc00002, 0x200000, CRC(a2205124) SHA1(257a3675e4ef6adbf61285a5daa5954223c28cb2) )
4762
 
 
4763
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4764
 
        ROM_LOAD32_WORD("mpr-16522.25", 0x000000, 0x200000, CRC(55d39a57) SHA1(abf7b0fc0f111f90da42463d600db9fa32e95efe) )
4765
 
        ROM_LOAD32_WORD("mpr-16521.24", 0x000002, 0x200000, CRC(af1934fb) SHA1(a6a21a23cd34d0de6d3e6a5c3c2687f905d0dc2a) )
4766
 
        ROM_LOAD32_WORD("mpr-16770.27", 0x800000, 0x200000, CRC(f9fa7bfb) SHA1(8aa933b74d4e05dc49987238705e50b00e5dae73) )
4767
 
        ROM_LOAD32_WORD("mpr-16769.26", 0x800002, 0x200000, CRC(e57429e9) SHA1(8c712ab09e61ef510741a55f29b3c4e497471372) )
4768
 
 
4769
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4770
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
4771
 
 
4772
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4773
 
        ROM_LOAD16_WORD_SWAP("epr-16720.7", 0x000000, 0x020000, CRC(8e73cffd) SHA1(9933ccc0757e8c86e0adb938d1c89210b26841ea) )
4774
 
        ROM_LOAD16_WORD_SWAP("epr-16721.8", 0x020000, 0x020000, CRC(1bb3b7b7) SHA1(ee2fd1480e535fc37e9932e6fe4e31344559fc87) )
4775
 
 
4776
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
4777
 
        ROM_LOAD("mpr-16491.32", 0x000000, 0x200000, CRC(89920903) SHA1(06d1d55470ae99f8de0f8c88c694f34c4eb13668) )
4778
 
        ROM_LOAD("mpr-16492.33", 0x200000, 0x200000, CRC(459e701b) SHA1(2054f69cecad677eb00c6a3051f5b5d90885e19b) )
4779
 
 
4780
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
4781
 
        ROM_LOAD("mpr-16493.4", 0x000000, 0x200000, CRC(9990db15) SHA1(ea9a8b45a07dccaae62be7cf095532ce7596a70c) )
4782
 
        ROM_LOAD("mpr-16494.5", 0x200000, 0x200000, CRC(600e1d6c) SHA1(d4e246fc57a16ff562bbcbccf6a739b706f58696) )
4783
 
 
4784
 
        MODEL2_CPU_BOARD /* Model 2 CPU board extra roms */
4785
 
 
4786
 
        ROM_REGION( 0x10000, "user7", 0 ) // Unknown ROM
4787
 
        ROM_LOAD("epr-14869c.25", 0x000000, 0x010000, CRC(24b68e64) SHA1(c19d044d4c2fe551474492aa51922587394dd371) )
4788
 
ROM_END
4789
 
 
4790
 
ROM_START( daytonat )/* Daytona USA (Japan, Turbo hack) */
4791
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4792
 
        ROM_LOAD32_WORD( "turbo1.12", 0x000000, 0x080000, CRC(0b3d5d4e) SHA1(1660959cb383e22f0d6204547c30cf5fe9272b03) )
4793
 
        ROM_LOAD32_WORD( "turbo2.13", 0x000002, 0x080000, CRC(f7d4e866) SHA1(c8c43904257f718665f9f7a89838eba14bde9465) )
4794
 
 
4795
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4796
 
        ROM_LOAD32_WORD("mpr-16528.10",   0x000000, 0x200000, CRC(9ce591f6) SHA1(e22fc8a70b533f7a6191f5952c581fb8f9627906) )
4797
 
        ROM_LOAD32_WORD("mpr-16529.11",   0x000002, 0x200000, CRC(f7095eaf) SHA1(da3c922f950dd730ea348eae12aa1cb69cee9a58) )
4798
 
        ROM_LOAD32_WORD("mpr-16808.8",    0x400000, 0x200000, CRC(44f1f5a0) SHA1(343866a6e2187a8ebc17f6727080f9f2f9ac9200) )
4799
 
        ROM_LOAD32_WORD("mpr-16809.9",    0x400002, 0x200000, CRC(37a2dd12) SHA1(8192d8698d6bd52ee11cc28917aff5840c447627) )
4800
 
        ROM_LOAD32_WORD("epr-16724a.6",   0x800000, 0x080000, CRC(469f10fd) SHA1(7fad3b8d03960e5e1f7a6cb36509238977e00fcc) )
4801
 
        ROM_LOAD32_WORD("epr-16725a.7",   0x800002, 0x080000, CRC(ba0df8db) SHA1(d0c5581c56500b5266cab8e8151db24fcbdea0d7) )
4802
 
        ROM_COPY( "user1", 0x800000, 0x900000, 0x100000 ) // rgn,srcoffset,offset,length.
4803
 
        ROM_COPY( "user1", 0x800000, 0xa00000, 0x100000 )
4804
 
        ROM_COPY( "user1", 0x800000, 0xb00000, 0x100000 )
4805
 
        ROM_COPY( "user1", 0x800000, 0xc00000, 0x100000 )
4806
 
        ROM_COPY( "user1", 0x800000, 0xd00000, 0x100000 )
4807
 
        ROM_COPY( "user1", 0x800000, 0xe00000, 0x100000 )
4808
 
        ROM_COPY( "user1", 0x800000, 0xf00000, 0x100000 )
4809
 
 
4810
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
4811
 
        ROM_LOAD32_WORD("mpr-16537.ic28", 0x000000, 0x200000, CRC(36b7c35a) SHA1(b32fd1d3fc8983fb5f2a7b236b665a8c9b52769f) )
4812
 
        ROM_LOAD32_WORD("mpr-16536.ic29", 0x000002, 0x200000, CRC(6d6afed9) SHA1(2018468d7d849854b3d0cfbcd217317e2fc93555) )
4813
 
 
4814
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4815
 
        ROM_LOAD32_WORD("mpr-16523.ic16", 0x000000, 0x200000, CRC(2f484d42) SHA1(0b83a3fc92b7d913a14cfb01d688c63555c17c41) )
4816
 
        ROM_LOAD32_WORD("mpr-16518.ic20", 0x000002, 0x200000, CRC(df683bf7) SHA1(16afe5029591f3536b5b75d9cf50a34d0ea72c3d) )
4817
 
        ROM_LOAD32_WORD("mpr-16524.ic17", 0x400000, 0x200000, CRC(34658bd7) SHA1(71b47626ffe5b26d1140afe1b830a9a2be86c88f) )
4818
 
        ROM_LOAD32_WORD("mpr-16519.ic21", 0x400002, 0x200000, CRC(facd1c81) SHA1(dac8c281a5e9a6c4b60197e6676f3727264ee420) )
4819
 
        ROM_LOAD32_WORD("mpr-16525.ic18", 0x800000, 0x200000, CRC(fb517521) SHA1(33f5f37ea2e09fc73eed5388b46fdf1fa9e285e6) )
4820
 
        ROM_LOAD32_WORD("mpr-16520.ic22", 0x800002, 0x200000, CRC(d66bd9bd) SHA1(660171674484375a27595630e5e2d2ad76a06d1a) )
4821
 
        ROM_LOAD32_WORD("mpr-16772.ic19", 0xc00000, 0x200000, CRC(770ed912) SHA1(1789f35dd403f73f8be18495a0fe4ad1e6841417) )
4822
 
        ROM_LOAD32_WORD("mpr-16771.ic23", 0xc00002, 0x200000, CRC(a2205124) SHA1(257a3675e4ef6adbf61285a5daa5954223c28cb2) )
4823
 
 
4824
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4825
 
        ROM_LOAD32_WORD("mpr-16522.25", 0x000000, 0x200000, CRC(55d39a57) SHA1(abf7b0fc0f111f90da42463d600db9fa32e95efe) )
4826
 
        ROM_LOAD32_WORD("mpr-16521.24", 0x000002, 0x200000, CRC(af1934fb) SHA1(a6a21a23cd34d0de6d3e6a5c3c2687f905d0dc2a) )
4827
 
        ROM_LOAD32_WORD("mpr-16770.27", 0x800000, 0x200000, CRC(f9fa7bfb) SHA1(8aa933b74d4e05dc49987238705e50b00e5dae73) )
4828
 
        ROM_LOAD32_WORD("mpr-16769.26", 0x800002, 0x200000, CRC(e57429e9) SHA1(8c712ab09e61ef510741a55f29b3c4e497471372) )
4829
 
 
4830
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4831
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
4832
 
 
4833
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4834
 
        ROM_LOAD16_WORD_SWAP("epr-16720.7", 0x000000, 0x020000, CRC(8e73cffd) SHA1(9933ccc0757e8c86e0adb938d1c89210b26841ea) )
4835
 
        ROM_LOAD16_WORD_SWAP("epr-16721.8", 0x020000, 0x020000, CRC(1bb3b7b7) SHA1(ee2fd1480e535fc37e9932e6fe4e31344559fc87) )
4836
 
 
4837
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
4838
 
        ROM_LOAD("mpr-16491.32", 0x000000, 0x200000, CRC(89920903) SHA1(06d1d55470ae99f8de0f8c88c694f34c4eb13668) )
4839
 
        ROM_LOAD("mpr-16492.33", 0x200000, 0x200000, CRC(459e701b) SHA1(2054f69cecad677eb00c6a3051f5b5d90885e19b) )
4840
 
 
4841
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
4842
 
        ROM_LOAD("mpr-16493.4", 0x000000, 0x200000, CRC(9990db15) SHA1(ea9a8b45a07dccaae62be7cf095532ce7596a70c) )
4843
 
        ROM_LOAD("mpr-16494.5", 0x200000, 0x200000, CRC(600e1d6c) SHA1(d4e246fc57a16ff562bbcbccf6a739b706f58696) )
4844
 
 
4845
 
        MODEL2_CPU_BOARD /* Model 2 CPU board extra roms */
4846
 
 
4847
 
        ROM_REGION( 0x10000, "user7", 0 ) // Unknown ROM
4848
 
        ROM_LOAD("epr-14869c.25", 0x000000, 0x010000, CRC(24b68e64) SHA1(c19d044d4c2fe551474492aa51922587394dd371) )
4849
 
ROM_END
4850
 
 
4851
 
 
4852
 
/*
4853
 
Daytona "To The MAXX" upgrade.
4854
 
Unofficial Sega hack for Model 2 Daytona machines
4855
 
 
4856
 
Kits contains 4 IC's
4857
 
3 of them are standard 27C1024 EPROMS
4858
 
1 of them is a PIC 16F84 mounted to a small board the size of an EPROM
4859
 
with a 40 pin socket mounted on it, which plugs into position IC15
4860
 
*/
4861
 
 
4862
 
ROM_START( daytonam ) /* Daytona USA (Japan, To The MAXX) */
4863
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4864
 
        ROM_LOAD32_WORD( "maxx.12", 0x000000, 0x020000, CRC(604ef2d9) SHA1(b1d5f0d41bea2e74fb9346da35a5041f4464265e) )
4865
 
        ROM_LOAD32_WORD( "maxx.13", 0x000002, 0x020000, CRC(7d319970) SHA1(5bc150a77f20a29f54acdf5043fb1e8e55f6b08b) )
4866
 
        ROM_LOAD32_WORD( "maxx.14", 0x040000, 0x020000, CRC(2debfce0) SHA1(b0f578ae68d49a3eebaf9b453a1ad774c8620476) )
4867
 
 
4868
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4869
 
        ROM_LOAD32_WORD("mpr-16528.10",   0x000000, 0x200000, CRC(9ce591f6) SHA1(e22fc8a70b533f7a6191f5952c581fb8f9627906) )
4870
 
        ROM_LOAD32_WORD("mpr-16529.11",   0x000002, 0x200000, CRC(f7095eaf) SHA1(da3c922f950dd730ea348eae12aa1cb69cee9a58) )
4871
 
        ROM_LOAD32_WORD("mpr-16808.8",    0x400000, 0x200000, CRC(44f1f5a0) SHA1(343866a6e2187a8ebc17f6727080f9f2f9ac9200) )
4872
 
        ROM_LOAD32_WORD("mpr-16809.9",    0x400002, 0x200000, CRC(37a2dd12) SHA1(8192d8698d6bd52ee11cc28917aff5840c447627) )
4873
 
        ROM_LOAD32_WORD("epr-16724a.6",   0x800000, 0x080000, CRC(469f10fd) SHA1(7fad3b8d03960e5e1f7a6cb36509238977e00fcc) )
4874
 
        ROM_LOAD32_WORD("epr-16725a.7",   0x800002, 0x080000, CRC(ba0df8db) SHA1(d0c5581c56500b5266cab8e8151db24fcbdea0d7) )
4875
 
        ROM_COPY( "user1", 0x800000, 0x900000, 0x100000 ) // rgn,srcoffset,offset,length.
4876
 
        ROM_COPY( "user1", 0x800000, 0xa00000, 0x100000 )
4877
 
        ROM_COPY( "user1", 0x800000, 0xb00000, 0x100000 )
4878
 
        ROM_COPY( "user1", 0x800000, 0xc00000, 0x100000 )
4879
 
        ROM_COPY( "user1", 0x800000, 0xd00000, 0x100000 )
4880
 
        ROM_COPY( "user1", 0x800000, 0xe00000, 0x100000 )
4881
 
        ROM_COPY( "user1", 0x800000, 0xf00000, 0x100000 )
4882
 
 
4883
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
4884
 
        ROM_LOAD32_WORD("mpr-16537.ic28", 0x000000, 0x200000, CRC(36b7c35a) SHA1(b32fd1d3fc8983fb5f2a7b236b665a8c9b52769f) )
4885
 
        ROM_LOAD32_WORD("mpr-16536.ic29", 0x000002, 0x200000, CRC(6d6afed9) SHA1(2018468d7d849854b3d0cfbcd217317e2fc93555) )
4886
 
 
4887
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4888
 
        ROM_LOAD32_WORD("mpr-16523.ic16", 0x000000, 0x200000, CRC(2f484d42) SHA1(0b83a3fc92b7d913a14cfb01d688c63555c17c41) )
4889
 
        ROM_LOAD32_WORD("mpr-16518.ic20", 0x000002, 0x200000, CRC(df683bf7) SHA1(16afe5029591f3536b5b75d9cf50a34d0ea72c3d) )
4890
 
        ROM_LOAD32_WORD("mpr-16524.ic17", 0x400000, 0x200000, CRC(34658bd7) SHA1(71b47626ffe5b26d1140afe1b830a9a2be86c88f) )
4891
 
        ROM_LOAD32_WORD("mpr-16519.ic21", 0x400002, 0x200000, CRC(facd1c81) SHA1(dac8c281a5e9a6c4b60197e6676f3727264ee420) )
4892
 
        ROM_LOAD32_WORD("mpr-16525.ic18", 0x800000, 0x200000, CRC(fb517521) SHA1(33f5f37ea2e09fc73eed5388b46fdf1fa9e285e6) )
4893
 
        ROM_LOAD32_WORD("mpr-16520.ic22", 0x800002, 0x200000, CRC(d66bd9bd) SHA1(660171674484375a27595630e5e2d2ad76a06d1a) )
4894
 
        ROM_LOAD32_WORD("mpr-16772.ic19", 0xc00000, 0x200000, CRC(770ed912) SHA1(1789f35dd403f73f8be18495a0fe4ad1e6841417) )
4895
 
        ROM_LOAD32_WORD("mpr-16771.ic23", 0xc00002, 0x200000, CRC(a2205124) SHA1(257a3675e4ef6adbf61285a5daa5954223c28cb2) )
4896
 
 
4897
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4898
 
        ROM_LOAD32_WORD("mpr-16522.25", 0x000000, 0x200000, CRC(55d39a57) SHA1(abf7b0fc0f111f90da42463d600db9fa32e95efe) )
4899
 
        ROM_LOAD32_WORD("mpr-16521.24", 0x000002, 0x200000, CRC(af1934fb) SHA1(a6a21a23cd34d0de6d3e6a5c3c2687f905d0dc2a) )
4900
 
        ROM_LOAD32_WORD("mpr-16770.27", 0x800000, 0x200000, CRC(f9fa7bfb) SHA1(8aa933b74d4e05dc49987238705e50b00e5dae73) )
4901
 
        ROM_LOAD32_WORD("mpr-16769.26", 0x800002, 0x200000, CRC(e57429e9) SHA1(8c712ab09e61ef510741a55f29b3c4e497471372) )
4902
 
 
4903
 
        ROM_REGION( 0x20000, "cpu3", 0) // Communication program
4904
 
        ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) )
4905
 
 
4906
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4907
 
        ROM_LOAD16_WORD_SWAP("epr-16720.7", 0x000000, 0x020000, CRC(8e73cffd) SHA1(9933ccc0757e8c86e0adb938d1c89210b26841ea) )
4908
 
        ROM_LOAD16_WORD_SWAP("epr-16721.8", 0x020000, 0x020000, CRC(1bb3b7b7) SHA1(ee2fd1480e535fc37e9932e6fe4e31344559fc87) )
4909
 
 
4910
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
4911
 
        ROM_LOAD("mpr-16491.32", 0x000000, 0x200000, CRC(89920903) SHA1(06d1d55470ae99f8de0f8c88c694f34c4eb13668) )
4912
 
        ROM_LOAD("mpr-16492.33", 0x200000, 0x200000, CRC(459e701b) SHA1(2054f69cecad677eb00c6a3051f5b5d90885e19b) )
4913
 
 
4914
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
4915
 
        ROM_LOAD("mpr-16493.4", 0x000000, 0x200000, CRC(9990db15) SHA1(ea9a8b45a07dccaae62be7cf095532ce7596a70c) )
4916
 
        ROM_LOAD("mpr-16494.5", 0x200000, 0x200000, CRC(600e1d6c) SHA1(d4e246fc57a16ff562bbcbccf6a739b706f58696) )
4917
 
 
4918
 
        MODEL2_CPU_BOARD /* Model 2 CPU board extra roms */
4919
 
 
4920
 
        ROM_REGION( 0x10000, "user7", 0 ) // Unknown ROM
4921
 
        ROM_LOAD("epr-14869c.25", 0x000000, 0x010000, CRC(24b68e64) SHA1(c19d044d4c2fe551474492aa51922587394dd371) )
4922
 
ROM_END
4923
 
 
4924
 
ROM_START( vcop ) /* Virtua Cop Revision B, Model 2 */
4925
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4926
 
        ROM_LOAD32_WORD( "epr-17166b.012", 0x000000, 0x020000, CRC(a5647c59) SHA1(0a9e0be447d3591e82efd40ef4acbfe7ae211579) )
4927
 
        ROM_LOAD32_WORD( "epr-17167b.013", 0x000002, 0x020000, CRC(f5dde26a) SHA1(95db029bc4206a44ea216afbcd1c19689f79115a) )
4928
 
        ROM_LOAD32_WORD( "epr-17160a.014", 0x040000, 0x020000, CRC(267f3242) SHA1(40ec09cda984bb80969bfae2278432153137c213) )
4929
 
        ROM_LOAD32_WORD( "epr-17161a.015", 0x040002, 0x020000, CRC(f7126876) SHA1(b0ceb1206edaa507ec15723497fcd447a511f423) )
4930
 
 
4931
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4932
 
        ROM_LOAD32_WORD( "mpr-17164.010",  0x000000, 0x200000, CRC(ac5fc501) SHA1(e60deec1e79d207d37d3f4ddd83a1b2125c411ac) )
4933
 
        ROM_LOAD32_WORD( "mpr-17165.011",  0x000002, 0x200000, CRC(82296d00) SHA1(23327137b36c98dfb9175ea9d36478e7385dfac2) )
4934
 
        ROM_LOAD32_WORD( "mpr-17162.008",  0x400000, 0x200000, CRC(60ddd41e) SHA1(0894c9bcdedeb09f921419a309858e242cb8db3a) )
4935
 
        ROM_LOAD32_WORD( "mpr-17163.009",  0x400002, 0x200000, CRC(8c1f9dc8) SHA1(cf99a5bb4f343d59c8d6f5716287b6e16bef6412) )
4936
 
        ROM_LOAD32_WORD( "epr-17168a.006", 0x800000, 0x080000, CRC(59091a37) SHA1(14591c7015aaf126755be584aa94c04e6de222fa) )
4937
 
        ROM_LOAD32_WORD( "epr-17169a.007", 0x800002, 0x080000, CRC(0495808d) SHA1(5b86a9a68c2b52f942aa8d858ee7a491f546a921) )
4938
 
 
4939
 
        ROM_REGION( 0x800000, "tgp", ROMREGION_ERASE00 ) // TGP program
4940
 
 
4941
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4942
 
        ROM_LOAD32_WORD( "mpr-17159.016", 0x000000, 0x200000, CRC(e218727d) SHA1(1458d01d49936a0b8d497b62ff9ea940ca753b37) )
4943
 
        ROM_LOAD32_WORD( "mpr-17156.020", 0x000002, 0x200000, CRC(c4f4aabf) SHA1(8814cd329609cc8a188fedd770230bb9a5d00361) )
4944
 
 
4945
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4946
 
        ROM_LOAD32_WORD( "mpr-17158.025", 0x000000, 0x200000, CRC(1108d1ec) SHA1(e95d4166bd4b26c5f21b85821b410f53045f4309) )
4947
 
        ROM_LOAD32_WORD( "mpr-17157.024", 0x000002, 0x200000, CRC(cf31e33d) SHA1(0cb62d4f28b5ad8a7e4c82b0ca8aea3037b05455) )
4948
 
 
4949
 
        ROM_REGION( 0x20000, "cpu4", 0) // Communication program
4950
 
        ROM_LOAD32_WORD( "epr-17181.006", 0x000000, 0x010000, CRC(1add2b82) SHA1(81892251d466f630a96af25bde652c20e47d7ede) )
4951
 
 
4952
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4953
 
        ROM_LOAD16_WORD_SWAP( "epr-17170.007", 0x000000, 0x020000, CRC(06a38ae2) SHA1(a2c3d14d9266449ebfc6d976a956e0a8a602cfb0) )
4954
 
        ROM_LOAD16_WORD_SWAP( "epr-17171.008", 0x020000, 0x020000, CRC(b5e436f8) SHA1(1da3cb52d64f52d03a8de9954afffbc6e1549a5b) )
4955
 
 
4956
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
4957
 
        ROM_LOAD( "mpr-17172.032", 0x000000, 0x100000, CRC(ab22cac3) SHA1(0e872158faeb8c0404b10cdf0a3fa36f89a5093e) )
4958
 
        ROM_LOAD( "mpr-17173.033", 0x200000, 0x100000, CRC(3cb4005c) SHA1(a56f436ea6dfe0968b73ae7bc92bb2f4c612460d) )
4959
 
 
4960
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
4961
 
        ROM_LOAD( "mpr-17174.004", 0x000000, 0x200000, CRC(a50369cc) SHA1(69807157baf6e3679adc95633c82b0236db01247) )
4962
 
        ROM_LOAD( "mpr-17175.005", 0x200000, 0x200000, CRC(9136d43c) SHA1(741f80a8ff8165ffe171dc568e0da4ad0bde4809) )
4963
 
 
4964
 
        MODEL2_CPU_BOARD
4965
 
ROM_END
4966
 
 
4967
 
ROM_START( desert ) /* Desert Tank, Model 2 */
4968
 
        ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
4969
 
        ROM_LOAD32_WORD("epr-16976.12", 0x000000, 0x020000, CRC(d036dff0) SHA1(f3e5f22ef1f3ff9c9a1ff7352cdad3e2c2977a51) )
4970
 
        ROM_LOAD32_WORD("epr-16977.13", 0x000002, 0x020000, CRC(e91194bd) SHA1(cec8eb8d4b52c387d5750ee5a0c6e6ce7c0fe80d) )
4971
 
        ROM_LOAD32_WORD("epr-16970.14", 0x040000, 0x020000, CRC(4ea12d1f) SHA1(75133b03a450518bae27d62f0a1c37451c8c49a0) )
4972
 
        ROM_LOAD32_WORD("epr-16971.15", 0x040002, 0x020000, CRC(d630b220) SHA1(ca7bd1e01e396b8b6a0925e767cc714729e0fd42) )
4973
 
 
4974
 
        ROM_REGION32_LE( 0x2000000, "user1", 0 ) // Data
4975
 
        ROM_LOAD32_WORD("mpr-16974.10", 0x000000, 0x200000, CRC(2ab491c5) SHA1(79deb3877d0ffc8ee75c01d3bf0a6dd71cc2b552) )
4976
 
        ROM_LOAD32_WORD("mpr-16975.11", 0x000002, 0x200000, CRC(e24fe7d3) SHA1(f8ab28c95d421978b1517adeacf09e7ee203d8f6) )
4977
 
        ROM_LOAD32_WORD("mpr-16972.8",  0x400000, 0x200000, CRC(23e53748) SHA1(9c8a1d8aec8f9e5504e5aac0390dfb3770ab8616) )
4978
 
        ROM_LOAD32_WORD("mpr-16973.9",  0x400002, 0x200000, CRC(77d6f509) SHA1(c83bce7f7b0a15bd14b99e829640b7dd9948e671) )
4979
 
        ROM_LOAD32_WORD("epr-16978.6",  0x800000, 0x080000, CRC(38b3e574) SHA1(a1133df608b0fbb9c53bbeb29138650c87845d2c) )
4980
 
        ROM_LOAD32_WORD("epr-16979.7",  0x800002, 0x080000, CRC(c314eb8b) SHA1(0c851dedd5c42b026195faed7d028924698a8b27) )
4981
 
 
4982
 
        ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket)
4983
 
        ROM_LOAD32_WORD("epr-16981.28", 0x000000, 0x080000, CRC(ae847571) SHA1(32d0f9e685667ae9fddacea0b9f4ad6fb3a6fdad) )
4984
 
        ROM_LOAD32_WORD("epr-16980.29", 0x000002, 0x080000, CRC(5239b864) SHA1(e889556e0f1ea80de52afff563b0923f87cef7ab) )
4985
 
 
4986
 
        ROM_REGION( 0x1000000, "user2", 0 ) // Models
4987
 
        ROM_LOAD32_WORD("mpr-16968.16", 0x000000, 0x200000, CRC(4a16f465) SHA1(411214ed65ce966040d4299b50bfaa40f7f5f266) )
4988
 
        ROM_LOAD32_WORD("mpr-16964.21", 0x000002, 0x200000, CRC(d4a769b6) SHA1(845c34f95a49e06e3996b0c67aa73b4886fa8996) )
4989
 
        ROM_LOAD32_WORD("mpr-16969.17", 0x400000, 0x200000, CRC(887380ac) SHA1(03a9f601764d06cb0b2daaadf4f8433f327abd4a) )
4990
 
        ROM_LOAD32_WORD("mpr-16965.20", 0x400002, 0x200000, CRC(9ba7645f) SHA1(c04f369961f908bac16fad8e32b863202390c205) )
4991
 
 
4992
 
        ROM_REGION( 0x1000000, "user3", 0 ) // Textures
4993
 
        ROM_LOAD32_WORD("mpr-16967.25", 0x000000, 0x200000, CRC(b8b84c9d) SHA1(00ef320988609e98c8af383b68d845e3be8d0a03) )
4994
 
        ROM_LOAD32_WORD("mpr-16966.24", 0x000002, 0x200000, CRC(7484efe9) SHA1(33e72139ad6c2990428e3fa041dbcdf39aca1c7a) )
4995
 
 
4996
 
        ROM_REGION( 0x20000, "cpu4", ROMREGION_ERASE00 ) // Communication program
4997
 
 
4998
 
        ROM_REGION( 0x80000, "audiocpu", 0 ) // Sound program
4999
 
        ROM_LOAD16_WORD_SWAP("epr-16985.7", 0x000000,  0x20000, CRC(8c4d9056) SHA1(785752d761c648d1177c5f0cfa3e9fa44135d6dc) )
5000
 
 
5001
 
        ROM_REGION( 0x400000, "sega1", 0 ) // Samples
5002
 
        ROM_LOAD("mpr-16986.32", 0x000000, 0x200000, CRC(559612f9) SHA1(33bcaddfc7d8fe899707e663299e8f04e9004d51) )
5003
 
 
5004
 
        ROM_REGION( 0x400000, "sega2", 0 ) // Samples
5005
 
        ROM_LOAD("mpr-16988.4", 0x000000, 0x200000, CRC(bc705875) SHA1(5351c6bd2d75df57ff92960e7f90493d95d9dfb9) )
5006
 
        ROM_LOAD("mpr-16989.5", 0x200000, 0x200000, CRC(1b616b31) SHA1(35bd2bfd08514ba6f235cda2605c171cd51fd78e) )
5007
 
 
5008
 
        MODEL2_CPU_BOARD
5009
 
ROM_END
5010
 
 
5011
 
static DRIVER_INIT( genprot )
5012
 
{
5013
 
        model2_state *state = machine.driver_data<model2_state>();
5014
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w));
5015
 
        state->m_protstate = state->m_protpos = 0;
5016
 
}
5017
 
 
5018
 
static DRIVER_INIT( pltkids )
5019
 
{
5020
 
        model2_state *state = machine.driver_data<model2_state>();
5021
 
        UINT32 *ROM = (UINT32 *)machine.region("maincpu")->base();
5022
 
 
5023
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w));
5024
 
        state->m_protstate = state->m_protpos = 0;
5025
 
 
5026
 
        // fix bug in program: it destroys the interrupt table and never fixes it
5027
 
        ROM[0x730/4] = 0x08000004;
5028
 
}
5029
 
 
5030
 
static DRIVER_INIT( zerogun )
5031
 
{
5032
 
        model2_state *state = machine.driver_data<model2_state>();
5033
 
        UINT32 *ROM = (UINT32 *)machine.region("maincpu")->base();
5034
 
 
5035
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w));
5036
 
        state->m_protstate = state->m_protpos = 0;
5037
 
 
5038
 
        // fix bug in program: it destroys the interrupt table and never fixes it
5039
 
        ROM[0x700/4] = 0x08000004;
5040
 
}
5041
 
 
5042
 
static DRIVER_INIT( daytonam )
5043
 
{
5044
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x240000, 0x24ffff, FUNC(maxx_r) );
5045
 
}
5046
 
 
5047
 
/* very crude support for let the game set itself into stand-alone mode */
5048
 
 
5049
 
static READ32_HANDLER( jaleco_network_r )
5050
 
{
5051
 
        model2_state *state = space->machine().driver_data<model2_state>();
5052
 
        if(offset == 0x4000/4)
5053
 
        {
5054
 
                if(state->m_netram[offset] == 0x00000000)
5055
 
                        state->m_jnet_time_out = 0;
5056
 
 
5057
 
                if((state->m_netram[offset] & 0xffff) == 0x0001)
5058
 
                        state->m_jnet_time_out++;
5059
 
 
5060
 
                if(state->m_jnet_time_out > 0x80)
5061
 
                        state->m_netram[offset]|= 0x00800000;
5062
 
 
5063
 
                return state->m_netram[offset];
5064
 
        }
5065
 
 
5066
 
        return state->m_netram[offset];
5067
 
}
5068
 
 
5069
 
static WRITE32_HANDLER( jaleco_network_w )
5070
 
{
5071
 
        model2_state *state = space->machine().driver_data<model2_state>();
5072
 
        COMBINE_DATA(&state->m_netram[offset]);
5073
 
}
5074
 
 
5075
 
static DRIVER_INIT( sgt24h )
5076
 
{
5077
 
        model2_state *state = machine.driver_data<model2_state>();
5078
 
        UINT32 *ROM = (UINT32 *)machine.region("maincpu")->base();
5079
 
 
5080
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w));
5081
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01a10000, 0x01a1ffff, FUNC(jaleco_network_r), FUNC(jaleco_network_w));
5082
 
 
5083
 
        state->m_protstate = state->m_protpos = 0;
5084
 
 
5085
 
        ROM[0x56578/4] = 0x08000004;
5086
 
        ROM[0x5b3e8/4] = 0x08000004;
5087
 
}
5088
 
 
5089
 
static DRIVER_INIT( overrev )
5090
 
{
5091
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01a10000, 0x01a1ffff, FUNC(jaleco_network_r), FUNC(jaleco_network_w));
5092
 
 
5093
 
        //TODO: cache patch?
5094
 
}
5095
 
 
5096
 
 
5097
 
static DRIVER_INIT( doa )
5098
 
{
5099
 
        model2_state *state = machine.driver_data<model2_state>();
5100
 
        UINT32 *ROM = (UINT32 *)machine.region("maincpu")->base();
5101
 
 
5102
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w));
5103
 
        state->m_protstate = state->m_protpos = 0;
5104
 
 
5105
 
        ROM[0x630/4] = 0x08000004;
5106
 
        ROM[0x808/4] = 0x08000004;
5107
 
}
5108
 
 
5109
 
static DRIVER_INIT( rchase2 )
5110
 
{
5111
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01c00008, 0x01c0000b, FUNC(rchase2_devices_w));
5112
 
}
5113
 
 
5114
 
static DRIVER_INIT( srallyc )
5115
 
{
5116
 
        machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01c00008, 0x01c0000b, FUNC(srallyc_devices_w));
5117
 
}
5118
 
 
5119
 
 
5120
 
// Model 2 (TGPs, Model 1 sound board)
5121
 
GAME( 1993, daytona,         0, model2o, daytona, 0,        ROT0, "Sega", "Daytona USA (Japan, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5122
 
GAME( 1993, daytona93, daytona, model2o, daytona, 0,        ROT0, "Sega", "Daytona USA Deluxe '93", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5123
 
GAME( 1993, daytonas,  daytona, model2o, daytona, 0,        ROT0, "Sega", "Daytona USA (With Saturn Adverts)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5124
 
GAME( 1993, daytonat,  daytona, model2o, daytona, 0,        ROT0, "Sega", "Daytona USA (Japan, Turbo hack)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5125
 
GAME( 1993, daytonam,  daytona, model2o, daytona, daytonam, ROT0, "Sega", "Daytona USA (Japan, To The MAXX)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5126
 
GAME( 1994, desert,          0, model2o, desert,  0,        ROT0, "Sega / Martin Marietta", "Desert Tank", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5127
 
GAME( 1994, vcop,            0, model2o, daytona, 0,        ROT0, "Sega", "Virtua Cop (Revision B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5128
 
 
5129
 
// Model 2A-CRX (TGPs, SCSP sound board)
5130
 
GAME( 1995, manxtt,          0, model2a, model2, 0,       ROT0, "Sega", "Manx TT Superbike (Revision C)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5131
 
GAME( 1995, motoraid,        0, model2a, model2, 0,       ROT0, "Sega", "Motoraid", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5132
 
GAME( 1995, srallyc,         0, srallyc, srallyc,srallyc, ROT0, "Sega", "Sega Rally Championship (Revision C)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5133
 
GAME( 1995, srallycb,  srallyc, srallyc, srallyc,srallyc, ROT0, "Sega", "Sega Rally Championship (Revision B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5134
 
GAME( 1995, vf2,             0, model2a, model2, 0,       ROT0, "Sega", "Virtua Fighter 2 (Version 2.1)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5135
 
GAME( 1995, vf2b,          vf2, model2a, model2, 0,       ROT0, "Sega", "Virtua Fighter 2 (Revision B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5136
 
GAME( 1995, vf2a,          vf2, model2a, model2, 0,       ROT0, "Sega", "Virtua Fighter 2 (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5137
 
GAME( 1995, vf2o,          vf2, model2a, model2, 0,       ROT0, "Sega", "Virtua Fighter 2", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5138
 
GAME( 1995, vcop2,           0, model2a, model2, 0,       ROT0, "Sega", "Virtua Cop 2", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5139
 
GAME( 1995, skytargt,        0, model2a, model2, 0,       ROT0, "Sega", "Sky Target", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5140
 
GAME( 1996, doaa,          doa, model2a, model2, doa,     ROT0, "Sega", "Dead or Alive (Model 2A, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5141
 
GAME( 1997, zeroguna,  zerogun, model2a, model2, zerogun, ROT0, "Psikyo", "Zero Gunner (Model 2A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5142
 
GAME( 1998, dynamcop,        0, model2a, model2, genprot, ROT0, "Sega", "Dynamite Cop (Export, Model 2A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5143
 
GAME( 1998, dyndeka2, dynamcop, model2a, model2, genprot, ROT0, "Sega", "Dynamite Deka 2 (Japan, Model 2A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5144
 
GAME( 1998, pltkidsa,  pltkids, model2a, model2, pltkids, ROT0, "Psikyo", "Pilot Kids (Model 2A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5145
 
 
5146
 
// Model 2B-CRX (SHARC, SCSP sound board)
5147
 
GAME( 1994, vstriker,        0, model2b, model2, 0,       ROT0, "Sega", "Virtua Striker (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5148
 
GAME( 1994, vstrikero,vstriker, model2b, model2, 0,       ROT0, "Sega", "Virtua Striker", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5149
 
GAME( 1995, fvipers,         0, model2b, model2, 0,       ROT0, "Sega", "Fighting Vipers (Revision D)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5150
 
GAME( 1995, gunblade,        0, model2b, model2, 0,       ROT0, "Sega", "Gunblade NY (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5151
 
GAME( 1995, indy500,         0, model2b, srallyc,0,       ROT0, "Sega", "INDY 500 Twin (Revision A, Newer)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5152
 
GAME( 1995, indy500d,  indy500, model2b, srallyc,0,       ROT0, "Sega", "INDY 500 Deluxe (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5153
 
GAME( 1995, indy500to, indy500, model2b, srallyc,0,       ROT0, "Sega", "INDY 500 Twin (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5154
 
GAME( 1996, schamp,          0, model2b, model2, 0,       ROT0, "Sega", "Sonic Championship", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5155
 
GAME( 1996, sfight,     schamp, model2b, model2, 0,       ROT0, "Sega", "Sonic The Fighters", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5156
 
GAME( 1996, lastbrnx,        0, model2b, model2, 0,       ROT0, "Sega", "Last Bronx (Export, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5157
 
GAME( 1996, lastbrnxj,lastbrnx, model2b, model2, 0,       ROT0, "Sega", "Last Bronx (Japan, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5158
 
GAME( 1996, doa,             0, model2b, model2, doa,     ROT0, "Sega", "Dead or Alive (Model 2B, Revision B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5159
 
GAME( 1996, sgt24h,          0, model2b, srallyc, sgt24h,  ROT0, "Jaleco", "Super GT 24h", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5160
 
GAME( 1996, von,             0, model2b, model2, 0,       ROT0, "Sega", "Virtual On Cyber Troopers (US, Revision B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5161
 
GAME( 1996, vonj,          von, model2b, model2, 0,       ROT0, "Sega", "Virtual On Cyber Troopers (Japan, Revision B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5162
 
GAME( 1996, dynabb,          0, model2b, model2, 0,       ROT0, "Sega", "Dynamite Baseball '97 (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5163
 
GAME( 1997, zerogun,         0, model2b, model2, zerogun, ROT0, "Psikyo", "Zero Gunner (Model 2B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5164
 
GAME( 1997, zerogunj,  zerogun, model2b, model2, zerogun, ROT0, "Psikyo", "Zero Gunner (Japan Model 2B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5165
 
GAME( 1998, dynamcopb,dynamcop, model2b, model2, genprot, ROT0, "Sega", "Dynamite Cop (Export, Model 2B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5166
 
GAME( 1998, dyndeka2b,dynamcop, model2b, model2, genprot, ROT0, "Sega", "Dynamite Deka 2 (Japan, Model 2B)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5167
 
GAME( 1998, pltkids,         0, model2b, model2, pltkids, ROT0, "Psikyo", "Pilot Kids (Model 2B, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5168
 
GAME( 1995, rchase2,         0, model2b, rchase2,rchase2, ROT0, "Sega", "Rail Chase 2 (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5169
 
 
5170
 
// Model 2C-CRX (TGPx4, SCSP sound board)
5171
 
GAME( 1996, skisuprg,        0, model2c, model2, 0, ROT0, "Sega", "Sega Ski Super G", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5172
 
GAME( 1996, stcc,            0, model2c, model2, 0, ROT0, "Sega", "Sega Touring Car Championship", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5173
 
GAME( 1996, stcca,        stcc, model2c, model2, 0, ROT0, "Sega", "Sega Touring Car Championship (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5174
 
GAME( 1996, stccb,        stcc, model2c, model2, 0, ROT0, "Sega", "Sega Touring Car Championship (Unknown Revision)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5175
 
GAME( 1996, waverunr,        0, model2c, model2, 0, ROT0, "Sega", "Wave Runner (Japan, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5176
 
GAME( 1997, hotd,            0, model2c, model2, 0, ROT0, "Sega", "House of the Dead", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5177
 
GAME( 1997, overrev,         0, model2c, srallyc, overrev, ROT0, "Jaleco", "Over Rev (Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5178
 
GAME( 1997, segawski,        0, model2c, model2, 0, ROT0, "Sega", "Sega Water Ski (Japan, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5179
 
GAME( 1997, topskatr,        0, model2c, model2, 0, ROT0, "Sega", "Top Skater (Export, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5180
 
GAME( 1997, topskatru,topskatr, model2c, model2, 0, ROT0, "Sega", "Top Skater (USA, Revision A)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5181
 
GAME( 1997, topskatrj,topskatr, model2c, model2, 0, ROT0, "Sega", "Top Skater (Japan)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5182
 
GAME( 1998, bel,             0, model2c, bel,    0, ROT0, "Sega / EPL Productions", "Behind Enemy Lines", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5183
 
GAME( 1998, dynamcopc,dynamcop, model2c, model2, 0, ROT0, "Sega", "Dynamite Cop (USA, Model 2C)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
5184