Programs

The following are various computer programs I′ve written over the years. Unless specified otherwise, they have been released by myself under copyleft. (GNU Public Licence, Version 3.) All of these are (of course) available in source form. As well, for the compilation-challenged, or simply those who feel unwarranted trust towards strangers, I have included executeable versions.

 Gauge Demo Here are some examples of how to use the various arguments accepted by my ′gauge′ function. This function creates SVG graphics, and is written in javascript.

 Honeycombs This is an HTML form plus javascript program to create honeycomb-style hexagonal tessellations. The  Illusions section of the website uses some honeycombs created by this page.

 Self-Printing Fortran Program Although admittedly of limited applicability, this program does have a certain nostalgic quality.

 ASKIT source    ASKIT program

This program is a 16-bit DOS (Real) mode console application that prompts for keyboard input and then writes it to standard output. Normally, you would then take the output and pipe it to a program that can set an environment variable.

It′s primary intended use is to replace the DOS "CHOICE" command. Useful to prompt for and validate system and network parameters for creating system restore boot diskettes.

(If you can think of an input editing function to implement for PgUp / PgDn, please let me know.)

Features:
- Different colours for prompt, input so far, byte count and position, time left.
- Echo colour changes if input is valid. Editing using arrow keys.
- Force entry of valid NETBIOS or DNS identifier or IP#, alphabetic or numeric only, function keys.
- Default string and ERRORLEVEL return values for Escape / Timeout / Enter.
- Escaping of control chars and extended key sequences.
- Extended "noise" control. Three types of beeps, depending on error severity. Also trill, siren, alarm, and countdown sounds.

 CONNECT source    CONNECT program This program is a 16-bit DOS (Real) mode console application that will create a DOS Network Client 3.0 / Windows 3.x persistent network connection (DAT) file. For example, to save you the bother of typing

NET USE J: \\SERVER\SHARE /PERSISTENT:YES

(or using the corresponding Windows 3.1 "Connect Network Drive" menu command), you pipe a list of all your network connections to this program before running NET START (or Windows). Useful to automate network share mapping for creating system restore boot diskettes.

 BLANKPWL source    BLANKPWL program This program is a 16-bit DOS (Real) mode console application that will create an empty DOS Network Client 3.0 / Windows 3.x password (PWL) file for a given username and password. Useful to simulate a prior Network or Windows logon for creating system restore boot diskettes. In other words, the user will not be asked for a windows password, (and it′s confirmation), which confuses most people because they assume it is asking for the domain password.

The program might possibly be modified to produce a specific set of encrypted resources in the PWL file as well, such as passwords for the connections defined above, web passwords (for use with really old versions of Internet Explorer), or the domain password (NT 4.0 or prior) itself. Such an undertaking should only be attempted by someone with a basic understanding of math and computer programming. You will need to modify this program to decrypt the PWL files created on your system (with the encrypted resources you want), and then modify the original source to add these resources to the empty list before encrypting it. You will need to do this and test it on YOUR system. Thus please don′t ask me for help. As well, there are some seeming failures in my understanding of the encryption algorithms which perhaps did not come into play due to the fact that I only encrypt an empty resource structure of all zero bytes. See the source code for the details.

 SHOWPWL source    SHOWPWL program This program is a 16-bit DOS (Real) mode console application that will display (unencrypt the contents of) a DOS Network Client 3.0 / Windows 3.x password (PWL) file for a given username and password. It is useful to troubleshoot the program BLANKPWL.

 RC4 source    RC4 16-bit program  RC4 32-bit program These programs are 16-bit and 32-bit compilations of a console application that will symetrically encrypt a file using the RC4 algorithm. It is useful to troubleshoot both of the above programs.

I wrote the above programs as part of a project to develop a bootable CD that scans the PCI bus and uses DHCP to auto configure a WFW system that runs completely in RAM. This was as part of a project to create a single CD that could be used with GHOST in a heterogeneous environment to backup and restore system disks to SMB shares. I sort of got it to pretty much work until NTFS came along. Then after more effort I got it working on most of my machines until active directory was implemented at my jobsite. Then SATA drives started to became common, and I gave up because I wanted a backup solution that would not require any BIOS changes to use.