First a few revelations to dispel some myths behind these three games:
Pentagram: there is no proof as such, except that when you look very closely at the code and analyse the routines there are a few things that seem odd. The code is largely the same engine, but small changes here and there don't seem to be of the same mind set as the others. Alien 8: the code improvements in the Alien 8 file format suggest that it wasn't in the works at the same time as Knight Lore, or surely code would move between projects. Knight Lore: This is boldest statement, therefore requiring more information, and is largely the words of Chris Wild: If you compare their core routines: sprites, screen, sound, keyboard, joystick you can see through the various games "evolution". A lot of their routines are always together, it actually makes it easier to understand their code, because you've see it all before in a previous game. Taking the keyboard routine as an example, if you check the code in Atic Atac, Sabre Wulf, Underwurlde, Knight Lore, Alien8, and Pentagram the code changes; it is "optimised" in Knight Lore onwards. To read the keyboard on the Spectrum, you first write a byte out to a port and then read in from a port. In earlier games Atic Atac, Sabrewulf, Underwurlde included, they write this code in full every time they read the keyboard. From Knight Lore on (alien 8, pentagram, etc), they use it in a subroutine.
So the example is: LD A,#7EOUT (#FD),A IN A,(#FE) BIT 0,A RET NZ
Became:
It doesn't make sense that Chris Stamper would change his core routines, probably for speed and size, or just tidiness, and then go back to the old way for a supposedly "new" game, and then revert back for following games. this suggests that Sabre Wulf was coded in between Atic Atac and Underwurlde, and that Knight Lore and Alien 8 came after Underwurlde. Even if different teams worked on different games. If you don't agree with these facts, read the layout section and come back for another read. |
|