Building a Replica Final Cartridge III

The Commodore 64 was the computer of the 8-bit era, and remains the highest selling computer of all time. In addition to disk and tape drives, it also had a cartridge interface. A popular extension cartridge was the Final Cartridge III, which offered a variety of disk utilities and a GUI. [Greisi] was in possession of a no longer functional cartridge, and decided to reverse engineer the device.

[Greisi] started by desoldering all the ICs and mapping out a schematic for the board. The design centers around common parts for the era, such as a UV-erasable EPROM and some 74-series logic. [Greisi] decided to then modernise the design and make some improvements. Adding a fuse should avoid the cartridge catching on fire, and a bunch of decoupling capacitors on all the ICs should reduce noise. A FLASH chip is used instead of the old school UV-erasable part, which makes writing to the device much easier.

It’s a great build performed in a stunningly tidy workshop, and [Greisi] has provided the schematics and PCB designs to the public here. That means that many more users can build their own Final Cartridge III without having to hunt for original hardware which is growing scarcer. You can learn more about the Final Cartridge III on Wikipedia.

We’ve actually seen the Final Cartridge III before – used in this blinkenwall installation. Video below the break.

[Thanks Adrian!]

Continue reading “Building a Replica Final Cartridge III”

The 35 Year Music Synthesizer that Spawned Chiptune

If you are a certain age, MOS6581 either means nothing to you, or it is a track from Carbon Based Lifeforms. However, if you were a Commodore computer fan 35 years ago, it was a MOS Technologies SID (Sound Interface Device). Think of it as a sound “card” for the computers of the day. Some would say that the chip — the power behind the Commodore 64’s sound system — was the sound card of its day. Compared to its contemporaries it had more in common with high-end electronic keyboards.

The Conversation has a great write up about how the chip was different, how it came to be, the bug in the silicon that allowed it to generate an extra voice, and how it spawned the chiptune genre of music. The post might not be as technical as we’d do here at Hackaday, but it does have oscilloscope videos (see below) and a good discussion of what it took to create music on the device.

Continue reading “The 35 Year Music Synthesizer that Spawned Chiptune”

C64 Keyboard Emulation Over Serial

There’s a lot of reasons you might want to emulate the keyboard on your Commodore 64. The ravages of time and dust may have put the original keyboard out of order, or perhaps you need to type in a long program and don’t fancy pecking away with the less-than-stellar feedback of the standard keys. [podstawek] has come up with the solution: a Commodore 64 keyboard emulator that works over serial.

It’s a simple concept, but one that works well. A Python script accepts incoming keypresses or pre-typed text, then converts them into a 6-bit binary code, which is sent to an Arduino over the serial connection. The Arduino uses the 6-bit code as addresses for an MT8808 crosspoint switch.

MT8808 Functional Diagram from Datasheet

The MT8808 is essentially an 8×8 matrix of controllable switches, which acts as the perfect tool to interface with the C64’s 8×8 keyboard matrix. Hardware wise, this behaves as if someone were actually pressing the keys on the real keyboard. It’s just replacing the original key switches with an electronic version controlled by the Arduino.

[podstawek] already has the setup working on Mac, and it should work on Linux and Windows too. There’s a little more to do yet – modifying the script to allow complex macros and to enable keys to be held – so check out the Github if you want to poke around in the source. Overall it’s a tidy, useful hack to replace the stock keyboard.

The C64 remains a popular platform for hacking — it’s even had a Twitter client since 2009.

Atari Now Runs Java, Thankfully Doesn’t Require Constant Updates

Java Grinder is a tool that compiles Java programs to run on platforms like microcontrollers and consoles, by outputting native assembly code and using APIs to work with custom hardware like bespoke graphics and sound chips. Amongst other hardware, Java Grinder supports the Commodore 64, which uses a variant of the 6502 CPU. [Michael Kohn] realized the Atari 2600 shares this processor, and figured he’d get started on making Java Grinder work with the Atari by expanding on the C64 work done by [Joe Davisson]. Together, they brought Java to the Atari 2600 and made a game along the way.

According to [Michael], parts of the project were easy, as some Java routines compile down into as little as 1 or 2 instructions on the 6502. Other parts were harder, like dealing with the graphics subsystem, and modifying Java Grinder to output 8-bit bytecode to fit into the Atari’s tiny 4K ROM limit. Even with this tweak, they still couldn’t fit in a game and title screen. In the end they relied on bank switching to get the job done. [Joe]’s game is pretty solid fare for the Atari 2600 — blocky graphics and bleepy sounds — and they’ve uploaded it to the page so you can try it yourself in an emulator.

At the end of the day, porting Java code to a system with 128 bytes of RAM probably isn’t going to be particularly useful. However, as a coding exercise and learning experience, there’s a lot of value here in terms of building your skills as a coder. Other such experiments have shown us Java running on other unexpected devices, like the Sega Genesis or the MSP430. Video after the break.

Continue reading “Atari Now Runs Java, Thankfully Doesn’t Require Constant Updates”

Slack, Backwards Compatible With 1982

Slack is great, but there are a few small problems with the current implementations. There isn’t a client for Palm, there isn’t a client for the Newton, and there isn’t a client for the Commodore 64. The last of these severe oversights was recently fixed by [Jeff Harris]. He built a native Slack client in 6502 assembly for the Commodore 64.

When dealing with network applications and the C64, the first question that comes to mind is how to talk to the outside world. There are C64 NICs, and ESP dongles, but for this build [Jeff] turned to the C64 Userport. This card edge combination of a serial and parallel port allows the C64 to talk to anything with RS-232, and with a simple adapter, [Jeff] got his old computer talking to a Raspberry Pi connected to the Internet.

The C64 Slack client itself is written in 6502 assembly, and features everything you would expect. The Pi is required to talk to the Slack API, though, and uses a NodeJS app to translate the bits from the C64 to something the API can understand.

Does it work? Of course it does. Slack is just text, after all, and there doesn’t seem to be any PETSCII weirdness here. You can check out a video of the build in action below.

Continue reading “Slack, Backwards Compatible With 1982”

Commodore Home – Your Smart Home For 1983

The Internet of Things is a horrific waste of time, even though no one knows exactly what it is. What would make it better? Classic Commodore gear, of course. Now you can run your smart home with a Commodore 64 and Commodore Home, the newest smart home framework from [retro.moe].

Commodore Home comes with the standard smart home features you would expect. The home lighting solution is a dot matrix printer, a few gears, and string tied to the light switch. Activate the printer, and the lights turn on and off. Brilliant. Multiple light switches can be controlled by daisy chaining printers.

Security is important in the smart home, and while the intruder alarm isn’t completely functional, future versions of Commodore Home will dial a modem, log into a BBS, and leave a message whenever an authorized person enters your home.

All of this is possible thanks to advances in UniJoystiCle technology, also from [retro.moe]. This device takes a standard ESP8266 WiFi module and turns it into a smartphone-to-joystick port bridge for the Commodore 64.

Unlike every other piece of IoT hardware being sold today, Commodore Home won’t stop working when the company behind it goes belly up; Commodore has been dead for twenty years already. You can grab all the software for Commodore Home over on the Githubs, or you can check out the video below.

Continue reading “Commodore Home – Your Smart Home For 1983”