You’ve probably heard of the Spectrum Next, right? Out of all the new machines to come out based on the “what if” progression of old hardware, the Next has to be one of the best looking I’ve seen and having learned a bit about the hardware, a very plausible, believable progression in the Spectrum line up. I can’t help but think if Sinclair/Amstrad had continued development of this much loved British Icon it would probably have not been too dissimilar to what we see in the Next today.
Now I’m going to be honest with you, I’m a Commodore man, as many of may know, I started out with a Vic-20, progressed through with a C128, C64 and Amiga so it’s safe to say my interest in computers was tainted with the old chicken lips brand. So when the Spectrum Next was announced my initial interest was purely as an outsider and bore more curiosity than any genuine interest in actually buying one. The Spectrum was not my machine back in the 80s so why would the Next interest me? Or so I thought!
I had my first proper look at the Next during Revival 2019 where I got chatting with Jim Bagley about the machine and got a quick demo of it. The whole package from the box through to the instructions and of course the actual machine itself is a quality product through and through. If you could take a photo of it now, and shoehorn it into an article of Crash back when Amstrad were still making the original I’m convinced it would be heralded as the next official Spectrum. It looks that good! But then I guess, it is! If you’re not familiar with the history of the Next or the people behind it, head on over to the official page, it’s a great read.
https://www.specnext.com/about/
So, what is this Commodore fan writing about the Spectrum for? Well, I’ve been putting together some graphics for a Next game I’ve been working on with Tony Warriner and I thought I’d write a few words to document my journey (to coin a cliché phrase!). First thing I looked into, what resolution is this game going to be running at, and just as important, what’s the palette bit depth?
The Original ZX Spectrum Colour Palette
The old Speccy was 16 colours though in reality it was 15. It didn’t have any form of multicolour mode but despite these colour limitation is was a power house of quality gaming and was the machine that many of us old game devs adopted when making games; it could be argued made for a good alternative to getting a proper job!
After a read through of the specs, and a discussion with Tony whom is my partner in crime on this little adventure we worked out the basics.
For this game idea we almost adopted 320×256 which is a nice resolution to capture that nostalgic pixel look. However the original Spectrum, as I understand it had a resolution of 256 x 192 so as a nod to the original machine we chose that. Colour clash is now a thing of the past with this new one and there is a palette of 512 colours to choose from which is nice upgrade from the original – Too right!
However I do have to question why a 9 bit palette was chosen over say 12 or even 16 bit though I suspect it’s all to do with hardware stuff that I know nothing about!. When I say 9 bits I mean each RGB value is stored using 3 bits of data so if you take an RGB slider on a modern PC , you’re editing some colours , each slider can go from 0 to 255. That’s a 24 bit palette, each of the RGB values is 8 bits multiply by 3 for each colour which gives you those 24 bits, or 16.7 million colours! Add in 8 bits for an alpha channel and you have a 32 bit palette with each colour being one of two hundred and fifty five levels of opacity. Nice! Alas the Next is 9 bit, so none of that modern stuff, thank you.
ZX Spectrum Hardware Palette | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Colour
number | Binary value | Colour
name | Binary value | Colour
name | ||||||
G | R | B | I | G | R | B | I | |||
0 | 0 | 0 | 0 | 0 | Black | 0 | 0 | 0 | 1 | Black |
1 | 0 | 0 | 1 | 0 | Blue | 0 | 0 | 1 | 1 | Bright Blue |
2 | 0 | 1 | 0 | 0 | Red | 0 | 1 | 0 | 1 | Bright Red |
3 | 0 | 1 | 1 | 0 | Magenta | 0 | 1 | 1 | 1 | Bright Magenta |
4 | 1 | 0 | 0 | 0 | Green | 1 | 0 | 0 | 1 | Bright Green |
5 | 1 | 0 | 1 | 0 | Cyan | 1 | 0 | 1 | 1 | Bright Cyan |
6 | 1 | 1 | 0 | 0 | Yellow | 1 | 1 | 0 | 1 | Bright Yellow |
7 | 1 | 1 | 1 | 0 | White | 1 | 1 | 1 | 1 | Bright White |
The original Amiga had 12 bit colour so each RGB value was a number from 0 to 15 which when mixed up gave 4096 possible colours to choose from, and no alpha other than colour 0 being treated as transparent.
In a 9 bit palette the colour range goes from 0 to 7, the same levels of brightness as before but the degree of difference between each is now much greater which in turn means less colours. These values have to be mapped to a number in the 0 to 255 range, now this is where it gets a bit interesting, as each implementation can offer slightly difference colours.
9 Bit Palette
Spectrum Next / Sega Mega Drive /
Atari ST / PC Engine
24bit Palette – Modern Systems
Amiga AGA! 🙂
Back in the 90s I worked on the Atari ST and the Sega Mega Drive, both of which had a very similar 9 bit palette and both were a royal pain in the arse when compared to something like and Amiga or a Super Nintendo for smooth shading. The NEC PC Engine was another machine that also had a 9 bit palette too. Each of these machines would display their palettes slightly differently due to the implementation of their hardware and of course the end display too! RF via a TV, Composite Video, RGB Scart, plus the variation in quality from each tv and monitor manufacturer would all play a part in the differing picture and colour quality seen.
One of the biggest differences when creating artwork for these machines was during the palette making stage, often I’d mix a nice range of colours on the Amiga only to find on the ST or the Mega Drive these colours just didn’t exist, which presents two options, A) you mix your Amiga palette (12bit / 4096 colours) and then do a conversion using the nearest match that works for the other machines with 9 bit palettes (512 colours). I often chose the former unless the game was being developed from the off for a 9 bit palette machine.
So with my head wrapped in 9bits of colour goodness I began my journey into Spectrum Next development… In part two I’ll give an overview of how I tackled the look of the game, the game’s title which as you may or may not know is called “UrbX Warriors” and what tools I’ve been using. Oh and the build up to the fantastic show known as Crash Live!
https://en.wikipedia.org/wiki/List_of_8-bit_computer_hardware_graphics