Visual C#/C++ / Access / SQL


Virtual Earth Desktop Integration for Product Tracking
Screen Shot Designed and wrote an integrated Virtual Earth location lookup and display into a desktop database application.
Nutrition Facts
Screen Shot Designed and wrote a Graphics generator for the Nutrition Facts label that appears on food products in Canada. The specifics of the content of the food products are entered into a database and the graphics for the label are generated based on the rules published by the Canadian Government.
Herb Inventory System
Screen Shot Designed and wrote an inventory control and pricing system for maintaining information and printing product lables with barcodes.
Low Level Hardware Control
Test Application Screenshot Designed and wrote a device driver for Windows to control the Printer Port with Interrupt driven I/O capture. This was implemented in a generic Test application for the DLL and linkable Library.


Visual BASIC / Access / SQL


Wholesale Diamond Inventory/Consignment System
Screen Shot Designed and wrote a Wholesale Diamond Inventory/Consignment System. For keeping track of Gem stock, pricing and consignment details.
Natural Products Approval Submission Program
Screen Shot Designed and wrote a system to maintain the formulas for Natural Products submissiona and to generate the submission paperwork along with associated (and required) support documentation.
Job Scoring System
Screen Shot Designed and wrote a Job Scoring system for assisting the evaluation of potential jobs/contracts as to their viability. Written for the TV/Film Production Industry.
Client Information System
Screen Shot Designed and wrote a Client Information System for the Social Services Industry. Facilitating intercommunication with Government provided systems to prevent the necessity of double (or triple) entry of client information. Covers all general client data as well as immigration specifics, employment details and service tracking.
Personnel Locator
Screen Shot Designed and wrote an application for locating personnel on a premise. The hardware comprises small credit-card sized RF Transmitter Badges which the personnel wear or carry (each badge has a unique BadgeID) The software monitors up to 128 RF Receivers (each associated with a LocationID) on RS232 Serial Ports and logs all BadgeID receive events with a LocationID and a Time Stamp. The system logs all Badge Receive Events to an MS Access Database; personnel can be looked up to get their last location and time; or a list of all personnel at a given location can be viewed.
Copy Scheduler
Screen Shot Designed and wrote a small utility for regularly copying files from one drive to another on a network. Full control over the times and intervals to do regular backups of key organizational files.
Project Management
Screen Shot Designed and wrote a Job/Project Quoting system used for quoting development projects as well as tracking their progress, revisions, time line and costing.
Trade Directory
Screen Shot Designed and wrote a Trade Directory Maintenance programs. Used for maintaining Trade Directories for publishing. Maintains flexible category relationships among Companies, Services/Products provided, contacts, distributors, agents, warehouses, etc.
Screen Shot Designed and wrote a Subscriber Maintenance System for maintaining subscribers to a magazine. Allowing for the tracking of subscription payment, re-newal communications, mailing label generation, direct-mail list export.


Misc Visual BASIC / Access
Designed and wrote Poster and Frame database system for tracking merchandising poster installations and marketing campaigns. Allows for Poster and Frame Location management, Poster and Frame Inventory, Campaign management, Installation/De-installation Work Orders, etc.
Designed & wrote a lock security system to control over 200 locks from a PC connected to a huge panel of input sensors and output relays to monitor lock status and control lock solenoids based on access requests received over RS232 from the site's HP mainframe.
Designed and wrote a program for despatching alphanumeric pages to Motorola Pagers.
Designed and wrote a serial communications program for to merge and split RS232 information to/from COM 1 to/from COM2,3&4.
Many other applications, big and small written in this language.


Palm® Computing Platform


Order Scan
Screen Shot Designed and wrote a generic Product Shipping Application using Symbol® Technologies SPT1500/SPT1700/SPT1740 Palm Computing Platform Devices with bar Code Scanner. Tracks User, Carrier, Trailer Number and scanned Serial Numbers of items shipped and provides synchronization with the Company's main database.
Data Monitor
Screen Shot Designed and wrote a simple Backup Conduit for retrieving data collected on Palm Computing Platform devices.


C / C++


Wrote a proprietary application to analyze the surface of CDROMs using ATAPI interface via SCSI Pass-Through. Identifying various media errors, artefacts and information parameters. Drivers for application written for both ASPI and SPTI protocols.
Wrote a DLL Hook application to capture detailed ATAPI command information being used by an application.
Wrote a DLL to allow Visual Basic programs to access Radiology X-Ray equipment and to integrate this equipment output with the Client Managaement Information System.
Designed and wrote a custom telemetry system controller incorporating motor speed control, Analog-to-Digital data acquisition and real-time telemetry communications.
Designed and wrote a generic Graphics Print Server to pick up graphics files from a disk, decode and print them to a wide range of printers.
Wrote a DLL (Dynamic Link Library) to allow Visual Basic programs to implement Software Security Keys connected to the printer port.
Wrote a DLL to allow Visual Basic programs to access custom hardware cards installed on PCs for Industrial Control purposes.
Designed and wrote program for controlling cameras from an RS232 port to utilize Zoom, Pan, Tilt, etc. available with the camera concerned.
Designed and wrote a custom TSR to transfer mail files to and from different nodes on a LAN using low level IPX/SPX Transport over Ethernet.
Wrote a number of programs for converting various database formats to various other database formats where such conversions were not supported by the databases concerned.
Designed and wrote a serial communications program to merge and split RS232 information to/from COM 1 to/from COM2,3&4.
Programmed a process which receives files and Inter-Process Communications (IPC) messages from a serial port server and updates a database of approx 150 tables with a single Dynamic SQL update routine. This allows changes to the database definition without requiring changes to the process which maintains the data in it.
Programmed a process which services data requests from any INFORMIX database by receiving SQL statements via IPC and file transfer. This is effectively a "generic" database server.
Wrote a serial port server which communicates with a PC on a proprietary protocol for information exchange.
Programmed a printing server which handled 90% of the printing functions on a main computer system, servicing numerous other processes via IPC and file transfer.
Wrote a program to format a number of text files being imported to a UNIX system from a DOS system.
Programmed a process in C under UNIX which generates 90% of the reports available on a main computer system serving numerous other processes by running INFORMIX ACE Reports on request via IPC and file transfer.
Wrote about 20 different C functions which were compiled to run as calls from within ACE Reports which included functions for Laser printer setup, text manipulation, file handling, IPC message handling, etc.
Re-programmed a central personnel database management server on a UNIX based system so that multiple copies of the database were maintained over all network locations remote to the central database.
Programmed a process on a UNIX based system which maintains a database for tracking personnel performance.
Again, many other applications, big and small written in this language.


Assembly Code

Please see the Hardware page.