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
| Key | Default | Meaning |
|---|---|---|
roms_dir | none | the ROM folder; none means first-run setup asks |
default_machine | "next" | 48k, 128k, plus2a, plus3 or next |
window | none | x, y, width and height of the window, written at quit |
paths
| Key | Default | Meaning |
|---|---|---|
sd0, sd1 | none | the card image in slot 0 and slot 1 |
sd0_read_only, sd1_read_only | false | attach that slot copy-on-write |
view
| Key | Default | Meaning |
|---|---|---|
scale | 2 | window scale, 1 to 4 |
maintain_aspect | true | letterbox instead of stretching |
show_statusbar | true | the status bar |
show_toolbar | true | the toolbar |
autohide_statusbar | false | hide the status bar in full screen |
fullscreen | false | start full screen |
scanlines | 0 | scanline 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
| Key | Default | Meaning |
|---|---|---|
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_enabled | true | the 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_enabled | true | a Kempston interface on the classic machines |
classic_interface | "none" | a keyboard joystick interface on the classic machines: none, sinclair1, sinclair2 or cursor |
controller
| Key | Default | Meaning |
|---|---|---|
deadzone | 0.5 | how far, 0 to 1, a stick moves before it counts as a direction |
devices | empty | per 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
| Key | Default | Meaning |
|---|---|---|
max_speed | none | a ceiling on the Next’s CPU speed: 0 3.5 MHz, 1 7, 2 14, 3 28; none for no ceiling |
mem_wait | true | the 28 MHz memory wait state |
im2_daisy | true | the IM2 hardware interrupt vector |
rtc | true | a real-time clock fitted |
--max-speed, --no-mem-wait, --no-im2-daisy and --no-rtc override these for one run.
debug
| Key | Default | Meaning |
|---|---|---|
protocol | "none" | the debug server started: none, adp or dzrp |
adp_port | 11001 | the ADP port |
--debug-protocol both starts both servers for one run; the file holds one. See ADP.
esp
| Key | Default | Meaning |
|---|---|---|
endpoint | "null" | what the Next’s ESP serial line is wired to: null for nothing, loopback, bridge or esp |
port | 11002 | the TCP port bridge listens on |
An unknown endpoint is treated as null, with a warning.
update
| Key | Default | Meaning |
|---|---|---|
check_enabled | true | check for a new version on startup |
interval | "weekly" | daily, weekly or monthly |
last_check | empty | the date of the last successful check, written by Bizmuth |
skip_version | empty | a version you chose not to be told about |
overlay
| Key | Default | Meaning |
|---|---|---|
zoom | none | the overlay’s magnification on top of the display scale; none chooses it from the display |