With the month coming to a close, I decided to spend the last few days of my December Adventure to wrap-up some of the loose ends of the projects I’ve worked on this month: I found a few outstanding changes in Reconnect when I added Psion Word conversion support, and there was some further cleanup to do to the OpoLua source tree to set us up for new features in 2026.

OpoLua

As OpoLua has grown, we’re using it in more-and-more projects: it now serves as a cross-platform library for working with EPOC16 and EPOC32 files, and we’re using it in both Reconnect and the Psion Software Index. As is always the case with software projects, the source structure hasn’t evolved at the same pace, so I took some time to tidy it up: I cleaned up the top-level Swift package, added smoke-test builds for this, and updated the OpoLua app to use the package, rather than including the source files directly. Since Reconnect and OpoLua now use the same ‘OpoLuaCore’ library, it will make keeping Reconnect up-to-date much easier. Over time, I hope to move more functionality from the OpoLua app into OpoLuaCore to allow us to use it in other apps.

Reconnect

I caught Reconnect up to the new version of OpoLua and finally got around to adopting the support for customizing SIS file install locations that Tom added sometime ago, unlocking using SIS files with EPOC16—while this was never supported for EPOC16, I hope it will allow us to start packaging EPOC16 programs on the Psion Software Index to make that easier for people to jump into.

I also spent a little time triaging the open issues, and had a quick look at what it would take to convert EPOC16 PIC images—it turns out these are just multi-bitmap MBM files with black and grey planes, which I didn’t quite combine correctly on my first attempt:


A solid day of laying the groundwork for the future. 🧱