As some of you know, one of my first Psion projects was the WiFi Pack. This was meant to be a WiFi module the size of a Psion SSD. This hit a number of technical snags (not least my own abilities) and has, for now, been shelved. I will come back to it, but now is not the time.

But the original reason why I started work on all of this Psion stuff was that I wanted to be able to use my Psion Series 3c (and now my 3mx) as a writing tool. The WiFi Pack was part of that - an easy way to get files off old machines without having to use RS232.

But the other part of that dream was a better word processor. Something that was designed for people who really want to write.

Now, EPOC16's Word is actually pretty good. It's a simple word processor with basic formatting (bold, italics, headings), an outline view, and (on newer machines) a built-in spellchecker and thesaurus. I've written a good few hundred thousand words of bang-average prose in it, and it just about does the job.

But it does have its downsides. It has a roughly 48K file limit, so around 8000 words. There's no way to easily link documents together, such as if you were writing multiple chapters of a book.

It's a real pain to manipulate even medium-sized documents (above 500 words). The clipboard is Vim-esque, but not enough for it to be actually usable. There's no built-in way to swap paragraphs around. There's no way to delete one word at a time, but you can delete an entire line.

There's also no undo.

I've been thinking about making my own word processor for a while. Something that I would want to use, that would help me write. Something with modern features, but also keeps the feel of the original word processor. It needs to get out of my way and let me write.

I'll be writing it using modern text editors, but all the compilation will be done with the original SIBO C SDK, with TopSpeed C in DOSBox Staging.

I'm going to be pushing the limits of what these old machines can do, using DYLs (EPOC16's dynamic libraries) and LDD (local device drivers) to dynamically load and unload features, and to get around as many memory limits as I can

I will be using Psion's OLIB, their proprietary object oriented version of C that has a bit of a SmallTalk vibe to it.

I'm going to try to avoid using 8086 assembly, but we'll see how far that goes...

This is the biggest software development project I've ever taken on. It might take some time.