~ubuntu-branches/ubuntu/precise/mame/precise-proposed

« back to all changes in this revision

Viewing changes to .pc/typos.patch/src/mame/drivers/djmain.c

  • Committer: Bazaar Package Importer
  • Author(s): Cesare Falco
  • Date: 2010-08-01 23:18:31 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100801231831-9dj2qbsynutixsoe
Tags: 0.139-0ubuntu1
* New upstream release (LP: #612070)
* debian/contrib/manpages: removed, accepted upstream
* debian/patches/:
  - deprecated_gtk_macros: removed, fixed upstream
  - missing_newline.patch: removed, fixed upstream
  - typos.patch: removed, fixed upstream
* debian/rules: new variables SYMLEVEL and DUMPSYM
* mame-tools: ldplayer removed, possibly for good (FTBFS upstream)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 *  Beatmania DJ Main Board (GX753)
3
 
 *
4
 
 *  Product numbers:
5
 
 *  GQ753 beatmania (first release in 1997.12)
6
 
 *  Gx853 beatmania 2nd MIX (1998.03)
7
 
 *  Gx825 beatmania 3rd MIX (1998.09)
8
 
 *  Gx858 beatmania complete MIX (1999.01)
9
 
 *  Gx847 beatmania 4th MIX (1999.04)
10
 
 *  Gx981 beatmania 5th MIX (1999.09)
11
 
 *  Gx988 beatmania complete MIX 2 (2000.01)
12
 
 *  Gx993 beatmania Club MIX (2000.03)
13
 
 *  Gx995 beatmania featuring Dreams Come True (2000.05)
14
 
 *  GxA05 beatmania CORE REMIX (2000.11)
15
 
 *  GxA21 beatmania 6th MIX (2001.07)
16
 
 *  GxB07 beatmania 7th MIX (2002.01)
17
 
 *  GxC01 beatmania THE FINAL (2002.07))
18
 
 *
19
 
 *  Gx803 Pop'n Music 1 (1998.09)
20
 
 *  Gx831 Pop'n Music 2 (1999.04)
21
 
 *  Gx980 Pop'n Music 3 (1999.09)
22
 
 *
23
 
 *  ????? Pop'n Stage (1999.11)
24
 
 *  Gx970 Pop'n Stage EX (2000.03)
25
 
 *
26
 
 *  Chips:
27
 
 *  15a:    MC68EC020FG25
28
 
 *  25b:    001642
29
 
 *  18d:    055555 (priority encoder)
30
 
 *   5f:    056766 (sprites)
31
 
 *  18f:    056832 (tiles)
32
 
 *  22f:    058143 = 054156 (tiles)
33
 
 *  12j:    058141 = 054539 (x2) (2 sound chips in one)
34
 
 *
35
 
 *  TODO:
36
 
 *  - correct FPS
37
 
 *
38
 
 */
39
 
 
40
 
/*
41
 
 
42
 
Dumping a HD image.
43
 
 
44
 
2.5 inch    2.5 to                                  2.5 to
45
 
hard drive  3.5 adapter     long 3.5 IDE cable      3.5 adapter   PCB
46
 
               /---|-    |----------------------|    -|---\
47
 
|------|-   |-/    |-    |----------------------|    -|    \-|    -|
48
 
|      |-   |      |-    |----------------------|    -|      |    -|
49
 
|------|-   |-\    |-    |----------------------|    -|    /-|    -|
50
 
               \---|-    |----------------------|    -|---/
51
 
                  ||                                  ||
52
 
                  ||                            /\    ||<-- Power connector
53
 
                  ||                            ||          not used
54
 
                  ||                            ||
55
 
                  ||
56
 
               ---------                   unplug here
57
 
               |  PC   |                   when game PCB is booted
58
 
               |Power  |                   and working. Boot Windows and stop at menu (F8)
59
 
               |Supply |                   Then plug HD into PC IDE controller, and continue boot process
60
 
               |+5V and|                   then dump the hard drive with Winhex
61
 
               |GND    |                   once PC is booted up again.
62
 
               ---------
63
 
 
64
 
*/
65
 
 
66
 
#include "emu.h"
67
 
#include "deprecat.h"
68
 
#include "cpu/m68000/m68000.h"
69
 
#include "machine/idectrl.h"
70
 
#include "sound/k054539.h"
71
 
#include "video/konicdev.h"
72
 
 
73
 
 
74
 
extern UINT32 *djmain_obj_ram;
75
 
 
76
 
VIDEO_UPDATE( djmain );
77
 
VIDEO_START( djmain );
78
 
extern void djmain_tile_callback(running_machine* machine, int layer, int *code, int *color, int *flags);
79
 
 
80
 
 
81
 
static int sndram_bank;
82
 
static UINT8 *sndram;
83
 
 
84
 
static int turntable_select;
85
 
static UINT8 turntable_last_pos[2];
86
 
static UINT16 turntable_pos[2];
87
 
 
88
 
static UINT8 pending_vb_int;
89
 
static UINT16 v_ctrl;
90
 
static UINT32 obj_regs[0xa0/4];
91
 
 
92
 
static const UINT8 *ide_user_password;
93
 
static const UINT8 *ide_master_password;
94
 
 
95
 
#define DISABLE_VB_INT  (!(v_ctrl & 0x8000))
96
 
 
97
 
 
98
 
 
99
 
/*************************************
100
 
 *
101
 
 *  68k CPU memory handlers
102
 
 *
103
 
 *************************************/
104
 
 
105
 
static WRITE32_HANDLER( paletteram32_w )
106
 
{
107
 
        int r,g,b;
108
 
 
109
 
        COMBINE_DATA(&space->machine->generic.paletteram.u32[offset]);
110
 
        data = space->machine->generic.paletteram.u32[offset];
111
 
 
112
 
        r = (data >>  0) & 0xff;
113
 
        g = (data >>  8) & 0xff;
114
 
        b = (data >> 16) & 0xff;
115
 
 
116
 
        palette_set_color(space->machine, offset, MAKE_RGB(r, g, b));
117
 
}
118
 
 
119
 
 
120
 
//---------
121
 
 
122
 
static void sndram_set_bank(running_machine *machine)
123
 
{
124
 
        sndram = memory_region(machine, "shared") + 0x80000 * sndram_bank;
125
 
}
126
 
 
127
 
static WRITE32_HANDLER( sndram_bank_w )
128
 
{
129
 
        if (ACCESSING_BITS_16_31)
130
 
        {
131
 
                sndram_bank = (data >> 16) & 0x1f;
132
 
                sndram_set_bank(space->machine);
133
 
        }
134
 
}
135
 
 
136
 
static READ32_HANDLER( sndram_r )
137
 
{
138
 
        UINT32 data = 0;
139
 
 
140
 
        if (ACCESSING_BITS_24_31)
141
 
                data |= sndram[offset * 4] << 24;
142
 
 
143
 
        if (ACCESSING_BITS_16_23)
144
 
                data |= sndram[offset * 4 + 1] << 16;
145
 
 
146
 
        if (ACCESSING_BITS_8_15)
147
 
                data |= sndram[offset * 4 + 2] << 8;
148
 
 
149
 
        if (ACCESSING_BITS_0_7)
150
 
                data |= sndram[offset * 4 + 3];
151
 
 
152
 
        return data;
153
 
}
154
 
 
155
 
static WRITE32_HANDLER( sndram_w )
156
 
{
157
 
        if (ACCESSING_BITS_24_31)
158
 
                sndram[offset * 4] = data >> 24;
159
 
 
160
 
        if (ACCESSING_BITS_16_23)
161
 
                sndram[offset * 4 + 1] = data >> 16;
162
 
 
163
 
        if (ACCESSING_BITS_8_15)
164
 
                sndram[offset * 4 + 2] = data >> 8;
165
 
 
166
 
        if (ACCESSING_BITS_0_7)
167
 
                sndram[offset * 4 + 3] = data;
168
 
}
169
 
 
170
 
 
171
 
//---------
172
 
 
173
 
static READ16_HANDLER( dual539_r )
174
 
{
175
 
        UINT16 ret = 0;
176
 
 
177
 
        if (ACCESSING_BITS_0_7)
178
 
                ret |= k054539_r(devtag_get_device(space->machine, "konami2"), offset);
179
 
        if (ACCESSING_BITS_8_15)
180
 
                ret |= k054539_r(devtag_get_device(space->machine, "konami1"), offset)<<8;
181
 
 
182
 
        return ret;
183
 
}
184
 
 
185
 
static WRITE16_HANDLER( dual539_w )
186
 
{
187
 
        if (ACCESSING_BITS_0_7)
188
 
                k054539_w(devtag_get_device(space->machine, "konami2"), offset, data);
189
 
        if (ACCESSING_BITS_8_15)
190
 
                k054539_w(devtag_get_device(space->machine, "konami1"), offset, data>>8);
191
 
}
192
 
 
193
 
 
194
 
//---------
195
 
 
196
 
static READ32_HANDLER( obj_ctrl_r )
197
 
{
198
 
        // read obj_regs[0x0c/4]: unknown
199
 
        // read obj_regs[0x24/4]: unknown
200
 
 
201
 
        return obj_regs[offset];
202
 
}
203
 
 
204
 
static WRITE32_HANDLER( obj_ctrl_w )
205
 
{
206
 
        // write obj_regs[0x28/4]: bank for rom readthrough
207
 
 
208
 
        COMBINE_DATA(&obj_regs[offset]);
209
 
}
210
 
 
211
 
static READ32_HANDLER( obj_rom_r )
212
 
{
213
 
        UINT8 *mem8 = memory_region(space->machine, "gfx1");
214
 
        int bank = obj_regs[0x28/4] >> 16;
215
 
 
216
 
        offset += bank * 0x200;
217
 
        offset *= 4;
218
 
 
219
 
        if (ACCESSING_BITS_0_15)
220
 
                offset += 2;
221
 
 
222
 
        if (mem_mask & 0xff00ff00)
223
 
                offset++;
224
 
 
225
 
        return mem8[offset] * 0x01010101;
226
 
}
227
 
 
228
 
 
229
 
//---------
230
 
 
231
 
static WRITE32_HANDLER( v_ctrl_w )
232
 
{
233
 
        if (ACCESSING_BITS_16_31)
234
 
        {
235
 
                data >>= 16;
236
 
                mem_mask >>= 16;
237
 
                COMBINE_DATA(&v_ctrl);
238
 
 
239
 
                if (pending_vb_int && !DISABLE_VB_INT)
240
 
                {
241
 
                        pending_vb_int = 0;
242
 
                        cputag_set_input_line(space->machine, "maincpu", M68K_IRQ_4, HOLD_LINE);
243
 
                }
244
 
        }
245
 
}
246
 
 
247
 
static READ32_HANDLER( v_rom_r )
248
 
{
249
 
        running_device *k056832 = devtag_get_device(space->machine, "k056832");
250
 
        UINT8 *mem8 = memory_region(space->machine, "gfx2");
251
 
        int bank = k056832_word_r(k056832, 0x34/2, 0xffff);
252
 
 
253
 
        offset *= 2;
254
 
 
255
 
        if (!ACCESSING_BITS_24_31)
256
 
                offset += 1;
257
 
 
258
 
        offset += bank * 0x800 * 4;
259
 
 
260
 
        if (v_ctrl & 0x020)
261
 
                offset += 0x800 * 2;
262
 
 
263
 
        return mem8[offset] * 0x01010000;
264
 
}
265
 
 
266
 
 
267
 
//---------
268
 
 
269
 
static READ8_HANDLER( inp1_r )
270
 
{
271
 
        static const char *const portnames[] = { "DSW3", "BTN3", "BTN2", "BTN1" };
272
 
        return input_port_read(space->machine, portnames[ offset & 0x03 ]);
273
 
}
274
 
 
275
 
static READ8_HANDLER( inp2_r )
276
 
{
277
 
        static const char *const portnames[] = { "DSW1", "DSW2", "UNK2", "UNK1" };
278
 
        return input_port_read(space->machine, portnames[ offset & 0x03 ]);
279
 
}
280
 
 
281
 
static READ32_HANDLER( turntable_r )
282
 
{
283
 
        UINT32 result = 0;
284
 
        static const char *const ttnames[] = { "TT1", "TT2" };
285
 
 
286
 
        if (ACCESSING_BITS_8_15)
287
 
        {
288
 
                UINT8 pos;
289
 
                int delta;
290
 
 
291
 
                pos = input_port_read_safe(space->machine, ttnames[turntable_select], 0);
292
 
                delta = pos - turntable_last_pos[turntable_select];
293
 
                if (delta < -128)
294
 
                        delta += 256;
295
 
                if (delta > 128)
296
 
                        delta -= 256;
297
 
 
298
 
                turntable_pos[turntable_select] += delta * 70;
299
 
                turntable_last_pos[turntable_select] = pos;
300
 
 
301
 
                result |= turntable_pos[turntable_select] & 0xff00;
302
 
        }
303
 
 
304
 
        return result;
305
 
}
306
 
 
307
 
static WRITE32_HANDLER( turntable_select_w )
308
 
{
309
 
        if (ACCESSING_BITS_16_23)
310
 
                turntable_select = (data >> 19) & 1;
311
 
}
312
 
 
313
 
 
314
 
//---------
315
 
 
316
 
#define IDE_STD_OFFSET  (0x1f0/2)
317
 
#define IDE_ALT_OFFSET  (0x3f6/2)
318
 
 
319
 
static READ32_DEVICE_HANDLER( ide_std_r )
320
 
{
321
 
        if (ACCESSING_BITS_0_7)
322
 
                return ide_controller16_r(device, IDE_STD_OFFSET + offset, 0xff00) >> 8;
323
 
        else
324
 
                return ide_controller16_r(device, IDE_STD_OFFSET + offset, 0xffff) << 16;
325
 
}
326
 
 
327
 
static WRITE32_DEVICE_HANDLER( ide_std_w )
328
 
{
329
 
        if (ACCESSING_BITS_0_7)
330
 
                ide_controller16_w(device, IDE_STD_OFFSET + offset, data << 8, 0xff00);
331
 
        else
332
 
                ide_controller16_w(device, IDE_STD_OFFSET + offset, data >> 16, 0xffff);
333
 
}
334
 
 
335
 
 
336
 
static READ32_DEVICE_HANDLER( ide_alt_r )
337
 
{
338
 
        if (offset == 0)
339
 
                return ide_controller16_r(device, IDE_ALT_OFFSET, 0x00ff) << 24;
340
 
 
341
 
        return 0;
342
 
}
343
 
 
344
 
static WRITE32_DEVICE_HANDLER( ide_alt_w )
345
 
{
346
 
        if (offset == 0 && ACCESSING_BITS_16_23)
347
 
                ide_controller16_w(device, IDE_ALT_OFFSET, data >> 24, 0x00ff);
348
 
}
349
 
 
350
 
 
351
 
//---------
352
 
 
353
 
// light/coin blocker control
354
 
 
355
 
/*
356
 
 beatmania/hiphopmania
357
 
    0x5d0000 (MSW16):
358
 
    bit 0: 1P button 1 LED
359
 
        1: 1P button 2 LED
360
 
        2: 1P button 3 LED
361
 
        3: 1P button 4 LED
362
 
        4: 1P button 5 LED
363
 
        5: Right blue HIGHLIGHT (active low)
364
 
        6: 2P button 1 LED
365
 
        7: 2P button 2 LED
366
 
        8: 2P button 3 LED
367
 
        9: Left blue HIGHLIGHT  (active low)
368
 
       10: Left red HIGHLIGHT   (active low)
369
 
       11: Right red HIGHLIGHT  (active low)
370
 
    12-15: not used?        (always low)
371
 
 
372
 
    0x5d2000 (MSW16):
373
 
        0: 1P START button LED
374
 
        1: 2P START button LED
375
 
        2: EFFECT button LED
376
 
     3-10: not used?        (always low)
377
 
       11: SSR
378
 
       12: 2P button 4 LED
379
 
       13: 2P button 5 LED
380
 
       14: COIN BLOCKER     (active low)
381
 
       15: not used?        (always low)
382
 
*/
383
 
 
384
 
static WRITE32_HANDLER( light_ctrl_1_w )
385
 
{
386
 
        if (ACCESSING_BITS_16_31)
387
 
        {
388
 
                output_set_value("right-red-hlt",  !(data & 0x08000000));       // Right red HIGHLIGHT
389
 
                output_set_value("left-red-hlt",   !(data & 0x04000000));       // Left red HIGHLIGHT
390
 
                output_set_value("left-blue-hlt",  !(data & 0x02000000));       // Left blue HIGHLIGHT
391
 
                output_set_value("right-blue-hlt", !(data & 0x00200000));       // Right blue HIGHLIGHT
392
 
        }
393
 
}
394
 
 
395
 
static WRITE32_HANDLER( light_ctrl_2_w )
396
 
{
397
 
        if (ACCESSING_BITS_16_31)
398
 
        {
399
 
                output_set_value("left-ssr",       !!(data & 0x08000000));      // SSR
400
 
                output_set_value("right-ssr",      !!(data & 0x08000000));      // SSR
401
 
                set_led_status(space->machine, 0, data & 0x00010000);                   // 1P START
402
 
                set_led_status(space->machine, 1, data & 0x00020000);                   // 2P START
403
 
                set_led_status(space->machine, 2, data & 0x00040000);                   // EFFECT
404
 
        }
405
 
}
406
 
 
407
 
 
408
 
//---------
409
 
 
410
 
// unknown ports :-(
411
 
 
412
 
static WRITE32_HANDLER( unknown590000_w )
413
 
{
414
 
        //logerror("%08X: unknown 590000 write %08X: %08X & %08X\n", cpu_get_previouspc(space->cpu), offset, data, mem_mask);
415
 
}
416
 
 
417
 
static WRITE32_HANDLER( unknown802000_w )
418
 
{
419
 
        //logerror("%08X: unknown 802000 write %08X: %08X & %08X\n", cpu_get_previouspc(space->cpu), offset, data, mem_mask);
420
 
}
421
 
 
422
 
static WRITE32_HANDLER( unknownc02000_w )
423
 
{
424
 
        //logerror("%08X: unknown c02000 write %08X: %08X & %08X\n", cpu_get_previouspc(space->cpu), offset, data, mem_mask);
425
 
}
426
 
 
427
 
 
428
 
 
429
 
/*************************************
430
 
 *
431
 
 *  Interrupt handlers
432
 
 *
433
 
 *************************************/
434
 
 
435
 
static INTERRUPT_GEN( vb_interrupt )
436
 
{
437
 
        pending_vb_int = 0;
438
 
 
439
 
        if (DISABLE_VB_INT)
440
 
        {
441
 
                pending_vb_int = 1;
442
 
                return;
443
 
        }
444
 
 
445
 
        //logerror("V-Blank interrupt\n");
446
 
        cpu_set_input_line(device, M68K_IRQ_4, HOLD_LINE);
447
 
}
448
 
 
449
 
 
450
 
static void ide_interrupt(running_device *device, int state)
451
 
{
452
 
        if (state != CLEAR_LINE)
453
 
        {
454
 
                //logerror("IDE interrupt asserted\n");
455
 
                cputag_set_input_line(device->machine, "maincpu", M68K_IRQ_1, HOLD_LINE);
456
 
        }
457
 
        else
458
 
        {
459
 
                //logerror("IDE interrupt cleared\n");
460
 
                cputag_set_input_line(device->machine, "maincpu", M68K_IRQ_1, CLEAR_LINE);
461
 
        }
462
 
}
463
 
 
464
 
 
465
 
 
466
 
 
467
 
/*************************************
468
 
 *
469
 
 *  Memory definitions
470
 
 *
471
 
 *************************************/
472
 
 
473
 
static ADDRESS_MAP_START( memory_map, ADDRESS_SPACE_PROGRAM, 32 )
474
 
        AM_RANGE(0x000000, 0x0fffff) AM_ROM                                                     // PRG ROM
