Or: how a simple "make it case-insensitive" turned into a masterclass in why assembly is hard.
I'm working on CVIT, a terminal game running on a DG Nova emulated in SIMH (and on Dusky, a custom Nova emulator in C#). The command interpreter lives in cvit-command.asm — about 700 lines of Nova assembly. Commands like TYPE, CAT, and STA are dispatched by comparing the input buffer against uppercase constants.
The task seemed trivial: make the commands case-insensitive. Type type hello instead of TYPE HELLO. How hard could it be?