Nightshade C64 – Part 3

This is a continuation of my earlier posts, Nightshade C64 – Part 1 and Nightshade C64 – Part 2.

Here is the rest of the document I referred to in Nightshade C64 – Part 2. I hope you enjoy this piece of history. It was one of the most exhilarating times of my life and also became one of my biggest professional regrets, but you’ll have to wait for part 4 for that, and that won’t be out for a while. Definitely worth reading if you’re into Ultimate though. (Or Chimera, for that matter)

All of this is why the subtitle for Chimera2010 is “This Time Get It Right”…


Nightshade C64 – Part 2

Continuing from Nightshade C64 – Part 1, here’s part 2, where I post half of the bound pamphlet that Ultimate sent me for the conversion of their Nightshade from the ZX Spectrum to the C64. I’ll post the second half in part 3 of this series. Please note that the aspect ratio of the cover page is wrong, it’s a little stretched because of the camera scanning software I used. Note also the shadow of the iPad across the bottom right of each page.



Nightshade C64 – Part 1

I’m going to post a few things on Nightshade tonight. I wrote the C64 version 27 years ago, so it’s about time. I’ll write up my thoughts more fully at some point, and probably for another destination, but for now, I’ll share with you some of the documents I’ve kept from that time, starting with the contract I had with Firebird, and then later, maybe tonight, maybe in a day or two, the nicely packaged document that Chris Stamper sent me.

The 8th of October is of 1985 – and that’s my handwriting on the MOU, though the initials were of Paul Jacobs of Telecomsoft. It was Firebird who had the licence for publishing Nightshade, but I guess they didn’t have too long to do it, because they gave me four weeks, after which I’d have to pay a penalty of £400 a week.

The contract is brutally short, but that was fine by me, and would be today too.


1985 10 08 Nightshade Contract 11985 10 08 Nightshade Contract 2


I’ve done nothing so far today. I need a good kick up the backside.

Yesterday I achieved a lot, today I am distracted and tired.

I really must get a room table format sorted out, one that is easy to sort, or is pre-sorted by the editor. I probably need to find a way of inserting moving objects in the right position in the display list. I’m aware that this is easy stuff and that several algorithms exist to solve this simple problem, so I’ll have a look at them.

For the Spectrum version, it was just a case of having the blocks in the room drawn from back to front, inserting the correct animated sprites in the right position on the way to the front of the screen. It was a slow, brute-force method. When I did the C64 version, that would never have worked. I was switching to a really slow 1MHz 6502. So for that, I drew the rooms once – and then used masking tables to obscure the sprite data where blocks overlapped the player or “enemy” position. I called that “DPA” or “Dynamic Priority Allocation”. Stupid name, but David and I were always laughing about silly TLAs, so I made this one up. It did pretty much the same thing that Christ Stamper did for his Filmation technique.


A year later, I was to see the source code for Nightshade on the Spectrum as I got contracted to do the C64 version of that game. That’s what you call coming full circle.