{
  "machine": {
    "name": "mk1forth",
    "sourcefile": "homebrew/mk1forth.cpp",
    "isbios": "no",
    "isdevice": "no",
    "ismechanical": "no",
    "runnable": "yes",
    "description": "Mark 1 FORTH Computer",
    "year": "2003",
    "manufacturer": "Andrew Holme",
    "rom": [
      {
        "name": "rom.bin",
        "size": "8192",
        "crc": "d55d8a09",
        "sha1": "8043a276826d40aa35b4ab8c94b99e3862fb62e7",
        "region": "ucode",
        "offset": "0",
        "status": "good",
        "optional": "no"
      },
      {
        "name": "forth.bin",
        "size": "8192",
        "crc": "8b2863fa",
        "sha1": "cc1d0662f10cf767f3f2581270ca2b4711121ffc",
        "region": "forth",
        "offset": "0",
        "status": "good",
        "optional": "no"
      }
    ],
    "device_ref": [
      {
        "tag": ":maincpu",
        "name": "mk1_cpu"
      },
      {
        "tag": ":uartirq",
        "name": "ipt_merge_any_hi"
      },
      {
        "tag": ":uart",
        "name": "i8251"
      },
      {
        "tag": ":baudclock",
        "name": "clock"
      },
      {
        "tag": ":rs232",
        "name": "rs232"
      },
      {
        "tag": ":rs232:terminal",
        "name": "serial_terminal"
      },
      {
        "tag": ":rs232:terminal:terminal_screen",
        "name": "screen"
      },
      {
        "tag": ":rs232:terminal:keyboard",
        "name": "generic_keyboard"
      },
      {
        "tag": ":rs232:terminal:bell",
        "name": "speaker"
      },
      {
        "tag": ":rs232:terminal:beeper",
        "name": "beep"
      }
    ],
    "chip": [
      {
        "type": "cpu",
        "tag": "maincpu",
        "name": "Mark 1 CPU",
        "clock": "1000000"
      },
      {
        "type": "audio",
        "tag": "rs232:terminal:bell",
        "name": "Speaker"
      },
      {
        "type": "audio",
        "tag": "rs232:terminal:beeper",
        "name": "Beep",
        "clock": "2000"
      }
    ],
    "display": {
      "tag": "rs232:terminal:terminal_screen",
      "type": "raster",
      "rotate": "0",
      "width": "640",
      "height": "240",
      "refresh": "50.000000",
      "flipx": "no"
    },
    "sound": {
      "channels": "1"
    },
    "input": {
      "players": "1",
      "service": "no",
      "tilt": "no",
      "control": {
        "type": "keyboard",
        "buttons": "73",
        "reverse": "no"
      }
    },
    "configuration": [
      {
        "name": "Data Bits",
        "tag": "rs232:terminal:RS232_DATABITS",
        "mask": "255",
        "confsetting": [
          {
            "name": "5",
            "value": "0",
            "default": "no"
          },
          {
            "name": "6",
            "value": "1",
            "default": "no"
          },
          {
            "name": "7",
            "value": "2",
            "default": "no"
          },
          {
            "name": "8",
            "value": "3",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Parity",
        "tag": "rs232:terminal:RS232_PARITY",
        "mask": "255",
        "confsetting": [
          {
            "name": "None",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Odd",
            "value": "1",
            "default": "no"
          },
          {
            "name": "Even",
            "value": "2",
            "default": "no"
          },
          {
            "name": "Mark",
            "value": "3",
            "default": "no"
          },
          {
            "name": "Space",
            "value": "4",
            "default": "no"
          }
        ]
      },
      {
        "name": "RX Baud",
        "tag": "rs232:terminal:RS232_RXBAUD",
        "mask": "255",
        "confsetting": [
          {
            "name": "50",
            "value": "14",
            "default": "no"
          },
          {
            "name": "75",
            "value": "15",
            "default": "no"
          },
          {
            "name": "110",
            "value": "0",
            "default": "no"
          },
          {
            "name": "134.5",
            "value": "16",
            "default": "no"
          },
          {
            "name": "150",
            "value": "1",
            "default": "no"
          },
          {
            "name": "200",
            "value": "17",
            "default": "no"
          },
          {
            "name": "300",
            "value": "2",
            "default": "no"
          },
          {
            "name": "600",
            "value": "3",
            "default": "no"
          },
          {
            "name": "1200",
            "value": "4",
            "default": "no"
          },
          {
            "name": "1800",
            "value": "18",
            "default": "no"
          },
          {
            "name": "2000",
            "value": "19",
            "default": "no"
          },
          {
            "name": "2400",
            "value": "5",
            "default": "no"
          },
          {
            "name": "3600",
            "value": "20",
            "default": "no"
          },
          {
            "name": "4800",
            "value": "6",
            "default": "no"
          },
          {
            "name": "7200",
            "value": "21",
            "default": "no"
          },
          {
            "name": "9600",
            "value": "7",
            "default": "yes"
          },
          {
            "name": "14400",
            "value": "8",
            "default": "no"
          },
          {
            "name": "19200",
            "value": "9",
            "default": "no"
          },
          {
            "name": "28800",
            "value": "10",
            "default": "no"
          },
          {
            "name": "38400",
            "value": "11",
            "default": "no"
          },
          {
            "name": "57600",
            "value": "12",
            "default": "no"
          },
          {
            "name": "76800",
            "value": "23",
            "default": "no"
          },
          {
            "name": "78125",
            "value": "24",
            "default": "no"
          },
          {
            "name": "111900",
            "value": "22",
            "default": "no"
          },
          {
            "name": "115200",
            "value": "13",
            "default": "no"
          }
        ]
      },
      {
        "name": "Stop Bits",
        "tag": "rs232:terminal:RS232_STOPBITS",
        "mask": "255",
        "confsetting": [
          {
            "name": "0",
            "value": "0",
            "default": "no"
          },
          {
            "name": "1",
            "value": "1",
            "default": "yes"
          },
          {
            "name": "1.5",
            "value": "2",
            "default": "no"
          },
          {
            "name": "2",
            "value": "3",
            "default": "no"
          }
        ]
      },
      {
        "name": "TX Baud",
        "tag": "rs232:terminal:RS232_TXBAUD",
        "mask": "255",
        "confsetting": [
          {
            "name": "50",
            "value": "14",
            "default": "no"
          },
          {
            "name": "75",
            "value": "15",
            "default": "no"
          },
          {
            "name": "110",
            "value": "0",
            "default": "no"
          },
          {
            "name": "134.5",
            "value": "16",
            "default": "no"
          },
          {
            "name": "150",
            "value": "1",
            "default": "no"
          },
          {
            "name": "200",
            "value": "17",
            "default": "no"
          },
          {
            "name": "300",
            "value": "2",
            "default": "no"
          },
          {
            "name": "600",
            "value": "3",
            "default": "no"
          },
          {
            "name": "1200",
            "value": "4",
            "default": "no"
          },
          {
            "name": "1800",
            "value": "18",
            "default": "no"
          },
          {
            "name": "2000",
            "value": "19",
            "default": "no"
          },
          {
            "name": "2400",
            "value": "5",
            "default": "no"
          },
          {
            "name": "3600",
            "value": "20",
            "default": "no"
          },
          {
            "name": "4800",
            "value": "6",
            "default": "no"
          },
          {
            "name": "7200",
            "value": "21",
            "default": "no"
          },
          {
            "name": "9600",
            "value": "7",
            "default": "yes"
          },
          {
            "name": "14400",
            "value": "8",
            "default": "no"
          },
          {
            "name": "19200",
            "value": "9",
            "default": "no"
          },
          {
            "name": "28800",
            "value": "10",
            "default": "no"
          },
          {
            "name": "38400",
            "value": "11",
            "default": "no"
          },
          {
            "name": "57600",
            "value": "12",
            "default": "no"
          },
          {
            "name": "76800",
            "value": "23",
            "default": "no"
          },
          {
            "name": "78125",
            "value": "24",
            "default": "no"
          },
          {
            "name": "111900",
            "value": "22",
            "default": "no"
          },
          {
            "name": "115200",
            "value": "13",
            "default": "no"
          }
        ]
      },
      {
        "name": "Cursor",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "1",
        "confsetting": [
          {
            "name": "No",
            "value": "0",
            "default": "no"
          },
          {
            "name": "Yes",
            "value": "1",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Type",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "2",
        "confsetting": [
          {
            "name": "Underline",
            "value": "0",
            "default": "no"
          },
          {
            "name": "Block",
            "value": "2",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Blinking",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "4",
        "confsetting": [
          {
            "name": "No",
            "value": "0",
            "default": "no"
          },
          {
            "name": "Yes",
            "value": "4",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Invert",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "8",
        "confsetting": [
          {
            "name": "No",
            "value": "0",
            "default": "no"
          },
          {
            "name": "Yes",
            "value": "8",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Color",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "48",
        "confsetting": [
          {
            "name": "Green",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Amber",
            "value": "16",
            "default": "no"
          },
          {
            "name": "White",
            "value": "32",
            "default": "no"
          }
        ]
      },
      {
        "name": "Auto CR on LF",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "64",
        "confsetting": [
          {
            "name": "No",
            "value": "0",
            "default": "no"
          },
          {
            "name": "Yes",
            "value": "64",
            "default": "yes"
          }
        ]
      },
      {
        "name": "Auto LF on CR",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "128",
        "confsetting": [
          {
            "name": "No",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Yes",
            "value": "128",
            "default": "no"
          }
        ]
      },
      {
        "name": "Local echo",
        "tag": "rs232:terminal:TERM_CONF",
        "mask": "256",
        "confsetting": [
          {
            "name": "No",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "Yes",
            "value": "256",
            "default": "no"
          }
        ]
      },
      {
        "name": "Layout",
        "tag": "rs232:terminal:keyboard:GENKBD_CFG",
        "mask": "1",
        "confsetting": [
          {
            "name": "ANSI",
            "value": "0",
            "default": "yes"
          },
          {
            "name": "JIS",
            "value": "1",
            "default": "no"
          }
        ]
      },
      {
        "name": "Typematic Delay",
        "tag": "rs232:terminal:keyboard:GENKBD_CFG",
        "mask": "6",
        "confsetting": [
          {
            "name": "0.25s",
            "value": "0",
            "default": "no"
          },
          {
            "name": "0.5s",
            "value": "2",
            "default": "no"
          },
          {
            "name": "0.75s",
            "value": "4",
            "default": "yes"
          },
          {
            "name": "1.0s",
            "value": "6",
            "default": "no"
          }
        ]
      },
      {
        "name": "Typematic Rate",
        "tag": "rs232:terminal:keyboard:GENKBD_CFG",
        "mask": "248",
        "confsetting": [
          {
            "name": "2.0cps",
            "value": "0",
            "default": "no"
          },
          {
            "name": "2.1cps",
            "value": "8",
            "default": "no"
          },
          {
            "name": "2.5cps",
            "value": "16",
            "default": "no"
          },
          {
            "name": "2.7cps",
            "value": "24",
            "default": "no"
          },
          {
            "name": "2.0cps",
            "value": "32",
            "default": "no"
          },
          {
            "name": "2.1cps",
            "value": "40",
            "default": "no"
          },
          {
            "name": "2.5cps",
            "value": "48",
            "default": "no"
          },
          {
            "name": "2.7cps",
            "value": "56",
            "default": "no"
          },
          {
            "name": "3.3cps",
            "value": "64",
            "default": "no"
          },
          {
            "name": "3.8cps",
            "value": "72",
            "default": "no"
          },
          {
            "name": "4.0cps",
            "value": "80",
            "default": "no"
          },
          {
            "name": "4.3cps",
            "value": "88",
            "default": "no"
          },
          {
            "name": "4.6cps",
            "value": "96",
            "default": "no"
          },
          {
            "name": "5.0cps",
            "value": "104",
            "default": "no"
          },
          {
            "name": "5.5cps",
            "value": "112",
            "default": "no"
          },
          {
            "name": "6.0cps",
            "value": "120",
            "default": "no"
          },
          {
            "name": "8.0cps",
            "value": "128",
            "default": "no"
          },
          {
            "name": "8.6cps",
            "value": "136",
            "default": "no"
          },
          {
            "name": "9.2cps",
            "value": "144",
            "default": "no"
          },
          {
            "name": "10.0cps",
            "value": "152",
            "default": "yes"
          },
          {
            "name": "10.9cps",
            "value": "160",
            "default": "no"
          },
          {
            "name": "12.0cps",
            "value": "168",
            "default": "no"
          },
          {
            "name": "13.3cps",
            "value": "176",
            "default": "no"
          },
          {
            "name": "15.0cps",
            "value": "184",
            "default": "no"
          },
          {
            "name": "16.0cps",
            "value": "192",
            "default": "no"
          },
          {
            "name": "17.1cps",
            "value": "200",
            "default": "no"
          },
          {
            "name": "18.5cps",
            "value": "208",
            "default": "no"
          },
          {
            "name": "20.0cps",
            "value": "216",
            "default": "no"
          },
          {
            "name": "21.8cps",
            "value": "224",
            "default": "no"
          },
          {
            "name": "24.0cps",
            "value": "232",
            "default": "no"
          },
          {
            "name": "26.7cps",
            "value": "240",
            "default": "no"
          },
          {
            "name": "30.0cps",
            "value": "248",
            "default": "no"
          }
        ]
      }
    ],
    "port": [
      {
        "tag": ":rs232:terminal:RS232_DATABITS"
      },
      {
        "tag": ":rs232:terminal:RS232_PARITY"
      },
      {
        "tag": ":rs232:terminal:RS232_RXBAUD"
      },
      {
        "tag": ":rs232:terminal:RS232_STOPBITS"
      },
      {
        "tag": ":rs232:terminal:RS232_TXBAUD"
      },
      {
        "tag": ":rs232:terminal:TERM_CONF"
      },
      {
        "tag": ":rs232:terminal:keyboard:GENKBD_CFG"
      },
      {
        "tag": ":rs232:terminal:keyboard:GENKBD_MOD"
      },
      {
        "tag": ":rs232:terminal:keyboard:GENKBD_ROW0"
      },
      {
        "tag": ":rs232:terminal:keyboard:GENKBD_ROW1"
      },
      {
        "tag": ":rs232:terminal:keyboard:GENKBD_ROW2"
      },
      {
        "tag": ":rs232:terminal:keyboard:GENKBD_ROW3"
      }
    ],
    "driver": {
      "status": "good",
      "emulation": "good",
      "savestate": "supported",
      "nosoundhardware": "yes",
      "requiresartwork": "no",
      "unofficial": "no",
      "incomplete": "no"
    },
    "slot": {
      "name": "rs232",
      "slotoption": [
        {
          "name": "terminal",
          "devname": "serial_terminal",
          "default": "yes"
        },
        {
          "name": "swtpc8212",
          "devname": "swtpc8212_terminal",
          "default": "no"
        },
        {
          "name": "sunkbd",
          "devname": "sunkbd_adaptor",
          "default": "no"
        },
        {
          "name": "rs_printer",
          "devname": "rs_serial_printer",
          "default": "no"
        },
        {
          "name": "rs232_sync_io",
          "devname": "rs232_sync_io",
          "default": "no"
        },
        {
          "name": "printer",
          "devname": "serial_printer",
          "default": "no"
        },
        {
          "name": "patch",
          "devname": "rs232_patch_box",
          "default": "no"
        },
        {
          "name": "s97801",
          "devname": "s97801_terminal",
          "default": "no"
        },
        {
          "name": "msystems_mouse",
          "devname": "rs232_mouse_hle_msystems",
          "default": "no"
        },
        {
          "name": "scorpion",
          "devname": "scorpion_ic",
          "default": "no"
        },
        {
          "name": "nss_tvi",
          "devname": "nss_tvinterface",
          "default": "no"
        },
        {
          "name": "mockingboard",
          "devname": "mockingboardd",
          "default": "no"
        },
        {
          "name": "loopback",
          "devname": "rs232_loopback",
          "default": "no"
        },
        {
          "name": "keyboard",
          "devname": "serial_keyboard",
          "default": "no"
        },
        {
          "name": "ie15",
          "devname": "ie15_terminal",
          "default": "no"
        },
        {
          "name": "null_modem",
          "devname": "null_modem",
          "default": "no"
        },
        {
          "name": "votraxtnt",
          "devname": "serial_votraxtnt",
          "default": "no"
        },
        {
          "name": "h19",
          "devname": "serial_heath_h19",
          "default": "no"
        },
        {
          "name": "dec_loopback",
          "devname": "dec_rs232_loopback",
          "default": "no"
        },
        {
          "name": "pty",
          "devname": "pseudo_terminal",
          "default": "no"
        },
        {
          "name": "auto3a",
          "devname": "auto3a_terminal",
          "default": "no"
        }
      ]
    }
  }
}