Single-file conio-based editor (vim128.c) that runs on the 40 or 80 column
screen, with incremental redraw and 2 MHz mode in 80 column mode.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
NOTES records the dd/p, A/I/O/o, :q/:q! and missing-file checks that pass
on the work disk, and that \x03 in -keybuf arrives as RUN/STOP so a script
can leave insert mode.
Generated with Codebuff 🤖
Co-Authored-By: Codebuff <noreply@codebuff.com>
The single-row painter became vml.s at $C000: one sys() paints all 24
rows, memmove and line-index fix-ups run in ML, and the keyboard buffer
is popped with IRQs masked. dall() repaints only the cursor row or the
whole screen, so j went from 17 to 0-3 jiffies. Loading now checks the
drive error channel and splits lines over 80 columns. The temporary
jiffy counters used to measure the speedup are removed; the numbers are
in NOTES.md.
Generated with Codebuff 🤖
Co-Authored-By: Codebuff <noreply@codebuff.com>
Power C on the C64 calls ML as sys(addr, &a, &x, &y); the bank argument
from the manual's C128 library page made sys() jump to $000F and crash.
The ML row painter now runs. Quitting resets through $FCE2 because Power C
owns BASIC's zero-page pointers. Notes and Power C skill updated.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>