A Commodore 64 Mastodon Client. A C64 compatible wifi modem and terminal software are required. Consists of a local proxy server written in Python running on a machine somewhere on your home network, requires an app (API key) on your instance of choice. Connect to your local network using your wifi modem and use your favorite terminal software to dial into the port it's listening on (default: 6502/tcp).
This site attempts to re-create some of the best Commodore 64 software sets. And by "set" we mean the box, manual, disks and any other materials contained inside the packaging.
If you are looking for documentation for some of your favorite Commodore 64 games, then we may just have what you are looking for. Or if you are looking for a trip down memory lane, and you just want to view the materials from your favorite Commodore 64 games - well, hopefully we can help you out there too.
Feel free to jump right in by clicking on the "boxed sets" link, and then browsing your favorite sets. Remember, this site is a work in progress, so if you don't see what you're looking for then check back later after we have added some more sets.
A troubleshooting cheatsheet for the Commodore 1541 floppy drive.
The SIDKick pico ("SKpico") is a drop-in replacement for the SID 6581/8580 sound chips in the Commodore 64 and 128 computers. It has been designed as an inexpensive alternative to other replacements while not making compromises regarding quality. It consists of a simple interface board and a Raspberry Pi Pico (or compatible clone). The emulation is based on an extended version of reSID 0.16, and includes a few additional features.
Emulates the 6581 or the 8580 in single or dual SID mode. Has a built-in configuration menu that is accessed with a BASIC command (SYS 54301
for the c64, SYS 54333
for the c128). Supports stereo output if you hook a DAC up.
Uses surface mount components so this is not a project for the inexperienced or the faint of heart.
How the 6502's carry flag works under various conditions.
Just some cheat sheets I work on for some programs I tend to use on actual HW when the PDFs or archive.org isn't available.
This is specific to Commodores that have two 4464 RAM chips (32k each, in later 64s and the 64C).
UltiMem64 replaces the two 4464 DRAM ICs on newer Commodore 64 motherboards (and can be installed in older 8-IC 4164 DRAM based motherboards using the DRAMCarrier PCB) and provides access to 2 megabytes of direct memory access (not REU access). The memory is instantly available when requested, no DMA needed. The Color RAM IC installs in the 2114 space on motherboards containing a 2114 Color RAM and provides access to 64 kilobytes of Color memory nybbles.
To make this happen, it has its own MMU.
This is a skeleton C64 program that will allow you to add your own custom functions and commands to the C64's BASIC. We all know how much the C64's BASIC sucks, so with this you can add the commands that you've always wanted!
A lot of the code in here comes from the book The Advanced Machine Language Book for the Commodore 64 by Abacus Software. There's a section in the later part of the book that shows you how to add your own custom commands.
I simply took this and ran with it. I also commented it as best as I could. I know that it can be very hard to follow other people's 6510 assembly, but I'm really hoping it's clear what each line of code does.
Ever dream of compiling your own Commodore 64 BASIC language programs into fast, efficient machine language programs? This is now a reality once again. Previously a tool used especially by only the last century's elite Basic programmers, wielded with almost godly power to turn many raw basic .prg (programs) into fast lean performing programs (.prg) [ .prg file on disk >> faster ,prg on disk], Kraksnax has released once again this classic diskette tool in late Summer 2023.
Available as a .d64 disk image as well as a native .prg executable.
This project implements an open source REU for the Commodore 64.
This is an updated version based on the final hardware design. The hardware consists of two PCBs. A Cyclone II development board uses an Intel EP2C5T144C8N FPGA and provides the FPGA and its configurator. A custom carrier board provides a mechanical and electrical interface for the FPGA board, a card edge connector compatible with the C64, logic level shifters required to convert between the C64 5V signals and the FPGA 3.3V signal levels, interfacing and power for the peripheral items on the PCB, a battery backed RTC, a 256 byte EEPROM, and a full-sized SD card socket.
The RAD Expansion Unit is a cartridge/expansion for the C64 and C128 using a Raspberry Pi 3A+, 3B+ or Zero 2 to implement the actual functionality. Currently it emulates a RAM Expansion Unit up to 16mb (compatible to CBM 1700/1750/1764 REU, CLD Super 1750 Clone, CMD 1750/1750XL) and a GeoRAM/NeoRAM memory expansion up to 4mb. It also features a menu to browse, manage and launch REU- and GeoRAM-images, NUVIEs, and PRGs. The RAD is designed to not only emulate existing extensions, other things that have already been tested (but not yet included here) are, for example, MOS 6510/8500 emulation (incl. turbo mode) or using the RAD as a (co-)processor (in fact the menu runs on the ARM CPU only).
RAD's functionality is entirely defined by software. The connecting circuitry is quite simple and does not include any programmable ICs and is thus easy to build.
Among other devices, Keelog sells a line of replacement power supplies for retro computers, from the Commodores to Amigas to Ataris. They are all brand new designs engineered with longevity and safety in mind.
TensorFlow Lite for Microcontrollers is an open-source machine learning framework in which a TensorFlow model is built and trained on a host computer. That model is then reduced in size and computational complexity by an exporter that converts it to the TensorFlow Lite format. For the tiniest of compute platforms — microcontrollers — that model is then converted to a C array containing the model structure and any trained parameters, like weights and biases. On the microcontroller, an interpreter parses the C array to extract operations and data to run inferences against new input data.
Given that TF Lite for Microcontrollers runs on some heavily resource-constrained devices, I got to wondering whether or not I could run inferences against these models on a Commodore 64.
The Transactor was started life in 1978 as a Commodore Business Machines publication used to explain low level details of the Commodore PET. In 1982 it was reborn as a bimonthly independent magazine published out of Milton Ontario (Toronto) covering all 8bit Commodore’s. This revised magazine used the slogan new slogan was “The Tech News Journal for Commodore Computers” and was paid for through advertising and subscription prices. A quick scan of the covers below and you will be able to see when this change occurred. The Commodore Transactors were mass produced using a very inexpensive mimeograph technology while the independent magazine was created using a proper printing press.
Both publications were known for their depth. They covered hardware hacking in detail and were read by serious users. One issue even boasted that it was 95% advertising free right on the cover.
What can you do with Vision BASIC? Pretty much anything you want to. Speed will no longer be a problem! Why? Because on it's own, Vision BASIC is VERY fast! But when you need to crank out even more speed, all you need to do is insert machine language anywhere you wish to. Yes, you can actually type machine language instructions right next to BASIC commands! You won't need to load in external machine language files, and you won't need to poke machine language code to memory. This is because Vision BASIC also doubles as an assembler – you can write BASIC programs with it or machine language programs with it, or a blend of the two!
Vision BASIC also includes a whole new batch of commands to help you realize your programming dreams! Need sprites? Vision BASIC's got you covered! Need sound and graphics? Yep, gotcha covered there too! Vision BASIC was designed to greatly minimize your need to POKE around with all those crazy registers. In fact, you might never need to POKE again! And if you find yourself needing a command or function that isn't available, you can simply create it yourself – by creating the needed subroutine and calling it by whatever name you choose to give it. These "user defined" commands and functions can be saved into separate files and added to your programs whenever you need them!
PCBway community page for an adapter for a Commodore 1541-series disk drive. Makes it possible to add a parallel interface port to the drive for the purposes of disk ripping. Rather than cutting traces and soldering directly to a 6522 chip, it fits in between the chip and its socket. Add some ribbon cable and a DB-15 plug and there you go.
The picture is a helpful reference for how the IC socket and header bars are positioned.
Note that, per the response to my question:
Pins 9 and 10 are connected to pins 18 and 39 of 6522 - CB0 and CA1 (some count it from 1 so it's CB1 and CA2 then). They are needed only when drive is connected with C64 via userport to handshake while sending data. You don't need those for XUM1541/ZoomFloppy.
A collection of cartridges, adapters and replacements for the Commodore C64.
I offer the most common X cables that Joe Forster/STA lists on his site, not the X adapters as I have no ability to make the PC boards required. Special cables not listed below will be considered on a case by case basis and if I have the parts to build them.
The prices for the cables are in Canadian dollars and do not include shipping. The cable costs vary as each one contains different components and take different amounts of time to build. Shipping is typically $7 for one cable in a bubble-wrap envelope and multiple cables would mean a different shipping container and higher costs. Since I have no shopping basket, e-finance capability or ordering page, please email me with your orders. All of my cables are verified working under DOS, and are tested using various drives with the latest ROM versions and/or JiffyDOS.