{
  "machine": {
    "name": "theroes",
    "sourcefile": "atlus/cave.cpp",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "Thunder Heroes (set 1)",
    "year": "2001",
    "manufacturer": "Primetek Investments",
    "rom": [
      {
        "name": "t-hero-epm1.u0127",
        "size": "524288",
        "crc": "09db7195",
        "sha1": "6aa5aa80e3b74e405ed8f1b9b801ce4367756986",
        "region": "maincpu",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-epm0.u0129",
        "size": "524288",
        "crc": "2d4e3310",
        "sha1": "7c3284a2adc7943db50933a209d037422f87f80b",
        "region": "maincpu",
        "offset": "1",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-obj1.u0736",
        "size": "4194304",
        "crc": "35090f7c",
        "sha1": "035e6c12a87d9c7241eea34fc7e2170bec842acc",
        "region": "sprites0",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-obj2.u0738",
        "size": "4194304",
        "crc": "71605108",
        "sha1": "6070c26d8f22fafc81d97cacfef96ae652e355d0",
        "region": "sprites0",
        "offset": "400000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-bg1.u0999",
        "size": "4194304",
        "crc": "47b0fb40",
        "sha1": "a7217b3d805b4255c589821cdadd9b190cada525",
        "region": "layer0",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-bg2.u0995",
        "size": "4194304",
        "crc": "b16237a1",
        "sha1": "66aed2c5036492a17d20de90333e172a6f117851",
        "region": "layer1",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-bg3.u0998",
        "size": "4194304",
        "crc": "08eb5604",
        "sha1": "3d32966708c73198272c40e6ddc680bf4c7919eb",
        "region": "layer2",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "crvsaders-snd1.u0447",
        "size": "4194304",
        "crc": "92770a52",
        "sha1": "81f6835e1b45eb0f367e4586fdda92466f02edb9",
        "region": "ymz",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "crvsaders-snd2.u0454",
        "size": "4194304",
        "crc": "329ae1cf",
        "sha1": "0c5e5074a5d8f4fb85ab4893bc953f192dcb301a",
        "region": "ymz",
        "offset": "400000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "t-hero-snd3.u0455",
        "size": "4194304",
        "crc": "52b0b2c0",
        "sha1": "6e96698905391c21a4fedd60e2768734b58add4e",
        "region": "ymz",
        "offset": "800000",
        "status": "good",
        "optional": "no"
      }
    ],
    "device_ref": [
      {
        "tag": ":maincpu",
        "name": "m68000"
      },
      {
        "tag": ":int_timer",
        "name": "timer"
      },
      {
        "tag": ":screen.0",
        "name": "screen"
      },
      {
        "tag": ":palette.0",
        "name": "palette"
      },
      {
        "tag": ":spr_gfxdecode.0",
        "name": "gfxdecode"
      },
      {
        "tag": ":tilemap.0",
        "name": "tmap038"
      },
      {
        "tag": ":tilemap.1",
        "name": "tmap038"
      },
      {
        "tag": ":tilemap.2",
        "name": "tmap038"
      },
      {
        "tag": ":watchdog",
        "name": "watchdog"
      },
      {
        "tag": ":gfxdecode.0",
        "name": "gfxdecode"
      },
      {
        "tag": ":mono",
        "name": "speaker"
      },
      {
        "tag": ":ymz",
        "name": "ymz280b"
      }
    ],
    "chip": [
      {
        "type": "cpu",
        "tag": "maincpu",
        "name": "Motorola MC68000",
        "clock": "16000000"
      },
      {
        "type": "audio",
        "tag": "mono",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "ymz",
        "name": "Yamaha YMZ280B PCMD8",
        "clock": "16000000"
      }
    ],
    "display": {
      "tag": "screen.0",
      "type": "raster",
      "rotate": "0",
      "width": "320",
      "height": "224",
      "refresh": "57.550645",
      "flipx": "no"
    },
    "sound": {
      "channels": "1"
    },
    "input": {
      "players": "2",
      "coins": "2",
      "service": "yes",
      "tilt": "no",
      "control": [
        {
          "type": "joy",
          "player": "1",
          "buttons": "4",
          "ways": "8",
          "reverse": "no"
        },
        {
          "type": "joy",
          "player": "2",
          "buttons": "4",
          "ways": "8",
          "reverse": "no"
        }
      ]
    },
    "dipswitch": [
      {
        "name": "Flip Screen",
        "tag": "DSW",
        "mask": "1",
        "diplocation": {
          "name": "SW1",
          "number": "1",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "1",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Demo Sounds",
        "tag": "DSW",
        "mask": "2",
        "diplocation": {
          "name": "SW1",
          "number": "2",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "no"
          },
          {
            "name": "On",
            "value": "2",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Language",
        "tag": "DSW",
        "mask": "4",
        "diplocation": {
          "name": "SW1",
          "number": "3",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "English",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Chinese",
            "value": "4",
            "default": "no"
          }
        ]
      },
      {
        "name": "Coinage",
        "tag": "DSW",
        "mask": "56",
        "diplocation": [
          {
            "name": "SW1",
            "number": "4",
            "inverted": "no"
          },
          {
            "name": "SW1",
            "number": "5",
            "inverted": "no"
          },
          {
            "name": "SW1",
            "number": "6",
            "inverted": "no"
          }
        ],
        "dipvalue": [
          {
            "name": "4 Coins/1 Credit",
            "value": "8",
            "default": "no"
          },
          {
            "name": "3 Coins/1 Credit",
            "value": "16",
            "default": "no"
          },
          {
            "name": "2 Coins/1 Credit",
            "value": "32",
            "default": "no"
          },
          {
            "name": "2 Coins/1 Credit (1 to continue)",
            "value": "0",
            "default": "no"
          },
          {
            "name": "1 Coin/1 Credit",
            "value": "56",
            "default": "yes"
          },
          {
            "name": "3 Coins/4 Credits",
            "value": "24",
            "default": "no"
          },
          {
            "name": "1 Coin/2 Credits",
            "value": "48",
            "default": "no"
          },
          {
            "name": "1 Coin/3 Credits",
            "value": "40",
            "default": "no"
          }
        ]
      },
      {
        "name": "Free Play",
        "tag": "DSW",
        "mask": "64",
        "diplocation": {
          "name": "SW1",
          "number": "7",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "64",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Allow Continue",
        "tag": "DSW",
        "mask": "128",
        "diplocation": {
          "name": "SW1",
          "number": "8",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "no"
          },
          {
            "name": "On",
            "value": "128",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Lives",
        "tag": "DSW",
        "mask": "768",
        "diplocation": [
          {
            "name": "SW2",
            "number": "1",
            "inverted": "no"
          },
          {
            "name": "SW2",
            "number": "2",
            "inverted": "no"
          }
        ],
        "dipvalue": [
          {
            "name": "1",
            "value": "256",
            "default": "no"
          },
          {
            "name": "2",
            "value": "0",
            "default": "no"
          },
          {
            "name": "3",
            "value": "768",
            "default": "yes"
          },
          {
            "name": "4",
            "value": "512",
            "default": "no"
          }
        ]
      },
      {
        "name": "Bonus Life",
        "tag": "DSW",
        "mask": "1024",
        "diplocation": {
          "name": "SW2",
          "number": "3",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "no"
          },
          {
            "name": "150k/300k",
            "value": "1024",
            "default": "yes",
            "condition": {
              "tag": "DSW",
              "mask": "49152",
              "relation": "eq",
              "value": "32768"
            }
          },
          {
            "name": "150k/350k",
            "value": "1024",
            "default": "yes",
            "condition": {
              "tag": "DSW",
              "mask": "49152",
              "relation": "eq",
              "value": "49152"
            }
          },
          {
            "name": "150k/400k",
            "value": "1024",
            "default": "yes",
            "condition": {
              "tag": "DSW",
              "mask": "49152",
              "relation": "eq",
              "value": "16384"
            }
          },
          {
            "name": "200k/500k",
            "value": "1024",
            "default": "yes",
            "condition": {
              "tag": "DSW",
              "mask": "49152",
              "relation": "eq",
              "value": "0"
            }
          }
        ]
      },
      {
        "name": "Damage",
        "tag": "DSW",
        "mask": "6144",
        "diplocation": [
          {
            "name": "SW2",
            "number": "4",
            "inverted": "no"
          },
          {
            "name": "SW2",
            "number": "5",
            "inverted": "no"
          }
        ],
        "dipvalue": [
          {
            "name": "+0",
            "value": "6144",
            "default": "yes"
          },
          {
            "name": "+1",
            "value": "4096",
            "default": "no"
          },
          {
            "name": "+2",
            "value": "2048",
            "default": "no"
          },
          {
            "name": "+3",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "DSW",
        "mask": "8192",
        "diplocation": {
          "name": "SW2",
          "number": "6",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "8192",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Difficulty",
        "tag": "DSW",
        "mask": "49152",
        "diplocation": [
          {
            "name": "SW2",
            "number": "7",
            "inverted": "no"
          },
          {
            "name": "SW2",
            "number": "8",
            "inverted": "no"
          }
        ],
        "dipvalue": [
          {
            "name": "Very Easy",
            "value": "32768",
            "default": "no"
          },
          {
            "name": "Medium",
            "value": "49152",
            "default": "yes"
          },
          {
            "name": "Medium Hard",
            "value": "16384",
            "default": "no"
          },
          {
            "name": "Hardest",
            "value": "0",
            "default": "no"
          }
        ]
      }
    ],
    "port": [
      {
        "tag": ":DSW"
      },
      {
        "tag": ":IN0"
      },
      {
        "tag": ":IN1"
      }
    ],
    "driver": {
      "status": "imperfect",
      "emulation": "good",
      "savestate": "supported",
      "requiresartwork": "no",
      "unofficial": "no",
      "nosoundhardware": "no",
      "incomplete": "no"
    },
    "feature": {
      "type": "sound",
      "status": "imperfect"
    }
  }
}