{
  "machine": {
    "name": "punchoutah",
    "sourcefile": "nintendo/punchout.cpp",
    "cloneof": "punchout",
    "romof": "punchout",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "Punch-Out!! (Rev A, harder)",
    "year": "1984",
    "manufacturer": "Nintendo",
    "rom": [
      {
        "name": "chp1-c.8l",
        "size": "8192",
        "crc": "c552c3c1",
        "sha1": "234474c1488a1024927a6368dac7e031967dbb90",
        "region": "maincpu",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-c.8k",
        "size": "8192",
        "crc": "f2907314",
        "sha1": "638192323e98f66d1c21ff7d5173cc4d56f6808e",
        "region": "maincpu",
        "offset": "2000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-c.8j",
        "merge": "chp1-c.8j",
        "size": "8192",
        "crc": "7a7f870e",
        "sha1": "76bb9f3ef0a2fd514db63fb77f35bde12c15c29c",
        "region": "maincpu",
        "offset": "4000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-c.8h",
        "merge": "chp1-c.8h",
        "size": "8192",
        "crc": "5d8123d7",
        "sha1": "04ddfcde969db93ff31e9c8a2af4dde285b82e2e",
        "region": "maincpu",
        "offset": "6000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-c.8f",
        "size": "16384",
        "crc": "687010a7",
        "sha1": "5a83b4a65f5228cf60b60f87f49563fadd8b3205",
        "region": "maincpu",
        "offset": "8000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-c.4k",
        "merge": "chp1-c.4k",
        "size": "8192",
        "crc": "cb6ef376",
        "sha1": "503dbcc1b18a497311bf129689d5650860bf96c7",
        "region": "audiocpu",
        "offset": "e000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b.4c",
        "size": "8192",
        "crc": "e26dc8b3",
        "sha1": "a704d39ef6f5cbad64a478e5c109b18aae427cbc",
        "region": "gfx1",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b.4d",
        "size": "8192",
        "crc": "dd1310ca",
        "sha1": "918d2eda000244b692f1da7ac57d7a0edaef95fb",
        "region": "gfx1",
        "offset": "2000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b.4a",
        "size": "8192",
        "crc": "20fb4829",
        "sha1": "9f0ce9379eb31c19bfacdc514ac6a28aa4217cbb",
        "region": "gfx2",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b.4b",
        "size": "8192",
        "crc": "edc34594",
        "sha1": "fbb4a8b979d60b183dc23bdbb7425100b9325287",
        "region": "gfx2",
        "offset": "2000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.2r",
        "merge": "chp1-v.2r",
        "size": "16384",
        "crc": "bd1d4b2e",
        "sha1": "492ae301a9890c2603d564c9048b1b67895052dd",
        "region": "gfx3",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.2t",
        "merge": "chp1-v.2t",
        "size": "16384",
        "crc": "dd9a688a",
        "sha1": "fbb98eebfbaab445928da939846a2d07a8046afb",
        "region": "gfx3",
        "offset": "4000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.2u",
        "merge": "chp1-v.2u",
        "size": "8192",
        "crc": "da6a3c4b",
        "sha1": "e03469fb6f552f41a9b7f4b3e51c15a52b61cf84",
        "region": "gfx3",
        "offset": "8000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.2v",
        "merge": "chp1-v.2v",
        "size": "8192",
        "crc": "8c734a67",
        "sha1": "d59b5a2517e4890e7ca7da52ca2813a6abc484a3",
        "region": "gfx3",
        "offset": "c000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.3r",
        "merge": "chp1-v.3r",
        "size": "16384",
        "crc": "2e74ad1d",
        "sha1": "538b3f9273699106a50887c927f0251537bf0f42",
        "region": "gfx3",
        "offset": "10000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.3t",
        "merge": "chp1-v.3t",
        "size": "16384",
        "crc": "630ba9fb",
        "sha1": "36cec8658597239385cada3bc947b940ab66954b",
        "region": "gfx3",
        "offset": "14000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.3u",
        "merge": "chp1-v.3u",
        "size": "8192",
        "crc": "6440321d",
        "sha1": "c8c084ad408cb6bf65959ed4db03c4b4cf9b1c1a",
        "region": "gfx3",
        "offset": "18000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.3v",
        "merge": "chp1-v.3v",
        "size": "8192",
        "crc": "bb7b7198",
        "sha1": "64572668d30e008daf4ccaa5689518ecc41f1091",
        "region": "gfx3",
        "offset": "1c000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.4r",
        "merge": "chp1-v.4r",
        "size": "16384",
        "crc": "4e5b0fe9",
        "sha1": "c5c4fb735cc232b43c49442e62af0ebe99eaab0c",
        "region": "gfx3",
        "offset": "20000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.4t",
        "merge": "chp1-v.4t",
        "size": "16384",
        "crc": "37ffc940",
        "sha1": "d555807a6a1025c81637c5db0184b48306aa01ac",
        "region": "gfx3",
        "offset": "24000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.4u",
        "merge": "chp1-v.4u",
        "size": "8192",
        "crc": "1a7521d4",
        "sha1": "4e8a8298f2ff8257d2058e5133ad295f92c7deb8",
        "region": "gfx3",
        "offset": "28000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.6p",
        "size": "8192",
        "crc": "16588f7a",
        "sha1": "1aeaaa5cc2477c3aa4bf80df7d9474cc9ded9f15",
        "region": "gfx4",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.6n",
        "size": "8192",
        "crc": "dc743674",
        "sha1": "660582c76ee68a7267d5686a2f8ea0fd6c2b25fc",
        "region": "gfx4",
        "offset": "2000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.8p",
        "size": "8192",
        "crc": "c2db5b4e",
        "sha1": "39d009af597fa28d34af31aec111aa6fe09fea39",
        "region": "gfx4",
        "offset": "8000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v.8n",
        "size": "8192",
        "crc": "e6af390e",
        "sha1": "73984cbdc8fbf667126ada63ab9500609eb25c61",
        "region": "gfx4",
        "offset": "a000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-6e_pink.6e",
        "merge": "chp1-b-6e_pink.6e",
        "size": "512",
        "crc": "e9ca3ac6",
        "sha1": "68d9739d8a0dadc6fe3b3767437526096ca5db98",
        "region": "proms",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-6f_pink.6f",
        "merge": "chp1-b-6f_pink.6f",
        "size": "512",
        "crc": "02be56ab",
        "sha1": "a88f332cb26928350ed20ab5f4c04d5324bb516a",
        "region": "proms",
        "offset": "200",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-7f_pink.7f",
        "merge": "chp1-b-7f_pink.7f",
        "size": "512",
        "crc": "11de55f1",
        "sha1": "269b82f4bc73fac197e0bb6d9a90a220e77ce478",
        "region": "proms",
        "offset": "400",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-7e_pink.7e",
        "merge": "chp1-b-7e_pink.7e",
        "size": "512",
        "crc": "fddaa777",
        "sha1": "ee6bff5ffeefc82374868a268f885d0bc3a76da2",
        "region": "proms",
        "offset": "600",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-8e_pink.8e",
        "merge": "chp1-b-8e_pink.8e",
        "size": "512",
        "crc": "c3d5d71f",
        "sha1": "2b02479614a801f539fead17860b84e9a180e761",
        "region": "proms",
        "offset": "800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-8f_pink.8f",
        "merge": "chp1-b-8f_pink.8f",
        "size": "512",
        "crc": "a3037155",
        "sha1": "8b6c0c80278ca859a08a1a2429190d51be4f9401",
        "region": "proms",
        "offset": "a00",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-6e_white.6e",
        "merge": "chp1-b-6e_white.6e",
        "size": "512",
        "crc": "ddac5f0e",
        "sha1": "25dabe415757ccea057609a3f3f79a56b613032a",
        "region": "proms",
        "offset": "1000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-6f_white.6f",
        "merge": "chp1-b-6f_white.6f",
        "size": "512",
        "crc": "846c6261",
        "sha1": "f012a02bbdf0166b9bfd3dc9749db18759a22421",
        "region": "proms",
        "offset": "1200",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-7f_white.7f",
        "merge": "chp1-b-7f_white.7f",
        "size": "512",
        "crc": "1682dd30",
        "sha1": "84b92d1b292210bda0c25537c8ee3e274aaac75c",
        "region": "proms",
        "offset": "1400",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-7e_white.7e",
        "merge": "chp1-b-7e_white.7e",
        "size": "512",
        "crc": "47adf7a2",
        "sha1": "1d37d5207cd37a9c122251c60cc8f43dd680f484",
        "region": "proms",
        "offset": "1600",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-8e_white.8e",
        "merge": "chp1-b-8e_white.8e",
        "size": "512",
        "crc": "b0fc15a8",
        "sha1": "a1af09cfea81231240bd94f3b98de1be8235ebe7",
        "region": "proms",
        "offset": "1800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-b-8f_white.8f",
        "merge": "chp1-b-8f_white.8f",
        "size": "512",
        "crc": "1ffd894a",
        "sha1": "9e8c1c28b4c12acf42f814bc109d353729a25652",
        "region": "proms",
        "offset": "1a00",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-v-2d.2d",
        "merge": "chp1-v-2d.2d",
        "size": "256",
        "crc": "71dc0d48",
        "sha1": "dd6609f547d74887f520d7e71a1a00317ff181d0",
        "region": "proms",
        "offset": "2000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "chp1-c.6p",
        "merge": "chp1-c.6p",
        "size": "16384",
        "crc": "ea0bbb31",
        "sha1": "b1da024cb688341d39791a78d1144fe09acb00cf",
        "region": "vlm",
        "offset": "0",
        "status": "good",
        "optional": "no"
      }
    ],
    "device_ref": [
      {
        "tag": ":maincpu",
        "name": "z80"
      },
      {
        "tag": ":audiocpu",
        "name": "rp2a03"
      },
      {
        "tag": ":audiocpu:nesapu",
        "name": "apu2a03"
      },
      {
        "tag": ":nvram",
        "name": "nvram"
      },
      {
        "tag": ":mainlatch",
        "name": "ls259"
      },
      {
        "tag": ":gfxdecode",
        "name": "gfxdecode"
      },
      {
        "tag": ":palette",
        "name": "palette"
      },
      {
        "tag": ":top",
        "name": "screen"
      },
      {
        "tag": ":bottom",
        "name": "screen"
      },
      {
        "tag": ":speaker",
        "name": "speaker"
      },
      {
        "tag": ":soundlatch",
        "name": "generic_latch_8"
      },
      {
        "tag": ":soundlatch2",
        "name": "generic_latch_8"
      },
      {
        "tag": ":vlm",
        "name": "vlm5030"
      }
    ],
    "chip": [
      {
        "type": "cpu",
        "tag": "maincpu",
        "name": "Zilog Z80",
        "clock": "4000000"
      },
      {
        "type": "cpu",
        "tag": "audiocpu",
        "name": "Ricoh RP2A03",
        "clock": "1789772"
      },
      {
        "type": "audio",
        "tag": "audiocpu",
        "name": "Ricoh RP2A03",
        "clock": "1789772"
      },
      {
        "type": "audio",
        "tag": "audiocpu:nesapu",
        "name": "RP2A03 APU",
        "clock": "1789772"
      },
      {
        "type": "audio",
        "tag": "speaker",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "vlm",
        "name": "Sanyo VLM5030",
        "clock": "3579545"
      }
    ],
    "display": [
      {
        "tag": "top",
        "type": "raster",
        "rotate": "0",
        "width": "256",
        "height": "224",
        "refresh": "60.000000",
        "flipx": "no"
      },
      {
        "tag": "bottom",
        "type": "raster",
        "rotate": "0",
        "width": "256",
        "height": "224",
        "refresh": "60.000000",
        "flipx": "no"
      }
    ],
    "sound": {
      "channels": "1"
    },
    "input": {
      "players": "1",
      "coins": "1",
      "service": "no",
      "tilt": "no",
      "control": {
        "type": "joy",
        "buttons": "3",
        "ways": "4",
        "reverse": "no"
      }
    },
    "dipswitch": [
      {
        "name": "Coinage",
        "tag": "DSW1",
        "mask": "15",
        "diplocation": [
          {
            "name": "SW1",
            "number": "1",
            "inverted": "yes"
          },
          {
            "name": "SW1",
            "number": "2",
            "inverted": "yes"
          },
          {
            "name": "SW1",
            "number": "3",
            "inverted": "yes"
          },
          {
            "name": "SW1",
            "number": "4",
            "inverted": "yes"
          }
        ],
        "dipvalue": [
          {
            "name": "5 Coins/1 Credit",
            "value": "14",
            "default": "no"
          },
          {
            "name": "4 Coins/1 Credit",
            "value": "11",
            "default": "no"
          },
          {
            "name": "3 Coins/1 Credit",
            "value": "12",
            "default": "no"
          },
          {
            "name": "2 Coins/1 Credit",
            "value": "1",
            "default": "no"
          },
          {
            "name": "1 Coin/1 Credit",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "1 Coin/1 Credit",
            "value": "3",
            "default": "no"
          },
          {
            "name": "1 Coin/2 Credits (2 Credits/1 Play)",
            "value": "8",
            "default": "no"
          },
          {
            "name": "1 Coin/3 Credits (2 Credits/1 Play)",
            "value": "13",
            "default": "no"
          },
          {
            "name": "1 Coin/2 Credits",
            "value": "2",
            "default": "no"
          },
          {
            "name": "1 Coin/2 Credits",
            "value": "4",
            "default": "no"
          },
          {
            "name": "1 Coin/2 Credits",
            "value": "9",
            "default": "no"
          },
          {
            "name": "1 Coin/3 Credits",
            "value": "5",
            "default": "no"
          },
          {
            "name": "1 Coin/4 Credits",
            "value": "6",
            "default": "no"
          },
          {
            "name": "1 Coin/5 Credits",
            "value": "10",
            "default": "no"
          },
          {
            "name": "1 Coin/6 Credits",
            "value": "7",
            "default": "no"
          },
          {
            "name": "Free Play",
            "value": "15",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unused",
        "tag": "DSW1",
        "mask": "64",
        "diplocation": {
          "name": "R18",
          "number": "1",
          "inverted": "yes"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "64",
            "default": "no"
          }
        ]
      },
      {
        "name": "Copyright",
        "tag": "DSW1",
        "mask": "128",
        "diplocation": {
          "name": "R19",
          "number": "1",
          "inverted": "yes"
        },
        "dipvalue": [
          {
            "name": "Nintendo",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Nintendo of America Inc.",
            "value": "128",
            "default": "no"
          }
        ]
      },
      {
        "name": "Difficulty",
        "tag": "DSW2",
        "mask": "3",
        "diplocation": [
          {
            "name": "SW2",
            "number": "1",
            "inverted": "yes"
          },
          {
            "name": "SW2",
            "number": "2",
            "inverted": "yes"
          }
        ],
        "dipvalue": [
          {
            "name": "Easy",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Medium",
            "value": "1",
            "default": "no"
          },
          {
            "name": "Hard",
            "value": "2",
            "default": "no"
          },
          {
            "name": "Hardest",
            "value": "3",
            "default": "no"
          }
        ]
      },
      {
        "name": "Time",
        "tag": "DSW2",
        "mask": "12",
        "diplocation": [
          {
            "name": "SW2",
            "number": "3",
            "inverted": "yes"
          },
          {
            "name": "SW2",
            "number": "4",
            "inverted": "yes"
          }
        ],
        "dipvalue": [
          {
            "name": "Longest",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Long",
            "value": "4",
            "default": "no"
          },
          {
            "name": "Short",
            "value": "8",
            "default": "no"
          },
          {
            "name": "Shortest",
            "value": "12",
            "default": "no"
          }
        ]
      },
      {
        "name": "Demo Sounds",
        "tag": "DSW2",
        "mask": "16",
        "diplocation": {
          "name": "SW2",
          "number": "5",
          "inverted": "yes"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "no"
          },
          {
            "name": "On",
            "value": "16",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Rematch At A Discount",
        "tag": "DSW2",
        "mask": "32",
        "diplocation": {
          "name": "SW2",
          "number": "6",
          "inverted": "yes"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "32",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unused",
        "tag": "DSW2",
        "mask": "64",
        "diplocation": {
          "name": "SW2",
          "number": "7",
          "inverted": "yes"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "64",
            "default": "no"
          }
        ]
      },
      {
        "name": "Service Mode",
        "tag": "DSW2",
        "mask": "128",
        "diplocation": {
          "name": "SW2",
          "number": "8",
          "inverted": "yes"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "128",
            "default": "no"
          }
        ]
      }
    ],
    "port": [
      {
        "tag": ":DSW1"
      },
      {
        "tag": ":DSW2"
      },
      {
        "tag": ":IN0"
      },
      {
        "tag": ":IN1"
      }
    ],
    "driver": {
      "status": "good",
      "emulation": "good",
      "savestate": "unsupported",
      "requiresartwork": "no",
      "unofficial": "no",
      "nosoundhardware": "no",
      "incomplete": "no"
    }
  }
}