Alton Moore's Programming Page

Here are some programs I've written. Feel free to visit my home page for information or if you'd like to email me about any of the programs you see here. I am particularly proud of the "Indexed File Engine".
You can jump directly to the downloads directory here.

My Android Programs

Lately I've been learning Android programming. I am going to try to keep this list updated, mainly so that people doing searches on the internet instead of in the Android Market will find what they want on this page.

Bridge Updates Displays not only the Customs and Border Protection inforation, which is updated only once per hour, but also does crowdsourcing: Users may enter updates of their own to note wait times, lane openings and closings, shootouts, and similar useful information. These updates are immediately available to other travelers so that they may choose an alternate bridge or plan their trip accordingly.
SSN Analyzer Reports which state an SSN was issued in and then checks the group and serial numbers, in as much as that is possible. SSNs cannot be thoroughly checked, but this app does the best it can. Please see the Market for a more complete description.
VIN Calculator While this app doesn't attempt to list manufacturer or year or the like, it does one very important thing: It calculates the check digit for a given VIN. Therefore, if you enter a VIN, it first tells you whether it's a valid one or not. If it's invalid, then it furnishes the check digit which will make the VIN valid. Law enforcement has used this app to detect re-vinned cars; manufacturers can also use it to calculate the check digit when assigning VINs for the trailers or other vehicles they are making.
Wind Calculations This app complements my free web-based wind calculations page, and, like it, renders two tables for a given set of prop characteristics: the carving table and the performance table. There are no particular legends or explanations provided, since it is expected that the app user already knows what these figures mean; rather, the app is intended to be a convenient way to access the information.

Here is my Android Market page, which lists all of my apps.


This is a program that provides a Facebook-like functionality for a group, or maybe a department at work. You may post text entries, and a signature field is there to get you to identify yourself. You may also optionally post pictures to go along with the text. If you do, the 2MB PHP upload limit applies. Please go to the Sourceforge Microbook page to download.

masq.php (shows masquerading connections under linux)

This is a PHP script which shows masquerading connections in web page form. You could easily modify to print on the console alone, although you always have to be scrolling back to see what it printed. Anyway, if you'll have a look, it's a fairly preliminary program, but it does work fine for now. Click here to download it and remember to change the extension to .php when you install it.

EZ-IRC, A Simple IRC Program

The Java Version
I now have a Java version of this program here that I have written, with Java source code. You can put all the .class files and the .html file into a directory on your web server and invoke the .html file to run the application. If you'd like to modify the program or whatever, you have the two .java source files to play with.

Please read the ezirc.txt file that you find in the ftp directory for the latest information on the status of the program. It seems to work well already, though, and you can probably get some use out of it. Also, I must, here, credit the program that I found on the internet, as I followed it somewhat for the text window functionality.

The C Version
This is a small IRC program in C which I have compiled so far under Linux. It should work on most versions of Unix, though. It is also useful as a small "bot" program, and I use it myself to give out ops when it is properly messaged.

I have written this program because I believe that mIRC, while a great program, is too complicated for most people to set up. Here is a program which you may use for free, edit to suit yourself, or just look at to learn a little about IRC. I am continuing to work on this program, so while it works, please do not consider it complete at any time. However, do not expect it to grow too much, either. I am trying to keep it small and simple.

Go to my IRC directory to download the source code for this program. The Linux ELF executable is there, too. However, compiling the source code on your system is probably a better idea. To compile: cc -o ez-irc ez-irc.c
To run either run alone (ez-irc) or supply the 3 needed fields, like so:
ez-irc "" YourNick "#your_channel"

Indexed File Engine

This is a very flexible file system written in C. I have compiled it under DOS, VMS, and Unix/Linux without a hitch. It offers 256 keys, 64k record lengths, keys can occur anywhere in a record and be of any size, files can be 4GB, and that sort of thing. It is implemented in one C source code file which you include when compiling. Sample programs and utilities are here too.

Go to my ftp directory to download the source code and documentation.

Miscellaneous Programs

These are programs in C, Pascal, DOS batch, etc. which I have written over the years. If you have questions about them then feel free to email me. I will describe each of the programs here, and if you're interested in a program, click here to download.

The AOM transfer protocol was noteworthy; basically it worked by establishing a tree on both ends of the connection which represented the file and then worked to fill in the missing parts. The tree was used to accomplish the "filling-in" process in any order, so that a continuous stream of data could be maintained; errors did not require backing up, but rather the missing data would simply be re-requested again later. I suggested this methodology to the BitTorrent author, who barked back at me that any sliding window protocol did the same thing, but that is mistaken, and my approach is more elegant and therefore probably works better. I know that it beat the pants off of Zmodem on noisy lines way back when. I suppose that I should modify it to use UDP connections instead of a modem and see what happens.

Program NameDescription
3334Pseudo-assembler written in VAX Macro, I think
answer*.cAnswering machine program (requires other files from here)
aom.*File transfer program which is very good on noisy connections
bbslist.cBBS List maintainer accessible via Fidonet .msg-style programs
com-link.*BBS-style program which lets user dial out of machine's second modem
common.hOne of my standard include files
crctable.hOne of my standard include files
editor.pasA full-screen editor written in Pascal
fido_ftp.cAllows users to access FTP sites via emails
fidonet.hOne of my standard include files for Fidonet programming
logcheck.cA useful program for checking for events in log files
maint.cAn add/change/delete type of program using my indexed file engine
makemess.cCreates Fidonet .msg-style messages automatically
modem.hOne of my standard include files
protocol.*One of my standard include files
ringchek.cUtility for working with modem rings in batch files
serial.cSample program for the serial.h routines
serial.hOne of my standard include files
terminal.cA simple terminal program in C for DOS
timechek.cChecks for elapsed time in batch files
trace.hOne of my standard include files
voicemdm.*Routines for working with voice modems that have the Rockwell chip set
wait.cUseful program for pausing in batch files