DosLynx v0.29 Beta Release Information

Contents:

Introduction

This is a beta release of DosLynx for DOS compatible computers written by Garrett Arch Blythe for the University of Kansas. Wayne S. Buttles made some modifications to it in 1996. The present maintainer of DosLynx is Fred C. Macall.

DosLynx is a hypertext browser with World Wide Web capabilities.

This file provides information about installing, configuring, and using DosLynx v0.29b.

DosLynx is copyrighted by the University of Kansas and is free for instructional and research educational use. Non-educational use will be licensed at a later date.

DosLynx v0.29b is available in EXEcutable form.

System Requirements

One of DosLynx's goals is to provide support for as many DOS users as possible. We have scaled DosLynx towards this end.

The known system requirements are:

CPU
8086/8088 compatible.
Memory
512 kilobytes free or more recommended.
Hard Drive
Required. 2 megabytes free or more recommended.
Monitor
Monochrome, Black and White, and Color supported.
Graphics capability
Optional.
Mouse
Optional.
Network
None, or Class 1 (Ethernet) Packet Driver connected to a TCP/IP network. You may, of course, emulate a Class 1 Packet Driver if you have the required software for your particular system (i.e. PPP, ODI, SLIP, etc).
DosLynx is known not to work on the following systems:
DOS
Versions below 3.0 will not work properly.
 

Obtaining DosLynx

DosLynx v0.29b is available via the World Wide Web at

http://users.nccw.net/fmacall/dlx29bin.zip

DosLynx will be updated periodically as new changes are made to the application.

Supplied Files

DosLynx version 0.29 beta has the following files shipped with it. If you do not have all of the files listed below we suggest obtaining a complete release from the Internet address listed above.
BETAHYPE.TXT
An early note (pre)announcing a DosLynx beta, from Garrett Arch Blythe.
DEHEAD.EXE
A simple utility program for making headerless copies of local files written by the DosLynx File|Open URL... (with its Download button), File|Save Source, and Navigate|Download Selection menu entries.
DLXVIEW.BAT
A sample Batch File "wrapper" for a graphics viewer.
DOSLYNX.BA_
A sample Batch File "wrapper" for DosLynx.
DOSLYNX.CFG
A sample DosLynx v0.2xb configuration file.
DOSLYNX.EXE
The DosLynx v0.29b executable.
FCMEMADR.GIF
A graphic containing Fred C. Macall's E-Mail Address.
ERROR.HTM
The default DosLynx HTML error page.
HISTORY.TXT
A report on the major changes made to bring DosLynx from version 0.28b to version 0.29b.
HOTLIST.HTM
The default DosLynx HTML Hotlist.
INFO.HTM
The DosLynx v0.29b Quick Start Home Page.
KEYS.TXT
A table of Shortcut Keys for the DosLynx menus.
NEWSURLS.HTM
A description of the News URLs accepted by DosLynx since version 0.22 beta.
README.HTM
The HTML equivalent of this file.
README.TXT
The text equivalent of this file.
 

Installing DosLynx

This section assumes that you have not already installed DosLynx version 0.29 beta on your hard drive. If you already have, you may skip this section.

Obtain a copy of DosLynx and place it in an appropriately named directory on your hard drive.

C:\DOSINET>PKUNZIP DLX29BIN.ZIP
from your DOS prompt in the directory in which you placed it.

The supplied files should be written into the directory. You may now remove the DLX29BIN.ZIP file from the directory if you wish by entering the command
C:\DOSINET>DEL DLX29BIN.ZIP

DEHEAD requires no particular installation attention. However, if you choose not to include your DosLynx directory in your PATH environment, you may want to copy DEHEAD.EXE to a directory that is listed in your PATH. So you'll have it handy at all times.

Configuring DosLynx

If you want to use DosLynx for surfing the Web, you'll need an Ethernet Card and Packet Driver software for it. Or, a dial-up modem and Ethernet Packet Driver emulating PPP software for it. If these things are new to you, consult tvdog's classic papers at the oldskool Web site. Most of tvdog's papers are actually provided from the oldskool ftp site. Beginning with version 0.25 beta, all of the problems the DosLynx ftp client previously experienced in accessing that site have been resolved. As long as the mss=1500 specification given in DOSLYNX.CFG is not changed.

Fred's DOS Hardware How To expands on tvdog's discussion of the problem of finding a modern dial-up modem compatible with DOS software. And, Fred's DOS Internet Software How To provides links to two popular Ethernet Packet Driver emulating PPP software packages. Fred also has tips and links for PC dial-up modem and serial port configuration and checking.

Once you have decided on your communications arrangement and determined the needed TCP/IP parameter(s), edit the DosLynx configuration file, named DOSLYNX.CFG, with any text editor. Go through each keyword and provide the appropriate value. Ample configuration instructions are included in the sample configuration file supplied. Once finished, save the modified file as ASCII text. If you wish to save your Hotlist, which you've used with an old version of DosLynx, make sure you don't overlay it with the new one from the release package. If necessary, simply change the hotlist= specification in the configuration file to point to your old Hotlist file.

If you expect to be receiving at least an occasional graphic file, you'll want to tailor DLXVIEW.BAT to your situation. DosLynx will call it whenever you receive or reference a .BMP, .GIF, .JPG, .PCX, or .TIF file, with the full name of that file. You specify the name of your graphics viewer and any additional parameters it needs in DLXVIEW.BAT.

If you have an 8088 based PC with a Hercules monochrome graphics adapter, you may have to dig deep to find a viewer that can display .JPGs. Two that work fairly well (though, slowly on older machines) are DMGIF v1.2 and 2SHOW v2.04. These are both shareware viewers.

If you have a '286 based, '386 based, or more recent PC and/or a CGA, EGA, VGA, or more recent video adapter, you'll find progressively more viewers to try out. One that works well for limited machines with at least a CGA adapter is LXPIC v7.3. LXPIC is a freeware viewer. The sample DLXVIEW.BAT file provided invokes LXPIC on a machine with an SVGA card. Once you have your DLXVIEW.BAT working well, you'll probably want to put a copy of it in a directory listed in your PATH environment variable.

Environment Settings

DosLynx refers to several DOS Environment variables to augment its configuration information. You manage these by means of the DOS SET command.

