[DosLynx Quick Start]   [DosLynx Complete]   [PMSMTP]   [PMPULL]
[CWS2FWS]   [YTCrack]   [DMCrack]
[DOS Hardware How To]   [DOS Internet Software How To]
[What To Do with a WinModem]

Fred's DOS Internet Software

I have to admit that, until sometime in 1999, I thought one needed a Windows or Unix or Linux system to connect with the Internet.

I knew that most of the early Internet software was first written for Unix. What I didn't realize at the time was that much of this software got "ported" to or rewritten for DOS. I now understand that Winsock was developed only after this had been going on for a few years. Of course, once Winsock(s) started working well, much of that porting from Unix was redirected from DOS to Windows.

Return with me now to those golden days of yesteryear . . .

Most DOS Internet software uses a Packet Driver. This may consist of an Ethernet adapter card's device driver. Or, it may be software emulating an Ethernet device driver while performing the PPP protocol through a serial port or modem. PPP is now universally used for dial-up Internet access. Connecting with the Internet from a DOS system is definitely a practical option that has been available for over twenty seven years.

The DOS Packet Driver interface is much lower level than the Windows Winsock interface. So, each DOS Internet application needs to make its own arrangements for a "stack" of TCP/IP protocol software. Many of the commercial suites of DOS networking applications made this arrangement by installing their proprietary protocol stack into DOS as a device driver or TSR. Other DOS internet applications simply incorporate a protocol stack within their own code. Many of these applications incorporate the WATTCP software stack developed and published in source form by Erick Engelke. Erick's software was working pretty well by 1993.
Investigate Erick's latest offerings.

Many of my DOS Internet Software offerings run on lowest common denominator 8088 based (and all later) IBM compatible PCs. Five of them are applications that use a built-in WATTCP stack. The sixth is an update of Russell Nelson's PLIP Packet Driver for parallel ports. The seventh is a small TSR needed to avoid a problem that occurs when INTERLNK is used in a PC which also uses PLIP. My eighth package contains two DOS ports of the Linux standalone BogoMIPS tool. The ninth is a DJGPP make of CWS2FWS. And, my tenth and eleventh offerings provide tools for obtaining YouTube and video.google videoplayback URLs and DailyMotion video URLs for/with a browser, such as DosLynx, that doesn't support scripts.

The base software requirements for these are DOS v3.x or later. A DOS Packet Driver or Packet Driver emulator, for the ones that use WATTCP. And, perhaps, some batch file "glue". That makes it easy to mix one's use of these applications with use of other applications that also incorporate a built-in protocol stack.

BogoMIPS, CWS2FWS, PMSMTP32, PMPULL, and the DosLynx Protected Mode variations or versions have some additional hardware and software requirements. The DosLynx 16-bit Protected Mode variation or version requires a '286 based (or, later) PC. The rest of these all require a '386 based (or, later) PC. All of these also require a DOS Protected Mode Interface (DPMI) service.

DosLynx v0.44b

"DosLynx is a World-Wide Web browser for users of MS-DOS platforms. DosLynx includes it's TCP/IP stack and is able to access the Internet either directly via an Ethernet or TokenRing, or indirectly via a dial-in SLIP or PPP connection."

"DosLynx is a product of the Distributed Computing Group within Academic Computing Services of The University of Kansas. DosLynx was originally implemented by Garrett Blythe."

"DosLynx is copyrighted by the University of Kansas and is free for non-commercial use. Commercial use will be licensed at a later date."

"DosLynx is no longer in development at the University of Kansas. Wayne Buttles of fdisk.com is currently providing some development and support. Please see http://www.fdisk.com/doslynx/ for more information about his work."
From the University of Kansas About DosLynx Web site.
(The quoted Web page was last seen, from KU, early in 2005.)
Here is a mirror of the page, from January 2000.

I started working with Wayne's last release of DosLynx (DosLynx v0.16a) over nineteen years ago. DosLynx now offers an almost new Clip View menu entry or command. And, the DosLynx 32-bit Protected Mode variation or version (DosLynxS) now supports https/SSL enabled Web browsing and secure (i.e.:  TLS/SSL) connections for its e-mail sending client. My latest DosLynxS release incorporates an almost new OpenSSL library, which enables it to access most of the Web's servers, again.

