Skip to content
Frodo history cover with Christian Bauer’s cycling photo and project imagery
Frodo: the history of Christian Bauer’s portable C64 emulator.

The History of Frodo: SID Music, Raster Tricks, and the Portable C64

At two in the morning, Christian Bauer’s new SID filters produced a wall of noise. He had spent a long weekend measuring real chips and rebuilding the sound emulation in Frodo. He went to bed. The next morning, a pair of function parameters turned out to be in the wrong order.

After fixing them, he tried the C64 demo Edge of Disgrace again. This time, the music sounded so good that he almost cried. Three decades after Frodo’s beginnings, a computer that first reached his desk as a childhood birthday present was still giving him something difficult to figure out.

Bauer tells that story in our written interview. Frodo’s history runs from an Amiga music player through portable desktop versions, handheld and console ports, and a fresh round of releases in 2024.

The colorful Edge of Disgrace demo logo on the Commodore 64
Edge of Disgrace, the Booze Design demo whose music sent Bauer back to Frodo’s SID filters. Demo by HCL, Dane, and Jailbird; title screenshot from CSDb.
Explore the history
  1. 1994: an Amiga, a real SID, and a message in memory
  2. 1995–1996: the picture is harder than it looks
  3. 1996–1997: Frodo leaves its Amiga assembly behind
  4. The 2000s: a portable C64 reaches smaller machines
  5. 2024: a demo sends the sound back to the bench
  6. Back at the C64 screen

1994: an Amiga, a real SID, and a message in memory

Bauer wanted C64 music while he worked on his Amiga 4000. Turning on the C64 every time was an inconvenience he could do something about. His solution began with a homemade Zorro II expansion card carrying an actual SID sound chip. Frodo supplied the processor emulation needed to run the music routines.

That combination is an appealingly practical beginning. The sound still came from a real chip. The software had to convince the music that it had a 6510 processor to work with. One test involved starting a C64 ROM and examining screen memory for the familiar BASIC startup message.

One of my first tests was seeing if the CPU emulation could boot a C64 ROM and produce that classic “38911 BASIC BYTES FREE” message, which I could then inspect in the debugger at address $0400.

Christian Bauer, Retro Replay interview.

The early manual carries a 1994 copyright, and Graham Nelson’s later Acorn User review dates the Amiga music-player beginning to that year. An exact first-public-download day is harder to establish. A March 1995 Commodore emulation FAQ already lists a public post-beta Amiga version.

Christian Bauer rides a red bicycle beside the water in the photograph on his official homepage
Christian Bauer, pictured in the photograph he uses on his official homepage. Photographer not identified.

1995–1996: the picture is harder than it looks

Trying another Amiga C64 emulator gave Bauer a reason to broaden his own project. It worked after a fashion, he remembers, but even moderately complicated games exposed its limits. He thought he could improve on it. The C64’s screen would soon make that ambition expensive.

A game does not necessarily set up a display and leave it alone until the next frame. C64 programmers could alter registers while the video chip was drawing. A change arriving on the wrong line or at the wrong moment could break an effect even when the CPU instructions were otherwise correct.

Frodo’s early reputation rested on following that behavior. The 1995 Commodore emulation FAQ described its raster effects and warned about speed. A stronger host computer helped, but it did not remove the need to understand the original machine.

Bauer’s VIC-II article grew from the same investigation. He credits experiments and exchanges with other programmers, including Marko Mäkelä and Andreas Boose, in his account to Retro Replay. The documentation could describe what a real machine did when software pushed beyond the obvious use of its registers.

A disk drive added another computer to the problem. The Commodore 1541 had its own processor, and software could put that processor to work. A shortcut that loaded ordinary files successfully could still fail when a game expected a particular fastloader to behave correctly.

1996–1997: Frodo leaves its Amiga assembly behind

The early Frodo was tightly bound to Motorola assembly. That suited the Amiga on Bauer’s desk, but made the next machine a much bigger move. Frodo’s own revision history separates the Amiga 1.x and 2.x line from the portable 3.x and 4.x versions written in C++.

BeOS became important to that move. After Commodore’s collapse, Bauer adopted a BeBox as his main workstation. His October 9, 1996 news entry records Frodo 3.1, and December brings links to a Mac version. The project could now travel without every host requiring a complete reinvention.