C:\DOSINET>SET
will display all of your specified Environment variable settings, if any. Once you've decided how you want to specify these variables, you may add SET commands for them to your AUTOEXEC.BAT file. For example:

SET TMP=C:\WIN95\TEMP
SET TZ=EST5EDT

DosLynx refers to the following DOS Environment variables:

COMSPEC
DosLynx refers to COMSPEC when it needs to know the full PATH and name for your shell or command interpreter. This is needed when "shelling out to DOS" and when invoking DLXVIEW to display a graphics file. COMSPEC may be altered by means of a SET command, as explained above. However, it usually gets set as a side effect of a SHELL= line in your CONFIG.SYS file. If COMSPEC is unspecified, DosLynx will use: command.com .
 
HOME
DosLynx refers to HOME when accessing documents or files via ftp. HOME may be used to specify the first directory in DOS PATH(s) that provide local mirror(s), on your system, for other ftp sites. The DOS PATH(s) developed are as follows:
 
home/WWW/ftp/host/path
 
Where: home is the value of the HOME Environment variable, and ftp, host, and path come from the ftp://host/path URL being accessed. These DOS PATHs get delivered to DOS Interrupt 0x21 functions 0x4300 (Get File Attributes) and 0x3D (Open File with Handle) calls. In at least some versions of DOS, these functions don't mind treating those (forward) slashes the same as back slashes.
 
If HOME is unspecified, DosLynx will use /tmp for the home portion of the DOS PATHs shown above. ftp:// . . . URLs will get accessed via TCP/IP, as expected, if any part(s) of their DOS PATHs, developed as shown above, are missing on your system.
 
TMP
DosLynx refers to TMP when developing temporary file names. It attempts to develop names that don't duplicate any of the file name(s) already present in the directory given by TMP. Though it seems to duplicate the tempdir= configuration file option, you normally assign the complete path and name of your temporary directory, without a trailing back slash, to TMP. An example is given above, near the beginning of this section.
 
TZ
DosLynx refers to TZ to determine the time zone offset field it adds to the end of the Date: . . . header line on each email that you send. Beginning with DosLynx v0.27b, the TZ Environment variable is expected to have an EST5EDT style value. More generally, this will be a value of the form: tzn[+/-]h[h][dtn]
 
Where:
 
tzn is a three character abbreviation for your Time Zone's Name.
 
h or hh is the difference between Greenwich Mean Time and your time zone's standard time, in Hours. This value is negative for time zones east of Greenwich.
 
dtn is an optional three character abbreviation for your Daylight saving Time zone Name. Specify this part only if your time zone makes a one hour shift, for the summer, on a schedule matching that used in the United States. On this schedule, clocks are advanced an hour on the morning of the first Sunday of April, each year. And, they're set back an hour on the morning of the last Sunday of October, each year. If dtn is present, DosLynx will adjust the time zone offset field it develops, accordingly, while daylight saving time is in effect. If you have a daylight saving time shift that doesn't match the U.S. schedule, you'll have to leave dtn out of your TZ value. Then, you'll have to adjust your SET TZ= command twice a year, when you change your local time.
 
If TZ is left unspecified, the time zone offset field will be developed as if TZ=EST5EDT were specified.
 
USER
DosLynx may refer to USER when accessing an ftp:// . . . URL that doesn't include a userid field. That is, when accessing a simple ftp://host/path style URL. In this case, if the ftp host requests a user id, DosLynx will respond with a USER anonymous command. And, if the ftp host requests a password, DosLynx will respond with a PASS user@ command. Where, user is the value of the USER Environment variable. If USER isn't specified, PASS WWWuser@ will be sent.
 
WWW_access_GATEWAY
DosLynx may refer to WWW_access_GATEWAY when accessing an access type URL. Where, access may be file, ftp, http, or news. For ftp and http type URLs, this only occurs if no matching proxy server is configured in DOSLYNX.CFG. (So, any ftp_proxy= and/or http_proxy= configuration option specified overrides any WWW_ftp_GATEWAY and/or WWW_http_GATEWAY Environment specification.) WWW_access_GATEWAY may be set to specify a proxy server in the same way that DOSLYNX.CFG's ftp_proxy= and http_proxy= configuration options do. If WWW_access_GATEWAY is found unspecified for the access type of the URL in process, the URL is accessed without using a proxy server.
 

Command Line Options

DosLynx has the following command line switches and options. Most of the command line options override an equivalent configuration file option named, in each case, below. All command line options are case insensitive except for some portion(s) of some URLs.
/B
This switch will hide the clock, socket activity, free temporary disk space, and free heap memory space numbers and the Messages window for the duration of the current DosLynx session. This option was added to provide a way to keep the screen uncluttered for blind users, as those changing numbers and messages cause some problems with screen readers. Other users may appreciate the uncluttered screen, too.
 
/U
This switch will hide the clock, free temporary disk space, and free heap memory space numbers for the duration of the current DosLynx session. As it doesn't do away with the socket activity number and the Messages window, /U operation seems much closer to normal operation than to /B operation. One reason for using the /U switch might be to avoid the sluggish performance that may result from having to use DosLynx with its temporary directory located on a drive with removable media. A drive such as a diskette or Zip drive. These drives may be slow to respond to the repeated getdfree( ) calls that DosLynx makes. DosLynx uses these calls to maintain the free temporary disk space number at the bottom of the display. That slowness is what may make DosLynx sluggish. Both /B and /U let DosLynx skip its getdfree( ) calls and avoid that sluggishness.
 
/P
This is the most important command line option. If you will be executing DosLynx from a directory other than the one you installed it in, you must use the /P option. /P specifies the directory in which DosLynx will find its configuration file DOSLYNX.CFG and the errorhtml file ERROR.HTM. If you installed DosLynx in the directory C:\DLX, then you should use the /P option as follows:
 
C:\DOSINET>doslynx /PC:\DLX

To avoid having to retype the /P option every time you use DosLynx, create a DOS batch file specifying the /P option and place the batch file in a directory specified in your DOS PATH environment variable. The supplied DOSLYNX.BA_ file provides an example of this technique. You may: COPY it into a directory on your PATH. RENAME it DOSLYNX.BAT. And, edit it for your situation. Once you have the /P option being specified routinely, you will be free to start DosLynx from any directory where you want to access or save files. That will greatly simplify your interactions with the local file dialogs.
 
