A little history of UniPad


SC UniPad is a Unicode plain text editor and one of the current projects I'm involved in. You can download UniPad from www.unipad.org/download.

The project started back in 1992 as a Farsi editor written by my former colleague (and now partner) Djamshid Sharmahd. The editor, called PED, was developed on an XT 8086 and ran, of course, on MS-DOS. The whole project fitted on a 5¼" disk. The DOS fonts had been modified with a hex editor to display Farsi. PED somehow emulated bidirectionality (don't ask me!).

In 1993 we discussed the possibility to transform PED into a Farsi edit control for Windows 3.1. Soon, we decided to use Unicode for the internal encoding. That should allow us to support more languages and scripts at a later time.

The idea evolved to have also multilingual list boxes and other controls on Windows 3.1. In 1994 we had the plan to build a highly modular Unicode system add-on for Windows 3.1, including an editor, Windows GUI controls, keyboard drivers, NLS modules and a font management system. Continuing the pragmatic naming scheme we called it UniSystem.

In the same year we began to write the first code. We implemented some of the editor's core functions mainly by porting the PED sources to the Windows platform. These functions are still working in UniPad.

A first conceptual paper about UniSystem was written in May 1995, describing the system's archictecture. Several papers about specific modules (display, keyboard, modularisation, mapping tables, font management) followed. But a lot of things were still unclear.

Concepts had been changed often until the end of 1996. At that time we wrote some important core modules: a Windows edit control, a prototype editor application, keyboard drivers and a module including the Unicode character database. The system used Unicode internally but was not capable of displaying Unicode characters. We had no fonts. The system consisted mainly of a bunch of DLLs and was still a 16-bit application.

Between October 1996 and July 1998 nothing much happened with UniSystem, because we were heavily involved in more important projects. In that time we had founded our own company and we often talked about reviving UniSystem. In the middle of 1998 we decided to give up the complex architecture of UniSystem and to make a straight editor instead. Again, continuing the pragmatic naming scheme we called it UniPad.

We ported the 16-bit code to Win32 platform which made a lot of things easier. The existing modules nearly instantly worked on Win32. Although a sideline project, we rapidly wrote a GUI framework to put all the stuff together. The remaining module (fonts and displaying) was written in relatively short time. At the end of 1998 we released the first version (0.9) of UniPad.


©2000-2002 by Torsten Mohrin. Updated 2002-04-14.