Windows Utilities

Applications * Screen Savers * Documents * Databases


Home Planet

Home Planet is a Microsoft Windows 3.1, 95/98/Me, and NT/2000/XP application which puts a somewhat different spin on the usual astronomical or planetarium program. Home Planet places the Earth in its place in the universe, allowing one to look up toward the stars or down upon the Earth from a variety of perspectives. Comprehensive documentation is included in a hypertext help file. For additional information and instructions on how to download and install the software, please see the online documentation. New: screen saver updated for Windows XP dual screen and registry-based individual settings, and to use the cloudless Earth image.

Anagram Finder

Did you know that "aim of blur" is an anagram of "Fourmilab"? Well, now you can find all kinds of cool anagrams yourself, on your own computer, without even connecting to the Internet. Fourmilab's Anagram Finder is a command-line program which finds all the anagrams of a given phrase made up of words from a list of 117972 words legal in the popular crossword game. You can build your own dictionaries from custom word lists and search for anagrams using them. The program is written in C++ and may be built on any system with a modern, compatible, compiler such as GCC. A ready-to-run Win32 executable and complete source code are available. Written in the literate programming style, the hyperlinked source code may be read on line. New version 1.3 fixes compile problems with GCC versions 3.3 and 3.4, library incompatibilities on Solaris 5.9, and now includes a native 32-bit Windows executable built with Microsoft Visual Studio .NET.


Cellular Automata Laboratory invites you to explore the world of cellular automata with the aid of high-speed programmable simulators for both MS-DOS and Windows. Cellular automata rules are defined by short programs written in Java, C, Pascal, or BASIC; rule definitions in Java can be compiled even if you don't have a Java compiler by using a Web-based compilation server. The accompanying on-line laboratory manual, equivalent to more than 250 printed pages, explains the theory of cellular automata, how to use the simulator programs, documents the many ready-to-run rules included, describes how to create your own original experiments, and contains a comprehensive bibliography.


Portable C program which encodes and decodes files in MIME "Base64" encoding; this comes in handy when developing E-mail and Web servers which accept and deliver embedded binary files. New January 2001 update adds support for EBCDIC systems and 32-bit Microsoft Windows platforms and includes a ready-to-run Windows executable.

Currency Basket Weaver

This directory contains the file, a PKZIP archive which extracts into the file basket.xls. This is a Microsoft Excel 5.0 (or above) workbook which allows you to compose baskets of the major trading currencies: Swiss Franc, German Mark, British Pound, Japanese Yen, and U.S. Dollar and evaluate their performance over the period 1984-1994 in terms of overall gain or loss, yearly volatility, and maximum gain and/or loss from the initial position. Results are presented both for investors who "keep score" in US$ and Swiss Francs. A monthly database of currency values is included.


C++ program which automatically translates electronic texts prepared in the format used at this site into LaTeX for typeset output, HTML for Web publication, Palm Markup Language for handhelds, or 7-bit ASCII for readers unable to display 8-bit ISO characters. Includes tools for editors to produce and validate electronic books. Source code for Unix systems and a ready-to-run 32-bit Windows executable are available.

Floating Point Benchmarks

There are many disadvantages to being a balding geezer. In compensation, if you've managed to survive the second half of the twentieth century and been involved in computing, there's bearing personal witness to what happens when a technological transition goes into full-tilt exponential blow-off mode. I'm talking about Moore's Law—computing power available at constant cost doubling every 18 months or so. When Moore's Law is directly wired to your career and bank account, it's nice to have a little thermometer you can use to see how it's going as the years roll by. This page links to two benchmarks I've used to evaluate computer performance ever since 1980. They focus on things which matter dearly to me—floating point computation speed, evaluation of trigonometric functions, and matrix algebra. If you're interested in text searching or database retrieval speed, you should run screaming from these benchmarks. Hey, they work for me.

New September 2012 update adds Haskell to the C, FORTRAN, QBasic, Ada, Common Lisp, Java, JavaScript, Pascal, Perl, Python, Ruby, Smalltalk, and Visual Basic (6 and .NET) implementations of the original floating point benchmark, and includes a comparison of the relative performance of these languages.


