{
  "machine": {
    "name": "kbm",
    "sourcefile": "konami/firebeat.cpp",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "Keyboardmania",
    "year": "2000",
    "manufacturer": "Konami",
    "rom": [
      {
        "name": "974a03.21e",
        "size": "524288",
        "crc": "ef9a932d",
        "sha1": "6299d3b9823605e519dbf1f105b59a09197df72f",
        "region": "user1",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "gq974",
        "size": "200",
        "crc": "65e4886a",
        "sha1": "afba0315f2532599c51e232f734c538c4d108d73",
        "region": "user2",
        "offset": "0",
        "status": "good",
        "optional": "no"
      }
    ],
    "disk": [
      {
        "name": "gq974-ja c01",
        "sha1": "975a4a59f842b8a7edad79b307e489cc88bef24d",
        "region": "ata:0:cdrom",
        "index": "0",
        "writable": "no",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "gq974-ja a02",
        "sha1": "80086676c00c9ca06ec14e305ea4523b6576e47f",
        "region": "ata:1:cdrom",
        "index": "1",
        "writable": "no",
        "status": "good",
        "optional": "no"
      }
    ],
    "device_ref": [
      {
        "tag": ":maincpu",
        "name": "ppc403gcx"
      },
      {
        "tag": ":rtc",
        "name": "rtc65271"
      },
      {
        "tag": ":flash_main",
        "name": "mbm29f016a"
      },
      {
        "tag": ":flash_snd1",
        "name": "mbm29f016a"
      },
      {
        "tag": ":flash_snd2",
        "name": "mbm29f016a"
      },
      {
        "tag": ":ata",
        "name": "ata_interface"
      },
      {
        "tag": ":ata:0",
        "name": "ata_slot"
      },
      {
        "tag": ":ata:0:cdrom",
        "name": "cdrom"
      },
      {
        "tag": ":ata:0:cdrom:image",
        "name": "cdrom_image"
      },
      {
        "tag": ":ata:0:cdrom:cdda",
        "name": "cdda"
      },
      {
        "tag": ":ata:1",
        "name": "ata_slot"
      },
      {
        "tag": ":ata:1:cdrom",
        "name": "cdrom"
      },
      {
        "tag": ":ata:1:cdrom:image",
        "name": "cdrom_image"
      },
      {
        "tag": ":ata:1:cdrom:cdda",
        "name": "cdda"
      },
      {
        "tag": ":palette",
        "name": "palette"
      },
      {
        "tag": ":lscreen",
        "name": "screen"
      },
      {
        "tag": ":gcu",
        "name": "k057714"
      },
      {
        "tag": ":rscreen",
        "name": "screen"
      },
      {
        "tag": ":gcu_sub",
        "name": "k057714"
      },
      {
        "tag": ":speaker",
        "name": "speaker"
      },
      {
        "tag": ":ymz",
        "name": "ymz280b"
      },
      {
        "tag": ":duart_com",
        "name": "pc16552d"
      },
      {
        "tag": ":duart_com:chan0",
        "name": "ns16550"
      },
      {
        "tag": ":duart_com:chan1",
        "name": "ns16550"
      },
      {
        "tag": ":duart_midi",
        "name": "pc16552d"
      },
      {
        "tag": ":duart_midi:chan1",
        "name": "ns16550"
      },
      {
        "tag": ":duart_midi:chan0",
        "name": "ns16550"
      },
      {
        "tag": ":kbd0",
        "name": "midi_kbd"
      },
      {
        "tag": ":kbd1",
        "name": "midi_kbd"
      },
      {
        "tag": ":xt446",
        "name": "xt446"
      },
      {
        "tag": ":xt446:maincpu",
        "name": "h8s2655"
      },
      {
        "tag": ":xt446:maincpu:intc",
        "name": "h8s_intc"
      },
      {
        "tag": ":xt446:maincpu:adc",
        "name": "h8_adc_2655"
      },
      {
        "tag": ":xt446:maincpu:dma",
        "name": "h8s_dma"
      },
      {
        "tag": ":xt446:maincpu:dma:0",
        "name": "h8s_dma_channel"
      },
      {
        "tag": ":xt446:maincpu:dma:1",
        "name": "h8s_dma_channel"
      },
      {
        "tag": ":xt446:maincpu:port1",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:port2",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:port3",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:port4",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:port5",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:port6",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:porta",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:portb",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:portc",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:portd",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:porte",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:portf",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:portg",
        "name": "h8_digital_port"
      },
      {
        "tag": ":xt446:maincpu:timer8_0",
        "name": "h8h_timer8_channel"
      },
      {
        "tag": ":xt446:maincpu:timer8_1",
        "name": "h8h_timer8_channel"
      },
      {
        "tag": ":xt446:maincpu:timer16",
        "name": "h8_timer16"
      },
      {
        "tag": ":xt446:maincpu:timer16:0",
        "name": "h8s_timer16_channel"
      },
      {
        "tag": ":xt446:maincpu:timer16:1",
        "name": "h8s_timer16_channel"
      },
      {
        "tag": ":xt446:maincpu:timer16:2",
        "name": "h8s_timer16_channel"
      },
      {
        "tag": ":xt446:maincpu:timer16:3",
        "name": "h8s_timer16_channel"
      },
      {
        "tag": ":xt446:maincpu:timer16:4",
        "name": "h8s_timer16_channel"
      },
      {
        "tag": ":xt446:maincpu:timer16:5",
        "name": "h8s_timer16_channel"
      },
      {
        "tag": ":xt446:maincpu:sci0",
        "name": "h8_sci"
      },
      {
        "tag": ":xt446:maincpu:sci1",
        "name": "h8_sci"
      },
      {
        "tag": ":xt446:maincpu:sci2",
        "name": "h8_sci"
      },
      {
        "tag": ":xt446:maincpu:watchdog",
        "name": "h8_watchdog"
      },
      {
        "tag": ":xt446:swp30",
        "name": "swp30"
      }
    ],
    "chip": [
      {
        "type": "cpu",
        "tag": "maincpu",
        "name": "IBM PowerPC 403GCX",
        "clock": "66000000"
      },
      {
        "type": "cpu",
        "tag": "xt446:maincpu",
        "name": "Hitachi H8S/2655",
        "clock": "16000000"
      },
      {
        "type": "cpu",
        "tag": "xt446:swp30",
        "name": "Yamaha SWP30 sound chip",
        "clock": "33868800"
      },
      {
        "type": "audio",
        "tag": "ata:0:cdrom:cdda",
        "name": "CD/DA",
        "clock": "44100"
      },
      {
        "type": "audio",
        "tag": "ata:1:cdrom:cdda",
        "name": "CD/DA",
        "clock": "44100"
      },
      {
        "type": "audio",
        "tag": "speaker",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "ymz",
        "name": "Yamaha YMZ280B PCMD8",
        "clock": "16934400"
      },
      {
        "type": "audio",
        "tag": "xt446",
        "name": "Yamaha XT446 synth (embedded MU100B)"
      },
      {
        "type": "audio",
        "tag": "xt446:swp30",
        "name": "Yamaha SWP30 sound chip",
        "clock": "33868800"
      }
    ],
    "display": [
      {
        "tag": "lscreen",
        "type": "raster",
        "rotate": "270",
        "width": "640",
        "height": "480",
        "refresh": "59.940476",
        "pixclock": "25175000",
        "htotal": "800",
        "hbend": "0",
        "hbstart": "640",
        "vtotal": "525",
        "vbend": "0",
        "vbstart": "480",
        "flipx": "no"
      },
      {
        "tag": "rscreen",
        "type": "raster",
        "rotate": "270",
        "width": "640",
        "height": "480",
        "refresh": "59.940476",
        "pixclock": "25175000",
        "htotal": "800",
        "hbend": "0",
        "hbstart": "640",
        "vtotal": "525",
        "vbend": "0",
        "vbstart": "480",
        "flipx": "no"
      }
    ],
    "sound": {
      "channels": "1"
    },
    "input": {
      "players": "1",
      "coins": "1",
      "service": "yes",
      "tilt": "no",
      "control": {
        "type": "paddle",
        "minimum": "0",
        "maximum": "255",
        "sensitivity": "30",
        "keydelta": "10",
        "reverse": "no"
      }
    },
    "dipswitch": [
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "1",
        "diplocation": {
          "name": "DIP SW",
          "number": "8",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "1",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "2",
        "diplocation": {
          "name": "DIP SW",
          "number": "7",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "2",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "4",
        "diplocation": {
          "name": "DIP SW",
          "number": "6",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "4",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "8",
        "diplocation": {
          "name": "DIP SW",
          "number": "5",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "8",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "16",
        "diplocation": {
          "name": "DIP SW",
          "number": "4",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "16",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "32",
        "diplocation": {
          "name": "DIP SW",
          "number": "3",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "32",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "64",
        "diplocation": {
          "name": "DIP SW",
          "number": "2",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "64",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      },
      {
        "name": "Unknown",
        "tag": "IN3",
        "mask": "128",
        "diplocation": {
          "name": "DIP SW",
          "number": "1",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "128",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "0",
            "default": "no"
          }
        ]
      }
    ],
    "port": [
      {
        "tag": ":IN0"
      },
      {
        "tag": ":IN1"
      },
      {
        "tag": ":IN2"
      },
      {
        "tag": ":IN3"
      },
      {
        "tag": ":WHEEL_P1",
        "analog": {
          "mask": "255"
        }
      },
      {
        "tag": ":WHEEL_P2",
        "analog": {
          "mask": "255"
        }
      },
      {
        "tag": ":kbd0:KEYBOARD"
      },
      {
        "tag": ":kbd1:KEYBOARD"
      }
    ],
    "driver": {
      "status": "imperfect",
      "emulation": "good",
      "savestate": "unsupported",
      "requiresartwork": "no",
      "unofficial": "no",
      "nosoundhardware": "no",
      "incomplete": "no"
    },
    "feature": {
      "type": "sound",
      "status": "imperfect"
    },
    "device": [
      {
        "type": "cdrom",
        "tag": "ata:0:cdrom:image",
        "interface": "cdrom",
        "instance": {
          "name": "cdrom1",
          "briefname": "cdrm1"
        },
        "extension": [
          {
            "name": "chd"
          },
          {
            "name": "cue"
          },
          {
            "name": "toc"
          },
          {
            "name": "nrg"
          },
          {
            "name": "gdi"
          },
          {
            "name": "iso"
          },
          {
            "name": "cdr"
          }
        ]
      },
      {
        "type": "cdrom",
        "tag": "ata:1:cdrom:image",
        "interface": "cdrom",
        "instance": {
          "name": "cdrom2",
          "briefname": "cdrm2"
        },
        "extension": [
          {
            "name": "chd"
          },
          {
            "name": "cue"
          },
          {
            "name": "toc"
          },
          {
            "name": "nrg"
          },
          {
            "name": "gdi"
          },
          {
            "name": "iso"
          },
          {
            "name": "cdr"
          }
        ]
      }
    ]
  }
}