475
 
        AM_RANGE(0x400000, 0x40ffff) AM_RAM                                                     // WORK RAM
476
 
        AM_RANGE(0x480000, 0x48443f) AM_RAM_WRITE(paletteram32_w)               // COLOR RAM
477
 
                                     AM_BASE_GENERIC(paletteram)
478
 
        AM_RANGE(0x500000, 0x57ffff) AM_READWRITE(sndram_r, sndram_w)                           // SOUND RAM
479
 
        AM_RANGE(0x580000, 0x58003f) AM_DEVREADWRITE("k056832", k056832_long_r, k056832_long_w)         // VIDEO REG (tilemap)
480
 
        AM_RANGE(0x590000, 0x590007) AM_WRITE(unknown590000_w)                                  // ??
481
 
        AM_RANGE(0x5a0000, 0x5a005f) AM_DEVWRITE("k055555", k055555_long_w)                                     // 055555: priority encoder
482
 
        AM_RANGE(0x5b0000, 0x5b04ff) AM_READWRITE16(dual539_r, dual539_w, 0xffffffff)                           // SOUND regs
483
 
        AM_RANGE(0x5c0000, 0x5c0003) AM_READ8(inp1_r, 0xffffffff)  //  DSW3,BTN3,BTN2,BTN1  // input port control (buttons and DIP switches)
484
 
        AM_RANGE(0x5c8000, 0x5c8003) AM_READ8(inp2_r, 0xffffffff)  //  DSW1,DSW2,UNK2,UNK1  // input port control (DIP switches)
485
 
        AM_RANGE(0x5d0000, 0x5d0003) AM_WRITE(light_ctrl_1_w)                                   // light/coin blocker control
486
 
        AM_RANGE(0x5d2000, 0x5d2003) AM_WRITE(light_ctrl_2_w)                                   // light/coin blocker control
487
 
        AM_RANGE(0x5d4000, 0x5d4003) AM_WRITE(v_ctrl_w)                                         // VIDEO control
488
 
        AM_RANGE(0x5d6000, 0x5d6003) AM_WRITE(sndram_bank_w)                                    // SOUND RAM bank
489
 
        AM_RANGE(0x5e0000, 0x5e0003) AM_READWRITE(turntable_r, turntable_select_w)              // input port control (turn tables)
490
 
        AM_RANGE(0x600000, 0x601fff) AM_READ(v_rom_r)                                           // VIDEO ROM readthrough (for POST)
491
 
        AM_RANGE(0x801000, 0x8017ff) AM_RAM AM_BASE(&djmain_obj_ram)                            // OBJECT RAM
492
 
        AM_RANGE(0x802000, 0x802fff) AM_WRITE(unknown802000_w)                                  // ??
493
 
        AM_RANGE(0x803000, 0x80309f) AM_READWRITE(obj_ctrl_r, obj_ctrl_w)                       // OBJECT REGS
494
 
        AM_RANGE(0x803800, 0x803fff) AM_READ(obj_rom_r)                                         // OBJECT ROM readthrough (for POST)
495
 
        AM_RANGE(0xc00000, 0xc01fff) AM_DEVREADWRITE("k056832", k056832_ram_long_r, k056832_ram_long_w) // VIDEO RAM (tilemap) (beatmania)
496
 
        AM_RANGE(0xc02000, 0xc02047) AM_WRITE(unknownc02000_w)                                  // ??
497
 
        AM_RANGE(0xd00000, 0xd0000f) AM_DEVREADWRITE("ide", ide_std_r, ide_std_w)                               // IDE control regs (hiphopmania)
498
 
        AM_RANGE(0xd4000c, 0xd4000f) AM_DEVREADWRITE("ide", ide_alt_r, ide_alt_w)                               // IDE status control reg (hiphopmania)
499
 
        AM_RANGE(0xe00000, 0xe01fff) AM_DEVREADWRITE("k056832", k056832_ram_long_r, k056832_ram_long_w) // VIDEO RAM (tilemap) (hiphopmania)
500
 
        AM_RANGE(0xf00000, 0xf0000f) AM_DEVREADWRITE("ide", ide_std_r, ide_std_w)                               // IDE control regs (beatmania)
501
 
        AM_RANGE(0xf4000c, 0xf4000f) AM_DEVREADWRITE("ide", ide_alt_r, ide_alt_w)                               // IDE status control reg (beatmania)
502
 
ADDRESS_MAP_END
503
 
 
504
 
 
505
 
 
506
 
/*************************************
507
 
 *
508
 
 *  Port definitions
509
 
 *
510
 
 *************************************/
511
 
 
512
 
// #define PRIORITY_EASINESS_TO_PLAY
513
 
 
514
 
//--------- beatmania
515
 
 
516
 
static INPUT_PORTS_START( beatmania_btn ) // and turntables
517
 
        PORT_START("BTN1")
518
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
519
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
520
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
521
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
522
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
523
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
524
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
525
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
526
 
        PORT_START("BTN2")
527
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
528
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
529
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2)
530
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
531
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
532
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
533
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Effect") /* EFFECT */
534
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
535
 
        PORT_START("BTN3")
536
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F2)   /* TEST SW */
537
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service")      /* SERVICE */
538
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Reset")                /* RESET SW */
539
 
        PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN )
540
 
        PORT_START("UNK1")
541
 
        PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
542
 
        PORT_START("UNK2")
543
 
        PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
544
 
        PORT_START("TT1")               /* turn table 1P */
545
 
        PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_PLAYER(1)
546
 
        PORT_START("TT2")               /* turn table 2P */
547
 
        PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_PLAYER(2)
548
 
INPUT_PORTS_END
549
 
 
550
 
#ifdef PRIORITY_EASINESS_TO_PLAY
551
 
        #define BEATMANIA_DSW1_COINAGE_OLD \
