// 2025-11-30 // by Elder0010

Ephemeral Cathodic Relay

Commodore 8296 PET demo released in 2025 as a Genesis Project / Distant Future coop production. Reached #03 at the 2025 edition of Nordlicht demo competition.

Release date: 23/07/2025

Credits:

This demo targets the Commodore 8296 PET, a quite rare model of the PET family with 80 columns and 128KB of RAM. It features a new video mode that allows unlimited shades of green by exploiting the extremely slow phosphor decay of the PET monitor. It’s for real hardware only and will have no sense on emulators. The story and the concept behind the demo is by LRNZ, who also created all the graphics.

IRQ Loading on the PET

This is, as far as I know, the first demo with interrupt loading on the PET. Even tho I just used the kernal routines to load from disk, the loading speed is very fast compared to the standard Commodore 64 1541 disk drive (serial), because the PET has a much faster serial bus implementation based on the IEEE-488 standard (parallel).

About the video mode

The demo itself explains the video mode to the viewer, but to add some technical details. All the graphics are imported as a “time table”, based on the shadows of gray. The idea is to display each pixel according to its brightness, so that brighter pixels are displayed for a longer time, while darker pixels are displayed for a shorter time. This way, the phosphor decay of the monitor will create the different shades of green.

It’s interesting to note how this technique can be used to create a form of dithering as well. By displaying pixels in an alternating fashion (for example, a bright pixel followed by a dark pixel), it’s possible to create the illusion of intermediate brightness levels, thanks to the persistence of vision effect of the human eye.

Some of the images used in the original format

Audio notes

The audio is played using the built-in beeper of the PET via CB2 pin. The sound quality is quite low, but it’s possible to create some interesting effects by using different frequencies and durations for the beeps. The audio routine is also interrupt-driven, so it can play and sound effects while the graphics are being displayed.

There are different kinds of audio:
One of the scripted beeps source image