{
  "machine": {
    "name": "starfir2",
    "sourcefile": "exidy/starfire.cpp",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "Star Fire 2",
    "year": "1979",
    "manufacturer": "Exidy",
    "rom": [
      {
        "name": "sfire2.01",
        "size": "2048",
        "crc": "f75be2f4",
        "sha1": "b15511c345363f45eee0c019aa336a9aa16e63ea",
        "region": "maincpu",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.02",
        "size": "2048",
        "crc": "ccf98c6a",
        "sha1": "3e7792aa47750ee19baf1e74016038fe80c92381",
        "region": "maincpu",
        "offset": "800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.03",
        "size": "2048",
        "crc": "604b2d50",
        "sha1": "39d402135aaaa44c1ad05e1665eb6668280fae28",
        "region": "maincpu",
        "offset": "1000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.04",
        "size": "2048",
        "crc": "f8a9658f",
        "sha1": "aea97387001183a797375971c7325b4a838ea1d5",
        "region": "maincpu",
        "offset": "1800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.05",
        "size": "2048",
        "crc": "acbaf827",
        "sha1": "a546340f8533557a86b589f5011e5af0439e0d4d",
        "region": "maincpu",
        "offset": "2000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.06",
        "size": "2048",
        "crc": "3525bb22",
        "sha1": "1a1ca8b5ef1a5584d28644bdc751635aac3fad02",
        "region": "maincpu",
        "offset": "2800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.07",
        "size": "2048",
        "crc": "7fce0e54",
        "sha1": "17355fe98cf1511c32e90434960ced7b3f3ecac7",
        "region": "maincpu",
        "offset": "3000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.08",
        "size": "2048",
        "crc": "98054c14",
        "sha1": "4a561a9d87be9c5d4283ee78c4cf05c10c979a2f",
        "region": "maincpu",
        "offset": "3800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.09",
        "size": "2048",
        "crc": "abaa4144",
        "sha1": "045ebcd38d6a3f75c6d819a42aa1fb92ac84755c",
        "region": "maincpu",
        "offset": "4000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.10",
        "size": "2048",
        "crc": "a0b3dadb",
        "sha1": "d86683b528b5fbafad0cdd054940bc04b056b850",
        "region": "maincpu",
        "offset": "4800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.11",
        "size": "2048",
        "crc": "a61ebbd2",
        "sha1": "9fdf6558306aebbf5e9e106e4f4f6f7a3e703696",
        "region": "maincpu",
        "offset": "5000",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "sfire2.12",
        "size": "2048",
        "crc": "a35ba06d",
        "sha1": "122f1dbc235977367fdd06b7517c356a3147dfd1",
        "region": "maincpu",
        "offset": "5800",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "prom-1.7a",
        "size": "32",
        "crc": "ae1f4acd",
        "sha1": "1d502b61db73cf6a4ac3d235455a5c464f12652a",
        "region": "proms",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "prom-2.8a",
        "size": "32",
        "crc": "9b713924",
        "sha1": "943ad55d232f7bb99886a9a273dd14a1e1533491",
        "region": "proms",
        "offset": "20",
        "status": "good",
        "optional": "no"
      }
    ],
    "device_ref": [
      {
        "tag": ":maincpu",
        "name": "z80"
      },
      {
        "tag": ":screen",
        "name": "screen"
      },
      {
        "tag": ":mono",
        "name": "speaker"
      },
      {
        "tag": ":sound_nl",
        "name": "netlist_cpu"
      },
      {
        "tag": ":sound_nl:size",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:sexplo",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:stie",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:slaser",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:track",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:lock",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:scanner",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:oheat",
        "name": "nl_logic_in"
      },
      {
        "tag": ":sound_nl:trackvol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:laservol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:enemyvol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:sizevol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:explovol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:lohvol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:mainvol",
        "name": "nl_analog_in"
      },
      {
        "tag": ":sound_nl:tieon1",
        "name": "nl_analog_out"
      },
      {
        "tag": ":sound_nl:laseron1",
        "name": "nl_analog_out"
      },
      {
        "tag": ":sound_nl:output",
        "name": "nl_analog_out"
      },
      {
        "tag": ":dac",
        "name": "dac_16bit_r2r_tc"
      }
    ],
    "chip": [
      {
        "type": "cpu",
        "tag": "maincpu",
        "name": "Zilog Z80",
        "clock": "2500000"
      },
      {
        "type": "cpu",
        "tag": "sound_nl",
        "name": "Netlist CPU Device",
        "clock": "1000000000"
      },
      {
        "type": "audio",
        "tag": "mono",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "dac",
        "name": "16-Bit R-2R Twos Complement DAC"
      }
    ],
    "display": {
      "tag": "screen",
      "type": "raster",
      "rotate": "0",
      "width": "256",
      "height": "224",
      "refresh": "59.824356",
      "pixclock": "5000000",
      "htotal": "319",
      "hbend": "0",
      "hbstart": "256",
      "vtotal": "262",
      "vbend": "32",
      "vbstart": "256",
      "flipx": "no"
    },
    "sound": {
      "channels": "1"
    },
    "input": {
      "players": "1",
      "coins": "1",
      "tilt": "yes",
      "service": "no",
      "control": {
        "type": "stick",
        "buttons": "1",
        "minimum": "0",
        "maximum": "255",
        "sensitivity": "100",
        "keydelta": "10",
        "reverse": "yes"
      }
    },
    "dipswitch": [
      {
        "name": "Time",
        "tag": "DSW",
        "mask": "3",
        "diplocation": [
          {
            "name": "3A",
            "number": "1",
            "inverted": "no"
          },
          {
            "name": "3A",
            "number": "2",
            "inverted": "no"
          }
        ],
        "dipvalue": [
          {
            "name": "90 Sec",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "80 Sec",
            "value": "1",
            "default": "no"
          },
          {
            "name": "70 Sec",
            "value": "2",
            "default": "no"
          },
          {
            "name": "60 Sec",
            "value": "3",
            "default": "no"
          }
        ]
      },
      {
        "name": "Coinage",
        "tag": "DSW",
        "mask": "4",
        "diplocation": {
          "name": "3A",
          "number": "3",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "2 Coins/1 Credit",
            "value": "4",
            "default": "no"
          },
          {
            "name": "1 Coin/1 Credit",
            "value": "0",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Fuel per Coin",
        "tag": "DSW",
        "mask": "8",
        "diplocation": {
          "name": "3A",
          "number": "4",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "300",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "600",
            "value": "8",
            "default": "no"
          }
        ]
      },
      {
        "name": "Bonus",
        "tag": "DSW",
        "mask": "48",
        "diplocation": [
          {
            "name": "3A",
            "number": "5",
            "inverted": "no"
          },
          {
            "name": "3A",
            "number": "6",
            "inverted": "no"
          }
        ],
        "dipvalue": [
          {
            "name": "300 points",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "500 points",
            "value": "16",
            "default": "no"
          },
          {
            "name": "700 points",
            "value": "32",
            "default": "no"
          },
          {
            "name": "None",
            "value": "48",
            "default": "no"
          }
        ]
      },
      {
        "name": "Score Table Hold",
        "tag": "DSW",
        "mask": "64",
        "diplocation": {
          "name": "3A",
          "number": "7",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "fixed length",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "fixed length+fire",
            "value": "64",
            "default": "no"
          }
        ]
      },
      {
        "name": "Service Mode",
        "tag": "DSW",
        "mask": "128",
        "diplocation": {
          "name": "3A",
          "number": "8",
          "inverted": "no"
        },
        "dipvalue": [
          {
            "name": "Off",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "On",
            "value": "128",
            "default": "no"
          }
        ]
      }
    ],
    "configuration": {
      "name": "Jumper J6/4G: Enable NMI",
      "tag": "NMI",
      "mask": "1",
      "confsetting": [
        {
          "name": "No",
          "value": "0",
          "default": "no"
        },
        {
          "name": "Yes",
          "value": "1",
          "default": "yes"
        }
      ]
    },
    "port": [
      {
        "tag": ":DSW"
      },
      {
        "tag": ":NMI"
      },
      {
        "tag": ":POT_EXPLO"
      },
      {
        "tag": ":POT_LASER"
      },
      {
        "tag": ":POT_LOH"
      },
      {
        "tag": ":POT_MAIN"
      },
      {
        "tag": ":POT_SIZE"
      },
      {
        "tag": ":POT_TIE"
      },
      {
        "tag": ":POT_TRACK"
      },
      {
        "tag": ":STICKX",
        "analog": {
          "mask": "255"
        }
      },
      {
        "tag": ":STICKY",
        "analog": {
          "mask": "255"
        }
      },
      {
        "tag": ":STICKZ",
        "analog": {
          "mask": "255"
        }
      },
      {
        "tag": ":SYSTEM"
      }
    ],
    "adjuster": [
      {
        "name": "Explosion Volume",
        "default": "50"
      },
      {
        "name": "Laser Volume",
        "default": "50"
      },
      {
        "name": "Lock/Scan/Overheat Volume",
        "default": "50"
      },
      {
        "name": "Main Volume",
        "default": "50"
      },
      {
        "name": "'Size' Volume",
        "default": "50"
      },
      {
        "name": "Enemy Shot Volume",
        "default": "50"
      },
      {
        "name": "Tracking Volume",
        "default": "50"
      }
    ],
    "driver": {
      "status": "good",
      "emulation": "good",
      "savestate": "supported",
      "requiresartwork": "no",
      "unofficial": "no",
      "nosoundhardware": "no",
      "incomplete": "no"
    }
  }
}