Other programming projects
This page is a summary of all (at least all I can remember) programming projects I created or have had some major contribution.
How I started programming
It all started with buying a TRS-80 and meeting some people. Together we created Micro+Boek, later renamed to MiKroBoek, which has a page of its own here.
Micro+Film
Micro+Film was possibly the first program developed by me after Micro+Boek. MicroPlus passed me this client that needed a solution to track rentals of videos and games.
I haven't been able to locate any copies of the program, but I found some old pictures taken at our first client:
PS - Proportional Printing
I remember that in those days wordprocessors (we had WordStar and some others) were only capable of fixed-pitch printing, line 10 or 12 characters-per-inch (CPI). But books and magazines were "typeset" with proportional fonts, where an "i" used less space than the letter "m" (like the text you're probably reading now on your screen).
At Micro+Plus we were selling converted typewriters as printers. They had "letter-quality" output, but were not capable of proportional printing and aligned texts.
I always faced problems as challenges, so one night I decides to solve this with a small program that could real WordStar documents and print them proportionally on a daisy-wheel printer or matrx-printer that was capable of proportional printing.
The next day I talked about the result at Micro+Plus, not thinking to much of it, since it was just a very crude bit of code, although it was working.
Management got very enthusiastic about it and this resulted in the product called "PS". We sold hundreds of copies of the program, which had a very simple interface. It was written in simple BASIC code, to be interpreted (not compiled). Versions were developed by me for CP/M, TRS-80, Apple, MSX and even the first MS-Dos computers. Most were compiled with BASCOM.
On the left you can see our original propaganda for the PS program.
Here you can find the source code (1988) in GWBasic for a Diablo 1610 Daisy Wheel printer.
CuliCom - Culinary Computer Software
This one I don't remember exactly how it started. I know Jan Wagemaker probably had the idea of creating some culinary software. I had a friend, Wim Konijn, who was a professional cook. 'Joining the ingredients' I wrote the software that could create combinations of entrees, main dishes and desserts for any occasion. The first version received some nice reviews and encouraged us to release special versions, but this never happened.
This page is from a catalog of an editor that sold our software. Versions have been released for CP/M, MS-Dos, Macintosh, MSX and other systems.
This article on the right was published in the largest Dutch newspaper, de Telegraaf (I don't know the date) and shows a picture of Wim Konijn.
The original source code (1985) is here and you can download the complete program with all the options here.
HexEdit
Around the time I was working on the various PS versions, I felt need for a hexadecimal editor to make changes directly in the compiled code. This was in the eighties, when I was doing work in Z80 and 8080 assembler and using BASCOM to compile BASIC programs. Since nothing was available, I wrote my own editor, called HexEdit.
Being just something for internal use, we didn't keep the original source code. Older versions simply were overwritten with newer versions.
Afterwards I rewrote HexEdit and it still is alive here. It continues to be small (80K!) and simple but functional.
Screen
'Screen' was a very versatile database program written by a colleague (Peter) and later maintained by me. Basically with it you could design a "screen" with fields to fill in and store in a file, sorting and printing reports.
Unfortunately I haven't been able to locate any source code of this program.
B6 Bundelprograma
This program I wrote to organize 'bundles' of magazines in organized sequences of postal codes, depending on weight, following the rules defined by the Dutch postal service (PTT).
The first versions were written for the TRS-80 computers. Later versions were developed for MS-Dos.
'B6' was the name of one of the modules of the original TRS-80 version, when it was just called "Bundelprogramma".
MiKroBoek 'offspring'
Through the success of MiKroBoek we created many related programs for special purposes. (note: the names might have changed during the years. For example: HN-Film has been known as HS-Film as well)
Some examples:
Name | Description |
---|---|
HN-Film | Administration of photographic laboratories, integrated with financial administration |
HN-Bon | General delivery program, integrated with financial administration |
HN-Order | Order administration for the graphic industry, integrated with financial administration |
HN-Camping | Possibly the biggest offspring, sold to several camping-sites and hotels over the years. This package has managed thousands of reservations per year, with manu intelligent options and complete integration with the financial administration. It actually deserver a page of its own, if time permits... |
SaMBa | SaMBa has been a venture with ABI in Atlanta to launch our program in the United States as a solution for Small and Medium Business administration |
'Lichtsystemen'
In a joint-venture with another company, I wrote a complete system for a company specialized in lightsystems. For judicial reasons, I cannot elaborate too much, but let's say this was not a complete financial success.
The program was written in Clipper (!) and I still have some snippets of source code here.
Threadtest
Once I was called to evaluate a problem that was occuring at one of our biggest clients in Brazil.
Situation: On peak-days, hundreds of client-applications would connect simultaneously to the server, aparantly overloading the application. One thing called my attention: the application opened a thread for every external connection. Having experience with Windows, I knew this could cause quite some overhead.
As always, I created a program to stress the system. The result is available for download here. Just execute the program in a DOS-Box as "ThreadTest xxx", where xxx = the number of threads to start.