Eric Graham’s 1987 Amiga Juggler raytracer recovered from original disk image

Nearly 40 years after Eric Graham’s Juggler helped define what the Commodore Amiga could be, the surviving materials behind its raytracing lineage have been pulled from an old Amiga disk image and made readable again. AlphaPixel’s Chris Hanson published the recovery on GitHub, turning a historically important but awkward-to-access archive into a public GitHub repository for programmers, historians and Amiga enthusiasts. The result is not a simple nostalgia story. It is a reminder that software history often survives in a half-lit state: technically preserved, but trapped inside obsolete formats, dead links and uncertain rights.

Nearly 40 years after Eric Graham’s Juggler helped define what the Commodore Amiga could be, the surviving materials behind its raytracing lineage have been pulled from an old Amiga disk image and made readable again. AlphaPixel’s Chris Hanson published the recovery on GitHub, turning a historically important but awkward-to-access archive into a public GitHub repository for programmers, historians and Amiga enthusiasts. The result is not a simple nostalgia story. It is a reminder that software history often survives in a half-lit state: technically preserved, but trapped inside obsolete formats, dead links and uncertain rights.

The animation that made a machine believable

In November 1986, the Amiga’s promise was still new enough to need proof. Graham’s Juggler supplied it with disarming theatricality: a red, sphere-built figure juggling three mirrored balls over a checkerboard floor, the balls reflecting the little world around them as the animation looped on an ordinary personal computer. Walter Randelshofer’s Amiga animation archive describes the demo as a 24-frame, 320-by-200 full-colour sequence in the Amiga’s 4096-colour HAM mode, playing at 30 frames per second with a matching clink sound effect. More importantly, the archive identifies it as one of the earliest full-colour 3D raytraced animations rendered and displayed on a personal computer.

What made Juggler matter was not simply that it looked good. It made the Amiga’s graphical strengths emotionally legible. Specifications could describe custom chips, colour modes and display tricks, but Graham’s animation turned those abstractions into a moment of surprise. The mirrored balls were the point: they gave home-computer users a glimpse of a visual language they associated with workstations, laboratories and professional imaging systems, not a machine that might sit on a desk in a bedroom or small studio.

The artefact in context

The material recovered by AlphaPixel centres on Graham’s 1987 Amiga raytracer, closely associated with The Juggler and the early raytracing experiments that surrounded it. Hanson’s article explains that the source was not readily available to most people because it was buried inside an Amiga ADF disk image, while some older references had already decayed into inaccessible web pages. The same disk image data was available through the Internet Archive, where it is listed as Raytracer 1987 Graham Source Code, attributed to Eric Graham, dated 1987 and described as “Raytracer 1.0 (plus source)”.

That distinction between being preserved and being usable is central to the story. A file can be saved in an online archive and still remain effectively sealed away from most readers. An ADF image is not a normal folder of files; it is a disk image from another computing environment, and reading it requires specialist tools or emulator knowledge. Hanson’s intervention was to extract the contents, document what was there, and publish the result in a form that modern developers could inspect without first becoming Amiga filesystem specialists.

From disk image to readable archive

AlphaPixel’s recovery was practical rather than romantic. Hanson used a Python port of an Amiga disk-extraction tool to unpack the ADF image into portable files, after deciding that a Python-based extractor would be easier for contemporary users to run, modify and keep alongside the recovered material. He also describes checking the extractor against additional test images, because a preservation tool that silently misreads old media can do more harm than good. The GitHub repository now contains the original compressed ADF, extracted folders, media conversions, scene data, executables and surviving raytracer source materials.

What was recovered, and what was not

The recovery should be handled with care. It is not the complete production source for every tool used to create the finished Juggler animation. Hanson’s write-up notes that the recovered C raytracer source implements a much simpler scene than the famous robot animation, while the disk also contains scene-description files for the robot, dragon and elephant images. The source for the broader scene-generation tool, identified as SSG, is not included; in the repository manifest, SSG appears as an Amiga executable rather than recovered source.

That limitation does not weaken the recovery. It makes it more honest. Computing history rarely arrives complete and neatly labelled. It comes as fragments: disk images, damaged links, executable files, old magazine references, personal recollections and source files that survived by luck as much as design. AlphaPixel’s repository is valuable because it clarifies the surviving record without pretending to fill every gap.

Why the Amiga needed the Juggler

The Amiga was a machine sold on possibility, and Juggler gave that possibility a moving shape. Randelshofer’s archive says the reflected 3D environment in the glass balls had not been seen before on a stock personal computer in 1986, and that many people were inspired by the demo and later Amiga animations to pursue careers in 3D graphics.

This is why the recovery feels larger than a repository upload. The Amiga’s cultural history was shaped by moments when users saw something unexpected and immediately wanted to know how it had been done. Juggler was one of those moments. It belonged to an era when personal computing was still intimate, experimental and intensely visual, and when a short animation could travel through computer shops, user groups and copied disks with the force of a rumour.

Software archaeology in the 2020s

The recovery also speaks to a wider preservation problem. The early personal-computer era is now old enough for its media to fail, its websites to vanish and its documentation to become scattered across archives, forums and private collections. In that environment, the work of preservation is often mundane but essential: locate the best surviving copy, extract it accurately, check what the files contain, describe the material clearly, establish permission where possible, and make the result easy to find.

AlphaPixel’s work fits that model. Hanson found that the ADF existed, but that the textual source remained hard to reach for people without the right tools or background. By publishing both the disk archive and extracted files, the repository keeps the original material visible while making day-to-day study far easier. It also leaves room for verification, because the extraction can be repeated and compared rather than simply trusted.

The unfinished record

There is still unfinished business. Hanson says he intends to update the work so it can run on a modern system and to try to recreate missing assets, including an implementation of the SSG tool capable of parsing and recreating the robot, dragon and elephant scenes. The repository README also points to related resources, conversions and later recreations, placing the recovery within a longer chain of enthusiasts keeping Juggler alive across platforms and decades.

That open-endedness is part of the appeal. The new repository does not close the history of Juggler. It gives the next group of programmers and historians a firmer place to begin. Nearly four decades after Graham’s small red figure first tossed mirrored balls across Amiga screens, the trick still works, though the wonder has shifted. It is no longer only in the animation itself. It is in the fact that a fragile piece of computing history has been caught, clarified and handed forward before it could slip further from view.

Spread the love
error: