Cadence 1.7
Cadence 1.7 — menu-first UI, BASIC export & speed-ups
UI overhaul: everything lives in the menus now
The modal Settings dialog is gone. All configuration is one click away in a reorganized 8-menu bar, applied live:
- Screen — Full screen, Smooth, Phosphor persistence, monitor Model (GT65 / CTM644 / CM14 / MM12) and Adjust… (V-Hold / H-Hold with live preview).
- Input — Joystick emulation and key presets, right-Shift-as-
\, and Auto-type (moved here from Tools). - Audio — Enabled / SFX / Tape toggles (greyed while audio is off) and Latency.
- Performance — 1x / 2x / 4x speeds plus an independent Unlocked toggle (F9).
- System — machine model, CRTC type, 512k RAM expansion and ROM Box. F8 is now free.
- Disabled menu entries are now visibly dimmed, check/radio indicators included.
New: Export BASIC (Development menu)
A Locomotive BASIC detokenizer: reads the program currently in the emulated CPC's memory and saves it as a text listing — full token table, all variable types and number formats, REM/DATA/RSX handling, and correct line references even after the program has RUN. Validated byte-for-byte against the interpreter's own LIST.
Faster emulation
A profiling pass over the hot paths: Z80 parity lookup table, FDC clock idle gating, Gate Array sync-signal caching, devirtualized CRTC calls and a leaner memory-write path. Same cycle-exact behaviour — all CRTC and FDC conformance suites pass unchanged.
Fixes
- Keys no longer remain pressed in the CPC when the window loses focus mid-keystroke (the classic stuck-key on Alt-Tab).
- Joystick preset "Cursors + X + Z": fire buttons swapped to the more natural arrangement.
Binaries for Linux (AppImage), macOS (.dmg) and Windows are attached below.