This page contains links some of to the software projects I have spent time on. You can freely download the software & documentation. Most of it, if not all, is free to use. If you have any comments (i.e. possible improvements, bug fixes, etc), please mail me and I'll see what I can do. The software isn't of professional quality and hasn't been tested extensively, but I haven't really got time to do that as I program in my spare time. However, I do try to get my software to work as I intend it to.
You can also download free software projects that I've used that now seem to be homeless. See the section Homeless Software Projects.
auto2rpm converts a source tarball that uses the autotools (autoconf, automake and libtool) into source and binary rpms. Please see the auto2rpm home page for more details.
bz_dumpbugs extracts bug information from a Bugzilla database running on MySQL.
bz_dumpbugs is distributed freely under the terms of the GNU General Public License (GPL).
colgcc was written for DJGPP programming. It colours the output of gcc, g++, etc. to draw attention to info, warning and error messages. It also colours messages from make when it recurses (e.g. enters or leaves a sub-directory).
colgcc is distributed freely under the terms of the GNU General Public License (GPL).
This is some documentation I wrote for SOCK.VXD. This was written as part of the Coda network file system port to Win95. It allows DJGPP programs to use Winsock's networking service. networking support device driver. SOCK.VXD is GPL'd, which means that its interface is known - a great advantage over that of WSOCK.VXD, Microsoft's Winsock virtual device driver. It also works with Winsock 2.
Please note - I did not write SOCK.VXD.
daytimed is a BSD socket-based daytime service provider. It listens on port 13 and returns the local date & time in Unix format to any computers that connect (you could use telnet to do this). It was written using DJGPP and libsocket, but should compile under Unix too.
daytimed is distributed freely under the terms of the GNU General Public License (GPL).
A utility written in Visual C++ for Doom, that let's you see what levels are contained in a .WAD file. This allows you to start Doom & go straight to these levels, rather than wading through the standard Doom levels. This is handy if you're trying to find a good level to play, or simply evaluating lots of levels.
This little utility was written using DJGPP. It shows the amount of free space on all fixed disks or network drives in terms of kilobytes free & total, bar graphs and percentages.
DUU is distributed under the terms of the GNU General Public License (GPL).
File::ExtAttr is a Perl module providing access to the extended attributes of files. Extended attributes are metadata associated with a file. Examples are access control lists (ACLs) and other security parameters. But users can add their own key=value pairs. Extended attributes may not be supported by your operating system. This module is aimed at Linux, Unix or Unix-like operating systems (e.g.: Mac OS X, FreeBSD, NetBSD, Solaris). Extended attributes may also not be supported by your filesystem or require special options to be enabled for a particular filesystem.
fortune-mod is a modified version of the NetBSD fortune cookie program "fortune", licenced under the BSD license. The version available here is a port to DJGPP.
HTMLSec is a utility written in Perl that allows boilerplate sections of HTML to be inserted quickly into HTML files. This is reduce the time to create HTML files with a common look & feel. I wrote this because I don't use HTML editors, and this reduces the maintenance necessary or changes in the look of my pages.
ipodfs is a user-space filesystem for accessing iPods using FUSE (Filesystems in Userspace). It provides simple access to your iPod. Mount your iPod using ipodfs, then just copy your music files onto it using normal file management tools. Please see the ipodfs home page for more details.
NOTE: iTunes and iPod are trademarks of Apple. This product is not supported/written/published by Apple.
libmslot is a library of functions for DJGPP for using the LAN Manager Mailslot API, which is available under DOS, Windows 9x and Windows NT. Mailslots are a unidirectional form of Interprocess Communication (IPC). The library provides two interfaces: a "raw" interface for creating read-/write-only mailslots and a File System Extension (FSEXT) interface for using mailslots with the standard I/O functions. The library also provides the logging functions syslog(3), etc.
libmslot is distributed freely under the GNU Library General Public License (LGPL).
libwin is a library of functions for DJGPP. The aim of the library is to allow DJGPP programs to make better use of the Windows environment. Thus, it includes clipboard access, user information, version information, low-level device driver (VxD), DOS box and virtual machine titling and registry functionality. You can read libwin's man pages online, for more information.
libsocket - Version 0.8.0 (2000-11-16) - Binary distribution (880K), documentation distribution (144K), source distribution (912K), UNSUPPORTED man pages (short filename format) (100K), UNSUPPORTED man pages (long filename format) (100K)
It was originally written by Indrek Mandre, but I now maintain it. It is distributed freely under the GNU Library General Public License (LGPL).
NB: I am no longer maintaining this library.
m2h used to be called man2html, but this name clashed with a GNU program of similar intent. So, the name was changed.
m2h is a utility written in Perl that converts a Unix manual page directory structure & its pages into an HTML version. It generates an alphabetical index page too for quick access. Web browsing man pages is much more convenient than using the command-line (i.e. multiple pages open at once & viewed easily, bookmarking is possible). See the m2h manual for slightly more detail.
m2h is distributed under the terms of the GNU General Public License (GPL).
mailrule is a simple sed script to convert Netscape 4.7x mail rules to Mozilla 1.5 (& maybe earlier) mail filters. Use it like so:
sed -f mailrule.sed ~/.netscape/mailrule > filters.mozilla
Exit Mozilla completely. Then copy the new filters to your Mozilla profile directory, ~/.mozilla/user/profile/Mail/mail-server/msgFilterRules.dat. Replace the fields in italics with directories appropriate for your profile. You should also back up msgFilterRules.dat first.
Note: I have only tested this on my Netscape 4.7x mail rules. I had around 100 rules at the time and it seems to have worked fine. Let me know if you have any problems.
mab2ldif takes a Mozilla Mork-formatted address book file (.mab) and converts it into an LDIF file. Mork address books are used by Thunderbird. This LDIF file can be imported into Thunderbird on another computer.
Thunderbird can export its address books into LDIF format. But if you can no longer run Thunderbird on a computer, and hence cannot export from .mab to LDIF, mab2ldif could help you recover your address book.
pakke is a package manager for DJGPP, to help with installing/upgrading/uninstalling DJGPP packages. Please see the pakke home page for more details.
NB: I am no longer maintaining this program.
Rebound is a rebounding rocket launcher for Quake - perfect for shooting your buddies round corners in Deathmatches. It comes with the source, so you can modify and recompile it to your heart's content. You might like to read the Rebound Readme file.
rfingerd is a Finger server for Win95 written using DJGPP and libsocket. It also includes a Finger client. It supports a '.plan' file in each user's 'Profiles' directory. It should also compile and run under Unix, but this is untested. It is distributed freely under the terms of the GNU General Public License (GPL).
subscripto is a program for managing subscriptions to mailing lists. Please see the subscripto home page for more details. It's at an early stage of development.
unc_fsx is a library that allows DJGPP programs to handle UNC-style filenames transparently. UNC is Universal Naming Convention, a naming convention that is used on Windows (SMB) networks. Please see the unc_fsx documentation for more details.
Where IP Data is Stored for Network Cards under Windows - Version 0.4.10 (2005-10-09) - winnetip.htm (28K)
While developing libsocket, I have collected information about where IP address data is stored under Windows. Alfons Hoogervorst compiled a document called ipdata.txt that documents some cases in a low-level manner - mainly for dial-up links & remote access. My information compliments this by documenting IP data for network cards and a little bit more about dial-up links. I hope this information is useful.
This is some documentation I wrote for WSOCK.VXD, Windows's Winsock networking support device driver. I wrote the document on the basis of the code in libsocket, so there are probably many mistakes in the documentation. WSOCK.VXD is useful because DOS programs can use its networking services from a DOS box under Windows.
xmlfs is an experimental filesystem for manipulating XML files. Please see the xmlfs home page for more details. It's at an early stage of development.
RegDos Copyright (C) 1997-1998 by The RegDos Group
RegDos is "a portable library for calling registry functions under Windows 95 and 98 from a DOS or Win32 program." According to its documentation, it can be compiled with: Symantec (all memory models, including protected mode), Borland (all memory models), Watcom (all memory models, including protected mode), DJGPP, Pacific C.
Known problems with RegDos: