v6 prototype

Loading…

fanco16 · v6 · SIREN prototype

Git v6 prototype · build live 22e7bf0bada4 · 2026-10-29T17:16:52.244Z

v1 · v2 · SPEC · SOUND · README / attribution

Arrows / WASD · Z / Space = A · X / Enter = B. Touch pad: slide your thumb between directions; slide between A and B. Full QWERTY guest input is deferred.


        
Assembly source — edit and Run

Uploads are public and anonymous. Names are metadata; IDs identify bytes, not trusted authors. Loading by ID validates the image and shows its kind but does not run it; its source is shown if one was uploaded with it. Upload also stores your assembly as the program’s source; the server accepts it only if it assembles to exactly the uploaded bytes, and the first source for a program is kept. libraries (FANL/FANR) are loaded by programs with SYS LOAD, not run. Source save uses this browser’s local storage.

Every visible effect and note is controlled by guest assembly. The host provides mapped input, a framebuffer and a SIREN sound device, not a prerecorded soundtrack.

Timing and audio notes

This is a 120 MHz byte-cycle timing experiment, not a 120 MIPS guarantee. The machine produces 400 stereo samples per logical 120 Hz tick at 48 kHz. AudioWorklet rendering blocks are independent of those ticks, and output is resampled if the browser chooses another rate. A finite lead buffer adds input-to-audio latency; an overloaded device can underrun rather than secretly skip guest execution.

Audio starts only after Run is pressed. Pause or hiding the tab freezes play and clears queued audio; Run resumes. Reset or changing the example starts over. Guest SYS LOAD pauses virtual time, clears audio, and atomically installs a validated image before resuming. The synth is SID-inspired, not a cycle-accurate 6581 emulator; classic SID-file playback is not implemented.