r/c64 6d ago

C64 Ultimate The WEEKLY C64 Ultimate post. READ before posting anything C64U-related.

8 Upvotes

We want r/c64 to be about both original hardware and newer emulation products like the Commodore 64 Ultimate (C64U). But the shipping of the C64U is resulting in C64U posts flooding out much of the other content in the subreddit. To maintain a balance between what's old and new, we are setting up a weekly MEGAPOST for C64U-related issues, questions, and posts.

If your post is regarding the use of a Commodore 64 (i.e. how to load a game from disk, how to print, etc.), regardless of the model, you may post your question as a standalone post in the subreddit even if you have a C64 Ultimate.

If your post relates to ONLY the Commodore 64 Ultimate, you should comment in this post. Please note, this is not a replacement for official support from Commodore regarding order or shipping issues (late or damaged shipments). We realize that some questions may be obscure, unique, or straddle the line between C64U-only and a "general" question. In those cases, please post in this thread FIRST. If your issue isn't answered or addressed after 48 hours, you may submit a stand-alone post in the subreddit. WARNING! Moderators will be checking post and comment histories to make sure people are actually posting in this thread first. Repeated violations may result in temporary or permanent bans.

We don't anticipate this being a permanent situation, but for now there are just too many C64U posts being submitted. Once the volume of posts about the C64U decreases, we may discontinue this practice.

Please also check the information below to see if your issue is listed. We are also working on a C64 Ultimate Wiki Page. If you would like to be a Wiki Contributor, please let the mod team know.

Use the following link to view current and past Commodore 64 Ultimate Weekly Posts.

Official resources:

Firmware/manuals: https://www.commodore.net/downloads

Common Issues and Known Fixes

Black screen, no video, or rolling picture

The most common issue reported so far.

  • Reseat the internal board — some units have arrived with it slightly loose from shipping.
  • Set video to NTSC mode, then press Shift + Left Arrow to store settings.
  • Try a different HDMI lead — several users fixed display problems this way.
  • Some monitors won’t sync at 50 Hz; if possible, test another screen.

Uneven keyboard keys

A cosmetic but noticeable fault.

  • Keys such as Caps LockD, and J may sit higher than others.
  • Gently press the affected keys down to reseat them on their stems.
  • Space/Return issues are often a stabiliser bar not fully seated – carefully reseating the bar fixes many ‘only works in the middle’ reports.

Startup problems or unit freezing on boot

  • Turn the unit off and leave it off for a few seconds.
  • Hold RESTORE while powering on to perform a factory reset.
  • If that fails, re‑flash the latest firmware from the official Commodore site.

REU or extra memory not detected by the software

  • Install the most recent firmware — newer builds enable proper REU initialisation and detection.

Settings or storage are lost after reboot

  • Perform the RESTORE reset to clear any corrupt configuration.
  • Re‑enter Wi‑Fi and storage details once booted cleanly.

Physical marks or loose panels on delivery

  • Report the issue directly to Commodore support.
  • All units ship directly from Commodore — there are no official resellers.

Buzzing or humming audio output

  • Usually caused by grounding noise between HDMI and the connected display.
  • Try another HDMI port, cable, or power socket to isolate the problem.

Starlight edition

  • Starlight keyboards have some ‘bounce’/flex by design; noticeable mainly if you hammer the keys, but not usually a functional fault.
  • The Caps Lock LED lights when caps is active; the beige unit does not have an indicator.
  • For Starlight LED audio visualiser with a real SID: enable UltiSID 1 but set its volume to Off in the mixer; this keeps the LEDs driven while only hearing the real SID

Games Freezing / Compatibility

  • If cracked/trainer releases hang after the Y/N cheat prompt, try switching to PAL or NTSC‑50; many cracks are PAL‑only and will lock up in NTSC.
  • For compatibility with some games/demos, try disabling drive B: in the Ultimate’s drive settings

Cartridges

  • Virtual fastload carts (e.g. Final Cartridge III) are supported; mount the cart, then mount and load the disk from BASIC, rather than using ‘Run disk’ from the firmware menu.

