sndj v0.1
The first release of sndj — an LSDJ-inspired music tracker for the
Super Nintendo / Super Famicom, written in 65816 + SPC700 assembly.
Third sibling of smsggdj
and genmddj: same data
model, same two-modifier control grammar, same screen map — built
around what only the S-DSP can do.
Flash sndj-0.1.sfc to an FXPak/SD2SNES or open it in Mesen 2 /
ares / bsnes. Tempo and pitch are region-free by construction (the
audio unit has its own crystal) — PAL only changes the picture.
Highlights
- 8-track sequencer — phrases, chains, a 128-row song grid,
journalled 16-slot saves in cart SRAM, LIVE mode with quantised
chain launching and hardware ENVX meters. - Six instrument types — SMP (pool samples), KIT (drum kits),
WAV (drawn wavetables), NSE (noise), SLICE (chop any sample
into up to 16 parts at zero audio-RAM cost — the note picks the
slice) and KARP (Karplus-Strong on the echo hardware: the room
becomes a plucked string, per-note-tuned by the FIR filter — a
technique no commercial SNES soundtrack ever shipped). - The room as an instrument — echo delay with its live audio-RAM
cost on screen, feedback, per-voice sends with channel gates, and
8 patchable FIR curves; reconfiguration runs an erratum-safe
driver sequence. - One groove, two steps — the song's feel is a public pair of
tick counts (6/6 straight, 8/4 swing) andG xywrites it live
from a phrase. - 24-command language shared by phrases and tables, sibling
semantics preserved. - Sync & MIDI takeover (console side) — follow a sibling master
or the Ableton Link ESP32 bridge, pulse out to Volca/PO gear, or
play sndj as an 8-voice BRR module over MIDI. Hardware bring-up of
the cables/rigs is still pending; these pass their emulated gates. - Browser ecosystem, zero toolchain —
user-tools/patcher.html:
sample pool with SoundFont drag-import and bit-exact BRR audition,
slice designer with draggable cuts, kit builder, boot instruments,
FIR designer with a live response plot (including a KARP pluck
prototype), palettes, ROM + audio-RAM budget meters.
user-tools/savetool.htmlmanages cart saves and.sndjsongs.
Full history in CHANGELOG.md. Built and verified by
35 emulator-in-the-loop test suites + golden screenshots; the boot
splash shows V0.1 B239FB9 so you can confirm the flash took.