/T
This option specifies the temporary directory where DosLynx will create its temporary files, overriding the tempdir= configuration file option. Note that this path should end with a back slash. If you decide to use the directory C:\TEMP as the place to store temporary files, then you may use /T in the following manner:
 
C:\DOSINET>doslynx /TC:\TEMP\
 
/V
This option tells DosLynx what text mode to begin in, overriding the textmode= configuration file option. /VLOW tells DosLynx to use the 25 row text mode. /VHIGH tells DosLynx to attempt to use the 43 or 50 row text modes available to EGA and VGA compatible video adapters. This setting may also be changed from within DosLynx, after you have started it.
 
/H
This option tells DosLynx if it should load the home page you specified in the configuration file. It overrides the loadhome= configuration file option. /HON tells DosLynx to load the home page on startup. /HOFF tells DosLynx not to load the home page on startup. /HOFF is forced if you also specify a URL on the command line.
 
/L
This option tells DosLynx how many loaded documents to keep in memory before it starts releasing the oldest unviewed file. This overrides the loaded= configuration file option. If decide you want DosLynx to keep the last 5 ready in memory, then you may use the /L option in the following way:
 
C:\DOSINET>doslynx /L5
 
/N
This option tells DosLynx if it should attempt network access. It overrides the networked= configuration file option. To turn off network access, use /NNO. To allow network access, use /NYES. When viewing local files "offline" without a network connection established, specify /NNO to forestall most networking error messages and timeout delays.
 
URL
This command line option is actually a URL that you would like DosLynx to load from the command line. It can be any valid URL that will fit within the 128 character DOS command line length limit. As long as it doesn't contain any special character(s) that have special meanings within DOS commands. Or, it can be a DOS path to a file. Or, simply, a filename within the current directory.
 
If you have a URL that is too long to be specified on the DosLynx command line or contains troublesome character(s), you need to take an indirect approach. You might enter your difficultURL as an anchor, into a short and otherwise empty somename.HTM file. That is, prefix your difficultURL with <A HREF=" . And, suffix it with ">visiblelinktext</A> . So that your somename.HTM file contains:
 
<A HREF="difficultURL">visiblelinktext</A>
 
Then, when you specify somename.HTM on the DosLynx command line, you will be provided with your visiblelinktext as a link to the difficultURL. There is no need for <HTML>, <HEAD>, nor any of the other trappings of a complete HTML file, within your somename.HTM file.
 
When a path or URL is specified on the command line, your home page will not be loaded unless you specify its path or URL, too. To have DosLynx load this document on startup, execute one of the following commands from the directory in which you installed DosLynx:
 
C:\DOSINET>doslynx readme.htm
 
C:\DOSINET>doslynx file:///readme.htm
 

Using DosLynx

DosLynx is a straightforward menu driven application.

A user has several ways to activate the DosLynx menu; pressing F10, pressing Alt plus one of the highlighted menu letters, and by a single left button mouse click.

Following are a listing of all menu entries or commands and their functionality. Menu titles and the appropriate menu choice are presented side by side with the '|' character as a separator.

File|Open URL...
Allows you to directly enter a URL. Once you've entered it, "press" the Open or Download button. (These buttons were introduced in DosLynx version 0.25 beta. Completing your entry with the Enter key is equivalent to pressing the Open button since it is the default button for this dialog. The Open button replaces the OK button previously provided.) DosLynx will attempt to load the specified URL.
 
If the Open button or equivalent was used and the specified document is presentable (such as an HTML or text file), the resulting view will be displayed in a new window. If the specified document is un-presentable (such as an .EXE file) or an image (such as a .BMP, .GIF, .JPG, .PCX, or .TIF file), DosLynx will prompt you for a local file name in which to save it. After an image has been saved, DosLynx will swap most of itself out of memory and invoke DLXVIEW to display it. After viewing, use the means provided by your viewer to exit from its display and return to DosLynx.
 
If the Download button was used, DosLynx will attempt to fetch the specified document or file and un-conditionally prompt you for a local file name in which to save it. This operation adds a prefix to the local file copy made. It is equivalent to the operation provided by the File|Save Source and Navigate|Download Selection menu entries described below. As described in the paragraph above, un-presentable files get saved in transparent local file copies even when the Open button is used. So, the Download button's main purpose is to avoid the refetch that otherwise would be needed to obtain a local file copy of a presentable document.
 
The File|Open URL... dialog's history contains the last few URL(s) that you've entered. It may also contain URL(s) entered on the DosLynx command line and, since DosLynx v0.29b, URL(s) pasted over from the Navigate|Go To and Navigate|Show Destination URL commands. From within the dialog, the down arrow key or mouse may be used to bring these item(s) into view. Any one of these history item(s) may then be selected, for priming the dialog's input line. Once primed, the input line may be used as is, or after editing.
 
File|Open Local...
Allows you to select a local file from an available DOS path. DosLynx will convert the file name into a URL and attempt to load the file. The specified file will be displayed in a new window or displayed by DLXVIEW as described above for the File|Open URL... menu entry's Open button. This dialog's history contains the last few DOS path(s) that you've entered. It may also contain DOS path(s) entered on the DosLynx command line. These history item(s) may be accessed and used as described above for the File|Open URL... menu entry.
 
File|Close
This menu item directs DosLynx to close the currently active window, so that it is no longer viewable on your display. (The Messages window may be brought back after being closed, however.) This command duplicates the Window|Close command. Closing a window designates the memory allocated to it a candidate for reuse. The Esc key provides a shortcut for closing the Messages window.
 
File|Save Rendering...
When selected, DosLynx will prompt you for a local file name in which to save the document in the currently active window. It will be saved as ASCII text, exactly as seen on your display. This menu entry may be used for saving documents containing MIME or UU encoded data. However, it isn't likely to be useful for saving documents containing yEncoded data.
 
File|Print Rendering...
When selected, DosLynx will prompt you for a DOS device to which to print the rendering. The appropriate DOS device to enter is the one to which your printer is connected, such as LPT1.
 
