Connect Windows 3.1 to the Internet using Virtual Modem
This step-by-step guide will show you how to get a Windows 3.1 computer connected to the Internet using Virtual Modem and PPP. If you have not already, please follow the instructions how to set up Virtual Modem. Make sure the serial cable is connected to the Raspberry and the vmodem.sh script is running on it before attempting this part of the guide.
We will go through the steps how to install Trumpet Winsock 3.0 revision D on your Windows 3.1 computer. We will also configure typical settings for dial-up over PPP. I have not tested other version of Trumpet Winsock, so your mileage may vary if you use other versions.
For the sake of this tutorial, we will also install Netscape Navigator 3.0, but you're free to use any web browser.
Please make sure you have VModem set up and running first before attempting the following steps!
Install Trumpet Winsock
Windows 3.x doesn't come with native support for Windows Sockets and TCP/IP, but Microsoft has added TCP/IP support in a separate download, and a program called Trumpet Winsock will also provide these services for the operating system including PPP connectivity which we need. This software is shareware. The company is still active if you would like to register the software. See http://www.trumpet.com.au/
For the DNS
server, type in
. This is the Google's public DNS
Note! You may choose any DNS
server you like, but for simplicity's sake, I've chosen Google's DNS
In the Driver section, choose the PPP option. No other settings in this window need to be set.
Click on Dialler settings
In the following screen check the COMM port. You will need to select the correct Serial COM port. If your Raspberry Pi is connected on COM port number 1, select COM1. Make sure baud is set to whatever VModem has been set to operate at. By default it should be 57600. Nothing else should need to be changed. Hit OK.
In the Login profile window, it doesn't matter what user name you choose to use. But the phone number is important. Under default settings in VModem, the phone number to establish a PPP connection is 1 (one). Make sure it is entered as you see in this window. The phone number 1 will instruct the VModem script to run 1.sh, which establishes a PPP connection. You can rename this script to whatever you want if you'd like to customize the phone number. Just make sure the script ends with the .sh extension.
When you are done, hit OK.
Make sure the Raspberry Pi is connected over serial with the Windows 3.1 machine.
Make sure you are running Virtual Modem on the Raspberry Pi and VModem is in the READY state waiting to establish a connection. If VModem is running in the console, you will see the READY prompt:
pi@raspberrypi:/ $ cd /boot/vmodem
pi@raspberrypi:/boot/vmodem $ sudo ./vmodem.sh
Virtual Modem bootstrap for PPP link v1.1
Connection speed set to 57600 baud
TYPE HELP FOR COMMANDS
On the Windows 3.x computer, run Trumpet Winsock. Under the menu, choose Dialler and then choose Login.
You will see Trumpet issue a bunch of Hayes modem commands and then try to dial out to number “1” (see red box below) and then be greeted with the login handshake.
Tips & Tricks
If you would like to change the number you dial, you can rename the 1.sh script to <your number>.sh
You will need to download and install a web browser before you can browse web sites. You can choose any browser you like. For the sake of this tutorial, I've chosen Netscape 3.0 Gold Edition for Windows 3.1.
Once you have downloaded the file, copy it onto your Windows 3.1 machine, then run it to install. The file is over five megabytes, so it will not fit on a single floppy disk. You will need to split the file into smaller chunks to copy it onto floppy disks. You can use a free utility such as HJ-Split to accomplish the task. You can re-join the files with the same utility for the respective system.
Using the Internet with legacy web browsers today
You should now be able to access the Internet. However, many modern websites will require modern security and will refuse to communicate with older web browsers. You can use ProtoWeb to surf the 90's Internet, and I've also went ahead and compiled a list of websites that work.
I also made a easily-accessible gateway website to access archived copies of a selection of great websites that you can browse with your retro machine.
If you'd like to access archived websites directly from your browser by typing in the URL
, you can use ProtoWeb as a proxy server, which serves archived websites from the 90's. The ProtoWeb Proxy Server
is straightforward to setup in many web browsers, and will allow you access to websites circa 1995-2000.
Old web browsers are vulnerable to today's hacks and depending on the website(s) visited, may allow malicious software on the computer. Proceed at your caution.
Frequently Asked Questions
After waiting a while the connection stops working
Unable to establish any connection to the script
It is always a good idea to test the script first using a terminal emulator. Issue simple commands, like HELP or AT to verify the script is responding.
If you get no connection or garbled text, you may try to play with the Flow Control settings. Sometimes you will need to select Hardware, or XON / XOFF for the flow control.
Make sure the serial communication speed matches what the script is operating on.
Make sure you are using the right COM port on the computer or terminal emulation software.
I had a Compaq background just like that. Where can I find it?
Some classic 90's websites can be accessed through the use of ProtoWeb, the 90's Internet Service Provider.
Get In Touch With Us!
Get support, share your thoughts and report bugs on Discord.