Nodes of Yesod for the ZX Spectrum Next
The ZX Spectrum Next in the flesh!
How it started
In May of 2017, I committed to deliver a remade version of Nodes of Yesod as part of a £620K stretch goal for the successful (the campaign raised £723,390 in total!) first ZX Spectrum Next Kickstarter campaign, something Victor Trucco (originator of both the ZX Spectrum Next design and the TBBlue predecessor) tweeted about:
How it’s going
Let’s talk about that.
In between May 2017 and the date of this post I have made not one but two major job changes, entailing moving between cities hundreds of miles apart. Twice. Perhaps understandably, the side-project of creating a remake of Nodes took second place to these new IRL priorities. Yeah, excuses. Pretty good ones though, as these things go.
That said, some progress has been made, and the update is that I have recently picked up the project again and will start to post the occasional update here (and on my @stevewetherill Twitter) as and when there is progress to report.
For now, here’s a couple of bullet point updates (all subject to change as and when I run headlong into the brick walls that will inevitably present themselves!)
- The Spectrum Next version of Nodes will be written in C (with optimized Next Z80 assembler as and where needed). The reasons for this are severalfold, but my thinking is that 1) the Z80 source code for the original game has long since been lost, and 2) I already have high-level language versions of Nodes in Objective C++, Java (as an Applet, a J2ME Midlet, and even an unfinished but playable Android version), and Flash. In fact, I have already completed a clean port of all the Nodes of Yesod code into vanilla C, it is non-functional because none of the Next specific integration is done (input, graphics, sound, etc), but the compiled size of the binary is encouraging: it is less than 128KB of code and data, not including graphics data or audio data in Next format. Plus, the Next has fast CPU modes and graphics hardware, so I’d rather focus on delivering a complete game vs eking out every last Z80 T-state. I’ve done enough of that in my life, and personally find it a ton of fun, but it is not the fast track to completing a project!
- Clearly, 128KB + media data is more than a 48KB or even a 128KB Spectrum has, and so I’ll need to employ memory bank switching to make this work. The good news is that using the Z88DK C toolchain, I have run successful bank switching tests using the approach outlined here. So this is good news, and the fact that all ZX Spectrum Next devices have 1MB of RAM gives me a good level of confidence that everything will fit.
- I am currently working on a custom tool to convert the Nodes of Yesod art from the various other versions I’ve developed back into a ZX Spectrum Next compatible format. In a way, this means that the art has come full circle, but one thing I can confirm is that I will be using per-pixel colored art for all the in-game graphics (so, no color clash) and that the game will have 2 modes, a “classic” mode (with the original ZX Spectrum look and feel, albeit without the color clash) and an “enhanced” mode featuring colorful graphics, a few little gameplay improvements including a map, giant moon worms and a save game feature. At the very least, these exist in other versions of the game I’ve created and will appear in the ZX Spectrum Next version if humanly possible.
- So far, I’ve been using a Mac exclusively for development purposes, along with the .NET version of CSpect (one of the two leading ZX Spectrum Next emulators). So far, so good. The latest version of CSpect is running great on my Macbook Pro.
Astro Charlie, ZX Spectrum Next
Once complete, I will make this version of the game available for all Next owners in order to fulfill my original commitment to the Kickstarter stretch goal. Do note that this is not my primary work - I am co-founder and CTO at Overland Bound and primarily focused on that work - but as I said I have now picked up Nodes of Yesod for the ZX Spectrum Next again as a side-project, and my goal is to sprinkle in updates here amongst the other biographical stuff I have been posting and will continue to post.
Check out this trailer for the (now no longer available) iPhone version (from 2010!) to get an idea of what the Next version will hopefully look like in classic and enhanced modes. Also, I know there’s no RAM pack wobble, sigh.
If you enjoyed this, I'm writing something much deeper on Substack. A serialized memoir. Free to read.
Subscribe on Substack →Join the conversation
Comments are open on my Substack. Paid subscribers can leave notes, reply to posts, and join the community discussion.
Prefer the open web? Find me on Mastodon. I read everything and reply.



Comments (archived from the original blog)