Code

These sources have been released to the public domain without any warranty. All I wish is that you would send me an email if you use any of them. I will consider releasing more code if there is interest. Or when I feel like it.

(Funny thing that; you ask for a postcard, you get email. You ask for email, you get nothing).

Major Projects

SoLoud Audio Engine

Downloads and information

Free (more free than GPL), easy c/c++ audio engine for games.

TextFX Text Mode Graphics Library

Downloads and information

The "famous" TextFX textmode graphics library, converting graphics to NT console art.

ESCAPI

More info and downloads

Extremely Simple Capture API

Simple DLL interface to use video capture devices (i.e. webcams), along with a simple example that uses SDL, as well as a couple even simpler examples that don't even require SDL.

Compressed File Library (CFL)

Information and downloads

Compressed File Library

A DOOM .wad like virtual filesystem.

The Rest

tokenizer.zip

4kB

String tokenizer

One of the tasks I find myself doing over and over again is tokenization, or lexer work. So I figured I'd just dust off my old 'tokenwad' from CFL, clean it up, add all the out of memory checks, and re-release it.

DialogTree (D3) Editor / Engine

dialog tree middleware

Dialog tree engine and editor. A bit under construction, but already usable. Outputs in XML and JSON formats as well as proprietary binaries.

The Hershey Fonts

in vertex buffer friendly format

The Hershey Fonts

I've written a converter for the Hershey fonts to a vertex buffer friendly format. The page contains all the fonts in both original and converted formats, font previews and the converter itself.

sol2dglbasecode21.zip

1592kB

Sol's 2d gl basecode 2.1

Slight clean-up, as well as a little functionality update to support mixing of 2d and 3d content. Also ditched sdl_image, replacing it with public domain image loading functions.

boomboomdrillersource.zip

37kB

Boom! Boom! Driller! Source release

Source dump of Boom! Boom! Driller!, sans audio code. Couldn't get it to compile with a little effort, but the sources should be complete. If you get it to compile, toss me a mail =)

ddwrapper_01.zip

52kB

DirectDraw wrapper 0.1

Wrapper for DirectDraw, DirectDraw2, DirectDrawSurface and DirectDrawPalette. Does logging of the calls to a file and forwards the calls to real ddraw.dll. Made to analyse what the heck a game is doing, and possibly to work as a base for a better ddraw.dll replacement for said game.

Rather unfinished and unstable. Only the bits are implemented that the game used, and other apps may or may not work. In any case this is more of a research / base code for further development, and nothing really finished.

I'm releasing this in case someone has use for it. Based on these guys code, but largely reworked (their code only cared about ddraw7).

sol2dglbasecode20.zip

1049kB

Sol's 2d gl basecode 2.0

Updated to include all improvements from the Atanua project. Better IMGUI widgets (esp. slider), portability to linux and OSX (including different endianess), some simple collision routines added, etc.

sol2dglbasecode10.zip

1044kB

Sol's 2d gl basecode 1.0

Pile of source including bunch of routines handy for quick 2d game programming. Features include particles, sprites, fonts, IMGUI widgets (button, scrollbar, text field), etc.

theremincampoop.zip

359kB

Theremincampoop 1.0

A webcam-based musical instrument using ESCAPI. Show your camera some colorful objects and enjoy the noise.

attractorexplorer10.zip

585kB

Attractor Explorer 1.0

Tool to play around with strange attractors, along with source. To compile the source you need wxwidgets configured with opengl enabled (and a lot of patience). Win32 binaries included.

midiparser.zip

4kB

MIDI parser

A parser for MIDI files that I wrote when I was doing a small softsynth for an AVR microcontroller.

interjector10.zip

203kB

Interjector 1.0

Simple C preprocessor that inserts macros at all function entry- and exit points. These macros can then be defined to perform different things, such as call flow logging, performance analysis, and similar diagnostics.

lsys.zip

113kB

L-system fractals in OpenGL using SDL.

I had a l-system engine in "gateways". I re-built an l-system engine with more or less the same features for "the line age". This zip contains the sources, a bunch of the l-systems from the demo, as well as win32 binaries.

pqtorusknots.zip

225kB

PQ-torus knots in OpenGL using SDL.

Early 2004, I decided to give PQ-torus knots a spin based on the theory on this blackpawn site. The code uses SDL as the basis and renders single-strip texture-wrapping-corrected PQ torus knots using OpenGL. And it generates normals and everything. For one reason or another I never got to release this earlier. Zip contains all sources and pre-built win32 binaries.

pcxlite.zip

25kB

PCXLite - lossless PCX compressor.

A PCX compressor I made in 1998, now ported to windows. Analyses PCX files and rearranges the palette in order to get most out of the PCX compression. Due to the way photoshop saves PCXes, this tool can chop as much as 25% off PCX sizes. It's another question whether anyone finds any use for it these days =) All source etc. included.

qmedian.zip

5kB

Median cut color reduction source. Re-entrant, completely dynamic, optimized for speed. Uses radix sort.

dpapcpl.zip

4kB

Deluxe paint animator PC player source. This player has pretty much same interface as the fli player. I'm pretty sure someone wants this source pretty badly, as it gets called after every now and then.. based on someone elses' work which was very horrible, but completely recoded.

Also includes a fun rant regarding the format.

pfence14.zip

6kB

Picket fence malloc debugger v1.4, designed to help hunting down pointer-specific bugs in C programs.

Like the name implies, this is a very bad imitation of electric fence on linux. As dos4gw environment does not support any kind of memory protection, I had to cope otherwise.. download it and read the manual.

txtfli2.zip

36kB

Textmode fli animation player: includes re-entrant output device independent fli/flc player, truecolor buffer to textmode converting routines, and examples of fli players in 13h (320x200x256c) and textmode.

Fli and flc animations can be made at least with autodesk animator, 3d studio and Dave's Targa Animator; fli files are 320x200, flc:s vary in resolution. All flc/flc files are 256c. Flx and flh variants exist which use true- and highcolor, respectively, but I haven't found any information of these.