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.
nice job, funny
Thank goodness he made a Slack client, not a Skype client
Maybe he should have done the Pi side to talk VT100 so any VT terminal emulator on C64/Palm/etc could talk to the Pi-Slacker.
That’s the real question here. Is the C64 actually taking an active part here, or is it just a glorified dumb terminal?
It’s taking an active part: the Pi is basically translating the Slack web API into a simpler RPC API that the C64 is talking. All the logic for how the API gets used is on the C64, though.
The C64 is an active part here. The Raspberry Pi is translating the Slack web API to a simpler API that the C64 implements, but otherwise isn’t really acting as the client.
> Slack is great […]
At a former project I was forced to use slack. What I learnt: if I can avoid it, I will.
Good! Slack is evil, taking good open-source projects away from free communication protocols. The more people hate it, the better.
I ‘never heard of slack before and I doubt I will ever be using it. But seeing it work on the C64 makes me feel good. I have made some devices for the CBM myself the past few years and it is always fun to see that others do to. So Thanks for sharing and keep up the good work.
I was just wondering, is the device with an SD-card an SD2IEC? I assume you only use it to load you stack-client program into the C64 and the the client itself does not require it.
Glub. I was so excited until I read the article. I thought they got Slackware linux running on the C64 from the topic. Oh well. Back to the drawing board.
As much as I like 8-bit hacks, this is just using C64 as a serial terminal. Running a real client and abstract away TCP/IP using Contiki would be neat.
It is a little more clever than “just” a dumb terminal… the protocol seems to be actually designed for passable performance over this slow of a serial link.
Would using SLIP or PPP count as enough more real?
Way to go, the only one of those three I haven’t got, LOL.