Have you ever had a dream to create something that, on the surface, seemed pointless? Then, when you scratch away that surface, you realise exactly how insanely difficult that dream would be to achieve?
I had one of those dreams.
I started off wanting to build a device that will add modern storage and Wi-Fi to my ageing but beloved Psion Series 3c, one that would fit into its SSD port. Difficult enough, you'd think.
Then Karl got in touch with me.
After some months of discussions and work, the project has developed into an attempt to perform platform necromany.
We believe that the SIBO/EPOC16 platform deserves a place in the retrocomputing world, alongside giants like the ZX Spectrum and C64. We want to play to the platform's strengths: The massive battery life, the non-backlit screen, the full keyboard, the deep sleep mode, the simplicity, the expandability.
The SIBO/EPOC16 platform was well ahead of its time. We want to breathe new life into this vastly underestimated platform.
SIBO vs EPOC16
Over the years different conventions have been used to refer to the hardware and software that Psion developed. Various documents use SIBO, EPOC and EPOC16 interchangeably to refer to the hardware and software. For clarity, we have decided to use the following convention.
SIBO is the hardware platform, including:
- Series 3 (and its clone, the Acorn Pocket Book)
- Series 3a (and its clone, the Acorn Pocket Book II)
- Series 3c
- Series 3mx
- Workabout MX
Our main focus is on the 3a, 3c, 3mx and (to a lesser extent) the Workabout MX. All of these machines use the ASIC9 and have SSD ports. We will also pay some special attention to the MC400.
EPOC16 refers to the name of the operating system that runs on the SIBO hardware platform.
To refer to the whole hardware/software platform, we will use SIBO/EPOC16.
- Creating a replacement for Psion's ASIC4 so that new hardware peripherals can be developed.
- Build a storage device that mimics the Psion SSD based on this new ASIC.
- Add Wi-Fi capabilities to this device using an ESP microcontroller so that files can be uploaded to and downloaded from cloud storage as well as an application and drivers to control the "non-standard" functions of the device.
- Write EPOC16 drivers to control the Wi-Fi, maybe more.
- Rewrite the Psion SIBO C SDK and HDK from the ground up.
- Create a new C compiler.
- Write software, such as a better word processor and many games!
- Update the EPOC16 ROM with new applications and features.
TECHNOLOGIES AND LANGUAGES
- C and C++ for Psion EPOC16 development
- Python for writing sigrok decoders to analyse the SIBO Serial Protocol
- Programmable Logic Devices and VHDL (for the bi-directional serial line, possibly more)
- 8086 Assembly for writing new (and possibly analysing existing) EPOC16 drivers
- APIs for at least one cloud storage service (e.g. Google Drive, Dropbox)
- EPOC16's Filesystem Formats; each storage type has its own filesystem. RAM SSDs use FAT16, ROM SSDs have their own format, Flash SSDs use yet another format, and the system ROMs use something else.
- EPOC16's File Formats, especially its word processor.
- A lot more we haven't even thought about yet!
For years I have had an affection for the Psion Series 3 and Series 5 machines. I got my first Series 3a back in 2002 and loved it. Over the following years I used it as a journalling device, a platform on which to write while commuting. When the hinges on that 3a broke, I bought another one on eBay. Eventually the hinges on that one broke, too. I later bought a Series 5, but manage to crack the screen on it. I lived in a Psion-less abyss for many years. Life took over and my passion for these machines faded into the background.
This year I bought a Psion Series 3c. I loved getting back...Read more »