Frodo 4.0 followed in January 1997 and 4.1 in July. The latter integrated Win32 and RISC OS ports. Other programmers supplied those platform-specific efforts; the long list of versions should not be mistaken for Bauer individually writing and testing every one.

On RISC OS, Nelson’s October 1997 review found something worth celebrating and something worth warning about. The C64 was back inside a desktop window, but the host needed substantial processing power. The distinction between a quicker line-based version and Frodo SC’s more exact cycle-by-cycle work gave users a choice with visible consequences.

Paradroid introduces the Influence Device in a text briefing on Commodore 64
Paradroid, one of Bauer’s favorite C64 games, introduces the Influence Device. This is an original-game screen, not a Frodo compatibility test.
A BeBox tower stands beside its monitor, keyboard, and mouse at a computer exhibition
A BeBox at VCFE in 2014, illustrating the hardware Bauer adopted as his main workstation. This is not his personal machine. Photo: Wolfgang Stief, CC0.

The 2000s: a portable C64 reaches smaller machines

Once the emulator could move between systems, contributors found more places to put it. Bauer’s archive records an EPOC version in 2000, links to Sharp Zaurus and PocketPC ports in 2002, and GamePark32 and Dreamcast versions in 2003. His official project page credits the maintainers of later handheld and console adaptations.

Those ports changed the setting in which somebody might encounter a C64. A computer remembered as a keyboard under a television could appear on a handheld display or through a console. The emulator’s core was only part of getting there. Buttons needed sensible assignments, graphics needed presenting, and each host brought its own limitations.

The source history also records a move to the GPL in Frodo 4.2. Opening the project did not guarantee that every port stayed maintained forever. It did give other developers code they could inspect, adapt, and carry elsewhere.

Bauer’s historic-download list remains useful partly because it distinguishes the contributed ports from his own work. A download carrying Frodo’s name could be the work of a separate maintainer with a different interface and different support arrangements.

2024: a demo sends the sound back to the bench

Edge of Disgrace exposed a shortcut that had once been sensible. Frodo used one configurable digital filter for the SID’s different modes. Switching it rapidly could produce audible clicks. The demo’s music changed those settings often enough to make the problem impossible to ignore.

At a hacker meetup, Bauer measured real SID chips with better equipment than he had available years earlier. He rebuilt that part of Frodo around the chip’s simultaneously active filters. The first noisy failure was a programming mistake rather than the end of the idea. The corrected implementation made the music work.

He is careful about what Frodo tries to reproduce. In our interview, he describes an aim to make the SID sound good, while acknowledging deliberate omissions and timing limitations. Getting one difficult piece of music right does not make every modern C64 trick automatically compatible.

His 2024 releases also brought practical work. Frodo moved to SDL2 and GTK 3, and version 4.5 added tape-drive emulation and support for more cartridge types. His news archive dates 4.3 to October 11, 4.4 to November 3, and 4.5 to December 14.

That return also touched a commercial game collection. Bauer’s March 2024 news entry says that Llamasoft: The Jeff Minter Story uses Frodo for some of its C64 games. It is a specific use of the emulator, rather than a claim that Frodo powers the entire collection.

Back at the C64 screen

Bauer still speaks warmly about the games. Elite is the one he remembers playing most. Archon, Paradroid, and Spindizzy are among the others he names. Frodo’s documentation can become very detailed, but there are recognizable games waiting on the other side of it.

Elite’s Commodore 64 title screen shows a wireframe spacecraft above the cockpit instruments
The Commodore 64 title screen of Elite, the game Bauer remembers playing most.

For somebody trying it now, the official project page is the starting point. Its ordinary Frodo and lighter alternative make a different tradeoff between compatibility and speed. The name has remained delightfully unhelpful to anybody expecting another emulator ending in “64.” Bauer chose it because he liked Tolkien, then called the built-in monitor Sam.

For him, one particularly satisfying return did not involve winning a game. It was hearing a demo’s bass, percussion, and effects survive the trip through his filter code without the clicks that had sent him back to the bench.

More from Retro Replay

Sources and further reading

Tags

About

I love the Church.

Check Also

Bernd Schmidt interview cover featuring an Amiga computer and Turrican imagery

Bernd Schmidt Interview: UAE and the Amiga Emulator That Worked

UAE creator Bernd Schmidt recalls early Amiga emulation, Turrican, Usenet debates, open source, JIT experiments, and the project’s many descendants.

Leave a Reply

Your email address will not be published. Required fields are marked *