Projects
These are projects which I worked some time ago. Some of them are my personal projects which I did during my spare time. Some are my company projects which I am allowed to release for the goodness. More projects will be added from time to time when I find time to it.
Ada
When failure is not an option!
I maintain a small resource of Ada here. This Ada resource may be a little out-of-date.
The following list some of my open source Ada projects including projects of other people which I maintain:
- APQ – The PostgreSQL/MySQL thick binding, a project by Warren W. Gay.
- AdaVox – Sound software by Warren W. Gay.
- AdaMT19937 – An Ada implementation of Mersenne Twister (MT19937) pseudo random number generator.
- Othello – The classic reversi board game written in Ada.
- Ada Fingerprint Device Interface – Ada implementation of POSIX interface with fingerprint device via RS-232.
- [MySQL binding] – The Ada binding for MySQL 3.22.25-3.
- Embedded Top-Up Ordering System (ETUOS) using Computer Telephony (CT) is an automated cellular pre-paid service top-up ordering system.
- ADCT binding – The Ada binding for Dialogic Computer Telephony (CT) SDK for Linux.
- 3D Landscape Modeling and Visualization System for Mission Planning.
- RT-PMC is a Real-Time Production Monitoring and Control System for manufacturing electronics products.
- fERP or Enterprise Resource Planning for Furniture industries is a successor of fMRP.
- fMRP is an integrated software for Manufacturing Resource Planning for Furniture industries.
- [Heterogeneous Doubly Linked List] – A polymorphic bi-direction linked list using class-wide types. It does not use abstract types and it can store heterogeneous data in one list. This package was developed in 1996 with ObjectAda. It works well with GNAT too. This package is released under GMGPL license.
C/C++
It’s like shooting your own foot with a hand gun. — who?
- [Dia2Code-0.8.1 Hack] A quick hack of generate_code_ada.c of Dia2Code. Some modifications have been done to generate nicely indented Ada spec and body source files, proper parameters list in functions, and association of classes. Visit Dia2Code project site.
- [PC Support Library] (PCSL) is a C library providing low level support of basic keyboard operation; toggle num lock, caps lock and scroll lock; moving cursor around the screen, changing the size of cursor, clear screen, direct screen input and output, date and time, etc. This 1989 C library was the foundation of many other libraries and worked only on IBM PC or compatibles with MS-DOS only.
- [Advanced Data Browser] is a C++ library for browsing, deleting, editing, appending, inserting and copying of data items in column or multi-column windows. This 1991 work was developed for MS-DOS (and worked on MS-DOS only) with Turbo C++. This library was used extensively in my company fMRP (Manufacturing Resource Planning for Furniture Industries) and other software products. This source is released under GPL. Much of the comments have been deleted (as directed) in order to release the source to the public. It requires PCSL.
Solaris
Find the out-of-date (perhaps useful) Solaris here.
Contribution
- A new GnatXcode-Installation-Howto guides you to install Xcode 2.3, gcc-3.3 (gnat) and gcc-4.2 (gnat) on Tiger (Mac OS X 10.4.7).
- GnatMacOSX-Installation-HOWTO – An Installation-HOWTO guides you to install Gnat for Mac OS X.
Current Projects
The harder I work, I hunger for more. — Adrian Hoe, 2005.
I am currently working on these projects for my work as well as personal.
- Ada book – write an Ada book.
- gadasl – GNU Ada Scientific Library. Porting of GNU Scientific Library to Ada.
- 3D-Adami – An Ada 3D medical imaging libraries.
- Adafile – An Ada filing management for PostScript and PDF documents.


Listen to my podcast