5) Your backup is now broken and will not even check for
         protection. For those wishing to look at the protection check
         code, redo the steps above but when you type G 0C18, reset the
         computer in about one second. If the drive is allowed to run
         more than a moment or two, the protection code will be hidden.



         BOP 'N WRESTLE : MINDSCAPE

         Procedure:

         Loading the original produces a rattle free load, and an error scan
         shows no standard errors. A backup made with the C-64 Fast 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, format a blank disk, and do a disk log (printout is
         best).

         Working with your original:

         l) Make sure a write protect tab is on your original to
         protect it during the breaking process.

         2) Turn off your computer and insert the reset assembly into
         the cartridge port. Turn your computer on again. From your utility
         disk, load the $2000 monitor <> LOAD "8192",8,1 <>. When the load
         is complete, sys the monitor in with SYS 8192. When loading the
         boot file on this disk, it will autoboot and continue running. In
         order to inspect it, here's a trick to use. We're going to load
         the autoboot in BASIC memory for the purposes of inspection. With
         the monitor active, type X and hit RETURN. You are now back to
         BASIC. Type NEW and hit RETURN. Now load the boot file this way:
         <> LOAD "BL",8 <>.  When the load is complete, return to the
         monitor by hitting RUNSTOP/RESTORE then re-SYS the monitor back in
         with SYS 8192. You can now find the boot file in BASIC memory at
         $0801. Interpret memory and scroll down from $0801 (I 0801).
         Notice the BOP1.

         Disassembly of memory at $0801 (D 0801) and scrolling down reveals
         a loader file at $082D-$0854. This loader loads the BOP1 file and
         jumps to $0816.

         3) Load the BOP1 file <> L "BOP1",08 <>. When the load is
         complete, disassemble memory at $0816 (D 0816). Scroll down
         through memory to $0889. You'll find a JMP C000. Using the MEMORY
         command (M0889), place a 00 (BRK) at $0889. If we start the code
         running from $0816 it will execute and stop just before it would
         have jumped to $000. We can then disassemble memory at $C000 and
         trace the program flow. Use the GO command to execute this code
         (G 0816).

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

<<previous page - next page>>