Jump to content

Lynx Web Browser Community Edition for DOS with TLS 1.2


Recommended Posts

== Lynx Web Browser Community Edition for DOS with TLS 1.2 ==

= Overview =

Lynx v2.9.0dev.5 is another open source web browser ported to DOS with TLS v1.2 support [1]. It runs well in vanilla Windows 98 using it's DOS v7.10. Lynx development started in 1994 at the University of Kansas. It is a lightweight, configurable, text only browser (no images). Below is a compilation of the most relevant information needed to download, install and run the browser.

Project homepage with screenshot.
https://lynx.browser.org/

Online manual, not all applies to running in DOS.
https://lynx.invisible-island.net/release/lynx_help/lynx_help_main.html

= Prerequisites =

- Working DOS system
- Basic DOS knowledge
- Functional DOS network [2]
- Software downloads below

= Download =

Download CWSDPMI.EXE (21 KB) [3].
http://links.twibright.com/download/binaries/dos/

Download Lynx web browser for DOS (lx290d5b.zip, direct link, 2.5 MB).
http://djgpp.mirror.garr.it/current/v2tk/lx290d5b.zip

= Setup =

This example creates a C:\DOS\ directory with additional subdirectories for relevant software, modify as desired. Create and place 'CWSDPMI.EXE' in C:\DOS\CWSDPMI\.

Extract the downloaded lx290d5b.zip file into a temporary directory. Create another subdirectory named C:\DOS\LYNX\ and copy the following files into this directory, renaming 'ca-bundle.pem' to DOS friendly 'CA-BUN.PEM':

CA-BUN.PEM
LYNX.CFG
LYNX.EXE
LYNX.LSS
LYNX.RC

= Configure DOS Environment =

Lynx utilizes CWSDPMI [3] and runs well on this test system without any special DOS configuration. Most configuration is handled through a custom LYNX.BAT file, see LYNX.BAT section below. No specific C:\AUTOEXEC.BAT or C:\CONFIG.SYS file entries are needed although 'DOSKEY /INSERT' is optionally useful in AUTOEXEC.BAT to assist with DOS navigation. If DOSKEY is not installed in C:\WINDOWS\COMMAND\ it is available from your Windows CD or better yet install 'Enhanced DOSKEY.com'.
http://www.paulhoule.com/doskey/

= Create LYNX.BAT =

Create a C:\DOS\LYNX\LYNX.BAT file to load SMARTDRV.EXE, the DOS packet driver, CWSDPMI.EXE and launch Lynx. Modify the DOS packet driver entry below based on your hardware. Note Lynx needs to run from a true DOS environment. Do not launch it from Windows or drop to DOS from a Windows session. Instead reboot system into DOS before launching browser.

Note this test hardware requires a full poweroff, rather than simply rebooting Windows 98 back to DOS, otherwise the ethernet adapter and DOS packet driver do not initialize.

C:\DOS\LYNX\LYNX.BAT file:

@ECHO OFF
C:\WINDOWS\SMARTDRV.EXE
C:\DOS\LNE100\LNE100TX.COM 0x60
C:\DOS\CWSDPMI\CWSDPMI.EXE
C:\DOS\LYNX\LYNX.EXE

Note the location of this LYNX.BAT file becomes the working directory for Lynx when saving bookmarks to a bookmark file (LYNX_BOO.HTM file, autogenerated when first bookmark added). Personal preference is to keep LYNX.BAT in C:\DOS\LYNX\.

= Configure Lynx =

By default Lynx prompts the user for browsing cookie and HTTPS connection requests. This is too tedious for most users and the following configuration changes appear to allow Lynx to function well without prompting to access web pages. Note default cookies configuration is session only. To negate prompting manually modify the following C:\DOS\LYNX\LYNX.CFG entries before running the browser.

C:\DOS\LYNX\LYNX.CFG file:

ACCEPT_ALL_COOKIES:TRUE
FORCE_SSL_PROMPT:NO
FORCE_COOKIE_PROMPT:NO
SSL_CERT_FILE:c:\dos\lynx\ca-bun.pem
SSL_CLIENT_CERT_FILE:c:\dos\lynx\ca-bun.pem
SSL_CLIENT_KEY_FILE:c:\dos\lynx\ca-bun.pem

In addition to the LYNX.CFG file for basic options select O)ptions when running the browser. Any changes through O)ptions modifies C:\DOS\LYNX\LYNX.RC. Note ensure 'Save options to disk' is selected (use Enter key) before selecting 'Accept Changes'.

