For the past few months I’ve been working on a project that I’ve been pondering for a long time. If you follow my vintage computing exploits, you know that I get the most satisfaction out of combining retro technology with modern cloud-based systems. This allows me to combine my passion for both vintage and new technology, ie. my hobby and my real-world day-job passions and skills.
Projects that I’ve previously published, like TRSWiki, TRS-Box and TRS-Pic, all connect to cloud based services like Wikipedia, Dropbox and Google Images via custom AWS cloud-based intermediary services. These apps have utilized different connectivity solutions, such as the WIZnet based Ethernet capabilities of the MISE/M3SE or serial-IP converters, such as the ATC-1000. Both of these solutions work well, but have their limitations. The MISE/M3SE, while a superior all-around accessory for the TRS-80 that I highly recommend, has a significant cost threshold which puts it out of reach of many TRS-80 enthusiasts. Serial-IP converters, on the other hand, are relatively affordable, but come with the throughput limitations of legacy RS-232 based interfaces. And both approaches do not offer secure communications via HTTPS or TLS, which makes passing of sensitive data, like passwords or authentication tokens problematic. I have overcome this particular limitation by rolling a TEA based encryption implementation which results in a severe performance penalty (32bit encryption in Z80 assembly anyone!) and is not nearly as secure as modern SHA-256 based providers.
So, a year or so ago, Arno Puder released a project called the RetroStoreCard. This is an ESP32 based hardware and software solution to allow TRS-80s to connect to his RetroStore. I was blown away when I saw it. It provided simple, cheap, WiFi based, encrypted Internet communications via the TRS-80 by connecting to the Model III and Model 4 expansion port. I perused the RetroStoreCard architecture and quickly determined that it could easily be adopted as a general purpose network interface card. I subsequently got in touch with Arno, and with his blessing (he re-affirmed the open source nature of the project), I decided to embark on my goal of creating an open source TRS-80 network interface.
Now that you know what trsnic is, you may be asking how do I use it or get my hands on one? Well, the project, along with it’s parent RetroStoreCard project, is open source. So you can go ahead and build a card and start writing software today based upon the information provided in the repositories. I will admit that there is a pretty high bar to get everything working as you have to understand a number of different technologies, programming languages and the documentation for building the hardware is limited at this time. That will be addressed soon.
However, I will be building some of the physical hardware cards preloaded with trsnic and offering them for those of you who would like to buy a completed product. Before you request a board, I will re-iterate that this is a new beta project which will have lots of issues. Probably the only software available to use trsnic for quite awhile will be my TRS-Pic and TRS-Box applications of which I do plan on making trsnic compatible versions available soon. But, I’m also hoping that others like you will see the power of this project and start to implement your own networking based TRS-80 applications using trsnic.
Let me know what you think of the project!