File|Save Source
DosLynx will attempt to refetch the document on display in the currently active window and prompt you for a local file name in which to save it. The local file copy will be prefixed with a <BASE HREF=" . . . "> HTML tag indicating where it came from. This enables all of the document's links to be reproduced, in full, when the local file copy of the document is displayed later. If the document is refetched via http:, the http server provided "headers" sent ahead of the document also will be placed in the local file copy. They will further document the file's remaining contents. The document, itself, starts following the local file's first blank line. An exception is made for the news:? URL. If that is the source of the document on display, nothing is added to the beginning of the local file copy made.
 
This menu entry may be used for saving documents containing binary, MIME, UU, or yEncoded data in a transparent fashion. If a "clean" copy of any document copied via this menu entry is desired, the local file copy written by DosLynx may be recopied with the DEHEAD utility provided. It will copy everything in a file after its first blank line. As news:? documents are clean to begin with, they won't need DEHEAD processing.
 
File|Dos Shell
DosLynx swaps most of itself out of memory unless shoswap=NO is specified in your DOSLYNX.CFG file. DosLynx then spawns your command interpreter so that you may take action, from a DOS prompt inside of DosLynx, without having to exit. Most DOS commands and programs will be accessible from this prompt. You also may issue driveletter: and CHDIR command(s) to change your current drive and directory. To simplify use of the DosLynx local file dialogs. However, you must refrain from loading a TSR or using the Packet Driver. (Though, you may be able to use the Packet Driver if DosLynx hasn't used it, yet. Or, you may be able to use another Packet Driver instance if you have already installed a Packet Mux..) If DosLynx is configured to use EMS for overlays and/or swapping, you must also avoid disrupting its EMS setup. After selecting this item, you should always EXIT the command interpreter, to return to DosLynx, after you are finished. (If shoswap=NO is specified in your DOSLYNX.CFG file, a lack of sufficient free memory may prevent you from successfully running the command(s) you issue. An extreme lack of free memory may even prevent DosLynx from successfully spawning your command interpreter.)
 
Beginning with version 0.24 beta, DosLynx itself may be safely invoked from a DOS prompt inside of an already running instance of DosLynx. In this case, DosLynx won't remove any DosLynx temporary file(s) it finds at the beginning of its run. And, it will issue a reminder message to this effect. This usage may be of some value for performing local operations, which might be prevented by a lack of memory in the original DosLynx instance. However, you won't have any additional access to the Packet Driver without a Packet Mux. arrangement, as explained above. In the absence of a good reason for running another instance of DosLynx, it will always be better to return to your original DosLynx session by EXIT(ing) the command interpreter.
 
File|Exit
This is the intended way for you to end your DosLynx session.
 
Navigate|Find...
Allows you to enter a Search String that DosLynx will find in your currently active window. Beginning with DosLynx version 0.24 beta, this dialog provides both "Loose Find" and "Exact Find" buttons. These initiate searches that uses either case-insensitive or exact matching.
 
Navigate|Find Again
DosLynx will search for the next occurrence of the last Search String entered to the find command. The search will continue using loose or exact matching, as specified when the last Search String was entered.
 
Navigate|Next Anchor
This will move an internal anchor cursor to the next selectable anchor or Form control or object in the active window. If the anchor is a reference or link containing a destination URL, or a Form control or object that isn't hidden, it will be highlighted. The highlight will go out if you move to an anchor that is only a name or label or to a hidden Form control or object. The Tab key, the J key, and the 2 keys all provide shortcuts for this menu function. This command will only be active when the document on view, in the active window, contains one or more anchor(s) or Form control(s) or object(s).
 
Navigate|Previous Anchor
This will move an internal anchor cursor to the previous selectable anchor or Form control or object in the active window. If the anchor is a reference or link containing a destination URL, or a Form control or object that isn't hidden, it will be highlighted. The highlight will go out if you move to an anchor that is only a name or label or to a hidden Form control or object. The Shifted Tab key, the K key, and the 8 keys all provide shortcuts for this menu function. This command will only be active when the document on view, in the active window, contains one or more anchor(s) or Form control(s) or object(s).
 
Navigate|Reload Current
This entry or command provides for refreshing the present view. It is used to bypass the cache's operation when the present view is found to be defective or stale and needs to be reloaded. Beginning with DosLynx version 0.26b, caching improvements have closed loopholes that allowed anchor following to provide a refresh, in some cases. At the same time, this command's previous deficiencies were resolved. Your most frequent need for this command may come whenever a lack of memory keeps DosLynx from completing its presentation of a new document. If you have followed a link, the linked-from document will have been freed or removed from memory. So, this command may then be able to reload the present document, in its entirety. If the present document is from a local file beginning with a <BASE HREF= . . . > HTML tag, an attempt will be made to load it from its original source. That source is indicated on the window's top line. The resulting view replaces the present view in the cache and the currently active window.
 
Navigate|Download Selection
This is like File|Save Source except that the document to be saved in a local file is named by the destination URL of the currently selected anchor or Form Submit Button control. Use this menu entry or command when you are about to link to a presentable document you know you'll want to save. This will save you the refetch that will be needed if you should first simply follow the currently selected anchor. This command may be indispensable for capturing the response to a Form's submission. Also, it is recommended for saving documents, such as news: documents containing yEncoded data, known in advance to require transparent handling that they won't get by default. For URLs other than news:?, the local file copy that DosLynx writes is prefixed with a header that ends with a blank line. This is explained in more detail, for the File|Save Source menu entry, above.
 
This menu entry need not be used to obtain a clean local copy of a file, such as an .EXE, that isn't presentable. Simply activating the currently selected anchor will accomplish that. However, if a clean copy of any document already copied via this menu entry is desired, the local file copy written by DosLynx may be recopied with the DEHEAD utility. It will copy everything in a file after its first blank line. Downloaded news:? files get written without a prefix and won't need DEHEADing.
 
Navigate|Activate Anchor
This menu entry acts on the currently selected anchor or Form control or object in one of several ways. The Enter key, the L key, and the 6 keys all provide shortcuts for this menu function. 
 
For anchors, causes DosLynx to attempt loading the anchor-specified destination URL. URL loading is performed as described above for the File|Open URL... menu entry's Open button. Except that when the specified document is presentable, its presentation replaces the present view in the currently active window. Any Form content or data that has been entered into the replaced view gets lost at this point.
 
For Form password and text line input objects, invokes a line input/editing dialog. This line input/editing dialog will be provided with a Submit Button when the containing Form lacks a Submit Button control. For Form textarea objects, invokes a memo input/editing dialog. For Form select input objects, invokes a list box input selection dialog. For Form checkbox and radio button objects, causes DosLynx to toggle the object's state, if possible. (Radio buttons only respond when they're in the unpushed or unset state. When a radio button does respond to activation, it replaces the already pushed button, in the same group, that then gets popped back out.) For Form submit and reset button controls, the labeled action gets performed. That is, the Form's content or data gets submitted or reset.
 
