FWIW I've spent the past few days happily reverse-engineering various aspects of DOS games I've long been curious about. I finally understand how Arjan Brussee did the scrolling in Jazz Jackrabbit. It's brilliant. This guy is a genius.
It's somewhat complex to understand; I didn't understand Claude's textual explanation at first. After asking for a html/js simulator showing things visually it clicked.
No pushback from Claude so far.
Claude doesn’t push back if it thinks the thing you’re doing is old. OAI will sometimes start barking at you if it thinks you’re making a keygen even if it’s 25 years old.
I'm working with Claude to RE a binary blob and re-implement Firmware of Bluetooth controller, so far no push back even i'm pretty deep into it now.
How did they do the scrolling in it?
Simplified:
Three regions that move as you scroll in x/y: current/next/clean.
The key is that when you scroll a column or a line, that column/line is written in all three regions.
The clean region is used both as a source for filling the dirty places where sprites have been written as well as the next current or next after a wrap.
VGA registers take care of the x, y start output.
Why would writing three regions be faster than writing one though?