CREEPINGNET'S WORLD
DOS WEB SURFING - LINKS BROWSER
So maybe you want to put that vintage piece of x86 "iron" on the web, get it roaming the information superhighway, but you don't want to deal with the headaches of out-dated web browsers from the 1990's that almost work because the modern web requires TLS 1.2/1.3, and blocks many outdated/insecure security protocols, and you won't be able to access most websites as a result.

But what about if I told you there actually was a TLS 1.2 compliant browser for DOS that can indeed render modern websites, in color graphics mode, or text mode, the latter at quite blazing speed on a 386 SX or faster running pure DOS, in 2022? What if that browser actually allowed you to download files in the background as you continued to surf, and had a fairly easy to use user-interface if you are accustomed to drop-down menus like a lot of MS-DOS Software already has. Well, I'm here to tell you all about this underrated and much unknown open-source browser called Links

I found out about Links when I found it as an installed package with FreeDOS 1.2. So if you have FreeDOS, you have Links as an option. I did not like Dillo because it was too slow on my 486s, with the mouse locking up frequently, and it was a no go on my vintage Versa laptops because the default resolution was 800x600 at 16-bit color, my screens could only do 640x480 at 256 (8-bit) colors at the time. I did not like Arachne that much anymore because it took a whole lot of finagling to get the darned thing to even try and play ball with the modern https-mandatory internet. LYNX I had used and got working on my 286 but even then it was a bit of a pain (and something we may explore later as I like having the ability to surf on my vintage machiines).

Speaking of LYNX, let's get the confusion out of the way, the browser being mentioned here is LINKS not LYNX. LYNX was an open source browser that was very popular and ported across many platforms, including DOS, including even a 8088/80286 centric version called Bobcat that I also have used. Lynx is a totally different animal in that it's more reliant on heavy amounts of plaintext configuration and script files - more like Arachne - than Links, which by contrast comes in a 7MB full-version, standalone executable called Links.exe, and a 3MB "lite" version that's text-only. So Lynx and Links are two separate browsers. Links also has ports for Win32, Linux, and BSD as well, and also is open source, but far less fiddly.

The minimum system requirements of Links are as follows - this was figured out through rolling it through my collection.

  • 386 CPU w/ 387 Required (SX or DX works), or 486 with FPU (so 487 if SX)
  • 4MB of RAM seems to be the most comfortable minimum
  • 7MB of Hard Disk Space (full), 3MB of Hard Disk Space (lite)
  • Packet Driver for Your Ethernet Card loaded to interrupt vector 0x60
  • A TCP/IP Stack, WATTCP, I suggest Mike Bruttman's mTCP Suite for this.
  • MS-DOS 5.00 or Better Reccommended
  • An internet connection

Links can be used with Windows 3.1x as well using DOS networking in the background, and it can be run in a Window so it's also a good alternative. I think someone should take a look at the source for Links and see about porting it to Win16 if at all possibe, or running it under win32s where it does not crash with a "unexpected DOS Error 21" that's all too familiar to us Win3x users.

Now, here's what you can and cannot do with Links...

