# MAME Multiple Arcade Machine Emulator

## The official site of the MAME development team

### Viewing File: <root>/src/mame/drivers/pacman.c

        1  /***************************************************************************
        2
        3      Namco PuckMan
        4
        5      driver by Nicola Salmoria and many others
        6
        7      Games supported:
        8          * Puck Man
        9          * Pac-Man Plus
       10          * Ms. Pac-Man
       11          * Crush Roller
       12          * Ponpoko
       13          * Eyes
       14          * Mr. TNT
       15          * Gorkans
       16          * Lizard Wizard
       17          * The Glob
       18          * Dream Shopper
       19          * Van Van Car
       20          * Ali Baba and 40 Thieves
       21          * Jump Shot
       22          * Shoot the Bull
       23          * Big Bucks
       24          * Driving Force
       25          * Eight Ball Action
       26          * Porky
       27          * MTV Rock-N-Roll Trivia (Part 2)
       28          * Woodpecker
       29
       30
       31      Known issues:
       32          * mystery items in Ali Baba don't work correctly because of protection
       33
       34      Known to exist but dumps needed
       35          * Eeeek!
       36          * Ms Pac Plus
       37          * Ms Pac Man Twin
       38          * MTV Rock-N-Roll Trivia (Part 2), 1 bad rom. It's not a bad dump, the rom is bad.
       39
       40  ****************************************************************************
       41
       42      Pac-Man memory map (preliminary)
       43
       44      0000-3fff ROM
       45      4000-43ff Video RAM
       46      4400-47ff Color RAM
       47      4800-4bff RAM Dream Shopper, Van Van Car only.  Pacman uses this block due to a bug in the routine to
       48           translate the internal pacman location to a screen address when in the right tunnel.
       49      4c00-4fff RAM
       50      8000-bfff ROM Ms Pac-Man, Ponpoko, Lizard Wizard, Dream Shopper, Van Van Car, Woodpecker, Ali Babba all use
       51           portions of the upper memory area.  Pacman and most bootlegs don't have an A15 line to the cpu so most
       52           boards that use upper memmory have an auxillary board that plugs into the cpu socket with a ribbon cable.
       53           There is also a common Ms Pacman hack for pacman bootlegs to wire A15 from the cpu to the address decoder
       54           in place of the refresh line. The extra eproms are stacked on lower eproms or placed in unused sockets for
       55           2k roms.
       56
       57
       58      memory mapped ports:
       59
       60      read:
       61      5000      IN0
       62      5040      IN1
       63      5080      DSW 1
       64      50c0      DSW 2 (Ponpoko, mschamp, Van Van Car, Rock and Roll Trivia 2 only)
       65      see the input_ports definition below for details on the input bits
       66
       67      write:
       68      4ff0-4fff 8 pairs of two bytes:
       69                the first byte contains the sprite image number (bits 2-7), Y flip (bit 0),
       70                X flip (bit 1); the second byte the color.  Note: Only Ponpoko has 8 sprites
       71                an original Midway Pacman board containls only the center 6 sprites.
       72      5000      interrupt enable
       73      5001      sound enable
       74      5002      latch at location 8K has no connection for this address
       75      5003      flip screen
       76      5004      1 player start lamp
       77      5005      2 players start lamp
       78      5006      coin lockout                      Note: no boards are known to contain the output
       79              transistors to drive a lamp or coin lockout.   The schematics and boards show no connection
       80              to the output of the latch at location 8k
       81      5007      coin counter
       82      5040-5044 sound voice 1 accumulator (nibbles) (used by the sound hardware only)
       83      5045      sound voice 1 waveform (nibble)
       84      5046-5049 sound voice 2 accumulator (nibbles) (used by the sound hardware only)
       85      504a      sound voice 2 waveform (nibble)
       86      504b-504e sound voice 3 accumulator (nibbles) (used by the sound hardware only)
       87      504f      sound voice 3 waveform (nibble)
       88      5050-5054 sound voice 1 frequency (nibbles)
       89      5055      sound voice 1 volume (nibble)
       90      5056-5059 sound voice 2 frequency (nibbles)
       91      505a      sound voice 2 volume (nibble)
       92      505b-505e sound voice 3 frequency (nibbles)
       93      505f      sound voice 3 volume (nibble)
       94      5060-506f Sprite coordinates, x/y pairs for 8 sprites
       95      50c0      Watchdog reset
       96
       97      I/O ports:
       98      OUT on port $0 sets the interrupt vector
       99
      100
      101  ****************************************************************************
      102
      103      Make Trax protection description:
      104
      105      Make Trax has a "Special" chip that it uses for copy protection.
      106      The following chart shows when reads and writes may occur:
      107
      108      AAAAAAAA AAAAAAAA
      109      11111100 00000000  <- address bits
      110      54321098 76543210
      111      xxx1xxxx 01xxxxxx - read data bits 4 and 7
      112      xxx1xxxx 10xxxxxx - read data bits 6 and 7
      113      xxx1xxxx 11xxxxxx - read data bits 0 through 5
      114
      115      xxx1xxxx 00xxx100 - write to Special
      116      xxx1xxxx 00xxx101 - write to Special
      117      xxx1xxxx 00xxx110 - write to Special
      118      xxx1xxxx 00xxx111 - write to Special
      119
      120      In practical terms, it reads from Special when it reads from
      121      location $5040-$50FF.  Note that these locations overlap our
      122      inputs and Dip Switches.  Yuk.
      123
      124      I don't bother trapping the writes right now, because I don't
      125      know how to interpret them.  However, comparing against Crush
      126      Roller gives most of the values necessary on the reads.
      127
      128      Instead of always reading from $5040, $5080, and $50C0, the Make
      129      Trax programmers chose to read from a wide variety of locations,
      130      probably to make debugging easier.  To us, it means that for the most
      131      part we can just assign a specific value to return for each address and
      132      we'll be OK.  This falls apart for the following addresses:  $50C0, $508E,
      133      $5090, and $5080.  These addresses should return multiple values.  The other
      134      ugly thing happening is in the ROMs at $3AE5.  It keeps checking for
      135      different values of $50C0 and $5080, and weird things happen if it gets
      136      the wrong values.  The only way I've found around these is to patch the
      137      ROMs using the same patches Crush Roller uses.  The only thing to watch
      138      with this is that changing the ROMs will break the beginning checksum.
      139      That's why we use the rom opcode decode function to do our patches.
      140
      141      Incidentally, there are extremely few differences between Crush Roller
      142      and Make Trax.  About 98% of the differences appear to be either unused
      143      bytes, the name of the game, or code related to the protection.  I've
      144      only spotted two or three actual differences in the games, and they all
      145      seem minor.
      146
      147      If anybody cares, here's a list of disassembled addresses for every
      148      read and write to the Special chip (not all of the reads are
      149      specifically for checking the Special bits, some are for checking
      150      player inputs and Dip Switches):
      151
      152      Writes: $0084, $012F, $0178, $023C, $0C4C, $1426, $1802, $1817,
      153          $280C, $2C2E, $2E22, $3205, $3AB7, $3ACC, $3F3D, $3F40,
      154          $3F4E, $3F5E
      155      Reads:  $01C8, $01D2, $0260, $030E, $040E, $0416, $046E, $0474,
      156          $0560, $0568, $05B0, $05B8, $096D, $0972, $0981, $0C27,
      157          $0C2C, $0F0A, $10B8, $10BE, $111F, $1127, $1156, $115E,
      158          $11E3, $11E8, $18B7, $18BC, $18CA, $1973, $197A, $1BE7,
      159          $1C06, $1C9F, $1CAA, $1D79, $213D, $2142, $2389, $238F,
      160          $2AAE, $2BF4, $2E0A, $39D5, $39DA, $3AE2, $3AEA, $3EE0,
      161          $3EE9, $3F07, $3F0D
      162
      163
      164  *****************************************************************************************
      165  notes:
      166  ------
      167  - Pacman: The Cabinet Type "dip switch" actually comes from the edge connector.  "Dip switches" #7(0x40) and #8(0x80)
      168    are really solder pads. The actual dip #7 is Rack advance from IN0 and dip #8 is video freeze which is handled in
      169    hardware.
      170
      171  - Pacman: Pacman contains a bug in the up direction of pacman animation. The circle animation is 1 pixel to low.
      172    Pucman set 1 has a patch to fix it at 1700-1704
      173
      174  - Puckman set 1 is likely a bootleg since the protection is patched out, set 2 would likely
      175    be correct if the roms were split differently.  Nicola had said that he had a readme that mentioned 2k roms,
      176    it is likely they were all 2k or all 4k, not mixed. I have seen a puckman cocktail cab with masked 4k roms.
      177    Any code changes to the first two roms will affect the random number generator so it should be assumed to play
      178    differently.
      179
      180  - puckman set 3 (previously labeled(harder?):
      181    npacmod.6j and NAMCOPAC.6J
      182    00000031: AF 25    ;3031 is sub for fail rom check.
      183    00000032: C3 7C    ;301c is sub for pass rom check
      184    00000033: 1C E6    ;so it now clears the sum (reg A) and
      185    00000034: 30 F0    ;jumps to pass if it fails rom check.
      186    000007F8: 31 30  c 1981 / c 1980
      187    0000080B-12:   ghost / nickname
      188    00000FFF: 00 F1  checksum
      189
      190  - mspacmab: this is the equivalent of pacman with the ms pacman overlays permanently installed.  There are a few
      191    extra bytes that don't seemed to be used at all.  The Rom check is patched to never fail.  Many repair shops will
      192    install this code in all ms pacman boards.  Since the overlays move in and out during play on the original it is
      193    unknown if this version will play the same. It is possible to identify if a board is running this or the original
      194    code by observing the behavior on boot.
      195
      196  - mspacmnf,pacmanf: These sets are the results of replacing 6f with what is known as the speedup chip. These are more
      197    popular than the original with operators and players.  The pacman speedup breaks the attract mode and intermissions.
      198    There's a modern speedup chip that fixes this.
      199
      200  - Pacmod Harder compared to Pacman
      201    pacmanh.5E
      202    erase tiles $25:"."   $28-$2e:"NAMCO"   $5c:copyright C
      203
      204    program code
      205    pacman/pacmod
      206    0843: 14 0F  Table of when ghosts come out of house.
      207    0844: 1E 14
      208    0845: 46 37
      209    0846: 00 04 pink,   level 1
      210    0847: 1E 18 blue
      211    0848: 3C 34 orange
      212    0849: 00 02         level 2
      213    084A: 00 06
      214    084B: 32 28
      215    084c: 00 00         level 3
      216    084D: 00 04
      217    084E: 00 08
      218    0FFF: 36 54  checksum
      219    2795: 29 00  pink ghost ai, points target to 2 tiles in front of pac instead of 4.
      220    281F: 40 24  orange ghost ai, change close/far breakpoint from $40 to $24.
      221    2FFF: 4C 91    checksum
      222    37F8,3d28,3d43:  change 1980 to 1981
      223    Notice the harder upgrade was 2 roms only. 6e,6h.  The others are from a newer set.
      224
      225  - joyman: Pacman maze hack, but they left the dots as is, the music has been mangled as well.
      226
      227  - ctrpllrp: Caterpillar is like Piranha in that it was sold as a unique game.  They were hoping no one would notice
      228    it uses pacman code for it's base.  Unlike Piranha as far as I know they got away with it.
      229    Differences include new music in the intermissions.
      230
      231  - mspacatk: This is the alternate maze chip. The mazes are new but the fruit paths are not changed, causing fruit
      232    to move through walls.  There are at least two different hacks of this chip to fix it.
      233
      234  - mspacpls: This romset is hacked.  mspacatk.2 is more commonly known as the "cheat chip" and is used on bootleg
      235    ms pacs  in place of boot2. It was created circa 1997 by Doc Cutlip and allows turbo speed and invulnerability.
      236    mspacatk.5 and .6 contain the decoded maze data for ms pac plus.  The actual dump is not available.
      237    I believe the actual version contains more than just new maze data.
      238
      239  - pacgal:  This is a common hack found on make trax and other boards.  Mostly they use 4k eproms but Make Trax allows
      240    4x2k for graphics. Boot5 and 6 are stacked on boot3 and 4, the refresh hack is used for addressing.   Usually
      241    they swap out the 4a color prom as well.  The bootlegger here was apparently too cheap to burn the prom and kept the
      242    make trax colors.  Other than that this is an insignificant set.
      243
      244    Comparing files boot3 and PACMAN.7FH
      245    0000069F: 01 03   ;runs on boot only, probably garbage bit
      246    Comparing files boot4 and PACMAN.7HJ
      247    00000807-812:  ;Changes "MS PAC-MAN" to "PAC-GAL"
      248    00000D3E-D4C:  ;Erases  c MIDWAY MFG CO
      249    00000D97-DA0:  ;Changes MS PAC-MAN  to  PAC-GAL
      250    Comparing files 5f and 5F PacGal
      251    000007D5: 00 01 garbage bit in otherwise blank sprite $1f
      252
      253  - maketrax: All Make Trax boards are Crush Roller boards.  They have Crush Roller screen printed on them covered by
      254    a Williams sticker.  The roms also have another sticker under the Williams sticker.
      255
      256  - maketrxb:  This board looked slightly different than the standard make trax.  The usual Red and Yellow jumper wires
      257    for sync inversion were smaller and white and the stickers were slightly different.
      258
      259  - Pac and Paint: Even though this seems to be a unique game the marquee shows a paintbush.  The board has standard
      260    crush roller roms.  It is slightly different from a Make Trax board in that the sync inverter chip is missing and
      261    there are no jumper wires.
      262
      263  - jumpshotp: This board was acquired by Pokemame from a former midway employee.  The hardware is identical to normal boards
      264    except the daughterboard is missing the epoxy potting.  Board was labeled engineering sample. Code differences
      265    include dips, starting position and cheerleader text.
      266
      267  - sprglobp: This might be original or someone may have combined the program roms from the glob with roms from super.
      268    I believe there is a set that uses 1 more program rom than this set.
      269
      270  - Eyes, Mr. Tnt and Lizard Wizard share some code.
      271
      272  - Games that share code with Puckman: Ali Baba, Piranha, Caterpiller, Naughty Mouse, Pacman Plus, ms pacman.  From
      273    galaxian hardware steaking and the pacman bootlegs also.
      274
      275  - acitya contains a bug with the insurance in blackjack.  It's impossible to collect, so it's likely that acitya is
      276    earlier than bwcasino.
      277
      278  Easter eggs:
      279  -----------
      280  - Pacman, Ms Pacman, Piranha and similar display "MADE BY NAMCO" sideways in power pellets.  Hold start 1 and 2 and
      281    toggle the test switch to get to the convergence grid.  4xUp, 4xL, 4xR, 4xD.
      282
      283  - Ms. Pac-Man has a hidden message at the very end of ROM memory 0x97d0-0x97ff:
      284
      285      000097d0: 4745 4e45 5241 4c20 434f 4d50 5554 4552  GENERAL COMPUTER
      286      000097e0: 2020 434f 5250 4f52 4154 494f 4e20 2020    CORPORATION
      287      000097f0: 4865 6c6c 6f2c 204e 616b 616d 7572 6121  Hello, Nakamura!
      288
      289    Masaya Nakamura is the founder of Namco who originally produced Pac-Man in Japan.
      290    General Computer Corporation designed Ms. Pac-Man and licensed it to Midway for manufacture in North America.
      291
      292  - Super ABC shows developer credits at boot if IN1 is diconnected.
      293
      294  Boards:
      295  -------
      296  - puckman is the same as pacman except they are slotted to break a part and have ribbon cables to connect the halves.
      297
      298  - All ms pacman boards are pacman boards with an auxillary cpu board installed on a ribbon cable and 5e,5f changed.
      299
      300  - Pacman Plus, Shoot the Bull, Jumpshot are epoxy potted auxillary cpu boards.  The graphics and
      301    color proms are changed as well.  They are labeled Authorized Enhancement Kit Bally/Midway.   Jumpshot=B3172
      302
      303  - The Eyes boards are similar to pacman boards except for the data swapping encryption.  The custom chips are integrated
      304    into the board and there is no voltage regulator section.  There is an extra rom at row 6 so row 7 is equivilant to
      305    pacman row 6.  Program roms are 4k but graphics roms have unpopulated areas for optional 2k roms.
      306
      307  - Piranha and Naughty Mouse use a board known as the GDP-01 bootleg.  It is similar to an eyes board with an extra row
      308    of eproms in row 6 to enable 2k program roms. Thee GDP-01 does not requiree a SBC, but 5 SBC chips can be left unpopulated
      309    and a SBC card(GDP-02) can be installed.
      310
      311  - Make Trax/Crush Roller boards are similar to pacman boards, the chip positions are even mostly the same.  There is no
      312    voltage regulator section.  Make Trax has sync inverter at 1S, jumper wires run from the edge connector to the
      313    inverter and back.  Make Trax/CR boards are easily identified because the edge connector is on the long side,
      314    offset to one side.  Make trax and Eyes pinouts are similar enough to test each other but are not playable.
      315
      316  - Atlantic City Action, Boardwalk Casino, The Glob, Super Glob, Beastie Feastie, EEEK! all use identical Epos boards
      317    with different pals.  Street heat, Drakton on Donkey Kong also use this board.  It is a cpu auxillary board.  It is
      318    not potted but all the chip labels are removed.
      319
      320  - Porky and 8ball action use the same plug in board for pacman.  It is much larger than most and requires some soldering
      321    to install.  It includes a new cpu and sound hardware.  Driving force uses a similar board and requires a lot of
      322    soldering.
      323
      324  - Lizard Wizard is a potted auxillary cpu board.
      325
      326  - Big Bucks is an auxillary cpu board.
      327
      328  - MTV Trivia is an auxillary cpu board.
      329
      330  - Truco Clemente runs on a pac bootleg with a handwired cpu/graphics auxillary board.  This supports banking of the
      331    roms and completely bypasses color proms and video output section of pacman.
      332
      333  - Vanvanb was found on a low quality board assumed to be a bootleg of an original.  The 2 sound chips were on a
      334    daughterboard that plugged into a 40 pin socket. Physically it is very different from pacman, although the fact that
      335    it uses the same falcon pinout as every other pac boot is a little suspicious.
      336
      337  - Ponpoko uses it's own board.
      338
      339  ****************************************************************************/
      340
      341  #include "emu.h"
      342  #include "cpu/z80/z80.h"
      343  #include "includes/pacman.h"
      344  #include "cpu/s2650/s2650.h"
      345  #include "machine/nvram.h"
      346  #include "sound/namco.h"
      347  #include "sound/ay8910.h"
      348  #include "sound/sn76496.h"
      349
      350
      351  /*************************************
      352   *
      353   *  Constants
      354   *
      355   *************************************/
      356
      357  #define MASTER_CLOCK        (XTAL_18_432MHz)
      358
      359  #define PIXEL_CLOCK         (MASTER_CLOCK/3)
      360
      361  /* H counts from 128->511, HBLANK starts at 144 and ends at 240 */
      362  #define HTOTAL              (384)
      363  #define HBEND               (0)     /*(96+16)*/
      364  #define HBSTART             (288)   /*(16)*/
      365
      366  #define VTOTAL              (264)
      367  #define VBEND               (0)     /*(16)*/
      368  #define VBSTART             (224)   /*(224+16)*/
      369
      370
      371  /*************************************
      372   *
      373   *  Machine init
      374   *
      375   *************************************/
      376
      377  MACHINE_RESET_MEMBER(pacman_state,mschamp)
      378  {
      379      UINT8 *rom = machine().root_device().memregion("maincpu")->base() + 0x10000;
      380      int whichbank = machine().root_device().ioport("GAME")->read() & 1;
      381
      382      machine().root_device().membank("bank1")->configure_entries(0, 2, &rom[0x0000], 0x8000);
      383      machine().root_device().membank("bank2")->configure_entries(0, 2, &rom[0x4000], 0x8000);
      384
      385      machine().root_device().membank("bank1")->set_entry(whichbank);
      386      machine().root_device().membank("bank2")->set_entry(whichbank);
      387  }
      388
      389  MACHINE_RESET_MEMBER(pacman_state,superabc)
      390  {
      391      superabc_bank_w(m_maincpu->space(AS_PROGRAM), 0, 0);
      392  }
      393
      394
      395
      396  /*************************************
      397   *
      398   *  Interrupts
      399   *
      400   *************************************/
      401
      402  INTERRUPT_GEN_MEMBER(pacman_state::vblank_irq)
      403  {
      404      if(m_irq_mask)
      405          device.execute().set_input_line(0, HOLD_LINE);
      406  }
      407
      408  INTERRUPT_GEN_MEMBER(pacman_state::vblank_nmi)
      409  {
      410      if(m_irq_mask)
      411          device.execute().set_input_line(INPUT_LINE_NMI, PULSE_LINE);
      412  }
      413
      414  WRITE8_MEMBER(pacman_state::irq_mask_w)
      415  {
      416      m_irq_mask = data & 1;
      417  }
      418
      419  WRITE8_MEMBER(pacman_state::pacman_interrupt_vector_w)
      420  {
      421      m_maincpu->set_input_line_vector(0, data);
      422      m_maincpu->set_input_line(0, CLEAR_LINE);
      423  }
      424
      425
      426  /*
      427     The piranha board has a sync bus controller card similar to Midway's pacman. It
      428     stores the LSB of the interrupt vector using port 00 but it alters the byte to prevent
      429     it from running on normal pacman hardware and vice versa. I wrote a program to print
      430     out the even numbers and the vectors they convert to.  Thanks to Dave France for
      431     burning the roms.  The numbers that didn't print here convert to odd numbers.  It's
      432     slightly possible some numbers listed converted to odd numbers and coincidentally
      433     printed a valid even number.  Since it only uses 2 vectors($fa,$fc) I didn't complete
      434     the table or attempt to find the algorithm.
      435
      436     David Widel
      437     Pacman@mailblocks.com
      438    out vec  out vec  out vec  out vec
      439    c0 44    80 04    40 44    00 04
      440    c2 40    82 00    42 C4    02 84
      441    c4 C4    84 84    44 C4    04 00
      442    c6 40    86 00
      443    c8 4C    88 0C    48 4C    08 0C
      444    ca 48    8A 08    4A CC    0A 8C
      445    cc CC    8C 8C    4C 48    0C 08
      446    ce 48    8E 08
      447    d0 54    90 14    50 54    10 14
      448    d2 50    92 10    52 D4    12 94
      449    d4 D4    94 94    54 50    14 10
      450    d6 50    96 10
      451    d8 5C    98 1C    58 5C    18 1C
      452    da 58    9A 18    5A DC    1A 9C
      453    dc DC    9C 9C    5C 58    1C 18
      454    de 58    9E 18
      455    e0 64    a0 24    60 64    20 24
      456    e2 60    a2 20    62 E4    22 A4
      457    e4 E4    a4 A4    64 60    24 20
      458    e6 60    a6 20
      459    e8 6C    a8 2C    68 6C    28 2C
      460    ea 68    aA 28    6A EC    2A AC
      461    ec EC    aC AC    6C 68    2C 28
      462    ee 68    aE 28
      463    f0 74    b0 34    70 74    30 34
      464    f2 70    b2 30    72 F4    32 84
      465    f4 F4    b4 B4    74 70    34 30
      466    f6 70    b6 30
      467    f8 7C    b8 3C    78 7C    38 3C
      468    fa 78    bA 38    7A FC    3A BC
      469    fc FC    bC BC    7C 78    3C 38
      470    fe 78    bE 38
      471
      472
      473  Naughty Mouse uses the same board as Piranha with a different pal to encrypt the vectors.
      474  Incidentally we don't know the actual name of this game.  Other than the word naughty at
      475  the top of the playfield there's no name.
      476
      477  I haven't examined the code thoroughly but what I
      478  did look at(sprite buffer), was copied from Pacman.  The addresses for the variables seem
      479  to be the same as well.
      480  */
      481
      482  WRITE8_MEMBER(pacman_state::piranha_interrupt_vector_w)
      483  {
      484      if (data == 0xfa) data = 0x78;
      485      if (data == 0xfc) data = 0xfc;
      486      m_maincpu->set_input_line_vector(0, data );
      487  }
      488
      489
      490  WRITE8_MEMBER(pacman_state::nmouse_interrupt_vector_w)
      491  {
      492      if (data == 0xbf) data = 0x3c;
      493      if (data == 0xc6) data = 0x40;
      494      if (data == 0xfc) data = 0xfc;
      495      m_maincpu->set_input_line_vector(0, data );
      496  }
      497
      498
      499
      500  /*************************************
      501   *
      502   *  LEDs/coin counters
      503   *
      504   *************************************/
      505
      506  WRITE8_MEMBER(pacman_state::pacman_leds_w)
      507  {
      508      set_led_status(machine(), offset,data & 1);
      509  }
      510
      511
      512  WRITE8_MEMBER(pacman_state::pacman_coin_counter_w)
      513  {
      514      coin_counter_w(machine(), offset,data & 1);
      515  }
      516
      517
      518  WRITE8_MEMBER(pacman_state::pacman_coin_lockout_global_w)
      519  {
      520      coin_lockout_global_w(machine(), ~data & 0x01);
      521  }
      522
      523
      524
      525  /*************************************
      526   *
      527   *  Ali Baba sound
      528   *
      529   *************************************/
      530
      531  WRITE8_MEMBER(pacman_state::alibaba_sound_w)
      532  {
      533      /* since the sound region in Ali Baba is not contiguous, translate the
      534         offset into the 0-0x1f range */
      535      if (offset < 0x10)
      536          pacman_sound_w(machine().device("namco"), space, offset, data);
      537      else if (offset < 0x20)
      538          m_spriteram2[offset - 0x10] = data;
      539      else
      540          pacman_sound_w(machine().device("namco"), space, offset - 0x10, data);
      541  }
      542
      543  READ8_MEMBER(pacman_state::alibaba_mystery_1_r)
      544  {
      545      /* The return value determines what the mystery item is.  Each bit corresponds
      546         to a question mark */
      547      return machine().rand() & 0x0f;
      548  }
      549
      550
      551  READ8_MEMBER(pacman_state::alibaba_mystery_2_r)
      552  {
      553      /* The single bit return value determines when the mystery is lit up.
      554         This is certainly wrong */
      555      m_mystery++;
      556      return (m_mystery >> 10) & 1;
      557  }
      558
      559
      560
      561  /*************************************
      562   *
      563   *  Make Trax input handlers
      564   *
      565   *************************************/
      566
      567  READ8_MEMBER(pacman_state::maketrax_special_port2_r)
      568  {
      569      int data = ioport("DSW1")->read();
      570      int pc = space.device().safe_pcbase();
      571
      572      if ((pc == 0x1973) || (pc == 0x2389)) return data | 0x40;
      573
      574      switch (offset)
      575      {
      576          case 0x01:
      577          case 0x04:
      578              data |= 0x40; break;
      579          case 0x05:
      580              data |= 0xc0; break;
      581          default:
      582              data &= 0x3f; break;
      583      }
      584
      585      return data;
      586  }
      587
      588  READ8_MEMBER(pacman_state::maketrax_special_port3_r)
      589  {
      590      int pc = space.device().safe_pcbase();
      591
      592      if (pc == 0x040e) return 0x20;
      593
      594      if ((pc == 0x115e) || (pc == 0x3ae2)) return 0x00;
      595
      596      switch (offset)
      597      {
      598          case 0x00:
      599              return 0x1f;
      600          case 0x09:
      601              return 0x30;
      602          case 0x0c:
      603              return 0x00;
      604          default:
      605              return 0x20;
      606      }
      607  }
      608
      609  READ8_MEMBER(pacman_state::korosuke_special_port2_r)
      610  {
      611      int data = ioport("DSW1")->read();
      612      int pc = space.device().safe_pcbase();
      613
      614      if ((pc == 0x196e) || (pc == 0x2387)) return data | 0x40;
      615
      616      switch (offset)
      617      {
      618          case 0x01:
      619          case 0x04:
      620              data |= 0x40; break;
      621          case 0x05:
      622              data |= 0xc0; break;
      623          default:
      624              data &= 0x3f; break;
      625      }
      626
      627      return data;
      628  }
      629
      630  READ8_MEMBER(pacman_state::korosuke_special_port3_r)
      631  {
      632      int pc = space.device().safe_pcbase();
      633
      634      if (pc == 0x0445) return 0x20;
      635
      636      if ((pc == 0x115b) || (pc == 0x3ae6)) return 0x00;
      637
      638      switch (offset)
      639      {
      640          case 0x00:
      641              return 0x1f;
      642          case 0x09:
      643              return 0x30;
      644          case 0x0c:
      645              return 0x00;
      646          default:
      647              return 0x20;
      648      }
      649  }
      650
      651
      652  /*************************************
      653   *
      654   *  Zola kludge
      655   *
      656   *************************************/
      657
      658  READ8_MEMBER(pacman_state::mschamp_kludge_r)
      659  {
      660      return m_counter++;
      661  }
      662
      663
      664  /************************************
      665   *
      666   *  Big Bucks questions roms handlers
      667   *
      668   ************************************/
      669
      670  WRITE8_MEMBER(pacman_state::bigbucks_bank_w)
      671  {
      672      m_bigbucks_bank = data;
      673  }
      674
      675  READ8_MEMBER(pacman_state::bigbucks_question_r)
      676  {
      677      UINT8 *question = memregion("user1")->base();
      678      UINT8 ret;
      679
      680      ret = question[(m_bigbucks_bank << 16) | (offset ^ 0xffff)];
      681
      682      return ret;
      683  }
      684
      685
      686  /************************************
      687   *
      688   *  S2650 cpu based games
      689   *
      690   ************************************/
      691
      692  INTERRUPT_GEN_MEMBER(pacman_state::s2650_interrupt)
      693  {
      694      device.execute().set_input_line_and_vector(0, HOLD_LINE, 0x03);
      695  }
      696
      697  WRITE8_MEMBER(pacman_state::porky_banking_w)
      698  {
      699      membank("bank1")->set_entry(data & 1);
      700      membank("bank2")->set_entry(data & 1);
      701      membank("bank3")->set_entry(data & 1);
      702      membank("bank4")->set_entry(data & 1);
      703  }
      704
      705  READ8_MEMBER(pacman_state::drivfrcp_port1_r)
      706  {
      707      switch (space.device().safe_pc())
      708      {
      709          case 0x0030:
      710          case 0x0291:
      711              return 0x01;
      712      }
      713
      714      return 0;
      715  }
      716
      717  READ8_MEMBER(pacman_state::_8bpm_port1_r)
      718  {
      719      switch (space.device().safe_pc())
      720      {
      721          case 0x0030:
      722          case 0x0466:
      723              return 0x01;
      724      }
      725
      726      return 0;
      727  }
      728
      729  READ8_MEMBER(pacman_state::porky_port1_r)
      730  {
      731      switch (space.device().safe_pc())
      732      {
      733          case 0x0034:
      734              return 0x01;
      735      }
      736
      737      return 0;
      738  }
      739
      740
      741  /************************************
      742   *
      743   *  Rock-N-Roll Trivia (Part 2)
      744   *  questions roms and protection
      745   *  handlers
      746   *
      747   ************************************/
      748
      749  READ8_MEMBER(pacman_state::rocktrv2_prot1_data_r)
      750  {
      751      return m_rocktrv2_prot_data[0] >> 4;
      752  }
      753
      754  READ8_MEMBER(pacman_state::rocktrv2_prot2_data_r)
      755  {
      756      return m_rocktrv2_prot_data[1] >> 4;
      757  }
      758
      759  READ8_MEMBER(pacman_state::rocktrv2_prot3_data_r)
      760  {
      761      return m_rocktrv2_prot_data[2] >> 4;
      762  }
      763
      764  READ8_MEMBER(pacman_state::rocktrv2_prot4_data_r)
      765  {
      766      return m_rocktrv2_prot_data[3] >> 4;
      767  }
      768
      769  WRITE8_MEMBER(pacman_state::rocktrv2_prot_data_w)
      770  {
      771      m_rocktrv2_prot_data[offset] = data;
      772  }
      773
      774  WRITE8_MEMBER(pacman_state::rocktrv2_question_bank_w)
      775  {
      776      m_rocktrv2_question_bank = data;
      777  }
      778
      779  READ8_MEMBER(pacman_state::rocktrv2_question_r)
      780  {
      781      UINT8 *question = memregion("user1")->base();
      782
      783      return question[offset | (m_rocktrv2_question_bank * 0x8000)];
      784  }
      785
      786
      787  /************************************
      788   *
      789   *  Super ABC
      790   *
      791   ************************************/
      792
      793  /*
      794    This is a kit that upgrades an original Midway Pacman PCB to allow it to run many Pacman games.
      795    It includes two small PCBs and two PROMs. The large PCB plugs into the CPU socket at 6B and the
      796    Sync Bus Controller socket at 6D. The CPU that was in the socket at 6B plugs into the Super ABC PCB.
      797
      798    The large PCB contains the following parts.....
      799    - Z80 CPU
      800    - 27C040 EPROM at U14
      801    - 82S123 PROM at U18
      802    - 28C16 2KB EEPROM at U17
      803    - several logic chips
      804
      805    The small PCB contains just one 27C010 EPROM for the characters. There's a small cable that joins
      806    this PCB to the other large PCB.
      807
      808    The two PROMs on the main board at 7F and 4A are also replaced with PROMs from the kit
      809  */
      810
      811  WRITE8_MEMBER(pacman_state::superabc_bank_w)
      812  {
      813      // d4-d6: bank
      814      int bank = data >> 4 & 7;
      815      membank("bank1")->set_base(memregion("maincpu")->base() + bank * 0x10000 + 0x0000);
      816      membank("bank2")->set_base(memregion("maincpu")->base() + bank * 0x10000 + 0x4000);
      817      membank("bank3")->set_base(memregion("maincpu")->base() + bank * 0x10000 + 0xa000); // looks like a15 is not connected and a16-onwards is shifted 1 bit
      818
      819      if (bank != m_charbank)
      820      {
      821          m_spritebank = bank;
      822          m_charbank = bank;
      823          m_bg_tilemap->mark_all_dirty();
      824      }
      825  }
      826
      827
      828  /************************************
      829   *
      830   *  Ms. Pac-Man
      831   *
      832   ************************************/
      833
      834  /*
      835    Ms. Pac-Man has an auxiliary PCB with ribbon cable that plugs into the Z-80 CPU socket of a Pac-Man main PCB. Also the
      836    graphics ROMs at 5E, 5F on the main board are replaced.
      837
      838    The aux board contains three ROMs (two 2532 at U6, U7 and one 2716 at U5), a Z-80, and four PAL/HAL logic chips.
      839
      840    The aux board logic decodes the Z-80 address and determines whether to enable the main board ROMs (containing Pac-Man
      841    code) or the aux board ROMs (containing Ms. Pac-Man code). Normally the Pac-Man ROMs reside at address 0x0000-0x3fff
      842    and are mirrored at 0x8000-0xbfff (Z-80 A15 is not used in Pac-Man). The aux board logic modifies the address map and
      843    enables the aux board ROMs for addresses 0x3000-0x3fff and 0x8000-0x97ff. Furthermore there are forty 8-byte "patch"
      844    regions which reside in the 0x0000-0x2fff address range. Any access to these patch addresses will disable the Pac-Man
      845    ROMs and enable the aux board ROM. Aux board ROM addresses 0x8000-0x81ef are mapped onto the patch regions. These
      846    patches typically insert jumps to new code above 0x8000.
      847
      848    The aux board logic also acts as a software protection circuit which inhibits dumping of the ROMs (e.g., using a
      849    microprocessor emulator system). There are several "trap" address regions which enable and disable the decode
      850    functions. In order to properly operate as Ms. Pac-Man you must access one of the "latch set" trap addresses. This
      851    enables the decode. If a "latch clear" address is accessed then decode is disabled and all you get is Pac-Man. For
      852    more info see U.S. Patent 4,525,599 "Software protection methods and apparatus".
      853
      854    The trap regions are 8 bytes in length starting on the following addresses:
      855
      856    latch clear, decode disable
      857      0x0038
      858      0x03b0
      859      0x1600
      860      0x2120
      861      0x3ff0
      862      0x8000
      863      0x97f0
      864
      865    latch set, decode enable
      866      0x3ff8
      867
      868    Any memory access will trigger the trap behavior: instruction fetch, data read, data write. The latch clear addresses
      869    should never be accessed during normal Ms. Pac-Man operation, so when the circuitry detects an access it clears the
      870    latch and prevents any further dumping of the aux board ROMs.
      871
      872    The Pac-Man self-test code does a checksum of the ROM 0x0000-0x2fff. This works because the checksum routine walks the
      873    ROM starting from the low address and hits the latch clear trap at 0x0038 prior to encountering any of the patch
      874    regions. The decode stays disabled for the rest of the checksum routine, and thus the checksum is calculated for the
      875    Pac-Man ROMs with no patches applied.
      876
      877    During normal operation every VBLANK (60.6Hz) interrupt will fetch its interrupt vector from the 0x3ff8 trap region, so
      878    the latch is continually being enabled.
      879
      880    David Widel points out that the Pac-Man pseudo-random number generator (RNG) routine at 0x2a23 might also access a
      881    trap region. This RNG is only used when the monsters are blue (after a power pellet has been eaten) and is used to
      882    select a "random" direction for the monsters to run away. The routine calculates a pointer address between
      883    0x0000-0x1fff and fetches the ROM value from that address. This value is the "random" number returned by the
      884    routine. During the blue mode only Pac-Man code is being executed, so a trap hit that clears the decode latch will
      885    have no effect on gameplay. Every VBLANK interrupt vector fetch re-enables the latch and you are back in Ms. Pac-Man
      886    mode.
      887
      888    In a further attempt to thwart copying, the aux board ROMs have a simple encryption scheme: their address and data
      889    lines are bit flipped (i.e., wired in a nonstandard fashion). The specific bit flips were selected to minimize the
      890    vias required to lay out the aux PCB.
      891
      892
      893    History  (Originally contributed by Steve Golson of GCC, one of the original Developers of Ms. Pac-Man, with some
      894    -------   minor modifications to address availability of data.)
      895
      896    During the summer of 1981, General Computer Corp. of Massachusetts developed a game called Crazy Otto. This game was
      897    intended to be sold as an enhancement kit for Pac-Man cabinets. The main character Crazy Otto had legs and blue
      898    eyes. Also the monsters have blue feet and antennae that bob up and down. New game play, mazes, music, and sounds were
      899    developed. Several new bonus characters (fruit) were added. Otto and his female counterpart appeared in three new
      900    animations, culminating in the arrival of JUNIOR, a baby Crazy Otto.
      901
      902    In October 1981 this game was licensed to Midway, who owned the North American rights to produce Pac-Man. With Midway
      903    producing the game, the original Pac-Man character and name could be used. At first the game was called Super Pac-Man,
      904    but eventually the decision was made to use the female character as the protagonist, resulting in Ms. Pac-Man.
      905
      906    The only differences between Crazy Otto and the final production Ms. Pac-Man are the characters themselves and related
      907    text strings. Game play, mazes, colors, fruits, sounds, music, animations are unchanged from original GCC Crazy Otto.
      908    Also the "marquee" attract mode was added to include the Midway logo and copyright string.
      909
      910    The ROMs from several prototype versions of Crazy Otto have been recovered, documented and archived since that time but
      911    as of now are not available outside of the occasional public viewing and playing of a modified upright Ms. Pac-Man machine
      912    at a gaming convention, exposition or specific special industry events.
      913
      914    Information shared regarding the known prototypes indicates they are dated from 10/12/81, 10/20/81 and 10/29/81.  Also
      915    two prototype versions of Super Pac-Man, one with old Pac-Man monsters and one with new Crazy Otto monsters are both
      916    dated 10/29/81.
      917
      918    Early prototypes - those dated 10/12/81 and 10/20/81 - do not use the Ms. Pac-Man code patch scheme outlined above.
      919    Instead, all four Pac-Man ROMs are replaced, and one or two additional ROMs are provided at addresses above 0x8000.
      920
      921    Later prototypes - those dated 10/29/81 - use the patch hardware, however the latch set/clear function is not implemented.
      922    Furthermore the ROM encryption bit flip is not used.
      923  */
      924
      925  #define mspacman_enable_decode_latch(m)  m.root_device().membank("bank1")->set_entry(1)
      926  #define mspacman_disable_decode_latch(m) m.root_device().membank("bank1")->set_entry(0)
      927
      928  // any access to these ROM addresses disables the decoder, and all you see is the original Pac-Man code
      929  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x0038){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x0038]; }
      930  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x03b0){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x03b0]; }
      931  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x1600){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x1600]; }
      932  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x2120){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x2120]; }
      933  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x3ff0){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x3ff0]; }
      934  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x8000){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x8000]; }
      935  READ8_MEMBER(pacman_state::mspacman_disable_decode_r_0x97f0){ mspacman_disable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x97f0]; }
      936  WRITE8_MEMBER(pacman_state::mspacman_disable_decode_w){ mspacman_disable_decode_latch(machine()); }
      937
      938  // any access to these ROM addresses enables the decoder, and you'll see the Ms. Pac-Man code
      939  READ8_MEMBER(pacman_state::mspacman_enable_decode_r_0x3ff8){ mspacman_enable_decode_latch(machine()); return memregion("maincpu")->base()[offset+0x3ff8+0x10000]; }
      940  WRITE8_MEMBER(pacman_state::mspacman_enable_decode_w){ mspacman_enable_decode_latch(machine()); }
      941
      942
      943  READ8_MEMBER(pacman_state::pacman_read_nop)
      944  {
      945      // Return value of reading the bus with no devices enabled.
      946      // This seems to be common but more tests are needed. Ms Pacman reads bytes in sequence
      947      // until it hits a 0 for a delimiter, including empty areas.  It writes to "random"
      948      // addresses each time. This causes the maze to invert sometimes.  See code at $95c3 where
      949      // level($4e13)=134. DW
      950      // tests on exactly what determines the value returned have thus far proved inconclusive
      951      return 0xbf;
      952  }
      953
      954
      955
      956  /*************************************
      957   *
      958   *  Main CPU memory handlers
      959   *
      960   *************************************/
      961
      962  static ADDRESS_MAP_START( pacman_map, AS_PROGRAM, 8, pacman_state )
      963      //A lot of games don't have an a15 at the cpu.  Generally only games with a cpu daughter board can access the full 32k of romspace.
      964      AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM
      965      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
      966      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
      967      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
      968      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
      969      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
      970      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
      971      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
      972      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
      973      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
      974      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
      975      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
      976      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
      977      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
      978      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
      979      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
      980      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
      981      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
      982      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
      983      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
      984      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
      985      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
      986  ADDRESS_MAP_END
      987  // The Pacman code uses $5004 and $5005 for LED's and $5007 for coin lockout.  This hardware does not
      988  // exist on any Pacman or Puckman board I have seen.  DW
      989
      990
      991  static ADDRESS_MAP_START( birdiy_map, AS_PROGRAM, 8, pacman_state )
      992      AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM
      993      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
      994      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
      995  //  AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
      996      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
      997      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
      998      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
      999  //  AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1000  //  AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
     1001      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1002  //  AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1003  //  AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
     1004      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1005      AM_RANGE(0x5080, 0x509f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1006      AM_RANGE(0x50a0, 0x50af) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1007  //  AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1008  //  AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1009      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1010      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1011      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1012      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1013      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1014  ADDRESS_MAP_END
     1015
     1016
     1017  static ADDRESS_MAP_START( mspacman_map, AS_PROGRAM, 8, pacman_state )
     1018      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1019      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1020      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
     1021      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
     1022      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1023      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1024      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1025      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
     1026      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1027      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1028      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_lockout_global_w)
     1029      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1030      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1031      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1032      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1033      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1034      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1035      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1036      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1037      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1038      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1039
     1040      /* overlay decode enable/disable on top */
     1041      AM_RANGE(0x0038, 0x003f) AM_READWRITE(mspacman_disable_decode_r_0x0038,mspacman_disable_decode_w)
     1042      AM_RANGE(0x03b0, 0x03b7) AM_READWRITE(mspacman_disable_decode_r_0x03b0,mspacman_disable_decode_w)
     1043      AM_RANGE(0x1600, 0x1607) AM_READWRITE(mspacman_disable_decode_r_0x1600,mspacman_disable_decode_w)
     1044      AM_RANGE(0x2120, 0x2127) AM_READWRITE(mspacman_disable_decode_r_0x2120,mspacman_disable_decode_w)
     1045      AM_RANGE(0x3ff0, 0x3ff7) AM_READWRITE(mspacman_disable_decode_r_0x3ff0,mspacman_disable_decode_w)
     1046      AM_RANGE(0x3ff8, 0x3fff) AM_READWRITE(mspacman_enable_decode_r_0x3ff8,mspacman_enable_decode_w)
     1047      AM_RANGE(0x8000, 0x8007) AM_READWRITE(mspacman_disable_decode_r_0x8000,mspacman_disable_decode_w)
     1048      AM_RANGE(0x97f0, 0x97f7) AM_READWRITE(mspacman_disable_decode_r_0x97f0,mspacman_disable_decode_w)
     1049
     1050      /* start with 0000-3fff and 8000-bfff mapped to the ROMs */
     1051      AM_RANGE(0x4000, 0x7fff) AM_MIRROR(0x8000) AM_UNMAP
     1052      AM_RANGE(0x0000, 0xffff) AM_ROMBANK("bank1")
     1053  ADDRESS_MAP_END
     1054
     1055
     1056  static ADDRESS_MAP_START( woodpek_map, AS_PROGRAM, 8, pacman_state )
     1057      AM_RANGE(0x0000, 0x3fff) AM_ROM
     1058      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1059      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1060      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
     1061      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
     1062      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1063      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1064      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1065      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
     1066      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1067      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1068      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
     1069      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1070      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1071      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1072      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1073      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1074      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1075      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1076      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1077      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1078      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1079      AM_RANGE(0x8000, 0xbfff) AM_ROM
     1080  ADDRESS_MAP_END
     1081
     1082
     1083  static ADDRESS_MAP_START( alibaba_map, AS_PROGRAM, 8, pacman_state )
     1084      AM_RANGE(0x0000, 0x3fff) AM_ROM
     1085      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1086      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1087      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
     1088      AM_RANGE(0x4c00, 0x4eef) AM_MIRROR(0xa000) AM_RAM
     1089      AM_RANGE(0x4ef0, 0x4eff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1090      AM_RANGE(0x4f00, 0x4fff) AM_MIRROR(0xa000) AM_RAM
     1091      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(watchdog_reset_w)
     1092      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITE(pacman_leds_w)
     1093      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_lockout_global_w)
     1094      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1095      AM_RANGE(0x5040, 0x506f) AM_MIRROR(0xaf00) AM_WRITE(alibaba_sound_w)  /* the sound region is not contiguous */
     1096      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2") /* actually at 5050-505f, here to point to free RAM */
     1097      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1098      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1099      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1100      AM_RANGE(0x50c1, 0x50c1) AM_MIRROR(0xaf00) AM_WRITE(pacman_flipscreen_w)
     1101      AM_RANGE(0x50c2, 0x50c2) AM_MIRROR(0xaf00) AM_WRITE(irq_mask_w)
     1102      AM_RANGE(0x50c3, 0x50ff) AM_MIRROR(0xaf00) AM_WRITENOP
     1103      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1104      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1105      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1106      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf00) AM_READ(alibaba_mystery_1_r)
     1107      AM_RANGE(0x50c1, 0x50c1) AM_MIRROR(0xaf00) AM_READ(alibaba_mystery_2_r)
     1108      AM_RANGE(0x50c2, 0x50ff) AM_MIRROR(0xaf00) AM_READ(pacman_read_nop)
     1109      AM_RANGE(0x8000, 0x8fff) AM_ROM
     1110      AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0c00) AM_RAM
     1111      AM_RANGE(0xa000, 0xa7ff) AM_MIRROR(0x1800) AM_ROM
     1112  ADDRESS_MAP_END
     1113
     1114
     1115  static ADDRESS_MAP_START( dremshpr_map, AS_PROGRAM, 8, pacman_state )
     1116      AM_RANGE(0x0000, 0x3fff) AM_ROM
     1117      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1118      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1119      AM_RANGE(0x4800, 0x4fef) AM_MIRROR(0xa000) AM_RAM
     1120      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1121      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1122  //  AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1123      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP /* unknown */
     1124      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1125      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1126      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
     1127      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1128  //  AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1129      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1130      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1131      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1132      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1133      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1134      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1135      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1136      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1137      AM_RANGE(0x8000, 0xbfff) AM_ROM
     1138
     1139      /* vanvan: probably a leftover from development: the Sanritsu version writes
     1140         the color lookup table here, while the Karateko version writes garbage. */
     1141      AM_RANGE(0xb800, 0xb87f) AM_WRITENOP
     1142  ADDRESS_MAP_END
     1143
     1144
     1145  static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8, pacman_state )
     1146      AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROMBANK("bank1")
     1147      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1148      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1149      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
     1150      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
     1151      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1152      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1153      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1154      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
     1155      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1156      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1157      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
     1158      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1159      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1160      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1161      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1162      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1163      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1164      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1165      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1166      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1167      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1168  ADDRESS_MAP_END
     1169
     1170
     1171  static ADDRESS_MAP_START( s2650games_map, AS_PROGRAM, 8, pacman_state )
     1172      AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x8000) AM_ROMBANK("bank1")
     1173      AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0xe000) AM_WRITE(s2650games_colorram_w) AM_SHARE("colorram")
     1174      AM_RANGE(0x1400, 0x141f) AM_MIRROR(0xe000) AM_WRITE(s2650games_scroll_w)
     1175      AM_RANGE(0x1420, 0x148f) AM_MIRROR(0xe000) AM_WRITEONLY
     1176      AM_RANGE(0x1490, 0x149f) AM_MIRROR(0xe000) AM_WRITEONLY AM_SHARE("s2650_spriteram")
     1177      AM_RANGE(0x14a0, 0x14bf) AM_MIRROR(0xe000) AM_WRITE(s2650games_tilesbank_w) AM_SHARE("s2650_tileram")
     1178      AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0xe000) AM_WRITEONLY
     1179      AM_RANGE(0x1500, 0x1502) AM_MIRROR(0xe000) AM_WRITENOP
     1180      AM_RANGE(0x1503, 0x1503) AM_MIRROR(0xe000) AM_WRITE(pacman_flipscreen_w)
     1181      AM_RANGE(0x1504, 0x1506) AM_MIRROR(0xe000) AM_WRITENOP
     1182      AM_RANGE(0x1507, 0x1507) AM_MIRROR(0xe000) AM_WRITE(pacman_coin_counter_w)
     1183      AM_RANGE(0x1508, 0x155f) AM_MIRROR(0xe000) AM_WRITEONLY
     1184      AM_RANGE(0x1560, 0x156f) AM_MIRROR(0xe000) AM_WRITEONLY AM_SHARE("spriteram2")
     1185      AM_RANGE(0x1570, 0x157f) AM_MIRROR(0xe000) AM_WRITEONLY
     1186      AM_RANGE(0x1586, 0x1587) AM_MIRROR(0xe000) AM_WRITENOP
     1187      AM_RANGE(0x15c0, 0x15c0) AM_MIRROR(0xe000) AM_WRITE(watchdog_reset_w)
     1188      AM_RANGE(0x15c7, 0x15c7) AM_MIRROR(0xe000) AM_WRITE(porky_banking_w)
     1189      AM_RANGE(0x1500, 0x1500) AM_MIRROR(0xe000) AM_READ_PORT("IN0")
     1190      AM_RANGE(0x1540, 0x1540) AM_MIRROR(0xe000) AM_READ_PORT("IN1")
     1191      AM_RANGE(0x1580, 0x1580) AM_MIRROR(0xe000) AM_READ_PORT("DSW0")
     1192      AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0xe000) AM_WRITE(s2650games_videoram_w) AM_SHARE("videoram")
     1193      AM_RANGE(0x1c00, 0x1fef) AM_MIRROR(0xe000) AM_RAM
     1194      AM_RANGE(0x1ff0, 0x1fff) AM_MIRROR(0xe000) AM_WRITEONLY AM_SHARE("spriteram")
     1195      AM_RANGE(0x2000, 0x2fff) AM_MIRROR(0x8000) AM_ROMBANK("bank2")
     1196      AM_RANGE(0x4000, 0x4fff) AM_MIRROR(0x8000) AM_ROMBANK("bank3")
     1197      AM_RANGE(0x6000, 0x6fff) AM_MIRROR(0x8000) AM_ROMBANK("bank4")
     1198  ADDRESS_MAP_END
     1199
     1200
     1201  static ADDRESS_MAP_START( rocktrv2_map, AS_PROGRAM, 8, pacman_state )
     1202      AM_RANGE(0x0000, 0x3fff) AM_ROM
     1203      AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1204      AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1205      AM_RANGE(0x4c00, 0x4fff) AM_RAM
     1206      AM_RANGE(0x5000, 0x5000) AM_WRITE(irq_mask_w)
     1207      AM_RANGE(0x5001, 0x5001) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1208      AM_RANGE(0x5003, 0x5003) AM_WRITE(pacman_flipscreen_w)
     1209      AM_RANGE(0x5007, 0x5007) AM_WRITE(pacman_coin_counter_w)
     1210      AM_RANGE(0x5040, 0x505f) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1211      AM_RANGE(0x50c0, 0x50c0) AM_WRITE(watchdog_reset_w)
     1212      AM_RANGE(0x5fe0, 0x5fe3) AM_WRITE(rocktrv2_prot_data_w) AM_SHARE("rocktrv2_prot")
     1213      AM_RANGE(0x5ff0, 0x5ff0) AM_WRITE(rocktrv2_question_bank_w)
     1214      AM_RANGE(0x5000, 0x5000) AM_READ_PORT("IN0")
     1215      AM_RANGE(0x5040, 0x507f) AM_READ_PORT("IN1")
     1216      AM_RANGE(0x5080, 0x5080) AM_READ_PORT("DSW1")
     1217      AM_RANGE(0x50c0, 0x50c0) AM_READ_PORT("DSW2")
     1218      AM_RANGE(0x5fe0, 0x5fe0) AM_READ(rocktrv2_prot1_data_r)
     1219      AM_RANGE(0x5fe4, 0x5fe4) AM_READ(rocktrv2_prot2_data_r)
     1220      AM_RANGE(0x5fe8, 0x5fe8) AM_READ(rocktrv2_prot3_data_r)
     1221      AM_RANGE(0x5fec, 0x5fec) AM_READ(rocktrv2_prot4_data_r)
     1222      AM_RANGE(0x5fff, 0x5fff) AM_READ_PORT("DSW2")       /* DSW2 mirrored */
     1223      AM_RANGE(0x6000, 0x7fff) AM_ROM
     1224      AM_RANGE(0x8000, 0xffff) AM_READ(rocktrv2_question_r)
     1225  ADDRESS_MAP_END
     1226
     1227
     1228  static ADDRESS_MAP_START( bigbucks_map, AS_PROGRAM, 8, pacman_state )
     1229      AM_RANGE(0x0000, 0x3fff) AM_ROM
     1230      AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1231      AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1232      AM_RANGE(0x4c00, 0x4fff) AM_RAM
     1233      AM_RANGE(0x5000, 0x5000) AM_WRITE(irq_mask_w)
     1234      AM_RANGE(0x5001, 0x5001) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1235      AM_RANGE(0x5003, 0x5003) AM_WRITE(pacman_flipscreen_w)
     1236      AM_RANGE(0x5007, 0x5007) AM_WRITENOP /*?*/
     1237      AM_RANGE(0x5040, 0x505f) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1238      AM_RANGE(0x50c0, 0x50c0) AM_WRITE(watchdog_reset_w)
     1239      AM_RANGE(0x5000, 0x503f) AM_READ_PORT("IN0")
     1240      AM_RANGE(0x5040, 0x507f) AM_READ_PORT("IN1")
     1241      AM_RANGE(0x5080, 0x50bf) AM_READ_PORT("DSW1")
     1242      AM_RANGE(0x50c0, 0x50ff) AM_READ_PORT("DSW2")
     1243      AM_RANGE(0x5100, 0x5100) AM_WRITENOP /*?*/
     1244      AM_RANGE(0x6000, 0x6000) AM_WRITE(bigbucks_bank_w)
     1245      AM_RANGE(0x8000, 0x9fff) AM_ROM
     1246  ADDRESS_MAP_END
     1247
     1248
     1249  static ADDRESS_MAP_START( mschamp_map, AS_PROGRAM, 8, pacman_state )
     1250      AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
     1251      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1252      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1253      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
     1254      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
     1255      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1256      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1257      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1258      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
     1259      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1260      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1261      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
     1262      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1263      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1264      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1265      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1266      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1267      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1268      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1269      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1270      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1271      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1272      AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2")
     1273  ADDRESS_MAP_END
     1274
     1275
     1276  static ADDRESS_MAP_START( superabc_map, AS_PROGRAM, 8, pacman_state )
     1277      AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
     1278      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1279      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1280      AM_RANGE(0x4800, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("28c16.u17") // nvram
     1281      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1282      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1283      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1284      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf3c) AM_WRITE(superabc_bank_w)
     1285      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1286      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITE(pacman_leds_w)
     1287      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1288      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_DEVWRITE_LEGACY("namco", pacman_sound_w)
     1289      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1290      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1291      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1292      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1293      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1294      AM_RANGE(0x5040, 0x5040) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1295      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW1")
     1296      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2")
     1297      AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank2")
     1298      AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank3")
     1299  ADDRESS_MAP_END
     1300
     1301
     1302  static ADDRESS_MAP_START( crushs_map, AS_PROGRAM, 8, pacman_state )
     1303      AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM
     1304      AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
     1305      AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
     1306      AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP
     1307      AM_RANGE(0x4c00, 0x4fef) AM_MIRROR(0xa000) AM_RAM
     1308      AM_RANGE(0x4ff0, 0x4fff) AM_MIRROR(0xa000) AM_RAM AM_SHARE("spriteram")
     1309      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf38) AM_WRITE(irq_mask_w)
     1310      AM_RANGE(0x5001, 0x5001) AM_MIRROR(0xaf38) AM_DEVWRITE_LEGACY("namco", pacman_sound_enable_w)
     1311      AM_RANGE(0x5002, 0x5002) AM_MIRROR(0xaf38) AM_WRITENOP
     1312      AM_RANGE(0x5003, 0x5003) AM_MIRROR(0xaf38) AM_WRITE(pacman_flipscreen_w)
     1313      AM_RANGE(0x5004, 0x5005) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_leds_w)
     1314      AM_RANGE(0x5006, 0x5006) AM_MIRROR(0xaf38) AM_WRITENOP // AM_WRITE(pacman_coin_lockout_global_w)
     1315      AM_RANGE(0x5007, 0x5007) AM_MIRROR(0xaf38) AM_WRITE(pacman_coin_counter_w)
     1316      AM_RANGE(0x5040, 0x505f) AM_MIRROR(0xaf00) AM_WRITENOP // doesn't use pacman sound hw
     1317      AM_RANGE(0x5060, 0x506f) AM_MIRROR(0xaf00) AM_WRITEONLY AM_SHARE("spriteram2")
     1318      AM_RANGE(0x5070, 0x507f) AM_MIRROR(0xaf00) AM_WRITENOP
     1319      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_WRITENOP
     1320      AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_WRITE(watchdog_reset_w)
     1321      AM_RANGE(0x5000, 0x5000) AM_MIRROR(0xaf3f) AM_READ_PORT("IN0")
     1322      AM_RANGE(0x5080, 0x5080) AM_MIRROR(0xaf3f) AM_READ_PORT("IN1")
     1323  ADDRESS_MAP_END
     1324
     1325
     1326
     1327  /*************************************
     1328   *
     1329   *  Main CPU port handlers
     1330   *
     1331   *************************************/
     1332
     1333  static ADDRESS_MAP_START( writeport, AS_IO, 8, pacman_state )
     1334      ADDRESS_MAP_GLOBAL_MASK(0xff)
     1335      AM_RANGE(0x00, 0x00) AM_WRITE(pacman_interrupt_vector_w)    /* Pac-Man only */
     1336  ADDRESS_MAP_END
     1337
     1338  static ADDRESS_MAP_START( vanvan_portmap, AS_IO, 8, pacman_state )
     1339      ADDRESS_MAP_GLOBAL_MASK(0xff)
     1340      AM_RANGE(0x01, 0x01) AM_DEVWRITE("namco", sn76496_device, write)
     1341      AM_RANGE(0x02, 0x02) AM_DEVWRITE("sn2", sn76496_device, write)
     1342  ADDRESS_MAP_END
     1343
     1344  static ADDRESS_MAP_START( dremshpr_portmap, AS_IO, 8, pacman_state )
     1345      ADDRESS_MAP_GLOBAL_MASK(0xff)
     1346      AM_RANGE(0x06, 0x07) AM_DEVWRITE_LEGACY("namco", ay8910_data_address_w)
     1347  ADDRESS_MAP_END
     1348
     1349  static ADDRESS_MAP_START( piranha_portmap, AS_IO, 8, pacman_state )
     1350      ADDRESS_MAP_GLOBAL_MASK(0xff)
     1351      AM_RANGE(0x00, 0x00) AM_WRITE(piranha_interrupt_vector_w)
     1352  ADDRESS_MAP_END
     1353
     1354  static ADDRESS_MAP_START( nmouse_portmap, AS_IO, 8, pacman_state )
     1355      ADDRESS_MAP_GLOBAL_MASK(0xff)
     1356      AM_RANGE(0x00, 0x00) AM_WRITE(nmouse_interrupt_vector_w)
     1357  ADDRESS_MAP_END
     1358
     1359  static ADDRESS_MAP_START( theglobp_portmap, AS_IO, 8, pacman_state )
     1360      AM_RANGE(0x00, 0xff) AM_READ_LEGACY(theglobp_decrypt_rom)   /* Switch protection logic */
     1361      AM_IMPORT_FROM(writeport)
     1362  ADDRESS_MAP_END
     1363
     1364  static ADDRESS_MAP_START( acitya_portmap, AS_IO, 8, pacman_state )
     1365      AM_RANGE(0x00, 0xff) AM_READ_LEGACY(acitya_decrypt_rom) /* Switch protection logic */
     1366      AM_IMPORT_FROM(writeport)
     1367  ADDRESS_MAP_END
     1368
     1369  static ADDRESS_MAP_START( mschamp_portmap, AS_IO, 8, pacman_state )
     1370      AM_RANGE(0x00, 0x00) AM_READ(mschamp_kludge_r)
     1371      AM_IMPORT_FROM(writeport)
     1372  ADDRESS_MAP_END
     1373
     1374  static ADDRESS_MAP_START( bigbucks_portmap, AS_IO, 8, pacman_state )
     1375      AM_RANGE(0x0000, 0xffff) AM_READ(bigbucks_question_r)
     1376  ADDRESS_MAP_END
     1377
     1378  static ADDRESS_MAP_START( s2650games_writeport, AS_IO, 8, pacman_state )
     1379      AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_DEVWRITE("namco", sn76496_device, write)
     1380  ADDRESS_MAP_END
     1381
     1382  static ADDRESS_MAP_START( drivfrcp_portmap, AS_IO, 8, pacman_state )
     1383      AM_RANGE(0x00, 0x00) AM_READNOP
     1384      AM_RANGE(0x01, 0x01) AM_READ(drivfrcp_port1_r)
     1385      AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
     1386      AM_IMPORT_FROM(s2650games_writeport)
     1387  ADDRESS_MAP_END
     1388
     1389  static ADDRESS_MAP_START( _8bpm_portmap, AS_IO, 8, pacman_state )
     1390      AM_RANGE(0x00, 0x00) AM_READNOP
     1391      AM_RANGE(0x01, 0x01) AM_READ(_8bpm_port1_r)
     1392      AM_RANGE(0xe0, 0xe0) AM_READNOP
     1393      AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
     1394      AM_IMPORT_FROM(s2650games_writeport)
     1395  ADDRESS_MAP_END
     1396
     1397  static ADDRESS_MAP_START( porky_portmap, AS_IO, 8, pacman_state )
     1398      AM_RANGE(0x01, 0x01) AM_READ(porky_port1_r)
     1399      AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
     1400      AM_IMPORT_FROM(s2650games_writeport)
     1401  ADDRESS_MAP_END
     1402
     1403  static ADDRESS_MAP_START( crushs_portmap, AS_IO, 8, pacman_state )
     1404      ADDRESS_MAP_GLOBAL_MASK(0xff)
     1405      AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("namco", ay8910_data_address_w)
     1406      AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2")
     1407      AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW1")
     1408  ADDRESS_MAP_END
     1409
     1410
     1411
     1412  /*************************************
     1413   *
     1414   *  Port definitions
     1415   *
     1416   *************************************/
     1417
     1418  static INPUT_PORTS_START( pacman )
     1419      PORT_START("IN0")
     1420      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )    PORT_PLAYER(1) PORT_4WAY
     1421      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )  PORT_PLAYER(1) PORT_4WAY
     1422      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) PORT_4WAY
     1423      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )  PORT_PLAYER(1) PORT_4WAY
     1424      PORT_DIPNAME(0x10, 0x10, "Rack Test (Cheat)" )  PORT_CODE(KEYCODE_F1)
     1425      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1426      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1427      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1428      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1429      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1430
     1431      PORT_START("IN1")
     1432      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )    PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1433      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )  PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1434      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1435      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )  PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1436      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     1437      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1438      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1439      PORT_DIPNAME(0x80, 0x80, DEF_STR( Cabinet ) )
     1440      PORT_DIPSETTING(   0x80, DEF_STR( Upright ) )
     1441      PORT_DIPSETTING(   0x00, DEF_STR( Cocktail ) )
     1442
     1443      PORT_START("DSW1")
     1444      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )      PORT_DIPLOCATION("SW:1,2")
     1445      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1446      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1447      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1448      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1449      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )        PORT_DIPLOCATION("SW:3,4")
     1450      PORT_DIPSETTING(    0x00, "1" )
     1451      PORT_DIPSETTING(    0x04, "2" )
     1452      PORT_DIPSETTING(    0x08, "3" )
     1453      PORT_DIPSETTING(    0x0c, "5" )
     1454      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )   PORT_DIPLOCATION("SW:5,6")
     1455      PORT_DIPSETTING(    0x00, "10000" )
     1456      PORT_DIPSETTING(    0x10, "15000" )
     1457      PORT_DIPSETTING(    0x20, "20000" )
     1458      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     1459      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )   PORT_DIPLOCATION("SW:7")
     1460      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     1461      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     1462      PORT_DIPNAME( 0x80, 0x80, "Ghost Names" )
     1463      PORT_DIPSETTING(    0x80, DEF_STR( Normal ) )
     1464      PORT_DIPSETTING(    0x00, DEF_STR( Alternate ) )    PORT_DIPLOCATION("SW:8")
     1465
     1466      PORT_START("DSW2")
     1467      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1468  INPUT_PORTS_END
     1469
     1470
     1471  /* Ms. Pac-Man input ports are identical to Pac-Man, the only difference is */
     1472  /* the missing Ghost Names dip switch. */
     1473  static INPUT_PORTS_START( mspacman )
     1474      PORT_START("IN0")
     1475      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1476      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1477      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1478      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1479      PORT_DIPNAME( 0x10, 0x10, "Rack Test (Cheat)" ) PORT_CODE(KEYCODE_F1)
     1480      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1481      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1482      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1483      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1484      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1485
     1486      PORT_START("IN1")
     1487      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1488      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1489      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1490      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1491      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     1492      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1493      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1494      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
     1495      PORT_DIPSETTING(    0x80, DEF_STR( Upright ) )
     1496      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     1497
     1498      PORT_START("DSW1")
     1499      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1500      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1501      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1502      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1503      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1504      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     1505      PORT_DIPSETTING(    0x00, "1" )
     1506      PORT_DIPSETTING(    0x04, "2" )
     1507      PORT_DIPSETTING(    0x08, "3" )
     1508      PORT_DIPSETTING(    0x0c, "5" )
     1509      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
     1510      PORT_DIPSETTING(    0x00, "10000" )
     1511      PORT_DIPSETTING(    0x10, "15000" )
     1512      PORT_DIPSETTING(    0x20, "20000" )
     1513      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     1514      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )
     1515      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     1516      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     1517      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     1518
     1519      PORT_START("DSW2")
     1520      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1521  INPUT_PORTS_END
     1522
     1523
     1524  static INPUT_PORTS_START( mspacpls )
     1525      PORT_START("IN0")
     1526      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1527      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1528      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1529      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1530      PORT_DIPNAME( 0x10, 0x10, "Rack Test (Cheat)" ) PORT_CODE(KEYCODE_F1)
     1531      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1532      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1533      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1534      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1535      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1536
     1537      PORT_START("IN1")
     1538      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1539      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1540      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1541      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1542      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     1543      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) /* Also invincibility when playing */
     1544      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) /* Also speed-up when playing */
     1545      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
     1546      PORT_DIPSETTING(    0x80, DEF_STR( Upright ) )
     1547      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     1548
     1549      PORT_START("DSW1")
     1550      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1551      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1552      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1553      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1554      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1555      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     1556      PORT_DIPSETTING(    0x00, "1" )
     1557      PORT_DIPSETTING(    0x04, "2" )
     1558      PORT_DIPSETTING(    0x08, "3" )
     1559      PORT_DIPSETTING(    0x0c, "5" )
     1560      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
     1561      PORT_DIPSETTING(    0x00, "10000" )
     1562      PORT_DIPSETTING(    0x10, "15000" )
     1563      PORT_DIPSETTING(    0x20, "20000" )
     1564      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     1565      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )
     1566      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     1567      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     1568      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     1569
     1570      PORT_START("DSW2")
     1571      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1572  INPUT_PORTS_END
     1573
     1574
     1575  static INPUT_PORTS_START( mschamp )
     1576      PORT_START("IN0")
     1577      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1578      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1579      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1580      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1581      PORT_DIPNAME( 0x10, 0x10, "Rack Test (Cheat)" ) PORT_CODE(KEYCODE_F1)
     1582      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1583      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1584      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1585      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1586      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 )
     1587
     1588      PORT_START("IN1")
     1589      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1590      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1591      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1592      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1593      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     1594      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1595      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1596      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
     1597      PORT_DIPSETTING(    0x80, DEF_STR( Upright ) )
     1598      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     1599
     1600      PORT_START("DSW1")
     1601      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1602      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1603      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1604      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1605      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1606      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     1607      PORT_DIPSETTING(    0x00, "1" )
     1608      PORT_DIPSETTING(    0x04, "2" )
     1609      PORT_DIPSETTING(    0x08, "3" )
     1610      PORT_DIPSETTING(    0x0c, "5" )
     1611      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
     1612      PORT_DIPSETTING(    0x00, "10000" )
     1613      PORT_DIPSETTING(    0x10, "15000" )
     1614      PORT_DIPSETTING(    0x20, "20000" )
     1615      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     1616      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )
     1617      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     1618      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     1619      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     1620
     1621      PORT_START("DSW2")
     1622      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1623
     1624      PORT_START("GAME")
     1625      PORT_DIPNAME( 0x01, 0x01, "Game" )
     1626      PORT_DIPSETTING(    0x01, "Champion Edition" )
     1627      PORT_DIPSETTING(    0x00, "Super Zola Pac Gal" )
     1628      PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
     1629      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     1630      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     1631      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     1632      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     1633      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     1634      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
     1635      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     1636      PORT_DIPSETTING(    0x08, DEF_STR( On ) )
     1637  INPUT_PORTS_END
     1638
     1639
     1640  static INPUT_PORTS_START( superabc )
     1641      PORT_INCLUDE( pacman )
     1642
     1643      PORT_MODIFY("DSW1")
     1644      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )   PORT_DIPLOCATION("SW:5,6")
     1645      PORT_DIPSETTING(    0x00, "10000, Allow Continue" ) // also free game in Ultra Pac-Man
     1646      PORT_DIPSETTING(    0x10, "15000, Allow Continue" ) // also free game in Ultra Pac-Man
     1647      PORT_DIPSETTING(    0x20, "20000, No Continue" )    // also free life in Ultra Pac-Man
     1648      PORT_DIPSETTING(    0x30, "None, No Continue" )     // also free life in Ultra Pac-Man
     1649      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     1650  INPUT_PORTS_END
     1651
     1652  static INPUT_PORTS_START( birdiy )
     1653      PORT_START("IN0")
     1654      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )    PORT_PLAYER(1) PORT_4WAY
     1655      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )  PORT_PLAYER(1) PORT_4WAY
     1656      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) PORT_4WAY
     1657      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )  PORT_PLAYER(1) PORT_4WAY
     1658      PORT_DIPNAME(0x10, 0x10, "Rack Test (Cheat)" )  PORT_CODE(KEYCODE_F1)
     1659      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1660      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1661      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1662      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1663      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1664
     1665      PORT_START("IN1")
     1666      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )    PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1667      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )  PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1668      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1669      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )  PORT_PLAYER(2) PORT_4WAY PORT_COCKTAIL
     1670      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     1671      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1672      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1673      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     1674
     1675      PORT_START("DSW1")
     1676      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )      PORT_DIPLOCATION("SW:1,2")
     1677      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1678      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1679      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1680      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1681      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )        PORT_DIPLOCATION("SW:3,4")
     1682      PORT_DIPSETTING(    0x00, "1" )
     1683      PORT_DIPSETTING(    0x04, "2" )
     1684      PORT_DIPSETTING(    0x08, "3" )
     1685      PORT_DIPSETTING(    0x0c, "4" )
     1686      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) )      PORT_DIPLOCATION("SW:5")
     1687      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     1688      PORT_DIPSETTING(    0x10, DEF_STR( Cocktail ) )
     1689      PORT_DIPNAME( 0x20, 0x20, "Skip Screen" )       PORT_DIPLOCATION("SW:7") /* Used to skip "Act" (AKA level)?? - How do you activate it? */
     1690      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     1691      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1692      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) )       PORT_DIPLOCATION("SW:7")
     1693      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     1694      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1695      PORT_DIPNAME( 0x80, 0x80, "Stop Screen" )       PORT_DIPLOCATION("SW:8") /* Seems to have no function? */
     1696      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     1697      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1698
     1699      PORT_START("DSW2")
     1700      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1701  INPUT_PORTS_END
     1702
     1703
     1704  static INPUT_PORTS_START( maketrax )
     1705      PORT_START("IN0")
     1706      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1707      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1708      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1709      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1710      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) )
     1711      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     1712      PORT_DIPSETTING(    0x10, DEF_STR( Cocktail ) )
     1713      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1714      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1715      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1716
     1717      PORT_START("IN1")
     1718      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1719      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1720      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1721      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1722      PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection */
     1723      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1724      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1725      PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection */
     1726
     1727      PORT_START("DSW1")
     1728      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1729      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1730      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1731      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1732      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1733      PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Lives ) )
     1734      PORT_DIPSETTING(    0x00, "3" )
     1735      PORT_DIPSETTING(    0x04, "4" )
     1736      PORT_DIPSETTING(    0x08, "5" )
     1737      PORT_DIPSETTING(    0x0c, "6" )
     1738      PORT_DIPNAME( 0x10, 0x10, "First Pattern" )
     1739      PORT_DIPSETTING(    0x10, DEF_STR( Easy ) )
     1740      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     1741      PORT_DIPNAME( 0x20, 0x20, "Teleport Holes" )
     1742      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     1743      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1744      PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection */
     1745
     1746      PORT_START("DSW2")
     1747      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1748  INPUT_PORTS_END
     1749
     1750  static INPUT_PORTS_START( crush4 )
     1751      PORT_INCLUDE( maketrax )
     1752
     1753      PORT_START("GAME")
     1754      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SPECIAL ) // always select 2nd part of code
     1755  INPUT_PORTS_END
     1756
     1757  static INPUT_PORTS_START( korosuke )
     1758      PORT_START("IN0")
     1759      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1760      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1761      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1762      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1763      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) )
     1764      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     1765      PORT_DIPSETTING(    0x10, DEF_STR( Cocktail ) )
     1766      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     1767      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
     1768      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
     1769
     1770      PORT_START("IN1")
     1771      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1772      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1773      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1774      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1775      PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection */
     1776      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1777      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1778      PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection */
     1779
     1780      PORT_START("DSW1")
     1781      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1782      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1783      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1784      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1785      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1786      PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Lives ) )
     1787      PORT_DIPSETTING(    0x00, "3" )
     1788      PORT_DIPSETTING(    0x04, "4" )
     1789      PORT_DIPSETTING(    0x08, "5" )
     1790      PORT_DIPSETTING(    0x0c, "6" )
     1791      PORT_DIPNAME( 0x10, 0x10, "First Pattern" )
     1792      PORT_DIPSETTING(    0x10, DEF_STR( Easy ) )
     1793      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     1794      PORT_DIPNAME( 0x20, 0x20, "Teleport Holes" )
     1795      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     1796      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1797      PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection */
     1798
     1799      PORT_START("DSW2")
     1800      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1801  INPUT_PORTS_END
     1802
     1803  static INPUT_PORTS_START( mbrush )
     1804      PORT_START("IN0")
     1805      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1806      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1807      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1808      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1809      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) )
     1810      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     1811      PORT_DIPSETTING(    0x10, DEF_STR( Cocktail ) )
     1812      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1813      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1814      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1815
     1816      PORT_START("IN1")
     1817      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1818      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1819      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1820      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1821      PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection in Make Trax */
     1822      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1823      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1824      PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection in Make Trax */
     1825
     1826      PORT_START("DSW1")
     1827      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1828      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1829      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1830      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1831      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1832      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     1833      PORT_DIPSETTING(    0x00, "1" )
     1834      PORT_DIPSETTING(    0x04, "2" )
     1835      PORT_DIPSETTING(    0x08, "3" )
     1836      PORT_DIPSETTING(    0x0c, "4" )
     1837      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
     1838      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1839      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1840      PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
     1841      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     1842      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1843      PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection in Make Trax */
     1844
     1845      PORT_START("DSW2")
     1846      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1847  INPUT_PORTS_END
     1848
     1849
     1850  static INPUT_PORTS_START( paintrlr )
     1851      PORT_START("IN0")
     1852      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1853      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1854      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1855      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1856      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) )
     1857      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     1858      PORT_DIPSETTING(    0x10, DEF_STR( Cocktail ) )
     1859      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1860      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1861      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1862
     1863      PORT_START("IN1")
     1864      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1865      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1866      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1867      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1868      PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection in Make Trax */
     1869      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1870      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1871      PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection in Make Trax */
     1872
     1873      PORT_START("DSW1")
     1874      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     1875      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     1876      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     1877      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     1878      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     1879      PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Lives ) )
     1880      PORT_DIPSETTING(    0x00, "3" )
     1881      PORT_DIPSETTING(    0x04, "4" )
     1882      PORT_DIPSETTING(    0x08, "5" )
     1883      PORT_DIPSETTING(    0x0c, "6" )
     1884      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
     1885      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1886      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1887      PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
     1888      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     1889      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1890      PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )  /* Protection in Make Trax */
     1891
     1892      PORT_START("DSW2")
     1893      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     1894  INPUT_PORTS_END
     1895
     1896
     1897  static INPUT_PORTS_START( crushs )
     1898      PORT_START("IN0")
     1899      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     1900      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     1901      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     1902      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     1903      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) /* Audio Test? */
     1904      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1905      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1906      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1907
     1908      PORT_START("IN1")
     1909      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     1910      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     1911      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     1912      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     1913      PORT_DIPNAME( 0x10, 0x10, "Teleport Holes" )
     1914      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1915      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1916      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     1917      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     1918      PORT_SERVICE( 0x80, IP_ACTIVE_LOW)
     1919
     1920      PORT_START("DSW1")
     1921      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
     1922      PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
     1923      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1924      PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
     1925      PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
     1926      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1927      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     1928      PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
     1929      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1930      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
     1931      PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
     1932      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1933      /* These last dips seems doesn't works in the test input, why? */
     1934      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
     1935      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     1936      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1937      PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
     1938      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     1939      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1940      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
     1941      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     1942      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1943      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     1944      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     1945      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     1946
     1947      PORT_START("DSW2")
     1948      PORT_DIPNAME( 0x0f, 0x00, DEF_STR( Coin_A ) )
     1949      PORT_DIPSETTING(    0x08, DEF_STR( 2C_1C ) )
     1950      PORT_DIPSETTING(    0x09, DEF_STR( 2C_2C ) )
     1951      PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
     1952      PORT_DIPSETTING(    0x0a, DEF_STR( 2C_3C ) )
     1953      PORT_DIPSETTING(    0x0b, DEF_STR( 2C_4C ) )
     1954      PORT_DIPSETTING(    0x01, DEF_STR( 1C_2C ) )
     1955      PORT_DIPSETTING(    0x0c, DEF_STR( 2C_5C ) )
     1956      PORT_DIPSETTING(    0x0d, DEF_STR( 2C_6C ) )
     1957      PORT_DIPSETTING(    0x02, DEF_STR( 1C_3C ) )
     1958      PORT_DIPSETTING(    0x0e, DEF_STR( 2C_7C ) )
     1959      PORT_DIPSETTING(    0x0f, DEF_STR( 2C_8C ) )
     1960      PORT_DIPSETTING(    0x03, DEF_STR( 1C_4C ) )
     1961      PORT_DIPSETTING(    0x04, DEF_STR( 1C_5C ) )
     1962      PORT_DIPSETTING(    0x05, DEF_STR( 1C_6C ) )
     1963      PORT_DIPSETTING(    0x06, DEF_STR( 1C_7C ) )
     1964      PORT_DIPSETTING(    0x07, DEF_STR( 1C_8C ) )
     1965      PORT_DIPNAME( 0xf0, 0x00, DEF_STR( Coin_B ) )
     1966      PORT_DIPSETTING(    0x80, DEF_STR( 2C_1C ) )
     1967      PORT_DIPSETTING(    0x90, DEF_STR( 2C_2C ) )
     1968      PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
     1969      PORT_DIPSETTING(    0xa0, DEF_STR( 2C_3C ) )
     1970      PORT_DIPSETTING(    0xb0, DEF_STR( 2C_4C ) )
     1971      PORT_DIPSETTING(    0x10, DEF_STR( 1C_2C ) )
     1972      PORT_DIPSETTING(    0xc0, DEF_STR( 2C_5C ) )
     1973      PORT_DIPSETTING(    0xd0, DEF_STR( 2C_6C ) )
     1974      PORT_DIPSETTING(    0x20, DEF_STR( 1C_3C ) )
     1975      PORT_DIPSETTING(    0xe0, DEF_STR( 2C_7C ) )
     1976      PORT_DIPSETTING(    0xf0, DEF_STR( 2C_8C ) )
     1977      PORT_DIPSETTING(    0x30, DEF_STR( 1C_4C ) )
     1978      PORT_DIPSETTING(    0x40, DEF_STR( 1C_5C ) )
     1979      PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) )
     1980      PORT_DIPSETTING(    0x60, DEF_STR( 1C_7C ) )
     1981      PORT_DIPSETTING(    0x70, DEF_STR( 1C_8C ) )
     1982  INPUT_PORTS_END
     1983
     1984
     1985  static INPUT_PORTS_START( ponpoko )
     1986      PORT_START("IN0")
     1987      PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
     1988      PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
     1989      PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
     1990      PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
     1991      PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
     1992      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     1993      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     1994      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     1995
     1996      /* The 2nd player controls are used even in upright mode */
     1997      PORT_START("IN1")
     1998      PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
     1999      PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
     2000      PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
     2001      PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
     2002      PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
     2003      PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
     2004      PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 )
     2005      PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
     2006
     2007      PORT_START("DSW1")
     2008      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Bonus_Life ) )
     2009      PORT_DIPSETTING(    0x01, "10000" )
     2010      PORT_DIPSETTING(    0x02, "30000" )
     2011      PORT_DIPSETTING(    0x03, "50000" )
     2012      PORT_DIPSETTING(    0x00, DEF_STR( None ) )
     2013      PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Unknown ) )
     2014      PORT_DIPSETTING(    0x00, "0" )
     2015      PORT_DIPSETTING(    0x04, "1" )
     2016      PORT_DIPSETTING(    0x08, "2" )
     2017      PORT_DIPSETTING(    0x0c, "3" )
     2018      PORT_DIPNAME( 0x30, 0x20, DEF_STR( Lives ) )
     2019      PORT_DIPSETTING(    0x00, "2" )
     2020      PORT_DIPSETTING(    0x10, "3" )
     2021      PORT_DIPSETTING(    0x20, "4" )
     2022      PORT_DIPSETTING(    0x30, "5" )
     2023      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) )
     2024      PORT_DIPSETTING(    0x40, DEF_STR( Upright ) )
     2025      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2026      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2027      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2028      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2029
     2030      PORT_START("DSW2")
     2031      PORT_DIPNAME( 0x0f, 0x01, DEF_STR( Coinage ) )
     2032      PORT_DIPSETTING(    0x04, "A 3/1 B 3/1" )
     2033      PORT_DIPSETTING(    0x0e, "A 3/1 B 1/2" )
     2034      PORT_DIPSETTING(    0x0f, "A 3/1 B 1/4" )
     2035      PORT_DIPSETTING(    0x02, "A 2/1 B 2/1" )
     2036      PORT_DIPSETTING(    0x0d, "A 2/1 B 1/1" )
     2037      PORT_DIPSETTING(    0x07, "A 2/1 B 1/3" )
     2038      PORT_DIPSETTING(    0x0b, "A 2/1 B 1/5" )
     2039      PORT_DIPSETTING(    0x0c, "A 2/1 B 1/6" )
     2040      PORT_DIPSETTING(    0x01, "A 1/1 B 1/1" )
     2041      PORT_DIPSETTING(    0x06, "A 1/1 B 4/5" )
     2042      PORT_DIPSETTING(    0x05, "A 1/1 B 2/3" )
     2043      PORT_DIPSETTING(    0x0a, "A 1/1 B 1/3" )
     2044      PORT_DIPSETTING(    0x08, "A 1/1 B 1/5" )
     2045      PORT_DIPSETTING(    0x09, "A 1/1 B 1/6" )
     2046      PORT_DIPSETTING(    0x03, "A 1/2 B 1/2" )
     2047      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2048      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )  /* Most likely unused */
     2049      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2050      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2051      PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )  /* Most likely unused */
     2052      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     2053      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2054      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
     2055      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     2056      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2057      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )  /* Most likely unused */
     2058      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2059      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2060  INPUT_PORTS_END
     2061
     2062
     2063  static INPUT_PORTS_START( eyes )
     2064      PORT_START("IN0")
     2065      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2066      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2067      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2068      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2069      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2070      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2071      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_TILT )
     2072      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
     2073
     2074      PORT_START("IN1")
     2075      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2076      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2077      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2078      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2079      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2080      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2081      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2082      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2083
     2084      PORT_START("DSW1")
     2085      PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coinage ) )
     2086      PORT_DIPSETTING(    0x01, DEF_STR( 2C_1C ) )
     2087      PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
     2088      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     2089      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2090      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     2091      PORT_DIPSETTING(    0x0c, "2" )
     2092      PORT_DIPSETTING(    0x08, "3" )
     2093      PORT_DIPSETTING(    0x04, "4" )
     2094      PORT_DIPSETTING(    0x00, "5" )
     2095      PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
     2096      PORT_DIPSETTING(    0x30, "50000" )
     2097      PORT_DIPSETTING(    0x20, "75000" )
     2098      PORT_DIPSETTING(    0x10, "100000" )
     2099      PORT_DIPSETTING(    0x00, "125000" )
     2100      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) )
     2101      PORT_DIPSETTING(    0x40, DEF_STR( Upright ) )
     2102      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2103      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )  /* Not accessed */
     2104      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2105      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2106
     2107      PORT_START("DSW2")
     2108      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2109  INPUT_PORTS_END
     2110
     2111
     2112  static INPUT_PORTS_START( mrtnt )
     2113      PORT_START("IN0")
     2114      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2115      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2116      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2117      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2118      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2119      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2120      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_TILT )
     2121      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
     2122
     2123      PORT_START("IN1")
     2124      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2125      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2126      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2127      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2128      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2129      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2130      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2131      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2132
     2133      PORT_START("DSW1")
     2134      PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coinage ) )
     2135      PORT_DIPSETTING(    0x01, DEF_STR( 2C_1C ) )
     2136      PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
     2137      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     2138      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2139      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     2140      PORT_DIPSETTING(    0x0c, "2" )
     2141      PORT_DIPSETTING(    0x08, "3" )
     2142      PORT_DIPSETTING(    0x04, "4" )
     2143      PORT_DIPSETTING(    0x00, "5" )
     2144      PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
     2145      PORT_DIPSETTING(    0x30, "75000" )
     2146      PORT_DIPSETTING(    0x20, "100000" )
     2147      PORT_DIPSETTING(    0x10, "125000" )
     2148      PORT_DIPSETTING(    0x00, "150000" )
     2149      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) )
     2150      PORT_DIPSETTING(    0x40, DEF_STR( Upright ) )
     2151      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2152      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2153      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2154      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2155
     2156      PORT_START("DSW2")
     2157      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2158  INPUT_PORTS_END
     2159
     2160
     2161  static INPUT_PORTS_START( lizwiz )
     2162      PORT_START("IN0")
     2163      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
     2164      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
     2165      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
     2166      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
     2167      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2168      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2169      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_TILT )
     2170      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
     2171
     2172      PORT_START("IN1")
     2173      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
     2174      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
     2175      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
     2176      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
     2177      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2178      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2179      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2180      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
     2181
     2182      PORT_START("DSW1")
     2183      PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coinage ) )
     2184      PORT_DIPSETTING(    0x01, DEF_STR( 2C_1C ) )
     2185      PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
     2186      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     2187      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2188      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     2189      PORT_DIPSETTING(    0x0c, "2" )
     2190      PORT_DIPSETTING(    0x08, "3" )
     2191      PORT_DIPSETTING(    0x04, "4" )
     2192      PORT_DIPSETTING(    0x00, "5" )
     2193      PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
     2194      PORT_DIPSETTING(    0x30, "75000" )
     2195      PORT_DIPSETTING(    0x20, "100000" )
     2196      PORT_DIPSETTING(    0x10, "125000" )
     2197      PORT_DIPSETTING(    0x00, "150000" )
     2198      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )
     2199      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     2200      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     2201      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2202      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2203      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2204
     2205      PORT_START("DSW2")
     2206      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2207  INPUT_PORTS_END
     2208
     2209
     2210  static INPUT_PORTS_START( theglobp )
     2211      PORT_START("IN0")
     2212      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2213      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2214      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2215      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2216      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2217      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2218      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2219      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
     2220
     2221      PORT_START("IN1")
     2222      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2223      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2224      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2225      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2226      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2227      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) // and start1
     2228      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) // and start2
     2229      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
     2230      PORT_DIPSETTING(    0x80, DEF_STR( Upright ) )
     2231      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2232
     2233      PORT_START("DSW1")
     2234      PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
     2235      PORT_DIPSETTING(    0x03, "3" )
     2236      PORT_DIPSETTING(    0x02, "4" )
     2237      PORT_DIPSETTING(    0x01, "5" )
     2238      PORT_DIPSETTING(    0x00, "6" )
     2239      PORT_DIPNAME( 0x1c, 0x1c, DEF_STR( Difficulty ) )
     2240      PORT_DIPSETTING(    0x1c, DEF_STR( Easiest ) )
     2241      PORT_DIPSETTING(    0x18, DEF_STR( Very_Easy) )
     2242      PORT_DIPSETTING(    0x14, DEF_STR( Easy ) )
     2243      PORT_DIPSETTING(    0x10, DEF_STR( Normal ) )
     2244      PORT_DIPSETTING(    0x0c, DEF_STR( Difficult ) )
     2245      PORT_DIPSETTING(    0x08, DEF_STR( Very_Difficult ) )
     2246      PORT_DIPSETTING(    0x04, DEF_STR( Very_Hard ) )
     2247      PORT_DIPSETTING(    0x00, DEF_STR( Hardest ) )
     2248      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Demo_Sounds ) )
     2249      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     2250      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2251      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
     2252      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     2253      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2254      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2255      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2256      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2257
     2258      PORT_START("DSW2")
     2259      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2260  INPUT_PORTS_END
     2261
     2262
     2263  static INPUT_PORTS_START( vanvan )
     2264      PORT_START("IN0")
     2265      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2266      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2267      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2268      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2269      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2270      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2271      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2272      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2273
     2274      PORT_START("IN1")
     2275      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2276      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2277      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2278      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2279      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2280      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2281      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2282      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2283
     2284      PORT_START("DSW1")
     2285      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
     2286      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     2287      PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
     2288      PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
     2289      PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
     2290      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2291      PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
     2292      PORT_DIPSETTING(    0x08, "20k and 100k" )
     2293      PORT_DIPSETTING(    0x04, "40k and 140k" )
     2294      PORT_DIPSETTING(    0x00, "70k and 200k" )
     2295      PORT_DIPSETTING(    0x0c, DEF_STR( None ) )
     2296      PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
     2297      PORT_DIPSETTING(    0x30, "3" )
     2298      PORT_DIPSETTING(    0x20, "4" )
     2299      PORT_DIPSETTING(    0x10, "5" )
     2300      PORT_DIPSETTING(    0x00, "6" )
     2301      PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coinage ) )
     2302      PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
     2303      PORT_DIPSETTING(    0xc0, DEF_STR( 1C_1C ) )
     2304      PORT_DIPSETTING(    0x80, DEF_STR( 1C_2C ) )
     2305      PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
     2306
     2307      /* When all DSW2 are ON, there is no sprite collision detection */
     2308      PORT_START("DSW2")
     2309      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
     2310      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2311      PORT_DIPSETTING(    0x01, DEF_STR( On ) )
     2312      PORT_DIPNAME( 0x02, 0x00, "Invulnerability (Cheat)" ) PORT_CODE(KEYCODE_F1)
     2313      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2314      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     2315      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     2316      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2317      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     2318      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )      /* Missile effect */
     2319      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )      /* Killer car is destroyed */
     2320      PORT_DIPSETTING(    0x08, DEF_STR( On ) )           /* Killer car is not destroyed */
     2321      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
     2322      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2323      PORT_DIPSETTING(    0x10, DEF_STR( On ) )
     2324      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
     2325      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2326      PORT_DIPSETTING(    0x20, DEF_STR( On ) )
     2327      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
     2328      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2329      PORT_DIPSETTING(    0x40, DEF_STR( On ) )
     2330      PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
     2331      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2332      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     2333  INPUT_PORTS_END
     2334
     2335
     2336  static INPUT_PORTS_START( vanvank )
     2337      PORT_START("IN0")
     2338      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2339      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2340      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2341      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2342      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2343      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2344      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2345      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
     2346
     2347      PORT_START("IN1")
     2348      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2349      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2350      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2351      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2352      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2353      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2354      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2355      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2356
     2357      PORT_START("DSW1")
     2358      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
     2359      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     2360      PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
     2361      PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
     2362      PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
     2363      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2364      PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
     2365      PORT_DIPSETTING(    0x08, "20k and 100k" )
     2366      PORT_DIPSETTING(    0x04, "40k and 140k" )
     2367      PORT_DIPSETTING(    0x00, "70k and 200k" )
     2368      PORT_DIPSETTING(    0x0c, DEF_STR( None ) )
     2369      PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
     2370      PORT_DIPSETTING(    0x30, "3" )
     2371      PORT_DIPSETTING(    0x20, "4" )
     2372      PORT_DIPSETTING(    0x10, "5" )
     2373      PORT_DIPSETTING(    0x00, "6" )
     2374      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Coin_A ) )
     2375      PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
     2376      PORT_DIPSETTING(    0x40, DEF_STR( 1C_1C ) )
     2377      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Coin_B ) )
     2378      PORT_DIPSETTING(    0x80, DEF_STR( 1C_2C ) )
     2379      PORT_DIPSETTING(    0x00, DEF_STR( 1C_3C ) )
     2380
     2381      /* When all DSW2 are ON, there is no sprite collision detection */
     2382      PORT_START("DSW2")
     2383      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
     2384      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2385      PORT_DIPSETTING(    0x01, DEF_STR( On ) )
     2386      PORT_DIPNAME( 0x02, 0x00, "Invulnerability (Cheat)" )
     2387      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2388      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     2389      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     2390      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2391      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     2392      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )      /* Missile effect */
     2393      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )      /* Killer car is destroyed */
     2394      PORT_DIPSETTING(    0x08, DEF_STR( On ) )           /* Killer car is not destroyed */
     2395      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
     2396      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2397      PORT_DIPSETTING(    0x10, DEF_STR( On ) )
     2398      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
     2399      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2400      PORT_DIPSETTING(    0x20, DEF_STR( On ) )
     2401      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
     2402      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2403      PORT_DIPSETTING(    0x40, DEF_STR( On ) )
     2404      PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
     2405      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2406      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     2407  INPUT_PORTS_END
     2408
     2409
     2410  static INPUT_PORTS_START( dremshpr )
     2411      PORT_START("IN0")
     2412      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2413      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2414      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2415      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2416      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2417      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2418      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2419      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
     2420
     2421      PORT_START("IN1")
     2422      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2423      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2424      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2425      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2426      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2427      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2428      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2429      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2430
     2431      PORT_START("DSW1")
     2432      PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
     2433      PORT_DIPSETTING(    0x01, DEF_STR( Upright ) )
     2434      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2435      PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
     2436      PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
     2437      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2438      PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
     2439      PORT_DIPSETTING(    0x08, "30000" )
     2440      PORT_DIPSETTING(    0x04, "50000" )
     2441      PORT_DIPSETTING(    0x00, "70000" )
     2442      PORT_DIPSETTING(    0x0c, DEF_STR( None ) )
     2443      PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
     2444      PORT_DIPSETTING(    0x30, "3" )
     2445      PORT_DIPSETTING(    0x20, "4" )
     2446      PORT_DIPSETTING(    0x10, "5" )
     2447      PORT_DIPSETTING(    0x00, "6" )
     2448      PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coinage ) )
     2449      PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
     2450      PORT_DIPSETTING(    0xc0, DEF_STR( 1C_1C ) )
     2451      PORT_DIPSETTING(    0x80, DEF_STR( 1C_2C ) )
     2452      PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
     2453
     2454      PORT_START("DSW2")
     2455      PORT_DIPNAME( 0x01, 0x00,"Invulnerability (Cheat)")     /* turning this on crashes the emulated machine in an infinite loop once in a while */
     2456      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2457      PORT_DIPSETTING(    0x01, DEF_STR( On ) )
     2458      PORT_BIT( 0xfe, IP_ACTIVE_HIGH, IPT_UNUSED )
     2459  INPUT_PORTS_END
     2460
     2461
     2462  static INPUT_PORTS_START( alibaba )
     2463      PORT_START("IN0")
     2464      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2465      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2466      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2467      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2468      PORT_DIPNAME( 0x10, 0x10, "Rack Test (Cheat)" ) PORT_CODE(KEYCODE_F1)
     2469      PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
     2470      PORT_DIPSETTING( 0x00, DEF_STR( On ) )
     2471      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2472      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2473      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
     2474
     2475      PORT_START("IN1")
     2476      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2477      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2478      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2479      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2480      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2481      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2482      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2483      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
     2484      PORT_DIPSETTING(    0x80, DEF_STR( Upright ) )
     2485      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2486
     2487      PORT_START("DSW1")
     2488      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     2489      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     2490      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     2491      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     2492      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2493      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     2494      PORT_DIPSETTING(    0x00, "1" )
     2495      PORT_DIPSETTING(    0x04, "2" )
     2496      PORT_DIPSETTING(    0x08, "3" )
     2497      PORT_DIPSETTING(    0x0c, "5" )
     2498      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
     2499      PORT_DIPSETTING(    0x00, "10000" )
     2500      PORT_DIPSETTING(    0x10, "15000" )
     2501      PORT_DIPSETTING(    0x20, "20000" )
     2502      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     2503      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )
     2504      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     2505      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     2506      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2507      PORT_DIPSETTING(    0x80, DEF_STR( Off) )
     2508      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2509  INPUT_PORTS_END
     2510
     2511
     2512  static INPUT_PORTS_START( jumpshot )
     2513      PORT_START("IN0")
     2514      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
     2515      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
     2516      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
     2517      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
     2518      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
     2519      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2520      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2521      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2522      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2523      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2524
     2525      PORT_START("IN1")
     2526      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
     2527      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
     2528      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
     2529      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
     2530      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2531      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2532      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1  ) PORT_PLAYER(2)
     2533      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2534      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2535      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2536
     2537      PORT_START("DSW1")
     2538      PORT_DIPNAME( 0x03, 0x01, "Time"  )
     2539  //  PORT_DIPSETTING(    0x00,  "2 Minutes"  )
     2540      PORT_DIPSETTING(    0x02,  "2 Minutes" )
     2541      PORT_DIPSETTING(    0x03,  "3 Minutes" )
     2542      PORT_DIPSETTING(    0x01,  "4 Minutes"  )
     2543      PORT_DIPNAME( 0x04, 0x04, "Player 1 Skin Tone" )
     2544      PORT_DIPSETTING(    0x04, "Lighter" )
     2545      PORT_DIPSETTING(    0x00, "Darker" )
     2546      PORT_DIPNAME( 0x08, 0x08, "Player 2 Skin Tone" )
     2547      PORT_DIPSETTING(    0x08, "Lighter" )
     2548      PORT_DIPSETTING(    0x00, "Darker" )
     2549      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Free_Play ) )
     2550      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2551      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2552      PORT_DIPNAME( 0x20, 0x00, "2 Players Game" )
     2553      PORT_DIPSETTING(    0x20, "1 Credit" )
     2554      PORT_DIPSETTING(    0x00, "2 Credits" )
     2555      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
     2556      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     2557      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2558      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2559      PORT_DIPSETTING(    0x80, DEF_STR( Off) )
     2560      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2561
     2562      PORT_START("DSW2")
     2563      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2564  INPUT_PORTS_END
     2565
     2566
     2567  static INPUT_PORTS_START( jumpshotp )
     2568      PORT_START("IN0")
     2569      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
     2570      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
     2571      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
     2572      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
     2573      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
     2574      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2575      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2576      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2577      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2578      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2579
     2580      PORT_START("IN1")
     2581      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
     2582      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
     2583      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
     2584      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
     2585      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2586      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2587      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1  ) PORT_PLAYER(2)
     2588      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2589      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2590      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2591
     2592      PORT_START("DSW1")
     2593      PORT_DIPNAME( 0x03, 0x01, "Time Limit"  )
     2594  //  PORT_DIPSETTING(    0x00,  "Short"  )
     2595nbsp;     PORT_DIPSETTING(    0x02,  "Short" )
     2596      PORT_DIPSETTING(    0x03,  "Average" )
     2597      PORT_DIPSETTING(    0x01,  "Above Average"   )
     2598      PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ))
     2599      PORT_DIPSETTING(    0x04, DEF_STR( Off ))
     2600      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2601      PORT_DIPNAME( 0x08, 0x08, "Players Skin Tone" )
     2602      PORT_DIPSETTING(    0x08, "Lighter" )
     2603      PORT_DIPSETTING(    0x00, "Darker" )
     2604      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Free_Play ) )
     2605      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2606      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2607      PORT_DIPNAME( 0x20, 0x00, "2 Players Game" )
     2608      PORT_DIPSETTING(    0x20, "1 Credit" )
     2609      PORT_DIPSETTING(    0x00, "2 Credits" )
     2610      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
     2611      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     2612      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2613      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2614      PORT_DIPSETTING(    0x80, DEF_STR( Off) )
     2615      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2616
     2617      PORT_START("DSW2")
     2618      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2619  INPUT_PORTS_END
     2620
     2621
     2622  static INPUT_PORTS_START( shootbul )
     2623      PORT_START("IN0")
     2624      PORT_BIT( 0x0f, 0x00, IPT_TRACKBALL_X  ) PORT_SENSITIVITY(50) PORT_KEYDELTA(25)
     2625      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2626      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2627      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 )
     2628
     2629      PORT_START("IN1")
     2630      PORT_BIT( 0x0f, 0x00, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(25) PORT_REVERSE
     2631      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2632      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2633      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
     2634      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2635      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2636      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2637
     2638      PORT_START("DSW1")
     2639      PORT_DIPNAME( 0x07, 0x07, "Time"  )
     2640      PORT_DIPSETTING(    0x01, "Short")
     2641      PORT_DIPSETTING(    0x07, "Average" )
     2642      PORT_DIPSETTING(    0x03, "Long" )
     2643      PORT_DIPSETTING(    0x05, "Longer" )
     2644      PORT_DIPSETTING(    0x06, "Longest" )
     2645      PORT_DIPNAME( 0x08, 0x08, "Title Page Sounds"  )
     2646      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2647      PORT_DIPSETTING(    0x08, DEF_STR( On ) )
     2648      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
     2649      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2650      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2651      PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ))
     2652      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     2653      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2654      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ))
     2655      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     2656      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2657      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     2658
     2659      PORT_START("DSW2")
     2660      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2661  INPUT_PORTS_END
     2662
     2663  /* New Atlantic City Action / Board Walk Casino Inputs
     2664     Annoyingly enough, you can't get into service mode on bwcasino if the
     2665     cocktail mode is set. To test player 2's inputs, select Upright Mode on
     2666     the dipswitches, and enter test mode. Now select cocktail mode and you
     2667     can test everything. Weird. */
     2668
     2669  static INPUT_PORTS_START( bwcasino )
     2670      PORT_START("IN0")
     2671      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2672      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
     2673      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
     2674      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 )
     2675      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2676      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2677      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
     2678      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_COCKTAIL PORT_PLAYER(2)
     2679
     2680      PORT_START("IN1")
     2681      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_PLAYER(2)
     2682      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_PLAYER(2)
     2683      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL PORT_PLAYER(2)
     2684      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_COCKTAIL PORT_PLAYER(2)
     2685      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_COCKTAIL PORT_PLAYER(2)
     2686      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 )
     2687      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 )
     2688      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
     2689      PORT_DIPSETTING(    0x80, DEF_STR( Upright ) )
     2690      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2691
     2692      PORT_START("DSW1")
     2693      PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
     2694      PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
     2695      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2696      PORT_DIPNAME( 0x1e, 0x1e, "Hands per Game" )
     2697      PORT_DIPSETTING(    0x1e, "3" )
     2698      PORT_DIPSETTING(    0x1c, "4" )
     2699      PORT_DIPSETTING(    0x1a, "5" )
     2700      PORT_DIPSETTING(    0x18, "6" )
     2701      PORT_DIPSETTING(    0x16, "7" )
     2702      PORT_DIPSETTING(    0x14, "8" )
     2703      PORT_DIPSETTING(    0x12, "9" )
     2704      PORT_DIPSETTING(    0x10, "10" )
     2705      PORT_DIPSETTING(    0x0e, "11" )
     2706      PORT_DIPSETTING(    0x0c, "12" )
     2707      PORT_DIPSETTING(    0x0a, "13" )
     2708      PORT_DIPSETTING(    0x08, "14" )
     2709      PORT_DIPSETTING(    0x06, "15" )
     2710      PORT_DIPSETTING(    0x04, "16" )
     2711      PORT_DIPSETTING(    0x02, "17" )
     2712      PORT_DIPSETTING(    0x00, "18" )
     2713      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Demo_Sounds ) )
     2714      PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
     2715      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2716      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
     2717      PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
     2718      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2719      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2720      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2721      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2722
     2723      PORT_START("DSW2")
     2724      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2725  INPUT_PORTS_END
     2726
     2727  /* ATLANTIC CITY ACTION (acitya)
     2728     Unlike "Boardwalk Casino", "Atlantic City Action" does not appear to
     2729     have a cocktail mode, and uses service button connected differently to
     2730     "Boardwalk" */
     2731
     2732  static INPUT_PORTS_START( acitya )
     2733      PORT_START("IN0")
     2734      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2735      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
     2736      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
     2737      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 )
     2738      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2739      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2740      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
     2741      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     2742
     2743      PORT_START("IN1")
     2744      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
     2745      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
     2746      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
     2747      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
     2748      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2749      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 )
     2750      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 )
     2751      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
     2752
     2753      PORT_START("DSW1")  /* Test mode shows 6 selection DIP */
     2754      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Demo_Sounds ) )  PORT_DIPLOCATION("DSW1:1")
     2755      PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
     2756      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2757      PORT_DIPNAME( 0x1e, 0x1e, "Hands per Game" )        PORT_DIPLOCATION("DSW1:2,3,4,5")
     2758      PORT_DIPSETTING(    0x1e, "3" )
     2759      PORT_DIPSETTING(    0x1c, "4" )
     2760      PORT_DIPSETTING(    0x1a, "5" )
     2761      PORT_DIPSETTING(    0x18, "6" )
     2762      PORT_DIPSETTING(    0x16, "7" )
     2763      PORT_DIPSETTING(    0x14, "8" )
     2764      PORT_DIPSETTING(    0x12, "9" )
     2765      PORT_DIPSETTING(    0x10, "10" )
     2766      PORT_DIPSETTING(    0x0e, "11" )
     2767      PORT_DIPSETTING(    0x0c, "12" )
     2768      PORT_DIPSETTING(    0x0a, "13" )
     2769      PORT_DIPSETTING(    0x08, "14" )
     2770      PORT_DIPSETTING(    0x06, "15" )
     2771      PORT_DIPSETTING(    0x04, "16" )
     2772      PORT_DIPSETTING(    0x02, "17" )
     2773      PORT_DIPSETTING(    0x00, "18" )
     2774      PORT_DIPUNKNOWN_DIPLOC(0x20, IP_ACTIVE_LOW, "DSW1:6")
     2775
     2776      PORT_START("DSW2")
     2777      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2778  INPUT_PORTS_END
     2779
     2780
     2781  static INPUT_PORTS_START( nmouse )
     2782      PORT_START("IN0")
     2783      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2784      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2785      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2786      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2787      PORT_DIPNAME( 0x10, 0x10, "Rack Test (Cheat)" ) PORT_CODE(KEYCODE_F1)
     2788      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2789      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2790      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2791      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2792      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2793
     2794      PORT_START("IN1")
     2795      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2796      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2797      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2798      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2799      PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
     2800      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2801      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2802      PORT_DIPNAME(0x80, 0x80, DEF_STR( Cabinet ) )
     2803      PORT_DIPSETTING(   0x80, DEF_STR( Upright ) )
     2804      PORT_DIPSETTING(   0x00, DEF_STR( Cocktail ) )
     2805
     2806      PORT_START("DSW1")
     2807      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     2808      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     2809      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     2810      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     2811      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2812      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     2813      PORT_DIPSETTING(    0x00, "1" )
     2814      PORT_DIPSETTING(    0x04, "2" )
     2815      PORT_DIPSETTING(    0x08, "3" )
     2816      PORT_DIPSETTING(    0x0c, "5" )
     2817      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
     2818      PORT_DIPSETTING(    0x00, "5000" )
     2819      PORT_DIPSETTING(    0x10, "10000" )
     2820      PORT_DIPSETTING(    0x20, "15000" )
     2821      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     2822      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) )
     2823      PORT_DIPSETTING(    0x40, DEF_STR( Normal ) )
     2824      PORT_DIPSETTING(    0x00, DEF_STR( Hard ) )
     2825      PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
     2826      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     2827      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2828
     2829      PORT_START("DSW2")
     2830      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2831
     2832  INPUT_PORTS_END
     2833
     2834  static INPUT_PORTS_START( woodpek )
     2835      PORT_START("IN0")
     2836      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2837      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2838      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2839      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2840      PORT_DIPNAME( 0x10, 0x10, "Rack Test (Cheat)" ) PORT_CODE(KEYCODE_F1)
     2841      PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
     2842      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     2843      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2844      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2845      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2846
     2847      PORT_START("IN1")
     2848      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2849      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2850      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2851      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2852      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2853      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     2854      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     2855      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     2856
     2857      PORT_START("DSW1")
     2858      PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
     2859      PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ) )
     2860      PORT_DIPSETTING(    0x01, DEF_STR( 1C_1C ) )
     2861      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     2862      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     2863      PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
     2864      PORT_DIPSETTING(    0x00, "1" )
     2865      PORT_DIPSETTING(    0x04, "2" )
     2866      PORT_DIPSETTING(    0x08, "3" )
     2867      PORT_DIPSETTING(    0x0c, "5" )
     2868      PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
     2869      PORT_DIPSETTING(    0x00, "5000" )
     2870      PORT_DIPSETTING(    0x10, "10000" )
     2871      PORT_DIPSETTING(    0x20, "15000" )
     2872      PORT_DIPSETTING(    0x30, DEF_STR( None ) )
     2873      PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) )
     2874      PORT_DIPSETTING(    0x40, DEF_STR( Upright ) )
     2875      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2876      PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
     2877
     2878      PORT_START("DSW2")
     2879      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2880  INPUT_PORTS_END
     2881
     2882  static INPUT_PORTS_START( bigbucks )
     2883      PORT_START("IN0")
     2884      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP   ) PORT_4WAY
     2885      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2886      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2887      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2888      PORT_DIPNAME( 0x10, 0x10, "Enable Category Adult Affairs" )
     2889      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2890      PORT_DIPSETTING(    0x10, DEF_STR( On ) )
     2891      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2892      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2893      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2894
     2895      PORT_START("IN1")
     2896      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     2897      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     2898      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     2899      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     2900      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2901      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2902      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2903      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2904
     2905      PORT_START("DSW1")
     2906      PORT_DIPNAME( 0x01, 0x00, "Time to bet / answer" )
     2907      PORT_DIPSETTING(    0x00, "15 sec. / 10 sec." )
     2908      PORT_DIPSETTING(    0x01, "20 sec. / 15 sec." )
     2909      PORT_DIPNAME( 0x02, 0x00, "Continue if player busts" )
     2910      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2911      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     2912      PORT_DIPNAME( 0x04, 0x04, "Show correct answer" )
     2913      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2914      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     2915      PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
     2916      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2917      PORT_DIPSETTING(    0x08, DEF_STR( On ) )
     2918      PORT_DIPNAME( 0x10, 0x10, DEF_STR( Coinage ) )
     2919      PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
     2920      PORT_DIPSETTING(    0x10, DEF_STR( 1C_1C ) )
     2921      PORT_DIPNAME( 0x20, 0x20, DEF_STR( Cabinet ) )
     2922      PORT_DIPSETTING(    0x20, DEF_STR( Upright ) )
     2923      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     2924      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
     2925      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2926      PORT_DIPSETTING(    0x40, DEF_STR( On ) )
     2927      PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
     2928      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2929      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     2930
     2931      PORT_START("DSW2")
     2932      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     2933  INPUT_PORTS_END
     2934
     2935
     2936  static INPUT_PORTS_START( drivfrcp )
     2937      PORT_START("IN0")
     2938      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2939      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY
     2940      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY
     2941      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2942      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2943      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2944      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2945      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2946
     2947      PORT_START("IN1")
     2948      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2949      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2950      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2951      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2952      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2953      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 )
     2954      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
     2955      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2956
     2957      PORT_START("DSW0")
     2958      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
     2959      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2960      PORT_DIPSETTING(    0x01, DEF_STR( On ) )
     2961      PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
     2962      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2963      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     2964      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     2965      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2966      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     2967      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
     2968      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2969      PORT_DIPSETTING(    0x08, DEF_STR( On ) )
     2970      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
     2971      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2972      PORT_DIPSETTING(    0x10, DEF_STR( On ) )
     2973      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
     2974      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2975      PORT_DIPSETTING(    0x20, DEF_STR( On ) )
     2976      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
     2977      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2978      PORT_DIPSETTING(    0x40, DEF_STR( On ) )
     2979      PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
     2980      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     2981      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     2982
     2983      PORT_START("SENSE")
     2984      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_VBLANK("screen")
     2985  INPUT_PORTS_END
     2986
     2987
     2988  static INPUT_PORTS_START( 8bpm )
     2989      PORT_START("IN0")
     2990      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
     2991      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     2992      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     2993      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     2994      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     2995      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     2996      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     2997      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     2998
     2999      PORT_START("IN1")
     3000      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
     3001      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
     3002      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     3003      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
     3004      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     3005      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Start 1 / P1 Button 1")
     3006      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Start 2 / P1 Button 1")
     3007      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3008
     3009      PORT_START("DSW0")
     3010      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
     3011      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     3012      PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
     3013      PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
     3014      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3015      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     3016      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     3017      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3018      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     3019      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
     3020      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3021      PORT_DIPSETTING(    0x08, DEF_STR( On ) )
     3022      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
     3023      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3024      PORT_DIPSETTING(    0x10, DEF_STR( On ) )
     3025      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
     3026      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3027      PORT_DIPSETTING(    0x20, DEF_STR( On ) )
     3028      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
     3029      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3030      PORT_DIPSETTING(    0x40, DEF_STR( On ) )
     3031      PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
     3032      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3033      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     3034
     3035      PORT_START("SENSE")
     3036      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_VBLANK("screen")
     3037  INPUT_PORTS_END
     3038
     3039
     3040  static INPUT_PORTS_START( porky )
     3041      PORT_START("IN0")
     3042      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
     3043      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY
     3044      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY
     3045      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 )
     3046      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3047      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     3048      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     3049      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
     3050
     3051      PORT_START("IN1")
     3052      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     3053      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_COCKTAIL
     3054      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_COCKTAIL
     3055      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
     3056      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3057      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     3058      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     3059      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3060
     3061      PORT_START("DSW0")
     3062      PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
     3063      PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
     3064      PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
     3065      PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
     3066      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3067      PORT_DIPSETTING(    0x02, DEF_STR( On ) )
     3068      PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
     3069      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3070      PORT_DIPSETTING(    0x04, DEF_STR( On ) )
     3071      PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
     3072      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3073      PORT_DIPSETTING(    0x08, DEF_STR( On ) )
     3074      PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
     3075      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3076      PORT_DIPSETTING(    0x10, DEF_STR( On ) )
     3077      PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
     3078      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3079      PORT_DIPSETTING(    0x20, DEF_STR( On ) )
     3080      PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
     3081      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3082      PORT_DIPSETTING(    0x40, DEF_STR( On ) )
     3083      PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
     3084      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3085      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     3086
     3087      PORT_START("SENSE")
     3088      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_VBLANK("screen")
     3089  INPUT_PORTS_END
     3090
     3091
     3092  static INPUT_PORTS_START( rocktrv2 )
     3093      PORT_START("IN0")
     3094      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP   ) PORT_4WAY
     3095      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
     3096      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     3097      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
     3098      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3099      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     3100      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     3101      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT )
     3102
     3103      PORT_START("IN1")
     3104      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2)
     3105      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2)
     3106      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2)
     3107      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(2)
     3108      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3109      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
     3110      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
     3111      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3112
     3113      PORT_START("DSW1")
     3114      PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coinage ) )
     3115      PORT_DIPSETTING(    0x01, DEF_STR( 2C_1C ) )
     3116      PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
     3117      PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
     3118      PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
     3119      PORT_DIPNAME( 0x1c, 0x10, "Questions Per Game" )
     3120      PORT_DIPSETTING(    0x1c, "2" )
     3121      PORT_DIPSETTING(    0x18, "3" )
     3122      PORT_DIPSETTING(    0x14, "4" )
     3123      PORT_DIPSETTING(    0x10, "5" )
     3124      PORT_DIPSETTING(    0x0c, "6" )
     3125      PORT_DIPSETTING(    0x08, "7" )
     3126      PORT_DIPSETTING(    0x04, "8" )
     3127      PORT_DIPSETTING(    0x00, "9" )
     3128      PORT_DIPNAME( 0x60, 0x60, "Clock Speed" )
     3129      PORT_DIPSETTING(    0x60, "Beginner" )
     3130      PORT_DIPSETTING(    0x40, "Intermed" )
     3131      PORT_DIPSETTING(    0x20, "Pro" )
     3132      PORT_DIPSETTING(    0x00, "Super - Pro" )
     3133      PORT_DIPNAME( 0x80, 0x80,"Freeze Image" )
     3134      PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
     3135      PORT_DIPSETTING(    0x00, DEF_STR( On ) )
     3136
     3137      PORT_START("DSW2")
     3138      PORT_DIPNAME( 0x01, 0x01, "Mode" )
     3139      PORT_DIPSETTING(    0x01, "Amusement" )
     3140      PORT_DIPSETTING(    0x00, "Credit" )
     3141      PORT_DIPNAME( 0x02, 0x02, DEF_STR( Cabinet ) )
     3142      PORT_DIPSETTING(    0x02, DEF_STR( Upright ) )
     3143      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     3144      PORT_DIPNAME( 0x04, 0x04, "K.O. Switch" )
     3145      PORT_DIPSETTING(    0x04, "Auto" )
     3146      PORT_DIPSETTING(    0x00, "Manual" )
     3147      PORT_SERVICE( 0x08, IP_ACTIVE_LOW )
     3148      PORT_DIPNAME( 0x70, 0x70, DEF_STR( Bonus_Life ) )
     3149      PORT_DIPSETTING(    0x70, "10000" )
     3150      PORT_DIPSETTING(    0x60, "17500" )
     3151      PORT_DIPSETTING(    0x50, "25000" )
     3152      PORT_DIPSETTING(    0x40, "32500" )
     3153      PORT_DIPSETTING(    0x30, "40000" )
     3154      PORT_DIPSETTING(    0x20, "47500" )
     3155      PORT_DIPSETTING(    0x10, "55000" )
     3156      PORT_DIPSETTING(    0x00, "62500" )
     3157      PORT_DIPNAME( 0x80, 0x80, "Music" )
     3158      PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
     3159      PORT_DIPSETTING(    0x80, DEF_STR( On ) )
     3160  INPUT_PORTS_END
     3161
     3162  static INPUT_PORTS_START( cannonbp )
     3163      PORT_START("IN0")
     3164      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )    PORT_4WAY
     3165      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )  PORT_4WAY
     3166      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
     3167      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )  PORT_4WAY
     3168      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3169      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
     3170      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
     3171      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
     3172
     3173      PORT_START("IN1")
     3174      PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )    PORT_4WAY PORT_COCKTAIL
     3175      PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )  PORT_4WAY PORT_COCKTAIL
     3176      PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
     3177      PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )  PORT_4WAY PORT_COCKTAIL
     3178      PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
     3179      PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME( "Start" )
     3180      PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME( "Select" )
     3181      PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
     3182
     3183      PORT_START("DSW1")
     3184      PORT_DIPNAME( 0x03, 0x03, "Display" )
     3185      PORT_DIPSETTING(    0x03, "Scores and Progession Bars" )
     3186      PORT_DIPSETTING(    0x01, "Scores only" )
     3187      PORT_DIPSETTING(    0x02, "Progession Bars only" )
     3188      PORT_DIPSETTING(    0x00, DEF_STR( None ) )
     3189      PORT_DIPNAME( 0x04, 0x04, DEF_STR( Cabinet ) )
     3190      PORT_DIPSETTING(    0x04, DEF_STR( Upright ) )
     3191      PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
     3192      PORT_DIPNAME( 0x18, 0x00, DEF_STR( Lives ) )
     3193      PORT_DIPSETTING(    0x00, "3" )
     3194      PORT_DIPSETTING(    0x08, "4" )
     3195      PORT_DIPSETTING(    0x10, "5" )
     3196      PORT_DIPSETTING(    0x18, "6" )
     3197      PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW )
     3198      PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW )
     3199      PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW )
     3200
     3201      PORT_START("DSW2")
     3202      PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
     3203  INPUT_PORTS_END
     3204
     3205
     3206
     3207  /*************************************
     3208   *
     3209   *  Graphics layouts
     3210   *
     3211   *************************************/
     3212
     3213  static const gfx_layout tilelayout =
     3214  {
     3215      8,8,    /* 8*8 characters */
     3216      RGN_FRAC(1,2),    /* 256 characters */
     3217      2,  /* 2 bits per pixel */
     3218      { 0, 4 },   /* the two bitplanes for 4 pixels are packed into one byte */
     3219      { 8*8+0, 8*8+1, 8*8+2, 8*8+3, 0, 1, 2, 3 }, /* bits are packed in groups of four */
     3220      { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
     3221      16*8    /* every char takes 16 bytes */
     3222  };
     3223
     3224
     3225  static const gfx_layout spritelayout =
     3226  {
     3227      16,16,  /* 16*16 sprites */
     3228      RGN_FRAC(1,2),  /* 64 sprites */
     3229      2,  /* 2 bits per pixel */
     3230      { 0, 4 },   /* the two bitplanes for 4 pixels are packed into one byte */
     3231      { 8*8, 8*8+1, 8*8+2, 8*8+3, 16*8+0, 16*8+1, 16*8+2, 16*8+3,
     3232              24*8+0, 24*8+1, 24*8+2, 24*8+3, 0, 1, 2, 3 },
     3233      { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
     3234              32*8, 33*8, 34*8, 35*8, 36*8, 37*8, 38*8, 39*8 },
     3235      64*8    /* every sprite takes 64 bytes */
     3236  };
     3237
     3238
     3239  static const gfx_layout crush4_tilelayout =
     3240  {
     3241      8,8, /* 8*8 characters */
     3242      RGN_FRAC(1,4),
     3243      2,  /* 2 bits per pixel */
     3244      { RGN_FRAC(1,2), RGN_FRAC(0,2)+4 },
     3245      { 8*8+0, 8*8+1, 8*8+2, 8*8+3, 0, 1, 2, 3 }, /* bits are packed in groups of four */
     3246      { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
     3247      16*8    /* every char takes 16 bytes */
     3248  };
     3249
     3250  static const gfx_layout crush4_spritelayout =
     3251  {
     3252      16,16, /* 16*16 sprites */
     3253      RGN_FRAC(1,4),
     3254      2,  /* 2 bits per pixel */
     3255      { RGN_FRAC(1,2), RGN_FRAC(0,2)+4 },
     3256      { 8*8, 8*8+1, 8*8+2, 8*8+3, 16*8+0, 16*8+1, 16*8+2, 16*8+3,
     3257              24*8+0, 24*8+1, 24*8+2, 24*8+3, 0, 1, 2, 3 },
     3258      { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
     3259              32*8, 33*8, 34*8, 35*8, 36*8, 37*8, 38*8, 39*8 },
     3260      64*8    /* every sprite takes 64 bytes */
     3261  };
     3262
     3263
     3264  static GFXDECODE_START( pacman )
     3265      GFXDECODE_ENTRY( "gfx1", 0x0000, tilelayout,   0, 128 )
     3266      GFXDECODE_ENTRY( "gfx1", 0x1000, spritelayout, 0, 128 )
     3267  GFXDECODE_END
     3268
     3269
     3270  static GFXDECODE_START( s2650games )
     3271      GFXDECODE_ENTRY( "gfx1", 0x0000, tilelayout,   0, 128 )
     3272      GFXDECODE_ENTRY( "gfx1", 0x4000, spritelayout, 0, 128 )
     3273  GFXDECODE_END
     3274
     3275
     3276  static GFXDECODE_START( superabc )
     3277      GFXDECODE_ENTRY( "gfx1", 0x0000, tilelayout,   0, 128 )
     3278      GFXDECODE_ENTRY( "gfx1", 0x8000, spritelayout, 0, 128 )
     3279  GFXDECODE_END
     3280
     3281
     3282  static GFXDECODE_START( crush4 )
     3283      GFXDECODE_ENTRY( "gfx1", 0x0000, crush4_tilelayout,   0, 128 )
     3284      GFXDECODE_ENTRY( "gfx1", 0x1000, crush4_spritelayout, 0, 128 )
     3285  GFXDECODE_END
     3286
     3287
     3288
     3289  /*************************************
     3290   *
     3291   *  Sound interfaces
     3292   *
     3293   *************************************/
     3294
     3295  static const namco_interface namco_config =
     3296  {
     3297      3,          /* number of voices */
     3298      0           /* stereo */
     3299  };
     3300
     3301
     3302  //-------------------------------------------------
     3303  //  sn76496_config psg_intf
     3304  //-------------------------------------------------
     3305
     3306  static const sn76496_config psg_intf =
     3307  {
     3308      DEVCB_NULL
     3309  };
     3310
     3311
     3312  /*************************************
     3313   *
     3314   *  Machine drivers
     3315   *
     3316   *************************************/
     3317
     3318  static MACHINE_CONFIG_START( pacman, pacman_state )
     3319
     3320      /* basic machine hardware */
     3321      MCFG_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
     3322      MCFG_CPU_PROGRAM_MAP(pacman_map)
     3323      MCFG_CPU_IO_MAP(writeport)
     3324      MCFG_CPU_VBLANK_INT_DRIVER("screen", pacman_state, vblank_irq)
     3325      MCFG_WATCHDOG_VBLANK_INIT(16)
     3326
     3327      /* video hardware */
     3328      MCFG_GFXDECODE(pacman)
     3329      MCFG_PALETTE_LENGTH(128*4)
     3330
     3331      MCFG_SCREEN_ADD("screen", RASTER)
     3332      MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
     3333      MCFG_SCREEN_UPDATE_DRIVER(pacman_state, screen_update_pacman)
     3334
     3335      MCFG_PALETTE_INIT_OVERRIDE(pacman_state,pacman)
     3336      MCFG_VIDEO_START_OVERRIDE(pacman_state,pacman)
     3337
     3338      /* sound hardware */
     3339      MCFG_SPEAKER_STANDARD_MONO("mono")
     3340
     3341      MCFG_SOUND_ADD("namco", NAMCO, MASTER_CLOCK/6/32)
     3342      MCFG_SOUND_CONFIG(namco_config)
     3343      MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
     3344  MACHINE_CONFIG_END
     3345
     3346  static MACHINE_CONFIG_DERIVED( birdiy, pacman )
     3347
     3348      /* basic machine hardware */
     3349      MCFG_CPU_MODIFY("maincpu")
     3350      MCFG_CPU_PROGRAM_MAP(birdiy_map)
     3351      MCFG_CPU_IO_MAP(0)
     3352
     3353      MCFG_VIDEO_START_OVERRIDE(pacman_state,birdiy)
     3354  MACHINE_CONFIG_END
     3355
     3356
     3357
     3358
     3359  static MACHINE_CONFIG_DERIVED( piranha, pacman )
     3360
     3361      /* basic machine hardware */
     3362      MCFG_CPU_MODIFY("maincpu")
     3363      MCFG_CPU_IO_MAP(piranha_portmap)
     3364  MACHINE_CONFIG_END
     3365
     3366
     3367  static MACHINE_CONFIG_DERIVED( nmouse, pacman )
     3368
     3369      /* basic machine hardware */
     3370      MCFG_CPU_MODIFY("maincpu")
     3371      MCFG_CPU_IO_MAP(nmouse_portmap)
     3372  MACHINE_CONFIG_END
     3373
     3374
     3375  static MACHINE_CONFIG_DERIVED( mspacman, pacman )
     3376
     3377      /* basic machine hardware */
     3378      MCFG_CPU_MODIFY("maincpu")
     3379      MCFG_CPU_PROGRAM_MAP(mspacman_map)
     3380  MACHINE_CONFIG_END
     3381
     3382
     3383  static MACHINE_CONFIG_DERIVED( woodpek, pacman )
     3384
     3385      /* basic machine hardware */
     3386      MCFG_CPU_MODIFY("maincpu")
     3387      MCFG_CPU_PROGRAM_MAP(woodpek_map)
     3388  MACHINE_CONFIG_END
     3389
     3390
     3391  static MACHINE_CONFIG_DERIVED( alibaba, pacman )
     3392
     3393      /* basic machine hardware */
     3394      MCFG_CPU_MODIFY("maincpu")
     3395      MCFG_CPU_PROGRAM_MAP(alibaba_map)
     3396  MACHINE_CONFIG_END
     3397
     3398
     3399  static MACHINE_CONFIG_DERIVED( dremshpr, pacman )
     3400
     3401      /* basic machine hardware */
     3402      MCFG_CPU_MODIFY("maincpu")
     3403      MCFG_CPU_PROGRAM_MAP(dremshpr_map)
     3404      MCFG_CPU_IO_MAP(dremshpr_portmap)
     3405      MCFG_CPU_VBLANK_INT_DRIVER("screen", pacman_state,  vblank_nmi)
     3406
     3407      /* sound hardware */
     3408      MCFG_SOUND_REPLACE("namco", AY8910, 14318000/8)
     3409      MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
     3410  MACHINE_CONFIG_END
     3411
     3412
     3413  static MACHINE_CONFIG_DERIVED( theglobp, pacman )
     3414
     3415      /* basic machine hardware */
     3416      MCFG_CPU_MODIFY("maincpu")
     3417      MCFG_CPU_PROGRAM_MAP(epos_map)
     3418      MCFG_CPU_IO_MAP(theglobp_portmap)
     3419
     3420      MCFG_MACHINE_START_OVERRIDE(pacman_state,theglobp)
     3421      MCFG_MACHINE_RESET_OVERRIDE(pacman_state,theglobp)
     3422  MACHINE_CONFIG_END
     3423
     3424
     3425  static MACHINE_CONFIG_DERIVED( acitya, pacman )
     3426
     3427      /* basic machine hardware */
     3428      MCFG_CPU_MODIFY("maincpu")
     3429      MCFG_CPU_PROGRAM_MAP(epos_map)
     3430      MCFG_CPU_IO_MAP(acitya_portmap)
     3431
     3432      MCFG_MACHINE_START_OVERRIDE(pacman_state,acitya)
     3433      MCFG_MACHINE_RESET_OVERRIDE(pacman_state,acitya)
     3434  MACHINE_CONFIG_END
     3435
     3436
     3437  static MACHINE_CONFIG_DERIVED( vanvan, pacman )
     3438
     3439      /* basic machine hardware */
     3440      MCFG_CPU_MODIFY("maincpu")
     3441      MCFG_CPU_PROGRAM_MAP(dremshpr_map)
     3442      MCFG_CPU_IO_MAP(vanvan_portmap)
     3443      MCFG_CPU_VBLANK_INT_DRIVER("screen", pacman_state,  vblank_nmi)
     3444
     3445      /* video hardware */
     3446      MCFG_SCREEN_MODIFY("screen")
     3447      MCFG_SCREEN_VISIBLE_AREA(2*8, 34*8-1, 0*8, 28*8-1)
     3448
     3449      /* sound hardware */
     3450      MCFG_SOUND_REPLACE("namco", SN76496, 1789750)
     3451      MCFG_SOUND_CONFIG(psg_intf)
     3452      MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
     3453      MCFG_SOUND_ADD("sn2", SN76496, 1789750)
     3454      MCFG_SOUND_CONFIG(psg_intf)
     3455      MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
     3456  MACHINE_CONFIG_END
     3457
     3458
     3459  static MACHINE_CONFIG_DERIVED( bigbucks, pacman )
     3460
     3461      /* basic machine hardware */
     3462      MCFG_CPU_MODIFY("maincpu")
     3463      MCFG_CPU_PROGRAM_MAP(bigbucks_map)
     3464      MCFG_CPU_IO_MAP(bigbucks_portmap)
     3465      MCFG_CPU_PERIODIC_INT_DRIVER(pacman_state, vblank_irq, 20*60)
     3466
     3467      MCFG_SCREEN_MODIFY("screen")
     3468      MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
     3469  MACHINE_CONFIG_END
     3470
     3471
     3472  static MACHINE_CONFIG_DERIVED( s2650games, pacman )
     3473
     3474      /* basic machine hardware */
     3475      MCFG_DEVICE_REMOVE("maincpu")
     3476      MCFG_CPU_ADD("maincpu", S2650, MASTER_CLOCK/6/2)    /* 2H */
     3477      MCFG_CPU_PROGRAM_MAP(s2650games_map)
     3478      MCFG_CPU_VBLANK_INT_DRIVER("screen", pacman_state,  s2650_interrupt)
     3479
     3480      MCFG_GFXDECODE(s2650games)
     3481
     3482      MCFG_SCREEN_MODIFY("screen")
     3483      MCFG_SCREEN_SIZE(32*8, 32*8)
     3484      MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
     3485      MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
     3486      MCFG_SCREEN_UPDATE_DRIVER(pacman_state, screen_update_s2650games)
     3487
     3488      MCFG_VIDEO_START_OVERRIDE(pacman_state,s2650games)
     3489
     3490      /* sound hardware */
     3491      MCFG_SOUND_REPLACE("namco", SN76496, MASTER_CLOCK/6)    /* 1H */
     3492      MCFG_SOUND_CONFIG(psg_intf)
     3493      MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
     3494  MACHINE_CONFIG_END
     3495
     3496
     3497  static MACHINE_CONFIG_DERIVED( drivfrcp, s2650games )
     3498
     3499      /* basic machine hardware */
     3500      MCFG_CPU_MODIFY("maincpu")
     3501      MCFG_CPU_IO_MAP(drivfrcp_portmap)
     3502  MACHINE_CONFIG_END
     3503
     3504
     3505  static MACHINE_CONFIG_DERIVED( 8bpm, s2650games )
     3506
     3507      /* basic machine hardware */
     3508      MCFG_CPU_MODIFY("maincpu")
     3509      MCFG_CPU_IO_MAP(_8bpm_portmap)
     3510  MACHINE_CONFIG_END
     3511
     3512
     3513  static MACHINE_CONFIG_DERIVED( porky, s2650games )
     3514
     3515      /* basic machine hardware */
     3516      MCFG_CPU_MODIFY("maincpu")
     3517      MCFG_CPU_IO_MAP(porky_portmap)
     3518  MACHINE_CONFIG_END
     3519
     3520
     3521  static MACHINE_CONFIG_DERIVED( rocktrv2, pacman )
     3522
     3523      /* basic machine hardware */
     3524      MCFG_CPU_MODIFY("maincpu")
     3525      MCFG_CPU_PROGRAM_MAP(rocktrv2_map)
     3526      MCFG_CPU_VBLANK_INT_DRIVER("screen", pacman_state,  irq0_line_hold)
     3527
     3528      MCFG_SCREEN_MODIFY("screen")
     3529      MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
     3530  MACHINE_CONFIG_END
     3531
     3532
     3533  static MACHINE_CONFIG_DERIVED( mschamp, pacman )
     3534
     3535      /* basic machine hardware */
     3536      MCFG_CPU_MODIFY("maincpu")
     3537      MCFG_CPU_PROGRAM_MAP(mschamp_map)
     3538      MCFG_CPU_IO_MAP(mschamp_portmap)
     3539      MCFG_CPU_VBLANK_INT_DRIVER("screen", pacman_state,  vblank_irq)
     3540
     3541      MCFG_MACHINE_RESET_OVERRIDE(pacman_state,mschamp)
     3542  MACHINE_CONFIG_END
     3543
     3544
     3545  static MACHINE_CONFIG_DERIVED( superabc, pacman )
     3546
     3547      /* basic machine hardware */
     3548      MCFG_CPU_MODIFY("maincpu")
     3549      MCFG_CPU_PROGRAM_MAP(superabc_map)
     3550
     3551      MCFG_NVRAM_ADD_0FILL("28c16.u17")
     3552
     3553      MCFG_MACHINE_RESET_OVERRIDE(pacman_state,superabc)
     3554
     3555      /* video hardware */
     3556      MCFG_GFXDECODE(superabc)
     3557  MACHINE_CONFIG_END
     3558
     3559
     3560  static MACHINE_CONFIG_DERIVED( crush4, mschamp )
     3561
     3562      /* basic machine hardware */
     3563      MCFG_GFXDECODE(crush4)
     3564  MACHINE_CONFIG_END
     3565
     3566  static const ay8910_interface crushs_ay8910_interface =
     3567  {
     3568      AY8910_LEGACY_OUTPUT,
     3569      AY8910_DEFAULT_LOADS,
     3570      DEVCB_NULL,
     3571      DEVCB_NULL,
     3572      DEVCB_NULL,
     3573      DEVCB_NULL
     3574  };
     3575
     3576  static MACHINE_CONFIG_DERIVED( crushs, pacman )
     3577
     3578      /* basic machine hardware */
     3579
     3580      MCFG_CPU_MODIFY("maincpu")
     3581      MCFG_CPU_PROGRAM_MAP(crushs_map)
     3582      MCFG_CPU_IO_MAP(crushs_portmap)
     3583
     3584      /* sound hardware */
     3585      MCFG_SOUND_REPLACE("namco", AY8912, 1789750)
     3586      MCFG_SOUND_CONFIG(crushs_ay8910_interface)
     3587      MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
     3588  MACHINE_CONFIG_END
     3589
     3590
     3591
     3592  /*************************************
     3593   *
     3594   *  ROM definitions
     3595   *
     3596   *************************************/
     3597
     3598  ROM_START( puckman )
     3599      ROM_REGION( 0x10000, "maincpu", 0 )
     3600      ROM_LOAD( "namcopac.6e",  0x0000, 0x1000, CRC(fee263b3) SHA1(87117ba5082cd7a615b4ec7c02dd819003fbd669) )
     3601      ROM_LOAD( "namcopac.6f",  0x1000, 0x1000, CRC(39d1fc83) SHA1(326dbbf94c6fa2e96613dedb53702f8832b47d59) )
     3602      ROM_LOAD( "namcopac.6h",  0x2000, 0x1000, CRC(02083b03) SHA1(7e1945f6eb51f2e51806d0439f975f7a2889b9b8) )
     3603      ROM_LOAD( "namcopac.6j",  0x3000, 0x1000, CRC(7a36fe55) SHA1(01b4c38108d9dc4e48da4f8d685248e1e6821377) )
     3604
     3605      ROM_REGION( 0x2000, "gfx1", 0 )
     3606      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3607      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3608
     3609      ROM_REGION( 0x0120, "proms", 0 )
     3610      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3611      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3612
     3613      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3614      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3615      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3616  ROM_END
     3617
     3618
     3619  ROM_START( puckmanf )
     3620      ROM_REGION( 0x10000, "maincpu", 0 )
     3621      ROM_LOAD( "namcopac.6e",  0x0000, 0x1000, CRC(fee263b3) SHA1(87117ba5082cd7a615b4ec7c02dd819003fbd669) )
     3622      ROM_LOAD( "nampfast.6f",  0x1000, 0x1000, CRC(51b38db9) SHA1(0a796f93462aec4758c2aa1c1f34cd05bb10a178) )
     3623      ROM_LOAD( "namcopac.6h",  0x2000, 0x1000, CRC(02083b03) SHA1(7e1945f6eb51f2e51806d0439f975f7a2889b9b8) )
     3624      ROM_LOAD( "namcopac.6j",  0x3000, 0x1000, CRC(7a36fe55) SHA1(01b4c38108d9dc4e48da4f8d685248e1e6821377) )
     3625
     3626      ROM_REGION( 0x2000, "gfx1", 0 )
     3627      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3628      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3629
     3630      ROM_REGION( 0x0120, "proms", 0 )
     3631      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3632      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3633
     3634      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3635      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3636      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3637  ROM_END
     3638
     3639
     3640  ROM_START( puckmod )
     3641      ROM_REGION( 0x10000, "maincpu", 0 )
     3642      ROM_LOAD( "namcopac.6e",  0x0000, 0x1000, CRC(fee263b3) SHA1(87117ba5082cd7a615b4ec7c02dd819003fbd669) )
     3643      ROM_LOAD( "namcopac.6f",  0x1000, 0x1000, CRC(39d1fc83) SHA1(326dbbf94c6fa2e96613dedb53702f8832b47d59) )
     3644      ROM_LOAD( "namcopac.6h",  0x2000, 0x1000, CRC(02083b03) SHA1(7e1945f6eb51f2e51806d0439f975f7a2889b9b8) )
     3645      ROM_LOAD( "npacmod.6j",   0x3000, 0x1000, CRC(7d98d5f5) SHA1(39939bcd6fb785d0d06fd29f0287158ab1267dfc) )
     3646
     3647      ROM_REGION( 0x2000, "gfx1", 0 )
     3648      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3649      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3650
     3651      ROM_REGION( 0x0120, "proms", 0 )
     3652      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3653      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3654
     3655      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3656      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3657      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3658  ROM_END
     3659
     3660
     3661  ROM_START( puckmana )
     3662      ROM_REGION( 0x10000, "maincpu", 0 )
     3663      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     3664      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     3665      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     3666      ROM_LOAD( "prg7",         0x3000, 0x0800, CRC(b6289b26) SHA1(d249fa9cdde774d5fee7258147cd25fa3f4dc2b3) )
     3667      ROM_LOAD( "prg8",         0x3800, 0x0800, CRC(17a88c13) SHA1(eb462de79f49b7aa8adb0cc6d31535b10550c0ce) )
     3668
     3669      ROM_REGION( 0x2000, "gfx1", 0 )
     3670      ROM_LOAD( "chg1",         0x0000, 0x0800, CRC(2066a0b7) SHA1(6d4ccc27d6be185589e08aa9f18702b679e49a4a) )
     3671      ROM_LOAD( "chg2",         0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) )
     3672      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3673
     3674      ROM_REGION( 0x0120, "proms", 0 )
     3675      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3676      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3677
     3678      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3679      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3680      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3681  ROM_END
     3682
     3683
     3684  ROM_START( pacman )
     3685      ROM_REGION( 0x10000, "maincpu", 0 )
     3686      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     3687      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     3688      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     3689      ROM_LOAD( "pacman.6j",    0x3000, 0x1000, CRC(817d94e3) SHA1(d4a70d56bb01d27d094d73db8667ffb00ca69cb9) )
     3690
     3691      ROM_REGION( 0x2000, "gfx1", 0 )
     3692      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3693      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3694
     3695      ROM_REGION( 0x0120, "proms", 0 )
     3696      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3697      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3698
     3699      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3700      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3701      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3702  ROM_END
     3703
     3704
     3705  ROM_START( pacmanf )
     3706      ROM_REGION( 0x10000, "maincpu", 0 )
     3707      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     3708      ROM_LOAD( "pacfast.6f",   0x1000, 0x1000, CRC(720dc3ee) SHA1(7224d7acfa0144b681c71d7734a7337189835361) )
     3709      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     3710      ROM_LOAD( "pacman.6j",    0x3000, 0x1000, CRC(817d94e3) SHA1(d4a70d56bb01d27d094d73db8667ffb00ca69cb9) )
     3711
     3712      ROM_REGION( 0x2000, "gfx1", 0 )
     3713      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3714      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3715
     3716      ROM_REGION( 0x0120, "proms", 0 )
     3717      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3718      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3719
     3720      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3721      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3722      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3723  ROM_END
     3724
     3725
     3726  ROM_START( pacmod )
     3727      ROM_REGION( 0x10000, "maincpu", 0 )
     3728      ROM_LOAD( "pacmanh.6e",   0x0000, 0x1000, CRC(3b2ec270) SHA1(48fc607ad8d86249948aa377c677ae44bb8ad3da) )
     3729      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     3730      ROM_LOAD( "pacmanh.6h",   0x2000, 0x1000, CRC(18811780) SHA1(ab34acaa3dbcafe8b20c2197f36641e471984487) )
     3731      ROM_LOAD( "pacmanh.6j",   0x3000, 0x1000, CRC(5c96a733) SHA1(22ae15a6f088e7296f77c7487a350c4bd102f00e) )
     3732
     3733      ROM_REGION( 0x2000, "gfx1", 0 )
     3734      ROM_LOAD( "pacmanh.5e",   0x0000, 0x1000, CRC(299fb17a) SHA1(ad97adc2122482a9018bacd137df9d8f409ddf85) )
     3735      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3736
     3737      ROM_REGION( 0x0120, "proms", 0 )
     3738      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3739      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3740
     3741      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3742      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3743      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3744  ROM_END
     3745
     3746
     3747  ROM_START( hangly )
     3748      ROM_REGION( 0x10000, "maincpu", 0 )
     3749      ROM_LOAD( "hangly.6e",    0x0000, 0x1000, CRC(5fe8610a) SHA1(d63eaebd85e10aa6c27bb7f47642dd403eeb6934) )
     3750      ROM_LOAD( "hangly.6f",    0x1000, 0x1000, CRC(73726586) SHA1(cedddc5194589039dd8b64f07ab6320d7d4f55f9) )
     3751      ROM_LOAD( "hangly.6h",    0x2000, 0x1000, CRC(4e7ef99f) SHA1(bd42e68b29b4d654dc817782ba00db69b7d2dfe2) )
     3752      ROM_LOAD( "hangly.6j",    0x3000, 0x1000, CRC(7f4147e6) SHA1(0a7ac0e59d4d26fe52a2f4196c9f19e5ab677c87) )
     3753
     3754      ROM_REGION( 0x2000, "gfx1", 0 )
     3755      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3756      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3757
     3758      ROM_REGION( 0x0120, "proms", 0 )
     3759      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3760      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3761
     3762      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3763      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3764      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3765  ROM_END
     3766
     3767
     3768  ROM_START( hangly2 )
     3769      ROM_REGION( 0x10000, "maincpu", 0 )
     3770      ROM_LOAD( "hangly.6e",    0x0000, 0x1000, CRC(5fe8610a) SHA1(d63eaebd85e10aa6c27bb7f47642dd403eeb6934) )
     3771      ROM_LOAD( "hangly2.6f",   0x1000, 0x0800, CRC(5ba228bb) SHA1(b0e902cdf98bee72d6ec8069eec96adce3245074) )
     3772      ROM_LOAD( "hangly2.6m",   0x1800, 0x0800, CRC(baf5461e) SHA1(754586a6449fd54a342f260e572c1cd60ab70815) )
     3773      ROM_LOAD( "hangly.6h",    0x2000, 0x1000, CRC(4e7ef99f) SHA1(bd42e68b29b4d654dc817782ba00db69b7d2dfe2) )
     3774      ROM_LOAD( "hangly2.6j",   0x3000, 0x0800, CRC(51305374) SHA1(6197b606a0eedb11135d9f4f7a89aecc23fb2d33) )
     3775      ROM_LOAD( "hangly2.6p",   0x3800, 0x0800, CRC(427c9d4d) SHA1(917bc3d571cbdd24d88327ecabfb5b3f6d39af0a) )
     3776
     3777      ROM_REGION( 0x2000, "gfx1", 0 )
     3778      ROM_LOAD( "pacmanh.5e",   0x0000, 0x1000, CRC(299fb17a) SHA1(ad97adc2122482a9018bacd137df9d8f409ddf85) )
     3779      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3780
     3781      ROM_REGION( 0x0120, "proms", 0 )
     3782      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3783      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3784
     3785      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3786      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3787      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3788  ROM_END
     3789
     3790  ROM_START( hangly3 )
     3791      ROM_REGION( 0x10000, "maincpu", 0 )
     3792      ROM_LOAD( "hm1.6e",   0x0000, 0x0800, CRC(9d027c4a) SHA1(88e094880057451a75cdc2ce9477403021813982) )
     3793      ROM_LOAD( "hm5.6k",   0x0800, 0x0800, CRC(194c7189) SHA1(fd423bac2810015313841c7b935054565390fbd0) )
     3794      ROM_LOAD( "hangly2.6f",   0x1000, 0x0800, CRC(5ba228bb) SHA1(b0e902cdf98bee72d6ec8069eec96adce3245074) ) /* hm2.6f */
     3795      ROM_LOAD( "hangly2.6m",   0x1800, 0x0800, CRC(baf5461e) SHA1(754586a6449fd54a342f260e572c1cd60ab70815) ) /* hm6.6m */
     3796      ROM_LOAD( "hm3.6h",   0x2000, 0x0800, CRC(08419c4a) SHA1(7e5001adad401080c788737c1d2349f218750442) )
     3797      ROM_LOAD( "hm7.6n",   0x2800, 0x0800, CRC(ab74b51f) SHA1(1bce8933ed7807eb7aca9670df8994f8d1a8b5b7) )
     3798      ROM_LOAD( "hm4.6j",   0x3000, 0x0800, CRC(5039b082) SHA1(086a6ac4742734167d283b1121fce29d8ac4a6cd) )
     3799      ROM_LOAD( "hm8.6p",   0x3800, 0x0800, CRC(931770d7) SHA1(78fcf88e07ec5126c12c3297b62ca388809e947c) )
     3800
     3801      ROM_REGION( 0x2000, "gfx1", 0 )
     3802      ROM_LOAD( "hm9.5e",     0x0000, 0x0800, CRC(5f4be3cc) SHA1(eeb0e1e44549b99eab481d9ac016b4359e19fe30) )
     3803      ROM_LOAD( "hm11.5h",    0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) )
     3804      ROM_LOAD( "hm10.5f",    0x1000, 0x0800, CRC(9e39323a) SHA1(be933e691df4dbe7d12123913c3b7b7b585b7a35) )
     3805      ROM_LOAD( "hm12.5j",    0x1800, 0x0800, CRC(1b1d9096) SHA1(53771c573051db43e7185b1d188533056290a620) )
     3806
     3807      ROM_REGION( 0x0120, "proms", 0 )
     3808      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3809      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3810
     3811      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3812      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3813      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3814  ROM_END
     3815
     3816  ROM_START( popeyeman )
     3817      ROM_REGION( 0x10000, "maincpu", 0 )
     3818      ROM_LOAD( "pop1.6e",      0x0000, 0x0800, CRC(9d027c4a) SHA1(88e094880057451a75cdc2ce9477403021813982) )
     3819      ROM_LOAD( "pop5.6k",      0x0800, 0x0800, CRC(194c7189) SHA1(fd423bac2810015313841c7b935054565390fbd0) )
     3820      ROM_LOAD( "pop2.6f",      0x1000, 0x0800, CRC(5ba228bb) SHA1(b0e902cdf98bee72d6ec8069eec96adce3245074) )
     3821      ROM_LOAD( "pop6.6m",      0x1800, 0x0800, CRC(baf5461e) SHA1(754586a6449fd54a342f260e572c1cd60ab70815) )
     3822      ROM_LOAD( "pop3.6h",      0x2000, 0x0800, CRC(08419c4a) SHA1(7e5001adad401080c788737c1d2349f218750442) )
     3823      ROM_LOAD( "pop7.6n",      0x2800, 0x0800, CRC(ab74b51f) SHA1(1bce8933ed7807eb7aca9670df8994f8d1a8b5b7) )
     3824      ROM_LOAD( "pop4.6j",      0x3000, 0x0800, CRC(5039b082) SHA1(086a6ac4742734167d283b1121fce29d8ac4a6cd) )
     3825      ROM_LOAD( "pop8.6p",      0x3800, 0x0800, CRC(931770d7) SHA1(78fcf88e07ec5126c12c3297b62ca388809e947c) )
     3826
     3827      ROM_REGION( 0x2000, "gfx1", 0 )
     3828      ROM_LOAD( "pop9.5e",      0x0000, 0x0800, CRC(b569c4c1) SHA1(34a09bcb6eb08375cd5e9ce0aa66b23d60489f92) )
     3829      ROM_LOAD( "pop11.5h",     0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) )
     3830      ROM_LOAD( "pop10.5f",     0x1000, 0x0800, CRC(014fb5a4) SHA1(7779f0f0d11027adf3b9175af26d53f1e3a54f29) )
     3831      ROM_LOAD( "pop12.5j",     0x1800, 0x0800, CRC(21b91c64) SHA1(4818194ecc18b5df159f3799ea93c911fd4b9556) )
     3832
     3833      ROM_REGION( 0x0120, "proms", 0 )
     3834      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3835      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3836
     3837      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3838      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3839      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3840  ROM_END
     3841
     3842  ROM_START( crockman )
     3843      ROM_REGION( 0x10000, "maincpu", 0 )
     3844      ROM_LOAD( "p1.6e",        0x0000, 0x0800, CRC(2c0fa0ab) SHA1(37680e4502771ae69d51d07ce43f65b9b2dd2a49) )
     3845      ROM_LOAD( "p5.6k",        0x0800, 0x0800, CRC(afeca2f1) SHA1(1e6d6c75eeb3a354ce2dc88da62caf9e7d53d0cb) )
     3846      ROM_LOAD( "p2.6f",        0x1000, 0x0800, CRC(7d177853) SHA1(9b5ddaaa8b564654f97af193dbcc29f81f230a25) )
     3847      ROM_LOAD( "p6.6m",        0x1800, 0x0800, CRC(d3e8914c) SHA1(c2f00e1773c6864435f29c8b7f44f2ef85d227d3) )
     3848      ROM_LOAD( "p3.6h",        0x2000, 0x0800, CRC(9045a44c) SHA1(a97d7016effbd2ace9a7d92ceb04a6ce18fb42f9) )
     3849      ROM_LOAD( "p7.6n",        0x2800, 0x0800, CRC(93f344c5) SHA1(987c7fa18a774a47c045fa1dc7dff37457cb8983) )
     3850      ROM_LOAD( "p4.6j",        0x3000, 0x0800, CRC(bed4a077) SHA1(39ac1d4d2acf4752ff7f9839f8f0d1974e023fab) )
     3851      ROM_LOAD( "p8.6p",        0x3800, 0x0800, CRC(800be41e) SHA1(6f40e741d95c2cfe1b217f1061da3497b4c2a153) )
     3852
     3853      ROM_REGION( 0x2000, "gfx1", 0 )
     3854      ROM_LOAD( "p9.5e",        0x0000, 0x0800, CRC(a10218c4) SHA1(fa48f780ddbef37d0ef58f301c8783668843eab6) )
     3855      ROM_LOAD( "p11.5h",       0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) )
     3856      ROM_LOAD( "p10.5f",       0x1000, 0x0800, CRC(9e39323a) SHA1(be933e691df4dbe7d12123913c3b7b7b585b7a35) )
     3857      ROM_LOAD( "p12.5j",       0x1800, 0x0800, CRC(1b1d9096) SHA1(53771c573051db43e7185b1d188533056290a620) )
     3858
     3859      ROM_REGION( 0x0120, "proms", 0 )
     3860      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3861      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3862
     3863      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3864      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3865      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3866  ROM_END
     3867
     3868  ROM_START( puckmanh )
     3869      ROM_REGION( 0x10000, "maincpu", 0 )
     3870      ROM_LOAD( "pm01.6e",      0x0000, 0x1000, CRC(5fe8610a) SHA1(d63eaebd85e10aa6c27bb7f47642dd403eeb6934) )
     3871      ROM_LOAD( "pm02.6f",      0x1000, 0x1000, CRC(61d38c6c) SHA1(1406aacdc9c8a3776e5853d214380ad3124408f4) )
     3872      ROM_LOAD( "pm03.6h",      0x2000, 0x1000, CRC(4e7ef99f) SHA1(bd42e68b29b4d654dc817782ba00db69b7d2dfe2) )
     3873      ROM_LOAD( "pm04.6j",      0x3000, 0x1000, CRC(8939ddd2) SHA1(cf769bb34f711cfd0ee75328cd5dc07442f88607) )
     3874
     3875      ROM_REGION( 0x2000, "gfx1", 0 )
     3876      ROM_LOAD( "pm9.5e",       0x0000, 0x0800, CRC(2229ab07) SHA1(56000ed5009ae60c7f0498b5cac1b06da6ae270e) )
     3877      ROM_LOAD( "pm11.5h",      0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) )
     3878      ROM_LOAD( "pm10.5f",      0x1000, 0x0800, CRC(9e39323a) SHA1(be933e691df4dbe7d12123913c3b7b7b585b7a35) )
     3879      ROM_LOAD( "pm12.5j",      0x1800, 0x0800, CRC(1b1d9096) SHA1(53771c573051db43e7185b1d188533056290a620) )
     3880
     3881      ROM_REGION( 0x0120, "proms", 0 )
     3882      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3883      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3884
     3885      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3886      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3887      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3888  ROM_END
     3889
     3890
     3891  ROM_START( newpuckx )
     3892      ROM_REGION( 0x10000, "maincpu", 0 )
     3893      ROM_LOAD( "puckman.6e",   0x0000, 0x1000, CRC(a8ae23c5) SHA1(1481a4f083b563350744f9d25b1bcd28073875d6) )
     3894      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     3895      ROM_LOAD( "puckman.6h",   0x2000, 0x1000, CRC(197443f8) SHA1(119aab12a9e1052c7b9a1f81e563740b41429a8c) )
     3896      ROM_LOAD( "puckman.6j",   0x3000, 0x1000, CRC(2e64a3ba) SHA1(f86a921173f32211b18d023c2701664d13ae23be) )
     3897
     3898      ROM_REGION( 0x2000, "gfx1", 0 )
     3899      ROM_LOAD( "pacman.5e",    0x0000, 0x1000, CRC(0c944964) SHA1(06ef227747a440831c9a3a613b76693d52a2f0a9) )
     3900      ROM_LOAD( "pacman.5f",    0x1000, 0x1000, CRC(958fedf9) SHA1(4a937ac02216ea8c96477d4a15522070507fb599) )
     3901
     3902      ROM_REGION( 0x0120, "proms", 0 )
     3903      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3904      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3905
     3906      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3907      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3908      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     3909  ROM_END
     3910
     3911
     3912  ROM_START( pacheart )
     3913      ROM_REGION( 0x10000, "maincpu", 0 )
     3914      ROM_LOAD( "pacheart1.6e", 0x0000, 0x0800, CRC(d844b679) SHA1(c4486198b3126bb8e05a308c53787e51065f77ae) )
     3915      ROM_LOAD( "pacheart.pg2", 0x0800, 0x0800, CRC(b9152a38) SHA1(b6be2cb6bc7dd123503eb6bf1165dd1c99456813) )
     3916      ROM_LOAD( "pacheart2.6f", 0x1000, 0x0800, CRC(7d177853) SHA1(9b5ddaaa8b564654f97af193dbcc29f81f230a25) )
     3917      ROM_LOAD( "pacheart.pg4", 0x1800, 0x0800, CRC(842d6574) SHA1(40e32d09cc8d701eb318716493a68cf3f95d3d6d) )
     3918      ROM_LOAD( "pacheart3.6h", 0x2000, 0x0800, CRC(9045a44c) SHA1(a97d7016effbd2ace9a7d92ceb04a6ce18fb42f9) )
     3919      ROM_LOAD( "pacheart7.6n", 0x2800, 0x0800, CRC(888f3c3e) SHA1(c2b5917bf13071131dd53ea76f0da86706db2d80) )
     3920      ROM_LOAD( "pacheart.pg7", 0x3000, 0x0800, CRC(f5265c10) SHA1(9a320790d7a03fd6192a92d30b3e9c754bbc6a9d) )
     3921      ROM_LOAD( "pacheart.pg8", 0x3800, 0x0800, CRC(1a21a381) SHA1(d5367a327d19fb57ba5e484bd4fda1b10953c040) )
     3922
     3923      ROM_REGION( 0x2000, "gfx1", 0 )
     3924      ROM_LOAD( "pacheart.ch1", 0x0000, 0x0800, CRC(c62bbabf) SHA1(f6f28ae33c2ab274105283b22b49ad243780a95e) )
     3925      ROM_LOAD( "chg2",         0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) )
     3926      ROM_LOAD( "pacheart.ch3", 0x1000, 0x0800, CRC(ca8c184c) SHA1(833aa845824ed80777b62f03df36a920ad7c3656) )
     3927      ROM_LOAD( "pacheart.ch4", 0x1800, 0x0800, CRC(1b1d9096) SHA1(53771c573051db43e7185b1d188533056290a620) )
     3928
     3929      ROM_REGION( 0x0120, "proms", 0 )
     3930      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3931      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3932
     3933      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3934      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3935      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     3936  ROM_END
     3937
     3938  ROM_START( bucaner )
     3939      ROM_REGION( 0x10000, "maincpu", 0 )
     3940      ROM_LOAD( "buc1.6e",      0x0000, 0x0800, CRC(2c0fa0ab) SHA1(37680e4502771ae69d51d07ce43f65b9b2dd2a49) )
     3941      ROM_LOAD( "buc5.6k",      0x0800, 0x0800, CRC(afeca2f1) SHA1(1e6d6c75eeb3a354ce2dc88da62caf9e7d53d0cb) )
     3942      ROM_LOAD( "buc2.6f",      0x1000, 0x0800, CRC(6b53ada9) SHA1(a905688b389bfbc6792965d8f3d5bb1b9f0f4ec6) )
     3943      ROM_LOAD( "buc6.6m",      0x1800, 0x0800, CRC(35f3ca84) SHA1(3da7336caa0742ea79f1e0e8f6b80f8560507a33) )
     3944      ROM_LOAD( "buc3.6h",      0x2000, 0x0800, CRC(9045a44c) SHA1(a97d7016effbd2ace9a7d92ceb04a6ce18fb42f9) )
     3945      ROM_LOAD( "buc7.6n",      0x2800, 0x0800, CRC(888f3c3e) SHA1(c2b5917bf13071131dd53ea76f0da86706db2d80) )
     3946      ROM_LOAD( "buc4.6j",      0x3000, 0x0800, CRC(292de161) SHA1(09b439c301d7bedb76c1590e937e9d8d5e24a048) )
     3947      ROM_LOAD( "buc8.6p",      0x3800, 0x0800, CRC(884af858) SHA1(bad8b0dfdaf221dff0f84928f20873b01a168be5) )
     3948
     3949      ROM_REGION( 0x2000, "gfx1", 0 )
     3950      ROM_LOAD( "buc9.5e",      0x0000, 0x0800, CRC(4060c077) SHA1(78d4aa5243246f73533fc0886438dc1fa6f7ebe5) )
     3951      ROM_LOAD( "buc11.5h",     0x0800, 0x0800, CRC(e3861283) SHA1(61cf8ed24902910e98438d9e2e2745f226ad2a13) )
     3952      ROM_LOAD( "buc10.5f",     0x1000, 0x0800, CRC(09f66dec) SHA1(2d3649341fed19bac15ec274f7d747de46a3edb2) )
     3953      ROM_LOAD( "buc12.5j",     0x1800, 0x0800, CRC(653314e7) SHA1(c466a421917b3502e9115ebda1b2d11f7f586de8) )
     3954
     3955      ROM_REGION( 0x0120, "proms", 0 )
     3956      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3957      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3958
     3959      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3960      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3961      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     3962  ROM_END
     3963
     3964  ROM_START( joyman )
     3965      ROM_REGION( 0x10000, "maincpu", 0 )
     3966      ROM_LOAD( "joy1.6e",      0x0000, 0x0800, CRC(d844b679) SHA1(c4486198b3126bb8e05a308c53787e51065f77ae) )
     3967      ROM_LOAD( "joy5.6k",      0x0800, 0x0800, CRC(ab9c8f29) SHA1(3753b8609c30d85d89acf745cf9303b77be440fd) )
     3968      ROM_LOAD( "joy2.6f",      0x1000, 0x0800, CRC(7d177853) SHA1(9b5ddaaa8b564654f97af193dbcc29f81f230a25) )
     3969      ROM_LOAD( "joy6.6m",      0x1800, 0x0800, CRC(b3c8d32e) SHA1(8b336fca1300820308cd5c4efc60bf2ba4199302) )
     3970      ROM_LOAD( "joy3.6h",      0x2000, 0x0800, CRC(9045a44c) SHA1(a97d7016effbd2ace9a7d92ceb04a6ce18fb42f9) )
     3971      ROM_LOAD( "joy7.6n",      0x2800, 0x0800, CRC(888f3c3e) SHA1(c2b5917bf13071131dd53ea76f0da86706db2d80) )
     3972      ROM_LOAD( "joy4.6j",      0x3000, 0x0800, CRC(00b553f8) SHA1(57f2e4a6da9f00935fead447b2123a8b95e5d672) )
     3973      ROM_LOAD( "joy8.6p",      0x3800, 0x0800, CRC(5d5ce992) SHA1(ced7ed39cfc7ec7b2c0459e275577976109ee82f) )
     3974
     3975      ROM_REGION( 0x2000, "gfx1", 0 )
     3976      ROM_LOAD( "joy9.5e",      0x0000, 0x0800, CRC(39b557bc) SHA1(0f602ec84cb25fced89699e430b95b5ae93c83bd) )
     3977      ROM_LOAD( "joy11.5h",     0x0800, 0x0800, CRC(33e0289e) SHA1(c1b910bdc61e560a8c34298deb11401f718e7330) )
     3978      ROM_LOAD( "joy10.5f",     0x1000, 0x0800, CRC(338771a6) SHA1(7cd68cc428986255d0de29aae894900519e7fda5) )
     3979      ROM_LOAD( "joy12.5j",     0x1800, 0x0800, CRC(f4f0add5) SHA1(d71c54ef55a755ec1316623d183b4f615ef7c055) )
     3980
     3981      ROM_REGION( 0x0120, "proms", 0 )
     3982      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     3983      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     3984
     3985      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     3986      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     3987      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     3988  ROM_END
     3989
     3990
     3991  ROM_START( piranha )
     3992      ROM_REGION( 0x10000, "maincpu",0 )
     3993      ROM_LOAD( "pir1.bin", 0x0000, 0x0800, CRC(69a3e6ea) SHA1(c54e5d039a03d3cbee7a5e21bf1e23f4fd913ea6) )
     3994      ROM_LOAD( "pir5.bin", 0x0800, 0x0800, CRC(245e753f) SHA1(4c1183b8449e4e7995f81079953fe0e251251c60) )
     3995      ROM_LOAD( "pir2.bin", 0x1000, 0x0800, CRC(62cb6954) SHA1(0e01c8463b130ab5518ce23368ad028c86cd0a32) )
     3996      ROM_LOAD( "pir6.bin", 0x1800, 0x0800, CRC(cb0700bc) SHA1(1f5e91791ea25eb58d26b9627e98e0b6c1d9becf) )
     3997      ROM_LOAD( "pir3.bin", 0x2000, 0x0800, CRC(843fbfe5) SHA1(6671a3c55ef70447f2a127438e0c39857f8bf6b1) )
     3998      ROM_LOAD( "pir7.bin", 0x2800, 0x0800, CRC(73084d5e) SHA1(cb04a4c9dbf1672ddf478d2fe92b0ffd0159bb9e) )
     3999      ROM_LOAD( "pir4.bin", 0x3000, 0x0800, CRC(4cdf6704) SHA1(97af8bbd08896dffd73e359ec46843dd673c4c9c) )
     4000      ROM_LOAD( "pir8.bin", 0x3800, 0x0800, CRC(b86fedb3) SHA1(f5eaf7ccc1ecaa2417bcc077561efca8e7cb691a) )
     4001
     4002      ROM_REGION( 0x2000, "gfx1" , 0)
     4003      ROM_LOAD( "pir9.bin",  0x0000, 0x0800, CRC(0f19eb28) SHA1(0335189a06be01b97ca376d3682ed54df9b121e8) )
     4004      ROM_LOAD( "pir11.bin", 0x0800, 0x0800, CRC(5f8bdabe) SHA1(eb6a0515a381a885b087d165aaefb0277a223715) )
     4005      ROM_LOAD( "pir10.bin", 0x1000, 0x0800, CRC(d19399fb) SHA1(c0a75a08f77adb9d0010511c4b6ea99324c33c50) )
     4006      ROM_LOAD( "pir12.bin", 0x1800, 0x0800, CRC(cfb4403d) SHA1(1642a4917be0621ebf5f705c7f68a2b75d1c78d3) )
     4007
     4008      ROM_REGION( 0x0120, "proms", 0 )
     4009      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4010      ROM_LOAD( "piranha.4a", 0x0020, 0x0100, CRC(08c9447b) SHA1(5e4fbfcc7179fc4b1436af9bb709ffc381479315) )
     4011
     4012      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     4013      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4014      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     4015  ROM_END
     4016
     4017  ROM_START( piranhao )
     4018      ROM_REGION( 0x10000, "maincpu",0 )
     4019      ROM_LOAD( "p1.bin", 0x0000, 0x0800, CRC(c6ce1bfc) SHA1(da145d67331cee292654a185fb09e773dd9d40cd) )
     4020      ROM_LOAD( "p5.bin", 0x0800, 0x0800, CRC(a2655a33) SHA1(2253dcf5c8cbe278118aa1569cf456b13d8cf029) )
     4021      ROM_LOAD( "pir2.bin", 0x1000, 0x0800, CRC(62cb6954) SHA1(0e01c8463b130ab5518ce23368ad028c86cd0a32) )
     4022      ROM_LOAD( "pir6.bin", 0x1800, 0x0800, CRC(cb0700bc) SHA1(1f5e91791ea25eb58d26b9627e98e0b6c1d9becf) )
     4023      ROM_LOAD( "pir3.bin", 0x2000, 0x0800, CRC(843fbfe5) SHA1(6671a3c55ef70447f2a127438e0c39857f8bf6b1) )
     4024      ROM_LOAD( "pir7.bin", 0x2800, 0x0800, CRC(73084d5e) SHA1(cb04a4c9dbf1672ddf478d2fe92b0ffd0159bb9e) )
     4025      ROM_LOAD( "p4.bin", 0x3000, 0x0800, CRC(9363a4d1) SHA1(4cb4a86d92a1f9bf233cac01aa266485a8bb7a34) )
     4026      ROM_LOAD( "p8.bin", 0x3800, 0x0800, CRC(2769979c) SHA1(581592da26199b325de51791ddab66b474ab0413) )
     4027
     4028      ROM_REGION( 0x2000, "gfx1" , 0 )
     4029      ROM_LOAD( "p9.bin",  0x0000, 0x0800, CRC(94eb7563) SHA1(c99741ce1aebdfb89628fbfaecf5ae6b2719a0ca) )
     4030      ROM_LOAD( "p11.bin", 0x0800, 0x0800, CRC(a3606973) SHA1(72297e1a33102c6a48b4c65f2a0b9bfc75a2df36) )
     4031      ROM_LOAD( "p10.bin", 0x1000, 0x0800, CRC(84165a2c) SHA1(95b24620fbf9bd0ec4dd2aeeb6d9305bd475dce2) )
     4032      ROM_LOAD( "p12.bin", 0x1800, 0x0800, CRC(2699ba9e) SHA1(b91ff586defe65b200bea5ade7374c2c7579cd80) )
     4033
     4034      ROM_REGION( 0x0120, "proms", 0 )
     4035      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4036      ROM_LOAD( "piranha.4a", 0x0020, 0x0100, CRC(08c9447b) SHA1(5e4fbfcc7179fc4b1436af9bb709ffc381479315) )
     4037
     4038      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     4039      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4040      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     4041  ROM_END
     4042
     4043  ROM_START( piranhah )
     4044      ROM_REGION( 0x10000, "maincpu", 0 )
     4045      ROM_LOAD( "pr1.cpu",      0x0000, 0x1000, CRC(bc5ad024) SHA1(a3ed781b514a1068b24a7146a28f0a2adfaa2719) )
     4046      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     4047      ROM_LOAD( "pr3.cpu",      0x2000, 0x1000, CRC(473c379d) SHA1(6e7985367c3e544b4cb98ba8291908df88eafe7f) )
     4048      ROM_LOAD( "pr4.cpu",      0x3000, 0x1000, CRC(63fbf895) SHA1(d328bf3b8f307fb774614834edec211117148e64) )
     4049
     4050      ROM_REGION( 0x2000, "gfx1", 0 )
     4051      ROM_LOAD( "pr5.cpu",      0x0000, 0x0800, CRC(3fc4030c) SHA1(5e45f0c19cf96daa17afd2fa1c628d7ac7f4a79c) )
     4052      ROM_LOAD( "pr7.cpu",      0x0800, 0x0800, CRC(30b9a010) SHA1(b0ba8b6cd430feb32d11d092e1959b9f5d240f1b) )
     4053      ROM_LOAD( "pr6.cpu",      0x1000, 0x0800, CRC(f3e9c9d5) SHA1(709a75b2457f21f0f1a3d9e7f4c8579468ee5cad) )
     4054      ROM_LOAD( "pr8.cpu",      0x1800, 0x0800, CRC(133d720d) SHA1(8af75ed9e115a996379acedd44d0c09332ec5a03) )
     4055
     4056      ROM_REGION( 0x0120, "proms", 0 )
     4057      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4058      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4059
     4060      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4061      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4062      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4063  ROM_END
     4064
     4065  ROM_START( abscam )
     4066      ROM_REGION( 0x10000, "maincpu",0 )
     4067      ROM_LOAD( "as0.bin", 0x0000, 0x0800, CRC(0b102302) SHA1(97f6399182db4f84efe482bf3a710aa45ca104ec) )
     4068      ROM_LOAD( "as4.bin", 0x0800, 0x0800, CRC(3116a8ec) SHA1(259169bcc8fbe9fc73ca5100c3835a233351f530) )
     4069      ROM_LOAD( "as1.bin", 0x1000, 0x0800, CRC(bc0281e0) SHA1(bcc6d63ede728d9b29f903489bfa80d94ec5cc00) )
     4070      ROM_LOAD( "as5.bin", 0x1800, 0x0800, CRC(428ee2e8) SHA1(1477d1a86b32483ac0fdeea93512f517c9f66ce2) )
     4071      ROM_LOAD( "as2.bin", 0x2000, 0x0800, CRC(e05d46ad) SHA1(87da57dbbe6ab5e1dd005fd68a982f1df917459c) )
     4072      ROM_LOAD( "as6.bin", 0x2800, 0x0800, CRC(3ae9a8cb) SHA1(72896ad32cbdde90793788182958a943e35672f9) )
     4073      ROM_LOAD( "as3.bin", 0x3000, 0x0800, CRC(b39eb940) SHA1(e144a1553c76ddee1c22ad1ed0cca241c2d03998) )
     4074      ROM_LOAD( "as7.bin", 0x3800, 0x0800, CRC(16cf1c67) SHA1(0015fe64d476de87f1a030e7f2e735380dfcfd41) )
     4075
     4076      ROM_REGION( 0x2000, "gfx1" , 0)
     4077      ROM_LOAD( "as8.bin",  0x0000, 0x0800, CRC(61daabe5) SHA1(00503916d1d1011afe68898e3416718c0e63a298) )
     4078      ROM_LOAD( "as10.bin", 0x0800, 0x0800, CRC(81d50c98) SHA1(6b61c666f68b5948e4facb8bac1378f986f993a7) )
     4079      ROM_LOAD( "as9.bin", 0x1000, 0x0800, CRC(a3bd1613) SHA1(c59bb0a4d1fa5cbe596f41ee7b1a4a661ab5614b) )
     4080      ROM_LOAD( "as11.bin", 0x1800, 0x0800, CRC(9d802b68) SHA1(4e8f37c2faedcfce91221a34c14f6490d578c80a) )
     4081
     4082      ROM_REGION( 0x0120, "proms", 0 )
     4083      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4084      ROM_LOAD( "as4a.bin", 0x0020, 0x0100, CRC(1605b324) SHA1(336fce22caedbe69bcba9cea2b43e00f6f8e8067) )
     4085
     4086      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     4087      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4088      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     4089  ROM_END
     4090
     4091
     4092  ROM_START( ctrpllrp )
     4093      ROM_REGION( 0x10000, "maincpu",0 )
     4094      ROM_LOAD( "c1.bin", 0x0000, 0x0800, CRC(9d027c4a) SHA1(88e094880057451a75cdc2ce9477403021813982) )
     4095      ROM_LOAD( "c5.bin", 0x0800, 0x0800, CRC(f39846d3) SHA1(bc1137a45898210523cf8da1e6a2425e7c322884) )
     4096      ROM_LOAD( "c2.bin", 0x1000, 0x0800, CRC(afa149a8) SHA1(207b842854ac9e015e12a2dae41105438cda1df9) )
     4097      ROM_LOAD( "c6.bin", 0x1800, 0x0800, CRC(baf5461e) SHA1(754586a6449fd54a342f260e572c1cd60ab70815) )
     4098      ROM_LOAD( "c3.bin", 0x2000, 0x0800, CRC(6bb282a1) SHA1(a96f25dc0f49ebe7e528e3297a112d778c6c3030) )
     4099      ROM_LOAD( "c7.bin", 0x2800, 0x0800, CRC(fa2140f5) SHA1(123d31e653e8af78c6153702eca2e136c427ed64) )
     4100      ROM_LOAD( "c4.bin", 0x3000, 0x0800, CRC(86c91e0e) SHA1(52af6a3af5b1363859f790470ca5860ef2a08566) )
     4101      ROM_LOAD( "c8.bin", 0x3800, 0x0800, CRC(3d28134e) SHA1(45a257a0aca74e2ab36dd70097220d8be29cc87b) )
     4102
     4103      ROM_REGION( 0x2000, "gfx1" , 0)
     4104      ROM_LOAD( "c9.bin", 0x0000, 0x0800, CRC(1c4617be) SHA1(2b2b10f1256b4612e3e01ed1c8e2d7ccb6989f5d) )
     4105      ROM_LOAD( "c11.bin", 0x0800, 0x0800, CRC(46f72fef) SHA1(daf334c78fdb73d43d524b733b763b290c602ae2) )
     4106      ROM_LOAD( "c10.bin", 0x1000, 0x0800, CRC(ba9ec199) SHA1(626ab2eedf4c8d307dfad3b8863a67f8c34dda97) )
     4107      ROM_LOAD( "c12.bin", 0x1800, 0x0800, CRC(41c09655) SHA1(cc639e660443b9dcb33f9aefe9af5d332591c466) )
     4108
     4109      ROM_REGION( 0x0120, "proms", 0 )
     4110      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4111      ROM_LOAD( "82s126.4a", 0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4112
     4113      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     4114      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4115      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     4116  ROM_END
     4117
     4118
     4119  ROM_START( pacplus )
     4120      ROM_REGION( 0x10000, "maincpu", 0 )
     4121      ROM_LOAD( "pacplus.6e",   0x0000, 0x1000, CRC(d611ef68) SHA1(8531c54ca6b0de0ea4ccc34e0e801ba9847e75bc) )
     4122      ROM_LOAD( "pacplus.6f",   0x1000, 0x1000, CRC(c7207556) SHA1(8ba97215bdb75f0e70eb8d3223847efe4dc4fb48) )
     4123      ROM_LOAD( "pacplus.6h",   0x2000, 0x1000, CRC(ae379430) SHA1(4e8613d51a80cf106f883db79685e1e22541da45) )
     4124      ROM_LOAD( "pacplus.6j",   0x3000, 0x1000, CRC(5a6dff7b) SHA1(b956ae5d66683aab74b90469ad36b5bb361d677e) )
     4125
     4126      ROM_REGION( 0x2000, "gfx1", 0 )
     4127      ROM_LOAD( "pacplus.5e",   0x0000, 0x1000, CRC(022c35da) SHA1(57d7d723c7b029e3415801f4ce83469ec97bb8a1) )
     4128      ROM_LOAD( "pacplus.5f",   0x1000, 0x1000, CRC(4de65cdd) SHA1(9c0699204484be819b77f0b212c792fe9e9fae5d) )
     4129
     4130      ROM_REGION( 0x0120, "proms", 0 )
     4131      ROM_LOAD( "pacplus.7f",   0x0000, 0x0020, CRC(063dd53a) SHA1(2e43b46ec3b101d1babab87cdaddfa944116ec06) )
     4132      ROM_LOAD( "pacplus.4a",   0x0020, 0x0100, CRC(e271a166) SHA1(cf006536215a7a1d488eebc1d8a2e2a8134ce1a6) )
     4133
     4134      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4135      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4136      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4137  ROM_END
     4138
     4139
     4140  ROM_START( mspacman )
     4141      ROM_REGION( 0x20000, "maincpu", 0 ) /* 64k for code+64k for decrypted code */
     4142      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     4143      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     4144      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     4145      ROM_LOAD( "pacman.6j",    0x3000, 0x1000, CRC(817d94e3) SHA1(d4a70d56bb01d27d094d73db8667ffb00ca69cb9) )
     4146      ROM_LOAD( "u5",           0x8000, 0x0800, CRC(f45fbbcd) SHA1(b26cc1c8ee18e9b1daa97956d2159b954703a0ec) )
     4147      ROM_LOAD( "u6",           0x9000, 0x1000, CRC(a90e7000) SHA1(e4df96f1db753533f7d770aa62ae1973349ea4cf) )
     4148      ROM_LOAD( "u7",           0xb000, 0x1000, CRC(c82cd714) SHA1(1d8ac7ad03db2dc4c8c18ade466e12032673f874) )
     4149
     4150      ROM_REGION( 0x2000, "gfx1", 0 )
     4151      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4152      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4153
     4154      ROM_REGION( 0x0120, "proms", 0 )
     4155      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4156      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4157
     4158      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4159      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4160      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4161  ROM_END
     4162
     4163
     4164  ROM_START( mspacmnf )
     4165      ROM_REGION( 0x20000, "maincpu", 0 ) /* 64k for code+64k for decrypted code */
     4166      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     4167      ROM_LOAD( "pacfast.6f",   0x1000, 0x1000, CRC(720dc3ee) SHA1(7224d7acfa0144b681c71d7734a7337189835361) )
     4168      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     4169      ROM_LOAD( "pacman.6j",    0x3000, 0x1000, CRC(817d94e3) SHA1(d4a70d56bb01d27d094d73db8667ffb00ca69cb9) )
     4170      ROM_LOAD( "u5",           0x8000, 0x0800, CRC(f45fbbcd) SHA1(b26cc1c8ee18e9b1daa97956d2159b954703a0ec) )
     4171      ROM_LOAD( "u6",           0x9000, 0x1000, CRC(a90e7000) SHA1(e4df96f1db753533f7d770aa62ae1973349ea4cf) )
     4172      ROM_LOAD( "u7",           0xb000, 0x1000, CRC(c82cd714) SHA1(1d8ac7ad03db2dc4c8c18ade466e12032673f874) )
     4173
     4174      ROM_REGION( 0x2000, "gfx1", 0 )
     4175      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4176      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4177
     4178      ROM_REGION( 0x0120, "proms", 0 )
     4179      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4180      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4181
     4182      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4183      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4184      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4185  ROM_END
     4186
     4187
     4188  ROM_START( mspacmab )
     4189      ROM_REGION( 0x10000, "maincpu", 0 )
     4190      ROM_LOAD( "boot1",        0x0000, 0x1000, CRC(d16b31b7) SHA1(bc2247ec946b639dd1f00bfc603fa157d0baaa97) )
     4191      ROM_LOAD( "boot2",        0x1000, 0x1000, CRC(0d32de5e) SHA1(13ea0c343de072508908be885e6a2a217bbb3047) )
     4192      ROM_LOAD( "boot3",        0x2000, 0x1000, CRC(1821ee0b) SHA1(5ea4d907dbb2690698db72c4e0b5be4d3e9a7786) )
     4193      ROM_LOAD( "boot4",        0x3000, 0x1000, CRC(165a9dd8) SHA1(3022a408118fa7420060e32a760aeef15b8a96cf) )
     4194      ROM_LOAD( "boot5",        0x8000, 0x1000, CRC(8c3e6de6) SHA1(fed6e9a2b210b07e7189a18574f6b8c4ec5bb49b) )
     4195      ROM_LOAD( "boot6",        0x9000, 0x1000, CRC(368cb165) SHA1(387010a0c76319a1eab61b54c9bcb5c66c4b67a1) )
     4196
     4197      ROM_REGION( 0x2000, "gfx1", 0 )
     4198      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4199      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4200
     4201      ROM_REGION( 0x0120, "proms", 0 )
     4202      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4203      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4204
     4205      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4206      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4207      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4208  ROM_END
     4209
     4210
     4211  ROM_START( mspacmbe )
     4212      ROM_REGION( 0x10000, "maincpu", 0 )
     4213      ROM_LOAD( "boot1",        0x0000, 0x1000, CRC(d16b31b7) SHA1(bc2247ec946b639dd1f00bfc603fa157d0baaa97) )
     4214      ROM_LOAD( "2.bin",        0x1000, 0x1000, CRC(04e6c486) SHA1(63aa3e6c49d345cccfe87dd3fdcddc75ab4a570d) )
     4215      ROM_LOAD( "boot3",        0x2000, 0x1000, CRC(1821ee0b) SHA1(5ea4d907dbb2690698db72c4e0b5be4d3e9a7786) )
     4216      ROM_LOAD( "boot4",        0x3000, 0x1000, CRC(165a9dd8) SHA1(3022a408118fa7420060e32a760aeef15b8a96cf) )
     4217      ROM_LOAD( "boot5",        0x8000, 0x1000, CRC(8c3e6de6) SHA1(fed6e9a2b210b07e7189a18574f6b8c4ec5bb49b) )
     4218      ROM_LOAD( "6.bin",        0x9000, 0x1000, CRC(206a9623) SHA1(20006f945c1b7b0e3c0415eecc0b148e5a6a1dfa) )
     4219
     4220      ROM_REGION( 0x2000, "gfx1", 0 )
     4221      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4222      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4223
     4224      ROM_REGION( 0x0120, "proms", 0 )
     4225      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4226      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4227
     4228      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4229      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4230      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4231  ROM_END
     4232
     4233
     4234  ROM_START( mspacii )
     4235      ROM_REGION( 0x10000, "maincpu", 0 )
     4236      ROM_LOAD( "p3.6e",        0x0000, 0x1000, CRC(df673b57) SHA1(93ee4e8f9751db5f7d3c35988fcb8ae8037464ed) )
     4237      ROM_LOAD( "p4.6f",        0x1000, 0x1000, CRC(7591f606) SHA1(0aead0ac5af602269df8732c5763147cdb543b8d) )
     4238      ROM_LOAD( "p5.6h",        0x2000, 0x1000, CRC(c8ef1a7f) SHA1(0c9a28bbe63d7d44511a13316937a21b8846543e) )
     4239      ROM_LOAD( "p6.6j",        0x3000, 0x1000, CRC(d498f435) SHA1(c041841b1349d8d5c2d560aed54c4aeb8adfddb8) )
     4240      ROM_LOAD( "p7.s1",        0x8000, 0x1000, CRC(fbbc3d2e) SHA1(dc4337d7f0961e048a433021f670da6d314bd663) )
     4241      ROM_LOAD( "p8.s2",        0x9000, 0x1000, CRC(aba3096d) SHA1(661e28785931fa329c2ebdc95d78072a42c512ff) )
     4242
     4243      ROM_REGION( 0x2000, "gfx1", 0 )
     4244      ROM_LOAD( "p1.5e",        0x0000, 0x1000, CRC(04333722) SHA1(bb179d5302b26b815b5d7eff14865e7b4f8a6880) )
     4245      ROM_LOAD( "p2.5f",        0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4246
     4247      ROM_REGION( 0x0120, "proms", 0 )
     4248      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4249      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4250
     4251      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4252      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4253      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4254  ROM_END
     4255
     4256
     4257  ROM_START( mspacii2 )
     4258      ROM_REGION( 0x10000, "maincpu", 0 )
     4259      ROM_LOAD( "p3.bin",       0x0000, 0x1000, CRC(df673b57) SHA1(93ee4e8f9751db5f7d3c35988fcb8ae8037464ed) )
     4260      ROM_LOAD( "p4.bin",       0x1000, 0x1000, CRC(7591f606) SHA1(0aead0ac5af602269df8732c5763147cdb543b8d) )
     4261      ROM_LOAD( "p5.bin",       0x2000, 0x1000, CRC(c8ef1a7f) SHA1(0c9a28bbe63d7d44511a13316937a21b8846543e) )
     4262      ROM_LOAD( "p6.bin",       0x3000, 0x1000, CRC(d498f435) SHA1(c041841b1349d8d5c2d560aed54c4aeb8adfddb8) )
     4263      ROM_LOAD( "p2.bin",       0x8000, 0x1000, CRC(fbbc3d2e) SHA1(dc4337d7f0961e048a433021f670da6d314bd663) )
     4264      ROM_LOAD( "p1.bin",       0x9000, 0x1000, CRC(aa3887c5) SHA1(0e20cb686383156a9883749568c8e57c15c3ae44) )
     4265
     4266      ROM_REGION( 0x2000, "gfx1", 0 )
     4267      ROM_LOAD( "p7.bin",       0x0000, 0x1000, CRC(04333722) SHA1(bb179d5302b26b815b5d7eff14865e7b4f8a6880) )
     4268      ROM_LOAD( "p8.bin",       0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4269
     4270      ROM_REGION( 0x0120, "proms", 0 )
     4271      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4272      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4273
     4274      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4275      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4276      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4277  ROM_END
     4278
     4279
     4280  ROM_START( mspacmat )
     4281      ROM_REGION( 0x20000, "maincpu", 0 ) /* 64k for code+64k for decrypted code */
     4282      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     4283      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     4284      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     4285      ROM_LOAD( "pacman.6j",    0x3000, 0x1000, CRC(817d94e3) SHA1(d4a70d56bb01d27d094d73db8667ffb00ca69cb9) )
     4286      ROM_LOAD( "u5",           0x8000, 0x0800, CRC(f45fbbcd) SHA1(b26cc1c8ee18e9b1daa97956d2159b954703a0ec) )
     4287      ROM_LOAD( "u6pacatk",     0x9000, 0x1000, CRC(f6d83f4d) SHA1(6135b187d6b968554d08f2ac00d3a3313efb8638) )
     4288      ROM_LOAD( "u7",           0xb000, 0x1000, CRC(c82cd714) SHA1(1d8ac7ad03db2dc4c8c18ade466e12032673f874) )
     4289
     4290      ROM_REGION( 0x2000, "gfx1", 0 )
     4291      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4292      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4293
     4294      ROM_REGION( 0x0120, "proms", 0 )
     4295      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4296      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4297
     4298      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4299      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4300      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4301  ROM_END
     4302
     4303
     4304  // a graphics-only hack for Ms. Pac-Man that was sold as romkit by Two-Bit Score back in 1989
     4305  ROM_START( msheartb )
     4306      ROM_REGION( 0x20000, "maincpu", 0 ) /* 64k for code+64k for decrypted code */
     4307      ROM_LOAD( "pacman.6e",    0x0000, 0x1000, CRC(c1e6ab10) SHA1(e87e059c5be45753f7e9f33dff851f16d6751181) )
     4308      ROM_LOAD( "pacman.6f",    0x1000, 0x1000, CRC(1a6fb2d4) SHA1(674d3a7f00d8be5e38b1fdc208ebef5a92d38329) )
     4309      ROM_LOAD( "pacman.6h",    0x2000, 0x1000, CRC(bcdd1beb) SHA1(8e47e8c2c4d6117d174cdac150392042d3e0a881) )
     4310      ROM_LOAD( "pacman.6j",    0x3000, 0x1000, CRC(817d94e3) SHA1(d4a70d56bb01d27d094d73db8667ffb00ca69cb9) )
     4311      ROM_LOAD( "u5",           0x8000, 0x0800, CRC(f45fbbcd) SHA1(b26cc1c8ee18e9b1daa97956d2159b954703a0ec) )
     4312      ROM_LOAD( "u6",           0x9000, 0x1000, CRC(a90e7000) SHA1(e4df96f1db753533f7d770aa62ae1973349ea4cf) )
     4313      ROM_LOAD( "u7",           0xb000, 0x1000, CRC(c82cd714) SHA1(1d8ac7ad03db2dc4c8c18ade466e12032673f874) )
     4314
     4315      ROM_REGION( 0x2000, "gfx1", 0 )
     4316      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5431d4c4) SHA1(34d45da44b4208e2774f5e2af08657a9086252e6) )
     4317      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(ceb50654) SHA1(70dbe3cc715d3d52ee3d4f8dadbf5c59f87166a3) )
     4318
     4319      ROM_REGION( 0x0120, "proms", 0 )
     4320      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4321      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4322
     4323      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4324      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4325      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4326  ROM_END
     4327
     4328
     4329  ROM_START( mspacpls )
     4330      ROM_REGION( 0x10000, "maincpu", 0 )
     4331      ROM_LOAD( "boot1",        0x0000, 0x1000, CRC(d16b31b7) SHA1(bc2247ec946b639dd1f00bfc603fa157d0baaa97) )
     4332      ROM_LOAD( "mspacatk.2",   0x1000, 0x1000, CRC(0af09d31) SHA1(6ff73e4da4910bcd2ca3aa299d8ffad23f8abf79) )
     4333      ROM_LOAD( "boot3",        0x2000, 0x1000, CRC(1821ee0b) SHA1(5ea4d907dbb2690698db72c4e0b5be4d3e9a7786) )
     4334      ROM_LOAD( "boot4",        0x3000, 0x1000, CRC(165a9dd8) SHA1(3022a408118fa7420060e32a760aeef15b8a96cf) )
     4335      ROM_LOAD( "mspacatk.5",   0x8000, 0x1000, CRC(e6e06954) SHA1(ee5b266b1cc178df31fc1da5f66ef4911c653dda) )
     4336      ROM_LOAD( "mspacatk.6",   0x9000, 0x1000, CRC(3b5db308) SHA1(c1ba630cb8fb665c4881a6cce9d3b0d4300bd0eb) )
     4337
     4338      ROM_REGION( 0x2000, "gfx1", 0 )
     4339      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4340      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(615af909) SHA1(fd6a1dde780b39aea76bf1c4befa5882573c2ef4) )
     4341
     4342      ROM_REGION( 0x0120, "proms", 0 )
     4343      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4344      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4345
     4346      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4347      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4348      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4349  ROM_END
     4350
     4351
     4352  ROM_START( pacgal )
     4353      ROM_REGION( 0x10000, "maincpu", 0 )
     4354      ROM_LOAD( "boot1",        0x0000, 0x1000, CRC(d16b31b7) SHA1(bc2247ec946b639dd1f00bfc603fa157d0baaa97) )
     4355      ROM_LOAD( "boot2",        0x1000, 0x1000, CRC(0d32de5e) SHA1(13ea0c343de072508908be885e6a2a217bbb3047) )
     4356      ROM_LOAD( "pacman.7fh",   0x2000, 0x1000, CRC(513f4d5c) SHA1(ae011b89422bd8cbb80389814500bc1427f6ecb2) )
     4357      ROM_LOAD( "pacman.7hj",   0x3000, 0x1000, CRC(70694c8e) SHA1(d0d02f0997b44e1ba5ea27fc3f7af1b956e2a687) )
     4358      ROM_LOAD( "boot5",        0x8000, 0x1000, CRC(8c3e6de6) SHA1(fed6e9a2b210b07e7189a18574f6b8c4ec5bb49b) )
     4359      ROM_LOAD( "boot6",        0x9000, 0x1000, CRC(368cb165) SHA1(387010a0c76319a1eab61b54c9bcb5c66c4b67a1) )
     4360
     4361      ROM_REGION( 0x2000, "gfx1", 0 )
     4362      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(5c281d01) SHA1(5e8b472b615f12efca3fe792410c23619f067845) )
     4363      ROM_LOAD( "pacman.5ef",   0x1000, 0x0800, CRC(65a3ee71) SHA1(cbbf700eefba2a5bf158983f2ca9688b7c6f5d2b) )
     4364      ROM_LOAD( "pacman.5hj",   0x1800, 0x0800, CRC(50c7477d) SHA1(c04ec282a8cb528df5e38ad750d12ee71612695d) )
     4365
     4366      ROM_REGION( 0x0120, "proms", 0 )
     4367      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4368      ROM_LOAD( "82s129.4a",    0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4369
     4370      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4371      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4372      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4373  ROM_END
     4374
     4375
     4376  ROM_START( mschamp ) /* "Original" Zola-Puc board.  FORCE ELECTRONICS KM-001 PCB copyright by RAYGLO MFG CO  1992/1993 */
     4377      ROM_REGION( 0x20000, "maincpu", 0 )
     4378      ROM_LOAD( "9fg.bin", 0x10000, 0x10000, CRC(04dba113) SHA1(6260fb58c47a506a60385fb7536fc4fbd8e02c7c) )   /* banked */
     4379
     4380      ROM_REGION( 0x2000, "gfx1", 0 )
     4381      ROM_LOAD( "8e.bin",  0x0000, 0x0800, CRC(17435f53) SHA1(e844a7dfdb56a6f6cce5a3cf505d018434294470) )
     4382      ROM_CONTINUE(        0x1000, 0x0800 )
     4383      ROM_CONTINUE(        0x0800, 0x0800 )
     4384      ROM_CONTINUE(        0x1800, 0x0800 )
     4385
     4386      ROM_REGION( 0x0120, "proms", 0 )
     4387      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4388      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4389
     4390      ROM_REGION( 0x0200, "namco", 0 )
     4391      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4392      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )
     4393  ROM_END
     4394
     4395
     4396  ROM_START( mschamps ) /* Hack of hack???  Hack of the above "Rayglo" set??? */
     4397      ROM_REGION( 0x20000, "maincpu", 0 )
     4398      ROM_LOAD( "pm4.bin", 0x10000, 0x10000, CRC(7d6b6303) SHA1(65ad72a9188422653c02a48c07ed2661e1e36961) )   /* banked */
     4399
     4400      ROM_REGION( 0x2000, "gfx1", 0 )
     4401      ROM_LOAD( "pm5.bin", 0x0000, 0x0800, CRC(7fe6b9e2) SHA1(bfd0d84c7ef909ae078d8f60340682b3ff230aa6) )
     4402      ROM_CONTINUE(        0x1000, 0x0800 )
     4403      ROM_CONTINUE(        0x0800, 0x0800 )
     4404      ROM_CONTINUE(        0x1800, 0x0800 )
     4405
     4406      ROM_REGION( 0x0120, "proms", 0 )
     4407      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4408      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4409
     4410      ROM_REGION( 0x0200, "namco", 0 )
     4411      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4412      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )
     4413  ROM_END
     4414
     4415
     4416  ROM_START( superabc )
     4417      ROM_REGION( 0x80000, "maincpu", 0 )
     4418      ROM_LOAD( "superabc.u14", 0x00000, 0x80000, CRC(a560efe6) SHA1(c7d43cc3bb3b1b10d06403462276231bfc8542dd) )  /* banked */
     4419
     4420      ROM_REGION( 0x10000, "gfx1", ROMREGION_ERASE00 ) // descrambled rom goes here
     4421
     4422      ROM_REGION( 0x20000, "user1", 0 )
     4423      ROM_LOAD( "char5e5f.u1",  0x00000, 0x20000, CRC(45caace0) SHA1(f850bd09ec68b0263ac8b30ae38c3878c7978ace) )
     4424
     4425      ROM_REGION( 0x0120, "proms", 0 )    /* color PROMs */
     4426      ROM_LOAD( "82s123.7f",  0x0000, 0x0020, CRC(3a188666) SHA1(067386e477ce48bbde3cf71f744a78a42238d236) )
     4427      ROM_LOAD( "82s129.4a",  0x0020, 0x0100, CRC(4382c049) SHA1(5e535b1a6852260f38ae1e5cd57290a85cb6927f) )
     4428
     4429      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4430      ROM_LOAD( "82s126.1m",  0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4431      ROM_LOAD( "82s126.3m",  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     4432
     4433      ROM_REGION( 0x0020, "unknown", 0 )
     4434      ROM_LOAD( "82s123.u18", 0x0000, 0x0020, CRC(23b2863c) SHA1(e62f87d2145e94be06dbd90fa8d9a79760bfcc4b) )  /* prom on daughterboard, unknown function */
     4435  ROM_END
     4436
     4437
     4438  ROM_START( superabco )
     4439      ROM_REGION( 0x80000, "maincpu", 0 )
     4440      ROM_LOAD( "superabc.u14", 0x00000, 0x80000, CRC(62565ad8) SHA1(cb434c608ee463788b73152d84ce6173bdfa350d) )  /* banked */
     4441
     4442      ROM_REGION( 0x10000, "gfx1", ROMREGION_ERASE00 ) // descrambled rom goes here
     4443
     4444      ROM_REGION( 0x20000, "user1", 0 )
     4445      ROM_LOAD( "char5e5f.u1",  0x00000, 0x20000, CRC(45caace0) SHA1(f850bd09ec68b0263ac8b30ae38c3878c7978ace) )
     4446
     4447      ROM_REGION( 0x0120, "proms", 0 )    /* color PROMs */
     4448      ROM_LOAD( "82s123.7f",  0x0000, 0x0020, CRC(3a188666) SHA1(067386e477ce48bbde3cf71f744a78a42238d236) )
     4449      ROM_LOAD( "82s129.4a",  0x0020, 0x0100, CRC(4382c049) SHA1(5e535b1a6852260f38ae1e5cd57290a85cb6927f) )
     4450
     4451      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4452      ROM_LOAD( "82s126.1m",  0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4453      ROM_LOAD( "82s126.3m",  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )  /* timing - not used */
     4454
     4455      ROM_REGION( 0x0020, "unknown", 0 )
     4456      ROM_LOAD( "82s123.u18", 0x0000, 0x0020, CRC(23b2863c) SHA1(e62f87d2145e94be06dbd90fa8d9a79760bfcc4b) )  /* prom on daughterboard, unknown function */
     4457  ROM_END
     4458
     4459
     4460  ROM_START( crush )
     4461      ROM_REGION( 2*0x10000, "maincpu", 0 )   /* 64k for code + 64k for opcode copy to hack protection */
     4462      ROM_LOAD( "crushkrl.6e",  0x0000, 0x1000, CRC(a8dd8f54) SHA1(4e3a973ea74a9e145c6997513b98fc80aa478442) )
     4463      ROM_LOAD( "crushkrl.6f",  0x1000, 0x1000, CRC(91387299) SHA1(3ad8c28e02c45667e32860953b157832445a82c8) )
     4464      ROM_LOAD( "crushkrl.6h",  0x2000, 0x1000, CRC(d4455f27) SHA1(53f8ffc28be664fa8a2d756b4c70045a3f041bea) )
     4465      ROM_LOAD( "crushkrl.6j",  0x3000, 0x1000, CRC(d59fc251) SHA1(024605e4485b0ac826217256e5356ed9a6c8ef34) )
     4466
     4467      ROM_REGION( 0x2000, "gfx1", 0 )
     4468      ROM_LOAD( "maketrax.5e",  0x0000, 0x1000, CRC(91bad2da) SHA1(096197d0cb6d55bf72b5be045224f4bd6a9cfa1b) )
     4469      ROM_LOAD( "maketrax.5f",  0x1000, 0x1000, CRC(aea79f55) SHA1(279021e6771dfa5bd0b7c557aae44434286d91b7) )
     4470
     4471      ROM_REGION( 0x0120, "proms", 0 )
     4472      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4473      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4474
     4475      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4476      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4477      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4478  ROM_END
     4479
     4480
     4481  ROM_START( crushbl )
     4482      ROM_REGION( 2*0x10000, "maincpu", 0 )   /* 64k for code + 64k for opcode copy to hack protection */
     4483      ROM_LOAD( "cr1.bin",  0x0000, 0x1000, CRC(e2e84cd1) SHA1(3fc5a9aa3ee219b386a1d0622547c77aca27533d) )
     4484      ROM_LOAD( "cr2.bin",  0x1000, 0x1000, CRC(ec020e6f) SHA1(eef9008c38a68ed20c1e3596016d97d4e72de9f2) )
     4485      ROM_LOAD( "cr3.bin",  0x2000, 0x1000, CRC(d4455f27) SHA1(53f8ffc28be664fa8a2d756b4c70045a3f041bea) ) // matches original
     4486      ROM_LOAD( "cr4.bin",  0x3000, 0x1000, CRC(9936ae06) SHA1(80aff9a12dab97e9d5818f7a7fac54dc52b579d4) )
     4487
     4488      /* no other roms in this set */
     4489      ROM_REGION( 0x2000, "gfx1", 0 )
     4490      ROM_LOAD( "maketrax.5e",  0x0000, 0x1000, CRC(91bad2da) SHA1(096197d0cb6d55bf72b5be045224f4bd6a9cfa1b) )
     4491      ROM_LOAD( "maketrax.5f",  0x1000, 0x1000, CRC(aea79f55) SHA1(279021e6771dfa5bd0b7c557aae44434286d91b7) )
     4492
     4493      ROM_REGION( 0x0120, "proms", 0 )
     4494      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4495      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4496
     4497      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4498      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4499      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4500  ROM_END
     4501
     4502  ROM_START( crushbl2 )
     4503      ROM_REGION( 0x10000, "maincpu", 0 )
     4504      ROM_LOAD( "cr5.7d",       0x0000, 0x1000, CRC(4954d51d) SHA1(ff973ed961a531f7fc6f45b2c27af317f4cc6a4d) )
     4505      ROM_LOAD( "cr6.7e",       0x1000, 0x1000, CRC(27eb4299) SHA1(af2d7fdedcea766045fc2f20ae383024d1c35731) )
     4506      ROM_LOAD( "cr7.7h",       0x2000, 0x1000, CRC(d297108e) SHA1(a5bd11f26ba82b66a93d07e8cbc838ad9bd01413) )
     4507      ROM_LOAD( "cr8.7j",       0x3000, 0x1000, CRC(bcc40eaf) SHA1(50ffb3cf5cffd7618ceac207f60ca052fc13e38c) )
     4508
     4509      ROM_REGION( 0x2000, "gfx1", 0 )
     4510      ROM_LOAD( "cr1.5e",       0x0000, 0x0800, CRC(c7617198) SHA1(95b204af0345163f93811cc770ee0ca2851a39c1) )
     4511      ROM_LOAD( "cr3.5h",       0x0800, 0x0800, CRC(c15b6967) SHA1(d8f16e2d6af5bf0f610d1e23614c531f67490da9) )
     4512      ROM_LOAD( "cr2.5f",       0x1000, 0x0800, CRC(d5bc5cb8) SHA1(269b82ae2b838c72ae06bff77412f22bb779ad2e) )  /* copyright sign was removed */
     4513      ROM_LOAD( "cr4.5j",       0x1800, 0x0800, CRC(d35d1caf) SHA1(65dd7861e05651485626465dc97215fed58db551) )
     4514
     4515      ROM_REGION( 0x0120, "proms", 0 )
     4516      ROM_LOAD( "74s288.8a",    0x0000, 0x0020, CRC(ff344446) SHA1(45eb37533da8912645a089b014f3b3384702114a) )
     4517      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4518
     4519      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4520      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4521      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4522  ROM_END
     4523
     4524  ROM_START( crush2 )
     4525      ROM_REGION( 0x10000, "maincpu", 0 )
     4526      ROM_LOAD( "tp1",          0x0000, 0x0800, CRC(f276592e) SHA1(68ebb7d9f70af868d99ec42c26bc55a54ba1f22c) )
     4527      ROM_LOAD( "tp5a",         0x0800, 0x0800, CRC(3d302abe) SHA1(8ca5cd82d099b55e20f785489158231a1d99a430) )
     4528      ROM_LOAD( "tp2",          0x1000, 0x0800, CRC(25f42e70) SHA1(66de8203c364fd90e8a2b5749c2e40665b2f5830) )
     4529      ROM_LOAD( "tp6",          0x1800, 0x0800, CRC(98279cbe) SHA1(84b5e64bdbc25afab9b6f53e1719640e21a6feba) )
     4530      ROM_LOAD( "tp3",          0x2000, 0x0800, CRC(8377b4cb) SHA1(f828a177f22db9093a00c31e39e16214ce0dc6de) )
     4531      ROM_LOAD( "tp7",          0x2800, 0x0800, CRC(d8e76c8c) SHA1(7c3d7eb07b9256130141f71eba722f7823fd4c32) )
     4532      ROM_LOAD( "tp4",          0x3000, 0x0800, CRC(90b28fa3) SHA1(ff58d2dfb016397daabe2996bc3a7b63d28a4cca) )
     4533      ROM_LOAD( "tp8",          0x3800, 0x0800, CRC(10854e1b) SHA1(b3b9066d9a43796185c00ae12f7bb2bbf42e3a07) )
     4534
     4535      ROM_REGION( 0x2000, "gfx1", 0 )
     4536      ROM_LOAD( "tpa",          0x0000, 0x0800, CRC(c7617198) SHA1(95b204af0345163f93811cc770ee0ca2851a39c1) )
     4537      ROM_LOAD( "tpc",          0x0800, 0x0800, CRC(e129d76a) SHA1(c9256795c6d0929ade1f24b372dadc2a2b88d897) )
     4538      ROM_LOAD( "tpb",          0x1000, 0x0800, CRC(d1899f05) SHA1(dce755511b6262b984a2bca329f454892e486a09) )
     4539      ROM_LOAD( "tpd",          0x1800, 0x0800, CRC(d35d1caf) SHA1(65dd7861e05651485626465dc97215fed58db551) )
     4540
     4541      ROM_REGION( 0x0120, "proms", 0 )
     4542      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4543      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4544
     4545      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4546      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4547      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4548  ROM_END
     4549
     4550
     4551  ROM_START( crush3 )
     4552      ROM_REGION( 0x10000, "maincpu", 0 )
     4553      ROM_LOAD( "unkmol.4e",    0x0000, 0x0800, CRC(49150ddf) SHA1(5a20464a40d1d48606664779c85a7679073d7954) )
     4554      ROM_LOAD( "unkmol.6e",    0x0800, 0x0800, CRC(21f47e17) SHA1(1194b5e8b0cce1f480acda3cb6c1fc65988bdc80) )
     4555      ROM_LOAD( "unkmol.4f",    0x1000, 0x0800, CRC(9b6dd592) SHA1(6bb1b7ed95a7a8682a6ab58fa9f02c34beea8cd4) )
     4556      ROM_LOAD( "unkmol.6f",    0x1800, 0x0800, CRC(755c1452) SHA1(a2da17ed0e526dad4d53d332467a3dfd3b2a8cab) )
     4557      ROM_LOAD( "unkmol.4h",    0x2000, 0x0800, CRC(ed30a312) SHA1(15855904422eb603e5c5465bd038a3e8c666c10d) )
     4558      ROM_LOAD( "unkmol.6h",    0x2800, 0x0800, CRC(fe4bb0eb) SHA1(70e480a75421ee0832456f1d30bf45a702192625) )
     4559      ROM_LOAD( "unkmol.4j",    0x3000, 0x0800, CRC(072b91c9) SHA1(808df98c0cfd2367a39e06f30f920fd14887d922) )
     4560      ROM_LOAD( "unkmol.6j",    0x3800, 0x0800, CRC(66fba07d) SHA1(4944d69a38fd823dad38b70433848017ae7027d7) )
     4561
     4562      ROM_REGION( 0x2000, "gfx1", 0 )
     4563      ROM_LOAD( "unkmol.5e",    0x0000, 0x0800, CRC(338880a0) SHA1(beba1c71291394442b04fa5f4e1b833d7cf0fa8a) )
     4564      ROM_LOAD( "unkmol.5h",    0x0800, 0x0800, CRC(4ce9c81f) SHA1(90a695ce4a45bde62bdbf09724a3ec6b45674660) )
     4565      ROM_LOAD( "unkmol.5f",    0x1000, 0x0800, CRC(752e3780) SHA1(5730ebd8091eba5ac32ddd9db2f42d718b088753) )
     4566      ROM_LOAD( "unkmol.5j",    0x1800, 0x0800, CRC(6e00d2ac) SHA1(aa3f1f3a3b6899bea717d97e4817b13159e552e5) )
     4567
     4568      ROM_REGION( 0x0120, "proms", 0 )
     4569      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4570      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4571
     4572      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4573      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4574      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4575  ROM_END
     4576
     4577
     4578  ROM_START( crush4 )
     4579      ROM_REGION( 0x20000, "maincpu", 0 ) /* 64k for code+64k for decrypted code */
     4580      ROM_LOAD( "crtwt.2", 0x10000, 0x10000, CRC(adbd21f7) SHA1(984b005cd7a73f697715ecb7a4d806024cb7596d) )   /* banked */
     4581
     4582      ROM_REGION( 0x4000, "gfx1", 0 )
     4583      ROM_LOAD( "crtwt.1", 0x0000, 0x0800, CRC(4250a9ea) SHA1(496a368afcf09c09205f7d0882320d2022e6fc98) )
     4584      ROM_CONTINUE(        0x1000, 0x0800 )
     4585      ROM_CONTINUE(        0x0800, 0x0800 )
     4586      ROM_CONTINUE(        0x1800, 0x0800 )
     4587      ROM_CONTINUE(        0x2000, 0x0800 )
     4588      ROM_CONTINUE(        0x3000, 0x0800 )
     4589      ROM_CONTINUE(        0x2800, 0x0800 )
     4590      ROM_CONTINUE(        0x3800, 0x0800 )
     4591
     4592      ROM_REGION( 0x0120, "proms", 0 )
     4593      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4594      ROM_LOAD( "82s129.bin",   0x0020, 0x0100, CRC(2bc5d339) SHA1(446e234df94d9ef34c3191877bb33dd775acfdf5) )
     4595
     4596      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4597      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4598      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4599  ROM_END
     4600
     4601
     4602  ROM_START( maketrax )
     4603      ROM_REGION( 2*0x10000, "maincpu", 0 )   /* 64k for code + 64k for opcode copy to hack protection */
     4604      ROM_LOAD( "maketrax.6e",  0x0000, 0x1000, CRC(0150fb4a) SHA1(ba41582d5432670654479b4bf6d938d2168858af) )
     4605      ROM_LOAD( "maketrax.6f",  0x1000, 0x1000, CRC(77531691) SHA1(68a450bcc8d832368d0f1cb2815cb5c03451796e) )
     4606      ROM_LOAD( "maketrax.6h",  0x2000, 0x1000, CRC(a2cdc51e) SHA1(80d80235cda3ce19c1dbafacf3d47b1325ad4728) )
     4607      ROM_LOAD( "maketrax.6j",  0x3000, 0x1000, CRC(0b4b5e0a) SHA1(621aece612df612065f776696956ef3671421fac) )
     4608
     4609      ROM_REGION( 0x2000, "gfx1", 0 )
     4610      ROM_LOAD( "maketrax.5e",  0x0000, 0x1000, CRC(91bad2da) SHA1(096197d0cb6d55bf72b5be045224f4bd6a9cfa1b) )
     4611      ROM_LOAD( "maketrax.5f",  0x1000, 0x1000, CRC(aea79f55) SHA1(279021e6771dfa5bd0b7c557aae44434286d91b7) )
     4612
     4613      ROM_REGION( 0x0120, "proms", 0 )
     4614      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4615      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4616
     4617      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4618      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4619      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4620  ROM_END
     4621
     4622
     4623  ROM_START( maketrxb )
     4624      ROM_REGION( 2*0x10000, "maincpu", 0 )   /* 64k for code + 64k for opcode copy to hack protection */
     4625      ROM_LOAD( "maketrax.6e",  0x0000, 0x1000, CRC(0150fb4a) SHA1(ba41582d5432670654479b4bf6d938d2168858af) )
     4626      ROM_LOAD( "maketrax.6f",  0x1000, 0x1000, CRC(77531691) SHA1(68a450bcc8d832368d0f1cb2815cb5c03451796e) )
     4627      ROM_LOAD( "maketrxb.6h",  0x2000, 0x1000, CRC(6ad342c9) SHA1(5469f3952adc682725a71602b4a00a7751e48a99) )
     4628      ROM_LOAD( "maketrxb.6j",  0x3000, 0x1000, CRC(be27f729) SHA1(0f7b873d33f751fa2fc54f9eede0598cb7d7f3c8) )
     4629
     4630      ROM_REGION( 0x2000, "gfx1", 0 )
     4631      ROM_LOAD( "maketrax.5e",  0x0000, 0x1000, CRC(91bad2da) SHA1(096197d0cb6d55bf72b5be045224f4bd6a9cfa1b) )
     4632      ROM_LOAD( "maketrax.5f",  0x1000, 0x1000, CRC(aea79f55) SHA1(279021e6771dfa5bd0b7c557aae44434286d91b7) )
     4633
     4634      ROM_REGION( 0x0120, "proms", 0 )
     4635      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4636      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4637
     4638      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4639      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4640      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4641  ROM_END
     4642
     4643  ROM_START( korosuke )
     4644      ROM_REGION( 2*0x10000, "maincpu", 0 )   /* 64k for code + 64k for opcode copy to hack protection */
     4645      ROM_LOAD( "kr.6e",        0x0000, 0x1000, CRC(69f6e2da) SHA1(5f06523122d81a079bed080a16b44adb90aa95ad) )
     4646      ROM_LOAD( "kr.6f",        0x1000, 0x1000, CRC(abf34d23) SHA1(6ae16fb8208037fd8b752076dd97e3da09e5cb8f) )
     4647      ROM_LOAD( "kr.6h",        0x2000, 0x1000, CRC(76a2e2e2) SHA1(570aaed91279caab9274024e5a6176bdfe85bedd) )
     4648      ROM_LOAD( "kr.6j",        0x3000, 0x1000, CRC(33e0e3bb) SHA1(43f5da486b9c44b0e4e8c909000786ee8ffee87f) )
     4649
     4650      ROM_REGION( 0x2000, "gfx1", 0 )
     4651      ROM_LOAD( "kr.5e",        0x0000, 0x1000, CRC(e0380be8) SHA1(96eb7c5ef91342be67bd2a6c4958412d2572ba2a) )
     4652      ROM_LOAD( "kr.5f",        0x1000, 0x1000, CRC(63fec9ee) SHA1(7d136362e08cceba9395c2c469d8fec451c5e396) )
     4653
     4654      ROM_REGION( 0x0120, "proms", 0 )
     4655      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4656      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4657
     4658      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4659      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4660      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4661  ROM_END
     4662
     4663
     4664  ROM_START( mbrush )
     4665      ROM_REGION( 0x10000, "maincpu", 0 )
     4666      ROM_LOAD( "mbrush.6e",    0x0000, 0x1000, CRC(750fbff7) SHA1(986d20010d4fdd4bac916ac6b3a01bcd09d695ea) )
     4667      ROM_LOAD( "mbrush.6f",    0x1000, 0x1000, CRC(27eb4299) SHA1(af2d7fdedcea766045fc2f20ae383024d1c35731) )
     4668      ROM_LOAD( "mbrush.6h",    0x2000, 0x1000, CRC(d297108e) SHA1(a5bd11f26ba82b66a93d07e8cbc838ad9bd01413) )
     4669      ROM_LOAD( "mbrush.6j",    0x3000, 0x1000, CRC(6fd719d0) SHA1(3de00981264cef24dc2c6277192e071144da2a88) )
     4670
     4671      ROM_REGION( 0x2000, "gfx1", 0 )
     4672      ROM_LOAD( "tpa",          0x0000, 0x0800, CRC(c7617198) SHA1(95b204af0345163f93811cc770ee0ca2851a39c1) )
     4673      ROM_LOAD( "mbrush.5h",    0x0800, 0x0800, CRC(c15b6967) SHA1(d8f16e2d6af5bf0f610d1e23614c531f67490da9) )
     4674      ROM_LOAD( "mbrush.5f",    0x1000, 0x0800, CRC(d5bc5cb8) SHA1(269b82ae2b838c72ae06bff77412f22bb779ad2e) )  /* copyright sign was removed */
     4675      ROM_LOAD( "tpd",          0x1800, 0x0800, CRC(d35d1caf) SHA1(65dd7861e05651485626465dc97215fed58db551) )
     4676
     4677      ROM_REGION( 0x0120, "proms", 0 )
     4678      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4679      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4680
     4681      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4682      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4683      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4684  ROM_END
     4685
     4686
     4687  ROM_START( paintrlr )
     4688      ROM_REGION( 0x10000, "maincpu", 0 )
     4689      ROM_LOAD( "paintrlr.1",   0x0000, 0x0800, CRC(556d20b5) SHA1(c0a74def85bca108fc56726d22bbea1fc051e1ff) )
     4690      ROM_LOAD( "paintrlr.5",   0x0800, 0x0800, CRC(4598a965) SHA1(866dbe7c0dbca10c5d5ec3efa3c79fb1ff1c5b56) )
     4691      ROM_LOAD( "paintrlr.2",   0x1000, 0x0800, CRC(2da29c81) SHA1(e77f84e2f3136a116b75b40869e7f59404b0dbab) )
     4692      ROM_LOAD( "paintrlr.6",   0x1800, 0x0800, CRC(1f561c54) SHA1(ef1159f2203ff6b5c17e3a79f32e8cafb12a49f7) )
     4693      ROM_LOAD( "paintrlr.3",   0x2000, 0x0800, CRC(e695b785) SHA1(bc627a1a03d2e701fa4051acee469a4516cfb5bf) )
     4694      ROM_LOAD( "paintrlr.7",   0x2800, 0x0800, CRC(00e6eec0) SHA1(e98850cf6e1762d08225a95f26a26766f8fa7303) )
     4695      ROM_LOAD( "paintrlr.4",   0x3000, 0x0800, CRC(0fd5884b) SHA1(fa9614b625b3d71a6e9d5f883da625ad88e3eb5e) )
     4696      ROM_LOAD( "paintrlr.8",   0x3800, 0x0800, CRC(4900114a) SHA1(47aee5bad136c19b203958b7ddac583d45018249) )
     4697
     4698      ROM_REGION( 0x2000, "gfx1", 0 )
     4699      ROM_LOAD( "tpa",          0x0000, 0x0800, CRC(c7617198) SHA1(95b204af0345163f93811cc770ee0ca2851a39c1) )
     4700      ROM_LOAD( "mbrush.5h",    0x0800, 0x0800, CRC(c15b6967) SHA1(d8f16e2d6af5bf0f610d1e23614c531f67490da9) )
     4701      ROM_LOAD( "mbrush.5f",    0x1000, 0x0800, CRC(d5bc5cb8) SHA1(269b82ae2b838c72ae06bff77412f22bb779ad2e) )  /* copyright sign was removed */
     4702      ROM_LOAD( "tpd",          0x1800, 0x0800, CRC(d35d1caf) SHA1(65dd7861e05651485626465dc97215fed58db551) )
     4703
     4704      ROM_REGION( 0x0120, "proms", 0 )
     4705      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4706      ROM_LOAD( "2s140.4a",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4707
     4708      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4709      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4710      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4711  ROM_END
     4712
     4713  /*
     4714
     4715  Crush Roller (Sidam PCB)
     4716
     4717  CPU
     4718  1x SGS Z80ACPUB1 (main)
     4719  1x AY-3-8912 (sound)
     4720  1x oscillator (no speed markings)
     4721  ROMs
     4722  6x TMS2532
     4723  1x SN74S288N
     4724  1x TBP24S10N
     4725  Note
     4726  1x 22x2 edge connector
     4727  1x trimmer (volume)
     4728  2x 8 switches dip
     4729  1x 4 switches dip
     4730  1x red led
     4731  */
     4732
     4733  ROM_START( crushs )
     4734      ROM_REGION( 2*0x10000, "maincpu", 0 )   /* 64k for code + 64k for opcode copy to hack protection */
     4735      ROM_LOAD( "11105-0.0j",  0x0000, 0x1000, CRC(dd425429) SHA1(dc3fd8b71384c25dc807caea9187a775144ad24e) )
     4736      ROM_LOAD( "11105-1.1j",  0x1000, 0x1000, CRC(f9d89eef) SHA1(4de911b68cf6044d1e50fd3f455a61327483540b) )
     4737      ROM_LOAD( "11105-2.2j",  0x2000, 0x1000, CRC(40c23a27) SHA1(b59586ec18446b866b9ef267bb876c410f2972b0) )
     4738      ROM_LOAD( "11105-3.3j",  0x3000, 0x1000, CRC(5802644f) SHA1(3ba078c9ab8c6e251f6d1a3e8b6f8bf4820340a5) )
     4739
     4740      ROM_REGION( 0x2000, "gfx1", 0 )
     4741      ROM_LOAD( "11105-4.4j",  0x0000, 0x1000, CRC(91bad2da) SHA1(096197d0cb6d55bf72b5be045224f4bd6a9cfa1b) )
     4742      ROM_LOAD( "11105-5.5j",  0x1000, 0x1000, CRC(b5c14376) SHA1(2c8c57f96c51f12f73daf65dc2a73e8185aaacea) )
     4743
     4744      ROM_REGION( 0x0120, "proms", 0 )
     4745      ROM_LOAD( "74s288.8a",    0x0000, 0x0020, CRC(ff344446) SHA1(45eb37533da8912645a089b014f3b3384702114a) )
     4746      ROM_LOAD( "24s10.6b",     0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4747
     4748      /* No Sound Proms (not Namco Sound) */
     4749  ROM_END
     4750
     4751
     4752
     4753  ROM_START( ponpoko )
     4754      ROM_REGION( 0x10000, "maincpu", 0 )
     4755      ROM_LOAD( "ppokoj1.bin",  0x0000, 0x1000, CRC(ffa3c004) SHA1(d9e3186dcd4eb94d02bd24ad56030b248721537f) )
     4756      ROM_LOAD( "ppokoj2.bin",  0x1000, 0x1000, CRC(4a496866) SHA1(4b8bd13e58040c30ca032b54fb47d889677e8c6f) )
     4757      ROM_LOAD( "ppokoj3.bin",  0x2000, 0x1000, CRC(17da6ca3) SHA1(1a57767557c13fa3d08e4451fb9fb1f7219b26ef) )
     4758      ROM_LOAD( "ppokoj4.bin",  0x3000, 0x1000, CRC(9d39a565) SHA1(d4835ee97c9b3c63504d8b576a11f0a3a97057ec) )
     4759      ROM_LOAD( "ppoko5.bin",   0x8000, 0x1000, CRC(54ca3d7d) SHA1(b54299b00573fbd6d3278586df0c12c09235615d) )
     4760      ROM_LOAD( "ppoko6.bin",   0x9000, 0x1000, CRC(3055c7e0) SHA1(ab3fb9c8846effdcea0569d08a84c5fa19057a8f) )
     4761      ROM_LOAD( "ppoko7.bin",   0xa000, 0x1000, CRC(3cbe47ca) SHA1(577c79c016be26a9fc7895cef0f30bf3f0b15097) )
     4762      ROM_LOAD( "ppokoj8.bin",  0xb000, 0x1000, CRC(04b63fc6) SHA1(9b86ae34aaefa2813d29a4f7b24cee40eadcc6a1) )
     4763
     4764      ROM_REGION( 0x2000, "gfx1", 0 )
     4765      ROM_LOAD( "ppoko9.bin",   0x0000, 0x1000, CRC(b73e1a06) SHA1(f1229e804eb15827b71f0e769a8c9e496c6d1de7) )
     4766      ROM_LOAD( "ppoko10.bin",  0x1000, 0x1000, CRC(62069b5d) SHA1(1b58ad1c2cc2d12f4e492fdd665b726d50c80364) )
     4767
     4768      ROM_REGION( 0x0120, "proms", 0 )
     4769      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4770      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4771
     4772      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4773      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4774      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4775  ROM_END
     4776
     4777
     4778  ROM_START( ponpokov )
     4779      ROM_REGION( 0x10000, "maincpu", 0 )
     4780      ROM_LOAD( "ppoko1.bin",   0x0000, 0x1000, CRC(49077667) SHA1(3e760cd4dbe5913e58d786caf510237ff635c775) )
     4781      ROM_LOAD( "ppoko2.bin",   0x1000, 0x1000, CRC(5101781a) SHA1(a82fbd2418ac7866f9463092e9dd37fd7ba9b694) )
     4782      ROM_LOAD( "ppoko3.bin",   0x2000, 0x1000, CRC(d790ed22) SHA1(2d32f91f6993232db40b44b35bd2503d85e5c874) )
     4783      ROM_LOAD( "ppoko4.bin",   0x3000, 0x1000, CRC(4e449069) SHA1(d5e6e346f80e66eb0db530de9721d9b6f22e86ae) )
     4784      ROM_LOAD( "ppoko5.bin",   0x8000, 0x1000, CRC(54ca3d7d) SHA1(b54299b00573fbd6d3278586df0c12c09235615d) )
     4785      ROM_LOAD( "ppoko6.bin",   0x9000, 0x1000, CRC(3055c7e0) SHA1(ab3fb9c8846effdcea0569d08a84c5fa19057a8f) )
     4786      ROM_LOAD( "ppoko7.bin",   0xa000, 0x1000, CRC(3cbe47ca) SHA1(577c79c016be26a9fc7895cef0f30bf3f0b15097) )
     4787      ROM_LOAD( "ppoko8.bin",   0xb000, 0x1000, CRC(b39be27d) SHA1(c299d22d26da68bec8fc53c898523135ec4016fa) )
     4788
     4789      ROM_REGION( 0x2000, "gfx1", 0 )
     4790      ROM_LOAD( "ppoko9.bin",   0x0000, 0x1000, CRC(b73e1a06) SHA1(f1229e804eb15827b71f0e769a8c9e496c6d1de7) )
     4791      ROM_LOAD( "ppoko10.bin",  0x1000, 0x1000, CRC(62069b5d) SHA1(1b58ad1c2cc2d12f4e492fdd665b726d50c80364) )
     4792
     4793      ROM_REGION( 0x0120, "proms", 0 )
     4794      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4795      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4796
     4797      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4798      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4799      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4800  ROM_END
     4801
     4802
     4803  ROM_START( eyes )
     4804      ROM_REGION( 0x10000, "maincpu", 0 )
     4805      ROM_LOAD( "d7",           0x0000, 0x1000, CRC(3b09ac89) SHA1(a8f1c918da74495bb73172f39364dada38ae4713) )
     4806      ROM_LOAD( "e7",           0x1000, 0x1000, CRC(97096855) SHA1(10d3b164bbbe5eee86e881a1434f0c114ee8adff) )
     4807      ROM_LOAD( "f7",           0x2000, 0x1000, CRC(731e294e) SHA1(96c0308c146dbd85e244c4530af9ae8df78c86de) )
     4808      ROM_LOAD( "h7",           0x3000, 0x1000, CRC(22f7a719) SHA1(eb000b606ecedd52bebbb232e661fb1ef205f8b0) )
     4809
     4810      ROM_REGION( 0x2000, "gfx1", 0 )
     4811      ROM_LOAD( "d5",           0x0000, 0x1000, CRC(d6af0030) SHA1(652b779533e3f00e81cc102b78d367d503b06f33) )
     4812      ROM_LOAD( "e5",           0x1000, 0x1000, CRC(a42b5201) SHA1(2e5cede3b6039c7bd5230de27d02aaa3f35a7b64) )
     4813
     4814      ROM_REGION( 0x0120, "proms", 0 )
     4815      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4816      ROM_LOAD( "82s129.4a",    0x0020, 0x0100, CRC(d8d78829) SHA1(19820d1651423210083a087fb70ebea73ad34951) )
     4817
     4818      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4819      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4820      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4821  ROM_END
     4822
     4823
     4824  ROM_START( eyes2 )
     4825      ROM_REGION( 0x10000, "maincpu", 0 )
     4826      ROM_LOAD( "g38201.7d",    0x0000, 0x1000, CRC(2cda7185) SHA1(7ec3ee9bb90e6a1d83ad3aa12fd62184e07b1399) )
     4827      ROM_LOAD( "g38202.7e",    0x1000, 0x1000, CRC(b9fe4f59) SHA1(2d97dc1a0458b406ca0c50d6b8bd0dbe58d21464) )
     4828      ROM_LOAD( "g38203.7f",    0x2000, 0x1000, CRC(d618ba66) SHA1(76d93d8bc09bafac464ebfd002869e21535a365b) )
     4829      ROM_LOAD( "g38204.7h",    0x3000, 0x1000, CRC(cf038276) SHA1(bcf4e129a151e2245e630cf865ce6cb009b405a5) )
     4830
     4831      ROM_REGION( 0x2000, "gfx1", 0 )
     4832      ROM_LOAD( "g38205.5d",    0x0000, 0x1000, CRC(03b1b4c7) SHA1(a90b2fbaee2888ee4f0bcdf80a069c8594ef5ea1) )  /* this one has a (c) sign */
     4833      ROM_LOAD( "g38206.5e",    0x1000, 0x1000, CRC(a42b5201) SHA1(2e5cede3b6039c7bd5230de27d02aaa3f35a7b64) )
     4834
     4835      ROM_REGION( 0x0120, "proms", 0 )
     4836      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4837      ROM_LOAD( "82s129.4a",    0x0020, 0x0100, CRC(d8d78829) SHA1(19820d1651423210083a087fb70ebea73ad34951) )
     4838
     4839      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4840      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4841      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4842  ROM_END
     4843
     4844
     4845  ROM_START( eyesb )
     4846      ROM_REGION( 0x10000, "maincpu", 0 )
     4847      ROM_LOAD( "1.bin",           0x0000, 0x0800, CRC(339d279a) SHA1(bc2a7801b9f94782f260346255f84a0e84729f01) )
     4848      ROM_LOAD( "5.bin",           0x0800, 0x0800, CRC(1b68a61d) SHA1(348ef7b19934b000b03c74bec4796f1089dfc5eb) )
     4849      ROM_LOAD( "2.bin",           0x1000, 0x0800, CRC(d4f9aaf8) SHA1(1e450a7ecf42f9bc2d58823907930dd7aa454215) )
     4850      ROM_LOAD( "6.bin",           0x1800, 0x0800, CRC(6b41bb80) SHA1(aa3555833a2e8e596e126a749fe12853e4aa05b1) )
     4851      ROM_LOAD( "3.bin",           0x2000, 0x0800, CRC(748e0e48) SHA1(857de6f7fe79a2613a93fb3efd981edb64c0190e) )
     4852      ROM_LOAD( "7.bin",           0x2800, 0x0800, CRC(7b7f4a74) SHA1(373229de4ed25d577fe15deb3b6bc36786988284) )
     4853      ROM_LOAD( "4.bin",           0x3000, 0x0800, CRC(367a3884) SHA1(d55d7eca56412661adac1849a398298670e86d15) )
     4854      ROM_LOAD( "8.bin",           0x3800, 0x0800, CRC(2baaadae) SHA1(7b20ed5935e9a4f793f690bab2a6bc0db44d12af) )
     4855
     4856      ROM_REGION( 0x2000, "gfx1", 0 )
     4857      ROM_LOAD( "9.bin",           0x0000, 0x0800, CRC(342c0653) SHA1(d07e3d4528b72e54a1b5dbed009cce765a5a086f) )
     4858      ROM_LOAD( "11.bin",          0x0800, 0x0800, CRC(aaa7a537) SHA1(571d981ed2aad62d7c7f2798e9084228d45523d4) )
     4859      ROM_LOAD( "10.bin",          0x1000, 0x0800, CRC(b247b82c) SHA1(8c10a8ef5e79b0b5fefad6eb77bfa68a0ca18035) )
     4860      ROM_LOAD( "12.bin",          0x1800, 0x0800, CRC(99af4b30) SHA1(6a0939ff2fa7ae39a960dd4d9f9b7c01f57647c5) )
     4861
     4862      ROM_REGION( 0x0120, "proms", 0 )
     4863      ROM_LOAD( "7051.bin",        0x0000, 0x0020, CRC(0dad2ccb) SHA1(f42c5ee7084e5702b5b0c8c1d86b0a41a6e1821d) )
     4864      ROM_LOAD( "7051-3.bin",      0x0020, 0x0100, CRC(d8d78829) SHA1(19820d1651423210083a087fb70ebea73ad34951) )
     4865
     4866      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4867      ROM_LOAD( "82s126.1m",       0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) ) // not dumped, taken from parent
     4868      ROM_LOAD( "7051-2.bin",      0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) // two of these?
     4869  ROM_END
     4870
     4871
     4872  ROM_START( eyeszac )
     4873      ROM_REGION( 0x10000, "maincpu", 0 )
     4874      ROM_LOAD( "1.7d",         0x0000, 0x1000, BAD_DUMP CRC(568851aa) SHA1(a97963556a6d77400afaafd73bcc32cb7f3a54d2) ) // 2532 vs 2732 problem, (near)identical halves
     4875      ROM_LOAD( "2.7f",         0x1000, 0x1000, BAD_DUMP CRC(9a0dba3b) SHA1(9f66f814bc2d483488df8918d872c7d6ce1bea3d) ) // 2532 vs 2732 problem, 1st half empty
     4876      ROM_LOAD( "3.7h",         0x2000, 0x1000, BAD_DUMP CRC(5a12aa81) SHA1(1adb1b033066cabbd62a5d33012ed1c66b955943) ) // 2532 vs 2732 problem, (near)identical halves
     4877      ROM_LOAD( "4.7j",         0x3000, 0x1000, BAD_DUMP CRC(b11958a1) SHA1(fa66fec80594f313f605e2b904dfe34693a1aa7d) ) // 2532 vs 2732 problem, (near)identical halves
     4878
     4879      ROM_REGION( 0x2000, "gfx1", 0 )
     4880      ROM_LOAD( "5.5d",         0x0000, 0x1000, BAD_DUMP CRC(7b2c4d53) SHA1(82e1a70c5cb76519dca252cfcea2a69c3601e36f) ) // 2532 vs 2732 problem, (near)identical halves
     4881      ROM_LOAD( "6.5f",         0x1000, 0x1000, BAD_DUMP CRC(bccb4f1a) SHA1(0abf73b78a95b7e911480d41e0136dbc635b4a34) ) // 2532 vs 2732 problem, (near)identical halves
     4882
     4883      ROM_REGION( 0x0120, "proms", 0 )
     4884      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) ) // taken from parent
     4885      ROM_LOAD( "82s129.4a",    0x0020, 0x0100, CRC(d8d78829) SHA1(19820d1651423210083a087fb70ebea73ad34951) ) // taken from parent
     4886
     4887      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4888      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) ) // taken from parent
     4889      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) // taken from parent
     4890  ROM_END
     4891
     4892  /* It's just a decrypted version of Eyes with the copyright changes...
     4893   roms marked with a comment were in the set but we're not using them */
     4894  ROM_START( eyeszacb )
     4895      ROM_REGION( 0x10000, "maincpu", 0 )
     4896      ROM_LOAD( "zacb_11.bin",  0x0000, 0x0800, CRC(69c1602a) SHA1(47b0935406b7ee2f414de58da1d4e81c6277a0c2) ) // "no diagnostics, bad custom??" (unused)
     4897      ROM_LOAD( "zacb_1.bin",   0x0000, 0x0800, CRC(a4a9d7a0) SHA1(f0b807d2fa347e50df52971aa7539a88f342bad6) )
     4898      ROM_LOAD( "zacb_5.bin",   0x0800, 0x0800, CRC(c32b3f73) SHA1(80d2e987f0318b984e5c7c4d0b5faa262eebeca4) )
     4899      ROM_LOAD( "zacb_2.bin",   0x1000, 0x0800, CRC(195b9473) SHA1(62eb16af38cc9004787dc55433ed3db11af44a4b) )
     4900      ROM_LOAD( "zacb_6.bin",   0x1800, 0x0800, CRC(292886cb) SHA1(e77c3724c7cd8cd95014194ba4bb2f7e04afb0dd) )
     4901  //  ROM_LOAD( "33.bin",          0x2000, 0x0800, CRC(df983e1d) SHA1(7c06fc69b7d0424f7b9348649d5587ff4d6dfc2d) ) // alt rom with copyright removed (unused)
     4902      ROM_LOAD( "zacb_3.bin",   0x2000, 0x0800, CRC(ff94b015) SHA1(6d8f43db3c98cadb35f70e3bff788e653dc132cd) )
     4903      ROM_LOAD( "zacb_7.bin",   0x2800, 0x0800, CRC(9271c58c) SHA1(e6b8f1807c5852ae4e822d80719a4e8f8b036c31) )
     4904      ROM_LOAD( "zacb_4.bin",   0x3000, 0x0800, CRC(965cf32b) SHA1(68cc573a24c74f2ab417d0330fc9523e77fda961) )
     4905      ROM_LOAD( "zacb_8.bin",   0x3800, 0x0800, CRC(c254e92e) SHA1(023b45403ebc69c29516d77950dc69f05a1a130c) )
     4906
     4907      ROM_REGION( 0x2000, "gfx1", 0 )
     4908      ROM_LOAD( "x.bin",           0x0000, 0x0800, CRC(59dce22e) SHA1(81eaef3e4d8299b5133b62d04460abfa519696f5) )
     4909      ROM_LOAD( "c.bin",           0x0800, 0x0800, CRC(aaa7a537) SHA1(571d981ed2aad62d7c7f2798e9084228d45523d4) )
     4910      ROM_LOAD( "b.bin",           0x1000, 0x0800, CRC(1969792b) SHA1(7c3e2ace75402ad227e6437785b7cfec4db88db8) )
     4911      ROM_LOAD( "p.bin",           0x1800, 0x0800, CRC(99af4b30) SHA1(6a0939ff2fa7ae39a960dd4d9f9b7c01f57647c5) )
     4912
     4913      ROM_REGION( 0x0120, "proms", 0 )
     4914      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4915      ROM_LOAD( "82s129.4a",    0x0020, 0x0100, CRC(d8d78829) SHA1(19820d1651423210083a087fb70ebea73ad34951) )
     4916
     4917      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4918      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4919      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4920  ROM_END
     4921
     4922
     4923  /*
     4924  Birdiy by Mama Top
     4925
     4926  Pcb marked Mama.Top MDK-13V-0  FCC  Made in japan
     4927
     4928  1x 18.432mhz OSC
     4929  1x Z80 LH0080 by Sharp running at 3.069mhz (18.432mhz/6)
     4930  6x dynamic rams HN472114P-3 near the CPU
     4931  1x dipswitch
     4932  6x HN462732 eproms
     4933  4x 82s129N proms
     4934  1x DIL 18 pin chip with markings scratched out in position 7M
     4935  1x HA1386 amplifier
     4936  No sound chip, probably made of discrete logic?
     4937
     4938  Note: the marking MDK-xxV-x is sometimes found on Nanao manufactured pcbs for Irem, so it very
     4939  likely that the board was manufactured by Nanao
     4940  (example: Major Title and Gussun Oyoyo are marked MDK-311V-0, M92 and M107 pcbs are marked MDK-321-V0)
     4941
     4942  Board supplied by Alberto Grego
     4943  Dumped by Corrado Tomaselli
     4944  */
     4945
     4946  ROM_START( birdiy )
     4947      ROM_REGION( 0x10000, "maincpu", 0 )
     4948      ROM_LOAD( "a6.6a",      0x0000, 0x001000, CRC(3a58f8ad) SHA1(39e990ad4ee1fdec248665149bdb1072c8c01a9a) )
     4949      ROM_LOAD( "c6.6c",      0x1000, 0x001000, CRC(fec61ea2) SHA1(f7ff528d2bcede2434d0a33ee0193b50113ef720) )
     4950      ROM_LOAD( "a4.4a",      0x2000, 0x001000, CRC(3392783b) SHA1(e477f4284fd5b6c9f3619bd35cee6dbe8a2456b8) )
     4951      ROM_LOAD( "c4.4c",      0x3000, 0x001000, CRC(2391d83d) SHA1(6933f1e11a7a84c26a3a45b240e55157a2400e9c) )
     4952
     4953      ROM_REGION( 0x2000, "gfx1", 0 )
     4954      ROM_LOAD( "c1.1c",      0x0000, 0x001000, CRC(8f6bf54f) SHA1(6e09a9c2b143908766837529b174f97dd5058b53) )
     4955      ROM_LOAD( "c3.3c",      0x1000, 0x001000, CRC(10b55440) SHA1(4f3cf5d8954725cf791146abf8918c43138602e1) )
     4956
     4957      ROM_REGION( 0x0120, "proms", 0 )
     4958      ROM_LOAD( "n82s123n.10n", 0x0000, 0x0020, CRC(ff344446) SHA1(45eb37533da8912645a089b014f3b3384702114a) )
     4959      ROM_LOAD( "n82s129n.9m",  0x0020, 0x0100, CRC(63efb927) SHA1(5c144a613fc4960a1dfd7ead89e7fee258a63171) )
     4960
     4961      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4962      ROM_LOAD( "n82s129n.4k",  0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4963      ROM_LOAD( "n82s129n.6l",  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4964  ROM_END
     4965
     4966
     4967  ROM_START( mrtnt )
     4968      ROM_REGION( 0x10000, "maincpu", 0 )
     4969      ROM_LOAD( "tnt.1",        0x0000, 0x1000, CRC(0e836586) SHA1(5037b7c618f05bc3d6a33694729ae575b9aa7dbb) )
     4970      ROM_LOAD( "tnt.2",        0x1000, 0x1000, CRC(779c4c5b) SHA1(5ecac4f5b64b306c73d8f57d5260b586789b3055) )
     4971      ROM_LOAD( "tnt.3",        0x2000, 0x1000, CRC(ad6fc688) SHA1(e5729e4e42a5b9b3a26de8a44b3a78b49c8b1d8e) )
     4972      ROM_LOAD( "tnt.4",        0x3000, 0x1000, CRC(d77557b3) SHA1(689746653b1e19fbcddd0d71db2b86d1019235aa) )
     4973
     4974      ROM_REGION( 0x2000, "gfx1", 0 )
     4975      ROM_LOAD( "tnt.5",        0x0000, 0x1000, CRC(3038cc0e) SHA1(f8f5927ea4cbfda8fa7546abd766ba2e8b020004) )
     4976      ROM_LOAD( "tnt.6",        0x1000, 0x1000, CRC(97634d8b) SHA1(4c0fa4bc44bbb4b4614b5cc05e811c469c0e78e8) )
     4977
     4978      ROM_REGION( 0x0120, "proms", 0 )
     4979      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     4980      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     4981
     4982      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     4983      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     4984      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     4985  ROM_END
     4986
     4987  ROM_START( gorkans )
     4988      ROM_REGION( 0x10000, "maincpu", 0 )
     4989      ROM_LOAD( "gorkans8.rom",        0x0000, 0x0800, CRC(55100b18) SHA1(8f657c1b2865987b60d95960c5297a82bb1cc6e0) )
     4990      ROM_LOAD( "gorkans4.rom",        0x0800, 0x0800, CRC(b5c604bf) SHA1(0f3608d630fba9d4734a3ef30199a5d1a067cdff) )
     4991      ROM_LOAD( "gorkans7.rom",        0x1000, 0x0800, CRC(b8c6def4) SHA1(58ac78fc5b3559ef771ca708a79089b7a00cf6b8) )
     4992      ROM_LOAD( "gorkans3.rom",        0x1800, 0x0800, CRC(4602c840) SHA1(c77de0e991c44c2ee8a4537e264ac8fbb1b4b7db) )
     4993      ROM_LOAD( "gorkans6.rom",        0x2000, 0x0800, CRC(21412a62) SHA1(ece44c3204cf182db23b594ebdc051b51340ba2b) )
     4994      ROM_LOAD( "gorkans2.rom",        0x2800, 0x0800, CRC(a013310b) SHA1(847ba7ca033eaf49245bef49d6513619edec3472) )
     4995      ROM_LOAD( "gorkans5.rom",        0x3000, 0x0800, CRC(122969b2) SHA1(0803e1ec5e5ed742ea83ff156ae75a2d48530f71) )
     4996      ROM_LOAD( "gorkans1.rom",        0x3800, 0x0800, CRC(f2524b11) SHA1(1216b963e73c1de63cc323e361875f6810d83a05) )
     4997
     4998      ROM_REGION( 0x2000, "gfx1", 0 )
     4999      ROM_LOAD( "gorkgfx4.rom",        0x0000, 0x0800, CRC(39cd0dbc) SHA1(8d6882dad94b26da8f0737e7f7f99946fe273f1b) )
     5000      ROM_LOAD( "gorkgfx2.rom",        0x0800, 0x0800, CRC(33d52535) SHA1(e78ac5afa1ce996c41005c619ba2d2aa718497fc) )
     5001      ROM_LOAD( "gorkgfx3.rom",        0x1000, 0x0800, CRC(4b6b7970) SHA1(1d8b65cad0b834fb920135fc907432042bc83db2) )
     5002      ROM_LOAD( "gorkgfx1.rom",        0x1800, 0x0800, CRC(ed70bb3c) SHA1(7e51ddcf496f3b80fe186acc8bc6a0e574340346) )
     5003
     5004      ROM_REGION( 0x0120, "proms", 0 )
     5005      ROM_LOAD( "gorkprom.4",   0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5006      ROM_LOAD( "gorkprom.1",   0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5007
     5008      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5009      ROM_LOAD( "gorkprom.3",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5010      ROM_LOAD( "gorkprom.2"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /* timing - not used */
     5011  ROM_END
     5012
     5013  ROM_START( eggor )
     5014      ROM_REGION( 0x10000, "maincpu", 0 )
     5015      ROM_LOAD( "1.bin",        0x0000, 0x0800, CRC(818ed154) SHA1(8c0f555a3ab1d20a2c284d721b31278a0ddf9e51) )
     5016      ROM_LOAD( "5.bin",        0x0800, 0x0800, CRC(a4b21d93) SHA1(923b7a06f9146c7bcda4cdb16b15d2bbbec95eab) )
     5017      ROM_LOAD( "2.bin",        0x1000, 0x0800, CRC(5d7a23ed) SHA1(242fd973b0bde91c38e1f5e7f6c53d737019ec9c) )
     5018      ROM_LOAD( "6.bin",        0x1800, 0x0800, CRC(e9dbca8d) SHA1(b66783d68df778910cc190159aba07b476ff01af) )
     5019      ROM_LOAD( "3.bin",        0x2000, 0x0800, CRC(4318ab85) SHA1(eda9bb1bb8102e1c2cf838d0682732a45609f430) )
     5020      ROM_LOAD( "7.bin",        0x2800, 0x0800, CRC(03214d7f) SHA1(0e1b602fbdedfe81452109912fed006653bdc455) )
     5021      ROM_LOAD( "4.bin",        0x3000, 0x0800, CRC(dc805be4) SHA1(18604b221cd8af23ff8a05c954a42c3aa9e1948a) )
     5022      ROM_LOAD( "8.bin",        0x3800, 0x0800, CRC(f9ae204b) SHA1(53022d2d7b83f44c46fdcca454815cf1f65c34d1) )
     5023
     5024      ROM_REGION( 0x2000, "gfx1", 0 )
     5025      ROM_LOAD( "9.bin",        0x0000, 0x0800, CRC(96ad8626) SHA1(f003a6e1b00a51bfe326eac18658fafd58c88f88) )
     5026      ROM_LOAD( "11.bin",       0x0800, 0x0800, CRC(cc324017) SHA1(ea96572e3e24714033688fe7ca99af2fc707c1d3) )
     5027      ROM_LOAD( "10.bin",       0x1000, 0x0800, CRC(7c97f513) SHA1(6f78c7cde321ea6ac51d08d0e3620653d0af87db) )
     5028      ROM_LOAD( "12.bin",       0x1800, 0x0800, CRC(2e930602) SHA1(4012ec0cc542061b27b9b508bedde3f2ffc11838) )
     5029
     5030      ROM_REGION( 0x0120, "proms", 0 )
     5031      /* the board was stripped of its proms, these are the standard ones from Pacman, they look reasonable
     5032         but without another board its impossible to say if they are actually good */
     5033      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, BAD_DUMP CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5034      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, BAD_DUMP CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5035
     5036      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5037      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5038      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5039  ROM_END
     5040
     5041  ROM_START( lizwiz )
     5042      ROM_REGION( 0x10000, "maincpu", 0 )
     5043      ROM_LOAD( "6e.cpu",       0x0000, 0x1000, CRC(32bc1990) SHA1(467c9d70e07f403b6b9118aebe4e6d0abb40a5c1) )
     5044      ROM_LOAD( "6f.cpu",       0x1000, 0x1000, CRC(ef24b414) SHA1(12fce48008c4f9387df0c84f3b0d7c5a1b35d898) )
     5045      ROM_LOAD( "6h.cpu",       0x2000, 0x1000, CRC(30bed83d) SHA1(8c2458f98320c6887580c71632b544da0a582ba2) )
     5046      ROM_LOAD( "6j.cpu",       0x3000, 0x1000, CRC(dd09baeb) SHA1(f91447ec1f06bf95106e6872d80dcb82e1d42ffb) )
     5047      ROM_LOAD( "wiza",         0x8000, 0x1000, CRC(f6dea3a6) SHA1(ec0b123fd2e6de6681ca14f35fda249b2c2ec44f) )
     5048      ROM_LOAD( "wizb",         0x9000, 0x1000, CRC(f27fb5a8) SHA1(3ea384a1064302709d97fc16b347d3c012e90ac7) )
     5049
     5050      ROM_REGION( 0x2000, "gfx1", 0 )
     5051      ROM_LOAD( "5e.cpu",       0x0000, 0x1000, CRC(45059e73) SHA1(c960cd5720bfa21db73e1000fe8be7d5baf2a3a1) )
     5052      ROM_LOAD( "5f.cpu",       0x1000, 0x1000, CRC(d2469717) SHA1(194c8f816e5ff7614b3db4f355223667105738fa) )
     5053
     5054      ROM_REGION( 0x0120, "proms", 0 )
     5055      ROM_LOAD( "7f.cpu",       0x0000, 0x0020, CRC(7549a947) SHA1(4f2c3e7d6c38f0b9a90317f91feb3f86c9a0d0a5) )
     5056      ROM_LOAD( "4a.cpu",       0x0020, 0x0100, CRC(5fdca536) SHA1(3a09b29374031aaa3722932aff974a467b3bb201) )
     5057
     5058      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5059      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5060      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5061  ROM_END
     5062
     5063
     5064  ROM_START( theglobp )
     5065      ROM_REGION( 0x20000, "maincpu", 0 )
     5066      ROM_LOAD( "glob.u2",      0x0000, 0x2000, CRC(829d0bea) SHA1(89f52b459a03fb40b9bbd97ac8a292f7ead6faba) )
     5067      ROM_LOAD( "glob.u3",      0x2000, 0x2000, CRC(31de6628) SHA1(35a47dcf34efd74b5b2fda137e06a3dcabd74854) )
     5068
     5069      ROM_REGION( 0x2000, "gfx1", 0 )
     5070      ROM_LOAD( "glob.5e",      0x0000, 0x1000, CRC(53688260) SHA1(9ce0d1d67d12743b69e8190bf7506b00b2f02955) )
     5071      ROM_LOAD( "glob.5f",      0x1000, 0x1000, CRC(051f59c7) SHA1(e1e1322686997e5bcdac164704b328cce352ae42) )
     5072
     5073      ROM_REGION( 0x0120, "proms", 0 )
     5074      ROM_LOAD( "glob.7f",      0x0000, 0x0020, CRC(1f617527) SHA1(448845cab63800a05fcb106897503d994377f78f) )
     5075      ROM_LOAD( "glob.4a",      0x0020, 0x0100, CRC(28faa769) SHA1(7588889f3102d4e0ca7918f536556209b2490ea1) )
     5076
     5077      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5078      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5079      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5080  ROM_END
     5081
     5082
     5083  //Program roms same as the globp
     5084  ROM_START( sprglobp )
     5085      ROM_REGION( 0x20000, "maincpu", 0 )
     5086      ROM_LOAD( "glob.u2",      0x0000, 0x2000, CRC(829d0bea) SHA1(89f52b459a03fb40b9bbd97ac8a292f7ead6faba) )
     5087      ROM_LOAD( "glob.u3",      0x2000, 0x2000, CRC(31de6628) SHA1(35a47dcf34efd74b5b2fda137e06a3dcabd74854) )
     5088
     5089      ROM_REGION( 0x2000, "gfx1", 0 )
     5090      ROM_LOAD( "5e_2532.dat",  0x0000, 0x1000, CRC(1aa16109) SHA1(ddc8606512d7ab7555b84146b9d793f65ad0a75f) )
     5091      ROM_LOAD( "5f_2532.dat",  0x1000, 0x1000, CRC(afe72a89) SHA1(fb17632e2665c3cebc1865ef25fa310cc52725c4) )
     5092
     5093      ROM_REGION( 0x0120, "proms", 0 )
     5094      ROM_LOAD( "glob.7f",      0x0000, 0x0020, CRC(1f617527) SHA1(448845cab63800a05fcb106897503d994377f78f) )
     5095      ROM_LOAD( "glob.4a",      0x0020, 0x0100, CRC(28faa769) SHA1(7588889f3102d4e0ca7918f536556209b2490ea1) )
     5096
     5097      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5098      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5099      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5100  ROM_END
     5101
     5102  /* This set is from a modified Pengo board.  Pengo and Pacman are functionally the same.
     5103     The bad sound is probably correct as the sound data is part of the protection. */
     5104  ROM_START( sprglbpg )
     5105      ROM_REGION( 0x10000, "maincpu", 0 )
     5106      ROM_LOAD( "ic8.1",      0x0000, 0x1000, CRC(a2df2073) SHA1(14c55186053b080de06cc3691111ede8b2ead231) )
     5107      ROM_LOAD( "ic7.2",      0x1000, 0x1000, CRC(3d2c22d9) SHA1(2f1d27e49850f904d1f2256bfcf00557ed88bb16) )
     5108      ROM_LOAD( "ic15.3",      0x2000, 0x1000, CRC(a252047f) SHA1(9fadbb098b86ee98e1a81da938316b833fc26912) )
     5109      ROM_LOAD( "ic14.4",      0x3000, 0x1000, CRC(7efa81f1) SHA1(583999280623f02dcc318a6c7af5ee6fc46144b8) )
     5110
     5111      ROM_REGION( 0x2000, "gfx1", 0 )
     5112      ROM_LOAD( "ic92.5",  0x0000, 0x2000, CRC(E54F484D) SHA1(4FEB9EC917C2467A5AC531283CB00FE308BE7775) )
     5113
     5114      ROM_REGION( 0x0120, "proms", 0 )
     5115      ROM_LOAD( "ic78.prm",      0x0000, 0x0020, CRC(1f617527) SHA1(448845cab63800a05fcb106897503d994377f78f) )
     5116      ROM_LOAD( "ic88.prm",      0x0020, 0x0100, CRC(28faa769) SHA1(7588889f3102d4e0ca7918f536556209b2490ea1) )
     5117
     5118      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5119      ROM_LOAD( "ic51.prm",    0x0000, 0x0100, CRC(c29dea27) SHA1(563c9770028fe39188e62630711589d6ed242a66) )
     5120      ROM_LOAD( "ic70.prm"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) /* timing - not used */
     5121  ROM_END
     5122
     5123
     5124  ROM_START( beastf )
     5125      ROM_REGION( 0x20000, "maincpu", 0 )
     5126      ROM_LOAD( "bf-u2.bin",    0x0000, 0x2000, CRC(3afc517b) SHA1(5b74bca9e9cd4d8bcf94a340f8f0e53fe1dcfc1d) )
     5127      ROM_LOAD( "bf-u3.bin",    0x2000, 0x2000, CRC(8dbd76d0) SHA1(058c01e87ad583eb99d5043a821e6c68f1b30267) )
     5128
     5129      ROM_REGION( 0x2000, "gfx1", 0 )
     5130      ROM_LOAD( "beastf.5e",    0x0000, 0x1000, CRC(5654dc34) SHA1(fc2336b951a3ab48d4fc4f36a8dd80e79e8ca1a0) )
     5131      ROM_LOAD( "beastf.5f",    0x1000, 0x1000, CRC(1b30ca61) SHA1(8495d8a280346246f00c4f1dc42ab5a2a02c5863) )
     5132
     5133      ROM_REGION( 0x0120, "proms", 0 )
     5134      ROM_LOAD( "glob.7f",      0x0000, 0x0020, CRC(1f617527) SHA1(448845cab63800a05fcb106897503d994377f78f) )
     5135      ROM_LOAD( "glob.4a",      0x0020, 0x0100, CRC(28faa769) SHA1(7588889f3102d4e0ca7918f536556209b2490ea1) )
     5136
     5137      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5138      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5139      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5140  ROM_END
     5141
     5142
     5143  ROM_START( vanvan )
     5144      ROM_REGION( 0x10000, "maincpu", 0 )
     5145      ROM_LOAD( "van-1.50",     0x0000, 0x1000, CRC(cf1b2df0) SHA1(938b4434c0129cf9151f829901d00e47dca68956) )
     5146      ROM_LOAD( "van-2.51",     0x1000, 0x1000, CRC(df58e1cb) SHA1(5e0fc713b50d46c7650d6564c20882891864cdc5) )
     5147      ROM_LOAD( "van-3.52",     0x2000, 0x1000, CRC(15571e24) SHA1(d259d81fce16e151b32ac81f94a13b7044fdef95) )
     5148      ROM_LOAD( "van-4.53",     0x3000, 0x1000, CRC(b724cbe0) SHA1(5fe1d3b81d07c538c31daf6522b26bbf35cfc512) )
     5149      ROM_LOAD( "van-5.39",     0x8000, 0x1000, CRC(db67414c) SHA1(19eba21dfea24507b386ea1b5ce737c5822b0696) )
     5150
     5151      ROM_REGION( 0x2000, "gfx1", 0 )
     5152      ROM_LOAD( "van-20.18",    0x0000, 0x1000, CRC(60efbe66) SHA1(ac398f77bfeab3d18ffd496e117825bfbeed4b62) )
     5153      ROM_LOAD( "van-21.19",    0x1000, 0x1000, CRC(5dd53723) SHA1(f75c869ac364f477d532e695347ceb5e281f9efa) )
     5154
     5155      ROM_REGION( 0x0120, "proms", 0 )
     5156      ROM_LOAD( "6331-1.6",     0x0000, 0x0020, CRC(ce1d9503) SHA1(b829bed78c02d9998c1aecb8f6813e90b417a7f2) )
     5157      ROM_LOAD( "6301-1.37",    0x0020, 0x0100, CRC(4b803d9f) SHA1(59b7f2e22c4e0b20ac3b12d88996a6dfeebc5933) )
     5158  ROM_END
     5159
     5160  ROM_START( vanvank )
     5161      ROM_REGION( 0x10000, "maincpu", 0 )
     5162      ROM_LOAD( "van1.bin",     0x0000, 0x1000, CRC(00f48295) SHA1(703fab63760cadcce042b491d7d1d45301319158) )
     5163      ROM_LOAD( "van-2.51",     0x1000, 0x1000, CRC(df58e1cb) SHA1(5e0fc713b50d46c7650d6564c20882891864cdc5) )
     5164      ROM_LOAD( "van-3.52",     0x2000, 0x1000, CRC(15571e24) SHA1(d259d81fce16e151b32ac81f94a13b7044fdef95) )
     5165      ROM_LOAD( "van4.bin",     0x3000, 0x1000, CRC(f8b37ed5) SHA1(34f844be891dfa5f6a1160de6f428e9dacd618a8) )
     5166      ROM_LOAD( "van5.bin",     0x8000, 0x1000, CRC(b8c1e089) SHA1(c614fb9159210f6cf68f5085bfebd928caded91c) )
     5167
     5168      ROM_REGION( 0x2000, "gfx1", 0 )
     5169      ROM_LOAD( "van-20.18",    0x0000, 0x1000, CRC(60efbe66) SHA1(ac398f77bfeab3d18ffd496e117825bfbeed4b62) )
     5170      ROM_LOAD( "van-21.19",    0x1000, 0x1000, CRC(5dd53723) SHA1(f75c869ac364f477d532e695347ceb5e281f9efa) )
     5171
     5172      ROM_REGION( 0x0120, "proms", 0 )
     5173      ROM_LOAD( "6331-1.6",     0x0000, 0x0020, CRC(ce1d9503) SHA1(b829bed78c02d9998c1aecb8f6813e90b417a7f2) )
     5174      ROM_LOAD( "6301-1.37",    0x0020, 0x0100, CRC(4b803d9f) SHA1(59b7f2e22c4e0b20ac3b12d88996a6dfeebc5933) )
     5175  ROM_END
     5176
     5177
     5178  ROM_START( vanvanb )
     5179      ROM_REGION( 0x10000, "maincpu", 0 )
     5180      ROM_LOAD( "vv1.bin",     0x0000, 0x1000, CRC(cf1b2df0) SHA1(938b4434c0129cf9151f829901d00e47dca68956) )
     5181      ROM_LOAD( "vv2.bin",     0x1000, 0x1000, CRC(80eca6a5) SHA1(e3e711e5c27f5effdae95222a019e427a754d505) )
     5182      ROM_LOAD( "vv3.bin",     0x2000, 0x1000, CRC(15571e24) SHA1(d259d81fce16e151b32ac81f94a13b7044fdef95) )
     5183      ROM_LOAD( "vv4.bin",     0x3000, 0x1000, CRC(b1f04006) SHA1(f0dccce9cc9871ff671e86947512f354ff5f4f13) )
     5184      ROM_LOAD( "vv5.bin",     0x8000, 0x1000, CRC(db67414c) SHA1(19eba21dfea24507b386ea1b5ce737c5822b0696) )
     5185
     5186      ROM_REGION( 0x2000, "gfx1", 0 )
     5187      ROM_LOAD( "vv20.bin",    0x0000, 0x1000, CRC(eb56cb51) SHA1(fa8c4f61acbbc0ea7b41aff2624dadcc581ddf8c) )
     5188      ROM_LOAD( "vv21.bin",    0x1000, 0x1000, CRC(5dd53723) SHA1(f75c869ac364f477d532e695347ceb5e281f9efa) )
     5189
     5190      ROM_REGION( 0x0120, "proms", 0 )
     5191      ROM_LOAD( "6331-1.6",     0x0000, 0x0020, CRC(ce1d9503) SHA1(b829bed78c02d9998c1aecb8f6813e90b417a7f2) )
     5192      ROM_LOAD( "6301-1.37",    0x0020, 0x0100, CRC(4b803d9f) SHA1(59b7f2e22c4e0b20ac3b12d88996a6dfeebc5933) )
     5193  ROM_END
     5194
     5195
     5196  ROM_START( dremshpr )
     5197      ROM_REGION( 0x10000, "maincpu", 0 )
     5198      ROM_LOAD( "red_1.50",     0x0000, 0x1000, CRC(830c6361) SHA1(a28c517a9b7f509e0dedacea64b9740335315457) )
     5199      ROM_LOAD( "red_2.51",     0x1000, 0x1000, CRC(d22551cc) SHA1(2c513908899b618f0c0a0c3e48c4a4aad90f627e) )
     5200      ROM_LOAD( "red_3.52",     0x2000, 0x1000, CRC(0713a34a) SHA1(37733b557e6afe116f5d3c8bc918f59124a8229d) )
     5201      ROM_LOAD( "red_4.53",     0x3000, 0x1000, CRC(f38bcaaa) SHA1(cdebeaf5b77ac5a8b4668cff97b6351e075b392b) )
     5202      ROM_LOAD( "red_5.39",     0x8000, 0x1000, CRC(6a382267) SHA1(7d6a1c75de8a6eb714ba9a18dd3c497832145bcc) )
     5203      ROM_LOAD( "red_6.40",     0x9000, 0x1000, CRC(4cf8b121) SHA1(04162b41e747dfa442b958bd360e49993c5c4162) )
     5204      ROM_LOAD( "red_7.41",     0xa000, 0x1000, CRC(bd4fc4ba) SHA1(50a5858acde5fd4b3476f5502141e7d492c3af9f) )
     5205
     5206      ROM_REGION( 0x2000, "gfx1", 0 )
     5207      ROM_LOAD( "red-20.18",    0x0000, 0x1000, CRC(2d6698dc) SHA1(5f5e54fdcff53c6ba783d585cd994cf563c53613) )
     5208      ROM_LOAD( "red-21.19",    0x1000, 0x1000, CRC(38c9ce9b) SHA1(c719bcd77549228e72ad9bcc42f5db0070ec5dca) )
     5209
     5210      ROM_REGION( 0x0120, "proms", 0 )
     5211      ROM_LOAD( "6331-1.6",     0x0000, 0x0020, CRC(ce1d9503) SHA1(b829bed78c02d9998c1aecb8f6813e90b417a7f2) )
     5212      ROM_LOAD( "6301-1.37",    0x0020, 0x0100, CRC(39d6fb5c) SHA1(848f9cd02f90006e8a2aae3693b57ae391cf498b) )
     5213  ROM_END
     5214
     5215
     5216  ROM_START( alibaba )
     5217      ROM_REGION( 0x10000, "maincpu", 0 )
     5218      ROM_LOAD( "6e",           0x0000, 0x1000, CRC(38d701aa) SHA1(4e886a4a17f441f6d1d213c4c433b40dd38eefbc) )
     5219      ROM_LOAD( "6f",           0x1000, 0x1000, CRC(3d0e35f3) SHA1(6b9a1fd11db9f521417566ae4c7065151aa272b5) )
     5220      ROM_LOAD( "6h",           0x2000, 0x1000, CRC(823bee89) SHA1(5381a4fcbc9fa97574c6df2978c7500164df75e5) )
     5221      ROM_LOAD( "6k",           0x3000, 0x1000, CRC(474d032f) SHA1(4516a60ec83e3c3388cd56f538f49afc86a50983) )
     5222      ROM_LOAD( "6l",           0x8000, 0x1000, CRC(5ab315c1) SHA1(6f3507ad10432f9123150b8bc1d0fb52372a412b) )
     5223      ROM_LOAD( "6m",           0xa000, 0x0800, CRC(438d0357) SHA1(7caaf668906b76d4947e988c444723b33f8e9726) )
     5224
     5225      ROM_REGION( 0x2000, "gfx1", 0 )
     5226      ROM_LOAD( "5e",           0x0000, 0x0800, CRC(85bcb8f8) SHA1(986170627953582b1e6fbca59e5c15cf8c4de9c7) )
     5227      ROM_LOAD( "5h",           0x0800, 0x0800, CRC(38e50862) SHA1(094d090bd0563f75d6ff1bfe2302cae941a89504) )
     5228      ROM_LOAD( "5f",           0x1000, 0x0800, CRC(b5715c86) SHA1(ed6aee778295b0182d32846b5e41776b5b15420c) )
     5229      ROM_LOAD( "5k",           0x1800, 0x0800, CRC(713086b3) SHA1(a1609bae637207a82920678f05bcc10a5ff096de) )
     5230
     5231      ROM_REGION( 0x0120, "proms", 0 )
     5232      ROM_LOAD( "82s123.e7",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5233      ROM_LOAD( "82s129.a4",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5234
     5235      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5236      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5237      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5238
     5239      /* unknown, used for the mystery items ? */
     5240      ROM_REGION( 0x1000, "user1", 0 )
     5241      ROM_LOAD( "ab7.bin",      0x0000, 0x0800, CRC(52294ef5) SHA1(1d76e16c95cb2873d898a4151a902113fccafe1c) ) // 7.p6 dumped as 0x1000 - 1ST AND 2ND HALF IDENTICAL
     5242  ROM_END
     5243
     5244
     5245  ROM_START( alibabab )
     5246      ROM_REGION( 0x10000, "maincpu", 0 )
     5247      ROM_LOAD( "6e",           0x0000, 0x1000, CRC(38d701aa) SHA1(4e886a4a17f441f6d1d213c4c433b40dd38eefbc) ) // ab1.bin
     5248      ROM_LOAD( "6f",           0x1000, 0x1000, CRC(3d0e35f3) SHA1(6b9a1fd11db9f521417566ae4c7065151aa272b5) ) // ab2.bin
     5249      ROM_LOAD( "6h",           0x2000, 0x1000, CRC(823bee89) SHA1(5381a4fcbc9fa97574c6df2978c7500164df75e5) ) // ab3.bin
     5250      ROM_LOAD( "6k",           0x3000, 0x1000, CRC(474d032f) SHA1(4516a60ec83e3c3388cd56f538f49afc86a50983) ) // ab4.bin
     5251      ROM_LOAD( "ab5.bin",      0x8000, 0x1000, CRC(ae2f4aac) SHA1(8583514e4a876ecdb1bc2c65f9829f0bebfdee0d) )
     5252      ROM_LOAD( "6m",           0xa000, 0x0800, CRC(438d0357) SHA1(7caaf668906b76d4947e988c444723b33f8e9726) ) // ab6.bin
     5253
     5254      ROM_REGION( 0x2000, "gfx1", 0 )
     5255      ROM_LOAD( "5e",           0x0000, 0x0800, CRC(85bcb8f8) SHA1(986170627953582b1e6fbca59e5c15cf8c4de9c7) ) // ab8.bin
     5256      ROM_LOAD( "5h",           0x0800, 0x0800, CRC(38e50862) SHA1(094d090bd0563f75d6ff1bfe2302cae941a89504) ) // ab10.bin
     5257      ROM_LOAD( "5f",           0x1000, 0x0800, CRC(b5715c86) SHA1(ed6aee778295b0182d32846b5e41776b5b15420c) ) // ab9.bin
     5258      ROM_LOAD( "5k",           0x1800, 0x0800, CRC(713086b3) SHA1(a1609bae637207a82920678f05bcc10a5ff096de) ) // ab11.bin
     5259
     5260      ROM_REGION( 0x0120, "proms", 0 )
     5261      ROM_LOAD( "82s123.e7",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5262      ROM_LOAD( "82s129.a4",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5263
     5264      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5265      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5266      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5267
     5268      /* unknown, used for the mystery items ? */
     5269      ROM_REGION( 0x1000, "user1", 0 )
     5270      ROM_LOAD( "ab7.bin",      0x0000, 0x0800, CRC(52294ef5) SHA1(1d76e16c95cb2873d898a4151a902113fccafe1c) )
     5271  ROM_END
     5272
     5273
     5274  ROM_START( jumpshot )
     5275      ROM_REGION( 0x10000, "maincpu", 0 )
     5276      ROM_LOAD( "6e",           0x0000, 0x1000, CRC(f00def9a) SHA1(465a7f368e61a1e6614d6eab0fa2c6319920eaa5) )
     5277      ROM_LOAD( "6f",           0x1000, 0x1000, CRC(f70deae2) SHA1(a8a8369e865b62cb9ed66d3de2396c6a5fced549) )
     5278      ROM_LOAD( "6h",           0x2000, 0x1000, CRC(894d6f68) SHA1(8693ffc29587cdd1be0b42cede53f8f450a2c7fa) )
     5279      ROM_LOAD( "6j",           0x3000, 0x1000, CRC(f15a108a) SHA1(db5c8394f688c6f889cadddeeae4fbca63c29a4c) )
     5280
     5281      ROM_REGION( 0x2000, "gfx1", 0 )
     5282      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(d9fa90f5) SHA1(3c37fe077a77baa802230dddbc4bb2c05985d2bb) )
     5283      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(2ec711c1) SHA1(fcc3169f48eb7d4af533ad0169701e4230ff5a1f) )
     5284
     5285      ROM_REGION( 0x0120, "proms", 0 )
     5286      ROM_LOAD( "prom.7f",      0x0000, 0x0020, CRC(872b42f3) SHA1(bbcd392ba3d2a5715e92fa0f7a7cf1e7e6e655a2) )
     5287      ROM_LOAD( "prom.4a",      0x0020, 0x0100, CRC(0399f39f) SHA1(e98f08da4666cab44e01acb760a1bd2fc858bc0d) )
     5288
     5289      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5290      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5291      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5292  ROM_END
     5293
     5294
     5295  ROM_START( jumpshotp )
     5296      ROM_REGION( 0x10000, "maincpu", 0 )
     5297      ROM_LOAD( "js6e.bin",           0x0000, 0x1000, CRC(acc5e15e) SHA1(c9516f2d0862b29a3efe19eb13ab68decd670ca8) )
     5298      ROM_LOAD( "js6f.bin",           0x1000, 0x1000, CRC(62b48ba4) SHA1(a17d8ca68de6116822cf4eff70eada04a3fbb4c3) )
     5299      ROM_LOAD( "js6h.bin",           0x2000, 0x1000, CRC(7c9b5e30) SHA1(44c7694b8bd774550ec865d133f5660b90350428) )
     5300      ROM_LOAD( "js6j.bin",           0x3000, 0x1000, CRC(9f0c39f6) SHA1(8714c9b0853206ec5d79155b4310195b46fafbf6) )
     5301
     5302      ROM_REGION( 0x2000, "gfx1", 0 )
     5303      ROM_LOAD( "5e",           0x0000, 0x1000, CRC(d9fa90f5) SHA1(3c37fe077a77baa802230dddbc4bb2c05985d2bb) )
     5304      ROM_LOAD( "5f",           0x1000, 0x1000, CRC(2ec711c1) SHA1(fcc3169f48eb7d4af533ad0169701e4230ff5a1f) )
     5305
     5306      ROM_REGION( 0x0120, "proms", 0 )
     5307      ROM_LOAD( "prom.7f",      0x0000, 0x0020, CRC(872b42f3) SHA1(bbcd392ba3d2a5715e92fa0f7a7cf1e7e6e655a2) )
     5308      ROM_LOAD( "prom.4a",      0x0020, 0x0100, CRC(0399f39f) SHA1(e98f08da4666cab44e01acb760a1bd2fc858bc0d) )
     5309
     5310      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5311      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5312      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5313  ROM_END
     5314
     5315
     5316  ROM_START( shootbul )
     5317      ROM_REGION( 0x10000, "maincpu", 0 )
     5318      ROM_LOAD( "sb6e.cpu",     0x0000, 0x1000, CRC(25daa5e9) SHA1(8257de5e0e62235d05d74b53e5fc716e85cb05b9) )
     5319      ROM_LOAD( "sb6f.cpu",     0x1000, 0x1000, CRC(92144044) SHA1(905a354a806da47ab40577171acdac7db635d102) )
     5320      ROM_LOAD( "sb6h.cpu",     0x2000, 0x1000, CRC(43b7f99d) SHA1(6372763fbbca3581376204c5e58ceedd3f47fc60) )
     5321      ROM_LOAD( "sb6j.cpu",     0x3000, 0x1000, CRC(bc4d3bbf) SHA1(2fa15b339166b9a5bf711b58a1705bc0b9e528e2) )
     5322
     5323      ROM_REGION( 0x2000, "gfx1", 0 )
     5324      ROM_LOAD( "sb5e.cpu",     0x0000, 0x1000, CRC(07c6c5aa) SHA1(cbe99ece795f29fdeef374cbf9b1f45ff065e803) )
     5325      ROM_LOAD( "sb5f.cpu",     0x1000, 0x1000, CRC(eaec6837) SHA1(ff21b0fd5381afb1ba7f5920132006ee8e6d10eb) )
     5326
     5327      ROM_REGION( 0x0120, "proms", 0 )
     5328      ROM_LOAD( "7f.rom",       0x0000, 0x0020, CRC(ec578b98) SHA1(196da49cc260f967ec5f01bc3c75b11077c85998) )
     5329      ROM_LOAD( "4a.rom",       0x0020, 0x0100, CRC(81a6b30f) SHA1(60c767fd536c325151a2b759fdbce4ba41e0c78f) )
     5330
     5331      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     5332      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5333      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) /* timing - not used */
     5334  ROM_END
     5335
     5336
     5337  ROM_START( acitya )
     5338      ROM_REGION( 0x20000, "maincpu", 0 )
     5339      ROM_LOAD( "aca_u2.bin",   0x0000, 0x2000, CRC(261c2fdc) SHA1(b4e7e6c8d8e401c7e4673213074802a73b9886a2) )
     5340      ROM_LOAD( "aca_u3.bin",   0x2000, 0x2000, CRC(05fab4ca) SHA1(5172229eda25920eeaa6d9f610f2bcfa674979b7) )
     5341
     5342      ROM_REGION( 0x2000, "gfx1", 0 )
     5343      ROM_LOAD( "aca_5e.bin",   0x0000, 0x1000, CRC(7f2dd2c9) SHA1(aa7ea70355904989b99d568d1e055e8272cfa8ca) )
     5344      ROM_RELOAD( 0x1000, 0x1000 ) /* Not Used?? */
     5345
     5346      ROM_REGION( 0x0120, "proms", 0 )
     5347      ROM_LOAD( "aca_7f.bin",   0x0000, 0x0020, CRC(133bb744) SHA1(da4074f3ea30202973f0b6c9ad05a992bb44eafd) )
     5348      ROM_LOAD( "aca_4a.bin",   0x0020, 0x0100, CRC(8e29208f) SHA1(a30a405fbd43d27a8d403f6c3545178564dede5d) )
     5349
     5350      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     5351      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5352      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) /* timing - not used */
     5353  ROM_END
     5354
     5355  ROM_START( bwcasino )
     5356      ROM_REGION( 0x20000, "maincpu", 0 )
     5357      ROM_LOAD( "bwc_u2.bin",   0x0000, 0x2000, CRC(e2eea868) SHA1(9e9dae02ab746ef48981f42a75c192c5aae0ffee) )
     5358      ROM_LOAD( "bwc_u3.bin",   0x2000, 0x2000, CRC(a935571e) SHA1(ab4f53be2544593fc8eb4c4bcccdec4191c0c626) )
     5359
     5360      ROM_REGION( 0x2000, "gfx1", 0 )
     5361      ROM_LOAD( "bwc_5e.bin",   0x0000, 0x1000, CRC(e334c01e) SHA1(cc6e50e3cf51eb8b7b27aa7351733954da8128ff) )
     5362      ROM_RELOAD( 0x1000, 0x1000 ) /* Not Used?? */
     5363
     5364      ROM_REGION( 0x0120, "proms", 0 )
     5365      ROM_LOAD( "aca_7f.bin",   0x0000, 0x0020, CRC(133bb744) SHA1(da4074f3ea30202973f0b6c9ad05a992bb44eafd) )
     5366      ROM_LOAD( "aca_4a.bin",   0x0020, 0x0100, CRC(8e29208f) SHA1(a30a405fbd43d27a8d403f6c3545178564dede5d) )
     5367
     5368      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     5369      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5370      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) /* timing - not used */
     5371  ROM_END
     5372
     5373
     5374  ROM_START( newpuc2 )
     5375      ROM_REGION( 0x10000, "maincpu",0 )
     5376      ROM_LOAD( "6e.cpu", 0x0000, 0x0800, CRC(69496a98) SHA1(2934051d6305cc3654951bc1aacf2b8902f463fe) )
     5377      ROM_LOAD( "6k.cpu", 0x0800, 0x0800, CRC(158fc01c) SHA1(2f7a1e24d259fdc716ef8e7354a87780595f3c4e) )
     5378      ROM_LOAD( "6f.cpu", 0x1000, 0x0800, CRC(7d177853) SHA1(9b5ddaaa8b564654f97af193dbcc29f81f230a25) )
     5379      ROM_LOAD( "6m.cpu", 0x1800, 0x0800, CRC(70810ccf) SHA1(3941678606aab1e53356a6781e24d84e83cc88ce) )
     5380      ROM_LOAD( "6h.cpu", 0x2000, 0x0800, CRC(81719de8) SHA1(e886d04ac0e20562a4bd2df7676bdf9aa98665d7) )
     5381      ROM_LOAD( "6n.cpu", 0x2800, 0x0800, CRC(3f250c58) SHA1(53bf2270c26f10f7e97960cd4c96e09e16b9bdf3) )
     5382      ROM_LOAD( "6j.cpu", 0x3000, 0x0800, CRC(e6675736) SHA1(85d0bb79bc96acbc67fcb70ff4d453c870a6c8ea) )
     5383      ROM_LOAD( "6p.cpu", 0x3800, 0x0800, CRC(1f81e765) SHA1(442d8a82e79ae842f1ffb46369c632c1d0b83161) )
     5384
     5385      ROM_REGION( 0x2000, "gfx1" , 0)
     5386      ROM_LOAD( "5e.cpu", 0x0000, 0x0800, CRC(2066a0b7) SHA1(6d4ccc27d6be185589e08aa9f18702b679e49a4a) )
     5387      ROM_LOAD( "5h.cpu", 0x0800, 0x0800, CRC(777c70d3) SHA1(ed5ccbeb1102ec9f837577de3aa51317c32520d6) )
     5388      ROM_LOAD( "5f.cpu", 0x1000, 0x0800, CRC(ca8c184c) SHA1(833aa845824ed80777b62f03df36a920ad7c3656) )
     5389      ROM_LOAD( "5j.cpu", 0x1800, 0x0800, CRC(7dc75a81) SHA1(d3fe1cad3b594052d8367685febb2335b0ad62f4) )
     5390
     5391      ROM_REGION( 0x0120, "proms", 0 )
     5392      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5393      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5394
     5395      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     5396      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5397      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /*timing - not used */
     5398  ROM_END
     5399
     5400
     5401  ROM_START( newpuc2b )
     5402      ROM_REGION( 0x10000, "maincpu",0 )
     5403      ROM_LOAD( "np2b1.bin", 0x0000, 0x0800, CRC(9d027c4a) SHA1(88e094880057451a75cdc2ce9477403021813982) )
     5404      ROM_LOAD( "6k.cpu", 0x0800, 0x0800, CRC(158fc01c) SHA1(2f7a1e24d259fdc716ef8e7354a87780595f3c4e) )
     5405      ROM_LOAD( "6f.cpu", 0x1000, 0x0800, CRC(7d177853) SHA1(9b5ddaaa8b564654f97af193dbcc29f81f230a25) )
     5406      ROM_LOAD( "6m.cpu", 0x1800, 0x0800, CRC(70810ccf) SHA1(3941678606aab1e53356a6781e24d84e83cc88ce) )
     5407      ROM_LOAD( "np2b3.bin", 0x2000, 0x0800, CRC(f5e4b2b1) SHA1(68464f61cc50931f6cd4bb493dd703c139500825) )
     5408      ROM_LOAD( "6n.cpu", 0x2800, 0x0800, CRC(3f250c58) SHA1(53bf2270c26f10f7e97960cd4c96e09e16b9bdf3) )
     5409      ROM_LOAD( "np2b4.bin", 0x3000, 0x0800, CRC(f068e009) SHA1(a30763935e116559d535654827230bb21a5734bb) )
     5410      ROM_LOAD( "np2b8.bin", 0x3800, 0x0800, CRC(1fadcc2f) SHA1(2d636cfc2b52b671ac5a26a03b1195e2cf8d4718) )
     5411
     5412      ROM_REGION( 0x2000, "gfx1" , 0)
     5413      ROM_LOAD( "5e.cpu", 0x0000, 0x0800, CRC(2066a0b7) SHA1(6d4ccc27d6be185589e08aa9f18702b679e49a4a) )
     5414      ROM_LOAD( "5h.cpu", 0x0800, 0x0800, CRC(777c70d3) SHA1(ed5ccbeb1102ec9f837577de3aa51317c32520d6) )
     5415      ROM_LOAD( "5f.cpu", 0x1000, 0x0800, CRC(ca8c184c) SHA1(833aa845824ed80777b62f03df36a920ad7c3656) )
     5416      ROM_LOAD( "5j.cpu", 0x1800, 0x0800, CRC(7dc75a81) SHA1(d3fe1cad3b594052d8367685febb2335b0ad62f4) )
     5417
     5418      ROM_REGION( 0x0120, "proms", 0 )
     5419      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5420      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5421
     5422      ROM_REGION( 0x0200, "namco", 0 ) /* sound PROMs */
     5423      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5424      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /*timing - not used */
     5425  ROM_END
     5426
     5427  ROM_START( nmouse )
     5428      ROM_REGION( 0x10000, "maincpu",0 )
     5429      ROM_LOAD( "naumouse.d7", 0x0000, 0x0800, CRC(e447ecfa) SHA1(45bce93f4a4e1c9994fb6b0c81691a14cae43ae5) )
     5430      ROM_LOAD( "naumouse.d6", 0x0800, 0x0800, CRC(2e6f13d9) SHA1(1278bd1ddd84ac5b956cb4d25c151871fab2b1d9) )
     5431      ROM_LOAD( "naumouse.e7", 0x1000, 0x0800, CRC(44a80f97) SHA1(d06ffd96c72c3c8a3c71df564e8f5f9fb289b398) )
     5432      ROM_LOAD( "naumouse.e6", 0x1800, 0x0800, CRC(9c7a46bd) SHA1(04771a99295fc6d3c41807e2c4437ff4e7e4ba4a) )
     5433      ROM_LOAD( "naumouse.h7", 0x2000, 0x0800, CRC(5bc94c5d) SHA1(9238add33bbde151532b7ce3917566d9b4f67c62) )
     5434      ROM_LOAD( "naumouse.h6", 0x2800, 0x0800, CRC(1af29e22) SHA1(628291aa97f5f88793f624af66a0c2b021328ef9) )
     5435      ROM_LOAD( "naumouse.j7", 0x3000, 0x0800, CRC(cc3be185) SHA1(92fdc87256d16c4e400da83e3ca2786012766767) )
     5436      ROM_LOAD( "naumouse.j6", 0x3800, 0x0800, CRC(66b3e5dc) SHA1(0ca7e67ef0ff908bb9953399f024e8b1aaf74e55) )
     5437
     5438      ROM_REGION( 0x2000, "gfx1" , 0)
     5439      ROM_LOAD( "naumouse.d5", 0x0000, 0x0800, CRC(2ea7cc3f) SHA1(ffeca1c382a7ae0cd898eab2905a0e8e96b95bee) )
     5440      ROM_LOAD( "naumouse.h5", 0x0800, 0x0800, CRC(0511fcea) SHA1(52a498ca024b5c758ad0c978d3f67cdbbf2c56d3) )
     5441      ROM_LOAD( "naumouse.e5", 0x1000, 0x0800, CRC(f5a627cd) SHA1(2b8bc6d29e2aead924423a232c130151c8a8ebe5) )
     5442      ROM_LOAD( "naumouse.j5", 0x1800, 0x0800, CRC(65f2580e) SHA1(769905837b98736ef2bfcaafa7820083dad80c57) )
     5443
     5444      ROM_REGION( 0x0120, "proms", 0 )
     5445      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5446      ROM_LOAD( "naumouse.a4", 0x0020, 0x0100, CRC(d8772167) SHA1(782fa53f0de7262924a92d75f12a42bc4e44c812) )
     5447
     5448      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5449      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5450      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /*timing - not used */
     5451  ROM_END
     5452
     5453  ROM_START( nmouseb )
     5454      ROM_REGION( 0x10000, "maincpu",0 )
     5455      ROM_LOAD( "naumouse.d7", 0x0000, 0x0800, CRC(e447ecfa) SHA1(45bce93f4a4e1c9994fb6b0c81691a14cae43ae5) )
     5456      ROM_LOAD( "naumouse.d6", 0x0800, 0x0800, CRC(2e6f13d9) SHA1(1278bd1ddd84ac5b956cb4d25c151871fab2b1d9) )
     5457      ROM_LOAD( "naumouse.e7", 0x1000, 0x0800, CRC(44a80f97) SHA1(d06ffd96c72c3c8a3c71df564e8f5f9fb289b398) )
     5458      ROM_LOAD( "naumouse.e6", 0x1800, 0x0800, CRC(9c7a46bd) SHA1(04771a99295fc6d3c41807e2c4437ff4e7e4ba4a) )
     5459      ROM_LOAD( "snatch2.bin", 0x2000, 0x0800, CRC(405aa389) SHA1(687c82d94309c4ed83b72d656dbe7068b1de1b44) )
     5460      ROM_LOAD( "snatch6.bin", 0x2800, 0x0800, CRC(f58e7df4) SHA1(a0853374a2a8c3ab572154d12e2e6297c97bd8b9) )
     5461      ROM_LOAD( "snatch3.bin", 0x3000, 0x0800, CRC(06fb18ec) SHA1(ad57ffdb0fc5acdddeb85c4ce3ad618124fd7a6d) )
     5462      ROM_LOAD( "snatch7.bin", 0x3800, 0x0800, CRC(d187b82b) SHA1(db739d5894a7fbfbc2e384ee1bdfe170935b2df7) )
     5463
     5464      ROM_REGION( 0x2000, "gfx1" , 0)
     5465      ROM_LOAD( "naumouse.d5",  0x0000, 0x0800, CRC(2ea7cc3f) SHA1(ffeca1c382a7ae0cd898eab2905a0e8e96b95bee) )
     5466      ROM_LOAD( "naumouse.h5",  0x0800, 0x0800, CRC(0511fcea) SHA1(52a498ca024b5c758ad0c978d3f67cdbbf2c56d3) )
     5467      ROM_LOAD( "naumouse.e5",  0x1000, 0x0800, CRC(f5a627cd) SHA1(2b8bc6d29e2aead924423a232c130151c8a8ebe5) )
     5468      ROM_LOAD( "snatch11.bin", 0x1800, 0x0800, CRC(330230a5) SHA1(3de4e454dd51b2ef05b5e1c74c8d12f8cb3f42ef) )
     5469
     5470      ROM_REGION( 0x0120, "proms", 0 )
     5471      ROM_LOAD( "82s123.7f", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5472      ROM_LOAD( "naumouse.a4", 0x0020, 0x0100, CRC(d8772167) SHA1(782fa53f0de7262924a92d75f12a42bc4e44c812) )
     5473
     5474      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5475      ROM_LOAD( "82s126.1m", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5476      ROM_LOAD( "82s126.3m", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /*timing - not used */
     5477  ROM_END
     5478
     5479
     5480  /*
     5481  Wood Pecker
     5482  Amenip, 1981
     5483
     5484  This game uses a fairly large epoxy-filled plug-in security module which
     5485  connects to a DIP40 socket on the main board.
     5486  The module contains all of the program code and a Z80 plus some logic glue.
     5487
     5488  Main PCB Layout
     5489  ---------------
     5490
     5491  |--------------|---------------|------------------------|
     5492  |    18.432MHz | DIP40         |     PR.4A              |
     5493  |              |               |                        |
     5494  |              |               |                        |
     5495  |              |       DIP28   |              6148      |
     5496  |-|            |               |                        |
     5497    |            |DIP24  DIP24   |A.5E                    |
     5498  |-|            |               |                        |
     5499  |3             |DIP24  DIP24   |B.5F                    |
     5500  |6       DSW   |               |                        |
     5501  |W             |DIP24  DIP24   |C.5H  2114              |
     5502  |A     PR.8H   |               |                        |
     5503  |Y             |DIP24  DIP24   |D.5J  2114              |
     5504  |              |               |                        |
     5505  |-|            |---------------|      2114  PR.3K  PR.1K|
     5506    |                                                     |
     5507  |-|                                   2114              |
     5508  |                                                       |
     5509  |                                     2114              |
     5510  |                                                       |
     5511  |                                     2114              |
     5512  |                                                       |
     5513  |-------------------------------------------------------|
     5514  Notes:
     5515        DIP24      - Empty sockets
     5516        DIP40      - Location where daughter board module connects to main board
     5517        DIP28      - Empty socket
     5518        2114/6148  - RAM
     5519        A/B/C/D    - 2716 2K x8 EPROMs (DIP24)
     5520        DSW        - 8-position Dip Switch
     5521        PR.4A/3K/1K- 82S129 Bipolar PROMs (DIP16)
     5522        PR.8H      - 82S123 Bipolar PROM (DIP16)
     5523
     5524
     5525  Daughter Board PCB Layout
     5526  -------------------------
     5527
     5528  |---------------|
     5529  |DIP40          |
     5530  |               |
     5531  |               |
     5532  |  Z80   74LS244|
     5533  |               |
     5534  |74LS244 74LS244|
     5535  |74LS04         |
     5536  |74LS10         |
     5537  |74LS138   ROM  |
     5538  |               |
     5539  |ROM       ROM  |
     5540  |               |
     5541  |ROM       ROM  |
     5542  |---------------|
     5543  Notes:
     5544        All IC's shown
     5545        Z80   - Sharp LH0080 Z80 CPU, running at 3.072MHz [18.432/6] (DIP40)
     5546        ROM   - 2732 4K x8 EPROMs (DIP24)
     5547        DIP40 - 40 pins extended from bottom of module for connection to main board
     5548  */
     5549
     5550  ROM_START( woodpeck )
     5551      ROM_REGION( 0x10000, "maincpu",0 )
     5552      /* roms dumped from epoxy block */
     5553      ROM_LOAD( "f.bin", 0x0000, 0x1000, CRC(37ea66ca) SHA1(1779e2af8ffc72ec454a401cf6fa93e77e28576a) )
     5554      ROM_LOAD( "i.bin", 0x8000, 0x1000, CRC(cd115dba) SHA1(51dfa1966fa391654622cd4ffdd09007ec38ea02) )
     5555      ROM_LOAD( "e.bin", 0x9000, 0x1000, CRC(d40b2321) SHA1(0418cb772e24b67fd1d04e06daed33e766c8bc3d) )
     5556      ROM_LOAD( "g.bin", 0xa000, 0x1000, CRC(024092f4) SHA1(4b16a3ff101397af64fc89d9f93bbdb939c8e699) )
     5557      ROM_LOAD( "h.bin", 0xb000, 0x1000, CRC(18ef0fc8) SHA1(4cf3854adbcdd4ca2d855c48acff39fce5be48f7) )
     5558
     5559      ROM_REGION( 0x2000, "gfx1" , 0)
     5560      ROM_LOAD( "a.5e",  0x0000, 0x0800, CRC(15a87f62) SHA1(df6a6594ea8c6957e420b95e25ca33a9add13c09) )
     5561      ROM_LOAD( "c.5h",  0x0800, 0x0800, CRC(ab4abd88) SHA1(04199a127556159878d719599d57a3548eb14a3c) )
     5562      ROM_LOAD( "b.5f",  0x1000, 0x0800, CRC(5b9ba95b) SHA1(6d963da936c26830a614b69c663fc1e20b70f9dc) )
     5563      ROM_LOAD( "d.5j",  0x1800, 0x0800, CRC(d7b80a45) SHA1(8f4ef319b960ae0e2cb30910b7efe6c0691df2bb) )
     5564
     5565      ROM_REGION( 0x0120, "proms", 0 )
     5566      ROM_LOAD( "pr.8h", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5567      ROM_LOAD( "pr.4a", 0x0020, 0x0100, CRC(d8772167) SHA1(782fa53f0de7262924a92d75f12a42bc4e44c812) )
     5568
     5569      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5570      ROM_LOAD( "pr.1k", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5571      ROM_LOAD( "pr.3k", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /*timing - not used */
     5572  ROM_END
     5573
     5574  ROM_START( woodpeca )
     5575      ROM_REGION( 0x10000, "maincpu",0 )
     5576      /* roms dumped from epoxy block */
     5577      ROM_LOAD( "0", 0x0000, 0x1000, CRC(b5ee8bca) SHA1(b9a07dafa1b5ac26e28fd6520506c22b12881bc4) )
     5578      ROM_LOAD( "1", 0x8000, 0x1000, CRC(c5ec2de6) SHA1(4014c99761c184466f586848ed3685c0e4bc272c) )
     5579      ROM_LOAD( "2", 0x9000, 0x1000, CRC(07ea534e) SHA1(d93a9c35be21558b553ae8234b7d7e6e7e7e07f0) )
     5580      ROM_LOAD( "3", 0xa000, 0x1000, CRC(a3a3253a) SHA1(e623bf11063570b7a8617a4590a6050cb73f61a2) )
     5581      ROM_LOAD( "4", 0xb000, 0x1000, CRC(6c50546b) SHA1(1ca1c70a1722172036b30f99d7f6bf005dca9b79) )
     5582
     5583      ROM_REGION( 0x2000, "gfx1" , 0)
     5584      ROM_LOAD( "10.5f", 0x0000, 0x1000, CRC(0bf52102) SHA1(dfd8bb56e25b5599a7fdc9d7db8f9f5f2d7c4b03) )
     5585      ROM_LOAD( "11.5h", 0x1000, 0x1000, CRC(0ed8def8) SHA1(542a6615b45776104f3731a34a899850bb40b5e0) )
     5586
     5587      ROM_REGION( 0x0120, "proms", 0 )
     5588      ROM_LOAD( "pr.8h", 0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5589      ROM_LOAD( "pr.4a", 0x0020, 0x0100, CRC(d8772167) SHA1(782fa53f0de7262924a92d75f12a42bc4e44c812) )
     5590
     5591      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5592      ROM_LOAD( "pr.1k", 0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5593      ROM_LOAD( "pr.3k", 0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )   /*timing - not used */
     5594  ROM_END
     5595
     5596  ROM_START( bigbucks )
     5597      ROM_REGION( 0x10000, "maincpu", 0 )
     5598      ROM_LOAD( "p.rom",        0x0000, 0x4000, CRC(eea6c1c9) SHA1(eaea4ffbcdfbb38364887830fd00ac87fe838006) )
     5599      ROM_LOAD( "m.rom",        0x8000, 0x2000, CRC(bb8f7363) SHA1(11ebdb1a3c589515240d006646f2fb3ead06bdcf) )
     5600
     5601      ROM_REGION( 0x2000, "gfx1", 0 )
     5602      ROM_LOAD( "5e.cpu",       0x0000, 0x1000, CRC(18442c37) SHA1(fac445d15731532364315852492b48470039c0ca) )
     5603      ROM_RELOAD( 0x1000, 0x1000 ) /* Not Used?? */
     5604
     5605      ROM_REGION( 0x0120, "proms", 0 )
     5606      ROM_LOAD( "82s123.7f",    0x0000, 0x0020, CRC(2fc650bd) SHA1(8d0268dee78e47c712202b0ec4f1f51109b1f2a5) )
     5607      ROM_LOAD( "82s126.4a",    0x0020, 0x0100, CRC(3eb3a8e4) SHA1(19097b5f60d1030f8b82d9f1d3a241f93e5c75d6) )
     5608
     5609      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5610      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5611      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5612
     5613      ROM_REGION( 0x60000, "user1", 0 )   /* Question ROMs */
     5614      ROM_LOAD( "rom1.rom",     0x00000, 0x8000, CRC(90b7785f) SHA1(7fc5aa2be868b87ffb9e957c204dabf1508e212e) )
     5615      ROM_LOAD( "rom2.rom",     0x08000, 0x8000, CRC(60172d77) SHA1(92cb2312c6f3395f7ddb45e58695dd000d6ec756) )
     5616      ROM_LOAD( "rom3.rom",     0x10000, 0x8000, CRC(a2207320) SHA1(18ad94b62e7e611ab8a1cbf2d2c6576b8840da2f) )
     5617      ROM_LOAD( "rom4.rom",     0x18000, 0x8000, CRC(5a74c1f9) SHA1(0c55a27a492099ac98daefe0c199761ab1ccce82) )
     5618      ROM_LOAD( "rom5.rom",     0x20000, 0x8000, CRC(93bc1080) SHA1(53e40b8bbc82b3be044f8a39b71fbb811e9263d8) )
     5619      ROM_LOAD( "rom6.rom",     0x28000, 0x8000, CRC(eea2423f) SHA1(34de5495061be7d498773f9a723052c4f13d4a0c) )
     5620      ROM_LOAD( "rom7.rom",     0x30000, 0x8000, CRC(96694055) SHA1(64ebbd85c2a60936f60345b5d573cd9eda196d3f) )
     5621      ROM_LOAD( "rom8.rom",     0x38000, 0x8000, CRC(e68ebf8e) SHA1(cac17ac0231a0526e7f4a58bcb2cae3d05727ee6) )
     5622      ROM_LOAD( "rom9.rom",     0x40000, 0x8000, CRC(fd20921d) SHA1(eedf93841b5ebe9afc4184e089d6694bbdb64445) )
     5623      ROM_LOAD( "rom10.rom",    0x48000, 0x8000, CRC(5091b951) SHA1(224b65795d11599cdbd78e984ac2c71e8847041c) )
     5624      ROM_LOAD( "rom11.rom",    0x50000, 0x8000, CRC(705128db) SHA1(92d45bfd09f61a1a3ac46c2e0ec1f634f04cf049) )
     5625      ROM_LOAD( "rom12.rom",    0x58000, 0x8000, CRC(74c776e7) SHA1(03860d90461b01df4b734b784dddb20843ba811a) )
     5626  ROM_END
     5627
     5628
     5629  ROM_START( drivfrcp )
     5630      ROM_REGION( 0x8000, "maincpu", 0 )
     5631      ROM_LOAD( "drivforc.1",   0x0000, 0x1000, CRC(10b59d27) SHA1(fa09f3b95319a3487fa54b72198f41211663e087) )
     5632      ROM_CONTINUE(             0x2000, 0x1000 )
     5633      ROM_CONTINUE(             0x4000, 0x1000 )
     5634      ROM_CONTINUE(             0x6000, 0x1000 )
     5635
     5636      ROM_REGION( 0x8000, "gfx1", 0 )
     5637      ROM_LOAD( "drivforc.2",   0x0000, 0x1000, CRC(56331cb5) SHA1(520f2a18ebbdfb093c8e4d144749a3f5cbce19bf) )
     5638      ROM_CONTINUE(             0x2000, 0x1000 )
     5639      ROM_CONTINUE(             0x1000, 0x1000 )
     5640      ROM_CONTINUE(             0x3000, 0x1000 )
     5641      ROM_RELOAD(               0x4000, 0x1000 )
     5642      ROM_CONTINUE(             0x6000, 0x1000 )
     5643      ROM_CONTINUE(             0x5000, 0x1000 )
     5644      ROM_CONTINUE(             0x7000, 0x1000 )
     5645
     5646      ROM_REGION( 0x0120, "proms", 0 )
     5647      ROM_LOAD( "drivforc.pr1", 0x0000, 0x0020, CRC(045aa47f) SHA1(ea9034f441937df43a7c0bdb502165fb27d06635) )
     5648      ROM_LOAD( "drivforc.pr2", 0x0020, 0x0100, CRC(9e6d2f1d) SHA1(7bcbcd4c0a40264c3b0667fc6a39ed4f2a86cafe) )
     5649  ROM_END
     5650
     5651
     5652  ROM_START( 8bpm )
     5653      ROM_REGION( 0x8000, "maincpu", 0 )
     5654      ROM_LOAD( "8bpmp.bin",    0x0000, 0x1000, CRC(b4f7eba7) SHA1(9b15543895c70f5ee2b4f91b8af78a884453e4f1) )
     5655      ROM_CONTINUE(             0x2000, 0x1000 )
     5656      ROM_CONTINUE(             0x4000, 0x1000 )
     5657      ROM_CONTINUE(             0x6000, 0x1000 )
     5658
     5659      ROM_REGION( 0x8000, "gfx1", 0 )
     5660      ROM_LOAD( "8bpmc.bin",    0x0000, 0x1000, CRC(1c894a6d) SHA1(04e5c548290095d1d0f873b6c2e639e6dbe8ff35) )
     5661      ROM_CONTINUE(             0x2000, 0x1000 )
     5662      ROM_CONTINUE(             0x1000, 0x1000 )
     5663      ROM_CONTINUE(             0x3000, 0x1000 )
     5664      ROM_RELOAD(               0x4000, 0x1000 )
     5665      ROM_CONTINUE(             0x6000, 0x1000 )
     5666      ROM_CONTINUE(             0x5000, 0x1000 )
     5667      ROM_CONTINUE(             0x7000, 0x1000 )
     5668
     5669      ROM_REGION( 0x0120, "proms", 0 )
     5670      ROM_LOAD( "8bpm.7f",      0x0000, 0x0020, CRC(4cf54241) SHA1(8d1db311941b8f821f949119d5ed2998a2fee80f) )
     5671      ROM_LOAD( "8bpm.4a",      0x0020, 0x0100, CRC(618505a0) SHA1(6f7d4d54706b49d58427a60c2e2a48bd26d160d4) )
     5672  ROM_END
     5673
     5674
     5675  ROM_START( porky )
     5676      ROM_REGION( 0x10000, "maincpu", 0 )
     5677      ROM_LOAD( "pp",           0x0000, 0x1000, CRC(00592624) SHA1(41e554178a89b95bed1f570fab28e2a04f7a68d6) )
     5678      ROM_CONTINUE(             0x2000, 0x1000 )
     5679      ROM_CONTINUE(             0x4000, 0x1000 )
     5680      ROM_CONTINUE(             0x6000, 0x1000 )
     5681      ROM_LOAD( "ps",           0x8000, 0x1000, CRC(2efb9861) SHA1(8c5a23ed15bd985af78a54d2121fe058e53703bb) )
     5682      ROM_CONTINUE(             0xa000, 0x1000 )
     5683      ROM_CONTINUE(             0xc000, 0x1000 )
     5684      ROM_CONTINUE(             0xe000, 0x1000 )
     5685
     5686      ROM_REGION( 0x8000, "gfx1", 0 )
     5687      ROM_LOAD( "pc",           0x0000, 0x1000, CRC(a20e3d39) SHA1(3762289a495d597d6b9540ea7fa663128a9d543c) )
     5688      ROM_CONTINUE(             0x2000, 0x1000 )
     5689      ROM_CONTINUE(             0x1000, 0x1000 )
     5690      ROM_CONTINUE(             0x3000, 0x1000 )
     5691      ROM_RELOAD(               0x4000, 0x1000 )
     5692      ROM_CONTINUE(             0x6000, 0x1000 )
     5693      ROM_CONTINUE(             0x5000, 0x1000 )
     5694      ROM_CONTINUE(             0x7000, 0x1000 )
     5695
     5696      ROM_REGION( 0x0120, "proms", 0 )
     5697      ROM_LOAD( "7f",           0x0000, 0x0020, CRC(98bce7cc) SHA1(e461862ccaf7526421631ac6ebb9b09cd0bc9909) )
     5698      ROM_LOAD( "4a",           0x0020, 0x0100, CRC(30fe0266) SHA1(5081a19ceaeb937ee1378f3374e9d5949d17c3e8) )
     5699  ROM_END
     5700
     5701
     5702  ROM_START( rocktrv2 )
     5703      ROM_REGION( 0x10000, "maincpu", 0 )
     5704      ROM_LOAD( "1.aux",        0x0000, 0x4000, CRC(d182947b) SHA1(b778658386b2ed7c9f518cf20d7805ea62ae727b) )
     5705      ROM_LOAD( "2.aux",        0x6000, 0x2000, CRC(27a7461d) SHA1(0cbd4a03dcff352fbd6b9a9009dc908e34553ee2) )
     5706
     5707      ROM_REGION( 0x2000, "gfx1", 0 )
     5708      ROM_LOAD( "5e.cpu",       0x0000, 0x1000, CRC(0a6cc43b) SHA1(a773bf3dda326797d63ceb908ad4d48f516bcea0) )
     5709      ROM_RELOAD( 0x1000, 0x1000 ) /* Not Used?? */
     5710
     5711      ROM_REGION( 0x0120, "proms", 0 )
     5712      ROM_LOAD( "7f.cpu",       0x0000, 0x0020, CRC(7549a947) SHA1(4f2c3e7d6c38f0b9a90317f91feb3f86c9a0d0a5) )
     5713      ROM_LOAD( "4a.cpu",       0x0020, 0x0100, CRC(ddd5d88e) SHA1(f28e1d90bb495001c30c63b0ef2eec45de568174) )
     5714
     5715      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5716      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5717      ROM_LOAD( "82s126.3m"  ,  0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) ) /* timing - not used */
     5718
     5719      ROM_REGION( 0x40000, "user1", 0 )   /* Question ROMs */
     5720      ROM_LOAD( "3.aux",        0x00000, 0x4000, CRC(5b117ca6) SHA1(08d625312a751b99e132b90dcf8274d0ff2aecf2) )
     5721      ROM_LOAD( "4.aux",        0x04000, 0x4000, CRC(81bfd4c3) SHA1(300cb4a38d3a1234bfc793f0574527033697f5a2) )
     5722      ROM_LOAD( "5.aux",        0x08000, 0x4000, CRC(e976423c) SHA1(53a7f100943313014285ce09c03bd3eabd1388b0) )
     5723      ROM_LOAD( "6.aux",        0x0c000, 0x4000, CRC(425946bf) SHA1(c8b0ba85bbba2f2c33f4ba069bf2fbb9692281d8) )
     5724      ROM_LOAD( "7.aux",        0x10000, 0x4000, CRC(7056fc8f) SHA1(99c18ba4cd4d45531066069d2fd5018177072d5b) )
     5725      ROM_LOAD( "8.aux",        0x14000, 0x4000, CRC(8b86464f) SHA1(7827df4c763fe078d3844eafab728e9400275049) )
     5726      ROM_LOAD( "9.aux",        0x18000, 0x4000, CRC(17d8eba4) SHA1(806593824868e266c776e2e49cebb60dd6f8302e) )
     5727      ROM_LOAD( "10.aux",       0x1c000, 0x4000, CRC(398c8eb4) SHA1(2cbbb11e255b84a54621f5fccfa8354bf925f1df) )
     5728      ROM_LOAD( "11.aux",       0x20000, 0x4000, CRC(7f376424) SHA1(72ba5b01053c0c568562ba7a1257252c47736a3c) )
     5729      ROM_LOAD( "12.aux",       0x24000, 0x4000, BAD_DUMP CRC(8d5bbf81) SHA1(0ebc9afbe6df6d60cf8797e246dda45694dca89e) )
     5730      ROM_LOAD( "13.aux",       0x28000, 0x4000, CRC(99fe2c21) SHA1(9ff29cb2b74a16f5249677172b9d96e11241032e) )
     5731      ROM_LOAD( "14.aux",       0x2c000, 0x4000, CRC(df4cf5e7) SHA1(1228a31b9053ade416a33f699f3f5513d1e47b24) )
     5732      ROM_LOAD( "15.aux",       0x30000, 0x4000, CRC(2a32de26) SHA1(5892d4aea590d109339a66d15ebedaa04629fa7e) )
     5733      ROM_LOAD( "16.aux",       0x34000, 0x4000, CRC(fcd42187) SHA1(e99e1f281eff2f6f42440f30bcb7a5efe34590fd) )
     5734      ROM_LOAD( "17.aux",       0x38000, 0x4000, CRC(24d5c388) SHA1(f7039d84b3cbf00884e87ea7221f1b608a7d879e) )
     5735      ROM_LOAD( "18.aux",       0x3c000, 0x4000, CRC(feb195fd) SHA1(5677d31e526cc7752254e9af0d694f05bc6bc907) )
     5736  ROM_END
     5737
     5738  /* Special thanks to Rob Walmsley for dumping his PCB */
     5739  ROM_START( cannonbp )
     5740      ROM_REGION( 0x10000, "maincpu", 0 )
     5741      ROM_LOAD( "n1-6e",        0x0000, 0x0800, CRC(c68878c7) SHA1(4ab69f820e861a33fa7555286459e5953c126d33) )
     5742      ROM_LOAD( "n2-6k",        0x0800, 0x0800, CRC(ff3951a5) SHA1(8c06526903f2ce3e0ac29ba0138e8c270732150a) )
     5743      ROM_LOAD( "n3-6f",        0x1000, 0x0800, CRC(2329079d) SHA1(461d1258a03ea35ba33f4094c05f8ffda8cdfc47) )
     5744      ROM_LOAD( "n4-6m",        0x1800, 0x0800, CRC(fcc57ecb) SHA1(9efafbb7f3d44652aded860e734332f47354e299) )
     5745      ROM_LOAD( "n5-6h",        0x2000, 0x0800, CRC(52846c9d) SHA1(4a479ff8961c8865aea12976355d0201a8cb1b48) )
     5746      ROM_LOAD( "n6-6n",        0x2800, 0x0800, CRC(59e890dd) SHA1(c148b71d71fb49a138ef1afe771be70bec21ad2b) )
     5747      /* 3000 - 3fff = epoxy protection block */
     5748
     5749      ROM_REGION( 0x2000, "gfx1", 0 )
     5750      ROM_LOAD( "z1-5e",        0x0000, 0x0800, CRC(125779e0) SHA1(c1ae7214e3ff1a941ae0c4948ec886bc84b6f040) )
     5751      ROM_LOAD( "z3-5h",        0x0800, 0x0800, CRC(78f866c0) SHA1(171f0b5ed6c8b1f2ae8dc1b7e97ea9f0c3d8e18e) )
     5752      ROM_LOAD( "z2-5f",        0x1000, 0x0800, CRC(fbd2c99d) SHA1(135a5d86d59010cc608b099054815dd31d443da7) )
     5753      ROM_LOAD( "z4-5j",        0x1800, 0x0800, CRC(8734c904) SHA1(86d9dc72d3cfc863c558967860ac4d2dc8d2c07c) )
     5754
     5755      ROM_REGION( 0x0120, "proms", 0 ) /* these give some ugly colours, but should be correct */
     5756      ROM_LOAD( "colorprom_1",    0x0000, 0x0020, CRC(08f8ae7e) SHA1(cd1e26da5f214f4d9924a30e6d9cf312f91c2028) )
     5757      ROM_LOAD( "colorprom_2",    0x0020, 0x0100, CRC(359a15dc) SHA1(e57ef15eb3baac70fe9e2db897c4165da3c00e20) )
     5758
     5759      ROM_REGION( 0x0200, "namco", 0 )    /* sound PROMs */
     5760      ROM_LOAD( "82s126.1m",    0x0000, 0x0100, CRC(a9cc86bf) SHA1(bbcec0570aeceb582ff8238a4bc8546a23430081) )
     5761      ROM_LOAD( "82s126.3m",    0x0100, 0x0100, CRC(77245b66) SHA1(0c4d0bee858b97632411c440bea6948a74759746) )    /* timing - not used */
     5762  ROM_END
     5763
     5764
     5765  /*************************************
     5766   *
     5767   *  Driver initialization
     5768   *
     5769   *************************************/
     5770
     5771  static void maketrax_rom_decode(running_machine &machine)
     5772  {
     5773      pacman_state *state = machine.driver_data<pacman_state>();
     5774      address_space &space = state->m_maincpu->space(AS_PROGRAM);
     5775      UINT8 *decrypted = auto_alloc_array(machine, UINT8, 0x4000);
     5776      UINT8 *rom = machine.root_device().memregion("maincpu")->base();
     5777
     5778      /* patch protection using a copy of the opcodes so ROM checksum */
     5779      /* tests will not fail */
     5780      space.set_decrypted_region(0x0000, 0x3fff, decrypted);
     5781
     5782      memcpy(decrypted,rom,0x4000);
     5783
     5784      decrypted[0x0415] = 0xc9;
     5785      decrypted[0x1978] = 0x18;
     5786      decrypted[0x238e] = 0xc9;
     5787      decrypted[0x3ae5] = 0xe6;
     5788      decrypted[0x3ae7] = 0x00;
     5789      decrypted[0x3ae8] = 0xc9;
     5790      decrypted[0x3aed] = 0x86;
     5791      decrypted[0x3aee] = 0xc0;
     5792      decrypted[0x3aef] = 0xb0;
     5793  }
     5794
     5795  DRIVER_INIT_MEMBER(pacman_state,maketrax)
     5796  {
     5797      /* set up protection handlers */
     5798      m_maincpu->space(AS_PROGRAM).install_read_handler(0x5080, 0x50bf, read8_delegate(FUNC(pacman_state::maketrax_special_port2_r),this));
     5799      m_maincpu->space(AS_PROGRAM).install_read_handler(0x50c0, 0x50ff, read8_delegate(FUNC(pacman_state::maketrax_special_port3_r),this));
     5800
     5801      maketrax_rom_decode(machine());
     5802  }
     5803
     5804  static void korosuke_rom_decode(running_machine &machine)
     5805  {
     5806      pacman_state *state = machine.driver_data<pacman_state>();
     5807      address_space &space = state->m_maincpu->space(AS_PROGRAM);
     5808      UINT8 *decrypted = auto_alloc_array(machine, UINT8, 0x4000);
     5809      UINT8 *rom = machine.root_device().memregion("maincpu")->base();
     5810
     5811      /* patch protection using a copy of the opcodes so ROM checksum */
     5812      /* tests will not fail */
     5813      space.set_decrypted_region(0x0000, 0x3fff, decrypted);
     5814
     5815      memcpy(decrypted,rom,0x4000);
     5816
     5817      decrypted[0x044c] = 0xc9;
     5818      decrypted[0x1973] = 0x18;
     5819      decrypted[0x238c] = 0xc9;
     5820      decrypted[0x3ae9] = 0xe6;   /* not changed */
     5821      decrypted[0x3aeb] = 0x00;
     5822      decrypted[0x3aec] = 0xc9;
     5823      decrypted[0x3af1] = 0x86;
     5824      decrypted[0x3af2] = 0xc0;
     5825      decrypted[0x3af3] = 0xb0;
     5826  }
     5827
     5828  DRIVER_INIT_MEMBER(pacman_state,korosuke)
     5829  {
     5830      /* set up protection handlers */
     5831      m_maincpu->space(AS_PROGRAM).install_read_handler(0x5080, 0x5080, read8_delegate(FUNC(pacman_state::korosuke_special_port2_r),this));
     5832      m_maincpu->space(AS_PROGRAM).install_read_handler(0x50c0, 0x50ff, read8_delegate(FUNC(pacman_state::korosuke_special_port3_r),this));
     5833
     5834      korosuke_rom_decode(machine());
     5835  }
     5836
     5837  DRIVER_INIT_MEMBER(pacman_state,ponpoko)
     5838  {
     5839      /* The gfx data is swapped wrt the other Pac-Man hardware games. */
     5840      /* Here we revert it to the usual format. */
     5841
     5842      int i, j;
     5843      UINT8 *RAM, temp;
     5844      int length = machine().root_device().memregion("gfx1")->bytes()/2;
     5845
     5846      /* Characters */
     5847      RAM = machine().root_device().memregion("gfx1")->base();
     5848      for (i = 0;i < length;i += 0x10)
     5849      {
     5850          for (j = 0; j < 8; j++)
     5851          {
     5852              temp          = RAM[i+j+0x08];
     5853              RAM[i+j+0x08] = RAM[i+j+0x00];
     5854              RAM[i+j+0x00] = temp;
     5855          }
     5856      }
     5857
     5858      /* Sprites */
     5859      RAM = machine().root_device().memregion("gfx1")->base()+length;
     5860      for (i = 0;i < length;i += 0x20)
     5861      {
     5862          for (j = 0; j < 8; j++)
     5863          {
     5864              temp          = RAM[i+j+0x18];
     5865              RAM[i+j+0x18] = RAM[i+j+0x10];
     5866              RAM[i+j+0x10] = RAM[i+j+0x08];
     5867              RAM[i+j+0x08] = RAM[i+j+0x00];
     5868              RAM[i+j+0x00] = temp;
     5869          }
     5870      }
     5871  }
     5872
     5873  static void eyes_decode(UINT8 *data)
     5874  {
     5875      int j;
     5876      UINT8 swapbuffer[8];
     5877
     5878      for (j = 0; j < 8; j++)
     5879      {
     5880          swapbuffer[j] = data[BITSWAP16(j,15,14,13,12,11,10,9,8,7,6,5,4,3,0,1,2)];
     5881      }
     5882
     5883      for (j = 0; j < 8; j++)
     5884      {
     5885          data[j] = BITSWAP8(swapbuffer[j],7,4,5,6,3,2,1,0);
     5886      }
     5887  }
     5888
     5889  DRIVER_INIT_MEMBER(pacman_state,eyes)
     5890  {
     5891      int i, len;
     5892      UINT8 *RAM;
     5893
     5894      /* CPU ROMs */
     5895
     5896      /* Data lines D3 and D5 swapped */
     5897      RAM = machine().root_device().memregion("maincpu")->base();
     5898      for (i = 0; i < 0x4000; i++)
     5899      {
     5900          RAM[i] = BITSWAP8(RAM[i],7,6,3,4,5,2,1,0);
     5901      }
     5902
     5903
     5904      /* Graphics ROMs */
     5905
     5906      /* Data lines D4 and D6 and address lines A0 and A2 are swapped */
     5907      RAM = machine().root_device().memregion("gfx1")->base();
     5908      len = machine().root_device().memregion("gfx1")->bytes();
     5909      for (i = 0;i < len;i += 8)
     5910          eyes_decode(&RAM[i]);
     5911  }
     5912
     5913
     5914  #define BITSWAP12(val,B11,B10,B9,B8,B7,B6,B5,B4,B3,B2,B1,B0) \
     5915      BITSWAP16(val,15,14,13,12,B11,B10,B9,B8,B7,B6,B5,B4,B3,B2,B1,B0)
     5916
     5917  #define BITSWAP11(val,B10,B9,B8,B7,B6,B5,B4,B3,B2,B1,B0) \
     5918      BITSWAP16(val,15,14,13,12,11,B10,B9,B8,B7,B6,B5,B4,B3,B2,B1,B0)
     5919
     5920  static void mspacman_install_patches(UINT8 *ROM)
     5921  {
     5922      int i;
     5923
     5924      /* copy forty 8-byte patches into Pac-Man code */
     5925      for (i = 0; i < 8; i++)
     5926      {
     5927          ROM[0x0410+i] = ROM[0x8008+i];
     5928          ROM[0x08E0+i] = ROM[0x81D8+i];
     5929          ROM[0x0A30+i] = ROM[0x8118+i];
     5930          ROM[0x0BD0+i] = ROM[0x80D8+i];
     5931          ROM[0x0C20+i] = ROM[0x8120+i];
     5932          ROM[0x0E58+i] = ROM[0x8168+i];
     5933          ROM[0x0EA8+i] = ROM[0x8198+i];
     5934
     5935          ROM[0x1000+i] = ROM[0x8020+i];
     5936          ROM[0x1008+i] = ROM[0x8010+i];
     5937          ROM[0x1288+i] = ROM[0x8098+i];
     5938          ROM[0x1348+i] = ROM[0x8048+i];
     5939          ROM[0x1688+i] = ROM[0x8088+i];
     5940          ROM[0x16B0+i] = ROM[0x8188+i];
     5941          ROM[0x16D8+i] = ROM[0x80C8+i];
     5942          ROM[0x16F8+i] = ROM[0x81C8+i];
     5943          ROM[0x19A8+i] = ROM[0x80A8+i];
     5944          ROM[0x19B8+i] = ROM[0x81A8+i];
     5945
     5946          ROM[0x2060+i] = ROM[0x8148+i];
     5947          ROM[0x2108+i] = ROM[0x8018+i];
     5948          ROM[0x21A0+i] = ROM[0x81A0+i];
     5949          ROM[0x2298+i] = ROM[0x80A0+i];
     5950          ROM[0x23E0+i] = ROM[0x80E8+i];
     5951          ROM[0x2418+i] = ROM[0x8000+i];
     5952          ROM[0x2448+i] = ROM[0x8058+i];
     5953          ROM[0x2470+i] = ROM[0x8140+i];
     5954          ROM[0x2488+i] = ROM[0x8080+i];
     5955          ROM[0x24B0+i] = ROM[0x8180+i];
     5956          ROM[0x24D8+i] = ROM[0x80C0+i];
     5957          ROM[0x24F8+i] = ROM[0x81C0+i];
     5958          ROM[0x2748+i] = ROM[0x8050+i];
     5959          ROM[0x2780+i] = ROM[0x8090+i];
     5960          ROM[0x27B8+i] = ROM[0x8190+i];
     5961          ROM[0x2800+i] = ROM[0x8028+i];
     5962          ROM[0x2B20+i] = ROM[0x8100+i];
     5963          ROM[0x2B30+i] = ROM[0x8110+i];
     5964          ROM[0x2BF0+i] = ROM[0x81D0+i];
     5965          ROM[0x2CC0+i] = ROM[0x80D0+i];
     5966          ROM[0x2CD8+i] = ROM[0x80E0+i];
     5967          ROM[0x2CF0+i] = ROM[0x81E0+i];
     5968          ROM[0x2D60+i] = ROM[0x8160+i];
     5969      }
     5970  }
     5971
     5972  DRIVER_INIT_MEMBER(pacman_state,mspacman)
     5973  {
     5974      int i;
     5975      UINT8 *ROM, *DROM;
     5976
     5977      /* CPU ROMs */
     5978
     5979      /* Pac-Man code is in low bank */
     5980      ROM = machine().root_device().memregion("maincpu")->base();
     5981
     5982      /* decrypted Ms. Pac-Man code is in high bank */
     5983      DROM = &machine().root_device().memregion("maincpu")->base()[0x10000];
     5984
     5985      /* copy ROMs into decrypted bank */
     5986      for (i = 0; i < 0x1000; i++)
     5987      {
     5988          DROM[0x0000+i] = ROM[0x0000+i]; /* pacman.6e */
     5989          DROM[0x1000+i] = ROM[0x1000+i]; /* pacman.6f */
     5990          DROM[0x2000+i] = ROM[0x2000+i]; /* pacman.6h */
     5991          DROM[0x3000+i] = BITSWAP8(ROM[0xb000+BITSWAP12(i,11,3,7,9,10,8,6,5,4,2,1,0)],0,4,5,7,6,3,2,1);  /* decrypt u7 */
     5992      }
     5993      for (i = 0; i < 0x800; i++)
     5994      {
     5995          DROM[0x8000+i] = BITSWAP8(ROM[0x8000+BITSWAP11(i,   8,7,5,9,10,6,3,4,2,1,0)],0,4,5,7,6,3,2,1);  /* decrypt u5 */
     5996          DROM[0x8800+i] = BITSWAP8(ROM[0x9800+BITSWAP12(i,11,3,7,9,10,8,6,5,4,2,1,0)],0,4,5,7,6,3,2,1);  /* decrypt half of u6 */
     5997          DROM[0x9000+i] = BITSWAP8(ROM[0x9000+BITSWAP12(i,11,3,7,9,10,8,6,5,4,2,1,0)],0,4,5,7,6,3,2,1);  /* decrypt half of u6 */
     5998          DROM[0x9800+i] = ROM[0x1800+i];     /* mirror of pacman.6f high */
     5999      }
     6000      for (i = 0; i < 0x1000; i++)
     6001      {
     6002          DROM[0xa000+i] = ROM[0x2000+i];     /* mirror of pacman.6h */
     6003          DROM[0xb000+i] = ROM[0x3000+i];     /* mirror of pacman.6j */
     6004      }
     6005      /* install patches into decrypted bank */
     6006      mspacman_install_patches(DROM);
     6007
     6008      /* mirror Pac-Man ROMs into upper addresses of normal bank */
     6009      for (i = 0; i < 0x1000; i++)
     6010      {
     6011          ROM[0x8000+i] = ROM[0x0000+i];
     6012          ROM[0x9000+i] = ROM[0x1000+i];
     6013          ROM[0xa000+i] = ROM[0x2000+i];
     6014          ROM[0xb000+i] = ROM[0x3000+i];
     6015      }
     6016
     6017      /* initialize the banks */
     6018      machine().root_device().membank("bank1")->configure_entries(0, 2, &ROM[0x00000], 0x10000);
     6019      machine().root_device().membank("bank1")->set_entry(1);
     6020  }
     6021
     6022  DRIVER_INIT_MEMBER(pacman_state,woodpek)
     6023  {
     6024      int i, len;
     6025      UINT8 *RAM;
     6026
     6027      /* Graphics ROMs */
     6028
     6029      /* Data lines D4 and D6 and address lines A0 and A2 are swapped */
     6030      RAM = machine().root_device().memregion("gfx1")->base();
     6031      len = machine().root_device().memregion("gfx1")->bytes();
     6032      for (i = 0;i < len;i += 8)
     6033          eyes_decode(&RAM[i]);
     6034  }
     6035
     6036  DRIVER_INIT_MEMBER(pacman_state,pacplus)
     6037  {
     6038      pacplus_decode(machine());
     6039  }
     6040
     6041  DRIVER_INIT_MEMBER(pacman_state,jumpshot)
     6042  {
     6043      jumpshot_decode(machine());
     6044  }
     6045
     6046  DRIVER_INIT_MEMBER(pacman_state,drivfrcp)
     6047  {
     6048      UINT8 *ROM = machine().root_device().memregion("maincpu")->base();
     6049      machine().root_device().membank("bank1")->set_base(&ROM[0 * 0x2000]);
     6050      machine().root_device().membank("bank2")->set_base(&ROM[1 * 0x2000]);
     6051      machine().root_device().membank("bank3")->set_base(&ROM[2 * 0x2000]);
     6052      machine().root_device().membank("bank4")->set_base(&ROM[3 * 0x2000]);
     6053  }
     6054
     6055  DRIVER_INIT_MEMBER(pacman_state,8bpm)
     6056  {
     6057      UINT8 *ROM = machine().root_device().memregion("maincpu")->base();
     6058      int i;
     6059
     6060      /* Data lines D0 and D6 swapped */
     6061      for( i = 0; i < 0x8000; i++ )
     6062      {
     6063          ROM[i] = BITSWAP8(ROM[i],7,0,5,4,3,2,1,6);
     6064      }
     6065
     6066      machine().root_device().membank("bank1")->set_base(&ROM[0 * 0x2000]);
     6067      machine().root_device().membank("bank2")->set_base(&ROM[1 * 0x2000]);
     6068      machine().root_device().membank("bank3")->set_base(&ROM[2 * 0x2000]);
     6069      machine().root_device().membank("bank4")->set_base(&ROM[3 * 0x2000]);
     6070  }
     6071
     6072  DRIVER_INIT_MEMBER(pacman_state,porky)
     6073  {
     6074      UINT8 *ROM = machine().root_device().memregion("maincpu")->base();
     6075      int i;
     6076
     6077      /* Data lines D0 and D4 swapped */
     6078      for(i = 0; i < 0x10000; i++)
     6079      {
     6080          ROM[i] = BITSWAP8(ROM[i],7,6,5,0,3,2,1,4);
     6081      }
     6082
     6083      machine().root_device().membank("bank1")->configure_entries(0, 2, &ROM[0 * 0x2000], 0x8000);
     6084      machine().root_device().membank("bank2")->configure_entries(0, 2, &ROM[1 * 0x2000], 0x8000);
     6085      machine().root_device().membank("bank3")->configure_entries(0, 2, &ROM[2 * 0x2000], 0x8000);
     6086      machine().root_device().membank("bank4")->configure_entries(0, 2, &ROM[3 * 0x2000], 0x8000);
     6087
     6088      machine().root_device().membank("bank1")->set_entry(0);
     6089      machine().root_device().membank("bank2")->set_entry(0);
     6090      machine().root_device().membank("bank3")->set_entry(0);
     6091      machine().root_device().membank("bank4")->set_entry(0);
     6092  }
     6093
     6094  DRIVER_INIT_MEMBER(pacman_state,rocktrv2)
     6095  {
     6096      /* hack to pass the rom check for the bad rom */
     6097      UINT8 *ROM = machine().root_device().memregion("maincpu")->base();
     6098
     6099      ROM[0x7ffe] = 0xa7;
     6100      ROM[0x7fee] = 0x6d;
     6101  }
     6102
     6103  /* The encrpytion is provided by a 74298 sitting on top of the rom at 6f.
     6104  The select line is tied to a2; a0 and a1 of the eprom are are left out of
     6105  socket and run through the 74298.  Clock is tied to system clock.  */
     6106  DRIVER_INIT_MEMBER(pacman_state,mspacmbe)
     6107  {
     6108      UINT8 temp;
     6109      UINT8 *RAM = machine().root_device().memregion("maincpu")->base();
     6110      int i;
     6111
     6112      /* Address lines A1 and A0 swapped if A2=0 */
     6113      for(i = 0x1000; i < 0x2000; i+=4)
     6114      {
     6115          if (!(i & 8))
     6116          {
     6117                  temp = RAM[i+1];
     6118                  RAM[i+1] = RAM[i+2];
     6119                  RAM[i+2] = temp;
     6120          };
     6121      }
     6122  }
     6123
     6124  READ8_MEMBER(pacman_state::mspacii_protection_r)
     6125  {
     6126      /* used by extra routine at $3FE, bit 4 of 504d needs to be low, and of 504e to be high */
     6127      UINT8 data = ioport("IN1")->read();
     6128      return (data & 0xef) | (offset << 4 & 0x10);
     6129  }
     6130
     6131  DRIVER_INIT_MEMBER(pacman_state,mspacii)
     6132  {
     6133      // protection
     6134      m_maincpu->space(AS_PROGRAM).install_read_handler(0x504d, 0x506f, read8_delegate(FUNC(pacman_state::mspacii_protection_r), this));
     6135  }
     6136
     6137  DRIVER_INIT_MEMBER(pacman_state,superabc)
     6138  {
     6139      UINT8 *src = machine().root_device().memregion("user1")->base();
     6140      UINT8 *dest = machine().root_device().memregion("gfx1")->base();
     6141
     6142      // descramble gfx
     6143      for (int i = 0; i < 0x10000; i++)
     6144          dest[i] = src[BITSWAP24(i,23,22,21,20,19,18,17, 12,13,14,16,15, 11,10,9,8,7,6,5,4,3,2,1,0)];
     6145  }
     6146
     6147  READ8_MEMBER(pacman_state::cannonbp_protection_r)
     6148  {
     6149      /* At 6p where a rom would usually be there is an epoxy resin chip with 'Novomatic Industrie' Cannon Ball tm 1984 label. */
     6150      /* As I have no clue about what shall be in this chip, what follows is only a simulation which is enough to play the game. */
     6151      switch (offset)
     6152      {
     6153          default:
     6154              logerror("CPU0 %04x: Unhandled protection read, offset %04x\n", space.device().safe_pc(), offset);
     6155              return 0x00;
     6156
     6157          case 0x0000: // unknown
     6158          case 0x0003: // unknown
     6159          case 0x0012: // unknown
     6160              return 0x00;
     6161
     6162          /* code at 0x2b77 :
     6163               - after partial checksum (range 0x0000-0x1e7c), HL = 0x9d39
     6164               - then L += A and HL += 0x717c to determine jump address after bonus round
     6165                 where A is the result of 8 reads from 0x3001
     6166               - as jump address shall be 0x0efb, A = 0x46
     6167               - as H after partial checksum is wrong in the bootlegs,
     6168                 they will reset or hang after bonus round
     6169                 unless you patch ROM at 0x2ba0 with this code :
     6170                   2BA0: 21 FB 0E      ld   hl,$0EFB
     6171                   2BA3: 00            nop
     6172          */
     6173          case 0x0004:
     6174              m_cannonb_bit_to_read = 7;
     6175              return 0x00;
     6176          case 0x0001: // affects the ball hitting the blocks as well as jump address after bonus round
     6177              if (space.device().safe_pc() == 0x2b97)
     6178                  return (BIT(0x46, m_cannonb_bit_to_read--) << 7);
     6179              else
     6180                  return 0xff;            /* value taken from the bootlegs */
     6181
     6182          /* code at 0x2613 : HL += 0xd088 for start position - in the bootlegs, start position = 0x1088 */
     6183          case 0x0105: // player start x position -> register L
     6184              return 0x00;
     6185          case 0x0107: // player start y position -> register H
     6186              return 0x40;
     6187      }
     6188  }
     6189
     6190
     6191  DRIVER_INIT_MEMBER(pacman_state,cannonbp)
     6192  {
     6193      /* extra memory */
     6194      m_maincpu->space(AS_PROGRAM).install_ram(0x4800, 0x4bff);
     6195
     6196      /* protection? */
     6197      m_maincpu->space(AS_PROGRAM).install_read_handler(0x3000, 0x3fff, read8_delegate(FUNC(pacman_state::cannonbp_protection_r),this));
     6198  }
     6199
     6200
     6201  /*************************************
     6202   *
     6203   *  Game drivers
     6204   *
     6205   *************************************/
     6206
     6207  /*          rom       parent    machine   inp       init */
     6208  GAME( 1980, puckman,  0,        pacman,   pacman,   driver_device, 0,        ROT90,  "Namco", "Puck Man (Japan set 1)", GAME_SUPPORTS_SAVE )
     6209  GAME( 1980, puckmana, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "Namco", "Puck Man (Japan set 2)", GAME_SUPPORTS_SAVE )
     6210  GAME( 1980, puckmanf, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Puck Man (Japan set 1, speedup hack)", GAME_SUPPORTS_SAVE )
     6211  GAME( 1980, puckmanh, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "bootleg", "Puck Man (Falcom?)", GAME_SUPPORTS_SAVE )
     6212  GAME( 1980, pacman,   puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "Namco (Midway license)", "Pac-Man (Midway)", GAME_SUPPORTS_SAVE )
     6213  GAME( 1980, pacmanf,  puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Pac-Man (Midway, speedup hack)", GAME_SUPPORTS_SAVE )
     6214  GAME( 1981, puckmod,  puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "Namco", "Puck Man (Japan set 3)", GAME_SUPPORTS_SAVE )
     6215  GAME( 1981, pacmod,   puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "Namco (Midway license)", "Pac-Man (Midway, harder)", GAME_SUPPORTS_SAVE )
     6216  GAME( 1980, newpuc2,  puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Newpuc2 (set 1)", GAME_SUPPORTS_SAVE )
     6217  GAME( 1980, newpuc2b, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Newpuc2 (set 2)", GAME_SUPPORTS_SAVE )
     6218  GAME( 1980, newpuckx, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "New Puck-X", GAME_SUPPORTS_SAVE )
     6219  GAME( 1981, pacheart, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Pac-Man (Hearts)", GAME_SUPPORTS_SAVE )
     6220  GAME( 19??, bucaner,  puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Buccaneer", GAME_SUPPORTS_SAVE )
     6221  GAME( 1981, hangly,   puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Hangly-Man (set 1)", GAME_SUPPORTS_SAVE )
     6222  GAME( 1981, hangly2,  puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Hangly-Man (set 2)", GAME_SUPPORTS_SAVE )
     6223  GAME( 1981, hangly3,  puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Hangly-Man (set 3)", GAME_SUPPORTS_SAVE )
     6224  GAME( 1981, popeyeman,puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Popeye-Man", GAME_SUPPORTS_SAVE )
     6225  GAME( 1980, crockman, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "bootleg (Rene Pierre)", "Crock-Man", GAME_SUPPORTS_SAVE )
     6226  GAME( 1981, piranhah, puckman,  pacman,   mspacman, driver_device, 0,        ROT90,  "hack", "Piranha (hack)", GAME_SUPPORTS_SAVE )
     6227  GAME( 1981, crush,    0,        pacman,   maketrax, pacman_state,  maketrax, ROT90,  "Alpha Denshi Co. / Kural Samno Electric, Ltd.", "Crush Roller (set 1)", GAME_SUPPORTS_SAVE )
     6228  GAME( 1981, crush2,   crush,    pacman,   maketrax, driver_device, 0,        ROT90,  "Alpha Denshi Co. / Kural Esco Electric, Ltd.", "Crush Roller (set 2)", GAME_SUPPORTS_SAVE )
     6229  GAME( 1981, crush3,   crush,    pacman,   maketrax, pacman_state,  eyes,     ROT90,  "Alpha Denshi Co. / Kural Electric, Ltd.", "Crush Roller (set 3)", GAME_SUPPORTS_SAVE )
     6230  GAME( 1981, crush4,   crush,    crush4,   crush4,   driver_device, 0,        ROT90,  "Alpha Denshi Co. / Kural TWT", "Crush Roller (set 4)", GAME_SUPPORTS_SAVE )
     6231  GAME( 1981, maketrax, crush,    pacman,   maketrax, pacman_state,  maketrax, ROT270, "Alpha Denshi Co. / Kural (Williams license)", "Make Trax (US set 1)", GAME_SUPPORTS_SAVE )
     6232  GAME( 1981, maketrxb, crush,    pacman,   maketrax, pacman_state,  maketrax, ROT270, "Alpha Denshi Co. / Kural (Williams license)", "Make Trax (US set 2)", GAME_SUPPORTS_SAVE )
     6233  GAME( 1981, korosuke, crush,    pacman,   korosuke, pacman_state,  korosuke, ROT90,  "Alpha Denshi Co. / Kural Electric, Ltd.", "Korosuke Roller (Japan)", GAME_SUPPORTS_SAVE )
     6234  GAME( 1981, crushbl,  crush,    pacman,   maketrax, driver_device, 0,        ROT90,  "bootleg", "Crush Roller (bootleg set 1)", GAME_SUPPORTS_SAVE )
     6235  GAME( 1981, crushbl2, crush,    pacman,   mbrush,   pacman_state,  maketrax, ROT90,  "bootleg", "Crush Roller (bootleg set 2)", GAME_SUPPORTS_SAVE )
     6236  GAME( 1981, crushs,   crush,    crushs,   crushs,   driver_device, 0,        ROT90,  "bootleg (Sidam)", "Crush Roller (bootleg set 3)", GAME_SUPPORTS_SAVE ) // Sidam PCB, no Sidam text
     6237  GAME( 1981, mbrush,   crush,    pacman,   mbrush,   pacman_state,  maketrax, ROT90,  "bootleg", "Magic Brush (bootleg of Crush Roller)", GAME_SUPPORTS_SAVE )
     6238  GAME( 1981, paintrlr, crush,    pacman,   paintrlr, driver_device, 0,        ROT90,  "bootleg", "Paint Roller (bootleg of Crush Roller)", GAME_SUPPORTS_SAVE )
     6239  GAME( 1982, pacplus,  0,        pacman,   pacman,   pacman_state,  pacplus,  ROT90,  "Namco (Midway license)", "Pac-Man Plus", GAME_SUPPORTS_SAVE )
     6240  GAME( 1982, joyman,   puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Joyman", GAME_SUPPORTS_SAVE )
     6241  GAME( 1982, ctrpllrp, puckman,  pacman,   pacman,   driver_device, 0,        ROT90,  "hack", "Caterpillar Pacman Hack", GAME_SUPPORTS_SAVE )
     6242  GAME( 1982, eyes,     0,        pacman,   eyes,     pacman_state,  eyes,     ROT90,  "Techstar (Rock-Ola license)", "Eyes (US set 1)", GAME_SUPPORTS_SAVE )
     6243  GAME( 1982, eyes2,    eyes,     pacman,   eyes,     pacman_state,  eyes,     ROT90,  "Techstar (Rock-Ola license)", "Eyes (US set 2)", GAME_SUPPORTS_SAVE )
     6244  GAME( 1982, eyesb,    eyes,     pacman,   eyes,     pacman_state,  eyes,     ROT90,  "bootleg", "Eyes (bootleg set 1)", GAME_SUPPORTS_SAVE )
     6245  GAME( 1982, eyeszac,  eyes,     pacman,   eyes,     pacman_state,  eyes,     ROT90,  "Techstar (Zaccaria license)", "Eyes (Italy)", GAME_SUPPORTS_SAVE | GAME_NOT_WORKING ) // bad dump
     6246  GAME( 1982, eyeszacb, eyes,     pacman,   eyes,     driver_device, 0,        ROT90,  "bootleg", "Eyes (bootleg set 2, decrypted)", GAME_SUPPORTS_SAVE ) // based on Zaccaria version
     6247  GAME( 1983, birdiy,   0,        birdiy,   birdiy,   driver_device, 0,        ROT270, "Mama Top", "Birdiy", GAME_NO_COCKTAIL | GAME_SUPPORTS_SAVE )
     6248  GAME( 1983, mrtnt,    0,        pacman,   mrtnt,    pacman_state,  eyes,     ROT90,  "Techstar (Telko license)", "Mr. TNT", GAME_SUPPORTS_SAVE )
     6249  GAME( 1983, gorkans,  mrtnt,    pacman,   mrtnt,    driver_device, 0,        ROT90,  "Techstar", "Gorkans", GAME_SUPPORTS_SAVE )
     6250  GAME( 1983, eggor,    0,        pacman,   mrtnt,    pacman_state,  eyes,     ROT90,  "Telko", "Eggor", GAME_WRONG_COLORS | GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE )
     6251  GAME( 1985, jumpshot, 0,        pacman,   jumpshot, pacman_state,  jumpshot, ROT90,  "Bally Midway", "Jump Shot", GAME_SUPPORTS_SAVE )
     6252  GAME( 1985, jumpshotp,jumpshot, pacman,   jumpshotp,pacman_state,  jumpshot, ROT90,  "Bally Midway", "Jump Shot Engineering Sample", GAME_SUPPORTS_SAVE )
     6253  GAME( 1985, shootbul, 0,        pacman,   shootbul, pacman_state,  jumpshot, ROT90,  "Bally Midway", "Shoot the Bull", GAME_SUPPORTS_SAVE )
     6254  GAME( 1981, piranha,  puckman,  piranha,  mspacman, pacman_state,  eyes,     ROT90,  "GL (US Billiards license)", "Piranha", GAME_SUPPORTS_SAVE )
     6255  GAME( 1981, piranhao, puckman,  piranha,  mspacman, pacman_state,  eyes,     ROT90,  "GL (US Billiards license)", "Piranha (older)", GAME_SUPPORTS_SAVE )
     6256  GAME( 1981, abscam,   puckman,  piranha,  mspacman, pacman_state,  eyes,     ROT90,  "GL (US Billiards license)", "Abscam", GAME_SUPPORTS_SAVE )
     6257  GAME( 1981, nmouse,   0,        nmouse,   nmouse,   pacman_state,  eyes,     ROT90,  "Amenip (Palcom Queen River)", "Naughty Mouse (set 1)", GAME_SUPPORTS_SAVE )
     6258  GAME( 1981, nmouseb,  nmouse,   nmouse,   nmouse,   pacman_state,  eyes,     ROT90,  "Amenip Nova Games Ltd.", "Naughty Mouse (set 2)", GAME_SUPPORTS_SAVE )
     6259  GAME( 1981, mspacman, 0,        mspacman, mspacman, pacman_state,  mspacman, ROT90,  "Midway / General Computer Corporation", "Ms. Pac-Man", GAME_SUPPORTS_SAVE )
     6260  GAME( 1981, mspacmnf, mspacman, mspacman, mspacman, pacman_state,  mspacman, ROT90,  "hack", "Ms. Pac-Man (speedup hack)", GAME_SUPPORTS_SAVE )
     6261  GAME( 1981, mspacmat, mspacman, mspacman, mspacman, pacman_state,  mspacman, ROT90,  "hack", "Ms. Pac Attack", GAME_SUPPORTS_SAVE )
     6262  GAME( 1989, msheartb, mspacman, mspacman, mspacman, pacman_state,  mspacman, ROT90,  "hack (Two-Bit Score)", "Ms. Pac-Man Heart Burn", GAME_SUPPORTS_SAVE )
     6263  GAME( 1981, woodpeck, 0,        woodpek,  woodpek,  pacman_state,  woodpek,  ROT90,  "Amenip (Palcom Queen River)", "Woodpecker (set 1)", GAME_SUPPORTS_SAVE )
     6264  GAME( 1981, woodpeca, woodpeck, woodpek,  woodpek,  pacman_state,  woodpek,  ROT90,  "Amenip", "Woodpecker (set 2)", GAME_SUPPORTS_SAVE )
     6265  GAME( 1981, mspacmab, mspacman, woodpek,  mspacman, driver_device, 0,        ROT90,  "bootleg", "Ms. Pac-Man (bootleg)", GAME_SUPPORTS_SAVE )
     6266  GAME( 1981, mspacmbe, mspacman, woodpek,  mspacman, pacman_state,  mspacmbe, ROT90,  "bootleg", "Ms. Pac-Man (bootleg, encrypted)", GAME_SUPPORTS_SAVE )
     6267  GAME( 1981, mspacii,  mspacman, woodpek,  mspacman, pacman_state,  mspacii,  ROT90,  "bootleg (Orca)", "Ms. Pac-Man II (Orca bootleg set 1)", GAME_SUPPORTS_SAVE )
     6268  GAME( 1981, mspacii2, mspacman, woodpek,  mspacman, pacman_state,  mspacii,  ROT90,  "bootleg (Orca)", "Ms. Pac-Man II (Orca bootleg set 2)", GAME_SUPPORTS_SAVE )
     6269  GAME( 1981, pacgal,   mspacman, woodpek,  mspacman, driver_device, 0,        ROT90,  "hack", "Pac-Gal", GAME_SUPPORTS_SAVE )
     6270  GAME( 1981, mspacpls, mspacman, woodpek,  mspacpls, driver_device, 0,        ROT90,  "hack", "Ms. Pac-Man Plus", GAME_SUPPORTS_SAVE )
     6271  GAME( 1982, ponpoko,  0,        woodpek,  ponpoko,  pacman_state,  ponpoko,  ROT0,   "Sigma Enterprises Inc.", "Ponpoko", GAME_SUPPORTS_SAVE )
     6272  GAME( 1982, ponpokov, ponpoko,  woodpek,  ponpoko,  pacman_state,  ponpoko,  ROT0,   "Sigma Enterprises Inc. (Venture Line license)", "Ponpoko (Venture Line)", GAME_SUPPORTS_SAVE )
     6273  GAME( 1985, lizwiz,   0,        woodpek,  lizwiz,   driver_device, 0,        ROT90,  "Techstar (Sunn license)", "Lizard Wizard", GAME_SUPPORTS_SAVE )
     6274  GAME( 1982, alibaba,  0,        alibaba,  alibaba,  driver_device, 0,        ROT90,  "Sega", "Ali Baba and 40 Thieves", GAME_UNEMULATED_PROTECTION | GAME_SUPPORTS_SAVE )
     6275  GAME( 1982, alibabab, alibaba,  alibaba,  alibaba,  driver_device, 0,        ROT90,  "bootleg", "Mustafa and 40 Thieves (bootleg)", GAME_UNEMULATED_PROTECTION | GAME_SUPPORTS_SAVE )
     6276  GAME( 1982, dremshpr, 0,        dremshpr, dremshpr, driver_device, 0,        ROT270, "Sanritsu", "Dream Shopper", GAME_SUPPORTS_SAVE )
     6277  GAME( 1983, vanvan,   0,        vanvan,   vanvan,   driver_device, 0,        ROT270, "Sanritsu", "Van-Van Car", GAME_SUPPORTS_SAVE )
     6278  GAME( 1983, vanvank,  vanvan,   vanvan,   vanvank,  driver_device, 0,        ROT270, "Sanritsu (Karateco license?)", "Van-Van Car (Karateco set 1)", GAME_SUPPORTS_SAVE ) // or bootleg?
     6279  GAME( 1983, vanvanb,  vanvan,   vanvan,   vanvank,  driver_device, 0,        ROT270, "Sanritsu (Karateco license?)", "Van-Van Car (Karateco set 2)", GAME_SUPPORTS_SAVE ) // "
     6280  GAME( 1983, bwcasino, 0,        acitya,   bwcasino, driver_device, 0,        ROT90,  "Epos Corporation", "Boardwalk Casino", GAME_SUPPORTS_SAVE )
     6281  GAME( 1983, acitya,   bwcasino, acitya,   acitya,   driver_device, 0,        ROT90,  "Epos Corporation", "Atlantic City Action", GAME_SUPPORTS_SAVE )
     6282  GAME( 1983, theglobp, suprglob, theglobp, theglobp, driver_device, 0,        ROT90,  "Epos Corporation", "The Glob (Pac-Man hardware)", GAME_SUPPORTS_SAVE )
     6283  GAME( 1983, sprglobp, suprglob, theglobp, theglobp, driver_device, 0,        ROT90,  "Epos Corporation", "Super Glob (Pac-Man hardware)", GAME_SUPPORTS_SAVE )
     6284  GAME( 1983, sprglbpg, suprglob, pacman,   theglobp, driver_device, 0,        ROT90,  "bootleg", "Super Glob (Pac-Man hardware) (German bootleg)", GAME_SUPPORTS_SAVE )
     6285  GAME( 1984, beastf,   suprglob, theglobp, theglobp, driver_device, 0,        ROT90,  "Epos Corporation", "Beastie Feastie", GAME_SUPPORTS_SAVE )
     6286  GAME( 1984, drivfrcp, 0,        drivfrcp, drivfrcp, pacman_state,  drivfrcp, ROT90,  "Shinkai Inc. (Magic Electronics Inc. license)", "Driving Force (Pac-Man conversion)", GAME_SUPPORTS_SAVE )
     6287  GAME( 1985, 8bpm,     8ballact, 8bpm,     8bpm,     pacman_state,  8bpm,     ROT90,  "Seatongrove Ltd (Magic Electronics USA license)", "Eight Ball Action (Pac-Man conversion)", GAME_SUPPORTS_SAVE )
     6288  GAME( 1985, porky,    0,        porky,    porky,    pacman_state,  porky,    ROT90,  "Shinkai Inc. (Magic Electronics Inc. license)", "Porky", GAME_SUPPORTS_SAVE )
     6289  GAME( 1986, rocktrv2, 0,        rocktrv2, rocktrv2, pacman_state,  rocktrv2, ROT90,  "Triumph Software Inc.", "MTV Rock-N-Roll Trivia (Part 2)", GAME_SUPPORTS_SAVE )
     6290  GAME( 1986, bigbucks, 0,        bigbucks, bigbucks, driver_device, 0,        ROT90,  "Dynasoft Inc.", "Big Bucks", GAME_SUPPORTS_SAVE )
     6291  GAME( 1992, mschamp,  mspacman, mschamp,  mschamp,  driver_device, 0,        ROT90,  "hack", "Ms. Pacman Champion Edition / Zola-Puc Gal", GAME_SUPPORTS_SAVE ) /* Rayglo version */
     6292  GAME( 1995, mschamps, mspacman, mschamp,  mschamp,  driver_device, 0,        ROT90,  "hack", "Ms. Pacman Champion Edition / Super Zola-Puc Gal", GAME_SUPPORTS_SAVE )
     6293  GAME( 198?, cannonbp, 0,        pacman,   cannonbp, pacman_state,  cannonbp, ROT90,  "Novomatic", "Cannon Ball (Pac-Man Hardware)", GAME_WRONG_COLORS|GAME_SUPPORTS_SAVE )
     6294  GAME( 1999, superabc, 0,        superabc, superabc, pacman_state,  superabc, ROT90,  "hack (Two-Bit Score)", "Super ABC (Pac-Man multigame kit, Sep. 03 1999)", GAME_SUPPORTS_SAVE )
     6295  GAME( 1999, superabco,superabc, superabc, superabc, pacman_state,  superabc, ROT90,  "hack (Two-Bit Score)", "Super ABC (Pac-Man multigame kit, Mar. 08 1999)", GAME_SUPPORTS_SAVE )