If your system can be equipped with a DOS Protected Mode Interface (or, DPMI) service, you will be able to run at least one of the DosLynx Protected Mode versions. Together with the DosLynx Real Mode version. The DosLynx Protected Mode versions have eight or nine times as much memory, as the Real Mode version, to work with. (Over 2 MB versus about 250 KB.) This extra memory virtually eliminates the inability to completely present some very large documents, still present in the Real Mode version. My document: dpmirevu.htm reports on DPMI services that have been tested with the DosLynx Protected Mode versions.

This is not your same old DosLynx. My latest release is designated: DosLynx v0.44b.
Visit my DosLynx Quick Start Home Page for more about DosLynx v0.44b.

See a Turbo Vision enthusiast's account of the origins of DosLynx.

Watch a video demonstrating DosLynx, prepared by Richard Savill.

Download the last release of DosLynx (DosLynx v0.8a, August 1994) available from the University of Kansas.

Download the last release of DosLynx (DosLynx v0.16a, September 1996) available from Wayne Buttles.

Download my first release of DosLynx (DosLynx v0.20b, June 2002), in a package with some extra batch file glue and utilities, available from John Lewis  VE3LGS.
If DosLynx is new to you, you may find that John's package simplifies installing it. Once you have DosLynx installed and working, it will be easy to update your installation's files with those from the latest release.

Download my previous release of the DosLynx Real Mode Package (DosLynx v0.43b, June 2012).

Download my previous release of the DosLynx Protected Mode Add-On Package (DosLynx v0.43b, June 2012).

Download the latest release of the DosLynx Real Mode Package (DosLynx v0.44b, November 2020) available from Fred Macall.

Download the latest release of the DosLynx Protected Mode Add-On Package (DosLynx v0.44b, November 2020) available from Fred Macall.
(This package includes both DOSLYNXP.EXE (the DosLynx 16-bit Protected Mode executable) and DOSLYNXS.EXE (the DosLynx 32-bit Protected Mode executable).)

Download the DosLynx versions 0.2xb Documentation Package.
Download the DosLynx versions 0.3xb Documentation Package.
These packages contain a complete set of DosLynx Quick Start Home Page (or, info.htm) and HISTORY.TXT documents, from all eight of the DosLynx v0.2xb releases. And, all nine of the DosLynx v0.3xb releases. They replace this site's former dlx2x and dlx3x sub-directories. They're for those who want to know all there is to know about the DosLynx v0.2xb and v0.3xb releases.

