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

Retro wizard squeezes 1989 classic onto a 1979 Apple II—and the comments go wild

TLDR: A developer ported Shufflepuck Cafe from 1989 onto the 1979 Apple II and kept it playable and smooth. Comments swung between admiration for the technical feat, mouse-based difficulty hot takes, and nostalgia—plus a jab that old Amiga/Mac versions still run fine in emulators while the newer Mac port doesn’t.

A retro dev just pulled off a magic trick: porting 1989’s air-hockey cult hit Shufflepuck Cafe to the 1979 Apple II and keeping it fast and fun. The comments exploded with a mix of awe, nostalgia… and mouse-related slander. Old-school coders saluted the feat, with one veteran saying the Apple II’s barebones setup made it “an even stricter environment” than the already tough MSX scene—translation: this is hard mode. Another admitted, with a wince, “I would hate doing it today,” while still applauding the ingenuity.

Meanwhile, the nostalgia brigade rolled in hot. One player reminisced about spotting a computer opponent’s tell—yes, this game had poker vibes—and another dropped a love letter link that “narrates the pleasure of playing Shufflepuck Cafe” here. Then came the spicy hardware hot take: the game “got easier with the introduction of optical mice,” because your grimy old ball mouse couldn’t keep up with fast flicks. Cue a mini-controversy about whether difficulty should include fighting your mouse.

For the non-nerds: the dev faked 3D by cleverly precomputing where things should appear on screen, so the Apple II didn’t have to do heavy math. It looks 3D, plays smooth, and the community is split between crying happy tears, debating mice, and loudly declaring that the Amiga port still slaps while the official Mac OS X version is dust. Peak retro chaos.

Key Points

  • The author ported the 1989 game Shufflepuck Cafe to the 8-bit Apple II while preserving playability and detail.
  • A preliminary Glider port provided foundational knowledge for sprites, mouse input, sound playback, and data fitting.
  • Shufflepuck’s 3D effect was achieved via a one-point perspective transform over a 255×192 rectangle, not true 3D rendering.
  • Formulas using vanishing point, front, and back table references mapped geometric coordinates to screen coordinates, tested via SDL.
  • Performance was enabled by 6502-optimized lookup tables and a per256 scaling trick, yielding a 612-byte routine running in 138 cycles.

Hottest takes

"the Apple II was an even stricter environment. Impressive work." — tl2do
"I would hate doing it today" — coldcode
"Shufflepuck Cafe got easier with the introduction of optical mice, ironically." — LeoPanthera
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.