552
 
                PORT_DIPNAME( 0x1f, 0x1f, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8,7,6,5,4") \
553
 
                PORT_DIPSETTING(    0x1e, "1P 3C / 2P 6C / Continue 3C" ) \
554
 
                PORT_DIPSETTING(    0x01, "1P 3C / 2P 6C / Continue 2C" ) \
555
 
                PORT_DIPSETTING(    0x11, "1P 3C / 2P 6C / Continue 1C" ) \
556
 
                PORT_DIPSETTING(    0x15, "1P 3C / 2P 3C / Continue 3C" ) \
557
 
                PORT_DIPSETTING(    0x0d, "1P 3C / 2P 3C / Continue 2C" ) \
558
 
                PORT_DIPSETTING(    0x1d, "1P 3C / 2P 3C / Continue 1C" ) \
559
 
                PORT_DIPSETTING(    0x09, "1P 3C / 2P 4C / Continue 3C" ) \
560
 
                PORT_DIPSETTING(    0x19, "1P 3C / 2P 4C / Continue 2C" ) \
561
 
                PORT_DIPSETTING(    0x05, "1P 3C / 2P 4C / Continue 1C" ) \
562
 
                PORT_DIPSETTING(    0x03, "1P 2C / 2P 4C / Continue 2C" ) \
563
 
                PORT_DIPSETTING(    0x1f, "1P 2C / 2P 4C / Continue 1C" ) \
564
 
                PORT_DIPSETTING(    0x0b, "1P 2C / 2P 3C / Continue 2C" ) \
565
 
                PORT_DIPSETTING(    0x1b, "1P 2C / 2P 3C / Continue 1C" ) \
566
 
                PORT_DIPSETTING(    0x07, "1P 2C / 2P 2C / Continue 2C" ) \
567
 
                PORT_DIPSETTING(    0x17, "1P 2C / 2P 2C / Continue 1C" ) \
568
 
                PORT_DIPSETTING(    0x0f, "1P 1C / 2P 2C / Continue 1C" ) \
569
 
                PORT_DIPSETTING(    0x13, "1P 1C / 2P 1C / Continue 1C" ) \
570
 
                PORT_DIPSETTING(    0x00, "Free_Play" )
571
 
#else
572
 
        #define BEATMANIA_DSW1_COINAGE_OLD \
573
 
                PORT_DIPNAME( 0x1f, 0x1f, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8,7,6,5,4") \
574
 
                PORT_DIPSETTING(    0x1e, "1P 3C / 2P 6C / Continue 3C" ) \
575
 
                PORT_DIPSETTING(    0x01, "1P 3C / 2P 6C / Continue 2C" ) \
576
 
                PORT_DIPSETTING(    0x11, "1P 3C / 2P 6C / Continue 1C" ) \
577
 
                PORT_DIPSETTING(    0x15, "1P 3C / 2P 3C / Continue 3C" ) \
578
 
                PORT_DIPSETTING(    0x0d, "1P 3C / 2P 3C / Continue 2C" ) \
579
 
                PORT_DIPSETTING(    0x1d, "1P 3C / 2P 3C / Continue 1C" ) \
580
 
                PORT_DIPSETTING(    0x09, "1P 3C / 2P 4C / Continue 3C" ) \
581
 
                PORT_DIPSETTING(    0x19, "1P 3C / 2P 4C / Continue 2C" ) \
582
 
                PORT_DIPSETTING(    0x05, "1P 3C / 2P 4C / Continue 1C" ) \
583
 
                PORT_DIPSETTING(    0x03, "1P 2C / 2P 4C / Continue 2C" ) \
584
 
                PORT_DIPSETTING(    0x1f, "1P 2C / 2P 4C / Continue 1C" ) \
585
 
                PORT_DIPSETTING(    0x0b, "1P 2C / 2P 3C / Continue 2C" ) \
586
 
                PORT_DIPSETTING(    0x1b, "1P 2C / 2P 3C / Continue 1C" ) \
587
 
                PORT_DIPSETTING(    0x07, "1P 2C / 2P 2C / Continue 2C" ) \
588
 
                PORT_DIPSETTING(    0x17, "1P 2C / 2P 2C / Continue 1C" ) \
589
 
                PORT_DIPSETTING(    0x0f, "1P 1C / 2P 2C / Continue 1C" ) \
590
 
                PORT_DIPSETTING(    0x13, "1P 1C / 2P 1C / Continue 1C" ) \
591
 
                  PORT_DIPSETTING(  0x0e, "Free_Play" ) /* duplicated setting */ \
592
 
                  PORT_DIPSETTING(  0x16, "Free_Play" ) /* duplicated setting */ \
593
 
                  PORT_DIPSETTING(  0x06, "Free_Play" ) /* duplicated setting */ \
594
 
                  PORT_DIPSETTING(  0x1a, "Free_Play" ) /* duplicated setting */ \
595
 
                  PORT_DIPSETTING(  0x0a, "Free_Play" ) /* duplicated setting */ \
596
 
                  PORT_DIPSETTING(  0x12, "Free_Play" ) /* duplicated setting */ \
597
 
                  PORT_DIPSETTING(  0x02, "Free_Play" ) /* duplicated setting */ \
598
 
                  PORT_DIPSETTING(  0x1c, "Free_Play" ) /* duplicated setting */ \
599
 
                  PORT_DIPSETTING(  0x0c, "Free_Play" ) /* duplicated setting */ \
600
 
                  PORT_DIPSETTING(  0x14, "Free_Play" ) /* duplicated setting */ \
601
 
                  PORT_DIPSETTING(  0x04, "Free_Play" ) /* duplicated setting */ \
602
 
                  PORT_DIPSETTING(  0x18, "Free_Play" ) /* duplicated setting */ \
603
 
                  PORT_DIPSETTING(  0x08, "Free_Play" ) /* duplicated setting */ \
604
 
                  PORT_DIPSETTING(  0x10, "Free_Play" ) /* duplicated setting */ \
605
 
                PORT_DIPSETTING(    0x00, "Free_Play" )
606
 
#endif
607
 
 
608
 
#define BEATMANIA_DSW1_COINAGE_NEW \
609
 
        PORT_DIPNAME( 0x20, 0x20, "Free Play (Ignore Coinage)" ) PORT_DIPLOCATION("SW1:3") \
610
 
        PORT_DIPSETTING(    0x20, DEF_STR( Off ) ) \
611
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) ) \
612
 
        PORT_DIPNAME( 0x1f, 0x1f, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8,7,6,5,4") \
613
 
        PORT_DIPSETTING(    0x00, "1P 8C / 2P 16C / Continue 8C" ) \
614
 
        PORT_DIPSETTING(    0x01, "1P 8C / 2P 16C / Continue 7C" ) \
615
 
        PORT_DIPSETTING(    0x02, "1P 8C / 2P 16C / Continue 6C" ) \
616
 
        PORT_DIPSETTING(    0x03, "1P 7C / 2P 14C / Continue 7C" ) \
617
 
        PORT_DIPSETTING(    0x04, "1P 7C / 2P 14C / Continue 6C" ) \
618
 
        PORT_DIPSETTING(    0x05, "1P 7C / 2P 14C / Continue 5C" ) \
619
 
        PORT_DIPSETTING(    0x06, "1P 6C / 2P 12C / Continue 6C" ) \
620
 
        PORT_DIPSETTING(    0x07, "1P 6C / 2P 12C / Continue 5C" ) \
621
 
        PORT_DIPSETTING(    0x08, "1P 6C / 2P 12C / Continue 4C" ) \
622
 
        PORT_DIPSETTING(    0x09, "1P 5C / 2P 10C / Continue 5C" ) \
623
 
        PORT_DIPSETTING(    0x0b, "1P 5C / 2P 10C / Continue 3C" ) \
624
 
        PORT_DIPSETTING(    0x0a, "1P 5C / 2P 10C / Continue 4C" ) \
625
 
        PORT_DIPSETTING(    0x0c, "1P 4C / 2P 8C / Continue 4C" ) \
626
 
        PORT_DIPSETTING(    0x0d, "1P 4C / 2P 8C / Continue 3C" ) \
627
 
        PORT_DIPSETTING(    0x0e, "1P 4C / 2P 8C / Continue 2C" ) \
628
 
        PORT_DIPSETTING(    0x0f, "1P 3C / 2P 6C / Continue 3C" ) \
629
 
        PORT_DIPSETTING(    0x10, "1P 3C / 2P 6C / Continue 2C" ) \
630
 
        PORT_DIPSETTING(    0x11, "1P 3C / 2P 6C / Continue 1C" ) \
631
 
        PORT_DIPSETTING(    0x12, "1P 3C / 2P 4C / Continue 3C" ) \
632
 
        PORT_DIPSETTING(    0x13, "1P 3C / 2P 4C / Continue 2C" ) \
633
 
        PORT_DIPSETTING(    0x14, "1P 3C / 2P 4C / Continue 1C" ) \
634
 
        PORT_DIPSETTING(    0x15, "1P 3C / 2P 3C / Continue 3C" ) \
635
 
        PORT_DIPSETTING(    0x16, "1P 3C / 2P 3C / Continue 2C" ) \
636
 
        PORT_DIPSETTING(    0x17, "1P 3C / 2P 3C / Continue 1C" ) \
637
 
        PORT_DIPSETTING(    0x1a, "1P 2C / 2P 3C / Continue 2C" ) \
638
 
        PORT_DIPSETTING(    0x1b, "1P 2C / 2P 3C / Continue 1C" ) \
639
 
        PORT_DIPSETTING(    0x18, "1P 2C / 2P 4C / Continue 2C" ) \
640
 
        PORT_DIPSETTING(    0x1f, "1P 2C / 2P 4C / Continue 1C" ) \
641
 
        PORT_DIPSETTING(    0x1c, "1P 2C / 2P 2C / Continue 2C" ) \
642
 
        PORT_DIPSETTING(    0x1d, "1P 2C / 2P 2C / Continue 1C" ) \
643
 
        PORT_DIPSETTING(    0x1e, "1P 1C / 2P 2C / Continue 1C" ) \
644
 
        PORT_DIPSETTING(    0x19, "1P 1C / 2P 1C / Continue 1C" )
645
 
 
646
 
#define BEATMANIA_DSW2_SCOREDISPLAY \
647
 
        PORT_DIPNAME( 0x80, 0x80, "Score Display" ) PORT_DIPLOCATION("SW2:1") \
648
 
        PORT_DIPSETTING(    0x00, DEF_STR( Off ) ) \
649
 
        PORT_DIPSETTING(    0x80, DEF_STR( On ) )
650
 
 
651
 
#define BEATMANIA_DSW2_DEMOSOUNDS \
652
 
        PORT_DIPNAME( 0x60, 0x60, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:3,2") \
653
 
        PORT_DIPSETTING(    0x60, "Loud" ) \
654
 
        PORT_DIPSETTING(    0x20, DEF_STR( Medium ) ) \
655
 
        PORT_DIPSETTING(    0x40, DEF_STR( Low ) ) \
656
 
        PORT_DIPSETTING(    0x00, "Silent" )
657
 
 
658
 
#define BEATMANIA_DSW2_LEVELDISPLAY \
659
 
        PORT_DIPNAME( 0x10, 0x10, "Level Display" ) PORT_DIPLOCATION("SW2:4") \
660
 
        PORT_DIPSETTING(    0x00, DEF_STR( Off ) ) \
661
 
        PORT_DIPSETTING(    0x10, DEF_STR( On ) )
662
 
 
663
 
#define BEATMANIA_DSW2_DIFFICULITY_OLD \
664
 
        PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:8,7,6,5") \
665
 
        PORT_DIPSETTING(    0x0a, "Level 0" ) \
666
 
        PORT_DIPSETTING(    0x0e, "Level 1" ) \
667
 
        PORT_DIPSETTING(    0x0d, "Level 2" ) \
668
 
        PORT_DIPSETTING(    0x0c, "Level 3" ) \
669
 
        PORT_DIPSETTING(    0x0b, "Level 4" ) \
670
 
        PORT_DIPSETTING(    0x0f, "Level 5" ) \
671
 
        PORT_DIPSETTING(    0x09, "Level 6" ) \
672
 
        PORT_DIPSETTING(    0x08, "Level 7" ) \
673
 
        PORT_DIPSETTING(    0x07, "Level 8" ) \
674
 
        PORT_DIPSETTING(    0x06, "Level 9" ) \
675
 
        PORT_DIPSETTING(    0x05, "Level 10" ) \
676
 
        PORT_DIPSETTING(    0x04, "Level 11" ) \
677
 
        PORT_DIPSETTING(    0x03, "Level 12" ) \
678
 
        PORT_DIPSETTING(    0x02, "Level 13" ) \
679
 
        PORT_DIPSETTING(    0x01, "Level 14" ) \
680
 
        PORT_DIPSETTING(    0x00, "Level 15" )
681
 
 
682
 
#define BEATMANIA_DSW2_DIFFICULITY_NEW( str, str2 ) \
683
 
        PORT_DIPNAME( 0x0c, 0x0c, str ) PORT_DIPLOCATION("SW2:6,5") \
684
 
        PORT_DIPSETTING(    0x08, "Level 0" ) \
685
 
        PORT_DIPSETTING(    0x0c, "Level 1" ) \
686
 
        PORT_DIPSETTING(    0x04, "Level 2" ) \
687
 
        PORT_DIPSETTING(    0x00, "Level 3" ) \
688
 
        PORT_DIPNAME( 0x03, 0x03, str2 ) PORT_DIPLOCATION("SW2:8,7") \
689
 
        PORT_DIPSETTING(    0x02, "Level 0" ) \
690
 
        PORT_DIPSETTING(    0x03, "Level 1" ) \
691
 
        PORT_DIPSETTING(    0x01, "Level 2" ) \
692
 
        PORT_DIPSETTING(    0x00, "Level 3" )
693
 
 
694
 
#define BEATMANIA_DSW3_EVENTMODE \
695
 
        PORT_DIPNAME( 0x20, 0x20, "Event Mode (Ignore Coinage)" ) PORT_DIPLOCATION("SW3:1") \
696
 
        PORT_DIPSETTING(    0x20, DEF_STR( Off ) ) \
697
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
698
 
 
699
 
#ifdef PRIORITY_EASINESS_TO_PLAY
700
 
        #define BEATMANIA_DSW3_STAGES_OLD \
701
 
                PORT_DIPNAME( 0x1c, 0x1c, "Normal Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
702
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
703
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
704
 
                PORT_DIPSETTING(    0x08, "5 Stages" ) \
705
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
706
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
707
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
708
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
709
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
710
 
                PORT_DIPSETTING(    0x08, "5 Stages" )
711
 
#else
712
 
        #define BEATMANIA_DSW3_STAGES_OLD \
713
 
                PORT_DIPNAME( 0x1c, 0x1c, "Normal Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
714
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
715
 
                  PORT_DIPSETTING(  0x1c, "4 Stages" ) /* duplicated setting */ \
716
 
                  PORT_DIPSETTING(  0x0c, "4 Stages" ) /* duplicated setting */ \
717
 
                  PORT_DIPSETTING(  0x14, "4 Stages" ) /* duplicated setting */ \
718
 
                  PORT_DIPSETTING(  0x04, "4 Stages" ) /* duplicated setting */ \
719
 
                  PORT_DIPSETTING(  0x18, "4 Stages" ) /* duplicated setting */ \
720
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
721
 
                PORT_DIPSETTING(    0x08, "5 Stages" ) \
722
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
723
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
724
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
725
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
726
 
                  PORT_DIPSETTING(  0x1c, "4 Stages" ) /* duplicated setting */ \
727
 
                  PORT_DIPSETTING(  0x04, "4 Stages" ) /* duplicated setting */ \
728
 
                  PORT_DIPSETTING(  0x18, "4 Stages" ) /* duplicated setting */ \
729
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
730
 
                PORT_DIPSETTING(    0x08, "5 Stages" )
731
 
#endif
732
 
 
733
 
#ifdef PRIORITY_EASINESS_TO_PLAY
734
 
        #define BEATMANIA_DSW3_STAGES_MIDDLE( str ) \
735
 
                PORT_DIPNAME( 0x1c, 0x1c, str ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
736
 
                PORT_DIPSETTING(    0x10, "3 / 3 Stages" ) \
737
 
                PORT_DIPSETTING(    0x00, "4 / 4 Stages" ) \
738
 
                PORT_DIPSETTING(    0x08, "5 / 5 Stages" ) \
739
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
740
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
741
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
742
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
743
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
744
 
                PORT_DIPSETTING(    0x08, "5 Stages" )
745
 
#else
746
 
        #define BEATMANIA_DSW3_STAGES_MIDDLE( str ) \
747
 
                PORT_DIPNAME( 0x1c, 0x1c, str ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
748
 
                PORT_DIPSETTING(    0x10, "3 / 3 Stages" ) \
749
 
                  PORT_DIPSETTING(  0x1c, "4 / 4 Stages" ) /* duplicated setting */ \
750
 
                  PORT_DIPSETTING(  0x0c, "4 / 4 Stages" ) /* duplicated setting */ \
751
 
                  PORT_DIPSETTING(  0x14, "4 / 4 Stages" ) /* duplicated setting */ \
752
 
                  PORT_DIPSETTING(  0x04, "4 / 4 Stages" ) /* duplicated setting */ \
753
 
                  PORT_DIPSETTING(  0x18, "4 / 4 Stages" ) /* duplicated setting */ \
754
 
                PORT_DIPSETTING(    0x00, "4 / 4 Stages" ) \
755
 
                PORT_DIPSETTING(    0x08, "5 / 5 Stages" ) \
756
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
757
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
758
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
759
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
760
 
                  PORT_DIPSETTING(  0x1c, "4 Stages" ) /* duplicated setting */ \
761
 
                  PORT_DIPSETTING(  0x04, "4 Stages" ) /* duplicated setting */ \
762
 
                  PORT_DIPSETTING(  0x18, "4 Stages" ) /* duplicated setting */ \
763
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
764
 
                PORT_DIPSETTING(    0x08, "5 Stages" )
765
 
#endif
766
 
 
767
 
#ifdef PRIORITY_EASINESS_TO_PLAY
768
 
        #define BEATMANIA_DSW3_STAGES_NEW( str ) \
769
 
                PORT_DIPNAME( 0x1c, 0x1c, str ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
770
 
                PORT_DIPSETTING(    0x10, "3 / 2 Stages" ) \
771
 
                PORT_DIPSETTING(    0x00, "4 / 3 Stages" ) \
772
 
                PORT_DIPSETTING(    0x08, "5 / 3 Stages" ) \
773
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
774
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
775
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
776
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
777
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
778
 
                PORT_DIPSETTING(    0x08, "5 Stages" )
779
 
#else
780
 
        #define BEATMANIA_DSW3_STAGES_NEW( str ) \
781
 
                PORT_DIPNAME( 0x1c, 0x1c, str ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
782
 
                PORT_DIPSETTING(    0x10, "3 / 2 Stages" ) \
783
 
                  PORT_DIPSETTING(  0x1c, "4 / 3 Stages" ) /* duplicated setting */ \
784
 
                  PORT_DIPSETTING(  0x0c, "4 / 3 Stages" ) /* duplicated setting */ \
785
 
                  PORT_DIPSETTING(  0x14, "4 / 3 Stages" ) /* duplicated setting */ \
786
 
                  PORT_DIPSETTING(  0x04, "4 / 3 Stages" ) /* duplicated setting */ \
787
 
                  PORT_DIPSETTING(  0x18, "4 / 3 Stages" ) /* duplicated setting */ \
788
 
                PORT_DIPSETTING(    0x00, "4 / 3 Stages" ) \
789
 
                PORT_DIPSETTING(    0x08, "5 / 3 Stages" ) \
790
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
791
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
792
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
793
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
794
 
                  PORT_DIPSETTING(  0x1c, "4 Stages" ) /* duplicated setting */ \
795
 
                  PORT_DIPSETTING(  0x04, "4 Stages" ) /* duplicated setting */ \
796
 
                  PORT_DIPSETTING(  0x18, "4 Stages" ) /* duplicated setting */ \
797
 
                PORT_DIPSETTING(    0x00, "4 Stages" ) \
798
 
                PORT_DIPSETTING(    0x08, "5 Stages" )
799
 
#endif
800
 
 
801
 
#define BM1STMIX_DSW1 \
802
 
        PORT_START("DSW1") \
803
 
        PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x80, "SW1:1" ) \
804
 
        PORT_DIPUNKNOWN_DIPLOC( 0x40, 0x40, "SW1:2" ) \
805
 
        PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW1:3" ) \
806
 
        BEATMANIA_DSW1_COINAGE_OLD /* SW1:8,7,6,5,4 */
807
 
 
808
 
#define BM1STMIX_DSW2 \
809
 
        PORT_START("DSW2") \
810
 
        PORT_DIPNAME( 0x80, 0x80, "Enable Expert Mode" ) PORT_DIPLOCATION("SW2:1") \
811
 
        PORT_DIPSETTING(    0x00, DEF_STR( No ) ) \
812
 
        PORT_DIPSETTING(    0x80, DEF_STR( Yes ) ) \
813
 
        BEATMANIA_DSW2_DEMOSOUNDS /* SW2:3,2 */ \
814
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW2:4" ) \
815
 
        PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW2:5" ) \
816
 
        PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW2:6" ) \
817
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW2:7" ) \
818
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW2:8" )
819
 
 
820
 
#define BM1STMIX_DSW3 \
821
 
        PORT_START("DSW3") \
822
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
823
 
        PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW3:1" ) \
824
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW3:2" ) \
825
 
        PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW3:3" ) \
826
 
        PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW3:4" ) \
827
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
828
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
829
 
 
830
 
#define BM2NDMIX_DSW1 \
831
 
        PORT_START("DSW1") \
832
 
        PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x80, "SW1:1" ) \
833
 
        PORT_DIPUNKNOWN_DIPLOC( 0x40, 0x40, "SW1:2" ) \
834
 
        BEATMANIA_DSW1_COINAGE_NEW /* SW1:8,7,6,5,4,3 */
835
 
 
836
 
#define BM2NDMIX_DSW2 \
837
 
        PORT_START("DSW2") \
838
 
        BEATMANIA_DSW2_SCOREDISPLAY /* SW2:1 */ \
839
 
        BEATMANIA_DSW2_DEMOSOUNDS /* SW2:3,2 */ \
840
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW2:4" ) \
841
 
        BEATMANIA_DSW2_DIFFICULITY_OLD /* SW2:3,8,7,6,5 */
842
 
 
843
 
#define BM2NDMIX_DSW3 \
844
 
        PORT_START("DSW3") \
845
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
846
 
        BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
847
 
        PORT_DIPNAME( 0x18, 0x18, "Event Mode Stages" ) PORT_DIPLOCATION("SW3:3,2") \
848
 
        PORT_DIPSETTING(    0x18, "1 Stage" ) \
849
 
        PORT_DIPSETTING(    0x08, "2 Stages" ) \
850
 
        PORT_DIPSETTING(    0x10, "3 Stages" ) \
851
 
        PORT_DIPSETTING(    0x00, "4 Stages" ) \
852
 
        PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW3:4" ) \
853
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
854
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
855
 
 
856
 
#define BM3RDMIX_DSW3 \
857
 
        PORT_START("DSW3") \
858
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
859
 
        BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
860
 
        BEATMANIA_DSW3_STAGES_OLD /* SW3:4,3,2 */ \
861
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
862
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
863
 
 
864
 
#define BM4THMIX_DSW2( str, str2 ) \
865
 
        PORT_START("DSW2") \
866
 
        BEATMANIA_DSW2_SCOREDISPLAY /* SW2:1 */ \
867
 
        BEATMANIA_DSW2_DEMOSOUNDS /* SW2:3,2 */ \
868
 
        BEATMANIA_DSW2_LEVELDISPLAY /* SW2:4 */ \
869
 
        BEATMANIA_DSW2_DIFFICULITY_NEW( str, str2 ) /* SW2:8,7,6,5 */
870
 
 
871
 
#define BM4THMIX_DSW3( str ) \
872
 
        PORT_START("DSW3") \
873
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
874
 
        BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
875
 
        BEATMANIA_DSW3_STAGES_MIDDLE( str ) /* SW3:4,3,2 */ \
876
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
877
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
878
 
 
879
 
#define HMCOMPM2_DSW3( str ) \
880
 
        PORT_START("DSW3") \
881
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
882
 
        BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
883
 
        BEATMANIA_DSW3_STAGES_MIDDLE( str ) /* SW3:4,3,2 */ \
884
 
        PORT_DIPNAME( 0x02, 0x02, "Game Over Mode" ) PORT_DIPLOCATION("SW3:5") \
885
 
        PORT_DIPSETTING(    0x02, "On Stage Middle" ) \
886
 
        PORT_DIPSETTING(    0x00, "On Stage Last" ) \
887
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
888
 
 
889
 
#ifdef PRIORITY_EASINESS_TO_PLAY
890
 
        #define BMDCT_DSW3( str ) \
891
 
                PORT_START("DSW3") \
892
 
                PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
893
 
                BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
894
 
                PORT_DIPNAME( 0x1c, 0x1c, str ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
895
 
                PORT_DIPSETTING(    0x1c, "3 / 3 Stages" ) \
896
 
                PORT_DIPSETTING(    0x10, "4 / 4 Stages" ) \
897
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
898
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
899
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
900
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
901
 
                PORT_DIPSETTING(    0x1c, "4 Stages" ) \
902
 
                PORT_DIPSETTING(    0x08, "5 Stages" ) \
903
 
                PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
904
 
                PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
905
 
#else
906
 
        #define BMDCT_DSW3( str ) \
907
 
                PORT_START("DSW3") \
908
 
                PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
909
 
                BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
910
 
                PORT_DIPNAME( 0x1c, 0x1c, str ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
911
 
                PORT_DIPSETTING(    0x1c, "3 / 3 Stages" ) \
912
 
                  PORT_DIPSETTING(  0x0c, "3 / 3 Stages" ) /* duplicated setting */ \
913
 
                  PORT_DIPSETTING(  0x14, "3 / 3 Stages" ) /* duplicated setting */ \
914
 
                  PORT_DIPSETTING(  0x04, "3 / 3 Stages" ) /* duplicated setting */ \
915
 
                  PORT_DIPSETTING(  0x18, "3 / 3 Stages" ) /* duplicated setting */ \
916
 
                  PORT_DIPSETTING(  0x08, "3 / 3 Stages" ) /* duplicated setting */ \
917
 
                  PORT_DIPSETTING(  0x00, "3 / 3 Stages" ) /* duplicated setting */ \
918
 
                PORT_DIPSETTING(    0x10, "4 / 4 Stages" ) \
919
 
                PORT_DIPNAME( 0x1c, 0x1c, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:4,3,2") \
920
 
                PORT_DIPSETTING(    0x0c, "1 Stage" ) \
921
 
                PORT_DIPSETTING(    0x14, "2 Stages" ) \
922
 
                PORT_DIPSETTING(    0x10, "3 Stages" ) \
923
 
                PORT_DIPSETTING(    0x1c, "4 Stages" ) \
924
 
                  PORT_DIPSETTING(  0x04, "4 Stages" ) /* duplicated setting */ \
925
 
                  PORT_DIPSETTING(  0x18, "4 Stages" ) /* duplicated setting */ \
926
 
                  PORT_DIPSETTING(  0x00, "4 Stages" ) /* duplicated setting */ \
927
 
                PORT_DIPSETTING(    0x08, "5 Stages" ) \
928
 
                PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
929
 
                PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
930
 
#endif
931
 
 
932
 
#define BM6THMIX_DSW3( str ) \
933
 
        PORT_START("DSW3") \
934
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
935
 
        BEATMANIA_DSW3_EVENTMODE /* SW3:1 */ \
936
 
        BEATMANIA_DSW3_STAGES_NEW( str ) /* SW3:4,3,2 */ \
937
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
938
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
939
 
 
940
 
static INPUT_PORTS_START( bm1stmix )
941
 
        PORT_INCLUDE( beatmania_btn )
942
 
        BM1STMIX_DSW1
943
 
        BM1STMIX_DSW2
944
 
        BM1STMIX_DSW3
945
 
INPUT_PORTS_END
946
 
 
947
 
static INPUT_PORTS_START( bm2ndmix )
948
 
        PORT_INCLUDE( beatmania_btn )
949
 
        BM2NDMIX_DSW1
950
 
        BM2NDMIX_DSW2
951
 
        BM2NDMIX_DSW3
952
 
        /* "Free Hidden Songs" 3-3=On 3-6=On */
953
 
        PORT_MODIFY("DSW3")
954
 
        BEATMANIA_DSW3_EVENTMODE /* SW3:1 */
955
 
        PORT_DIPNAME( 0x10, 0x10, "Unused (Used if Event Mode)" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:2")
956
 
        PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
957
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
958
 
        PORT_DIPNAME( 0x08, 0x08, "Free Hidden Songs (step1of2)" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:3")
959
 
        PORT_DIPSETTING(    0x08, "No (Off)" )
960
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
961
 
        PORT_DIPNAME( 0x18, 0x18, "Event Mode Stages" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:3,2")
962
 
        PORT_DIPSETTING(    0x18, "1 Stage" )
963
 
        PORT_DIPSETTING(    0x08, "2 Stages" )
964
 
        PORT_DIPSETTING(    0x10, "3 Stages" )
965
 
        PORT_DIPSETTING(    0x00, "4 Stages" )
966
 
        PORT_DIPNAME( 0x01, 0x01, "Free Hidden Songs (step2of2)" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW3:6")
967
 
        PORT_DIPSETTING(    0x01, "No (Off)" )
968
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
969
 
        PORT_DIPNAME( 0x01, 0x01, "Unused (Used if not Event Mode)" ) PORT_CONDITION("DSW3", 0x20, PORTCOND_NOTEQUALS, 0x20) PORT_DIPLOCATION("SW3:6")
970
 
        PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
971
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
972
 
        /* "Free Hidden Songs" 3-3=On 3-6=On */
973
 
INPUT_PORTS_END
974
 
 
975
 
static INPUT_PORTS_START( bm3rdmix )
976
 
        PORT_INCLUDE( beatmania_btn )
977
 
        BM2NDMIX_DSW1
978
 
        BM2NDMIX_DSW2
979
 
        BM3RDMIX_DSW3
980
 
INPUT_PORTS_END
981
 
 
982
 
static INPUT_PORTS_START( bmcompmx )
983
 
        PORT_INCLUDE( beatmania_btn )
984
 
        BM2NDMIX_DSW1
985
 
        BM2NDMIX_DSW2
986
 
        BM3RDMIX_DSW3
987
 
        /* "Free Secret Expert Course" 1-1=Off 1-2=On 2-4=On 3-5=Off 3-6=On */
988
 
        PORT_MODIFY("DSW1")
989
 
        PORT_DIPNAME( 0x80, 0x80, "Free Secret Expert Course (step1of5)" ) PORT_DIPLOCATION("SW1:1")
990
 
        PORT_DIPSETTING(    0x80, "Yes (Off)" )
991
 
        PORT_DIPSETTING(    0x00, "No (On)" )
992
 
        PORT_DIPNAME( 0x40, 0x40, "Free Secret Expert Course (step2of5)" ) PORT_DIPLOCATION("SW1:2")
993
 
        PORT_DIPSETTING(    0x40, "No (Off)" )
994
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
995
 
        PORT_MODIFY("DSW2")
996
 
        PORT_DIPNAME( 0x10, 0x10, "Free Secret Expert Course (step3of5)" ) PORT_DIPLOCATION("SW2:4")
997
 
        PORT_DIPSETTING(    0x10, "No (Off)" )
998
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
999
 
        PORT_MODIFY("DSW3")
1000
 
        PORT_DIPNAME( 0x02, 0x02, "Free Secret Expert Course (step4of5)" ) PORT_DIPLOCATION("SW3:5")
1001
 
        PORT_DIPSETTING(    0x02, "Yes (Off)" )
1002
 
        PORT_DIPSETTING(    0x00, "No (On)" )
1003
 
        PORT_DIPNAME( 0x01, 0x01, "Free Secret Expert Course (step5of5)" ) PORT_DIPLOCATION("SW3:6")
1004
 
        PORT_DIPSETTING(    0x01, "No (Off)" )
1005
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
1006
 
        /* "Free Secret Expert Course" 1-1=Off 1-2=On 2-4=On 3-5=Off 3-6=On */
1007
 
INPUT_PORTS_END
1008
 
 
1009
 
static INPUT_PORTS_START( bm4thmix )
1010
 
        PORT_INCLUDE( beatmania_btn )
1011
 
        BM2NDMIX_DSW1
1012
 
        BM4THMIX_DSW2( "Basic / Hard Mode Difficulty", "Expert Mode Difficulty" )
1013
 
        BM4THMIX_DSW3( "Basic / Hard Mode Stages" )
1014
 
        /* "Free Secret Expert Course" 1-1=On 1-2=Off 2-1=On 3-5=On */
1015
 
        PORT_MODIFY("DSW1")
1016
 
        PORT_DIPNAME( 0x80, 0x80, "Free Secret Expert Course (step1of4)" ) PORT_DIPLOCATION("SW1:1")
1017
 
        PORT_DIPSETTING(    0x80, "No (Off)" )
1018
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
1019
 
        PORT_DIPNAME( 0x40, 0x40, "Free Secret Expert Course (step2of4)" ) PORT_DIPLOCATION("SW1:2")
1020
 
        PORT_DIPSETTING(    0x40, "Yes (Off)" )
1021
 
        PORT_DIPSETTING(    0x00, "No (On)" )
1022
 
        PORT_MODIFY("DSW2")
1023
 
        PORT_DIPNAME( 0x80, 0x80, "Score Display / Free Secret Expert Course (step3of4)" ) PORT_DIPLOCATION("SW2:1")
1024
 
        PORT_DIPSETTING(    0x80, "On / No (Off)" )
1025
 
        PORT_DIPSETTING(    0x00, "Off / Yes (On)" )
1026
 
        PORT_MODIFY("DSW3")
1027
 
        PORT_DIPNAME( 0x02, 0x02, "Free Secret Expert Course (step4of4)" ) PORT_DIPLOCATION("SW3:5")
1028
 
        PORT_DIPSETTING(    0x02, "No (Off)" )
1029
 
        PORT_DIPSETTING(    0x00, "Yes (On)" )
1030
 
        PORT_DIPNAME( 0x01, 0x01, "Score Display (if Free Secret Expert Course)" ) PORT_DIPLOCATION("SW3:6")
1031
 
        PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1032
 
        PORT_DIPSETTING(    0x01, DEF_STR( On ) )
1033
 
        /* "Free Secret Expert Course" 1-1=On 1-2=Off 2-1=On 3-5=On */
1034
 
INPUT_PORTS_END
1035
 
 
1036
 
static INPUT_PORTS_START( bm5thmix ) /* and bmcompm2 */
1037
 
        PORT_INCLUDE( beatmania_btn )
1038
 
        BM2NDMIX_DSW1
1039
 
        BM4THMIX_DSW2( "Basic / Hard Mode Difficulty", "Expert Mode Difficulty" )
1040
 
        BM4THMIX_DSW3( "Basic / Hard Mode Stages" )
1041
 
INPUT_PORTS_END
1042
 
 
1043
 
static INPUT_PORTS_START( hmcompm2 )
1044
 
        PORT_INCLUDE( beatmania_btn )
1045
 
        BM2NDMIX_DSW1
1046
 
        BM4THMIX_DSW2( "Basic / Hard Mode Difficulty", "Expert Mode Difficulty" )
1047
 
        BM4THMIX_DSW3( "Basic / Hard Mode Stages" )
1048
 
        PORT_MODIFY("DSW3")
1049
 
        PORT_DIPNAME( 0x02, 0x02, "Game Over Mode" ) PORT_DIPLOCATION("SW3:5")
1050
 
        PORT_DIPSETTING(    0x02, "On Stage Middle" )
1051
 
        PORT_DIPSETTING(    0x00, "On Stage Last" )
1052
 
INPUT_PORTS_END
1053
 
 
1054
 
static INPUT_PORTS_START( bmclubmx )
1055
 
        PORT_INCLUDE( beatmania_btn )
1056
 
        BM2NDMIX_DSW1
1057
 
        BM4THMIX_DSW2( "Normal / Maniac Mode Difficulty", "Expert Mode Difficulty" )
1058
 
        BM4THMIX_DSW3( "Normal / Maniac Mode Stages" )
1059
 
INPUT_PORTS_END
1060
 
 
1061
 
static INPUT_PORTS_START( bmdct )
1062
 
        PORT_INCLUDE( beatmania_btn )
1063
 
        BM2NDMIX_DSW1
1064
 
        BM4THMIX_DSW2( "Basic / Hard Mode Difficulty", "Monkey Live Mode Difficulty" )
1065
 
        BMDCT_DSW3( "Basic / Hard Mode Stages" )
1066
 
INPUT_PORTS_END
1067
 
 
1068
 
static INPUT_PORTS_START( bmcorerm )
1069
 
        PORT_INCLUDE( beatmania_btn )
1070
 
        BM2NDMIX_DSW1
1071
 
        BM4THMIX_DSW2( "Normal / Hard Mode Difficulty", "Expert Mode Difficulty" )
1072
 
        BM4THMIX_DSW3( "Normal / Hard Mode Stages" )
1073
 
INPUT_PORTS_END
1074
 
 
1075
 
static INPUT_PORTS_START( bm6thmix ) /* bm7thmix, and bmfinal */
1076
 
        PORT_INCLUDE( beatmania_btn )
1077
 
        BM2NDMIX_DSW1
1078
 
        BM4THMIX_DSW2( "Normal / Free Mode Difficulty", "Expert Mode Difficulty" )
1079
 
        BM6THMIX_DSW3( "Normal / Free Mode Stages" )
1080
 
INPUT_PORTS_END
1081
 
 
1082
 
 
1083
 
//--------- Pop'n Music
1084
 
 
1085
 
static INPUT_PORTS_START( popnmusic_btn )
1086
 
        PORT_START("BTN1")
1087
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
1088
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
1089
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
1090
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
1091
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
1092
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
1093
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
1094
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1)
1095
 
        PORT_START("BTN2")
1096
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_PLAYER(1)
1097
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_PLAYER(1)
1098
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Used by beatmania as P2 BUTTON 5 */
1099
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
1100
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Used by beatmania as P1 START */
1101
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Used by beatmania as P2 START */
1102
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Used by beatmania as EFFECT */
1103
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
1104
 
        PORT_START("BTN3")
1105
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F2)   /* TEST SW */
1106
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service")      /* SERVICE */
1107
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Reset")        /* RESET SW */
1108
 
        PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN )
1109
 
        PORT_START("UNK1")
1110
 
        PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
1111
 
        PORT_START("UNK2")
1112
 
        PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
1113
 
        //PORT_START("TT1")     /* turn table 1P */
1114
 
        //PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_PLAYER(1)
1115
 
        //PORT_START("TT2")     /* turn table 2P */
1116
 
        //PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_PLAYER(2)
1117
 
INPUT_PORTS_END
1118
 
 
1119
 
#define POPN_DSW1_COINAGE_OLD \
1120
 
        PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8,7,6,5") \
1121
 
        PORT_DIPSETTING(    0x01, "1P 5C / Continue 5C" ) \
1122
 
        PORT_DIPSETTING(    0x02, "1P 5C / Continue 4C" ) \
1123
 
        PORT_DIPSETTING(    0x03, "1P 5C / Continue 3C" ) \
1124
 
        PORT_DIPSETTING(    0x04, "1P 5C / Continue 2C" ) \
1125
 
        PORT_DIPSETTING(    0x05, "1P 5C / Continue 1C" ) \
1126
 
        PORT_DIPSETTING(    0x06, "1P 4C / Continue 4C" ) \
1127
 
        PORT_DIPSETTING(    0x07, "1P 4C / Continue 3C" ) \
1128
 
        PORT_DIPSETTING(    0x08, "1P 4C / Continue 2C" ) \
1129
 
        PORT_DIPSETTING(    0x09, "1P 4C / Continue 1C" ) \
1130
 
        PORT_DIPSETTING(    0x0a, "1P 3C / Continue 3C" ) \
1131
 
        PORT_DIPSETTING(    0x0b, "1P 3C / Continue 2C" ) \
1132
 
        PORT_DIPSETTING(    0x0c, "1P 3C / Continue 1C" ) \
1133
 
        PORT_DIPSETTING(    0x0d, "1P 2C / Continue 2C" ) \
1134
 
        PORT_DIPSETTING(    0x0f, "1P 2C / Continue 1C" ) \
1135
 
        PORT_DIPSETTING(    0x0e, "1P 1C / Continue 1C" ) \
1136
 
        PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
1137
 
 
1138
 
#define POPN_DSW1_COINAGE_NEW \
1139
 
        PORT_DIPNAME( 0x1f, 0x1f, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8,7,6,5,4") \
1140
 
        PORT_DIPSETTING(    0x01, "1P 8C / Continue 8C" ) \
1141
 
        PORT_DIPSETTING(    0x02, "1P 8C / Continue 7C" ) \
1142
 
        PORT_DIPSETTING(    0x03, "1P 8C / Continue 6C" ) \
1143
 
        PORT_DIPSETTING(    0x04, "1P 8C / Continue 5C" ) \
1144
 
        PORT_DIPSETTING(    0x05, "1P 8C / Continue 4C" ) \
1145
 
        PORT_DIPSETTING(    0x06, "1P 8C / Continue 3C" ) \
1146
 
        PORT_DIPSETTING(    0x07, "1P 7C / Continue 7C" ) \
1147
 
        PORT_DIPSETTING(    0x08, "1P 7C / Continue 6C" ) \
1148
 
        PORT_DIPSETTING(    0x09, "1P 7C / Continue 5C" ) \
1149
 
        PORT_DIPSETTING(    0x0a, "1P 7C / Continue 4C" ) \
1150
 
        PORT_DIPSETTING(    0x0b, "1P 7C / Continue 3C" ) \
1151
 
        PORT_DIPSETTING(    0x0c, "1P 6C / Continue 6C" ) \
1152
 
        PORT_DIPSETTING(    0x0d, "1P 6C / Continue 5C" ) \
1153
 
        PORT_DIPSETTING(    0x0e, "1P 6C / Continue 4C" ) \
1154
 
        PORT_DIPSETTING(    0x0f, "1P 6C / Continue 3C" ) \
1155
 
        PORT_DIPSETTING(    0x10, "1P 6C / Continue 2C" ) \
1156
 
        PORT_DIPSETTING(    0x11, "1P 5C / Continue 5C" ) \
1157
 
        PORT_DIPSETTING(    0x12, "1P 5C / Continue 4C" ) \
1158
 
        PORT_DIPSETTING(    0x13, "1P 5C / Continue 3C" ) \
1159
 
        PORT_DIPSETTING(    0x14, "1P 5C / Continue 2C" ) \
1160
 
        PORT_DIPSETTING(    0x15, "1P 5C / Continue 1C" ) \
1161
 
        PORT_DIPSETTING(    0x16, "1P 4C / Continue 4C" ) \
1162
 
        PORT_DIPSETTING(    0x17, "1P 4C / Continue 3C" ) \
1163
 
        PORT_DIPSETTING(    0x18, "1P 4C / Continue 2C" ) \
1164
 
        PORT_DIPSETTING(    0x19, "1P 4C / Continue 1C" ) \
1165
 
        PORT_DIPSETTING(    0x1a, "1P 3C / Continue 3C" ) \
1166
 
        PORT_DIPSETTING(    0x1b, "1P 3C / Continue 2C" ) \
1167
 
        PORT_DIPSETTING(    0x1c, "1P 3C / Continue 1C" ) \
1168
 
        PORT_DIPSETTING(    0x1d, "1P 2C / Continue 2C" ) \
1169
 
        PORT_DIPSETTING(    0x1f, "1P 2C / Continue 1C" ) \
1170
 
        PORT_DIPSETTING(    0x1e, "1P 1C / Continue 1C" ) \
1171
 
        PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
1172
 
 
1173
 
#define POPN_DSW1_JAMMINGGAUGE \
1174
 
        PORT_DIPNAME( 0xc0, 0xc0, "Jamming Gauge Blocks" ) PORT_DIPLOCATION("SW1:2,1") \
1175
 
        PORT_DIPSETTING(    0x80, "5" ) \
1176
 
        PORT_DIPSETTING(    0xc0, "6" ) \
1177
 
        PORT_DIPSETTING(    0x40, "7" ) \
1178
 
        PORT_DIPSETTING(    0x00, "8" )
1179
 
 
1180
 
#define POPN_DSW2_GAUGEDECREMENT \
1181
 
        PORT_DIPNAME( 0x0c, 0x0c, "Guage Decrement Level" ) PORT_DIPLOCATION("SW2:6,5") \
1182
 
        PORT_DIPSETTING(    0x04, "0" ) \
1183
 
        PORT_DIPSETTING(    0x0c, "1" ) \
1184
 
        PORT_DIPSETTING(    0x08, "2" ) \
1185
 
        PORT_DIPSETTING(    0x00, "3" )
1186
 
 
1187
 
#define POPN_DSW2_GAUGEINCREMENT \
1188
 
        PORT_DIPNAME( 0x03, 0x03, "Guage Increment Level" ) PORT_DIPLOCATION("SW2:8,7") \
1189
 
        PORT_DIPSETTING(    0x01, "0" ) \
1190
 
        PORT_DIPSETTING(    0x03, "1" ) \
1191
 
        PORT_DIPSETTING(    0x02, "2" ) \
1192
 
        PORT_DIPSETTING(    0x00, "3" )
1193
 
 
1194
 
#define POPN1_DSW1 \
1195
 
        PORT_START("DSW1") \
1196
 
        POPN_DSW1_JAMMINGGAUGE \
1197
 
        PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW1:3" ) \
1198
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW1:4" ) \
1199
 
        POPN_DSW1_COINAGE_OLD
1200
 
 
1201
 
#define POPN2_DSW1 \
1202
 
        PORT_START("DSW1") \
1203
 
        POPN_DSW1_JAMMINGGAUGE \
1204
 
        PORT_DIPNAME( 0x20, 0x20, "Normal Mode Jamming" ) PORT_DIPLOCATION("SW1:3") \
1205
 
        PORT_DIPSETTING(    0x20, DEF_STR( Off ) ) \
1206
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) ) \
1207
 
        POPN_DSW1_COINAGE_NEW
1208
 
 
1209
 
#define POPN1_DSW2 \
1210
 
        PORT_START("DSW2") \
1211
 
        BEATMANIA_DSW2_SCOREDISPLAY /* same as BEATMANIA */ \
1212
 
        BEATMANIA_DSW2_DEMOSOUNDS /* same as BEATMANIA */ \
1213
 
        PORT_DIPNAME( 0x10, 0x10, "Normal Mode Jamming" ) PORT_DIPLOCATION("SW2:4") \
1214
 
        PORT_DIPSETTING(    0x00, DEF_STR( Off ) ) \
1215
 
        PORT_DIPSETTING(    0x10, DEF_STR( On ) ) \
1216
 
        POPN_DSW2_GAUGEDECREMENT \
1217
 
        POPN_DSW2_GAUGEINCREMENT
1218
 
 
1219
 
#define POPN2_DSW2 \
1220
 
        PORT_START("DSW2") \
1221
 
        BEATMANIA_DSW2_SCOREDISPLAY /* same as BEATMANIA */ \
1222
 
        BEATMANIA_DSW2_DEMOSOUNDS /* same as BEATMANIA */ \
1223
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW2:4" ) \
1224
 
        POPN_DSW2_GAUGEDECREMENT \
1225
 
        POPN_DSW2_GAUGEINCREMENT
1226
 
 
1227
 
#define POPN1_DSW3 \
1228
 
        PORT_START("DSW3") \
1229
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
1230
 
        PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW3:1" ) \
1231
 
        PORT_DIPNAME( 0x10, 0x10, "All Song Mode [*A]" ) PORT_DIPLOCATION("SW3:2") \
1232
 
        PORT_DIPSETTING(    0x10, DEF_STR( Off ) ) \
1233
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) ) \
1234
 
        PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW3:3" ) \
1235
 
        PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW3:4" ) \
1236
 
        PORT_DIPNAME( 0x02, 0x02, "Enable \"RAVE\" (with *A=On) [*B]" ) PORT_DIPLOCATION("SW3:5") \
1237
 
        PORT_DIPSETTING(    0x02, DEF_STR( Off ) ) \
1238
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) ) \
1239
 
        PORT_DIPNAME( 0x01, 0x01, "Enable \"Bonus Track\" (with *A=On and *B=On )" ) PORT_DIPLOCATION("SW3:6") \
1240
 
        PORT_DIPSETTING(    0x01, DEF_STR( Off ) ) \
1241
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1242
 
        /* "All Song Mode"      3-2=On */
1243
 
        /* "Enable RAVE"        3-2=On 3-5=On */
1244
 
        /* "Enable BONUS TRACK" 3-2=On 3-5=On 3-6=On */
1245
 
 
1246
 
#define POPN2_DSW3 \
1247
 
        PORT_START("DSW3") \
1248
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */ \
1249
 
        PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW3:1" ) \
1250
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW3:2" ) \
1251
 
        PORT_DIPNAME( 0x08, 0x08, "All Song Mode" ) PORT_DIPLOCATION("SW3:3") \
1252
 
        PORT_DIPSETTING(    0x08, DEF_STR( Off ) ) \
1253
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) ) \
1254
 
        PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW3:4" ) \
1255
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" ) \
1256
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
1257
 
        /* "All Song Mode" 3-3=On */
1258
 
 
1259
 
#ifdef UNUSED_DEFINITION
1260
 
static INPUT_PORTS_START( popn1 )
1261
 
        PORT_INCLUDE( popnmusic_btn )
1262
 
        POPN1_DSW1
1263
 
        POPN1_DSW2
1264
 
        POPN1_DSW3
1265
 
INPUT_PORTS_END
1266
 
#endif
1267
 
 
1268
 
static INPUT_PORTS_START( popnmusic )   /* popn2 and popn3 */
1269
 
        PORT_INCLUDE( popnmusic_btn )
1270
 
        POPN2_DSW1
1271
 
        POPN2_DSW2
1272
 
        POPN2_DSW3
1273
 
INPUT_PORTS_END
1274
 
 
1275
 
//--------- Pop'n Stage
1276
 
 
1277
 
#ifdef UNUSED_DEFINITION
1278
 
static INPUT_PORTS_START( popnstage )
1279
 
        PORT_START("BTN1")
1280
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
1281
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
1282
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
1283
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
1284
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
1285
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
1286
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
1287
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1)
1288
 
        PORT_START("BTN2")
1289
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_PLAYER(1)
1290
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_PLAYER(1)
1291
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_PLAYER(1)
1292
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
1293
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )     /* LEFT SELECTION */
1294
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )     /* "OK" (MIDDLE) SELECTION */
1295
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 )     /* RIGHT SELECTION */
1296
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
1297
 
        PORT_START("BTN3")
