Copier provides a non-working backup. Nybble utilities also
         provide a non-working backup. Before starting to work on this title
         please make a backup, and do a disk log (printout is best).

         Working vith the original:

         1) Make sure to place a write protect tab on the original to
         protect it during the breaking process.

         2) Turn the computer off and insert your reset assembly into
         the cartridge port. Turn the computer on again and from your
         utility disk, load the $C000 monitor <> LOAD "C000",8,1 <>. Sys
         the monitor in with SYS 49152. Remove the utility disk from the
         drive and replace it with your original. Load the boot file BSS
         <> L "BSS",08 <>. Using the disk log to guide us, let's
         disassemble memory at $02C4 (D 02C4). Cursor down through memory
         and notice the loader loads the file BSSL and does a jump to
         $7000. Let's load the BSSL file ourselves and follow the load
         sequence <> L "BSSL",08 <>.

         3) When the drive stops, disassemble memory at $7000 (D 7000)
         Cursor down through memory, and inspect the long loader file
         that loads in the entire program and the jumps to the start
         address. At the address $20C7 you'll find a JMP 0803. Using the
         MEMORY command (M 70C7) type a 00 over the 4C and hit RETURN.
         This will allow the loader to operate, and, when done, will
         BREAK just before the jump to $0803. We can then follow the
         program flow, beginning at $0803. Start the loader execution by
         doing a GO 7000 (G 7000). The drive will start up and the files
         will appear on the screen as they are being loaded. When the
         drive finally stops, reset the computer and re-sys the monitor
         back in (SYS 49152).

         4) Now let's disassemble memory at $0803 (D 0803). The first
         instruction we find is a JSR 09E1, so disassemble $09E1 (D
         09E1). This disassembly reveals the decryption scheme that is
         hiding the protection check. You'll find it resides at $09E1 -
         $09F2. Study it closely, for it is the heart of this protection
         scheme.

         5) Be sure your original disk is in the drive and start the
         code up by doing a GO 09E1 (G 09E1). The drive will start up and in
         a few seconds will stall again. Again, reset the computer and re-
         SYS the monitor in with SYS 49152. Disassemble memory at $09E1
         (D 09E1) and inspect the code again. It has changed into valid
         program code. Now all that's left is to save the changed code
         back to the disk.

         Working with the backup:

            K.J. REVEALED TRILOGY    PAGE [57]     (C)1990 K.J.P.B.

<<previous page - next page>>