- Add tools/apply_scanlines.py for CRT scanline effect
- Add tools/nufli_delta.py for delta encoding (base + bitmask deltas)
- Delta format: 2880 byte bitmask + N byte values per screen
- 40.1% size reduction vs raw NUFLI (69KB vs 115KB for 5 screens)
- Base (23KB) at 000-FFF, title delta (7KB) at -
- Other deltas use title as fallback (TODO: disk loading)
- Update tasks.md with scanline and delta encoding documentation
New targets:
help (default) — show usage (was the -help/--help equivalent)
compile — compile main.c → build/nyuller.prg
run — compile + run in oscar64 built-in emulator
run-vice — compile + run in VICE x64 (foreground)
run-vice-cycle — compile + run in VICE x64sc (cycle-exact)
play — compile + launch VICE x64 detached
play-cycle — compile + launch VICE x64sc detached
kill — kill any detached VICE
clean — remove build/ artifacts
build/nyuller.d64 — build the .d64 disk image from the .prg
Optimization: override with 'make OPT=O3' (or O0/O1/O2/Os/g).
Default is -O1 (oscar64 default).
The Makefile builds oscar64 automatically if missing, uses
c1541 to create the .d64 with verification, and passes
-drive8type 1541 to VICE (required for autostart).
Removed src/build.sh and updated all docs (README, tasks.md,
AGENT_CONTEXT.md, GAME.md, helloworld.c) to reference make.