POLF: Retro 3D Game Uses Only A Character Display

Got a retrocomputing itch? So does [David Given], and luckily for us all he indulged it by writing POLF: a first-person 3D game for the Commodore PET that uses only the system’s 40×25 text mode character display for visuals. It’s a fantastic achievement, considering that the 80s-era computer boasts 32 kB of memory and doesn’t even have a graphical display.

Each level has an 8×8 layout.

Each level in POLF is a small, maze-like room in which one’s goal is to play a sort of cross between billiards and golf, aiming to move the round “ball” object into the square “hole” object. The 3D view is rendered using raycasting, which is a way of efficiently drawing a workable 3D perspective using limited resources. Raycasting can only do so much, but as a method it works fantastically within its limitations, and there are useful tutorials out there that lay the process bare.

The GitHub repository for the project is here, and it should run on any 40-column screen PET with at least 16 kB of RAM. Watch it in action in the video, embedded below. (Hint: the little bar graphs under the compass headings at the bottom of the screen represent the player’s proximity to the ball and hole objects. )

9 thoughts on “POLF: Retro 3D Game Uses Only A Character Display

    1. The subtitles are a brilliant idea and the game actually seems suspenseful! Very good use of the hardware and an example of restriction fosters creativity. This is subjectively the most impressive ZX81 game I have seen, even rivalling the Chess engine which exists for it. Which really messed with my mind at the time, having tried to write a chess engine on a computer (MSX) with 30 times more RAM available. (Actually it has even more but I didn’t know how to do bank switching.)

  1. Which Commodore Pet? There were 2 of them, and I had one of the very obscure ones. A kit that was produced and sold by some guy and he only sold about 60 of them in 1972. It used an Intel 8008 processor and looked much like an Imsai (although Imsai would not come out for 3 more years). He probably only sold 60 because the PCB was full of errors, I had to cut and jumper about 30 traces to get it working. And the RAM was absurdly expensive. It was my first computer and got me started in the fields of electrical, computer, and software engineering.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.