DosLynx version 0.38b brings https/SSL support in its 32-bit Protected Mode variation or version, DosLynxS, at long last!
All three DosLynx variations or versions have been extended to include:
Support for 23 more Unicode characters in UTF-8 encoded documents.
Support for hexadecimal numeric character references in all documents.
An extended DHCP "discover message". And, recognition of .DOC and .PNG
file types. Both DosLynx Protected Mode variations or versions also have
been extended with WATTCP "sock_setbuf( )" support, to speed downloads on
newer (read: faster) PCs. Also, a DosLynx-centric version of TCPINFO has
been added to the Traditional DosLynx v0.38b Package.
These enhancements, together with a few other bug fixes and user interface
improvements, again make DosLynx v0.38b the most enjoyable to use and
strongest running version(s) of DosLynx, ever!
The new https/SSL support is provided by linking the DosLynx 32-bit Protected Mode version with an OpenSSL v0.9.8e installation or library made for DosLynx with DJGPP tools. OpenSSL is available from http://www.openssl.org . I have adapted one of Mark Mentovai's lynx-ssl patches to DosLynx, to provide the detailed DosLynx/OpenSSL interface. These lynx-ssl patch(es) now seem to be gone from Mark's Web site. However, they live on in mirror site(s) such as: http://mirror.optus.net/sourceforge/m/ma/math-linux/lynx-282-ssl.patch
You'll see that, in comparison with the DosLynx v0.36b 32-bit Protected Mode version, the size of DosLynxS has nearly doubled! This increase indicates how much new software is required to provide the https/SSL function. DosLynxS now requires a PC with at least 5 MB of RAM, in order to reach its full potential. However, it should still be able to provide 1.2 MB to 1.4 MB of memory for data on a 4 MB PC. Whether this support can ever be practical for either of the DosLynx 16-bit versions remains to be seen.
If your PC doesn't have a "Numeric Processing Extension" or float arithmetic unit, you'll need to keep a copy of EMU387.DXE in the directory that contains DOSLYNXS.EXE. This is needed for providing float arithmetic for some of the OpenSSL functions. Beginning with version 0.38b, EMU387.DXE will be included in the DosLynx Protected Mode Add-On Package.
An unresolved issue, with the new https/SSL support, is that it doesn't work with QEMM's QDPMI DPMI service, on my older PCs with pre-Pentium (i.e.: '386 and '486) processors. If you have QDPMI.SYS in your CONFIG.SYS file and run into this issue, you'll need to either remove it or command QDPMI OFF before using DosLynxS to access https URL(s). With that done, DosLynxS automatically will use CWSDPMI.EXE (provided in the DosLynx v0.38b Protected Mode Add-On Package) for its DPMI service.
DosLynx v0.38b includes support for 23 more Unicode characters not included in the ISO-8859-1 character set. These are characters provided from previously neglected lower reaches of the PC's Code Pages. That is, displayable characters mapped over the ASCII control characters in PC compatible systems. Together with a few more approximations for Unicode characters similar to apostrophe, quote, and some others. These characters combine with the nine extra characters first supported in DosLynx v0.35b, to make a total of 32 extra characters. All of these extra characters will be recognized in UTF-8 encoded documents. And, as numeric references, in documents with ISO-8859-1 or other encodings. I've provided a table of all these extra characters below.
(Seeing the entire ISO-8859-1 character set properly depends on having your display and/or printer arranged to use PC Code Page 850. See the Code Page 850 Cook Book section of the DosLynx README document for information on making these arrangements.)
This release of DosLynx still isn't intended to be definitive in its handling of UTF-8 sequences for unsupported characters. Or, invalid UTF-8 sequences. If you have any idea(s) about these things, I hope you'll let me know about them.
Here is a table of the 32 extra Unicode characters which DosLynx now supports. This table is given in the style of: Martin Ramsch - iso8859-1 table. In order to provide the "Char" column in this table, I have had to deviate from my usual practice of leaving this document's charset unspecified (so as to default to ISO-8859-1). Instead, I have included an HTML <META HTTP-EQUIV= . . . tag specifying charset=UTF-8.
Description Char Code Entity name ================================= ==== ============= ============== (combining) grave accent ̀ ̀ --> ̀ greek small letter beta β β --> β EN dash – – --> – – --> – EM dash — — --> — — --> — left single quotation mark ‘ ‘ --> ‘ ‘ --> ‘ right single quotation mark ’ ’ --> ’ ’ --> ’ left double quotation mark “ “ --> “ “ --> “ right double quotation mark ” ” --> ” ” --> ” bullet • • --> • • --> • horizontal ellipsis … … --> … … --> … prime ′ ′ --> ′ double prime ″ ″ --> ″ reversed prime ‵ ‵ --> ‵ reversed double prime ‶ ‶ --> ‶ single left-pointing angle quote ‹ ‹ --> ‹ single right-pointing angle quote › › --> › double exclamation mark ‼ ‼ --> ‼ Trade Mark sign ™ ™ --> ™ ™ --> ™ leftwards arrow ← ← --> ← upwards arrow ↑ ↑ --> ↑ rightwards arrow → → --> → downwards arrow ↓ ↓ --> ↓ left right arrow ↔ ↔ --> ↔ up down arrow ↕ ↕ --> ↕ black up-pointing triangle ▲ ▲ --> ▲ black right-pointing triangle ▶ ▶ --> ▶ black down-pointing triangle ▼ ▼ --> ▼ black left-pointing triangle ◀ ◀ --> ◀ black spade suit ♠ ♠ --> ♠ black club suit ♣ ♣ --> ♣ black heart suit ♥ ♥ --> ♥ black diamond suit ♦ ♦ --> ♦
-->
"what your browser does with it"
-->
"what your browser does with it"
÷ -->
÷
" in the 4th column, this means your browser
doesn't know about the entity name "divide" and just puts it
literally.
Hexadecimal numeric character references showed up in Section 5.3.1 of the HTML 4.01 Specification. These are sequences like &#xhhhh; or &#Xhhhh; , where hhhh are hexadecimal digits. They use a hexadecimal number to designate a character. Just as decimal numeric character references ( &#dddd; ) use a decimal number to designate a character. Hexadecimal numeric character references are showing up in documents from some Web sites, so I've added support for them to DosLynx v0.38b.
It seems that DosLynx has been having increasing difficulty getting the attention of newer routers and other devices that provide DHCP service. This seems to be the result of still evolving DHCP specifications. To bring DosLynx up to date, I've added three more "DHCP option" fields to its "DHCP discover" message. The added DHCP option fields are: Client-Identifier, IP Address Lease Time, and Vendor Class Identifier. These additions seem to have solved all DHCP issues with devices I've had available for testing.
A related problem has been that DosLynx provides only a go or no go indication of its DHCP result(s). To fill this gap, I've added a DosLynx-centric version of TCPINFO.EXE to the Traditional DosLynx v0.38b Package. This version of TCPINFO.EXE is made with the same WATTCP library used to make DosLynx. So, its BOOTP and DHCP results should match the results that DosLynx gets. It also has an added DLX option, which may be used to tell it to read DOSLYNX.CFG, rather than WATTCP.CFG. And, some reporting changes to make clear the distinction, in DosLynx, between BOOTP and DHCP. More information on this TCPINFO.EXE may be found near the end of the Installing DosLynx section of the DosLynx README.HTM document.
.DOC files have been added to the list of presentable documents. They will be handled like .TXT files. .PNG files have been added to the list of graphics files that trigger a call to DLXVIEW.
The DosLynx v0.38b Protected Mode variations or versions have been extended to provide an optional 24 KB TCP/IP packet assembly buffer, to the WATTCP kernel via its sock_setbuf( ) facility. This extra buffer has been found to greatly speed up downloads on newer (read: faster) PCs, with fast disk(s) and high speed communications. dnldbufs=0 configuration invokes this new option. The comments about dnldbufs= configuration, in the supplied sample DOSLYNX.CFG file, have been extended to describe this special option.
The Traditional DosLynx v0.38b Package contains DOSLYNX.EXE and all of its supporting files. This is the Real Mode version, recommended for all users. The DosLynx v0.38b Protected Mode Add-On Package contains DOSLYNXP.EXE (the 16-bit Protected Mode executable), DOSLYNXS.EXE (the 32-bit Protected Mode executable), my updated DPMIREVU.HTM document, and several other supporting files. It is recommended for users with systems that can provide DPMI service. That provision will be easy for DOSLYNXS.EXE, because those "supporting files" include CWSDPMI.EXE, an excellent 32-bit DPMI server. Both of these .ZIP files may be un-zipped into the same directory, without conflict.
There are a couple other readme files for DosLynx. One is the again updated README.HTM which still tells about the original features, command line parameters, and other important stuff. There is also a history file which describes the major changes I've made in bringing DosLynx from v0.36b to v0.38b. The history file also lists some known bugs or missing features. If you find one that isn't there, please e-mail me at the address in this graphic. Finally, Wayne S. Buttles has provided a little cheat sheet listing the key commands to run DosLynx from the keyboard. It includes ones he added. I've brought it up to date and added a second page listing the "DosLynx Control, Movement, and Navigation Keys".
Remember that you can navigate with your numeric key pad by putting Num Lock ON.
DosLynx no longer contains a built-in graphics viewer. That has been replaced with a swap out and call to DLXVIEW with a parameter naming the .BMP, .GIF, .JPG, .PCX, .PNG, or .TIF file to be viewed. You may edit DLXVIEW.BAT to invoke your favorite viewer. The Traditional DosLynx v0.38b Package contains a sample DLXVIEW.BAT which invokes LXPIC (requires CGA+).
As Wayne said: "I have enhanced DosLynx for my own personal enjoyment. . . . I am just releasing my changes to the general public in hopes that it will help some other DOS User. I have made every attempt to keep it compatible with the lowest IBM-Compatible computer so that the greatest number of people can benefit and I will continue to do so as long as I play with the code."
Good luck, and happy browsing.
Fred C. Macall
10 February 2009