Ultima 1 Revisited Is Just About Done Stepping Through The Game's Code
In a recent post to the Ultima 1 Revisited Tumblog, Kingspud announced that he is quickly closing in on the end of his assembly program tutorials, in which he has been stepping line by line through the original game code for the first version of Ultima 1 (back when it was simply known as Ultima).
The last two will cover the HI and LOW byte reference for indirect indexing, which is for reading the HI and LOW bytes of the screen memory locations individually. This process of using Indirect Indexing saves time and space to help speed up the reading time of the program. Remember how each byte on the screen is represented by a memory location such as $2000 for page 1 Hi-Res graphics and $4000 for Page 2 Hi-Res graphics.
When you place data in memory location $2000, you will end up displaying data on the screen depending on what type of information was placed in this memory location.
After the Assembly programming tutorial I will be posting a new tutorial to cover the APPLE DOS TOOL KIT program. This is the Assembly Editor/compiler program that I used to write the World Map movement program. I’m putting this tutorial online so you can actually put your newly acquired knowledge of assembly programming to use, which will allow you to rewrite my program or any other type of program you design.
So, for those of you who have been following Kingspud’s work with some interest, be sure to keep an eye on either his Tumblog and Blogspot blog.
The powers that be should release the source code of Ultima. Maybe they haven’t because no one there can say they legally acquired the particular copy they possess and there’s no clear path to the original one?
Perhaps they feel shame for having lost it, fear and elation that it’s floating around on the web and such, but ultimately conservative paranoia which causes them to protect ALL source IP without distributing it. id might make suck games these days, but at least they have the courtesy of releasing awesome engines to the community regularly.
Maybe they think Garriott is still hiding his copyright papers for Ultimatum’s .BAS source files. He’ll spring that one on them and laugh his ass off as he drives to the bank in an Aston Martin.
Kingspud, a documentary should be made of how the game works. It could combine code exploration with game footage and have a voiceover with music in parts. Like a short film but half of it would be explaining how the code worked, showing it on the screen and arrowing through it.
I know WtF has no desire to attract unhappy attention from the current Ultima IP owners, so he can’t take a stand on this. But I remained personally convinced that even though the words “Ultima” and “Lord British” may be trademarked, that any copyright claim to the Applesoft BASIC files is extinct.
You can’t copyright “look and feel”. The code itself was thoroughly rewritten in a machine language for the Origin release for the Apple ][. The original Applesoft version was NEVER published by Origin to begin with. I bet a thorough search of the copyright offices would reveal no copyright renewal of the original Apple ][ program.
Ever notice that even the most diligent IP owners like EA seem powerless to prevent Apple disk images from being distributed? Has Asimov FTP ever been shut down?
As a matter of fact, I just noticed that the DSK image at Virtual Apple.org is NOT “Ultima I the First age of Darkness”, but is in fact the original Cal Pacific APPLESOFT version with listable BASIC files using an emulator and rudimentary knowledge of how to run an Apple.
That’s why I feel more or less safe linking to Kingspud’s work and blog. But hosting the code here is a no-go, for much the same reasons that I no longer host a U4 download.
And yes, it’s silly to fret in such ways about 30 year-old code, but that is because copyright law itself is often rather silly in its stipulations and requirements. Still…this site would fare far worse if I didn’t at least try to play by those rules.
Something WtF isn’t saying, and that I’d forgotten about until now, is that undefended claims of copyright and trademark abuse can be used as evidence against the plaintiff in future claims of infringement. So the law obligates the plaintiff to protect their properties lest the infringement and even countersuit activity increase.
While I think IP suits are pretty shitty for both sides, I also think only obvious and especially vampiric (artistically or financially) infringements should be prosecuted. Others should be helped or ignored.
Not publishing the source code for Ultima[tum] must be some kind of technicality, or just general feelings about stuff (law doesn’t apply at the moment).