Including their .ZIP files, installing these documentation packages will require at least 0.8 MB of disk space for the version 0.2xb Package and 1.1 MB of disk space for the version 0.3xb Package. (As most of these Packages' files are relatively small, they may require a lot more space on your disk. For example, with a disk cluster size of 16 KB, the v0.2xb Package's installation will require approximately 1.6 MB of disk space. While, the v0.3xb Package's installation will require approximately 1.9 MB of disk space.)

Use PKUNZIP's -d option to install the packages into an empty directory or directories. We recommend that you install both packages into a single empty directory. That will allow INFO2X3X.HTM to provide you with seamless access to all of the documents. If you do that, install the version 0.2xb Package first. So that the version 0.3xb Package's installation will be able to update four of the older common or cumulative documents.

Then, start browsing with one of the INFO2X.HTM, INFO3X.HTM, or INFO2X3X.HTM documents that get installed in your empty directory. They provide a table of contents for, and links to, the rest of the documents.

PMSMTP v0.17b

PMSMTP is a "Mail Transfer Agent" for Pegasus Mail that I started from a copy of the TDOSLY15.CPP module of DosLynx. I developed PMSMTP when I decided to switch to an ISP that required SMTP AUTH LOGIN authentication for relaying my mail.

PMPOP, the "official" Internet Mail Transfer Agent for releases of Pegasus Mail for DOS, comes in two versions. The version for Packet Driver based installations, PDPMPOP, doesn't seem to support the SMTP AUTH LOGIN extension. By providing this missing support, PMSMTP complements PMPOP's capabilities and widens the group of SMTP servers usable with Pegasus Mail.

PMSMTP32, which was brand new with version 0.15b, is an enhanced variation or version of PMSMTP, which supports the secure (TLS/SSL) connections that some SMTP servers now require. I developed PMSMTP32 after my ISP "transitioned" to a "Google App", based on Gmail, which requires the secure connections it supports. As PMPOP doesn't seem to support these servers, either, PMSMTP32 further widens the group of SMTP servers usable with Pegasus Mail. For oldtimers, the bad news may be that PMSMTP32 requires a '386 based (or, later) PC.

PMSMTP and PMSMTP32 version 0.17b upgrade PMSMTP and PMSMTP32 version 0.16b, after another successful run of over seven years. Featured in this update is a remake of PMSMTP32, which incorporates a relatively new OpenSSL version 1.0.2u library. This insures an ability to negotiate and perform to the TLS v1.2 level of session encryption.

Read more about PMSMTP and PMSMTP32 v0.17b, SMTP AUTH LOGIN, and secure (TLS/SSL) connections in my updated PMSMTP.TXT document.

Download my previous PMSMTP Legacy package (version 0.16b, March 2014).

Download my latest PMSMTP Legacy package (version 0.17b, October 2021).
This package includes PMSMTP and its supporting files and is recommended for those with 8086/8088 or '286 based PCs.

Download my previous Full PMSMTP and PMSMTP32 package (version 0.16b, March 2014).

Download my latest Full PMSMTP and PMSMTP32 package (version 0.17b, October 2021).
This package includes everything needed for running either PMSMTP or PMSMTP32 and is recommend for everyone with '386 based (or, later) PCs.

These version 0.17b packages provide a complete replacement and upgrade for all of my older PMSMTP packages. However, if you are already using PMSMTP or PMSMTP32, you may want to take care to avoid replacing your established PMSMTP.CFG file with the up-to-date, but untailored, new one.

PMPULL v0.11b

PMPULL is a "Mail Transfer Agent" for receiving or pulling mail, into a Pegasus Mail installation, from a POP3 server. My ISP's "transition" of their e-mail service to a "Google App", based on Gmail, has necessitated my development of this MTA. It supports the secure (TLS/SSL) connections that Gmail and other POP3 servers now require or offer for their clients. PMPOP doesn't seem to support these secure connections. So, PMPULL (again) complements PMPOP's capabilities and makes Pegasus Mail useful with a group of POP3 servers that can't be accessed through PMPOP.

After a successful twelve year run, PMPULL version 0.11b has been remade with a relatively new OpenSSL software package. This insures that it can continue to expect to negotiate a secure connection with your POP3 server.

PMPULLR is a "Real Mode" version of PMPULL, with lesser system requirements. Moreover, it lacks the OpenSSL support, for secure connections, that distinguishes PMPULL. Some, who (still) don't need to have a secure connection, may find it a happy alternative to PMPOP.

PMPULL and PMPULLR are companions or counterparts for PMSMTP32 and PMSMTP, respectively. The set of PMSMTP and PMPULLR completely replace PMPOP. While, the set of PMSMTP32 and PMPULL go a step further and add the support for secure connections that PMPOP lacks.

Read more about PMPULL and PMPULLR v0.11b and secure (TLS/SSL) connections for POP3 service in my PMPULL.TXT document.

Download my previous PMPULL package (version 0.10b, August 2009.)

Download my latest PMPULL package (version 0.11b, October 2021.)
This package includes everything needed for running both PMPULL and PMPULLR.

SSHDOS v0.67x

"SSHDOS is an open source SSH client for DOS [published by Nagy Daniel]. It is based on the WATTCP library, PuTTY SSH client, the UNIX SSH package and the CVT100 package. This release supports VT100 terminal emulation, 3DES and BlowFish ciphers. It's enough to read your mails with Pine . . ."

"SSH is a telnet like remote access protocol, but provides encrypted channels, so others cannot tamper with your session. To run SSHDOS, you need a plain DOS environment, a Packet Driver [or, Packet Driver emulator], server side SSH support, and an alive network connection."
From the Web site of Nagy Daniel. Copyright (c) 2000 Nagy Daniel
The present-day "Official SSHDOS homepage".

I became aware of SSHDOS in December 2000 just after Nagy had released SSHDOS v0.6. It needed one small change to work with the SSH server I wanted to be able to contact at that time. It had to be able to overlook my server's negative response to the SSH_CMSG_MAX_PACKET_SIZE "preparatory" message that SSHDOS sends.

Nagy showed me a way to accomplish this change within a day or two of my e-mail to him about it. Shortly after that, I decided to make my own SSHDOS, incorporating that change. I also changed compiler options in the makefile to make an .EXE that will run on an 8086/8088 or above (rather than a '286 or above). I called my make: SSHDOS v0.67m . My success with this little project really hooked me on working on DOS Internet software!

Download my make of SSHDOS (SSHDOS v0.67m, January 2001), with supporting files, for lowest common denominator PCs.

As Nagy has since released SSHDOS versions 0.7, 0.8, and 0.9x, my version 0.67m is somewhat out-of-date. However, I now have had an opportunity to make one small fix in it. During startup, its initialization involves negotiating an SSH version with the SSH server. SSHDOS goes into this negotiation with SSH version 1.5 . But, intends to drop that to as low as version 1.0, if necessary to match an SSH server's lower version. In 2009, testing with a version 2.0 SSH server caught SSHDOS inappropriately dropping its version to 1.0 , when it should have left it at 1.5 . I've corrected that, in check_emulation( ) in NEGOTIAT.C, and made a new SSHDOS.EXE that I call: SSHDOS v0.67x . I am offering that, in a file by itself, for updating the SSHDOS v0.67m package offered above.

Download my updated make of SSHDOS.EXE (SSHDOS v0.67x, June 2009), by itself.

Download the latest make of SSHDOS (SSHDOS v0.95b, November 2003), from Nagy Daniel's SourceForge site.

Download the SSHDOS v0.95 sources from Nagy Daniel's SourceForge site.

DosWOL v0.11

None of the machines on my home LAN are set-up to use Wake On Lan or AMD's Magic Packet Technology (PDF). But, when Martin Webb mentioned it to me, I was intrigued. The hook set when I discovered that Ken Yap wrote a Perl script for sending the AMD Magic Packet early in 2000. I also found some small Linux and Windows programs for doing that. (The Windows reference mentions DOS. But, it offers a program using Winsock. I think he must have a Windows DOS window in mind.)

However, I wasn't able to find a DOS Packet Driver based program for sending the AMD Magic Packet. So, I thought I'd see what I could do about that. After a false start, the result is my DosWOL program or command.
Read all about DosWOL.

Download my DosWOL package (version 0.11, December 2004).

PLIP v11.2

PLIP is a Packet Driver for parallel (printer) ports published, with assembler source, by Russell Nelson in 1992. A pair of interconnected parallel ports, driven with PLIP, can provide the same kinds of connectivity that a pair of interconnected Ethernet cards, driven with their matching Packet Driver(s), can provide. Interconnected parallel ports provide transfer throughputs in between those of traditional serial ports and those of Ethernet cards. PLIP works with lowest common denominator parallel ports and a lowest common denominator "4-bit" Parallel Data Transfer Cable. This kind of cable also is well known as the LapLink (yellow) Parallel Cable.

I recently updated PLIP to improve its reliability in configurations with PCs of widely varying vintage and speed. Among other things, I added an "Antique Hardware Hack" command line option to enable the use of parallel ports with inverted level IRQ sensing. I've also added a document: PLIP112.TXT, to the package. It reports on my update and my successes with PLIP v11.2 on DOS-DOS, DOS-Linux, and DOS-Windows 9x parallel port TCP/IP connections.

Download Russell Nelson's latest release of PLIP (version 11.1, June 1995).

Download Michael Leonhard's DOSPLIP package (February 1999).
As explained in PLIP112.TXT, Mike's DOSPLIP package is an essential resource for anyone who wants to use PLIP on a Windows 9x system. It probably will enable the use of other "Real Mode" DOS Packet Drivers with Windows 9x, as well. The link above mirrors Mike's 1999 package. So, you'll probably want to refresh the PLIP files it contains with those from my PLIP v11.2 update, below.

Download Fred Macall's update of PLIP (version 11.2, July 2003).


When I had to put my oldest PC, Zeke, on INTERLNK/INTERSVR life support, I ran into a problem with PLIP's long interrupt service times. They were causing Disk not ready Critical Errors to be developed in Zeke's INTERLNK Device Driver. The whole story on this is given in my document: ILNKFIX.TXT .

To make that long story short, I've developed a successful small TSR, ILNKFIX.COM, to bypass the problem. It hooks into INTERLNK's Device Driver and keeps the IRQs for PLIP masked during INTERLNK operations. That averts the Disk not ready Critical Errors that I had been getting from INTERLNK!

Download my ILNKFIX.ZIP package (September 2004).

On a happier note, I gave Zeke a Future Domain TMC-850ibm SCSI card and 2 GB SCSI disk, in June 2005. The TMC-850 card includes a BIOS ROM that provides INT 013h services for the attached SCSI disk. That disk has about twice the speed of the parallel port based life support arrangement. It has given Zeke a whole new life. In 2009, Zeke turned 21!

DOS BogoMIPS v1.5

About the time that I was beginning to be aware of DOS Internet software, I also started looking for a tool for comparing or rating PC processor performance. I wound up settling on a Linux BogoMIPS measurement. I used to Boot a diskette based Linux rescue system to obtain each reading. I have two of these rescue systems: A Slackware Linux v3.4 based system with a v2.0.30 kernel. And, a Red Hat Linux v6.2 based system with a v2.2.14-5.0 kernel. These two rescue systems give closely matching or tracking BogoMIPS measurements over a wide variety of PCs.

What is there not to like about this arrangement? First of all, it necessarily is limited to '386 processor (or, later) based systems. And, my rescue systems may be tricky to Boot on PCs with less than 16 MB of RAM. Also, I've encountered newer Linux systems that give more liberal BogoMIPS readings on Pentium based (or, later) PCs. Well, there may be no good solution for this last issue.

After a discussion of these things one day, Glenn McCorkle found source for a standalone version of the Linux BogoMIPS measurement. He made some 16-bit "Real Mode" DOS versions using the Borland C/C++ v3.1 compiler. While showing me the way, Glenn's makes had a couple of issues of their own. The best one's BogoMIPS measurements didn't track the measurements from my rescue systems very well, on some PCs. This may be seen to be due to it being a 16-bit, rather than a 32-bit, program. And, even though it was a 16-bit program, Glenn's best tool wouldn't run on an 8088 based PC.

To solve that first issue, I've made a DJGPP (32-bit Protected Mode) version, BOGOMIPS.EXE, of the standalone tool for DOS. This one does produce readings that track my rescue systems pretty well. And, I've made another 16-bit "Real Mode" DOS version I call BOGOMI16.EXE. This one yields measurements that pretty much match those from Glenn's best make. But, importantly, this one runs on 8088 based (and, presumably, all later) PCs. So, it provides for extrapolating a BogoMIPS-like measurement to pre-'386 based PCs.

I've updated the open source Standalone BogoMIPS package to make these DOS versions. In addition to updated source, makefiles, and my two makes for DOS, my updated package includes a new README.1ST document, which provides more details on some of the things discussed above. README.1ST also includes a table reporting several BogoMIPS measurements for a variety of my old PCs.

Download my previous DOS BogoMIPS package (version 1.4, July 2010).

In 2016, I got an '09 vintage Intel E2220 based PC which is too fast for my DOS BOGOMIPS.EXE version 1.4 program. It reports only: failed on that PC. To fix that issue, I've updated BOGOMIPS.C to enable BOGOMIPS.EXE and BOGOMI16.EXE version 1.5 to work on PCs upto 8 times the speed that the version 1.4 programs can handle. On PCs that aren't too fast for the version 1.4 programs, the updated programs usually give identical results. Or, in a few cases, nearly identical results. Of course, I've also updated a number of other files in the version 1.5 package. Including the README.1ST document, where I've added some more test results.

Download my latest DOS BogoMIPS package (version 1.5, January 2017).

CWS2FWS v0.81c

CWS2FWS is a "utility [which] converts compressed Macromedia Flash (.SWF) files to uncompressed ones," by Alex Beregszaszi.

Upon inspecting an .SWF file with DEBUG or another tool, you'll find that it may begin with a "magic" character sequence of either CWS or FWS. Files beginning with FWS are "full" or "original" .SWF files. While, those beginning with CWS are compressed versions. So, CWS2FWS may be seen to operate on a CWS version .SWF file, to bring back its FWS version .SWF file "source".

Most .SWF files found on the Internet are compressed versions, which seem inaccessible to a DOS user. Because, Linux or Windows based tools seem necessary for playing or viewing them. While full .SWF files (still) contain some binary data, like .EXE files, they also may contain readable URL(s) and other text that can't be seen in the compressed versions. And, sometimes, MPLAYER can play them! So, a DOS version of CWS2FWS may provide a DOS user's first step toward accessing the Internet's .SWF files.

In that spirit, I am providing a quick and dirty DJGPP make of CWS2FWS.EXE, for DOS. This make of CWS2FWS is intended to run on any 80386 based (or, later) IBM compatible PC, with at least 4 MB of RAM. It is a 32-bit Protected Mode program, which requires 32-bit DOS Protected Mode Interface (DPMI) service. Some DPMI services I've used with DosLynxS, which is made using similar techniques, are described in the document: dpmirevu.htm.

Read more about my make of CWS2FWS, for DOS.

Download my DJGPP make of CWS2FWS.EXE (version 0.81c, April 2009).

YTCrack v0.50b

I find modern scripts enabled Web browsers to be examples of technology run amuck! Their cookie, CSS, and script engines provide a variety of facilities that inevitably contain loopholes intended to allow selected Web servers to spy on their users and pwn their PCs. Then, body paint like coverings are added to those browsers in an effort to disguise the intended loopholes, which remain. Users of these browsers are left to plead with advertisers and others to refrain from spying on them! That makes very little sense to me.

Scripting also is used, in the name of "Digital Rights Management", for unobfuscating URLs and providing other kinds of access to otherwise limited data or "media" that may be presented as being offered freely. Google's YouTube offering provides an example of these things. I have learned that YouTube Web pages with URLs like: http://www.youtube.com/watch?v=VideoIDCode contain one, two, six, or eight obfuscated copies of each of three to thirty "videoplayback" URLs. Together with scripted unobfuscation for the user's choice of a video type and size.

In order to access YouTube's video offerings without exposing my PC to being pwned by Google, I have written a program, YTCrack, especially for doing that unobfuscation. It enables me to obtain and play YouTube videos with only DOS based, or scripts-support-free, tools such as DosLynx, FFMPEG, and MPLAYER.

YTCrack versions 0.11b, 0.12b, 0.14b, and 0.15b brought added support for video.google Web pages with URLs like: http://video.google.com/videoplay?docid=-1234567890123456789
They also brought support for \uhhhh sequences and itag= 36, 38, 4x, 8x, and 10x video properties. These turned up in YouTube's Web pages over the period from early in 2011 to the middle of 2012.

During the year ending in July 2013, YouTube made several major changes in their videoplayback URLs. First, they introduced a lot of new video types. For a total, then, of 39. Nineteen of the new video types each contain only a single audio or video stream! This is in contrast with all of YouTube's earlier video types, which are talkies and contain both an audio and a video stream. For most of the YouTube audience, the new types are a joke. Right? But, YouTube seems to be really serious about them. Together with something we've read, this observation has a sinister implication. Perhaps YouTube is preparing to offer only audio only and video only videos? From the start, their "player app" will know how to combine an Audio Only (AO) and Video Only (VO) pair of files to make a talkie. But, other players, such as MPLAYER, might be expected to require a year or more to catch up. I hope this suspicion turns out to be wrong!

Well, as we near the end of 2013, my earlier suspicion is being confirmed. YouTube seems to have eliminated all their .FLV talkie offerings at 640 x 480 resolution. In many cases, where this was the highest resolution offered for a video, what's left in the .FLV's place is an .MP4 640 x 480 VO together with an .MP4 AO. Fortunately, I have learned that both linux and DOS makes of FFMPEG are able to make a fine talkie from such a pair of files.

The past year and a half also has brought a lot of new obfuscations. Too many to list here. YTCrack versions 0.16b, 0.21b, 0.24b, 0.27b, 0.28b, and now 0.33b have been released in an effort to keep up. YouTube's latest obfuscations demonstrate that they are able to play hard ball. But, with the addition of YTConfig to the YTCrack v0.33b package, YTCrack is able to play ball right back!

As of November 2014, we have seen three more YouTube video types. For a total, now, of 42. These newest video types are for ultra high definition VO and VO eXperimental, or VOX files! The eXperimental files use a new codec that YouTube seems to be developing. YTCrack version 0.34b includes support for these new video types. Corrections for mistakes in each of YTCrack and YTConfig. And, a few more updates to deal with the latest obfuscations. YTCrack version 0.35b contains one more tweak!

As of February 2015, we have seen six more YouTube video types. For a total, now, of 48. Three of the new types are AO eXperimental, or AOX files. But, we still haven't seen an ultra high definition talkie! YTCrack v0.36b supports all six new video types and includes several adjustments responding to changes in YouTube's videoplayback URLs.

With their ability to descramble scrambled &s= . . . style signatures, YTCrack versions 0.33b, 0.34b, 0.35b, and 0.36b have brought YTCrack into a new era. However, these versions have been seen to be incompetent when the signature descrambling key obtained by YTConfig contained no snn field and no w40 field. In this case, signature(s) must have a valid format before descrambling if they are to have a valid format afterward. So, YTCrack's &s= . . . style signature validity check failed to discover an apparent need for descrambling, in this case.

A review of all the &s= . . . style signatures we saw in 2014 and the first three quarters of 2015 found them all in apparent need of descrambling. So, beginning with little published version 0.37b, YTCrack will attempt to descramble all &s= . . . style signatures. Not only those found to have invalid signature values. In YTCrack version 0.38b, a new message reports on any &s= . . . style signature(s) found. Also, in the interests of science, the new version still reports on the number of invalid signature values found.

YTCrack version 0.38b also includes descriptive information for recently sighted itag=13 type videos. And, &hightc= , &mn= , and &requiressl= have been added to its list of sometimes required videoplayback URL fields. These updates bring the number of itag= values we've seen to 49. And, the number of sometimes required videoplayback URL fields to 42.

On or about 9 November 2015, YouTube changed the name of their video player from html5player to player or base. At the same time, they also changed the definition of the video player's signature descrambling function from:
function fn( . . .
style to:
var fn=function( . . .
style. Those changes broke the &s= . . . style signature descrambling capabilities in both YTCrack and YTConfig versions 0.38b and before. Around the same time we also saw a new (to us) itag=313 type video rendition.

YTCrack and YTConfig version 0.40b adapt to these changes, restoring their signature descrambling capabilities. And, YTCrack has been given descriptive information for the itag=313 type videos. This update brings the number of itag= values we've seen to 50.

On or about 23 November 2015, YouTube added optional white-space to their video player JavaScript. Two new-line sequences were added to the definition of the class of signature descrambling operators that YTConfig seeks. This confused YTConfig v0.40b and kept it from succeeding.

YTConfig version 0.41b has been extensively revised to ignore all optional white-space in the video player JavaScript that it processes.

On or about 18 December 2015, YouTube found a way eliminate var from the beginning of the definition of their invalid or scrambled signature descrambling function. This broke YTConfig v0.41b, again.

Perhaps needless to say, YTConfig version 0.42b overcomes this change. In addition, YTCrack version 0.42b has descriptive data for recently sighted itag=59 and itag=78 talkie video renditions. This brings the number of itag= values that YTCrack knows to 52.

YTConfig version 0.43b corrects or improves on the changes made for YTConfig v0.42b. These additional changes should eliminate the occasional failures, seen lately, of YTConfig's search for:
fn=function( . . .

On or about 15 April 2016, an xtags= field appearing in some videoplayback URLs was found to be poison. Videoplayback URLs carrying an xtags= field were spurned by YouTube's servers until it was removed!

xtags= has been removed from YTCrack version 0.44b's list of sometimes required videoplayback URL fields. And, YTCrack has been extended to seek and remove an xtags= . . . field from each videoplayback URL it processes.

On or about 31 January 2017, the HostName portion of the URL for YouTube's player or base.js file got lost. When we retrieved the file from two of its apparent haunts, some of its JavaScript code for adjusting sig= . . . and s= . . . style signatures was found to have changed. That kept YTConfig v0.44b and all previous versions from working.

YTCrack version 0.45b has a new provision for supplying that missing HostName. And, descriptive data for two more 50 FPS video renditions. YTConfig version 0.45b works with the new JavaScript code for adjusting signatures.

On or about 14 March 2017, YouTube's player or base.js file outgrew YTConfig v0.45b's 8 KB input file buffer.

That buffer has been enlarged to about 32 KB in YTConfig version 0.46b .

On or about 28 April 2017, YouTube changed the structure of the path in the URL for their player or base.js file. Both YTCrack and YTConfig, version 0.47b, have been tweaked so as to again identify the player or base.js file's version as they did, before.

On or about 13 February 2018, further refactoring or restructuring in YouTube's player or base.js file disrupted YTConfig's search for a signature related expression. YTConfig version 0.48b has been tweeked to again find the expression it seeks.

6 November 2018 brought further refactoring or restructuring in YouTube's player or base.js file. YTConfig version 0.49b has again been tweeked to find the expression it seeks.

YTCrack version 0.49b has been updated in four areas: It contains a fix for its handling of sequences of repeated back slash (\) characters. aitags= has been added to its list of sometimes required videoplayback URL fields. That brings the list to 46 entries. Descriptive information has been added for recently sighted itag value 256, 258, 325, 394, 395, 396, 397, and 398 videos. That brings the number of recognized itag values to 62.

Finally, additional support has been provided for https://www.youtube.com/get_video_info?video_id=VideoIDCode&sts=stsnr style URLs. These URLs are alternatives, to the watch?v= style URLs, which sometimes bring Web pages carrying videoplayback URLs for additional video renditions.

15 January 2019 brought another little change, in YouTube's player or base.js file, which YTConfig couldn't handle by itself. YTConfig version 0.50b has had the attention needed. At the same time, YTCrack has been given descriptive information for recently sighted itag value 308 and 315 videos. That brings the number of itag values it recognizes to 64.

Read all about YTCrack and all the new YouTube developments only outlined above. This document contains a list of all of the 64 YouTube video types that I know of. The descriptions of the newer video types contain 3D, AO, VO, AOX, or VOX "flags" to indicate which "videos" are 3D, Audio Only, Video Only, Audio Only eXperimental, or Video Only eXperimental types. YTCrack's output file or document applies the same descriptions to the offered videos.

Read all about YTConfig and how it configures YTCrack with the key needed for descrambling the invalid signatures YouTube supplies for some of their videos.

Here is my previous YTCrack package (version 0.49b, December 2018).

Download my latest YTCrack package (version 0.50b, January 2019).

DMCrack v0.16b

In order to access DailyMotion's video offerings without exposing my PC to being pwned by DailyMotion, I have written a program, DMCrack, for extracting the video URL(s) that used to be concealed in their .SWF files. Actually, as you might have already guessed, DMCrack is an offspring of: YTCrack v0.24b. Together with CWS2FWS, DMCrack enables me to obtain and play DailyMotion videos with only DOS based, or scripts-support-free, tools such as DosLynx and MPLAYER.

Well, wouldn't I know it? Not long after the release of DMCrack version 0.12b, most of the video URLs disappeared from DailyMotion's .SWF files. Now, I've rediscovered those video URLs in DailyMotion's "embed" files. The DMCrack version 0.15b package has updated documentation describing my revised technique. This revised technique avoids any need for CWS2FWS or an equivalent.

On or about 4 October 2013, DailyMotion expanded the ?auth= . . . field in their video URLs. This kept DMCrack v0.15b from extracting acceptable DailyMotion video URLs. DMCrack version 0.16b has been revised to handle the expanded ?auth= . . . field. And, is working successfully, again. Read all about DMCrack.

Download my previous DMCrack package (version 0.15b, July 2013).

Download my latest DMCrack package (version 0.16b, October 2013).

Continue with Fred's DOS Hardware How To

A Note on this site's URL

On or about 3 February 2019, my ISP's ohiohills.com e-mail service quit working. I was told there was no fix for that because they "no longer have the ohiohills.com domain."

I've decided to register my own domain this time. As a result, my Web site's new URL is: http://macall.net/

I've updated the site's top level pages accordingly. However, I am not updating any of my previously released .ZIP file packages solely to apply this change. I'll incorporate this URL change in my existing packages when I have other reason(s) to update them.

So, bear in mind that any reference(s) you find here to http://members.nccw.net/fmacall/ , http://users.nccw.net/fmacall/ , or http://users.ohiohills.com/fmacall/ should now be read as: http://macall.net/

That's All for Now

I plan to extend this site, over the next few months, with some of the "important" links, some of my favorite links, and my resume. Some feedback would be nice. Please, let me know what you like or don't like about the site.

See you on the 'net.

Fred C. Macall K8GIV
27 October 2021