HeadlinesBriefing favicon HeadlinesBriefing.com

Pong Wars on C64

Hacker News •
×

The project began when I saw a JavaScript recreation of Pong Wars by Koen van Gilst on Mastodon. The game’s simple two‑ball mechanic, with a random bounce at the block edges, seemed well‑suited to the Commodore 64’s limited resources.

To keep the animation smooth, I planned to use the C64’s raster interrupt, which fires at the bottom of each frame, allowing custom code to run while BASIC remains active. The core loop calculates ball movement, detects collisions with a 20×20 blockfield, and updates a double‑buffered colour RAM representation.

Initialisation writes a blank screen to $0400 and prepares a 512‑byte internal buffer at $CE00, filled with alternating black and white blocks. The screen is then drawn using the reverse‑video space character (160) to create solid blocks. The colour RAM, at $D800, is refreshed each frame from the buffer, ensuring the ball’s position and block colours stay in sync.

Overall, the effort shows how classic hardware can still host engaging retro games when careful low‑level planning and timing are applied.