Config File

Bizmuth keeps its settings in one JSON file, ~/.bizmuth/config.json: a .bizmuth folder in your home directory on every platform, C:\Users\NAME\.bizmuth\config.json on Windows. Preferences edits most of it; the rest is written by Bizmuth itself or set by hand.

{
  "roms_dir": "/Users/me/Documents/Bizmuth",
  "default_machine": "next",
  "debug": { "protocol": "adp", "adp_port": 11001 },
  "esp": { "endpoint": "esp", "port": 11002 }
}

A key left out takes its default, so a file holding only the keys above is complete. A file that cannot be read is replaced by the defaults.

A command-line flag overrides the file for one run and does not change it. --roms-dir is the exception, and is written back. --config FILE reads and writes another file in place of this one.

Edit the file while Bizmuth is closed. Bizmuth writes the window, view and card settings back when it quits, over any change made while it ran.

Top-level keys

KeyDefaultMeaning
roms_dirnonethe ROM folder; none means first-run setup asks
default_machine"next"48k, 128k, plus2a, plus3 or next
windownonex, y, width and height of the window, written at quit

paths

KeyDefaultMeaning
sd0, sd1nonethe card image in slot 0 and slot 1
sd0_read_only, sd1_read_onlyfalseattach that slot copy-on-write

view

KeyDefaultMeaning
scale2window scale, 1 to 4
maintain_aspecttrueletterbox instead of stretching
show_statusbartruethe status bar
show_toolbartruethe toolbar
autohide_statusbarfalsehide the status bar in full screen
fullscreenfalsestart full screen
scanlines0scanline weight: 0 off, 1 25%, 2 50%, 3 75%

audio

master, dac, ay and beeper, each a multiplier on that source’s level, 1.0 by default. 1.0 is the level the FPGA’s mixer gives. Preferences shows them in decibels.

input

KeyDefaultMeaning
cursor_mode"next_nav"present in the file and not read: the arrow keys start in the machine’s default mode, as Keyboard and Controllers describes
mouse_enabledtruethe Next’s Kempston mouse
next_joy_left"sinclair2"what the Next’s left port presents: sinclair1, sinclair2, cursor, kempston1, kempston2, md1, md2 or io
next_joy_right"kempston1"the same, for the right port
classic_kempston_enabledtruea Kempston interface on the classic machines
classic_interface"none"a keyboard joystick interface on the classic machines: none, sinclair1, sinclair2 or cursor

controller

KeyDefaultMeaning
deadzone0.5how far, 0 to 1, a stick moves before it counts as a direction
devicesemptyper gamepad, by the name the system gives it: its port and its bindings

A device’s port is left, right or none. Its bindings map each control (up, down, left, right, fire, fire2, a, start) to a list of inputs, any of which drives it:

"controller": {
  "deadzone": 0.5,
  "devices": {
    "Xbox Wireless Controller": {
      "port": "left",
      "bindings": { "fire": ["south", "north"], "up": ["dpad-up", "leftsticky+"] }
    }
  }
}

A control a device does not bind uses the default binding listed on Keyboard and Controllers.

emulation

KeyDefaultMeaning
max_speednonea ceiling on the Next’s CPU speed: 0 3.5 MHz, 1 7, 2 14, 3 28; none for no ceiling
mem_waittruethe 28 MHz memory wait state
im2_daisytruethe IM2 hardware interrupt vector
rtctruea real-time clock fitted

--max-speed, --no-mem-wait, --no-im2-daisy and --no-rtc override these for one run.

debug

KeyDefaultMeaning
protocol"none"the debug server started: none, adp or dzrp
adp_port11001the ADP port

--debug-protocol both starts both servers for one run; the file holds one. See ADP.

esp

KeyDefaultMeaning
endpoint"null"what the Next’s ESP serial line is wired to: null for nothing, loopback, bridge or esp
port11002the TCP port bridge listens on

An unknown endpoint is treated as null, with a warning.

update

KeyDefaultMeaning
check_enabledtruecheck for a new version on startup
interval"weekly"daily, weekly or monthly
last_checkemptythe date of the last successful check, written by Bizmuth
skip_versionemptya version you chose not to be told about

overlay

KeyDefaultMeaning
zoomnonethe overlay’s magnification on top of the display scale; none chooses it from the display

← User Guide