Nerds weren't held in the highest esteem in the tempestuous times of the late sixties, but if you had access to a mainframe computer with a fast line printer, a great way to make new friends and meet radical chicks was cranking out banners for the cause du jour on the graveyard shift when the Man wasn't looking. The FIST program traces its lineage directly back to a program I punched onto Hollerith cards for a UNIVAC 1108 in September 1969. It prints banners with a clenched fist and block-letter slogan of your choice. Various silly options let you choose a right- or left-handed fist according to your political persuasion and to adjust the size of the fist commensurate with the vehemence of your convictions and your printer's paper size. In the spirit of Donald E. Knuth's most excellent mise jour of the Adventure game, this version is presented as a literate program in the CWEB language; C source code and a ready to run Win32 executable are included.


Command-line utility which computes and checks message digests (digital signatures) generated by the MD5 algorithm as defined by RFC 1321. This program is handy for software installation, file verification, and other system administration shell scripts and Perl programs. Includes complete C source code for Unix and a ready to run Win32 executable. New version 2.0 adds multiple file signature generation (including wildcard expansion in the Win32 version), tagging signatures with file names, and optional lower case letters in hexadecimal output.

MIDICSV: Translate MIDI Music Files to and from CSV

MIDI music files are a simple and elegant representation of musical compositions, but are stored in a somewhat arcane binary format which is difficult to process without specialised libraries. MIDICSV includes two utilities, midicsv and csvmidi, which inter-convert MIDI files and Comma-Separated Value (CSV) files preserving all information. CSV representations of MIDI file may be loaded into spreadsheets and database programs, and can be easily processed with text processing languages such as Perl and Python. A variety of examples, written in Perl, illustrate generation and transformation of MIDI music files in CSV format. Complete source code in portable ANSI C and ready-to-run WIN32 executables are available.

Moontool for Windows

Microsoft Windows tool which displays the current phase of the Moon in an icon and other information when opened. The program is in the public domain and complete source code is available. New 1999 release includes a 32-bit version which supports the Windows 95/98/NT time zone setting, works for all non-negative Julian day numbers, minimises to the system tray, and includes a Help file. For old time's sake, an updated 16-bit version compatible with Windows 3.0 and above is also available.


Portable C program which encodes and decodes files in RFC 1521 MIME "Quoted-Printable" encoding. You can use this developing E-mail and Web servers which accept and deliver text files containing characters not present in the 7-bit ASCII printable set.


Extended file dump and load utility for Unix and 32-bit Windows. Lets you dump a file in hex, decimal, or octal (with optional side-by-side ASCII/ISO-8859), then use whatever text editor you like to edit the data, even inserting and/or deleting bytes, then reload the edited dump to create a modified binary file. No need to learn a different editor to edit binary files!

Screen Savers

Bullets Screen Saver

The Bullets Screen Saver extends the life of your monitor by riddling it with indiscriminate gunfire, complete with (optional) sound effects. Both a ready-to-install screen saver for 32-bit Windows systems and source code are available. New version 2.0 is compatible with dual screen configurations on Windows XP and saves preferences in the registry individually for each user.

Craters Screen Saver

What better way to protect your monitor's phosphor than by smashing rocks into it at dozens of kilometres per second? The Craters Screen Saver simulates cratering of initially flat terrain, obeying the same power-law relating crater size to number observed on airless solar system bodies. New version 3.0 is compatible with dual screen configurations on Windows XP and saves preferences in the registry individually for each user. This is a minimalist screen saver originally released in 1994 which appeared in the November 2000 issue of Sky & Telescope magazine. Retro-computing enthusiasts may download the original version for Windows 3.1 which runs fine on a 20 Mhz 80386 and will probably work on a PC/AT with an EGA.

Earth Screen Saver

The Earth Screen Saver (for 32-bit systems such as Windows 95/98/Me and NT/2000/XP only) shows the Earth with the correct illumination based on the date and time. You can view the Earth from the Sun (day side), Moon, night side, or at a given altitude above any location specified by latitude and longitude. New version 3.1 is compatible with dual screen configurations on Windows XP and saves preferences in the registry individually for each user.

Millennium Screen Saver

