A tiny imaginary machine / est. 2026

SWEET17

One bit beyond. A little virtual computer with a lot of nerve.

17 BITS
131,072 POSSIBILITIES
READY

Program / editable assembly

; comments · labels:
Edit, then Run or Step to assemble. Reset rewinds the machine.

The register file

hex / 00000–1FFFF
PC 0000Z 0C 0Ticks 0

Output port

OUT → decimal words

Memory-mapped postcard

32 × 16 / @00100

Memory / 17-bit words

Small machine. Extra bit.

Inspired by Steve Wozniak’s SWEET16, not a compatible emulator. Seventeen 17-bit registers (R0–R16), 131,072 word-addressed memory cells, and unsigned arithmetic that wraps at 131,072. Instructions live in a separate program store. R0 is ordinary, not a special accumulator. No 6502 required.

The pocket instruction set

LD R0, 17 · LD R0, [R1] · ST R0, [R1]
ADD SUB MUL AND XOR SHL SHR CMP Rn, value
INC DEC Rn · JMP JZ JNZ JC JNC label
OUT value · NOP HALT
Values: register, decimal, 0x hex, 0b binary, or [address]. Arithmetic updates Z and overflow/borrow C; CMP sets Z on equality and C on unsigned ≥. Shift counts are 0–17. LD updates Z, preserves C. Logic clears C. Stores, jumps and output preserve flags. Pixel color uses each word’s low 8 bits.