GEOS is one of those tragic stories so common in the computer world. When Windows still only supported non-overlapping windows, and Apples had a screen the size of a postage stamp, GEOS was a multithreaded object oriented operating system with software based virtual memory, a fully-fledged windowing system with fully transformable graphics contexts and outline fonts that ran on a 4.77MHz 8088. And it was so astonishingly efficient that you could get a fully functional, useful, windowed application in 4kB (of which most was the icon).

Alas, Geoworks who made it had no more idea of how to market it than I do of 4th century Singaporean economics, and so we are stuck with Windows and X and Geoworks get chapter 11.

GEOS was then bought by New Deal, who died, and then by Breadbox, who at time of writing are still alive, just.

Nevertheless, GEOS was a really nice system to write for, and I was really enthusiastic about it, so I wrote a fair bit of software. Which you can find here. 126 kB 255 kB

Binaries and source for version V0.5 (the first and only beta release) of my object-oriented programming system for GEOS. This is a lot more stable and rather more complete than V0.1, the pre-alpha version (V0.1 shouldn't have run... there was a very large bug in it). This package contains the executable, the documentation, the source for the class library, and a very few example programs. Unzip with -d because the archive contains subdirectories.

The source package contains all the GOC source code, the scripts needed to build the system, the maintenance document (including a full function reference), the source for the class library, and the original GeoWrite file that produced the help file in the binary package. Unzip with -d because the archive contains subdirectories. Requires a copy of AWK to build (try your local simtelnet mirror). 4 kB

A simple help file viewer. This is more designed for creating standalone help file viewers (for distribution with applications) than for browsing, but I use it a lot when I'm writing documentation for my own programs. 3 kB

A set of utilities that provides a wrapper around BMAKE.EXE and PMAKE.EXE, that speeds up compilation considerably (or at least, seems to to me). Requires a copy of AWK (try your local simtelnet mirror). 7 kB

Some test programs I wrote when playing with NewBasic. If anyone wants to play with these, modify them, or whatever, feel free; there's a simple graphic drawing program, a complete Noughts and Crosses game engine, and nearly all of an Othello game engine. All it's missing is the diagonal testing. It's a nice example of how to create components dynamically. 16 kB

A development snapshot of my NewBasic Console program, for interested parties to look at. Now works more or less. The shell supports the following built-in commands: set, unset, show and echo, and it will execute external commands (one provided; hello). It even stays up for respectible lengths of time before crashing. 10 kB

A development snapshot of my NewBasic equation editor, for interested parties to look at. Now works quite well. The markup language has been changed to be TeXish, so that groups are done with {...} and commands are prefixed with a backslash. Now supports \quot, \super, \sub, \supersub, \oline, \uline, "..." for plain text, and a whole lot of exotic TeX symbols, most of which don't work properly because I can't display in SymbolPS yet. It will render all this, recursively, but you can't export anything yet, only display it.

Try: \quot 1 {x+1} + \quot 1 {x+2} = \quot \super y 2 \super z 2 72 kB

A beta release of my MIDI File Player (v0.2). This will play type 0 and type 1 MIDI files. This program is not complete; the user interface is primitive and it is not quite stable, but it should still work pretty well. Feedback is welcome. 1005 kB

Fortune cookies for all tastes and occasions. Down? Depressed? Defragmenting? Try a fortune cookie, the guaranteed pick-me-up and all purpose remedy for excess free time. This program comes with an easy-to-use fortune cookie reader, and a database of thirteen thousand, three hundred and forty-two fortune cookies ranging from the philosophical to the witty to the just plain bizarre. And all this can be yours for just two and a half megabytes of disk space! 459 kB

Icoholics 3, in GEOS format. This file contains about 1500 16-colour icons. That's a lot. I've categorised about half of them, but the rest are simply divided into subdirectories by first letter.

Tip: After looking at some of these, you may find that your Token Database is getting a bit big. Don't worry, you can delete this whenever you like (PRIVDATA\TOKEN_DA.000) and GEOS will reload the icons as it needs them.

Note: This is a double-compressed ZIP file (a ZIP file containing an uncompressed ZIP file). The reason I did this is because ZIP files don't compress file headers, and there are so many files in here that a single-compressed file is ~1.5MB. To decompress this, unzip once, which'll give you a file called, and then decompress that with the -d option to preserve directories.

I used to distribute this as a TGZ file but nobody in the DOS world seems to know about these. Oh, well. 41 kB

A beta (but perfectly playable; V0.3) release of my port of Sokoban, the classic block-shifting program. 85 levels of mind-numbing, er, fun. 106 kB 172 kB

Axiom V0.4pre2 Beta. The latest and last release of Axiom, the totally cool programming system for GEOS. This version you can actually do stuff with! Write your own programs, compile them, and run them, all from within GEOS! This one actually has functionality! And documentation! And bugfixes!

New in 0.4pre2: music! You can now use Axiom to make, erm, beautiful music with your GEOS or NDO system! Supports SoundBlaster and PC speaker, and anything that can pretend to be those. Up to nine simultaneous voices and you can play any instrument from the General MIDI standard (though they mostly sound awful)!

New in 0.4pre1: GUI support! Yes, you finally have access to the GEOS widget set. Included is a demo program showing how to do it, but the GUI system is as yet undocumented. 847 kB 39 kB

GAP V0.1 beta. GAP is my C development system and command line environment for GEOS/NDO. This will will turn your machine into a miniature Unix box! This package contains a C compiler, the GAP run-time environment, and dozens of applications, including a Bourne shell, the bc arbitrary precision floating point calculator, and more, all running in a window on your GEOS desktop! Oh, yes, and advent.

Like all the other programs on this page, this needs to be unzipped with directories (that's the -d option on the command line version of pkunzip) in your GEOS root directory; these days that's usually C:\NDO.