Inspired by the Chris Carter drama series, the Millennium Screen Saver counts down the days remaining until the apocalypse of your choice—perfect for Millennium fans and programmers engaged in the struggle against the forces of idiocy to avert catastrophe when date fields overflow. Both a ready-to-install screen saver for 32-bit Windows and source code are available. New version 1.2 is compatible with dual screen configurations on Windows XP, saves preferences in the registry individually for each user, and counts down, by default, to Black Tuesday, January 19th, 2038, when 32-bit signed Unix time() values go negative.

Sky Screen Saver

Now you never need to go outside again! Sky Screen Saver shows the sky as it presently appears including stars from the more than 9000 star Yale Bright Star Catalogue, the Sun, Moon (with the correct phase), and planets, deep sky objects drawn from a database of more than 500 prominent objects including all Messier objects, constellation names, boundaries, and outlines, and ecliptic and equatorial co-ordinates. All of these items can be individually selected to customise the display. The screen saver can be configured for any time zone and any location on Earth. This program is based on the more comprehensive star map window of Home Planet, adapted to be a self-contained and well-behaved screen saver. Like Home Planet, this program is in the public domain. New version 3.1 (July 2006) saves preferences in the registry individually for each user.

Slide Show Screen Saver

The Slide Show Screen Saver shows images (in JPEG, GIF, PNG, and BMP format) and plays sound files (MP3, WAV, and MIDI) from a designated directory, either in random order or alphabetically by file name. A variety of options allow scripting slide shows and an accompanying sound track. Both a ready-to-install 32-bit screen saver for Windows 95/98/Me and NT/2000/XP and source code are available. New release 2.0 allows Internet shortcuts (.url files) to be included in slide directories, permitting the inclusion of dynamic images and sounds from the Web in slide shows, improves randomisation when in “shuffle play” mode, and saves preferences in the registry individually for each user.

Terranova Screen Saver

Since 1995, our Terranova: planet of the day has invited visitors to celebrate the inexorable spread of life throughout the galaxy by exploring a new terraformed planet every day. Now, the Terranova Screen Saver for Windows 95/98/Me and NT/2000/XP lets you generate your own endlessly varied planets, star fields, and cloudy skies. This screen saver is extremely computationally intense and is not intended for use on computers with processors slower than a 90 MHz Pentium. New version 1.2 (July 2006) saves preferences in the registry individually for each user.


“Corrupted Downloads”: What Is to Be Done?

One of the most persistent complaints to operators of Web sites which provide downloadable archives is that files on their servers are “corrupted”. As is so often the case when corruption is mentioned in connection with computers, the problem is not at the Web site, the user's computer, nor on the Internet which interconnects them, but at Microsoft, whose incompetently implemented attempt at a Web browser randomly truncates downloads and then compounds the problem by storing the truncated file in its cache and supplying it for subsequent download attempts. This document describes the problem and suggests alternatives which avoid such problems. A companion document, Downloading Files from Fourmilab with FTP, provides a step-by-step tutorial for the alternative of downloading with Microsoft's command-line FTP client, while explaining why, thanks to how laughably obsolete this program is, it is sadly not an option for many Internet users.

How to Play DVDs with any Region Code on Windows 98

Digital Video Discs (DVDs) bear a "region code" intended to block their being viewed on players sold in a different geographical area. Customers in Europe, for example, who order DVDs from online vendors in North America may receive discs their players won't accept. Many computer-based DVD decoders are not hardware region locked and are physically capable of playing discs from any region. Microsoft, however, have blocked this in the DVD Player shipped with Windows 98 by a crude software kludge. This document explains how to circumvent the region lock and play any DVD on Windows 98. These instructions apply only to the Microsoft DVD Player included with Windows 98, not other players supplied with decoder boards, and will not work if your DVD decoder card contains a hardware region lock. See the full document for additional details.

How Many Dots Has It Got?

What's a "WUXGA"? Ever since the advent of the IBM PC, manufacturers of personal computers, graphics adaptors, monitors, and projectors have obfuscated the resolution of their hardware with increasingly grotesque acronyms. This document deconstructs the various acronyms and provides the information you ought to have been given in the first place: how many pixels each mode can display.


Palomar Observatory Sky Survey Catalogue

This directory contains the file, a Zipped archive which extracts into the file poss.xls. This is a Microsoft Excel 5.0 (or above) workbook which contains a catalogue of the Palomar Observatory Sky Survey plates, including the mapping between the original plates and the MicroSky microfiche edition published by Deen Publications, Inc.