1298
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F2)   /* TEST SW */
1299
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service")      /* SERVICE */
1300
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Used by beatmania as RESET SW */
1301
 
        PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN )
1302
 
        PORT_START("UNK1")
1303
 
        PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
1304
 
        PORT_START("UNK2")
1305
 
        PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
1306
 
        //PORT_START("TT1")     /* turn table 1P */
1307
 
        //PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_PLAYER(1)
1308
 
        //PORT_START("TT2")     /* turn table 2P */
1309
 
        //PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_PLAYER(2)
1310
 
 
1311
 
        PORT_START("DSW1")
1312
 
        PORT_DIPNAME( 0xe0, 0xe0, "Coinage (6 Buttons)" ) PORT_DIPLOCATION("SW1:3,2,1")
1313
 
        PORT_DIPSETTING(    0x20, "1P 4C / Continue 2C" )
1314
 
        PORT_DIPSETTING(    0x40, "1P 3C / Continue 3C" )
1315
 
        PORT_DIPSETTING(    0x60, "1P 3C / Continue 2C" )
1316
 
        PORT_DIPSETTING(    0x80, "1P 3C / Continue 1C" )
1317
 
        PORT_DIPSETTING(    0xa0, "1P 2C / Continue 2C" )
1318
 
        PORT_DIPSETTING(    0xe0, "1P 2C / Continue 1C" )
1319
 
        PORT_DIPSETTING(    0xc0, "1P 1C / Continue 1C" )
1320
 
        PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
1321
 
        PORT_DIPNAME( 0x1e, 0x1e, "Coinage (10 Buttons)" ) PORT_DIPLOCATION("SW1:7,6,5,4")
1322
 
        PORT_DIPSETTING(    0x02, "1P 5C / Continue 5C" )
1323
 
        PORT_DIPSETTING(    0x04, "1P 5C / Continue 4C" )
1324
 
        PORT_DIPSETTING(    0x06, "1P 5C / Continue 3C" )
1325
 
        PORT_DIPSETTING(    0x08, "1P 5C / Continue 2C" )
1326
 
        PORT_DIPSETTING(    0x0c, "1P 5C / Continue 1C" )
1327
 
        PORT_DIPSETTING(    0x0a, "1P 4C / Continue 4C" )
1328
 
        PORT_DIPSETTING(    0x0e, "1P 4C / Continue 3C" )
1329
 
        PORT_DIPSETTING(    0x10, "1P 4C / Continue 2C" )
1330
 
        PORT_DIPSETTING(    0x12, "1P 4C / Continue 1C" )
1331
 
        PORT_DIPSETTING(    0x14, "1P 3C / Continue 3C" )
1332
 
        PORT_DIPSETTING(    0x1e, "1P 3C / Continue 2C" )
1333
 
        PORT_DIPSETTING(    0x16, "1P 3C / Continue 1C" )
1334
 
        PORT_DIPSETTING(    0x18, "1P 2C / Continue 2C" )
1335
 
        PORT_DIPSETTING(    0x1a, "1P 2C / Continue 1C" )
1336
 
        PORT_DIPSETTING(    0x1c, "1P 1C / Continue 1C" )
1337
 
        PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
1338
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW1:8" )
1339
 
 
1340
 
        PORT_START("DSW2")
1341
 
        PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW1:2,1")
1342
 
        PORT_DIPSETTING(    0xc0, "Loud" )
1343
 
        PORT_DIPSETTING(    0x80, DEF_STR ( Medium ) )
1344
 
        PORT_DIPSETTING(    0x40, DEF_STR ( Low ) )
1345
 
        PORT_DIPSETTING(    0x00, "Silent" )
1346
 
        PORT_DIPNAME( 0x30, 0x30, "Guage Decrement Level" ) PORT_DIPLOCATION("SW1:4,3")
1347
 
        PORT_DIPSETTING(    0x20, "0" )
1348
 
        PORT_DIPSETTING(    0x30, "1" )
1349
 
        PORT_DIPSETTING(    0x10, "2" )
1350
 
        PORT_DIPSETTING(    0x00, "3" )
1351
 
        PORT_DIPNAME( 0x0c, 0x0c, "Guage Increment Level" ) PORT_DIPLOCATION("SW1:6,5")
1352
 
        PORT_DIPSETTING(    0x08, "0" )
1353
 
        PORT_DIPSETTING(    0x0c, "1" )
1354
 
        PORT_DIPSETTING(    0x04, "2" )
1355
 
        PORT_DIPSETTING(    0x00, "3" )
1356
 
        PORT_DIPNAME( 0x02, 0x02, "Score Display" ) PORT_DIPLOCATION("SW1:7")
1357
 
        PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1358
 
        PORT_DIPSETTING(    0x02, DEF_STR( On ) )
1359
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW2:8" )
1360
 
 
1361
 
        PORT_START("DSW3")
1362
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) /* bit 7,6 don't exist */
1363
 
        PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW3:1" )
1364
 
        PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW3:2" )
1365
 
        PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW3:3" )
1366
 
        PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW3:4" )
1367
 
        PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:5" )
1368
 
        PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW3:6" )
1369
 
INPUT_PORTS_END
1370
 
#endif
1371
 
 
1372
 
#ifdef UNUSED_DEFINITION
1373
 
static INPUT_PORTS_START( popnstex )
1374
 
        PORT_INCLUDE( popnstage )
1375
 
        PORT_MODIFY("DSW3")
1376
 
        PORT_DIPNAME( 0x20, 0x20, "Enable Secret Mode (step1of3)" ) PORT_DIPLOCATION("SW3:1")
1377
 
        PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
1378
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1379
 
        PORT_DIPNAME( 0x08, 0x08, "Enable Secret Mode (step2of3)" ) PORT_DIPLOCATION("SW3:3")
1380
 
        PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
1381
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1382
 
        PORT_DIPNAME( 0x02, 0x02, "Enable Secret Mode (step3of3)" ) PORT_DIPLOCATION("SW3:5")
1383
 
        PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
1384
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1385
 
        /* "Enable Secret Mode" 3-1=On 3-3=On 3-5=On */
1386
 
INPUT_PORTS_END
1387
 
#endif
1388
 
 
1389
 
/*************************************
1390
 
 *
1391
 
 *  Graphics layouts
1392
 
 *
1393
 
 *************************************/
1394
 
 
1395
 
static const gfx_layout spritelayout =
1396
 
{
1397
 
        16, 16, /* 16x16 characters */
1398
 
        0x200000 / 128, /* 16384 characters */
1399
 
        4,      /* bit planes */
1400
 
        { 0, 1, 2, 3 },
1401
 
        { 4, 0, 12, 8, 20, 16, 28, 24,
1402
 
          4+256, 0+256, 12+256, 8+256, 20+256, 16+256, 28+256, 24+256 },
1403
 
        { 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32,
1404
 
          0*32+512, 1*32+512, 2*32+512, 3*32+512, 4*32+512, 5*32+512, 6*32+512, 7*32+512 },
1405
 
        16*16*4
1406
 
};
1407
 
 
1408
 
static GFXDECODE_START( djmain )
1409
 
        GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0,  (0x4440/4)/16 )
1410
 
GFXDECODE_END
1411
 
 
1412
 
 
1413
 
 
1414
 
/*************************************
1415
 
 *
1416
 
 *  Sound interfaces
1417
 
 *
1418
 
 *************************************/
1419
 
 
1420
 
static const k054539_interface k054539_config =
1421
 
{
1422
 
        "shared"
1423
 
};
1424
 
 
1425
 
 
1426
 
 
1427
 
/*************************************
1428
 
 *
1429
 
 *  Machine-specific init
1430
 
 *
1431
 
 *************************************/
1432
 
 
1433
 
static STATE_POSTLOAD( djmain_postload )
1434
 
{
1435
 
        sndram_set_bank(machine);
1436
 
}
1437
 
 
1438
 
static MACHINE_START( djmain )
1439
 
{
1440
 
        running_device *ide = devtag_get_device(machine, "ide");
1441
 
 
1442
 
        if (ide != NULL && ide_master_password != NULL)
1443
 
                ide_set_master_password(ide, ide_master_password);
1444
 
        if (ide != NULL && ide_user_password != NULL)
1445
 
                ide_set_user_password(ide, ide_user_password);
1446
 
 
1447
 
        state_save_register_global(machine, sndram_bank);
1448
 
        state_save_register_global(machine, pending_vb_int);
1449
 
        state_save_register_global(machine, v_ctrl);
1450
 
        state_save_register_global_array(machine, obj_regs);
1451
 
 
1452
 
        state_save_register_postload(machine, djmain_postload, NULL);
1453
 
}
1454
 
 
1455
 
 
1456
 
static MACHINE_RESET( djmain )
1457
 
{
1458
 
        /* reset sound ram bank */
1459
 
        sndram_bank = 0;
1460
 
        sndram_set_bank(machine);
1461
 
 
1462
 
        /* reset the IDE controller */
1463
 
        devtag_reset(machine, "ide");
1464
 
 
1465
 
        /* reset LEDs */
1466
 
        set_led_status(machine, 0, 1);
1467
 
        set_led_status(machine, 1, 1);
1468
 
        set_led_status(machine, 2, 1);
1469
 
}
1470
 
 
1471
 
 
1472
 
 
1473
 
/*************************************
1474
 
 *
1475
 
 *  Machine driver
1476
 
 *
1477
 
 *************************************/
1478
 
 
1479
 
static const k056832_interface djmain_k056832_intf =
1480
 
{
1481
 
        "gfx2", 1,
1482
 
        K056832_BPP_4dj,
1483
 
        1, 1,
1484
 
        KONAMI_ROM_DEINTERLEAVE_NONE,
1485
 
        djmain_tile_callback, "none"
1486
 
};
1487
 
 
1488
 
static MACHINE_DRIVER_START( djmain )
1489
 
 
1490
 
        /* basic machine hardware */
1491
 
        // popn3 works 9.6 MHz or slower in some songs */
1492
 
        //MDRV_CPU_ADD("maincpu", M68EC020, 18432000/2)    /*  9.216 MHz!? */
1493
 
        MDRV_CPU_ADD("maincpu", M68EC020, 32000000/4)   /*  8.000 MHz!? */
1494
 
        MDRV_CPU_PROGRAM_MAP(memory_map)
1495
 
        MDRV_CPU_VBLANK_INT("screen", vb_interrupt)
1496
 
 
1497
 
        MDRV_MACHINE_START(djmain)
1498
 
        MDRV_MACHINE_RESET(djmain)
1499
 
 
1500
 
        MDRV_IDE_CONTROLLER_ADD("ide", ide_interrupt)
1501
 
 
1502
 
        /* video hardware */
1503
 
        MDRV_SCREEN_ADD("screen", RASTER)
1504
 
        MDRV_SCREEN_REFRESH_RATE(58)
1505
 
        MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
1506
 
        MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
1507
 
        MDRV_SCREEN_SIZE(64*8, 64*8)
1508
 
        MDRV_SCREEN_VISIBLE_AREA(12, 512-12-1, 0, 384-1)
1509
 
 
1510
 
        MDRV_PALETTE_LENGTH(0x4440/4)
1511
 
        MDRV_GFXDECODE(djmain)
1512
 
        MDRV_VIDEO_START(djmain)
1513
 
        MDRV_VIDEO_UPDATE(djmain)
1514
 
 
1515
 
        MDRV_K056832_ADD("k056832", djmain_k056832_intf)
1516
 
        MDRV_K055555_ADD("k055555")
1517
 
 
1518
 
        /* sound hardware */
1519
 
        MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
1520
 
 
1521
 
        MDRV_SOUND_ADD("konami1", K054539, 48000)
1522
 
        MDRV_SOUND_CONFIG(k054539_config)
1523
 
        MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
1524
 
        MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
1525
 
 
1526
 
        MDRV_SOUND_ADD("konami2", K054539, 48000)
1527
 
        MDRV_SOUND_CONFIG(k054539_config)
1528
 
        MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
1529
 
        MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
1530
 
MACHINE_DRIVER_END
1531
 
 
1532
 
 
1533
 
 
1534
 
/*************************************
1535
 
 *
1536
 
 *  ROM definitions
1537
 
 *
1538
 
 *************************************/
1539
 
 
1540
 
ROM_START( bm1stmix )
1541
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1542
 
        ROM_LOAD16_BYTE( "753jab01.6a", 0x000000, 0x80000, CRC(25BF8629) SHA1(2be73f9dd25cae415c6443f221cc7d38d5555ae5) )
1543
 
        ROM_LOAD16_BYTE( "753jab02.8a", 0x000001, 0x80000, CRC(6AB951DE) SHA1(a724ede03b74e9422c120fcc263e2ebcc3a3e110) )
1544
 
 
1545
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1546
 
        ROM_LOAD16_BYTE( "753jaa03.19a", 0x000000, 0x80000, CRC(F2B2BCE8) SHA1(61d31b111f35e7dde89965fa43ba627c12aff11c) )
1547
 
        ROM_LOAD16_BYTE( "753jaa04.20a", 0x000001, 0x80000, CRC(85A18F9D) SHA1(ecd0ab4f53e882b00176dacad5fac35345fbea66) )
1548
 
        ROM_LOAD16_BYTE( "753jaa05.22a", 0x100000, 0x80000, CRC(749B1E87) SHA1(1c771c19f152ae95171e4fd51da561ba4ec5ea87) )
1549
 
        ROM_LOAD16_BYTE( "753jaa06.24a", 0x100001, 0x80000, CRC(6D86B0FD) SHA1(74a255dbb1c83131717ea1fe335f12aef81d9fcc) )
1550
 
 
1551
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1552
 
        ROM_LOAD16_BYTE( "753jaa07.22d", 0x000000, 0x80000, CRC(F03AB5D8) SHA1(2ad902547908208714855aa0f2b7ed493452ee5f) )
1553
 
        ROM_LOAD16_BYTE( "753jaa08.23d", 0x000001, 0x80000, CRC(6559F0C8) SHA1(0d6ec4bdc22c02cb9fb8de36b0a8f7a6c983440e) )
1554
 
        ROM_LOAD16_BYTE( "753jaa09.25d", 0x100000, 0x80000, CRC(B50C3DBB) SHA1(6022ea249aad0793b2279699e68087b4bc9b4ef1) )
1555
 
        ROM_LOAD16_BYTE( "753jaa10.27d", 0x100001, 0x80000, CRC(391F4BFD) SHA1(791c9889ea3ce639bbfb87934a1cad9aa3c9ccde) )
1556
 
 
1557
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1558
 
        DISK_IMAGE( "753jaa11", 0, SHA1(2e70cf31a853322f29f99b6f292c187a2cf33015) )     /* ver 1.00 JA */
1559
 
        // There is an alternate image
1560
 
        //DISK_IMAGE( "753jaa11", 0, MD5(260c9b72f4a03055e3abad61c6225324) SHA1(2cc3e149744516bf2353a2b47d33bc9d2072b6c4) ) /* ver 1.00 JA */
1561
 
 
1562
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1563
 
ROM_END
1564
 
 
1565
 
ROM_START( bm2ndmix )
1566
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1567
 
        ROM_LOAD16_BYTE( "853jab01.6a", 0x000000, 0x80000, CRC(C8DF72C0) SHA1(6793b587ba0611bc3da8c4955d6a87e47a19a223) )
1568
 
        ROM_LOAD16_BYTE( "853jab02.8a", 0x000001, 0x80000, CRC(BF6ACE08) SHA1(29d3fdf1c73a73a0a66fa5a4c4ac3f293cb82e37) )
1569
 
 
1570
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1571
 
        ROM_LOAD16_BYTE( "853jaa03.19a", 0x000000, 0x80000, CRC(1462ED23) SHA1(fdfda3060c8d367ac2e8e43dedaba8ab9012cc77) )
1572
 
        ROM_LOAD16_BYTE( "853jaa04.20a", 0x000001, 0x80000, CRC(98C9B331) SHA1(51f24b3c3773c53ff492ed9bad17c9867fd94e28) )
1573
 
        ROM_LOAD16_BYTE( "853jaa05.22a", 0x100000, 0x80000, CRC(0DA3FEF9) SHA1(f9ef24144c00c054ecc4650bb79e74c57c6d6b3c) )
1574
 
        ROM_LOAD16_BYTE( "853jaa06.24a", 0x100001, 0x80000, CRC(6A66978C) SHA1(460178a6f35e554a157742d77ed5ea6989fbcee1) )
1575
 
 
1576
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1577
 
        ROM_LOAD16_BYTE( "853jaa07.22d", 0x000000, 0x80000, CRC(728C0010) SHA1(18888b402e0b7ccf63c7b3cb644673df1746dba7) )
1578
 
        ROM_LOAD16_BYTE( "853jaa08.23d", 0x000001, 0x80000, CRC(926FC37C) SHA1(f251cba56ca201f0e748112462116cff218b66da) )
1579
 
        ROM_LOAD16_BYTE( "853jaa09.25d", 0x100000, 0x80000, CRC(8584E21E) SHA1(3d1ca6de00f9ac07bbe7cd1e67093cca7bf484bb) )
1580
 
        ROM_LOAD16_BYTE( "853jaa10.27d", 0x100001, 0x80000, CRC(9CB92D98) SHA1(6ace4492ba0b5a8f94a9e7b4f7126b31c6254637) )
1581
 
 
1582
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1583
 
        DISK_IMAGE( "853jaa11", 0, SHA1(9683ff8462491252b6eb2e5b3aa6496884c01506) )     /* ver 1.10 JA */
1584
 
 
1585
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1586
 
ROM_END
1587
 
 
1588
 
ROM_START( bm2ndmxa )
1589
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1590
 
        ROM_LOAD16_BYTE( "853jaa01.6a", 0x000000, 0x80000, CRC(4F0BF5D0) SHA1(4793bb411e85f2191eb703a170c16cf163ea79e7) )
1591
 
        ROM_LOAD16_BYTE( "853jaa02.8a", 0x000001, 0x80000, CRC(E323925B) SHA1(1f9f52a7ab6359b617e87f8b3d7ac4269885c621) )
1592
 
 
1593
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1594
 
        ROM_LOAD16_BYTE( "853jaa03.19a", 0x000000, 0x80000, CRC(1462ED23) SHA1(fdfda3060c8d367ac2e8e43dedaba8ab9012cc77) )
1595
 
        ROM_LOAD16_BYTE( "853jaa04.20a", 0x000001, 0x80000, CRC(98C9B331) SHA1(51f24b3c3773c53ff492ed9bad17c9867fd94e28) )
1596
 
        ROM_LOAD16_BYTE( "853jaa05.22a", 0x100000, 0x80000, CRC(0DA3FEF9) SHA1(f9ef24144c00c054ecc4650bb79e74c57c6d6b3c) )
1597
 
        ROM_LOAD16_BYTE( "853jaa06.24a", 0x100001, 0x80000, CRC(6A66978C) SHA1(460178a6f35e554a157742d77ed5ea6989fbcee1) )
1598
 
 
1599
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1600
 
        ROM_LOAD16_BYTE( "853jaa07.22d", 0x000000, 0x80000, CRC(728C0010) SHA1(18888b402e0b7ccf63c7b3cb644673df1746dba7) )
1601
 
        ROM_LOAD16_BYTE( "853jaa08.23d", 0x000001, 0x80000, CRC(926FC37C) SHA1(f251cba56ca201f0e748112462116cff218b66da) )
1602
 
        ROM_LOAD16_BYTE( "853jaa09.25d", 0x100000, 0x80000, CRC(8584E21E) SHA1(3d1ca6de00f9ac07bbe7cd1e67093cca7bf484bb) )
1603
 
        ROM_LOAD16_BYTE( "853jaa10.27d", 0x100001, 0x80000, CRC(9CB92D98) SHA1(6ace4492ba0b5a8f94a9e7b4f7126b31c6254637) )
1604
 
 
1605
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1606
 
        DISK_IMAGE( "853jaa11", 0, SHA1(9683ff8462491252b6eb2e5b3aa6496884c01506) )     /* ver 1.10 JA */
1607
 
 
1608
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1609
 
ROM_END
1610
 
 
1611
 
ROM_START( bm3rdmix )
1612
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1613
 
        ROM_LOAD16_BYTE( "825jaa01.6a", 0x000000, 0x80000, CRC(CF7494A5) SHA1(994df0644817f44d135a16f04d8dae9ec73e3728) )
1614
 
        ROM_LOAD16_BYTE( "825jaa02.8a", 0x000001, 0x80000, CRC(5F787FE2) SHA1(5944da21141802d96594cf77880682e97d014ca1) )
1615
 
 
1616
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1617
 
        ROM_LOAD16_BYTE( "825jaa03.19a", 0x000000, 0x80000, CRC(ECD62652) SHA1(bceab4052dce2c843358f0a98aacc6e1124e3068) )
1618
 
        ROM_LOAD16_BYTE( "825jaa04.20a", 0x000001, 0x80000, CRC(437A576F) SHA1(f30fd15d4f0d776e9b29ccfcd6e26861fb42e51a) )
1619
 
        ROM_LOAD16_BYTE( "825jaa05.22a", 0x100000, 0x80000, CRC(9F9A3369) SHA1(d8b20127336af89b9e886289fb4f5a2e0db65f9b) )
1620
 
        ROM_LOAD16_BYTE( "825jaa06.24a", 0x100001, 0x80000, CRC(E7A3991A) SHA1(6c8cb481e721428e1365f784e97bb6f6d421ed5a) )
1621
 
 
1622
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1623
 
        ROM_LOAD16_BYTE( "825jaa07.22d", 0x000000, 0x80000, CRC(A96CF46C) SHA1(c8540b452dcb15f5873ca629fa62657a5a3bb02c) )
1624
 
        ROM_LOAD16_BYTE( "825jaa08.23d", 0x000001, 0x80000, CRC(06D56C3B) SHA1(19cd15ab0869773e6a16b1cad48c53bec2f60b0b) )
1625
 
        ROM_LOAD16_BYTE( "825jaa09.25d", 0x100000, 0x80000, CRC(D3E65669) SHA1(51abf452da60794fa47c05d11c08b203dde563ff) )
1626
 
        ROM_LOAD16_BYTE( "825jaa10.27d", 0x100001, 0x80000, CRC(44D184F3) SHA1(28f3ec33a29164a6531f53db071272ccf015f66d) )
1627
 
 
1628
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1629
 
        DISK_IMAGE( "825jaa11", 0, SHA1(048919977232bbce046406a7212586cf39b77cf2) )     /* ver 1.00 JA */
1630
 
 
1631
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1632
 
ROM_END
1633
 
 
1634
 
ROM_START( bmcompmx )
1635
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1636
 
        ROM_LOAD16_BYTE( "858jab01.6a", 0x000000, 0x80000, CRC(92841EB5) SHA1(3a9d90a9c4b16cb7118aed2cadd3ab32919efa96) )
1637
 
        ROM_LOAD16_BYTE( "858jab02.8a", 0x000001, 0x80000, CRC(7B19969C) SHA1(3545acabbf53bacc5afa72a3c5af3cd648bc2ae1) )
1638
 
 
1639
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1640
 
        ROM_LOAD16_BYTE( "858jaa03.19a", 0x000000, 0x80000, CRC(8559F457) SHA1(133092994087864a6c29e9d51dcdbef2e2c2a123) )
1641
 
        ROM_LOAD16_BYTE( "858jaa04.20a", 0x000001, 0x80000, CRC(770824D3) SHA1(5c21bc39f8128957d76be85bc178c96976987f5f) )
1642
 
        ROM_LOAD16_BYTE( "858jaa05.22a", 0x100000, 0x80000, CRC(9CE769DA) SHA1(1fe2999f786effdd5e3e74475e8431393eb9403d) )
1643
 
        ROM_LOAD16_BYTE( "858jaa06.24a", 0x100001, 0x80000, CRC(0CDE6584) SHA1(fb58d2b4f58144b71703431740c0381bb583f581) )
1644
 
 
1645
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1646
 
        ROM_LOAD16_BYTE( "858jaa07.22d", 0x000000, 0x80000, CRC(7D183F46) SHA1(7a1b0ccb0407b787af709bdf038d886727199e4e) )
1647
 
        ROM_LOAD16_BYTE( "858jaa08.23d", 0x000001, 0x80000, CRC(C731DC8F) SHA1(1a937d76c02711b7f73743c9999456d4408ad284) )
1648
 
        ROM_LOAD16_BYTE( "858jaa09.25d", 0x100000, 0x80000, CRC(0B4AD843) SHA1(c01e15053dd1975dc68db9f4e6da47062d8f9b54) )
1649
 
        ROM_LOAD16_BYTE( "858jaa10.27d", 0x100001, 0x80000, CRC(00B124EE) SHA1(435d28a327c2707833a8ddfe841104df65ffa3f8) )
1650
 
 
1651
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1652
 
        DISK_IMAGE( "858jaa11", 0, SHA1(bc590472046336a1000f29901fe3fd7b29747e47) )     /* ver 1.00 JA */
1653
 
 
1654
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1655
 
ROM_END
1656
 
 
1657
 
ROM_START( hmcompmx )
1658
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1659
 
        ROM_LOAD16_BYTE( "858uab01.6a", 0x000000, 0x80000, CRC(F9C16675) SHA1(f2b50a3544f43af6fd987256a8bd4125b95749ef) )
1660
 
        ROM_LOAD16_BYTE( "858uab02.8a", 0x000001, 0x80000, CRC(4E8F1E78) SHA1(88d654de4377b584ff8a5e1f8bc81ffb293ec8a5) )
1661
 
 
1662
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1663
 
        ROM_LOAD16_BYTE( "858uaa03.19a", 0x000000, 0x80000, CRC(52B51A5E) SHA1(9f01e2fcbe5a9d7f80b377c5e10f18da2c9dcc8e) )
1664
 
        ROM_LOAD16_BYTE( "858uaa04.20a", 0x000001, 0x80000, CRC(A336CEE9) SHA1(0e62c0c38d86868c909b4c1790fbb7ecb2de137d) )
1665
 
        ROM_LOAD16_BYTE( "858uaa05.22a", 0x100000, 0x80000, CRC(2E14CF83) SHA1(799b2162f7b11678d1d260f7e1eb841abda55a60) )
1666
 
        ROM_LOAD16_BYTE( "858uaa06.24a", 0x100001, 0x80000, CRC(2BE07788) SHA1(5cc2408f907ca6156efdcbb2c10a30e9b81797f8) )
1667
 
 
1668
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1669
 
        ROM_LOAD16_BYTE( "858uaa07.22d", 0x000000, 0x80000, CRC(9D7C8EA0) SHA1(5ef773ade7ab12a5dc10484e8b7711c9d76fe2a1) )
1670
 
        ROM_LOAD16_BYTE( "858uaa08.23d", 0x000001, 0x80000, CRC(F21C3F45) SHA1(1d7ff2c4161605b382d07900142093192aa93a48) )
1671
 
        ROM_LOAD16_BYTE( "858uaa09.25d", 0x100000, 0x80000, CRC(99519886) SHA1(664f6bd953201a6e2fc123cb8b3facf72766107d) )
1672
 
        ROM_LOAD16_BYTE( "858uaa10.27d", 0x100001, 0x80000, CRC(20AA7145) SHA1(eeff87eb9a9864985d751f45e843ee6e73db8cfd) )
1673
 
 
1674
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1675
 
        DISK_IMAGE( "858jaa11", 0, SHA1(bc590472046336a1000f29901fe3fd7b29747e47) )     /* ver 1.00 JA */
1676
 
 
1677
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1678
 
ROM_END
1679
 
 
1680
 
ROM_START( bm4thmix )
1681
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1682
 
        ROM_LOAD16_BYTE( "847jaa01.6a", 0x000000, 0x80000, CRC(81138A1B) SHA1(ebe211126f871e541881e1670f56d50b058dead3) )
1683
 
        ROM_LOAD16_BYTE( "847jaa02.8a", 0x000001, 0x80000, CRC(4EEB0010) SHA1(942303dfb19a4a78dd74ad24576031760553a661) )
1684
 
 
1685
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1686
 
        ROM_LOAD16_BYTE( "847jaa03.19a", 0x000000, 0x80000, CRC(F447D140) SHA1(cc15b80419940d127a77765508f877421ed86ee2) )
1687
 
        ROM_LOAD16_BYTE( "847jaa04.20a", 0x000001, 0x80000, CRC(EDC3E286) SHA1(341b1dc6ee1562b1ddf235a66ac96b94c482b67c) )
1688
 
        ROM_LOAD16_BYTE( "847jaa05.22a", 0x100000, 0x80000, CRC(DA165B5E) SHA1(e46110590e6ab89b55f6abfbf6c53c99d28a75a9) )
1689
 
        ROM_LOAD16_BYTE( "847jaa06.24a", 0x100001, 0x80000, CRC(8BFC2F28) SHA1(f8869867945d63d9f34b6228d95c5a61b193eed2) )
1690
 
 
1691
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1692
 
        ROM_LOAD16_BYTE( "847jab07.22d", 0x000000, 0x80000, CRC(C159E7C4) SHA1(96af0c29b2f1fef494b2223179862d16f26bb33f) )
1693
 
        ROM_LOAD16_BYTE( "847jab08.23d", 0x000001, 0x80000, CRC(8FF084D6) SHA1(50cff8c701e33f2630925c1a9ae4351076912acd) )
1694
 
        ROM_LOAD16_BYTE( "847jab09.25d", 0x100000, 0x80000, CRC(2E4AC9FE) SHA1(bbd4c6e0c82fc0be88f851e901e5853b6bcf775f) )
1695
 
        ROM_LOAD16_BYTE( "847jab10.27d", 0x100001, 0x80000, CRC(C78516F5) SHA1(1adf5805c808dc55de14a9a9b20c3d2cf7bf414d) )
1696
 
 
1697
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1698
 
        DISK_IMAGE( "847jaa11", 0, SHA1(8cad631531b5616d6a4b0a99d988f4b525932dc7) )     /* ver 1.00 JA */
1699
 
 
1700
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1701
 
ROM_END
1702
 
 
1703
 
ROM_START( bm5thmix )
1704
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1705
 
        ROM_LOAD16_BYTE( "981jaa01.6a", 0x000000, 0x80000, CRC(03BBE7E3) SHA1(7d4ec3bc7719a3f1b81df309b5c74afaffde42ba) )
1706
 
        ROM_LOAD16_BYTE( "981jaa02.8a", 0x000001, 0x80000, CRC(F4E59923) SHA1(a4983435e3f2243ea9ccc2fd5439d86c30b6f604) )
1707
 
 
1708
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1709
 
        ROM_LOAD16_BYTE( "981jaa03.19a", 0x000000, 0x80000, CRC(8B7E6D72) SHA1(d470377e20e4d4935af5e57d081ce24dd9ea5793) )
1710
 
        ROM_LOAD16_BYTE( "981jaa04.20a", 0x000001, 0x80000, CRC(5139988A) SHA1(2b1eb97dcbfbe6bba1352a02cf0036e9a721ab39) )
1711
 
        ROM_LOAD16_BYTE( "981jaa05.22a", 0x100000, 0x80000, CRC(F370FDB9) SHA1(3a2bbdda984f2630e8ae505a8db259d9162e07a3) )
1712
 
        ROM_LOAD16_BYTE( "981jaa06.24a", 0x100001, 0x80000, CRC(DA6E3813) SHA1(9163bd2cfb0a32798e797c7b4eea21e28772a206) )
1713
 
 
1714
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1715
 
        ROM_LOAD16_BYTE( "981jaa07.22d", 0x000000, 0x80000, CRC(F6C72998) SHA1(e78af5b515b224c534f47abd6477dd97dc521b0d) )
1716
 
        ROM_LOAD16_BYTE( "981jaa08.23d", 0x000001, 0x80000, CRC(AA4FF682) SHA1(3750e1e81b7c1a4fb419076171f20e4c36b1c544) )
1717
 
        ROM_LOAD16_BYTE( "981jaa09.25d", 0x100000, 0x80000, CRC(D96D4E1C) SHA1(379aa4e82cd06490645f54dab1724c827108735d) )
1718
 
        ROM_LOAD16_BYTE( "981jaa10.27d", 0x100001, 0x80000, CRC(06BEE0E4) SHA1(6eea8614cb01e7079393b9976b6fd6a52c14e3c0) )
1719
 
 
1720
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1721
 
        DISK_IMAGE( "981jaa11", 0, SHA1(dc7353fa436d96ae174a58d3a38ca9928a63727f) )     /* ver 1.00 JA */
1722
 
 
1723
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1724
 
ROM_END
1725
 
 
1726
 
ROM_START( bmclubmx )
1727
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1728
 
        ROM_LOAD16_BYTE( "993jaa01.6a", 0x000000, 0x80000, CRC(B314AF94) SHA1(6448554e1d565ee1558d13f484b5fa0018ac3667) )
1729
 
        ROM_LOAD16_BYTE( "993jaa02.8a", 0x000001, 0x80000, CRC(0AA9F16A) SHA1(508d41e141997ba07443c4ab98454cec515d731c) )
1730
 
 
1731
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1732
 
        ROM_LOAD16_BYTE( "993jaa03.19a", 0x000000, 0x80000, CRC(00394778) SHA1(3631a42ed0c8ee572e7faafdaacce9fc2b372d25) )
1733
 
        ROM_LOAD16_BYTE( "993jaa04.20a", 0x000001, 0x80000, CRC(2522F3B0) SHA1(1ab8618b732f1402fc7bfb141630873d4c706d34) )
1734
 
        ROM_LOAD16_BYTE( "993jaa05.22a", 0x100000, 0x80000, CRC(4E340947) SHA1(a0a7f3b222a292b07bc5c7acd61547ea2bdbad43) )
1735
 
        ROM_LOAD16_BYTE( "993jaa06.24a", 0x100001, 0x80000, CRC(C0A711D6) SHA1(ab581c5215c4db6dbf58b47f54834fe81e8a569b) )
1736
 
 
1737
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1738
 
        ROM_LOAD16_BYTE( "993jaa07.22d", 0x000000, 0x80000, CRC(4FC588CF) SHA1(00fb73002b6b5ae414eef320169e379b94ee33a1) )
1739
 
        ROM_LOAD16_BYTE( "993jaa08.23d", 0x000001, 0x80000, CRC(B6C88E9E) SHA1(e3b76e782b9507dad2bdb9de1a34d125f6100cc8) )
1740
 
        ROM_LOAD16_BYTE( "993jaa09.25d", 0x100000, 0x80000, CRC(E1A172DD) SHA1(42e850c055dc5bfccf6b6989f9f3a945fce13006) )
1741
 
        ROM_LOAD16_BYTE( "993jaa10.27d", 0x100001, 0x80000, CRC(9D113A2D) SHA1(eee94a5f7015c49aa630b8df0c8e9d137d238811) )
1742
 
 
1743
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1744
 
        DISK_IMAGE( "993hdda01", 0, SHA1(f5d4df1dd27ce6ee2d0897852342691d55b63bfb) )
1745
 
        // this image has not been verified
1746
 
        //  DISK_IMAGE( "993jaa11", 0, MD5(e26eb62d7cf3357585f5066da6063143) )  /* ver 1.00 JA */
1747
 
 
1748
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1749
 
ROM_END
1750
 
 
1751
 
ROM_START( bmcompm2 )
1752
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1753
 
        ROM_LOAD16_BYTE( "988jaa01.6a", 0x000000, 0x80000, CRC(31BE1D4C) SHA1(ab8c2b4a2b48e3b2b549022f65afb206ab125680) )
1754
 
        ROM_LOAD16_BYTE( "988jaa02.8a", 0x000001, 0x80000, CRC(0413DE32) SHA1(f819e8756e2000de5df61ad42ac01de14b7330f9) )
1755
 
 
1756
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1757
 
        ROM_LOAD16_BYTE( "988jaa03.19a", 0x000000, 0x80000, CRC(C0AD86D4) SHA1(6aca5bf3fbc0bd69116e442053840660eeff0239) )
1758
 
        ROM_LOAD16_BYTE( "988jaa04.20a", 0x000001, 0x80000, CRC(84801A50) SHA1(8700e4fb56941b87f8333e72e2a1c7ac9e322312) )
1759
 
        ROM_LOAD16_BYTE( "988jaa05.22a", 0x100000, 0x80000, CRC(0DDF7D6D) SHA1(aa110ab64c2fbf427796dff3a817b57cf6a9440d) )
1760
 
        ROM_LOAD16_BYTE( "988jaa06.24a", 0x100001, 0x80000, CRC(2A87F69E) SHA1(fe84bb50864467a83d06d34a18123ab11fb55781) )
1761
 
 
1762
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1763
 
        ROM_LOAD16_BYTE( "988jaa07.22d", 0x000000, 0x80000, CRC(9E57FE24) SHA1(40bd0428227e46ebe365f2f6821b08182a0ce698) )
1764
 
        ROM_LOAD16_BYTE( "988jaa08.23d", 0x000001, 0x80000, CRC(BF604CA4) SHA1(6abc81d5d9084fcf59f70a6bd57e1b36041a1072) )
1765
 
        ROM_LOAD16_BYTE( "988jaa09.25d", 0x100000, 0x80000, CRC(8F3BAE7F) SHA1(c4dac14f6c7f75a2b19153e05bfe969e9eb4aca0) )
1766
 
        ROM_LOAD16_BYTE( "988jaa10.27d", 0x100001, 0x80000, CRC(248BF0EE) SHA1(d89205ed57e771401bfc2c24043d200ecbd0b7fc) )
1767
 
 
1768
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1769
 
        DISK_IMAGE( "988jaa11", 0, SHA1(12a0988c631dd3331e54b8417a9659402afe168b) )     /* ver 1.00 JA */
1770
 
 
1771
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1772
 
ROM_END
1773
 
 
1774
 
ROM_START( hmcompm2 )
1775
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1776
 
        ROM_LOAD16_BYTE( "988uaa01.6a", 0x000000, 0x80000, CRC(5E5CC6C0) SHA1(0e7cd601d4543715cbc9f65e6fd48837179c962a) )
1777
 
        ROM_LOAD16_BYTE( "988uaa02.8a", 0x000001, 0x80000, CRC(E262984A) SHA1(f47662e40f91f2addb1a4b649923c1d0ee017341) )
1778
 
 
1779
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1780
 
        ROM_LOAD16_BYTE( "988uaa03.19a", 0x000000, 0x80000, CRC(D0F204C8) SHA1(866baac5a6d301d5b9cf0c14e9937ee5f435db77) )
1781
 
        ROM_LOAD16_BYTE( "988uaa04.20a", 0x000001, 0x80000, CRC(74C6B3ED) SHA1(7d9b064bab3f29fc6435f6430c71208abbf9d861) )
1782
 
        ROM_LOAD16_BYTE( "988uaa05.22a", 0x100000, 0x80000, CRC(6B9321CB) SHA1(449e5f85288a8c6724658050fa9521c7454a1e46) )
1783
 
        ROM_LOAD16_BYTE( "988uaa06.24a", 0x100001, 0x80000, CRC(DA6E0C1E) SHA1(4ef37db6c872bccff8c27fc53cccc0b269c7aee4) )
1784
 
 
1785
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1786
 
        ROM_LOAD16_BYTE( "988uaa07.22d", 0x000000, 0x80000, CRC(9217870D) SHA1(d0536a8a929c41b49cdd053205165bfb8150e0c5) )
1787
 
        ROM_LOAD16_BYTE( "988uaa08.23d", 0x000001, 0x80000, CRC(77777E59) SHA1(33b5508b961a04b82c9967a3326af6bbd838b85e) )
1788
 
        ROM_LOAD16_BYTE( "988uaa09.25d", 0x100000, 0x80000, CRC(C2AD6810) SHA1(706388c5acf6718297fd90e10f8a673463a0893b) )
1789
 
        ROM_LOAD16_BYTE( "988uaa10.27d", 0x100001, 0x80000, CRC(DAB0F3C9) SHA1(6fd899e753e32f60262c54ab8553c686c7ef28de) )
1790
 
 
1791
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1792
 
        DISK_IMAGE( "988jaa11", 0, SHA1(12a0988c631dd3331e54b8417a9659402afe168b) )     /* ver 1.00 JA */
1793
 
 
1794
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1795
 
ROM_END
1796
 
 
1797
 
ROM_START( bmdct )
1798
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1799
 
        ROM_LOAD16_BYTE( "995jaa01.6a", 0x000000, 0x80000, CRC(2C224169) SHA1(0608469fa0a15026f461be5141ed29bf740144ca) )
1800
 
        ROM_LOAD16_BYTE( "995jaa02.8a", 0x000001, 0x80000, CRC(A2EDB472) SHA1(795e44e56dfee6c5eceb28172bc20ba5b31c366b) )
1801
 
 
1802
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1803
 
        ROM_LOAD16_BYTE( "995jaa03.19a", 0x000000, 0x80000, CRC(77A7030C) SHA1(8f7988ca5c248d0846ec22c0975ae008d85e8d72) )
1804
 
        ROM_LOAD16_BYTE( "995jaa04.20a", 0x000001, 0x80000, CRC(A12EA45D) SHA1(9bd48bc25c17f885d74e859de153ec49012a4e39) )
1805
 
        ROM_LOAD16_BYTE( "995jaa05.22a", 0x100000, 0x80000, CRC(1493FD98) SHA1(4cae2ebccc79b21d7e21b984dc6fe10ab3013a2d) )
1806
 
        ROM_LOAD16_BYTE( "995jaa06.24a", 0x100001, 0x80000, CRC(86BFF0BB) SHA1(658280f78987eaee31b60a7826db6df105601f0a) )
1807
 
 
1808
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1809
 
        ROM_LOAD16_BYTE( "995jaa07.22d", 0x000000, 0x80000, CRC(CE030EDF) SHA1(1e2594a6a04559d70b09750bb665d8cd3d0288ea) )
1810
 
        ROM_LOAD16_BYTE( "995jaa08.23d", 0x000001, 0x80000, CRC(375D3D17) SHA1(180cb5ad4497b3745aa9317764f237b30a678b31) )
1811
 
        ROM_LOAD16_BYTE( "995jaa09.25d", 0x100000, 0x80000, CRC(1510A9C2) SHA1(daf1ab26b7b6b0fe0123b3fbee68684157c2ce51) )
1812
 
        ROM_LOAD16_BYTE( "995jaa10.27d", 0x100001, 0x80000, CRC(F9E4E9F2) SHA1(fe91badf6b0baeea690d75399d8c66fabcf6d352) )
