Projects

I mainly developed for the following three platforms:

PC / Web projects

Some of these are current projects, some past:

GAIA tool
With this tool you can view your Roland GAIA SH-01’s settings from your PC, like exact patch parameters, patch names, arpeggio patterns and system settings.
Glass Z80 assembler
Glass is a cross-platform assembler for the Z80 processor, written in Java 7.
CSS Selectors
A mature Javascript implementation of CSS Selectors. Developed as part of grauw-lib but can also be used stand-alone.
grauw-lib
A JavaScript library with strong OOP architecture and providing a foundation for using OOP in JavaScript, while trying to stay true to the language. Contains amongst others classes for URI handling and a CSS Selectors implementation.
Firefox Dutch localisation
As a member of the Firefox Dutch localisation team, we maintain a high quality Dutch translation of Firefox. Look me up on the about page! :)
WinLIRC plugin for musikCube
This plugin allows you to control the musikCube audio player using a LIRC remote control receiver and the WinLIRC software.
Greasemonkey scripts
A couple of scripts for the Mozilla Firefox Greasemonkey extension.
EVEMon
A character monitoring and planning tool for CCP’s MMORPG called EVE Online. After submitting a few patches I joined the project as a developer.
Fuji forum
An open source forum package for LAMP servers which heavily uses functionality of AJAX technologies and REST, and generally focused on a clean, extensible design and ‘doing the right thing’ (such as having a proper MVC architecture). Started out as a deliverable for the Software Project course at my university, and a few of us continued development (at a slow pace) after the course ended.
.NET Multi-Select Treeview
A multi-select treeview control for the .NET platform, built on top of the existing treeview. It was created by Ludwig Stuyck. We use this treeview in EVEMon, and after submitting a few patches I received checkin rights for the project.

MSX projects

The MSX computer system was my first home computer, and on this platform I learned to program. Over the course of the years I’ve been a member of 3 MSX user groups: Soksoft (where I didn’t do much), Datax and finally TNI. Although I don’t participate much in the MSX scene anymore, I still try to keep up with what’s going on.

These are the projects I worked on over the course of the years:

MSX Assembly Page
A site for MSX documentation. Or should I say, the site.
MSX fair Bussum
From 1999 to 2008 I have organised the annual MSX fair in Bussum, one of the largest MSX fairs of the Netherlands. The first couple of years this was done in co-operation with MSX gg Zandvoort (Jaap Hoogendijk in particular), and it was pretty much the continuation of the Zandvoort fairs. As of 2002, I have taken over the organisation of the fair under the banner of TNI, with the assistance of Patriek Lesparre and others.
Tiger hash implementation for Z80 (finished)
Just a quick and nice side-project to see how well MSX could handle the supposedly well-scalable 64-bit Tiger hash algorithm. DOS 2 executable and sources included.
TI-83 tools (finished)
I made several tools to support development and communication between an MSX and a TI-83 graphical calculator.
TERM4MSX (beta, stalled)
TERM4MSX is a terminal program that uses the Erix Fossil-drivers and supports ANSI colours. There is a beta version available for download.
JoyNet (finished)
JoyNet is a joystick port-based ring network standard that was created collaboratively by Maarten ter Huurne, Alex Wulms, Sean Young, Werner Augusto Roder Kai, Patrick Lina, Maico Arts, Jeroen Smael, Laurens Holst and other people active on the MSX Mailinglist in 1999 (archives). It is easy to make, and compatible with the F1-Spirit 3D Special network cable when two computers are connected, but it also allows you to connect a whole chain of computers.
Strategic Army
A Real Time Strategy game. You can check out the two pages on the old Datax website: Overview and Work in Progress. The latter has a couple of early screenshots.
SA: Ancient Phoenix
Role Playing Game with cool story line, in same universe as SA. Was going to utilize v9958 for smooth scrolling…
Guru Logic (abandoned)
I left the team mid-2004 to pursue other interests.
MSX-DOS 3
A multitasking module-based operating system tentatively named DOS 3. Just a couple of ideas really.
TCP/IP stack (abandoned)
Pretty cool stack I had been working on for quite some time, but unfortunately the work got lost due to a hard disk crash. A shame, because it worked pretty well already. It could dial in, and all the protocols and negotiation up till the IP level worked, including ping. I was trying to get preliminary TCP support when I lost all my work except for a very old backup.

Datax stuff

From about 1996 to 1999 I was a member of the MSX group Datax. During that time we released a couple of products, which I have put up for download here, along with short descriptions:

Music Power #1 (ZIP download)
The first MSX music disk released by Datax (in 1996), containing 29 MB-stereo tracks. This demo was released not long before I became a member of Datax.
Track issues 1-6 (ZIP download) Track 1, 1.5, 2, 3, 4 and 5 disks
The MSX diskmagazines released by Datax (in 1996-1998, if I remember correctly). Includes the #1.5 MCCM special.
Overload (ZIP download)
The second MSX music disk released by Datax (in 1997). Has 10 OPL4 tracks and 19 MB-stereo tracks. If I remember correctly, the OPL4 player got the timing wrong when running at 60Hz (due to compensation by my code, while the replayer also already compensated for it), so you might want to avoid that.

TI-83 projects

While in high school, I also created some programs for Texas Instruments’ TI-83 graphical calculator. It has a Z80 CPU inside, just like the MSX, so the platform was easy for me to get started with. For more details, see the TI-83 projects page, or click the links below.

TransMSX
TI-83 ↔ MSX linking software.
MSX83Dev
TI-83 cross-developers pack for MSX.
MSXNukes
A tool to remotely clear your TI-83.
Angel
A demo for a game that is not finished.