You Can

  • Surf http and https websites as usual in both text and graphical mode
  • Download files, even multiple files at once, while you continue to surf
  • Login to SOME forums and social media and use the basic parts of them on your vintage PC
  • Download files from FTP (File Transfer Protocol) sites, not even current Firefox can do that! :P
  • See graphics in full color at high resolutions using the graphics mode that uses SVGALIB
  • Sites will render their tables in text mode using Terminal font graphics - so Tables Exist in ASCII too :D
  • Surf the internet without a mouse (wonderful for old Laptops or people who don't like using Mice)
You Cannot
  • Stream Netflix, Hulu, Youtube, or other online streaming media
  • Some Secure websites won't work, online financial transactions are a no no (of course)
  • Some more advanced navigational elements don't work (ie drop-downs, CSS Stylecheets, animated BKG)
  • Webapps requiring special crud llike Java, Flash, or ActiveX don't work (that could be a GOOD thing as those are often vectors for security issues on the internet anyway, so in a way, you ARE a bit more secure than with say...Edge)
  • There are no stereotypical graphical interface elements in graphical OR text mode, this is by design. You are running a DOS PROGRAM, so if you are used to the norm (IE/Edge/Chrome/Firefox/Netscape/etc.) you may need to get more used to using hotkeys.

Installation I'm going to assume you already have mTCP or some other form of networking or dialer setup to use. If you have FreeDOS you can use the FDIMPLES package manager to install it from the installation media. But if you have a machine running some other version of DOS (PC-DOS, MS-DOS, DR-DOS, etc.) You need to go to the DOS downloads Section of the Links website. You can use mTCP HTGET to download the file on the actual machine once you have networking setup, or burn it to a CD or ZIP disk on a modern system or tweener and copy it over, or use the FTP Server Method of file xfer between a modern machine and a vintage machine. All you need is the executable in the folder and the CWSDPMI.EXE - required as this is a Protected Mode DOS application. I usually just install to the c:\links directory (ie md c:\links, then copy the file to the directory). The files are LFN (Long File Name) so it might be better just to shorten it to "Links.exe".

**NOTE** - Just a quick note, when setting up Links with a mTCP/PacketDriver setup, if your packet driver configuration also has a line for "HOSTNAME" or "COMPUTERNAME" or somesuch, you NEED to make sure the hostname MATCHES between both the MTCP Configuration file AND the Packet Driver for your NIC. If you fail to do this, I've run into situations where Links won't connect at all, not even through DHCP (as we are using here), and it will run through RARP and BOOTP and say all three will fail. Remember, this is DOS, the demon is in the details, and no "agents", "Troubleshooters", or "wizards" are going to come along to help you find or troubleshoot the issue. It's all about making sure values match where they should, and NOT conflict when they shouldn't. I also find, if you miss the "...failed" messages, that on older hardware (ie 386/486) the program runs like a copy of Windows with a bad SSD (pauses, keys fail to respond here and there).

Once the file is on the computer, you can run it and it will auto-generate any resourrce directories it needs (usually a ./LINKS.CFG/ directory which contains a config file, bookmarks, and one other file I can't think of), it also will run through attempts to connect through bootp and DHCP in that order if WATTCP.CFG i not present (this program uses the Waterloo TCP stack). To speed up load time you can generate your own WATTCP.CFG in the directory to force it to use DHCP (contents of the file is a single line usually - my_ip = DHCP), and it's reccommended but not necessary.


USING LINKS
If you're used to surfing with a regular browser on a regular, modern computer, the only really big thing you need to know is that this browser uses both a dropdown menu and hotkeys to navigate. ESC Brings up the main menu bar up top, and you can navigate the menu using Arrow Keys and Enter. Tab let's you change fields within menus. You can also navigate this using the mouse by clicking on the "arrow" on the upper left corner of the screen to bring up the menu and navigate like you would a regular Windows/Apple program. Backspace does the same thing as the Back Button, and navigating websites is a lot like using "Caret Browsing" mode - aka, arrow keys highlight links on the page, and the page scrolls up and down as you highlight various items. pg up and pg dn allow you to move a webpage a "page" at a time (section of page, not the actual website). Yes, I get that this is very basic and almost laughably so to some people online, but remember, we have a new generation of vintage PC users coming up who are not used to using a keyboard for a lot of stuff, which is something all good DOS users need to get used to.

If you want to start the program in graphical mode, you use the -g and -mode command line switches, with the graphics mode set after the -mode with the resolution and color depth afterward formatted like: 640x480x16 for 640x480p resolution at 16-colors (VGA), or 800x600x32K for 32,000 color (16-bit) support. Most of the time I use 640x480x256 (SVGA) on my 640p laptops, and 800x600x256 on my 800p laptops, and 800x600x32k on everything else I have. You may need to experiment to figure out what works best for your particular setup.

To exit you either click the arrow or hit ESC and navigate to exit to leave. You don't want to just turn off the PC since it tends to corrupt Links sometimes and causes it to stop connecting to the internet for some reason. While this may be a DOS system, since it is a protected mode app and there's a lot going on inside that 7MB executable you want to make sure not to do anything to harm it. I also suggest keeping a C:\links\backup directory for both when you update the program and/or for fixing corrupted EXE files in the unlikely event that happens (I have not seen this since version 2.25 was released - but I'm careful).