{
  "machine": {
    "name": "punisher04",
    "sourcefile": "hbmame/drivers/cps1mis.cpp",
    "cloneof": "punisher",
    "romof": "punisher",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "The Punisher (1 Vs 2 Perfect, 2018-04-11)",
    "year": "2018",
    "manufacturer": "hack",
    "rom": [
      {
        "name": "c26s04.p1",
        "size": "131072",
        "crc": "7730f07f",
        "sha1": "2498c90947d352e2228cc876e92bcd9dd81ddc5d",
        "region": "maincpu",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p2",
        "size": "131072",
        "crc": "adc62a92",
        "sha1": "96197097e2baec0b1917a32daf84880c28919fa6",
        "region": "maincpu",
        "offset": "1",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p3",
        "size": "131072",
        "crc": "e3694c47",
        "sha1": "63ed5a96259a931b09d2dca78346accb21e4142c",
        "region": "maincpu",
        "offset": "40000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p4",
        "size": "131072",
        "crc": "aa40c89d",
        "sha1": "437c8c10bf7180e70dc1354e262dec843bc87c2b",
        "region": "maincpu",
        "offset": "40001",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p5",
        "size": "131072",
        "crc": "876bf007",
        "sha1": "8f536d7e111925b3010deb4c3d46c5a6d7c41e43",
        "region": "maincpu",
        "offset": "80000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p6",
        "size": "131072",
        "crc": "644392c9",
        "sha1": "f0430b3decbcd90d188581075df68a2623380804",
        "region": "maincpu",
        "offset": "80001",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p7",
        "size": "131072",
        "crc": "7812ca13",
        "sha1": "4d350680638e0a9ac9240eb4b34ccfdca2acb418",
        "region": "maincpu",
        "offset": "c0000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.p8",
        "size": "131072",
        "crc": "9330cb5d",
        "sha1": "db877b72b743b0dead28d331cc90bafa44147f31",
        "region": "maincpu",
        "offset": "c0001",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.p9",
        "merge": "c26.p9",
        "size": "524288",
        "crc": "8affa5a9",
        "sha1": "268760b83b1723ff50a019ec51ef7af2e49935bf",
        "region": "maincpu",
        "offset": "100000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.c01",
        "size": "524288",
        "crc": "15bb2e4d",
        "sha1": "16db940f983121cb1bbf1a80b925dfa011e3ba7f",
        "region": "gfx",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.c03",
        "size": "524288",
        "crc": "75ce5411",
        "sha1": "4c1c22fb442728e8893ef2512030791c01f60374",
        "region": "gfx",
        "offset": "2",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.c05",
        "size": "524288",
        "crc": "06f6ba32",
        "sha1": "b8b4b3be16fd55075bf9d6f0b21024258d7d740d",
        "region": "gfx",
        "offset": "4",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s04.c07",
        "size": "524288",
        "crc": "143664d2",
        "sha1": "24acacf18d1b3d34b1aff92c1ee3d05ddfbb5eb6",
        "region": "gfx",
        "offset": "6",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.c17",
        "merge": "c26.c17",
        "size": "524288",
        "crc": "c54ea839",
        "sha1": "0733f37329edd9d0cace1319a7544b40aa7ecb0b",
        "region": "gfx",
        "offset": "200000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.c19",
        "merge": "c26.c19",
        "size": "524288",
        "crc": "04c5acbd",
        "sha1": "fddc94b0f36d4d22d7c357856ae15b7514c342d3",
        "region": "gfx",
        "offset": "200002",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.c21",
        "merge": "c26.c21",
        "size": "524288",
        "crc": "a544f4cc",
        "sha1": "9552df8934ba25f19a22f2e07783712d8c8ef03c",
        "region": "gfx",
        "offset": "200004",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.c23",
        "merge": "c26.c23",
        "size": "524288",
        "crc": "8f02f436",
        "sha1": "a2f0ebb7e9593469c7b843f8962a66f3d77f79e5",
        "region": "gfx",
        "offset": "200006",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.m1",
        "merge": "c26.m1",
        "size": "131072",
        "crc": "49ff4446",
        "sha1": "87af12f87a940a6c5428b4574ad44a4b54867bc3",
        "region": "audiocpu",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.q1",
        "merge": "c26.q1",
        "size": "524288",
        "crc": "31fd8726",
        "sha1": "1d73a76682e9fb908db0c55b9a18163f7539fea1",
        "region": "qsound",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.q2",
        "merge": "c26.q2",
        "size": "524288",
        "crc": "980a9eef",
        "sha1": "36571381f349bc726508a7e618ba1c635ec9d271",
        "region": "qsound",
        "offset": "80000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.q3",
        "merge": "c26.q3",
        "size": "524288",
        "crc": "0dd44491",
        "sha1": "903cea1d7f3120545ea3229d30fbd687d11ad68f",
        "region": "qsound",
        "offset": "100000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26.q4",
        "merge": "c26.q4",
        "size": "524288",
        "crc": "bed42f03",
        "sha1": "21302f7e75f9c795392a3b34e16a959fc5f6e4e9",
        "region": "qsound",
        "offset": "180000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "punisher01.key",
        "size": "128",
        "crc": "8e992ffa",
        "sha1": "4f09427600cef4feb49a8a488caadaaa7b327484",
        "region": "control",
        "offset": "0",
        "status": "good",
        "optional": "no"
      }
    ],
    "device_ref": [
      {
        "tag": ":maincpu",
        "name": "m68000"
      },
      {
        "tag": ":audiocpu",
        "name": "z80"
      },
      {
        "tag": ":screen",
        "name": "screen"
      },
      {
        "tag": ":gfxdecode",
        "name": "gfxdecode"
      },
      {
        "tag": ":palette",
        "name": "palette"
      },
      {
        "tag": ":soundlatch",
        "name": "generic_latch_8"
      },
      {
        "tag": ":soundlatch2",
        "name": "generic_latch_8"
      },
      {
        "tag": ":eeprom",
        "name": "93c46_8"
      },
      {
        "tag": ":lspeaker",
        "name": "speaker"
      },
      {
        "tag": ":rspeaker",
        "name": "speaker"
      },
      {
        "tag": ":qsound",
        "name": "qsound_hle"
      }
    ],
    "chip": [
      {
        "type": "cpu",
        "tag": "maincpu",
        "name": "Motorola MC68000",
        "clock": "12000000"
      },
      {
        "type": "cpu",
        "tag": "audiocpu",
        "name": "Zilog Z80",
        "clock": "8000000"
      },
      {
        "type": "audio",
        "tag": "lspeaker",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "rspeaker",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "qsound",
        "name": "QSound (HLE)",
        "clock": "60000000"
      }
    ],
    "display": {
      "tag": "screen",
      "type": "raster",
      "rotate": "0",
      "width": "384",
      "height": "224",
      "refresh": "59.637405",
      "pixclock": "8000000",
      "htotal": "512",
      "hbend": "64",
      "hbstart": "448",
      "vtotal": "262",
      "vbend": "16",
      "vbstart": "240",
      "flipx": "no"
    },
    "sound": {
      "channels": "2"
    },
    "input": {
      "players": "2",
      "coins": "2",
      "service": "yes",
      "tilt": "no",
      "control": [
        {
          "type": "joy",
          "player": "1",
          "buttons": "2",
          "ways": "8",
          "reverse": "no"
        },
        {
          "type": "joy",
          "player": "2",
          "buttons": "2",
          "ways": "8",
          "reverse": "no"
        }
      ]
    },
    "dipswitch": {
      "name": "Freeze",
      "tag": "DSWC",
      "mask": "8",
      "dipvalue": [
        {
          "name": "Off",
          "value": "8",
          "default": "yes"
        },
        {
          "name": "On",
          "value": "0",
          "default": "no"
        }
      ]
    },
    "port": [
      {
        "tag": ":DSWA"
      },
      {
        "tag": ":DSWB"
      },
      {
        "tag": ":DSWC"
      },
      {
        "tag": ":EEPROMIN"
      },
      {
        "tag": ":EEPROMOUT"
      },
      {
        "tag": ":IN0"
      },
      {
        "tag": ":IN1"
      },
      {
        "tag": ":IN2"
      },
      {
        "tag": ":IN3"
      }
    ],
    "driver": {
      "status": "good",
      "emulation": "good",
      "savestate": "supported",
      "requiresartwork": "no",
      "unofficial": "no",
      "nosoundhardware": "no",
      "incomplete": "no"
    }
  }
}