Who put the alphabet in alphabetical order?

User Tools

Site Tools


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 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

  • Go to the Tattam Software Enterprises web page and download Trumpet Winsock 3.0 revision D. The file should be called TWSK30D.EXE. Alternatively you can download a copy from our site.
  • Copy it to your Windows 3.x computer into an empty temporary directory.
  • Open up File Manager on the Windows 3.x computer.

  • Extract and run TWSK30D.EXE. It will self-extract the installation files.

  • If you do not see the extracted files, you probably need to refresh the file listing.

  • When the installer program starts, choose Install.

  • If you see the following prompt, just hit OK.

  • Click Yes to rename additional Winsocks.

  • You can accept the default install directory and hit OK.

  • You can also accept the default program group and then hit OK.

  • Trumpet will propose to add it's home directory to the PATH variable under DOS. You can go ahead and accept this change.

  • Trumpet will ask to review the license terms. If you agree with the terms, hit Accept.

  • For the DNS server, type in This is the Google's public DNS server.
    • Note! You may choose any DNS server you like, but for simplicity's sake, I've chosen Google's DNS server.
  • 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, 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.

  • Hit OK on this message. It's always a good idea to remove any floppies before (re-)booting a computer.

  • Hit Restart.

Logging on

  • 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 ./

Virtual Modem bootstrap for PPP link v1.1
Connection speed set to 57600 baud

  • 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.

  • On the Raspberry's side, you will notice the Hayes commands passed on to the script:

  • After a while, the window should go away and now you're connected to the Internet.

Tips & Tricks

If you would like to change the number you dial, you can rename the script to <your number>.sh

Install Netscape

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.

  • Click here to see the list of websites that will work with legacy web browsers!
  • 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.
  • If you plan on visiting websites that are live today, you may consider disabling Javascript in the web browser settings. If Javascript is enabled, it may cause all sorts of pop-up errors to show up on modern websites to the point where it could make the whole web browser unusable.

Frequently Asked Questions

After waiting a while the connection stops working

  • It is possible the PPP session has timed out. Go back to Trumpet Winsock and Login again by selecting Dialler –> Login. You can adjust the timeout value on the Raspberry by editing the file.

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.

guides/connecting_windows_3.1_to_the_internet.txt · Last modified: 2022-12-20 05:52 by omolini