Form content or data submission is like URL loading in that a document is expected in response. However, it differs with respect to where the response document is presented and what happens to any Form content or data that has been entered into the current document. The document obtained in response to Form content or data submission is loaded exactly as described above for the File|Open URL... menu entry's Open button. That is, when this document is presentable, it is presented in a new window. This allows the Form content or data that has been entered into the submitted document to be preserved in what becomes the previously active window.
 
The Navigate|Activate Anchor command will not be active when the document on display in the currently active window contains no anchor(s) nor Form control(s). This will be the case for text files and a few (usually short) HTML documents. (ERROR.HTM provides an obvious example.) Also, it will not be active when the currently selected anchor carries no destination URL. Or, when the currently selected Form object is one that is "hidden".
 
Navigate|Prior Document
This will cause DosLynx to attempt to return to the last visited presentable URL, if any, in the currently active window. The H key and the 4 keys all provide shortcuts for this menu function. This command will only be active when there are one or more Prior Document(s) associated with the currently active window.
 
Navigate|Go To
This command was added to DosLynx in version 0.29b. It provides you with a list of the URL(s) that have been presented and are still pending in the currently active window. You may select any one of the listed URL(s) to be operated on by one of the dialog's push buttons. The Go Back button takes the currently active window back to the selected URL, as if the Navigate|Prior Document command had been used as many times as necessary to return to it. The Go Back button will save time when there are intermediate view(s) that you don't care to revisit. The Go Again button presents the selected URL in a new window. Just as if it had been entered into the File|Open URL... menu entry or command. The Paste button copies the selected URL into the File|Open URL... dialog's history. From there, it may be edited and/or presented in a new window or downloaded.
 
The Navigate|Go To command displays only the first 250 characters of longer URLs. And, that length limit is enforced by the Paste button's operation. However, the Go Back and Go Again buttons operate on an unlimited internal copy of the selected URL. So, they may be used without concern for the selected URL's length.
 
Navigate|Search Index...
Some HTML documents provide interfaces for searchable indexes. These documents contain the HTML <ISINDEX . . . > tag and are known, somewhat imprecisely, as "searchable documents". To request a search of the index associated with the currently active window's present document, select this command. In turn, you'll get a simple dialog for entering your search string. This command will only be active if the currently active window's present document provides an interface to a searchable index.
 
The Navigate|Search Index... command complements or contrasts with the DosLynx Navigate|Find . . . commands. The Search command's search is performed, by the document's server, upon an index or database that it maintains. Meanwhile, the Find commands' search is performed, by DosLynx itself, upon the loaded document.
 
Navigate|Show Destination URL
This selection reports on the type of, and the destination URL specified by, the currently selected anchor or Form control or object. The first line of this command's report contains a brief description of the selected object's type. In the case of a document such as a text file that contains no selectable object(s), Object Type:  none will be reported. In the case of an anchor selection that has no destination URL, Object Type:  Label will be reported. For Form controls which consist of or include a Submit Button, the first line ends with an indication of whether a GET or POST request will be used for Form submission.
 
The remainder of this command's report displays a destination URL, a destination URL equivalent, or destination URL-like internal data. For anchors or Hyperlinks, this is a destination URL. For Form control objects which consist of or include Submit Buttons, this is a URL equivalent composed of the Form's present data content appended to the <FORM tag's ACTION= . . . URL. This is the URL that will be transmitted if the Submit Button should be activated. Except, for Submit Buttons using a POST request, the indicated URL equivalent will be split, at its last question mark character, into URL and data parts. For Form select input controls, this is a destination URL-like representation of the control's presently selected option. For other Form control objects, this is a destination URL-like representation of the control's initial data, if any.
 
Beginning with DosLynx version 0.29b, the Navigate|Show Destination URL command's dialog will include a Paste push button, whenever it has a URL or URL-like value to report. This button copies up to 250 characters from the beginning of the displayed URL into the File|Open URL... dialog's history. From there, the pasted URL may be edited and/or presented in a new window or downloaded. This dialog's other button(s) simply provide a variety of ways for dismissing the dialog.
 
Options|Toggle Low/High Text Mode
Allows you to switch back and forth between the default 25 line text mode and the 43 or 50 line text mode of EGA or VGA video adapters.
 
Options|Send Mail
Presents a dialog window for composing and sending a short e-mail note. Beginning with DosLynx v0.27b, the email window's To: line will accept a short list of comma separated email addresses. You are free to use leading or trailing space(s) around your email address(es) to improve the list's appearance. However, you need to keep the entire line to a length of less than 256 characters. The text of your note will have to be kept to a length of less than 4096 characters.
 
Window|Messages
This will cause the window containing all of the DosLynx messages to become the currently active window.
 
Window|Clone Window
Use this if you wish to create a duplicate of the currently active window and all of its views. The new window is expected to be the same in every respect except for window number and size. Any entered Form content or data present in the currently active window's present view will be maintained and should be faithfully copied into the new window's present view.
 
Window|Zoom In/Out
Use this command to switch a window to its maximum possible size. Or, to return it to its previous size, before Zoom.
 
Window|Resize
This command provides for adjusting the currently active window's size.
 
Window|Next
This command gives another window, from the list of open windows, a turn at being the currently active window.
 
Window|Cascade
Use this command to organize all open windows in a cascading arrangement on your display.
 
Window|Tile
Use this command to organize all open windows in a tiled arrangement on your display.
 
Window|Close
This command duplicates the File|Close command. It closes the currently active window, making the memory allocated to that window a candidate for reuse. Once closed, windows other than the Messages window become unviewable. The Esc key provides a shortcut for closing the Messages window.
 
Hotlist|View...
This command causes DosLynx to load the configuration file specified Hotlist file for easy access to anchors you've saved.
 
Hotlist|Add Current To Hotlist
This command will add the URL of the currently active window to your Hotlist file and then prompt you for a name or title by which to remember the URL. Once you've entered that name or title, the Hotlist file will be updated.
 
Hotlist|Add Link To Hotlist
This command will add the destination URL specified by the currently selected anchor to your Hotlist file. This provides a way to make a long term copy of content or data that has been entered into a Form being submitted. After you've completed the name or title dialog for the new entry, the Hotlist file will be updated. (You'll need to edit your Hotlist file with another program to remove any of its entries.)
 
Hotlist|Home Page
Use this command to open a new window with the configuration file specified home page loaded within.
 
Help|About DosLynx
Provides DosLynx version and authors information.
 
Help|Mail Developer
Use this command to send a suggestion or bug report to the developer of DosLynx, if you are connected to a network.
 
DosLynx also has many other ways of obtaining user input.

Most available hotkey or shortcut key equivalents are listed beside the menu choices in the DosLynx menus.

In addition to the listed keys, you can use Tab and Shifted Tab, the UNIX vi keys (hjkl), your numeric keypad with Num Lock ON, or the top row numeric 2, 4, 6, and 8 keys for anchor navigation. Even though you have Num Lock ON, you interpret the numeric keypad keys in terms of the arrows they also carry. This differs from the version 0.7a release of DosLynx that allowed the user to use the Lynx arrow keys for anchor navigation. That is no longer supported. The off-keypad arrow keys are now reserved for scrolling, only.

The numeric keypad's End, Page Down, Home, and Page Up keys (with Num Lock ON), the top row numeric 1, 3, 7, and 9 keys, the off-keypad Page Down, Page Up, and arrow keys, and the space bar all allow you to look through a document that is longer than your display. The off-keypad Page Down, Page Up, End, Home, and arrow keys provide for scrolling within list box input control dialogs. Esc allows you to close the Messages window and cancel other dialog windows. It isn't accepted in the document presentation window(s), however. Enter pushes the default button in most dialog windows. Space pushes the selected button in all dialog windows. Finally, Alt-n, where n is an open window number digit, from the keyboard's top row, quickly makes window n the currently active window.

If you use a mouse with DosLynx, you can select an anchor by using a single left button click. And, you can activate an anchor by using a double left button click. Prior to DosLynx v0.27b, a special case arose when attempting to select an inline image which also had a destination. That is no longer an issue. See the Special Notes section.

Items contained in the status bar (the bottom line of your screen while running DosLynx) are selectable by the mouse only but correlate directly with items in the Navigate menu. These items will be bright or dim to indicate whether the indicated menu entries or commands are currently available or active, or not. In addition, the right mouse button is the same as issuing the Window|Clone Window command.

Special Notes on Usage

As of the DosLynx v0.22b release, only the following URL types are supported:
	file
	ftp
	http
	mailto
	news
 
Prior to DosLynx v0.27b, when attempting to select an inline image with a mouse, you might not have gotten what you expected. Some inline images also have destinations, in which case you would be taken to that destination. You needed to use the keyboard to select an inline image which also had a destination. Starting with DosLynx v0.27b, such nested inline images are given their own visible place holders. That allows their access via the mouse, just like unnested inline images.

For best DosLynx performance, specify the temporary file directory in your configuration file or on the command line to be a directory on a RAMDRIVE. But, only consider this if you have at least two MB of EMS or XMS memory available. If you have only a relatively small quantity of EMS or XMS memory available, remember that DosLynx v0.29b can make good use of up to about 300 KB (19 EMS pages) of this memory, for holding its overlays, without a RAMDRIVE. Specify the ems= and/or xms= configuration options to enable this usage. Also, if you have EMS or XMS memory available, DosLynx will be able to use over 500 KB more of that, without a RAMDRIVE, when it swaps itself out of standard memory for running DLXVIEW or DOS commands. DosLynx is able to run successfully, though somewhat slowly, without any EMS or XMS memory available. See your DOS documentation for setting up a RAMDRIVE specific to your system.

DosLynx is a multiple document interface (MDI) application. This may confuse new users that are used to other World Wide Web clients. As a rule of thumb, when you open any presentable URL or document through DosLynx's File|Open URL... (using its Open button) or File|Open Local... menu items or equivalent hotkeys, or by Form submission, then it will be presented in a new window. The first nine windows are numbered in their upper right corners. You can switch among these windows by pressing the Alt key and the window number simultaneously. All windows can be reached via the Window|Next menu entry or its F6 key shortcut.

Each open window usually represents at least one open temporary file. If you open more windows than you have FILES specified in your CONFIG.SYS file, DosLynx will shut down. If you have at least FILES=20 specified, however, this probably won't be a problem. Because you'll tend to run out of memory at about the same time as you hit the open FILES limit. So, make sure you have at least FILES=20 specified in your CONFIG.SYS file. There may be little to be gained from specifying more than FILES=20, without taking additional measures.

When DosLynx has used most of your computer's memory, attempting to use the File|Dos Shell command will not work if DOSLYNX.CFG contains shoswap=NO. Your computer simply does not have enough memory to execute your command interpreter. By default, shoswap=YES, enabling DosLynx to swap most of itself out of memory to avoid this problem.

When you ftp a file or activate an anchor that DosLynx cannot display as text, you are asked to give a file name to save the information in; a filename is now suggested by DosLynx. These files are not removed by DosLynx when you exit the application. This allows you as the user to do what you will with such files after exiting DosLynx. However, presently, DosLynx does not consider existing files in making its suggestion. If you are prompted to save a file that is already on your hard drive (such as a local image), consider using another name before letting the file you already have be over-written.

When DosLynx terminates unexpectedly, the temporary files it has opened may remain in the temporary file directory you specified in the configuration file or on the command line. The temporary file names follow the pattern of DLX*.$$$. You no longer have to remove these files yourself unless you are very low on disk space, however. Beginning with version 0.20 beta, DosLynx removes any of these files it finds, at the beginning of each run, to keep them from accumulating.

Beginning with version 0.24 beta, there is an exception to the preceding rule. DosLynx now checks to see if another instance of DosLynx is already running. (That will be the case if you run DosLynx while shelled out of DosLynx to a DOS command prompt.) If so, it refrains from removing any temporary file(s). That restraint is necessary to keep from destroying the already running instance of DosLynx! DosLynx issues a reminder message when it decides not to remove any temporary file(s).