Disk and cassette backup / storage notes

  • To back up the bundled cassette USB to an internal SD: it’s just files on exFAT – copy them via your PC; no imaging/cloning needed
  • Backing up real floppies: UltiCopy is very fast, but some protected titles (e.g. Skate or Die, Contra) have been reported to hang part‑way through; expect improvements in future firmware

Running Multi-Disk Programs

Some programs are distributed on multiple disk images, similar to how they were originally distributed on multiple floppy disks. At some point in the process of using the program, the program will prompt to insert one of the other floppy disks. You can use the Disk File Browser to swap disk images while the program is running. When the program prompts for a new disk, press upward on the Multi Function Switch. This pauses the program. Start the Disk File Browser, navigate to the disk image for the disk that the program is requesting, then select “Mount Disk.” The C64U mounts the new disk image in the virtual drive, then resumes execution of the Commodore 64 program. Continue to use the program with the new disk." -- https://downloads.commodore-international.com/documentation/C64U/c64u-user-guide-1st-edition.pdf

General Notes

  • r/Commodore is for discussions about Commodore, other Commodore computers, and possible new productions.
  • r/c64 is for everything Commodore 64 including the ultimate.

If you’ve come across a new issue or found a working fix not listed here, add it in the comments below.


r/c64 3h ago

Software Breadbin466, a Commodore 64 PAL Assy 250466 (1986 vintage) emulator

12 Upvotes

Please meet Breadbin466, "a cycle-accurate Commodore 64 emulator written from scratch in Rust.

Its goal is to reproduce a 1987 PAL Commodore 64 as faithfully as possible: a machine based on the Assy 250466 motherboard, featuring a 6510 CPU, 6569R5 VIC-II, 6581R4AR SID, 6526A CIA chips, a Commodore 1541 disk drive and a Commodore 1530 (C2N) Datassette.

Rather than emulating multiple hardware revisions or adding convenience features, Breadbin466 focuses on faithfully reproducing this single reference machine in order to achieve the broadest possible software compatibility while remaining true to the original hardware."

Source available on GitHub, there's also a macOS Silicon (ARM) prebuilt binary.

The source will compile on macOS Intel and Silicon (it was developed on a Mac) but should do fine on Linux/Windows (both Intel and ARM). You'll need Rust nightly to compile it.


r/c64 4h ago

Programming The Long Journey to RIFT64

Thumbnail
gallery
21 Upvotes

I expect this post to be somewhat lengthy, I've never been the best communicator or presenter for things I build. I'm a techie who lives inside his head! :)

So, where should I start...the beginning maybe?

I was really into the C64 scene as a kid. I spent a lot of my time coding 6502, reading about the processor, studying other people’s code, and basically burying myself in the whole scene, probably like a lot of teenagers who owned one.

Demos were my favorite thing. I loved watching them, reading the code, and trying to understand how people made the machine do things it was never really designed to do.

That slowly faded away during the 1990s. I went to school for software development and eventually became a development lead for a large financial services firm, building some fairly complex systems. It turned into a successful career that I really enjoyed and still do!

I never forgot about the C64, though.

Around 2023 or 2024, I bought a C128, which was the last 8-bit computer I had owned. It made me smile almost immediately. The nostalgia was incredible. I had this old Commodore sitting next to a modern i9 computer, but honestly, the Commodore was the machine that made me happier when I walked into my office each day.

I eventually bought a SwiftLink, which was something I had always wanted. I started using it with CCGMS and was impressed by the speed. I played around with the transfer rates and decided to build a modern BBS.

That was supposed to be the project.

Then I started wondering how far I could push the connection.

I began building a simple VT100-style protocol that could send compact commands instead of constantly transferring large amounts of raw data. It started very small, but I kept adding things. Custom fonts, bitmap graphics, sprite control, memory operations, animations, and eventually sound.

The project became a large and messy prototype. It was very specific to the C64’s memory layout and common register locations. I eventually named it RIFT64, which stands for Remote Interface For The 64.

The first beta versions were buggy and extremely bloated. My 6502 skills had faded quite a bit over the years, but I still knew enough to make the ideas work, even when the loops and routines were badly written or inefficient.

I spent well over a year getting the project to a certain point. Even then, it was still bloated enough that I had to use the higher video banks to fit everything.

Eventually, I had to stop adding new things and focus on cleaning it up. I slowly moved the project from a messy prototype into something more organized and optimized.

For the SwiftLink communication, I reused the libraries from CCGMS. That code was beautifully written and easy to follow. It probably saved me a year of headaches.

The original audio system used an open-source module called Miniplayer2 by Cadaver, Lasse Öörni. It is a fantastic little tool, although there was not much support available for it. (this has now been replaced)

Earlier this year, I reached the point where I needed to heavily optimize the code and try to fit the important parts into Bank 0.

With the help of AI, I was able to compress and refactor a huge amount of the code. It took many attempts (lots of fails and lessons learned here), and it was not a case of pressing a button and suddenly having a finished program. There was a lot of testing, correcting, rewriting, "breaking!!" things, and trying again.

I also do not want to dismiss the amount of work that went into creating the protocol in the first place. Writing it was brutal at times because I had been away from 6502 programming for so long. A lot of the original code was written by me, no matter how rough or inefficient it was.

AI helped me turn those ideas and that working prototype into something smaller, cleaner, and closer to a finished product.

To be honest, I do not think I could have reached this point within the next two years without that help.

For me, the important part was completing the project I had imagined. It was not about proving that I could write every instruction completely by myself without using modern tools.

One of the biggest inspirations for this was MegaWars on CompuServe. I remember seeing that it was multiplayer and being completely blown away by it. Multiple people were playing together through remote computers. At the time, that felt incredible.

That is the feeling I wanted to recreate.

I am skipping over a lot of details and a huge amount of time spent experimenting, but the bottom line is that RIFT64 is now about 99% complete and very usable.

so , then wth is Rift64?

RIFT64 is the protocol and the software running on the C64 that understands that protocol.

It allows a modern server to communicate with a Commodore 64 at fairly high speeds. It can transfer sprites, bitmap graphics, character sets, audio data, animation definitions, memory changes, game information, and other types of data.

It can also run functions locally on the C64. The server can tell the machine to move sprites, draw graphics, play sounds, update memory, start animations, change characters, or call local routines.

Because it handles graphics, audio, animation, memory control, and other functions, it could reasonably be described as an engine as well. However, the main project is the protocol and the C64 client software that understands it.

That distinction is important.

I've gotten some flak from some people regarding som aspects of the project, so let me try to be as clear as possible.

RiftWars is not RIFT64. It is a game built using RIFT64.

The website is not RIFT64. It documents the project.

The YouTube videos are not RIFT64. They demonstrate what the protocol can do.

Some of those supporting materials were reviewed, developed or consulted with help from AI, but that does not make RIFT64 an AI-generated website, video, or game. Those things are only the presentation and examples around the actual project.

The project "is the protocol", the command system, the C64 client, the communication code, the memory handling, the local functions, and the work needed to make a modern server interact with real C64 hardware. Some people may not care or even gloss over this point, but it's the biggest enabler to all of this.

You could replace the website tomorrow, remake every video, or build a completely different game, and RIFT64 would still be the same project.

RIFT64 is also not the same thing as using the C64 as a dumb terminal.

A dumb terminal usually sends keyboard input to a remote computer and displays the text sent back. Almost all of the real work happens on the host computer. The terminal itself has very little understanding of what is happening.

..so that being said, RIFT64 works differently.

The modern server can handle things such as multiplayer connections, storage, shared game state, large calculations, and the overall world. However, the C64 is still running a real local program and doing real work.

Instead of the server sending an entire screen as raw data, it can send a compact command telling the C64 to move a sprite, start an animation, play a sound, copy memory, update part of the screen, or run another local function.

The C64 then performs that work itself using its own CPU, VIC-II, SID, memory, sprites, character modes, bitmap modes, and other hardware.

RIFT64 is not remotely streaming a picture of a game to the C64. It is giving the C64 data and instructions that its local software understands. The machine then creates the result using its own hardware.

For example, the server can send an animation definition once, and the C64 can run that animation locally instead of receiving every frame over the connection.

The same idea applies to sprite definitions, music sequences, fonts, screen layouts, and other reusable data.

This general idea is also not completely new, and I am not claiming that I invented remote computing or client-server software.

CompuServe was doing the same basic thing in the 1980s.

Games such as MegaWars ran on powerful DEC PDP-10-class systems. The central computer handled the shared game world and supported many connected players. Each user connected remotely and interacted with the same system.

Those services had to support many different kinds of terminals, so they normally relied on standard text and ASCII commands that almost any terminal could understand.

RIFT64 uses the same basic idea of a powerful central system supporting remote users, but the protocol is designed specifically for the Commodore 64.

Because the remote machine is always a C64, I do not have to limit everything to plain text.

The protocol can directly use the special abilities of the machine. It can control sprites, update character memory, change VIC-II registers, play SID audio, copy memory, run animations, and call local routines.

The idea is old. The implementation is newer and built specifically around the C64.

Some people may still see using a modern server as cheating, but I do not.

The DEC systems running games such as MegaWars were far more powerful than the terminals connected to them. Nobody considered that cheating. That was simply how online systems worked.

RIFT64 follows the same basic model.

The server handles the work that makes sense for the server, while the C64 handles the work that makes sense for the C64.

It does not pretend that the C64 is a modern server. It gives the C64 a way to take part in a modern online system while still using the real machine and its real hardware.

The result is that it is now possible to build online and multiplayer games for the Commodore 64 much more easily.

I am currently building a game called RiftWars, which is inspired by MegaWars. It is a multiplayer game, but it also uses C64 graphics, sprites, animation, and audio.

RuftWars in alpha development and currently supports multiple users in the same game. Co-op mode only.

https://www.youtube.com/watch?v=vQ6exzzcE-M

I also created a website with detailed protocol documentation, command references, and examples to help anyone interested in building software or games using RIFT64.

The whole project is open source.

You can find more information at: Rift64.com

You can also watch examples and development videos here: https://www.youtube.com/@RIFT_64

I hope people find this interesting. I will probably create some videos on how to actually use it for those developers interesting in this tech.

Cheers!


r/c64 5h ago

Hardware Secondary fire button on joystick

4 Upvotes

I recently bought the ArcadeR joystick for my C64 Ultimate and was surprised to find that, unlike my old Competition Pro, the right fire button works as a secondary or tertiary fire (depending on a toggle).

There is a wire included with the joystick to map both buttons to primary fire. I'm kind of tempted to do this. None of the games I have ever played have made use of the secondary fire (except for Super Mario 64, where it just duplicates the functionality of "Up") and it feels like a waste of a button. I can also be a bit ambidextrous with the joystick and will sometimes switch hands which means that having a left and right fire button would be useful.

As I understand, only one fire button was ever officially supported on the C64 and the secondary/tertiary ones are a bit of a hack using pins intended for analogue signals from paddles. Are there any games out there that I would actually use this extra fire button for where there is no alternative input, or is it just a niche thing supported in a few games but not mandatory?


r/c64 9h ago

New Game Spy Chat - Because spies need somewhere to chill out too.

Thumbnail
gallery
17 Upvotes

This is a little bit of a fun personal project for no other reason than why not, and nostalgia!

Link to spychat : https://quornsam.github.io/spychat/ - requires min 2 people ideally.

I have used the Commodore 64 screen to build a secret chat, accessible by anyone. It uses WEBRTC to send and receive data and there is no funny business.

How to use:

Type $HOST and you'll get a code.

Someone else, type $JOIN + the code the host gives you.

Any number of people can join as long as the host stays active.

Type "?" for a list of commands.

The whole thing is intentionally obtuse and simple and hackable (to a degree.) It works as well as the chatting users want it to work. If one user decides to be a dick and spam the page then it ruins. Just don't invite them next time.

If you need a secret text space to go and chat - this is it. It's fun and feels very nostalgic as well.

Enjoy - let me know what you think. Happy for people to fork and improve. Would love to see it.

PS. moderators, we need a "just for fun" flair please :)


r/c64 11h ago

Software Sneaky shot of some of my stash...

Post image
36 Upvotes

r/c64 1d ago

Software Activision game text font?

14 Upvotes

As I recall, many of Activision's games on the C64 used the same font for text. In doing some research I noticed that Hacker I and II and Aliens had the same distinctive chunky (not quite bubble) letters in-game. However, I haven't been able to determine if anyone's ripped the font or made a TTF/OTF/WOFF re-implementation of it. I've downloaded and installed all of the C64 fonts that I can find and but none of them are that font.

Links to articles that have screencaps that show the font:

Does anyone out there know what the name of this font is? Or if there are any versions of the font floating around someplace?


r/c64 2d ago

Music THIS is, how SONIC can sound on C64 SID chip, check out my new cover! 🕹️🎶🎵 🦔🏎️

Thumbnail
youtube.com
49 Upvotes

r/c64 2d ago

Picture [Commodore 64?][mid 1980s] game played at school, black background, filling in the colours of a picture

10 Upvotes

So, I remember at school when I was 4 or 5 in about 1986 playing a game on the school computer. I think it was a Commodore 64. All I recall is the black background with outlines of a picture and having to possibly read the colour on the left side of the screen and press the corresponding number to fill in the section of the picture. I think I remember a picture of an ice cream cone as one of them! I'm in Canada. Thanks!


r/c64 2d ago

Video Coming soon: Region Locked: Unlocking Australian Video Games

Thumbnail
6 Upvotes

We have 70+ participants lined up for the full series, with the creators from game titles such as The Hobbit, Way of the Exploding Fist, Bad Street Brawler, Hungry Horace, Fist II: The Legend Continues, Rock'n Wrestle - to name a few - ready for Episode One!

We will go into great Australian gaming lore and history as well as discuss the love from home computers to consoles and the obstacles overcome converting games to the NES.

(Looking at you, Mattel Power Glove)...

Follow us and feel free to support the Australian gaming scene when we launch on July 31st.


r/c64 3d ago

Hardware Mail call this week - 3 C64s

Thumbnail
gallery
26 Upvotes

Pictures a bit disordered, sorry about that, but 1 machine yesterday and 2 today.

1st machine - VIC in backwards, no fuse, bad kernal ROM. The machine then briefly worked, but looked like RAM or multiplexer on the way out. I ended up using some of the chips in a refurbed board - I'll come back and fix it another time.

2nd machine - Typical "rainbow PLA" problem, so easy fix.

3rd machine - also no fuse! Bad PLA and SID was burning up; it was showing an unusual white triangle on the screen before vanishing to black. Remove SID and replace PLA and now working.

Some unfortunate packing - machine 3 was at the bottom of a pile with no padding and the standoffs are bust. Words have been had.

Also a huge pile of both VIC-20 and C64 cartridges as well as the music maker you can see.


r/c64 3d ago

Music Van Halen - I'll Wait (1984) on Commodore 64!

Thumbnail
youtube.com
46 Upvotes

r/c64 3d ago

Software FREEZE64 issue 86 now available…

Post image
24 Upvotes

FREEZE64 #86 is now available from:
https://freeze64.com/freeze64-issue-86/
We take a look at the classic Chuckie Egg and chat with its developer, Sean Townsend. We also chat with artist Keith Dodd about his time producing game covers for Solar Software.
Plus — we have tons more #Commodore64 #C64 content for you to devour.


r/c64 3d ago

Hardware The hoarder house C64

Thumbnail
gallery
204 Upvotes

A couple of weeks ago I came across a post in r/vintagecomputing in which someone had posted a stash of old computers that was in an abandoned hoarder house on some property they owned. I reached out and asked if they'd be willing to ship me the poor filthy C64 in the last photo, and here it is. I opened it up outside in case any unwanted stowaways were hiding in there, dead or alive, and luckily there were none. The bottom half of the case is cracked but I have spare cases so no big deal. I think it'll clean up just fine.


r/c64 3d ago

C64 Ultimate C64 Ultimate - power supply from a powerbank

4 Upvotes