Note CuteMouse for DOS mouse support did not work in Lynx despite numerous configuration attempts. This system runs CuteMouse fine for other DOS applications and it, therefore, appears as though mouse support is not available for this DOS port of Lynx. See the Links Web Browser for DOS with TLS 1.2 Community Edition thread for a web browser alternative that provides graphic and mouse support [1].

= First Run =

Boot to DOS, navigate to C:\DOS\LYNX\ and run LYNX.BAT to launch Lynx. If your system utilizes a DHCP connection there may be an initial delay getting connected. Once a DHCP connection is established a W32DHCP.TMP file gets created in C:\WINDOWS\TEMP\. Leave this file in place to make the next Lynx launch faster. Users who do not want this sensitive plain text information on their system, however, should delete the file after a Lynx session.

= Quicker DHCP Launch =

If the first browser launch resulted in a 'Configuring through BOOTP' delay and then connected via DHCP anyway, create a configuration file named WATTCP.CFG in C:\DOS\LYNX\ containing the line below [4]. Note 'my_ip' is literally 'my_ip', do not substitute this for your system's IP (Internet Protocol) address. Note a blank (empty) line is expected below the 'my_ip=dhcp' entry.

my_ip=dhcp


= Confirm TLS v1.2 Support =

Load the link below to confirm TLS v1.2 support.
https://www.ssllabs.com/ssltest/viewMyClient.html

= Help and Usage =

When running Lynx enter H)elp to review online help, including keyboard shortcuts. Basic usage is simple: left arrow key to go back, forward or Enter keys to select a link, page up/down to scroll, arrow up/down to highlight links, 'a' key to add a bookmark, 'v' key to view and select bookmarks. Use Ctrl-x to view session cache (browsing history) and Ctrl-k to access the cookie jar (browser cookies set during session).

END

[1] See the Links Web Browser for DOS with TLS 1.2 Community Edition thread for a web browser alternative that provides graphic and mouse support.
https://msfn.org/board/topic/181853-links-web-browser-community-edition-for-dos-with-tls-12/#comments

[2] Review this DOS Networking guide if the system does not yet have a working DOS packet driver. Note mTCP is not required to run Lynx as it handles connectivity internally.
https://msfn.org/board/topic/177106-running-vanilla-windows-98-in-2020-and-beyond/page/32/?tab=comments#comment-1187090

For network adapters that do not have a working packet driver, review forum member @Deomsh's NDIS 2 driver guide below.
https://msfn.org/board/topic/181853-links-web-browser-for-dos-with-tls-12-community-edition/?tab=comments#comment-1187234

[3] Alternatively download the same 'r7 binary distribution' (csdpmi7b-1.zip, 70 KB) of CWSDPMI (Charles W. Sandmann's DOS Protected Mode Interface) from below if documentation is desired.
http://sandmann.dotster.com/cwsdpmi/

[4] More WATTCP configuration information.
http://wiki.freedos.org/wiki/index.php/Networking_FreeDOS_-_WATTCP

Edited by Wunderbar98
Link to comment
Share on other sites


Nice SMARTDRIVE make such a big difference. 

Just curious if maximun Read-Ahead buffer gives more improvement:

SMARTDRIVE /L /B:57344

(buffer forced in Low Memory is normally faster, but will cost more 'low mem' of course). 

 

Link to comment
Share on other sites

Thanks for the feedback Deomsh. Running Lynx with the low memory and buffer switches work well, though didn't notice any appreciable change from just a plain SMARTDRV.EXE command. During this testing phase my browsing sessions are, however, usually brief with frequent browser exits and re-starts, so maybe i just haven't hit a memory wall or something.
C:\WINDOWS\SMARTDRV.EXE /L /B:57344

Took a bit to configure but enjoying this browser more with experience. On this system DOS boots to 80 columns x 25 lines, adding below early in LYNX.BAT (or wherever) effectively doubles the web page view.
C:\WINDOWS\COMMAND\MODE.COM 80,50

DuckDuckGo Lite is a good search engine for this browser.
https://lite.duckduckgo.com/lite

To force a page reload upon re-visit instead of using Enter or right-arrow keys to load a link from cache or bookmarks use the letter 'x' key for a fresh fetch.

Lynx can be temporarily escaped to DOS during a browsing session via the exclamation (!) key, then enter 'exit' at the prompt when ready to resume browsing. On this system, unfortunately, Lynx resumes in monochrome instead of colour mode - haven't figured it out.

If Lynx hangs on a page load or whatever, Alt-x forces the browser to exit.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...