An in-depth write-up about how I made Shufflepuck Cafe run at 60 fps on an 1MHz computer - including two-player network games.

https://www.colino.net/wordpress/archives/2026/02/23/the-challenges-of-porting-shufflepuck-cafe-to-the-8-bits-apple-ii/

#RetroComputing #AppleII #GameDev #Assembly #Shufflepuck

The challenges of porting Shufflepuck Cafe to the 8 bits Apple II

[email protected]
@colin_mcmillen Great writeup of an incredible project, thanks for that!
@colin_mcmillen This is fascinating, and thanks for writing it up!

@colin_mcmillen An interesting read. For all the time I've spent on A2's, I've never actually done high res graphics.

Though this does remind me of the fast divide by 16 bit 240 code I wrote for NES scrolling. https://github.com/slembcke/GGJ-NES-template/blob/GGJ2X/ext/pixler/lib/nmi.s#L15

Similar to the divide by 9 trick with base 10 numbers. I _think_ to divide an 8 bit number by 7 comes down to a couple shifts, and add, and a branch/inc. Though a 256 entry table isn't that big I guess. (shrug)

GGJ-NES-template/ext/pixler/lib/nmi.s at GGJ2X · slembcke/GGJ-NES-template

GGJ2X-NES-template. Contribute to slembcke/GGJ-NES-template development by creating an account on GitHub.

GitHub
@colin_mcmillen Oh! Also I finally played this and Glider now that I have a working //e with a mouse and a A2Pico card. It's very well done. :)
@colin_mcmillen i am hooting and gibbering and throwing things at the mention of shufflepuck cafe