How to get retro computers online in 2025 using only a £12 cable (and a smartphone) - part 1
Rationale
There is a great deal of interest in connecting older (read pre-2000) computers to the internet. These computers would generally have come with an RS-232 serial interface which would connect to a modem and thence to a BBS or dial-up internet service.
Various solutions are available to solve this, including Pi-based modem emulators. I propose a simple solution, using only a £12 serial cable and an android phone. This is particularly helpful for portable computers such as my Psion 5mx and Netbook, as it is portable and needs no additional power sources
Overview
- Part 1: using a retro computer as a terminal
- Part 2: connecting a retro computer to the internet
- Part 3: email
- Part 4: browsing the web
- Part 5: a full desktop
The Cable
You will need a USB-C to RS232 cable. Mine came from eBay and cost £12. It uses a Prolific PL2303 (probably fake). You also need an Android phone with a USB OTG port.
Connecting to the phone
Plug one end of the cable into your phone and the other end into your retro computer's RS232 port or adapter. Android doesn't have any drivers for serial ports, so we will need an app to connect to the cable - I used TCPUART. Set your cable speed to 9600 bps or whatever your retro computer can handle. This app can't enable hardware flow control, so you are going to have to start slow.
Connecting to a terminal.
You need a terminal server at the other end. TERMUX is a Linux emulator for Android phones. It doesn't need root access, just a port to listen to. I will choose port 8080.
To connect a Termux terminal to the TCP Server, use the Unix utility socat:
Connect the TCPUART app as a client to the same address and port (127.0.0.1:8080).You can now use a terminal app on your computer to connect. On my Psions I use Hermes, set up to emulate a VT100.
Socat will create a pseudo-tty for bash, so you can set up bash to use this:
now go ahead, and use any apps you fancy. I recommend the links web browser.
For file transfer, you might want to check out the lsx utility for xmodem, or lsz for zmodem, whichever your terminal client supports.
How to get retro computers online in 2025 using only a £12 cable (and a smartphone) - part 2
Connecting to the internet
Connecting to Termux using a serial cable is great, and you can use several apps to browse the internet, edit files and read email all through the text-mode terminal. If your retro computer is capable of running a TCP/IP stack, you can do a lot more.
Back in the 90s, the only way of getting computers online from home was to dial-in (via a modem) to a server, usually running some form of SLIP or PPP service. This would assign an IP address, and do all of the translation needed to send IP packets reliably over a serial connection.
Android does have a PPP server built in, but I have no way of accessing it directly from Termux. However, there is an application called Slirp that will run in Termux and provide a SLIP or PPP interface to the controlling terminal or to any other connected tty.
Getting Slirp
You will need a current version of Slirp - the only one I could find was patched by Cameron Kaiser and available at https://github.com/classilla/slirp-ck
Though this version compiled and ran on Termux fine, I found I couldn't connect to the internet without patching the code once more to ensure that the gateway address is set even if the host has no address.
Once the patch is applied, you can configure, make and install the software - just make sure to set the correct Termux prefixes.
Running Slirp
How you run Slirp may depend on your client software. For my Psions, it is enough to connect to Termux as before, and send the command
Then disconnect the terminal client and connect the dial-up software. Your local ip address (on the client) will become 10.0.2.15, and the internet gateway will be set to 10.0.2.0. In theory, slirp should also offer a DNS server on 10.0.2.3. The special address 10.0.2.2 will map to your phone, in case you want to acess any services.
I found that I could set the link speed all the way up to 115,200 bps in TCPUART without any problems, despite the lack of flow control, as the PPP and IP protocols deal with lost packets.
Connecting Slirp directly
Once you have slirp working, you can skip the terminal altogether. Simply use socat again to connect the TCPUART server to Slirp via a pseudo-tty:
socat exec 'slirp ppp',pty,sigint,rawer tcp-listen:8080,bind=localhost
How to get retro computers online in 2025 using only a £12 cable (and a smartphone) - part 3
Connecting an email client
Though the pop3 and imap protocols for reading emails haven't changed, most mail services require a secure SSL connection. A retro computer with an email client is unlikely to work. You will need to route your email through a proxy such as stunnel. Write a suitable stunnel.conf for your email service. If you use GMail, you will also need to create an app password to avoid the OAuth authentication API.
Set the stunnel to listen on 127.0.0.1 ports 1143 (IMAP), 1025 (SMTP) and 1110 (POP3). Then set your email client to connect to 10.0.2.2:port for each service it uses.
How to get retro computers online in 2025 using only a £12 cable (and a smartphone) - part 4
Connecting to the web
Running a TCP/IP stack will enable any client to connect to the internet. So a web browser should be able to access a few http websites that are still running, such as frogfind.com.
Connecting to anything more modern will require a proxy server that translates https into http and also simplifies the web code, removing javascript and modern CSS.
There are many available, but some simple examples that will run under Termux include:
- macproxy - does a good job of simplifying websites, but doesn't do much to images
- retro-proxy - can also translate images to lower resolution and older formats
Set these up to run in Termux, start the one you prefer, note the port it is running
on and set your browser proxy to 10.0.2.2:port.


Comments
Post a Comment