The many Operating Systems of the Commodore 64
UNIX for C64? CP/M for C64? Seriously?! (Yes. Seriously.)
Did you know that subscribers to The Lunduke Journal get 10 DRM-free (and very nerd) books as a perk?
For most of us, this is what the user interface of a Commodore 64 looks like:
But what if I told you that there was so much more available? What if I told you that you could have full graphical desktops? Or even UNIX systems (with multitasking)?
Crazy, right? Well, it’s all real. And it’s pretty darned amazing.
In 1974, the late (and great) Gary Kildall developed the CP/M operating system. Originally developed for the Intel 8080 CPU, it was ported to other architectures, including the Z80 CPU from Zilog.
And, as it so happens, there was a cartridge released for the Commodore 64… that contained a Z80 processor which CP/M could run on!
Bringing CP/M version 2.2 to a C64 added a lot of functionality to the system: including multiple extra compilers (including COBOL and FORTRAN), and a number of utilities.
There were some distinct problems, however. Key among them:
Despite being technically compatible with existing Z80 compiled CP/M software… the C64 could only handle 40 character wide displays. And most CP/M software expected 80 character displays (or, in some cases, 60).
Likewise, the C64 floppy drive (the 1541) could not read many of the floppy disks that tended to be used for CP/M software.
The combination meant that most users were limited to the software included with CP/M 2.2 itself.
The Graphical Environment Operating System (or GEOS) from Berkeley Softworks, released in 1986 for the C64 (and later for the C128 and even the Apple II), was nothing short of a technological marvel. The things it managed to accomplish, in just 64k of RAM, borders on pure magic.
A full graphical interface with a pointer that could be controlled via either mouse or joystick.
The applications bundled with GEOS were absolutely fantastic — with geoWrite (the word processor) and geoPaint (the drawing software) being the true standouts.
Contiki is a far newer system, having only been started as a project in 2003. Yet it still supports running on a C64… which is just incredible.
What is truly insane? Contiki on the C64 supports multitasking. Not kidding.
And it includes a TCP/IP networking stack, a web server, web browser, FTP client, IRC, telnet, and a bunch of other crazy stuff.
Obviously you’ll need some extra peripherals to make use of all that (or be running in a modern C64 emulator). Still. Extremely cool.
GeckOS & LUnix
There have been a few attempts to bring UNIX to the Commodore 64 over the years.
LUnix, which was last updated in 2004, is a full, preemptive multitasking UNIX-like environment. Even includes a networking stack, webserver… the works.
And GeckOS has a similar feature set, but was still under development as of 2020.
Obviously these are not going to be giving you a full, powerful UNIX environment… some things that you my be used to simply will not fit in the amount of memory available on the C64. But what has been created is nothing short of astonishing.
Now this one… is a little different. This is one that I’ve never been able to test, myself.
I love when people take classic computing hardware… and push it well beyond what was thought to be possible.
You might also consider becoming a Founding Member subscriber to The Lunduke Journal. Some seriously choice perks in there.