If you are wondering, the menu bar contains the current time in the upper right hand corner. In the status bar are three numbers in the lower right corner. These numbers are, from left to right: The current network activity in bytes. The free space in bytes on the temporary drive you specified. And, the amount of available heap memory in bytes. These were originally run-time debugging tools for the developer of DosLynx. They were left in as they are now harmless and give the user useful information on what is happening when DosLynx is at work. They can be turned off with the /B command line option, if desired. The /U command line option also turns off the rightmost two of these three numbers.

To force DosLynx into a supported black and white video mode, type
C:\DOSINET>mode BW80
at your DOS prompt. Consider doing this if you monitor is black and white but DosLynx considers it a color monitor (monochrome EGA monitors). Anchor text, selected anchor text, and text located by the Navigate|Find . . . commands should all be distinguishable from normal text and each other, on your monitor. If that isn't the case, take a look at the contrast= configuration value added to DosLynx in version 0.29b. It should be able to provide you with a display attribute table selection that provides the needed contrasts, with your monitor. Use of the contrast= configuration value is explained by extensive comments in the DOSLYNX.CFG file.

If you have an older (read: slower) PC, you'll probably wish for better performance from DosLynx from time-to-time. Here are a few more things you can do to speed it up:

Forgo a Home File
Use loadhome=OFF in DOSLYNX.CFG, /HOFF on the command line, or give the home= configuration option the name of a short or empty file. This will save the time needed to display INFO.HTM each time you start DosLynx.
 
Remove All the Comments From DOSLYNX.CFG
Once you are satisfied with your configuration and are sure that you have backup copies of it, go through DOSLYNX.CFG and remove all of the comment lines. Again, this will save time each time you start DosLynx.
 
Keep the Directories You Use Frequently Short
DosLynx can take a few seconds to develop the local file dialog box on a PC-XT when the present DOS directory contains hundreds of entries. If you can keep the directories you use the most relatively short, you'll save time each time you invoke a local file dialog.
 
Don't Configure debugen=ON
If DosLynx is slow in shutting-down, make sure you don't have debugen=ON specified in DOSLYNX.CFG.
 

New DosLynx Features

The following new features have been added to DosLynx, in releases beginning with DosLynx version 0.20 beta:
<BASE HREF= . . . > tags
DosLynx now honors these tags when they appear in HTML. They are also provided to local files written by the File|Open URL... (with its Download button), File|Save Source, and Navigate|Download Selection menu entries. These provisions enable relative URLs to be properly reproduced when the local files are later viewed.
 
<META . . . > tags
DosLynx is now also displaying many of these tags when they appear in HTML. <META HTTP-EQUIV=REFRESH CONTENT= . . . > tags specifying URLs are now treated like anchors, too. Beginning with DosLynx v0.26b, a showmetas= configuration option controls the display of most <META . . . > tags, along with two other forms of meta content. These things are described in some detail by comments in the provided sample DOSLYNX.CFG file.
 
Temporary Files
At startup, DosLynx will now remove any of its own temporary files that it finds abandoned in the configured temporary directory. Beginning with DosLynx v0.24b, this action will be withheld when DosLynx detects another instance of itself already running. In that case, a reminder message will be issued.
 
Unexpected Shut Downs
DosLynx will now pause to give its user 15 seconds to read its final messages before exiting.
 
Swap Out for Graphics Viewing and Escape to DOS Shell
DosLynx will now swap most of itself out of main memory, to XMS or EMS memory or a temporary file, before invoking DLXVIEW to display a graphic file. If shoswap=NO is not configured, DosLynx also will swap most of itself out of main memory, to XMS or EMS memory or a temporary file, before shelling out to DOS. The shoswap=NO configuration option is mainly a debug tool.
 
Intra-Session History Added
The present view's current top line and currently selected anchor will be noted when an anchor is activated. i.e.: When a link is followed. Upon return, or a linked-from view's reinstatement, the noted top line position and anchor selection will be restored to the reinstated view.
 
debugen= Configuration Option Added
The debugen= configuration option enables heapcheck(ing) while DosLynx shuts down. heapcheck( ) discovers heap corruption resulting from certain kinds of software errors. Configuring debugen=ON may help to avoid crashing during shut-down. However, it is a luxury that probably isn't affordable on slower PCs. (Shut-down can take as long as 45 minutes on a PC-XT with debugen=ON!) Beginning with DosLynx v0.24b, the debugen= configuration option also enables a detailed trace of the DosLynx/server dialog that occurs during a DosLynx ftp access. This may help you discover what is going wrong if and when an ftp access fails repeatedly. The default value for debugen= is OFF. Possible values are OFF and ON.
 
Messages Window Now Pops Up Over ERROR.HTM
Beginning with DosLynx v0.22b, the Messages window will pop up over ERROR.HTM whenever it is presented as the result of a problem. This saves you from having to fumble around to see your messages after a problem has been encountered. The Esc key now provides a one key way to dismiss the Messages window.
 
DEHEAD Utility Now Provided with DosLynx
Beginning with DosLynx v0.22b, the DosLynx release package includes the DEHEAD utility program. It provides for removing the headers that DosLynx adds to the local copies of files written via the File|Open URL... (with its Download button), File|Save Source, and Navigate|Download Selection menu entries. It will copy everything in a file after its first blank line.
 
NEWSURLS.HTM Now Provided with DosLynx
Beginning with DosLynx v0.22b, the DosLynx release package includes a description of the news URLs that DosLynx accepts, in NEWSURLS.HTM.
 
Forms Support Added to DosLynx
DosLynx v0.24b brought an initial installment of Forms support. Implemented, here, are the HTML <FORM METHOD=get . . . and <INPUT . . . tags -- for input TYPEs checkbox, hidden, password, radio, reset, submit, and text.
 
