While Chuck Bueche did a good job porting Ultima III and IV to the C64, not least with a great interpretation of Ken Arnold’s music, he didn’t use the hardware to its fullest potential. These guards used to reply with Sentri's dialogue. Interestingly the 68k ports were independently fixed and differ both in style and how the bugs have been fixed. Fortunately it got progressively better with each port and the last DOS version provided a good starting point. The early releases were littered with typos and downright bugs where some paths of the dialogue were inaccessible. The largest job though was fixing the dialogue, simply because there is so much of it. This room can't be reached in the original. The DOS version has received several patches too, and since the file formats are virtually identical I could backport those patches too. I made a little research and compiled what I think is a fairly complete list of bugs in the 6502 ports (the C64 and Atari 800 versions share over 90% of the source code and data with the Apple II original), and it was a joy to hunt down every last one of them. ![]() With a fresh Makefile written from scratch (if you’re a programmer and haven’t read Recursive Make Considered Harmful, go do so immediately after this) and all the support tools rewritten in Python the project came back to life. In the end it only took about a day’s work, and after that I was hooked again. This, combined with a week off work, made me decide that I might as well take a look at the mess. ![]() Some recent events in the C64 scene made a few people ask if maybe the Ultima IV Gold loader was available, but it saddened me to have to tell them that I couldn’t even get it to work myself. My development environment slowly mutated, as it tends to do, so the archive turned into an uncompilable mess of old Perl scripts and jumbled Makefiles that somehow made sense at the time, but only now only produces a fountain of error messages. My intention was always to clean up the source a bit and release an updated version, but as with most projects it ended up sitting in a backup archive of my old Windows PC instead. After about four years worth of spare time it was released in 2006 as Ultima IV Gold. I ended up rewriting the game’s loader to work on larger disk drives, and fixed the game so it didn’t run too fast with a SuperCPU accelerator. Later on I took a proper look at disassembling the game and figuring out how it worked. I spent countless hours exploring Britannia, reading through the faux leather cover manuals, and once I learned how to access raw sectors from the disk drive I started decoding the game’s data to print maps on the screen. It took me another year before I could save up enough money to buy a second hand disk drive, but when I did the first game I bought was Ultima IV. The only snag was that you needed a disk drive to play it, which none of us had. The game would even save your progress so you could continue the next day. ![]() But after my friend visited his uncle he came back raving about this marvelous game that let you walk around on a world map, explore dungeons, and talk to people in towns and castles. Ultima IV has a special place in my heart.īack in 1987 when I bought my first computer, I started trading games on tape with my friends, and dabbled a bit in basic and machine code programming. I have dropped a couple of screenshots but I don’t think anyone noticed… As I’ve been itching to talk about it it’s with great relief that I’m finally able to announce: Ultima IV Remastered for the C64 For the last couple of months though I’ve been working quietly on my own. As soon as I have something that might be of interest to others I tend to publish the repo on GitHub, where it either sinks or swims. My development projects are usually more or less in the open.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |