Hackaday Prize Entry: The FPGA Commodore

The history of Commodore 8-bit computers ends with a fantastically powerful, revolutionary, and extraordinarily collectible device. The Commodore 65 was the chicken lip’ last-ditch effort to squeeze every last bit out of the legacy of the Commodore 64. Basically, it was a rework of a 10-year-old design, adding advanced features from the Amiga, but still retaining backwards compatibility. Only 200 prototypes were produced, and when these things hit the auction block, they can fetch as much as an original Apple I.

For their Hackaday Prize entry, resident hackaday.io FPGA wizard [Antti Lukats] and a team of retrocomputing enthusiasts are remaking the Commodore 65. Finally, the ultimate Commodore 8-bit will be available to all. Not only is this going to be a perfect replica of what is arguably the most desirable 8-bit computer of all time, it’s going to have new features like HDMI, Ethernet, and connections for a lot of FPGA I/O pins.

The PCB for this project is designed to fit inside the original case and includes an Artix A200T FPGA right in the middle of the board. HDMI and VGA connectors fill the edges of the board, there’s a connector for a floppy disk, and the serial port, cartridge slot, and DE9 joystick connectors are still present.

You can check out an interview from the Mega65 team below. It’s in German, but Google auto-generated and auto-translated captions actually work really, really well.

30 thoughts on “Hackaday Prize Entry: The FPGA Commodore

  1. The seem to have gone well OTT with the spec of the FPGA they are using. That’s a £200 part, and with 215K LE, way more than is needed for an 8 bit system. A 45K LE Spartan 6 should be more than enough for this job, and costs only £42.

      1. The Spectrum Next was originally developed on an Altera board with only 4K LE. The production board was slated to use a Spartan 6 LX9, with around 9K LE. One of the stretch goals was to upgrade that to an LX16 (and that’s enough to hold a Z80, Spectrum ULA, HDMI and VGA out with frame doubling, twin AY38910 sound chips, a SID chip and still have a bunch of space). The only reason I can see for using an A200 is that you can fit the entire 128K of system RAM into onboard BRAM, saving a couple of £ by not having an external SRAM chip. Madness.

        1. There are several advantages for using an Artix FPGA, beyond fitting the system RAM into BRAM. One is that we can drive a full 1080p video pipeline without a frame-buffer. Another is that we can include fully 1541/71 floppy-drive implementations in the FPGA as well. Also, it allows us to have a much higher maximum clock-speed. Does this change that we are insane to use a large FPGA to make a 50MHz 1080p 8-bit computer? Probably not. However, that is the machine that we have decided to make. We know we won’t please everyone, but this is a volunteer project after all, and we know that what we are creating will nonetheless appeal to many people. Also, it is open-source, so if someone wants to make a smaller lower-cost version based around a Spartan FPGA, then we welcome that. Finally, our logic was to use an FPGA that while relatively expensive today, will of course become cheaper over time. If we started with a device that was already cheap, the system would be much more limited.


          1. Even if you want to stick with the Artix 7, an A50T and 1MB of SRAM (the maximum the C65 was designed to support) is still circa £140 cheaper than an A200T, and still gives you more than enough resources for an 8 bit system. If you ever expect to sell any of these you need to consider the end-user cost, and price movement on FPGAs isn’t something that traditionally happens with any speed or in great quantity.

  2. Years ago i sent an email to the nice people that host a site dedicated to preserving all
    the unreleased C64 software they can get there hands on: http://www.gamesthatwerent.com/gtw64/

    I emailed them about any unreleased C65 software and demos out there. They where willing to look into it, unfortunately never heard from them again, maybe this will accelerate things a bit :)

    On a side note however:

    “The PCB for this project is designed to fit inside the original case” / “Only 200 prototypes were produced”
    An original case and matching keyboard are thus extremely rare, Wouldn’t it be smart to also design a pcb version that
    fits a C64 case + keyboard, you know, for the rest of us poor people? :)

  3. We used to make 3-5 prototypes, its amazing that they would think to make anywhere from 100-200.
    In the end it was cheaper to make prototypes then actually go to production.
    Bil Herd (Ex-Commodore design engineer).

  4. So, in 1990 something, my grandfather gave me a brand new in the box commodore 16. It was black with brown keys. manuals, a typing tutor cartridge, everything.

    I promptly took it home and disassembled it for parts. (I was young, and a black c64 case sounded cool to me.)

    I’ve never seen a picture of one online. They seem to not be mentioned anywhere. Does anyone here have history on it?

    1. I had a commodore VIC-20 and that seems to be much the same thing. It was breadbox style and came out before the C=64 as far as I can remember. It was a less capable computer and also lower cost (from memory). I can’t find very much info about it at all, probably because it had a different name/model to Australia.

      Perhaps [Bil Herd] could enlighten us should he choose to grace us with his time?

    2. This was actually one of mine unfortunately, and disassembling it for parts would be a good use.

      We had come out with a system to take on SInclair’s color computer and we did a minimal chip system with 121 colors for Text Editing known as TED.

      Marketing/Commodore Tokyo decided to cheapen the 116 by sticking it in a C64 case and the C16 was born.

      In the last years have received lots of comments about how the C16’s were dumped to schools in eastern Europe and similar places and how they were the first computer for lots of people so they did find a good home for some of them.

      1. Awesome! Thanks [Bil Herd]. It was great to find the video and have some history about it. I imagined I had lost a low number prototype precursor to the c64. Funny that it came later. BTW, the top case fits the c64 keyboard almost perfectly, but I had to cut open the ports on back and the side to fit them. The black c64 looked soooo cool I thought. I do remember stealing the 555 and the power resistor but I didn’t work out what was going on there.

  5. Very interesting to see how this mythical machine is brought to life…
    To the huys and galls working on it I whish them the best of luck and (more importantly) lot’s of fun while working on it.

    I checked my attic, and it’s just like the lottery all over again, the closest number on the machines I have (and cherish) differ only 1, 45, 49, 63 from the winning 65, so no jackpot for me. Funny that the last few year the prices of these old machines are reaching values (or actually the prices “being asked”) are not funny any more. Somehow there is a hype on retro computing that I don’t really understand. Don’t get me wrong, I love my Commodore(s), always did, does this make me retro-loving or did I not manage (or refuse) to keep up progress.

    From a technical point of view (I’m not a gamer I’m an engineer) I love these machines for their simplicity, as in that they are understandable, easy to learn, lot’s of info available and with modern electronics they can be expanded to a point unimaginable 30 years ago for the costs of just a few tens’of $. From an gaming point of view…well don’t ask me, perhaps a game of outrun (because of the music) or a game of bomberman (just an additive game), I hardly play game myself. I made a PETSCII video encoder just for fun to test some cassettport based hardware I was working on:
    It may remind people of the PETpix project mentioned a few years ago on hackaday, but this works quite differently, I used a heavily compressed file in order to transport the data through the limited cassetteport (though not using tape, just the port, the images come from flash memory). Making these machines do things nobody expects them to do is fun. However the demo-scene was never my thing, it is just too advanced for me, the tricks these demo-scene guys and galls could pull off, wow amazing. Therefore I concentrate mainly with relatively simple electronics (and lot’s of software underneath), for loading files into the systems but that’s almost a topic in itself and should not be further discussed here now.

    Perhaps Hackaday could do an article about retro computing: Retro computing, what do you like about it and why?
    Are you a: collector, gamer, programmer/hardware designer/maker/hacker?

    1. Hi,

      Talking about how computers used to be understandable, and that they no longer are, this is actually one of the reasons for the MEGA65 project to “finish” and release the C65. You can see me giving a serious academic presentation with an early prototype in this video (complete with POKEing the video image into the right position on the projector):


  6. It is open source and you can run it on an FPGA development board if you want to get started before the production of the actual Mega65 machines. There are people taking that route and using a gizmo called the Keyrah that lets them convert the C64 keyboard and a joystick to a USB interface. It also has some interesting features like an onboard monitor that can share (overlay) the screen and use a separate USB keyboard. Injection molding of the housing does seem like one of the more challenging things–but the team working on it seems determined to stay true to the original look and feel.

  7. This is all well and good, but what are they going to run on this machine? No commercial software was ever released, and what demonstration software does exist was never finished as far as I’m aware. It seems like a fun exercise, so I can’t blame them for wanting to take a crack at it.

    1. Since 2004 year there are some FPGA (and similars) VIC-II replacements, most include the entire C64 chipset (6502, VIC-II, SID, RAM, ROM, etc) into a single and small FPGA board, so is a lot more easier put only a VIC-II into a single and small board that can fit into the VIC_II sockett, bellow some links about this:
      https://en.wikipedia.org/wiki/C64_Direct-to-TV (first of all C-64 VHDL implementations – 2004)
      http://www.mcchome.arcaderetrogaming.com/ (commercial FPGA box that implemeants C64, Amiga 500, Atari 800..)

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.