DosLynx v0.25b brought two more Form input controls. These support the HTML <SELECT . . . and <INPUT TYPE=image . . . tags. (The former supports neither MULTIPLE nor SIZE= attributes. The latter is implemented as a combination of an HTML <IMG . . . tag and an <INPUT TYPE=submit . . . tag. It doesn't provide any cursor coordinate data.)
 
DosLynx v0.27b brought support for the HTML <TEXTAREA . . . tag or Form input control.
 
DosLynx v0.28b brought support for the HTML <FORM METHOD=POST . . . variation, at last. You should now find that you have full read/write access to many of the Web's numerous Forum type sites.
 
News Client Support for yEncoded Data
Beginning with DosLynx v0.24b, the File|Save Source and Navigate|Download Selection menu entries will provide transparent handling for news: documents containing yEncoded data. The File|Open URL... menu entry's Download button, added in DosLynx v0.25b, will provide this transparent handling, as well.
 
Loose Find Added to DosLynx
Beginning with DosLynx v0.24b, the Navigate|Find... dialog will provide two push buttons for starting a search. An "Exact Find" button will provide a search using exact matching. This is the only mode previously offered. In addition, a "Loose Find" button will now provide a search using case insensitive (loose) matching.
 
swapmem= Configuration Option Added
Beginning with DosLynx v0.24b, the swapmem= configuration option will determine whether or not any access is made to EMS and/or XMS memory for swapping DosLynx out of standard DOS memory. This option is intended to provide a bypass for problem(s) encountered with the EMS and/or XMS services in some installations. swapmem= need not be configured unless one suspects they are having trouble in this area. (The symptoms of such a problem may be that DosLynx misbehaves when resumed after a swap out.) swapmem= is specified in terms of the memory services that SWAP is allowed to access. Possible values are: Both (same as default, starting with DosLynx v0.22b -- SWAP accesses XMS memory, and then EMS memory if necessary). EMS (SWAP accesses EMS, but not XMS, memory). XMS (same as provided in DosLynx v0.20b -- SWAP accesses XMS, but not EMS, memory). And, Neither (SWAP only accesses the disk).
 
HTML <IMAGE . . . tags
Beginning with DosLynx v0.24b, <IMAGE will be recognized in HTML as a synonym for the <IMG tag. This is necessary to support apparently non-standard HTML that is recognized by Internet Explorer and used at http://www.microsoft.com . For an example of this, see: http://www.microsoft.com/windows98/downloads/contents/wurecommended/s_wufeatured/win98se/
 
DHCP Client Support Added
Beginning with DosLynx v0.25b, my_ip=DHCP will be recognized in DOSLYNX.CFG for obtaining TCP/IP configuration information from a DHCP server. This has been implemented so as to avoid any change in the operation of the existing my_ip=BOOTP support, when that is configured. When my_ip=DHCP is configured, mss= must specify 576 or more or be allowed to default (to 1400). Comments in DOSLYNX.CFG provide more on these things.
 
File|Open URL... Download Button Added
Beginning with DosLynx v0.25b, the File|Open URL... dialog will contain a Download button, in addition to Open (formerly OK) and Cancel buttons. The new Download button provides for File|Save Source or Navigate|Download Selection type handling for directly entered URLs. The Open button remains the File|Open URL... dialog's default and operates just as the former OK button did.
 
Navigate|Go To Menu Entry Added
Beginning with DosLynx v0.29b, the Navigate|Go To command will provide for accessing or reusing all of the URL(s) visited and still pending in each open window. This command's dialog provides push buttons for the following three actions: Use the Go Back button to return to a selected URL. This allows one or more intermediate views to be bypassed, for saving time in returning. Use the Go Again button to open a selected URL in a new window. Or, use the Paste button to paste a selected URL into the File|Open URL... dialog's history. From there, the pasted URL may be edited and/or used for opening a new window or downloading.
 
Navigate|Show Destination URL Paste Button Added
Beginning with DosLynx v0.29b, the Navigate|Show Destination URL command will provide a push button for pasting the anchor it is reporting into the File|Open URL... dialog's history. That saves you from having to type in an anchor you want to edit for use.
 
Support for Monochrome Monitors Improved
A fourth display attribute table and the contrast= configuration option were added to DosLynx in version 0.29b. These provide improved contrast for what have been troublesome monochrome video adapters or monitors. See the version 0.29b DOSLYNX.CFG file for more information on the new contrast= configuration option.
 

Removed DosLynx Features

The following features were removed from DosLynx, starting at versions 0.20b, 0.22b, and 0.26b:
Gopher Support
Yep, sorry. It's been taken out.
 
Built-in .GIF Viewer
This has been replaced with the swap out and call to DLXVIEW described in several places in this document. (Use Navigate|Find... and specify DLXVIEW to find those places.)
 
Bugs, Crashes, Hangs, and Loops
Most of these have been taken out, too. You may still see some breakout( ) calls. But, each time you do, you'll be able to be thankful for not having to reboot DOS and redial your ISP!
 
wais Support
Yep, sorry. This one's gone, too.
 
Local Graphics File Copying
Beginning with version 0.26b, DosLynx no longer finds it necessary to copy local graphics files for the purpose of submitting them to DLXVIEW for viewing. This provides a noticeable performance improvement on older (read: slower) PCs. We trust this copying "feature" won't be much missed.
 

Distributing DosLynx

You may distribute DosLynx version 0.29 beta at your convenience so long that you distribute the original .ZIP file obtained by the means listed in the Obtaining DosLynx section of this document.

Credits

The University of Kansas would like to thank the following organizations and people for their aid in the creation of DosLynx.
	Generous financial assistance given by O'Reilly and Associates
		and Intel Corporation.
	World Wide Web Source Library by CERN
	Waterloo TCP by Erick Engelke
	FTP code from James W. Matthews, Dartmouth Software Development
	Borland C/C++ and Turbo Vision by Borland International
Further, The University by Kansas recognizes the following:
Borland C/C++ and Turbo Vision
Trademarks of and Copyright by Borland International.
World Wide Web Source Library
Copyright by CERN, Geneva, Switzeralnd.
Waterloo TCP Library
Copyright by Erick Engelke.
FTP code
Portions Copyright 1994 Trustees by Dartmouth College.
Fred C. Macall, maintaining DosLynx since 2002, gratefully acknowledges the contributions of its original author, Garrett Arch Blythe. I am also grateful to Wayne S. Buttles who worked on DosLynx in 1996 and passed the baton in SRC_16A.ZIP. DosLynx now incorporates SWAP.ASM, which you'll see performs admirably. It contains the following notice:
Copyright (C) 1990 by Marty Del Vecchio

Last Modified: by Fred C. Macall
30 June 2005.

Report errors to the address shown in this graphic.