From: Ethan Dicks (erd_at_infinet.com)
Date: 2002-09-30 12:26:05
I finally verified a ancient project of mine... porting Zork to the PET. I started 15 years ago by beginning to disassemble the 6K game engine that's on track zero of the C-64 Zork floppy. Things stalled using a 40-col screen and printouts. When I finally saw VICE, and used it on a SPARCstation with modern editors and a huge screen, I finished the disassembly and wrote an interface library so that the application code could call the same sorts of jump points that are available in the C-64 Kernal. I have versions of the ZIP (Zork Implementation Program) for the BASIC 2.0 PET, the BASIC 4.0 PET and the VIC-20. Last night, I got my old, original, new-in-1979, 32K BASIC 2.0 PET 2001N up and running enough to talk to a 2031. I dropped in a three-year-old floppy with the right ZIP on it, fired it up, swapped the disk for a Commodore-packaged Zork II (couldn't find my Zork I disk) and it played! The BASIC 4.0 version is still wonky - I still have a bug that is probably caused by my accidentally using a zero page or other low memory location on 80-col BASIC 4.0 PETs. The game starts, but you can only navigate around the rooms; you can't pick anything up. I've tried to not use any locations that are critical to the Kernal and especially to $FFD2, but I must have missed one. The ZIP uses a lot of zero-page which is why you have to power the machine down after playing a session, even on the C-64. They trash low memory and don't provide any way of restoring it. Unfortunately for the ongoing discussion of BASIC 2.0/PET 2001 tape formats, the machine is not at 100%. I can't read from tape at all (the drives work on an 8032; it's not them). I've replaced the 6522, the 6520s and the 6520 sockets. Time to get out the scope. But at least Zork works after all these years! -ethan P.S. - there are a few details and some code at http://penguincentral.com/retrocomputing/PET/ -- Visit "The Seventh Continent" http://penguincentral.com/penguincentral.html Message was sent through the cbm-hackers mailing list
Archive generated by hypermail 2.1.4.