1813
 
 
1814
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1815
 
        DISK_IMAGE( "995jaa11", 0, SHA1(8fec3c4d97f64f48b9867230a97cda4347496075) )     /* ver 1.00 JA */
1816
 
 
1817
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1818
 
ROM_END
1819
 
 
1820
 
ROM_START( bmcorerm )
1821
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1822
 
        ROM_LOAD16_BYTE( "a05jaa01.6a", 0x000000, 0x80000, CRC(CD6F1FC5) SHA1(237cbc17a693efb6bffffd6afb24f0944c29330c) )
1823
 
        ROM_LOAD16_BYTE( "a05jaa02.8a", 0x000001, 0x80000, CRC(FE07785E) SHA1(14c652008cb509b5206fb515aad7dfe36a6fe6f4) )
1824
 
 
1825
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1826
 
        ROM_LOAD16_BYTE( "a05jaa03.19a", 0x000000, 0x80000, CRC(8B88932A) SHA1(df20f8323adb02d07b835da98f4a29b3142175c9) )
1827
 
        ROM_LOAD16_BYTE( "a05jaa04.20a", 0x000001, 0x80000, CRC(CC72629F) SHA1(f95d06f409c7d6422d66a55c0452eb3feafc6ef0) )
1828
 
        ROM_LOAD16_BYTE( "a05jaa05.22a", 0x100000, 0x80000, CRC(E241B22B) SHA1(941a76f6ac821e0984057ec7df7862b12fa657b8) )
1829
 
        ROM_LOAD16_BYTE( "a05jaa06.24a", 0x100001, 0x80000, CRC(77EB08A3) SHA1(fd339aaec06916abfc928e850e33480707b5450d) )
1830
 
 
1831
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1832
 
        ROM_LOAD16_BYTE( "a05jaa07.22d", 0x000000, 0x80000, CRC(4D79646D) SHA1(5f1237bbd3cb09b27babf1c5359ef6c0d80ae3a9) )
1833
 
        ROM_LOAD16_BYTE( "a05jaa08.23d", 0x000001, 0x80000, CRC(F067494F) SHA1(ef031b5501556c1aa047a51604a44551b35a8b99) )
1834
 
        ROM_LOAD16_BYTE( "a05jaa09.25d", 0x100000, 0x80000, CRC(1504D62C) SHA1(3c31c6625bc089235a96fe21021239f2d0c0f6e1) )
1835
 
        ROM_LOAD16_BYTE( "a05jaa10.27d", 0x100001, 0x80000, CRC(99D75C36) SHA1(9599420863aa0a9492d3caeb03f8ac5fd4c3cdb2) )
1836
 
 
1837
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1838
 
        DISK_IMAGE( "a05jaa11", 0, SHA1(7ebc41cc3e9a0a922b49201b34e29201522eb726) )     /* ver 1.00 JA */
1839
 
 
1840
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1841
 
ROM_END
1842
 
 
1843
 
ROM_START( bm6thmix )
1844
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1845
 
        ROM_LOAD16_BYTE( "a21jaa01.6a", 0x000000, 0x80000, CRC(6D7CCBE3) SHA1(633c69c14dfd70866664b94095fa5f21087428d8) )
1846
 
        ROM_LOAD16_BYTE( "a21jaa02.8a", 0x000001, 0x80000, CRC(F10076FA) SHA1(ab9f3e75a36fdaccec411afd77f588f040db139d) )
1847
 
 
1848
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1849
 
        ROM_LOAD16_BYTE( "a21jaa03.19a", 0x000000, 0x80000, CRC(CA806266) SHA1(6b5f9d5089a992347745ab6af4dadaac4e3b0742) )
1850
 
        ROM_LOAD16_BYTE( "a21jaa04.20a", 0x000001, 0x80000, CRC(71124E79) SHA1(d9fd8f662ac9c29daf25acd310fd0f27051dea0b) )
1851
 
        ROM_LOAD16_BYTE( "a21jaa05.22a", 0x100000, 0x80000, CRC(818E34E6) SHA1(8a9093b92392a065d0cf94d56195a6f3ca611044) )
1852
 
        ROM_LOAD16_BYTE( "a21jaa06.24a", 0x100001, 0x80000, CRC(36F2043B) SHA1(d2846cc10173662029da7c5d686cf89299be2be5) )
1853
 
 
1854
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1855
 
        ROM_LOAD16_BYTE( "a21jaa07.22d", 0x000000, 0x80000, CRC(841D83E1) SHA1(c85962abcc955e8f11138e03002b16afd3791f0a) )
1856
 
        ROM_LOAD16_BYTE( "a21jaa08.23d", 0x000001, 0x80000, CRC(4E561919) SHA1(4b91560d9ba367c848d784db760f042d5d76e003) )
1857
 
        ROM_LOAD16_BYTE( "a21jaa09.25d", 0x100000, 0x80000, CRC(181E6F70) SHA1(82c7ca3068ace9a66b614ead4b90ea6fe4017d51) )
1858
 
        ROM_LOAD16_BYTE( "a21jaa10.27d", 0x100001, 0x80000, CRC(1AC33595) SHA1(3173bb8dc420487c4d427e779444a98aad37d51e) )
1859
 
 
1860
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1861
 
        DISK_IMAGE( "a21jaa11", 0, SHA1(ed0a07212a360e75934fc22c56265842cf0829b6) )     /* ver 1.00 JA */
1862
 
 
1863
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1864
 
ROM_END
1865
 
 
1866
 
ROM_START( bm7thmix )
1867
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1868
 
        ROM_LOAD16_BYTE( "b07jab01.6a", 0x000000, 0x80000, CRC(433D0074) SHA1(5a9709ce200cbff340063469956d1c55a46810d9) )
1869
 
        ROM_LOAD16_BYTE( "b07jab02.8a", 0x000001, 0x80000, CRC(794773AF) SHA1(c823deb077f6515d7701de84d324c3d367719819) )
1870
 
 
1871
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1872
 
        ROM_LOAD16_BYTE( "b07jaa03.19a", 0x000000, 0x80000, CRC(3E30AF3F) SHA1(f092c4156bc7d0a0309171fd1e00a6d4c33cb08f) )
1873
 
        ROM_LOAD16_BYTE( "b07jaa04.20a", 0x000001, 0x80000, CRC(190A4A83) SHA1(f7ae2d3ccd98f99fdae61c1a2145f993c4064ebd) )
1874
 
        ROM_LOAD16_BYTE( "b07jaa05.22a", 0x100000, 0x80000, CRC(415A6363) SHA1(b3edbcd293006c3738a10680ecfa66e105028786) )
1875
 
        ROM_LOAD16_BYTE( "b07jaa06.24a", 0x100001, 0x80000, CRC(46C59A43) SHA1(ba58432bf7df394b5c633e63bcf2321bc320f023) )
1876
 
 
1877
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1878
 
        ROM_LOAD16_BYTE( "b07jaa07.22d", 0x000000, 0x80000, CRC(B2908DC7) SHA1(22e36afef9a03681928d37a8ffe50078d04525ce) )
1879
 
        ROM_LOAD16_BYTE( "b07jaa08.23d", 0x000001, 0x80000, CRC(CBBEFECF) SHA1(ed1347d1a8fd59677e4290b8cd568ddf505a7265) )
1880
 
        ROM_LOAD16_BYTE( "b07jaa09.25d", 0x100000, 0x80000, CRC(2530CEDB) SHA1(94b38b4fe198b26a2ff4d99d2cb28a0f935fe940) )
1881
 
        ROM_LOAD16_BYTE( "b07jaa10.27d", 0x100001, 0x80000, CRC(6B75BA9C) SHA1(aee922adc3bc0296ae6e08e461b20a9e5e72a2df) )
1882
 
 
1883
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1884
 
        DISK_IMAGE( "b07jaa11", 0, SHA1(e4925494f0a801abb4d3aa6524c379eb445d8dff) )     /* ver 1.00 JA */
1885
 
        // this image has not been verified
1886
 
        //DISK_IMAGE( "b07jab11", 0, MD5(0e9440787ca69567792095085e2a3619) )    /* ver 1.00 JA */
1887
 
 
1888
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1889
 
ROM_END
1890
 
 
1891
 
ROM_START( bmfinal )
1892
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1893
 
        ROM_LOAD16_BYTE( "c01jaa01.6a", 0x000000, 0x80000, CRC(A64EEFF7) SHA1(377eee1f41e3072f9154a7c17ec4c4f3fb63ea4a) )
1894
 
        ROM_LOAD16_BYTE( "c01jaa02.8a", 0x000001, 0x80000, CRC(599BDAC5) SHA1(f85aff020c92fcd3c2a42036615226b54e5bee98) )
1895
 
 
1896
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1897
 
        ROM_LOAD16_BYTE( "c01jaa03.19a", 0x000000, 0x80000, CRC(1C9C6EB7) SHA1(bd1a9d8ed78095328817f599f52d9d34e09e9275) )
1898
 
        ROM_LOAD16_BYTE( "c01jaa04.20a", 0x000001, 0x80000, CRC(4E5AA665) SHA1(22f3888a29497ff0a801cce620ca0373268e5cd9) )
1899
 
        ROM_LOAD16_BYTE( "c01jaa05.22a", 0x100000, 0x80000, CRC(37DAB217) SHA1(66b07c36e7749a4c9d9dfaca633958a4922c4562) )
1900
 
        ROM_LOAD16_BYTE( "c01jaa06.24a", 0x100001, 0x80000, CRC(D35C6818) SHA1(ce608603ea3662f8cda5cf958a676d64a0f74645) )
1901
 
 
1902
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1903
 
        ROM_LOAD16_BYTE( "c01jaa07.22d", 0x000000, 0x80000, CRC(3E70F506) SHA1(d3cd0b48383bf2514b7f47fade8549ea8e3c5555) )
1904
 
        ROM_LOAD16_BYTE( "c01jaa08.23d", 0x000001, 0x80000, CRC(535E6065) SHA1(131f7eec4179145781bbd23474202f4eaf9cefd0) )
1905
 
        ROM_LOAD16_BYTE( "c01jaa09.25d", 0x100000, 0x80000, CRC(45CF93B1) SHA1(7c5082bcd1fe15761a0a965e25dda121904ff1bd) )
1906
 
        ROM_LOAD16_BYTE( "c01jaa10.27d", 0x100001, 0x80000, CRC(C9927749) SHA1(c2644877bda483e241381265e723ea8ab8357761) )
1907
 
 
1908
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1909
 
        DISK_IMAGE( "c01jaa11", 0, SHA1(0a53c4412a72a886f5fb98c12c529d056d625244) )     /* ver 1.00 JA */
1910
 
        // this image has not been verified
1911
 
        //DISK_IMAGE( "c01jaa11", 0, MD5(8bb7e6b6bc63cac8a4f2997307c25748) )    /* ver 1.00 JA */
1912
 
 
1913
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1914
 
ROM_END
1915
 
 
1916
 
ROM_START( popn2 )
1917
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1918
 
        ROM_LOAD16_BYTE( "831jaa01.8a", 0x000000, 0x80000, CRC(D6214CAC) SHA1(18e74c81710228c91ab9eb554b63d9bd69b93ec8) )
1919
 
        ROM_LOAD16_BYTE( "831jaa02.6a", 0x000001, 0x80000, CRC(AABE8689) SHA1(d51d277e9b5d0233d1c6bdfec40c32587f84b31a) )
1920
 
 
1921
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1922
 
        ROM_LOAD16_BYTE( "831jaa03.19a", 0x000000, 0x80000, CRC(A07AEB72) SHA1(4d957c15d1b989e955249c34b0aa5679fb3e4fbf) )
1923
 
        ROM_LOAD16_BYTE( "831jaa04.20a", 0x000001, 0x80000, CRC(9277D1D2) SHA1(6946845973f0ce15db383032343f6852873698eb) )
1924
 
        ROM_LOAD16_BYTE( "831jaa05.22a", 0x100000, 0x80000, CRC(F3B63033) SHA1(c3c6de0d8c749ddf4926040637f03b11c2a21b99) )
1925
 
        ROM_LOAD16_BYTE( "831jaa06.24a", 0x100001, 0x80000, CRC(43564E9C) SHA1(54b792b8aaf22876f9eb806e31b86af4b354bcf6) )
1926
 
 
1927
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1928
 
        ROM_LOAD16_BYTE( "831jaa07.22d", 0x000000, 0x80000, CRC(25AF75F5) SHA1(c150514a3bc6f3f88a5b98ef0db5440e2c5fec2d) )
1929
 
        ROM_LOAD16_BYTE( "831jaa08.23d", 0x000001, 0x80000, CRC(3B1B5629) SHA1(95b6bed5c5218a3bfb10996cd9af31bd7e08c1c4) )
1930
 
        ROM_LOAD16_BYTE( "831jaa09.25d", 0x100000, 0x80000, CRC(AE7838D2) SHA1(4f8a6793065c6c1eb08161f65b1d6246987bf47e) )
1931
 
        ROM_LOAD16_BYTE( "831jaa10.27d", 0x100001, 0x80000, CRC(85173CB6) SHA1(bc4d86bf4654a9a0a58e624f77090854950f3993) )
1932
 
 
1933
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1934
 
        DISK_IMAGE( "831jhdda01", 0, SHA1(ef62d5fcc1a36235fc932e6ecef71dc845d1d72d) )
1935
 
 
1936
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1937
 
ROM_END
1938
 
 
1939
 
#if 0
1940
 
// for reference, these sets have not been verified
1941
 
ROM_START( bm3rdmxb )
1942
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1943
 
        ROM_LOAD16_BYTE( "825jab01.6a", 0x000000, 0x80000, CRC(934FDCB2) SHA1(b88bada065b5464c579039c2e403c061e6eeb356) )
1944
 
        ROM_LOAD16_BYTE( "825jab02.8a", 0x000001, 0x80000, CRC(6012C488) SHA1(df32db41942c2fe2b2aa7439900372e22ea54c3c) )
1945
 
 
1946
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1947
 
        ROM_LOAD16_BYTE( "825jaa03.19a", 0x000000, 0x80000, CRC(ECD62652) SHA1(bceab4052dce2c843358f0a98aacc6e1124e3068) )
1948
 
        ROM_LOAD16_BYTE( "825jaa04.20a", 0x000001, 0x80000, CRC(437A576F) SHA1(f30fd15d4f0d776e9b29ccfcd6e26861fb42e51a) )
1949
 
        ROM_LOAD16_BYTE( "825jaa05.22a", 0x100000, 0x80000, CRC(9F9A3369) SHA1(d8b20127336af89b9e886289fb4f5a2e0db65f9b) )
1950
 
        ROM_LOAD16_BYTE( "825jaa06.24a", 0x100001, 0x80000, CRC(E7A3991A) SHA1(6c8cb481e721428e1365f784e97bb6f6d421ed5a) )
1951
 
 
1952
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1953
 
        ROM_LOAD16_BYTE( "825jab07.22d", 0x000000, 0x80000, CRC(1A515C82) SHA1(a0c908d449aa45cb3a90a42c97429f10873e884b) )
1954
 
        ROM_LOAD16_BYTE( "825jab08.23d", 0x000001, 0x80000, CRC(82731B07) SHA1(c0d391fcd94c6b2225fca338c0c5db5d35e2d8bc) )
1955
 
        ROM_LOAD16_BYTE( "825jab09.25d", 0x100000, 0x80000, CRC(1407BA5D) SHA1(e7a0d190326589f4d94e83cb7c85dd4e91f4efad) )
1956
 
        ROM_LOAD16_BYTE( "825jab10.27d", 0x100001, 0x80000, CRC(2AFD0A10) SHA1(1b8b868ac5720bb1b376f4eb8952efb190257bda) )
1957
 
 
1958
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1959
 
        DISK_IMAGE( "825jab11", 0, MD5(f4360da10a932ba90e93469df7426d1d) SHA1(1) )  /* ver 1.01 JA */
1960
 
 
1961
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1962
 
ROM_END
1963
 
 
1964
 
ROM_START( popn1 )
1965
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1966
 
        ROM_LOAD16_BYTE( "803jaa01.6a", 0x000000, 0x80000, CRC(469CEE89) SHA1(d7c3e25e48492bceb17825db357830b08a20f09a) )
1967
 
        ROM_LOAD16_BYTE( "803jaa02.8a", 0x000001, 0x80000, CRC(112FF5A3) SHA1(74d7155a1b63d411a8c3f99e511fc4c331b4c62f) )
1968
 
 
1969
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1970
 
        ROM_LOAD16_BYTE( "803jaa03.19a", 0x000000, 0x80000, CRC(D80315F6) SHA1(070ea8d00aeecce1e357be5a9c434ef46f57a7e9) )
1971
 
        ROM_LOAD16_BYTE( "803jaa04.20a", 0x000001, 0x80000, CRC(F7B9AC82) SHA1(898fbe229a3fdea5988d46359d030c3ec35eaafd) )
1972
 
        ROM_LOAD16_BYTE( "803jaa05.22a", 0x100000, 0x80000, CRC(2902F6DF) SHA1(658ccae9a67196a310bd69870c350058d2911feb) )
1973
 
        ROM_LOAD16_BYTE( "803jaa06.24a", 0x100001, 0x80000, CRC(508F326A) SHA1(a55c17f88b5856a754f00a6e32b6f60685a88bec) )
1974
 
 
1975
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1976
 
        ROM_LOAD16_BYTE( "803jaa07.22d", 0x000000, 0x80000, CRC(B9C12071) SHA1(8f67965d5c8e7c9bfac528a77a9e7c8e0d8b17c8) )
1977
 
        ROM_LOAD16_BYTE( "803jaa08.23d", 0x000001, 0x80000, CRC(A263F819) SHA1(b479a215282212e9253e4085640c0638a4036e31) )
1978
 
        ROM_LOAD16_BYTE( "803jaa09.25d", 0x100000, 0x80000, CRC(204D53EB) SHA1(349de147246b0ed08fb7e473d63e073b71fa30c9) )
1979
 
        ROM_LOAD16_BYTE( "803jaa10.27d", 0x100001, 0x80000, CRC(535A61A3) SHA1(b24c57601a7e3a349473af69114703133a46806d) )
1980
 
 
1981
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
1982
 
        DISK_IMAGE( "803jaa11", 0, MD5(54a8ac87857d81740621c622e27736d7) )      /* ver 1.00 JA */
1983
 
 
1984
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
1985
 
ROM_END
1986
 
 
1987
 
ROM_START( popn3 )
1988
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
1989
 
        ROM_LOAD16_BYTE( "980jaa01.6a", 0x000000, 0x80000, CRC(FFD37D2C) SHA1(2a62ccfdb77a10356dbf08d6daa84faa3ff5d93a) )
1990
 
        ROM_LOAD16_BYTE( "980jaa02.8a", 0x000001, 0x80000, CRC(00B15E1B) SHA1(7725b244b2964952e52a266aff697a8632830c97) )
1991
 
 
1992
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
1993
 
        ROM_LOAD16_BYTE( "980jaa03.19a", 0x000000, 0x80000, CRC(3674BA5B) SHA1(8741a43b099936c5f8add33d487b511c1ee8d21b) )
1994
 
        ROM_LOAD16_BYTE( "980jaa04.20a", 0x000001, 0x80000, CRC(32E8CA33) SHA1(5aab1cb334e57667e146516125574f4f14676104) )
1995
 
        ROM_LOAD16_BYTE( "980jaa05.22a", 0x100000, 0x80000, CRC(D31072E4) SHA1(c23c0e21fb22fe82b9a76d28bf2896dfec6bdc9b) )
1996
 
        ROM_LOAD16_BYTE( "980jaa06.24a", 0x100001, 0x80000, CRC(D2BBCF36) SHA1(4f44c5d8df5dabf2956bdf33739a97b0645b5a5d) )
