• --==<Rik's Blog>==--

  • by daytona400f

random musings



AT-Compatible Internet Modem Cartridge for my C64?

So, I was sitting around one day, staring at the roof, seeking inspiration. And then, I had an idea!

I wanted a cartridge that plugs into my c128/c64, that uses standard AT Commands, and would let me use my c64 just like it was 1985. Modem games, BBS’s, CCGMS, Big Gulp, everything. No proprietary coding needed. Making it backwards compatible, I want a basic hardware solution that my c64 would see as a normal modem.

Checking around, I found there really wasn't anything out there like this for the c64. There was the (Jim Brain authored) TCPSer ->Windows/Linux PC solution, which is great! But I want a standalone device with no strings, aside from maybe a LAN wire. Something that anyone can plug into their c64 in 10 years from now, and it will still work. That’s how my other c64 cartridges work. Plug, play…

All I could seem to find were (clever) ways to hack together cables, and kludge together a connection. Hrm..

Well, fooey….. How hard could this be to make? What's involved? Where should I start? I've never made a C64 cartridge; I don't know anything about the hardware/software involved.

Looking around, I found a dizzying array of standalone serial->Ethernet device servers that would #1 fit inside a cartridge and  #2 do the basic connectivity. So I pulled out my Visa card are started ordering!

Device #1, Netburner MOD5270, with demo board. This board seemed to have it all! Totally configurable, plenty of RAM. Now, I just had to figure out how to program in C++, using their development kit, and write my own AT-Command interpreter. Hmm.. This learning curve may be too steep…..

Device #2, ConnectOne with demo board.  Ahhh HA! It’s a Serial-to-Ethernet device that uses AT-Commands! A dream come true?   And it includes PPP, Web Server, FTP, etc.  All with AT commands!   But wait, what’s this?  You have to lead all your commands with “AT+i”? That’s not going to be backwards compatible with certain programs. I call up their tech support and ask them if there is a way to modify this. Their answer? NO. I ask if they could burn me a firmware with the +I removed. NO.  I ask if in their future releases, they will have an “AT+I” command to change the ATtention command? NO.

Since this device is basically useless to me, I decide to take matters into my own hands….  I load up their firmware in a HEX editor and find that stupid AT+I . (I learned this trick sector editing on my c64!) 

>> AT #$00 #$00.  

That oughta do the trick…. I upload the firmware back to the device, turn it on.. Bricked. Dead. Unrecoverable. lame……

Device #3, Multitech! Remember them? They have a standalone chip that does what I’m looking for. I contact their sales department and proceed asking them about features. It sounds like everything I want. But they have no Product Briefs, no White Paper, no user Guides online. The sales person emailed me a copy of what was arguably the worst spec sheet I’ve ever seen. I still knew nothing about this device, other than some cursory claims.  Oh, and I knew the price and the price-breaks.   After just bricking my ConnectOne, I’m not terribly interested in wasting too much money just to get a peek at Multitech’s offering. This may be the perfect basic 'out of the box' product. But for now, Skip……. (its a little overpriced too)

Device #4, The Wiz. The price is right, but it would really require a Microcontroller to do what I needed to do. No where to put an “AT Modem Emulator”.  And even if I did, I still have no idea how to write in C. Then I would have to figure out how to put a microcontroller and the Wiz onto a cartridge. This is more than I wanted to do. I knew there had to be a better solution…

Device #5, Lantronix Xport. Here was a promising device! It has a “modem” emulator built in! And it uses NORMAL AT-Commands!  The item arrives, I plug it into my PC, type AT a few times, and everything looks great!  Then I type “ATDT1.2.3.4” and it doesn’t respond with a NO CARRIER, or a CONNECT or anything of the sort. It responds with “0>”.  I look it up in the pdf, and apparently I’ve gone into Monitor Mode.(wth?)  The device pops into Monitor Mode if it doesn’t connect. (why?)  I dig around a little more and find that I have to type “QU” to get out of Monitor Mode. How incredibly annoying….  I spent some more time connecting to BBS’s, and when I type the ATDT string correctly, everything work flawlessly. Problem is, one missed "." in your "ATDTx.x.x.x:x" command, it goes into Monitor Mode! Argh!!   I can just imagine a c64 modem game trying to connect, getting the connect-string wrong and the device being in a failed state, waiting for someone to type QU. This is a good device. But it simply won’t work unless I have more control over such configurations.

At this point, I’m getting pretty discouraged. And poor…  I’ve spent months reading over user guides, getting to know if/how a product will do what I want, only to find a major brick-wall in the implementation, and no workarounds. Since I’m not a large enough purchaser, no one will work with me to modify their devices to fit my spec. Or they want *a lot* of money to do so.

One day I’m surfing around on Lantronix’s home page, and they’ve released a new device. They call it “The Worlds Smallest Linux Server”; The Matchport AR.  Hmm what’s this?

I order one with Demo Board, get it unwrapped and start playing with it. This looks promising! Open source, had all the physical connectivity requirements, and I suspect it will run Jim Brain’s TCPSer. I rejoice in the thought of not having to code my own Hayes AT Emulator! Not only that, but Open Source is very seasoned code. Not only will it run TCPSer, but pretty much anything written for Linux, within reason!

Holy scope-creep ideas!!!    uTorrent on my c64? This has serious potential. Way beyond my initial spec.

There is just one problem. I don’t know Linux. Nothing, zip, zero……. Dunno what a Linux Kernal does, or why you’d want to recompile it.


That was 2.5 years ago. Since then, I’ve read every book I could get my hands on, taken week long Linux class, written some basic C code, and I can write Shell Scripts! I can even use all the different embedded boot loaders, compile my own firmware and adapt/compile programs to run on the Matchport.

Leave a Comment

You must be signed-in to post comments.