Greetings, and welcome to another exciting
episode of Veronica Explains! I'm Veronica, and today I'm going to do a
brief demonstration of two ways to get a Commodore 64 online! Now, this is a different sort of video than
the Linux content I've been putting out, but my retro collection is also really important
to me, and I hope it's enjoyable for you too. One thing I love about retro computing is
that it helps explain some of the design concepts that we still live with today. Knowing how a classic network terminal and
modem worked in the 70s and 80s can help make sense of the sometimes convaluted things we
do in our terminal emulators here in the roaring 2k20s. Plus, it's just fun sometimes to revisit this
old stuff. I grew up in the 90s, and while BASIC and
cassette drives weren't required to handle everyday geek life, I was always fascinated
by it as I took my first timid steps into designing computer software. So, a quick intro for folks who might not
know what a Commodore 64 even is. The Commodore 64 is an early home computer,
first released in 1982. It is, according to many estimates, the best-selling
desktop computer of all time. The entire computer looks to us in the modern
era just like a thick keyboard, but this form factor was reasonably common back in the 1980s. On the side you've got two joystick ports,
which also work with many other peripherals such as mice. You also have the power switch and power input. By the way- don't plug the original power
supply into this computer anymore! Not unless you know what you're doing, that
is. The original supplies are often terrible for
the machine, with voltage issues as they wear over time. Do yourself a favor and just buy a modern
replacement. Your C64 will thank you. On the back of the machine, you'll see a cartridge
port, common for peripherals and some games. There's also an RF output to allow you to
plug it into the antenna of a period-appropriate TV, but the quality there isn't great. Anyway, next to that RF output is the video
and audio output. Later revision C64s use this special 8 pin
DIN connector, which essentially is compatible with S-Video plus audio out. The earliest C64s, like my other model, the
early run "silver badge" C64, use a different 5 pin DIN, which sends out composite video
only. Next to that is a six-pin DIN connector used
for external devices such as floppy drives, printers, that sort of thing. Those are daisy-chainable, so only one output
is provided on the computer itself. And next to that is a tape drive connector. Yup, tapes. That's a thing- let me know if you want a
video on it. And lastly, at the end is the user port adapter. We use that to connect modems and lots of
other peripherals, so we'll be talking about that in a minute as we get online. Anyway, the Commodore 64 was named for it's
then-significant amount of RAM, 64 kilobytes. That's right: kilobytes. Yup, using this computer really gives you
an appreciation not only for our powerful modern machines, but also the extremely compact
design considerations that went into making this machine a fully capable computer for
its day. And it *was* a fully capable computer in its
day. The Commodore 64 was a powerhouse for gaming,
as well as getting online. And it's *that* experience we're going to
try to replicate today. When this machine was first shipped, the "web"
as we know it didn't exist. "Online" experiences were all based around
dial-up modems, calling into other machines which could serve you content. Perhaps the most iconic option for networking
in the 8-bit era is the mighty BBS. BBSes, or Bulletin Board Systems, are basically
servers running a terminal-friendly software package that allows remote computers to "dial
in" to share files and messages, and even play games. At the height of their popularity, millions
of computer users were dialing into BBSes throughout the world. Of course, it wasn't perfect. BBSes were generally limited to text-based
applications with very low capabilities for graphics. Not to mention that most BBSes couldn't handle
multiple simultaneous connections very well. See, the sysop (or system operator) needed
to figure out how to handle multiple incoming calls at the same time. On a modern website, the web server has to
be capable of handling multiple simultaneous connections, and all popular web servers do
this. But back then, it was just your computer or
server, and your phone line. So, you either had to figure out how to handle
multiple incoming calls all at once, via an expensive multi-line phone setup, or you had
to restrict access to one user at a time. We take for granted that all of our modern
machines are all connected with each other all the time, but back then, the pace of online
life was a little slower. And while I certainly appreciate the fact
that modern websites don't suffer this limitation, I do find myself occasionally pining for the
intentionality that comes from these limitations. Of course, the BBS never totally went away,
and is experiencing a bit of a rennaisance at present. And the Commodore 64 is an excellent way to
experience this wonderful world, the way it was meant to be experienced- slowly. Anyway, geeks-of-a-certain-age certainly remember
begging their siblings or parents to get off the phone so they could get online. If you weren't there, it was really something. Basically, our computers used audio tones
over the phone line to exchange information with other computers. That's what that classic "dial-up" sound is-
using the available audio infrastructure to join your fellow nerds throughout the world. There were no shortage of modem options back
then, but getting them working is challenging nowadays. Luckily, modern developers with a retro flair
have stepped in to help us out. It seems like no matter what retro hardware
you're into, lately someone has been working on getting it online again using modern technology. And that's awesome! As far as the Commodore 64 is concerned, I
have two options for connecting it to the modern internet. Later on, I'll walk you through the basic
setup of the 64nic+ from RETRO Innovations. This fun device lets you connect your Commodore
64 or 128 to the modern web over Ethernet, and is compatible with Contiki, a suite of
programs designed for embedded applications that works surprisingly well on the Commodore
64. But first, let's try the C64 Wi-Fi Modem from
Retro Rewind. This device emulates the classic AT Hayes
modem, but instead of dialing numbers over a phone line, you can call up connections
over the modern internet! This Zimodem-based modem plugs into the user
port of the Commodore 64, and is managable from many terminal programs on the C64. The program I'm planning on using today is
the legendary CCGMS terminal. The most recent release was in 2021, and the
source code is available online if anyone wants to add new features. Now, there are more ways to load programs
onto your C64 than I have time to go into right now, but I will be using my trusty Pi1541,
a Raspberry-Pi based floppy disk drive emulator that's significantly smaller than the classic
1541 floppy. If you want me to cover all of the different
ways I can load software on this thing, let me know in the comments. One thing I will mention is that the popular
command to load from floppy is `LOAD quote asterisk quote comma 8`. The "LOAD" command loads a program, and the
asterisk says load the first thing found on the disk. We'll cover more about that later on. The "8" is simply the default drive number
for a Commodore floppy drive. Anyway, I just downloaded the image from the
web, and I'll put a link in the description. Of course, if you still have the big 1541
floppy around, Retro Rewind does sell a copy of it on a floppy disk for your convenience. So, with the power off on the C64, lets connect
the modem to the user port, plug in my virtual floppy drive, and power on the computer. Then, let's fire up the software with that
LOAD command. After a while, it loads the program, and we
can use the RUN command to get started with it. Now, this can take a while- Commodore disk
drives are notoriously slow. In fact, there's an argument to be made that
the slow disk drive is the reason the Commodore computers were less successful in education
and business then IBM and Apple during the 80s. Maybe if the 1541 disk drive was faster, we'd
see Commodore phones all over the place, instead of Apple. Hmmmm... In any case, once CCGMS loads up, you'll have
to make sure CCGMS knows how to connect to the modem. It defaults to 1200 baud to get started, so
we need to make sure we set that. From CCGMS, we can press F7 to open the dialer
parameters. Then, we press B to set the baud rate, pressing
repeatedly until we get to 1200. It tells us to try the Afterlife BBS, but
apparently it's no longer active as of the making of this video. That's OK, we'll try another BBS shortly. Now we need to connect to our home Wi-Fi. "ATW", followed by the return key, will show
the networks nearby. To connect to one, we'll want `ATW"SSID,PASSWORD"` To see if it worked, type "ATI", followed
by the return key. That should show you your current network
connection, including your IP address. So, now that we're connected to the Wi-Fi,
let's head to that BBS! ATDT is the common command we'll use for BBSes,
that starts a streaming connection over telnet, an ancient predecessor of the mighty SSH. The command we'll want is `ATDT, then quote,
then the hostname, then colon, then the port, then an end quote`. I'll try one of my favorites- Particles! You can learn more about this classic BBS
on their website, particles.org. I type in the command, and... oops. They're busy. That's a thing with BBSes- sometimes they'll
be busy. It was a simpler time, some might say a more
civilized age. Particles in particular I believe is running
on an actual Commodore computer- the classic Commodore 128 according to their website. Anyway, most BBSes in the current era are
here for nostalgia's sake, run by enthusiasts out of their homes. Don't expect six nines of uptime, and be patient. When we finally get connected, we can walk
through the prompts. This BBS in particular asks about Commodore
color, which I can do, and 40/80 column mode. The C64 is mostly going to be a 40 column
machine- that's 40 columns of text per row. Other machines, like the Commodore 128 and
some versions of the PET supported 80 columns. Now, you can register a new connection right
here by following the prompts, but I've already got a connection, so I'll just get signed
in! Once you're signed in, you can have all sorts
of retro fun. Checking out the wall of visitors, even adding
your own message! Many BBSes allow you to message individual
users, or even download files for your retro machine. But the most fun I have is the BBS games. There are all sorts of silly and fun games
to play in these old BBSes, and it definitely feels great to be playing them over a network
connection on the classic computer the games were designed for. One of my favorites is Hurkle, a sort of battleship-esque
game where you have to find the Hurkle in a specific row and column within a specific
and shrinking number of guesses. The BBS scene is fun, and is probably the
best experience for getting a Commodore 64 online. I mean, it makes sense- this was what networking
was like back in the good old 20th century, and the C64 is well suited to the task. Sure, back then, we were using a telephone
modem instead of a Wi-Fi modem, but still- this is a fantastic approximation of the experience
I remember from my earliest days online. But what about taking it further? Enter Contiki. Contiki is an open source operating system
for networking various embedded and IoT devices together. Because it works on extremely small systems,
it only makes sense that someone ported it to the Commodore 64. And an outfit called RETRO Innovations provides
a neat cartridge that's compatible with this software, the 64nic+. I purchased one of these a few months ago,
and have been having fun playing with it ever since. In fact, one of my first attempts at 3d printing
was this spring, printing the case for this device, which was certainly a learning experience,
and an exersize in humility and persistence. Anyway, let's get started. We can load a list of files on the disk with
`LOAD"$", 8`. Once it loads the list, we can list it out
with the LIST command. Wow. There was a lot there on this disk. Let's list it again, and hit "RUN STOP" early
on so that we can see what's near the top of the list. Now, we can see CONTIKI listed- that's the
one we'll want in a minute. But first, we have some cleanup work to do. As of the making of this video, there's a
few bugs with this setup out of the box. One of these bugs is that the netconf program
is misnamed- it has 5 spaces at the front of the file name which renders it useless
within Contiki. Luckily, we can change it with this specific
esoteric command, which I'll link in the video description. ...And you thought Linux terminal commands
were overly complex. We run our mystery command, and the name of
the file changes. Now, we can list it out again, and all looks
well. The next thing we'll need to do is to run
SETMAC. Apparently the 64nic+ starts with no MAC address,
which makes it challenging to connect to a modern network. SETMAC allows you to set a MAC for the device. This one is pretty straight forward, just
`LOAD"SETMAC",8` and then RUN. With SETMAC having set a MAC address for the
64nic+, it's time to finally load Contiki! We can do that with `LOAD"CONTIKI",8`. After a while, it loads the program, and we
can use the RUN command to get started with it. Once it loads, we're greeted with a pretty
looking desktop interface. Of course, you'd need a mouse and the appropriate
driver setup to get mouse movements working, so I'm going to skip that for now. F1 loads the menu, and from here we can enter
the configuration. If you've ever set up a static IP address
on a computer before, this should look pretty familiar. Let me know if you want me to do a video on
it! F5 and F7 navigate up and down. When you get to the field you want to change,
press Return. Set up your network in the way that works
for your individual network, and press "Return" on "Save and Close". Now, let's fire up a browser! Pressing F5 and F7 will let you go up and
down the various items you see on the screen. In my case, I'm going to press F7 to highlight
the directory, and then press Return. Once you're in the directory, we can press
F7 to review all of the fun stuff we can do here. There are a ton of options, more than I can
tackle in one video. The one I care about is "Web Browser". Once the browser opens up, we can try navigating
to a website! Now, any site beginning with "https" is just
not going to load- the encryption involved is far too complex for the puny Commodore
64 to handle on its own. For that, you'd need to offload rendering
to something more modern, like an old PC or a Raspberry Pi. But websites designed for retro computers
should work OK, and my favorite one of those is "Frogfind", from the fantabulous YouTuber,
Action Retro. Go check out his stuff! Frogfind works pretty well! Of course, it auto-scrolls through the content,
and on 40 columns, it's going to load possibly too fast to be readible. But it sure is fun! We can also check out his other project, 68k
news, which shows news articles in a similar, low tech way. From what I can tell, this uses Mozilla's
reader mode to render the contents of a modern website in an extremely simple HTML, perfect
for legacy browsers. Anyway, Sean from Action Retro really deserves
a ton of credit for gifting these awesome websites to the retro community. Credit should also be given to the Contiki
project, and the developers of the CCGMS terminal program over the years. These are a ton of fun, and I'll put links
in the video description of where you can find out more about these awesome projects. Have you gotten an old 8-bit machine online
recently? Had fun wandering the BBSes? Let me know what you're using- I'd love to
hear more. Aside from the nostalgia factor, working with
old machines like the Commodore 64 can really give you an appreciation for where we come
from in our modern technology stack. After all, many of the folks who build our
modern tech got started on classic machines just like this one. If you want to get a feel for the classic
Commodore 64 experience, one project I can't recommend enough is VICE. It's a great Commodore 64 emulator and lets
you play games and test a lot of software. And if you'd like to see more videos about
Commodore's legacy in the computer world, make sure to let me know. And now, for a new segment I'd like to call
"Ask Veronica", where I answer questions from my supporters over on Patreon. Today's question is: What's your favorite
1980s retro system and why? I think my favorite 1980s retro system, if
we're talking game systems that were just "game systems" is probably the NES or the
Nintendo Entertainment System. I spent a ton of time on that as a kid. But, if we're talking about computer systems,
I think it's hard to beat the Amiga 500. It just blows away the competition of it's
time and it's just so fun. It also gave birth to tracker music, which
as far as I'm concerned, as a musician, is one of the most significant developments in
music history. If you've got a question you'd like me to
answer on the air, go join the Patreon! There's a link in the video description- and
tiers start at just a buck a month. And thank you so much for supporting my content-
it means a lot to me.