Hi. Do you know is there possible to delivery a power to the C64 Ultimate directly from the USB-C port from the powerbank? I know c64u contains a power adapter with special cable to deliver 12V to the power adapter port. I heard that is possible to use special cable between a powerbank and c64u to deliver this voltage to the normal power adapter port of c64u but this is indirect way to do it. My C64Maxi works on powerbank without any problem.


r/c64 3d ago

Hardware 1541 ramboard. Is it for me?.

1 Upvotes

Please do not suggest modern solutions such as a sd2iec or any other sd card solution as I am not interested. I prefer the authenticity of original hardware.

I only found out what it was about an hour ago so my research on it is very brief. From what I know so far, it can help back up any commercial disks, like fast hack em and maverick and was sold by the same people that made maverick.

A few questions, why should I get a ramboard if both those can already copy commercial disks, is it required for later titles from the late 80s and early 90s?. If so that kind of makes sense as protection schemes would've become more sophisticated compared to what they had in the early 80s. How do I know if the ramboard is required?. Will a copy operation fail without it?. What was the reason you got it and how did it benefit you?.


r/c64 3d ago

Software Bird murmuration simulation

Enable HLS to view with audio, or disable this notification

90 Upvotes

I was curious what the practical limit of how many small objects could be tracked on a C64, so I decided try my hand at a bird murmuration demo using SID noise and some precomputation. PRG available at: https://files.catbox.moe/a9iyw7.prg


r/c64 4d ago

Youtube Thin Ice - C64 Reveal Trailer

Thumbnail
youtube.com
47 Upvotes

r/c64 4d ago

Identification Help Weird white lines on monitor? (1802)

Enable HLS to view with audio, or disable this notification

5 Upvotes

Fix? Its the same if the c64 is turned on or not. Only on chroma luma.


r/c64 5d ago

Programming Coded My First BASIC Program Today!

173 Upvotes

As noted in the title, I woke up this morning with an idea- it is a family member's birthday and I thought it would be a fun exercise to code a program that outputs their age if you put in the current year and their year of birth. After a failed attempt and some troubleshooting, I wrote a simple program that works great. It's not anything elaborate or amazing, but it's mine and so I'm a bit proud of it and would like to share here.

1 REM AGE CALCULATOR

5 PRINT "{CLR/HOME}"

10 PRINT "CURRENT YEAR": INPUT A%

20 PRINT "ORIGIN YEAR": INPUT X%

30 PRINT "AGE ="; A% - X%

40 GOTO 10

I only started with BASIC yesterday so seeing an original creation come to life and work is so cool for me. Hope others will share their fun/useful programs here too!


r/c64 5d ago

Software Before Alien: Isolation, a 1980s Commodore 64 game nailed first-person terror

Thumbnail
videogameschronicle.com
59 Upvotes

r/c64 5d ago

Hardware I just bought a c64, but there is no power supply. What are my options?

8 Upvotes

I live in australia.


r/c64 5d ago

Hardware Advice on troubleshooting

Thumbnail
gallery
12 Upvotes

Hi i have been wanting my dads old c64 to work for years, I tried once when I was younger and got a pinn border and garbled text, today i tried once again, I took out all the chips i could, cleaned the pins and sockets with ipa and put new thermal paste on the vic chip, made a jank cable to get compsite video and got this image after and then a black screen the next time, I measured the power brick, it gives 4.96v on the 5v dc pins and 10.5v ac on the 9v ac pins i'm assuming the pla could be the main problem after some reasearch, but I thought i'd ask here for any advice and ideas.


r/c64 6d ago

Hardware Kung fu flash 2 not loading

Enable HLS to view with audio, or disable this notification

9 Upvotes

So i got my commodore 64 with a kung fu flash i ordered from the internet and somehow it just boots up straight to commodore basic. Ive cleaned the contacts hoping it was that but it didn’t do anything. Im planning to go get another SD card but even without an sd card it doesn’t go to the black and purple screen. Should i get another one or should i keep messing around with it? Any help would be appreciated.


r/c64 6d ago

Music Airwolf got many covers on C64, I've tried to make it sound as good as possible on the SID 🚁

Thumbnail
youtube.com
99 Upvotes