1997
 
 
1998
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
1999
 
        ROM_LOAD16_BYTE( "980jaa07.22d", 0x000000, 0x80000, CRC(770732D0) SHA1(f4330952d1e54658077e315ebd3cfd35e267219c) )
2000
 
        ROM_LOAD16_BYTE( "980jaa08.23d", 0x000001, 0x80000, CRC(64BA3895) SHA1(3e4654c970d6fffe46b4e1097c1a6cda196ec92a) )
2001
 
        ROM_LOAD16_BYTE( "980jaa09.25d", 0x100000, 0x80000, CRC(1CB4D84E) SHA1(9669585c6a2825aeae6e47dd03458624b4c44721) )
2002
 
        ROM_LOAD16_BYTE( "980jaa10.27d", 0x100001, 0x80000, CRC(7776B87E) SHA1(662b7cd7cb4fb8f8bab240ef543bf9a593e23a03) )
2003
 
 
2004
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
2005
 
        DISK_IMAGE( "980jaa11", 0, MD5(6e5cc17a6bc75cac0256192cc700215c) )      /* ver 1.00 JA */
2006
 
 
2007
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
2008
 
ROM_END
2009
 
 
2010
 
ROM_START( popnstex )
2011
 
        ROM_REGION( 0x100000, "maincpu", 0 )            /* MC68EC020FG25 MPU */
2012
 
        ROM_LOAD16_BYTE( "970jba01.6a", 0x000000, 0x80000, CRC(8FA0C957) SHA1(12d1d6f15e19955c663ebdfcb16d5f6d209c0f76) )
2013
 
        ROM_LOAD16_BYTE( "970jba02.8a", 0x000001, 0x80000, CRC(7ADB00A0) SHA1(70a86897ab6cbc3f34be51f7f078644de697e331) )
2014
 
 
2015
 
        ROM_REGION( 0x200000, "gfx1", 0)                /* SPRITE */
2016
 
        ROM_LOAD16_BYTE( "970jba03.19a", 0x000000, 0x80000, CRC(E5D15D3C) SHA1(bdbd3c59e3377e071b199eea6cfb2ad84d37e971) )
2017
 
        ROM_LOAD16_BYTE( "970jba04.20a", 0x000001, 0x80000, CRC(687F9BEB) SHA1(6baac0aa2db3af9e34469b1719ccff3643fd85f7) )
2018
 
        ROM_LOAD16_BYTE( "970jba05.22a", 0x100000, 0x80000, CRC(3BEDC09C) SHA1(d0806bb54a3e620a987d61c6a5f04a2e1fc613a8) )
2019
 
        ROM_LOAD16_BYTE( "970jba06.24a", 0x100001, 0x80000, CRC(1673A771) SHA1(2768434f1c94543f69d40165e68d325ae5d553cd) )
2020
 
 
2021
 
        ROM_REGION( 0x200000, "gfx2", 0 )               /* TILEMAP */
2022
 
        ROM_LOAD16_BYTE( "970jba07.22d", 0x000000, 0x80000, CRC(6FD06BDB) SHA1(1dc621923e0871d2d5171753f5ddb97786ab12bd) )
2023
 
        ROM_LOAD16_BYTE( "970jba08.23d", 0x000001, 0x80000, CRC(28256891) SHA1(2069f52d596acbf355f205bb8d69cefc4cce3542) )
2024
 
        ROM_LOAD16_BYTE( "970jba09.25d", 0x100000, 0x80000, CRC(5D2BDA52) SHA1(d03c135ac04437b54e4d267ae168fe7ebb9e5b65) )
2025
 
        ROM_LOAD16_BYTE( "970jba10.27d", 0x100001, 0x80000, CRC(EDC4A245) SHA1(30bbd7bf0299a064119c535abb9be69d725aa130) )
2026
 
 
2027
 
        DISK_REGION( "ide" )                    /* IDE HARD DRIVE */
2028
 
        DISK_IMAGE( "970jba11", 0, MD5(1616905838fdb2b521d53499c6c2a7a4) )      /* ver 1.00 JA */
2029
 
 
2030
 
        ROM_REGION( 0x1000000, "shared", ROMREGION_ERASE00 )            /* K054539 RAM */
2031
 
ROM_END
2032
 
#endif
2033
 
 
2034
 
/*************************************
2035
 
 *
2036
 
 *  Driver-specific init
2037
 
 *
2038
 
 *************************************/
2039
 
 
2040
 
static DRIVER_INIT( beatmania )
2041
 
{
2042
 
        ide_master_password = NULL;
2043
 
        ide_user_password = NULL;
2044
 
}
2045
 
 
2046
 
static const UINT8 beatmania_master_password[2 + 32] =
2047
 
{
2048
 
        0x01, 0x00,
2049
 
        0x4d, 0x47, 0x43, 0x28, 0x4b, 0x29, 0x4e, 0x4f,
2050
 
        0x4d, 0x41, 0x20, 0x49, 0x4c, 0x41, 0x20, 0x4c,
2051
 
        0x49, 0x52, 0x48, 0x47, 0x53, 0x54, 0x52, 0x20,
2052
 
        0x53, 0x45, 0x52, 0x45, 0x45, 0x56, 0x2e, 0x44
2053
 
};
2054
 
 
2055
 
static DRIVER_INIT( hmcompmx )
2056
 
{
2057
 
        static const UINT8 hmcompmx_user_password[2 + 32] =
2058
 
        {
2059
 
                0x00, 0x00,
2060
 
                0x44, 0x42, 0x56, 0x4b, 0x3a, 0x34, 0x38, 0x2a,
2061
 
                0x5a, 0x4d, 0x78, 0x3e, 0x74, 0x61, 0x6c, 0x0a,
2062
 
                0x7a, 0x63, 0x19, 0x77, 0x73, 0x7d, 0x0d, 0x12,
2063
 
                0x6b, 0x09, 0x02, 0x0f, 0x05, 0x00, 0x7d, 0x1b
2064
 
        };
2065
 
 
2066
 
        DRIVER_INIT_CALL(beatmania);
2067
 
 
2068
 
        ide_master_password = beatmania_master_password;
2069
 
        ide_user_password = hmcompmx_user_password;
2070
 
}
2071
 
 
2072
 
static DRIVER_INIT( bm4thmix )
2073
 
{
2074
 
        static const UINT8 bm4thmix_user_password[2 + 32] =
2075
 
        {
2076
 
                0x00, 0x00,
2077
 
                0x44, 0x42, 0x29, 0x4b, 0x2f, 0x2c, 0x4c, 0x32,
2078
 
                0x48, 0x5d, 0x0c, 0x3e, 0x62, 0x6f, 0x7e, 0x73,
2079
 
                0x67, 0x10, 0x19, 0x79, 0x6c, 0x7d, 0x00, 0x01,
2080
 
                0x18, 0x06, 0x1e, 0x07, 0x77, 0x1a, 0x7d, 0x77
2081
 
        };
2082
 
 
2083
 
        DRIVER_INIT_CALL(beatmania);
2084
 
 
2085
 
        ide_user_password = bm4thmix_user_password;
2086
 
}
2087
 
 
2088
 
static DRIVER_INIT( bm5thmix )
2089
 
{
2090
 
        static const UINT8 bm5thmix_user_password[2 + 32] =
2091
 
        {
2092
 
                0x00, 0x00,
2093
 
                0x44, 0x42, 0x56, 0x4b, 0x37, 0x35, 0x4a, 0x23,
2094
 
                0x5a, 0x52, 0x0c, 0x3e, 0x60, 0x04, 0x6c, 0x78,
2095
 
                0x77, 0x7e, 0x74, 0x16, 0x6c, 0x7d, 0x00, 0x16,
2096
 
                0x6b, 0x1a, 0x1e, 0x06, 0x04, 0x01, 0x7d, 0x1f
2097
 
        };
2098
 
 
2099
 
        DRIVER_INIT_CALL(beatmania);
2100
 
 
2101
 
        ide_master_password = beatmania_master_password;
2102
 
        ide_user_password = bm5thmix_user_password;
2103
 
}
2104
 
 
2105
 
static DRIVER_INIT( bmclubmx )
2106
 
{
2107
 
        static const UINT8 bmclubmx_user_password[2 + 32] =
2108
 
        {
2109
 
                0x00, 0x00,
2110
 
                0x44, 0x20, 0x30, 0x57, 0x3c, 0x3f, 0x38, 0x32,
2111
 
                0x4f, 0x38, 0x74, 0x4c, 0x07, 0x61, 0x6c, 0x64,
2112
 
                0x76, 0x7d, 0x70, 0x16, 0x1f, 0x6f, 0x0c, 0x0f,
2113
 
                0x0a, 0x1a, 0x71, 0x07, 0x1e, 0x19, 0x7d, 0x02
2114
 
        };
2115
 
 
2116
 
        DRIVER_INIT_CALL(beatmania);
2117
 
 
2118
 
        ide_master_password = beatmania_master_password;
2119
 
        ide_user_password = bmclubmx_user_password;
2120
 
}
2121
 
 
2122
 
 
2123
 
static DRIVER_INIT( bmcompm2 )
2124
 
{
2125
 
        static const UINT8 bmcompm2_user_password[2 + 32] =
2126
 
        {
2127
 
                0x00, 0x00,
2128
 
                0x3a, 0x20, 0x31, 0x3e, 0x46, 0x2c, 0x35, 0x46,
2129
 
                0x48, 0x51, 0x6f, 0x3e, 0x73, 0x6b, 0x68, 0x0a,
2130
 
                0x60, 0x71, 0x19, 0x6f, 0x70, 0x68, 0x07, 0x62,
2131
 
                0x6b, 0x0d, 0x71, 0x0f, 0x1d, 0x10, 0x7d, 0x7a
2132
 
        };
2133
 
 
2134
 
        DRIVER_INIT_CALL(beatmania);
2135
 
 
2136
 
        ide_master_password = beatmania_master_password;
2137
 
        ide_user_password = bmcompm2_user_password;
2138
 
}
2139
 
 
2140
 
static DRIVER_INIT( hmcompm2 )
2141
 
{
2142
 
        static const UINT8 hmcompm2_user_password[2 + 32] =
2143
 
        {
2144
 
                0x00, 0x00,
2145
 
                0x3b, 0x39, 0x24, 0x3e, 0x4e, 0x59, 0x5c, 0x32,
2146
 
                0x3b, 0x4c, 0x72, 0x57, 0x69, 0x04, 0x79, 0x65,
2147
 
                0x76, 0x10, 0x6a, 0x77, 0x1f, 0x65, 0x0a, 0x16,
2148
 
                0x09, 0x68, 0x71, 0x0b, 0x77, 0x15, 0x17, 0x1e
2149
 
        };
2150
 
 
2151
 
        DRIVER_INIT_CALL(beatmania);
2152
 
 
2153
 
        ide_master_password = beatmania_master_password;
2154
 
        ide_user_password = hmcompm2_user_password;
2155
 
}
2156
 
 
2157
 
static DRIVER_INIT( bmdct )
2158
 
{
2159
 
        static const UINT8 bmdct_user_password[2 + 32] =
2160
 
        {
2161
 
                0x00, 0x00,
2162
 
                0x52, 0x47, 0x30, 0x3f, 0x2f, 0x39, 0x54, 0x5e,
2163
 
                0x4f, 0x4b, 0x65, 0x3e, 0x07, 0x6e, 0x6c, 0x67,
2164
 
                0x7d, 0x79, 0x7b, 0x16, 0x6d, 0x73, 0x65, 0x06,
2165
 
                0x0e, 0x0a, 0x05, 0x0f, 0x13, 0x74, 0x09, 0x19
2166
 
        };
2167
 
 
2168
 
        DRIVER_INIT_CALL(beatmania);
2169
 
 
2170
 
        ide_master_password = beatmania_master_password;
2171
 
        ide_user_password = bmdct_user_password;
2172
 
}
2173
 
 
2174
 
static DRIVER_INIT( bmcorerm )
2175
 
{
2176
 
        static const UINT8 bmcorerm_user_password[2 + 32] =
2177
 
        {
2178
 
                0x00, 0x00,
2179
 
                0x44, 0x42, 0x56, 0x4b, 0x3f, 0x4d, 0x4a, 0x27,
2180
 
                0x5a, 0x52, 0x0c, 0x3e, 0x6a, 0x04, 0x63, 0x6f,
2181
 
                0x72, 0x64, 0x72, 0x7f, 0x1f, 0x73, 0x17, 0x04,
2182
 
                0x05, 0x09, 0x14, 0x0d, 0x7a, 0x74, 0x7d, 0x7a
2183
 
        };
2184
 
 
2185
 
        DRIVER_INIT_CALL(beatmania);
2186
 
 
2187
 
        ide_master_password = beatmania_master_password;
2188
 
        ide_user_password = bmcorerm_user_password;
2189
 
}
2190
 
 
2191
 
static DRIVER_INIT( bm6thmix )
2192
 
{
2193
 
        static const UINT8 bm6thmix_user_password[2 + 32] =
2194
 
        {
2195
 
                0x00, 0x00,
2196
 
                0x44, 0x42, 0x56, 0x4b, 0x3d, 0x4d, 0x4a, 0x23,
2197
 
                0x5a, 0x52, 0x0c, 0x3e, 0x6a, 0x04, 0x63, 0x65,
2198
 
                0x7e, 0x7f, 0x77, 0x77, 0x1f, 0x79, 0x04, 0x0f,
2199
 
                0x02, 0x06, 0x09, 0x0f, 0x7a, 0x74, 0x7d, 0x7a
2200
 
        };
2201
 
 
2202
 
        DRIVER_INIT_CALL(beatmania);
2203
 
 
2204
 
        ide_master_password = beatmania_master_password;
2205
 
        ide_user_password = bm6thmix_user_password;
2206
 
}
2207
 
 
2208
 
static DRIVER_INIT( bm7thmix )
2209
 
{
2210
 
        static const UINT8 bm7thmix_user_password[2 + 32] =
2211
 
        {
2212
 
                0x00, 0x00,
2213
 
                0x44, 0x42, 0x56, 0x4b, 0x3f, 0x4e, 0x4a, 0x25,
2214
 
                0x5a, 0x52, 0x0c, 0x3e, 0x15, 0x04, 0x6f, 0x0a,
2215
 
                0x77, 0x71, 0x74, 0x16, 0x6d, 0x73, 0x0c, 0x0c,
2216
 
                0x0c, 0x06, 0x7c, 0x6e, 0x77, 0x74, 0x7d, 0x7a
2217
 
        };
2218
 
 
2219
 
        DRIVER_INIT_CALL(beatmania);
2220
 
 
2221
 
        ide_master_password = beatmania_master_password;
2222
 
        ide_user_password = bm7thmix_user_password;
2223
 
}
2224
 
 
2225
 
static DRIVER_INIT( bmfinal )
2226
 
{
2227
 
        static const UINT8 bmfinal_user_password[2 + 32] =
2228
 
        {
2229
 
                0x00, 0x00,
2230
 
                0x44, 0x42, 0x56, 0x4b, 0x3f, 0x4f, 0x4a, 0x23,
2231
 
                0x5a, 0x52, 0x0c, 0x3e, 0x07, 0x04, 0x63, 0x7f,
2232
 
                0x76, 0x74, 0x6a, 0x64, 0x7e, 0x68, 0x0c, 0x0c,
2233
 
                0x0c, 0x06, 0x71, 0x6e, 0x77, 0x79, 0x7d, 0x7a
2234
 
        };
2235
 
 
2236
 
        DRIVER_INIT_CALL(beatmania);
2237
 
 
2238
 
        ide_master_password = beatmania_master_password;
2239
 
        ide_user_password = bmfinal_user_password;
2240
 
}
2241
 
 
2242
 
 
2243
 
/*************************************
2244
 
 *
2245
 
 *  Game drivers
2246
 
 *
2247
 
 *************************************/
2248
 
 
2249
 
// commented out games should also run on this driver
2250
 
 
2251
 
GAME( 1997, bm1stmix, 0,        djmain,   bm1stmix, beatmania, ROT0, "Konami", "beatmania (ver JA-B)", 0 )
2252
 
GAME( 1998, bm2ndmix, 0,        djmain,   bm2ndmix, beatmania, ROT0, "Konami", "beatmania 2nd MIX (ver JA-B)", 0 )
2253
 
GAME( 1998, bm2ndmxa, bm2ndmix, djmain,   bm2ndmix, beatmania, ROT0, "Konami", "beatmania 2nd MIX (ver JA-A)", 0 )
2254
 
GAME( 1998, bm3rdmix, 0,        djmain,   bm3rdmix, beatmania, ROT0, "Konami", "beatmania 3rd MIX (ver JA-A)", 0 )
2255
 
GAME( 1999, bmcompmx, 0,        djmain,   bmcompmx, beatmania, ROT0, "Konami", "beatmania complete MIX (ver JA-B)", 0 )
2256
 
GAME( 1999, hmcompmx, bmcompmx, djmain,   bmcompmx, hmcompmx,  ROT0, "Konami", "hiphopmania complete MIX (ver UA-B)", 0 )
2257
 
GAME( 1999, bm4thmix, 0,        djmain,   bm4thmix, bm4thmix,  ROT0, "Konami", "beatmania 4th MIX (ver JA-A)", 0 )
2258
 
GAME( 1999, bm5thmix, 0,        djmain,   bm5thmix, bm5thmix,  ROT0, "Konami", "beatmania 5th MIX (ver JA-A)", 0 )
2259
 
GAME( 2000, bmcompm2, 0,        djmain,   bm5thmix, bmcompm2,  ROT0, "Konami", "beatmania complete MIX 2 (ver JA-A)", 0 )
2260
 
GAME( 2000, hmcompm2, bmcompm2, djmain,   hmcompm2, hmcompm2,  ROT0, "Konami", "hiphopmania complete MIX 2 (ver UA-A)", 0 )
2261
 
GAME( 2000, bmclubmx, 0,        djmain,   bmclubmx, bmclubmx,  ROT0, "Konami", "beatmania Club MIX (ver JA-A)", 0 )
2262
 
GAME( 2000, bmdct,    0,        djmain,   bmdct,    bmdct,     ROT0, "Konami", "beatmania featuring Dreams Come True (ver JA-A)", 0 )
2263
 
GAME( 2000, bmcorerm, 0,        djmain,   bmcorerm, bmcorerm,  ROT0, "Konami", "beatmania CORE REMIX (ver JA-A)", 0 )
2264
 
GAME( 2001, bm6thmix, 0,        djmain,   bm6thmix, bm6thmix,  ROT0, "Konami", "beatmania 6th MIX (ver JA-A)", 0 )
2265
 
GAME( 2001, bm7thmix, 0,        djmain,   bm6thmix, bm7thmix,  ROT0, "Konami", "beatmania 7th MIX (ver JA-B)", 0 )
2266
 
GAME( 2002, bmfinal,  0,        djmain,   bm6thmix, bmfinal,   ROT0, "Konami", "beatmania THE FINAL (ver JA-A)", 0 )
2267
 
 
2268
 
GAME( 1998, popn2,    0,        djmain,   popnmusic, beatmania, ROT0, "Konami", "Pop'n Music 2 (ver JA-A)", 0 )
2269
 
 
2270
 
#if 0
2271
 
// for reference, these sets have not been verified
2272
 
GAME( 1998, bm3rdmxb, bm3rdmix, djmain,   bm3rdmix,  beatmania, ROT0, "Konami", "beatmania 3rd MIX (ver JA-B)", 0 )
2273
 
 
2274
 
GAME( 1998, popn1,    0,        djmain,   popn1,     beatmania, ROT0, "Konami", "Pop'n Music 1 (ver JA-A)", 0 )
2275
 
GAME( 1999, popn3,    0,        djmain,   popnmusic, beatmania, ROT0, "Konami", "Pop'n Music 3 (ver JA-A)", 0 )
2276
 
 
2277
 
GAME( 1999, popnstex, 0,        djmain,   popnstex,  beatmania, ROT0, "Konami", "Pop'n Stage EX (ver JB-A)", 0 )
2278
 
#endif