Freeware, Shareware, code, and other programming stuff

[ BootSelect ] [ KeepWndOnTop ] [ FrontEnd ] [ DownloadDrop ] [ Afterstep Window Manager ] [ Vim ] [ Dreamblade ] [ gp2x ] [ Other stuff ]

Boot Select: ( Windows NT/2000/XP )   [freeware]

This program allows multi-boot system selections to be made before rebooting. You can run this program, select one of the OSes available to you though the boot menu and walk away (we all know how long Microsoft's OSes take to boot/shutdown) and the selected OS will be the new default.

This program can only be run from Win32 OSes and is only really useable if you have NT and use it for your boot loader instead of LILO. It pretty much is a stand-alone applet replacing what can be done in Control Panel->System->Startup/Shutdown.


KeepWndOnTop: ( Windows 9x/NT/2000/XP )   [freeware]

Allows a window to stay in the top of the Z order regardless of what other windows are up. Unlike Nail and Top-It this program doesn't sit in the system tray. Instead it integrates with the system menu (activated by either clicking the icon in the upper left corner or pressing Alt-space).

I usually hide the taskbar and avoid the mouse at all costs so this was useful for me. Tell me what you think.


FrontEnd: ( Linux/Windows 9x/NT/2000/XP )   [freeware]

This program was originally a front end for the great Atari ST emulator for Dos, Pacifist, written by Fredric Gouidin. The only front ends I had seen for it were for Win95 and I used to run NT and Dos, and used Pacifist in Dos, so I originally wrote this for Dos. I have since stopped using the Dos version and now have a native Win32 version. (I still have the original Dos version and a port using Win32 Allegro if anyone is interested.) It is by no means a comprehensive frontend for any one emulator. It is very general and works well with a lot of the ones available on the net. It has since grown into a pretty simple but configuratble front-end. I also use if for Vice and other emulators.

The original version was compiled using the free DJGPP compiler and the Allegro graphics library which are both great. I then ported it to wxWindows.

The current version uses pygame, a great cross platform gaming library.

Here are some of its features:

  • Regular expression matches of overrides for emulator, arguments, display name, and more.
  • Support for pre and post launching commands (for stuff like Joy2Key).
  • Display images for games, and supports many image formats.
  • Displays text for individual games.
  • Displays text for emulator/program itself.
  • Allows multiple entries to point to same file. ala PP, Automation, etc (most frontends I've seen don't support this).
  • Custom command args for programs overridding default command args. (this makes it very flexible, i.e. using more than one disk in Atari800).
  • Runs on any platform pygame has been ported to (Windows, Linux, Macintosh).
  • You can customize colors and font sizes for better viewing on displays like TVs.
  • Supports keyboard and mouse entry. Key assignments are configurable.
  • Can run windowed or fullscreen.
  • All menus are python files so you can do some things not possible in other programs

I mainly wrote it for my needs and was encouraged by someone to place it here because they thought it was visual and simple.

View screenshot of FrontEnd!

Windows/Linux:   Download!

Example menu files (Atari 7800, a simple menu and TI 99/4A, one of the more complicated ones showing the flexibility):

  Atari 7800 menu

  TI99/4a menu

Download Drop: ( Any platform that can run Java )   [freeware]

This program is for downloading lots of links but not having to wait for the 'Save' dialog to show up for each and every one. It is also unlike tools like fetch, curl, and wget in that you can select only the files you want. The program works by dragging links from your web browser and dropping them onto the Download Drop window. Simple as that. Each file is downloaded in order. There are also options to configure such as where to save downloaded files etc, how many simultaneous downloads, delay between downloads, etc.

Written using the Java JDK 1.5.

Download Drop jar file:   Download!   

Afterstep: ( Any platform Afterstep WM runs on )

Patches: All tested with version 1.8.9

vi/arrow menu navigate patch

This patch allows traversal of the menus using the vi/arrow keys correctly. The current implementation in afterstep proper moves the mouse in increments of the height of an individual menu which isn't that useful. Patch is applied to .../src/afterstep/menus.c. Just unpack this patch in the src/afterstep directory and run patch -p0 < vi_menu.patch


root menu centered patch

This patch makes it so that if you use a keyboard mapping to do a PopUp "0" it will appear in the middle of the screen. I use the keyboard a lot so it's useful for me. A side effect of this is that the pointer is also warped to the center of the screen. Patch is applied to .../src/afterstep/functions.c. Just unpack this patch in the src/afterstep directory and run patch -p0 < root_menu.patch


gp2x handheld: ( gp2x only )

Emulators and more:

Go to my gp2x page for various downloads, including gp2xmess

Vim: ( Just about any platform )


Go to my Vim page for various downloads, including vimsh

Dreamblade: (Windows, Mac, Linux)

A now defunct CMG from Wizards of the Coast. It is a cross between Magic the Gathering and Chess. My version supports all released minis, AI player, and lots of other extras. If you are into Star Wars, it may remind you of Dejarik.

nCurses and wxWindows versions:

Go to my Dreamblade page for various downloads

Other Stuff:

Clipper: (Linux/Unix):

This is a python script which syncs up the clipboard to the PRIMARY selection, usually selected by dragging the mouse and then pressing the middle mouse button to paste. Running this script in the background will put the contents of the PRIMARY buffer into the clipboard if something new is added to the PRIMARY buffer. Useful for selecting text in an xterm and then using it in a Desktop Environment application such as Galeon or Mozilla via paste.


Cabinet menu: (Windows/Linux):

This is also a python script which uses the SDL library via pygame. I use it in my M.A.M.E. cabinet to select different emulators to run.

  • Allows launching multiple emulators/programs
  • Can be rotated vertically/horizontally
  • Display images for each program
  • Can exit to desktop, reboot, or shutdown from the menu
  • Works w/ keyboard encoders and pointing device like a trackball or spinner
  • Keys can be remapped easily


shutdown.exe: Needed for Win2k/WinXP


WordSelect Macro: (VC++ 5.0 & 6.0):

This is a VBscript macro that simulates a double click on a word. It is useful for keyboard jockeys. I have not found an easier way to do this. Selecting and using word right or left does *not* work. This will. I now use VIM so I don't use it anymore. wbve in Vim works just fine. This macro is quite old and I'm not sure if it still works in the current DevStudio releases.


Hardware Port I/O Doc-FAQ:

This document was originally written (in 1997) to help engineering types who moved from DOS to WinNT still do port I/O easily. The "safety" of Windows (especially Windows NT) as far as blindly accessing hardware puts a damper on programmers who want to do simple data acquisition or drive small circuits from the parallel port. This document has many solutions/suggestions on how to accomplish these tasks in the Windows environment. The information in here is quite dated but I still get questions to this day on the material.