{
  "machine": {
    "name": "punisher09",
    "sourcefile": "hbmame/drivers/cps1mis.cpp",
    "cloneof": "punisher",
    "romof": "punisher",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "The Punisher (Multi-Mode Enhancement, 2020-06-14)",
    "year": "2020",
    "manufacturer": "hack",
    "rom": [
      {
        "name": "c26s09.p1",
        "size": "131072",
        "crc": "476143ea",
        "sha1": "8d2965610950134a187e16533a2dd38d24a0ca11",
        "region": "maincpu",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p2",
        "size": "131072",
        "crc": "b5905af0",
        "sha1": "b161384017dc85589f61d52651f6887261e48193",
        "region": "maincpu",
        "offset": "1",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p3",
        "size": "131072",
        "crc": "ba7241c5",
        "sha1": "d98a5029153592a6adeaee652df267d3aa661edb",
        "region": "maincpu",
        "offset": "40000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p4",
        "size": "131072",
        "crc": "4d2d2857",
        "sha1": "9026c4855d01cca4aa047596f901afa9c578b4db",
        "region": "maincpu",
        "offset": "40001",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p5",
        "size": "131072",
        "crc": "9eed52bb",
        "sha1": "a2a6cdae471bfbcf1970e92aba85a3e40b5d6e0a",
        "region": "maincpu",
        "offset": "80000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p6",
        "size": "131072",
        "crc": "adc281ed",
        "sha1": "acb8cf37d6da12ce3576e3192af925cea7a9e7eb",
        "region": "maincpu",
        "offset": "80001",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p7",
        "size": "131072",
        "crc": "83d78978",
        "sha1": "b88fd99d22b82077a4a912ca01eda1327388f9e3",
        "region": "maincpu",
        "offset": "c0000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.p8",
        "size": "131072",
        "crc": "0fd7c434",
        "sha1": "fc27551132cc293a6172a2a81ed37d04e9bffc90",
        "region": "maincpu",
        "offset": "c0001",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s12.p9",
        "size": "524288",
        "crc": "2bccb0ed",
        "sha1": "44f45431d7ecca6eb8942be3d44b99cf856d12ab",
        "region": "maincpu",
        "offset": "100000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s08.c01",
        "size": "524288",
        "crc": "4d4111de",
        "sha1": "f67002f6a9073f5aba33e31879fc7f4c1d60ffda",
        "region": "gfx",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s08.c03",
        "size": "524288",
        "crc": "2d346b82",
        "sha1": "dfd48382fdc8d1da5ece31a8ed99a0fa9f58c1ed",
        "region": "gfx",
        "offset": "2",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s08.c05",
        "size": "524288",
        "crc": "5e0c85a1",
        "sha1": "3b2487d8ae60d2beabafd83007359a84d3d0079e",
        "region": "gfx",
        "offset": "4",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.c07",
        "size": "524288",
        "crc": "4ccc5b41",
        "sha1": "1176458dccd129f19952fbafb85a7629b29b1ee3",
        "region": "gfx",
        "offset": "6",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.c17",
        "size": "524288",
        "crc": "ebb91780",
        "sha1": "07a98ee8cde2fa0555baf6894312b8f2aba91ba3",
        "region": "gfx",
        "offset": "200000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.c19",
        "size": "524288",
        "crc": "f0c1d356",
        "sha1": "821810342f662fb06cbe304651e2a965d7ca452c",
        "region": "gfx",
        "offset": "200002",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.c21",
        "size": "524288",
        "crc": "51ca7a4b",
        "sha1": "19a378e0b0f9e751902b86913e52188597dad940",
        "region": "gfx",
        "offset": "200004",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "c26s09.c23",
        "size": "524288",
        "crc": "4a4854f9",
        "sha1": "315c9f6d1dc0dee522424f92d6df647cae9992e9",
        "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"
    }
  }
}