number to be corrupted. One way to repair it is as follows:
         Cursor to position 144 and type  for text Rode. In this mode
         type SCRABBLE followed by shifted spaces (decimal 160) to
         position 162. Now type LaG/SC and hit RETURN. Write these changes
         to the backup by typing  followed by a . Lastly while at
         this sector hit  to go to the next sector in the directory.
         You'll find that it goes to Track 18/Sector 1. Continue hitting
         n to go to each linked sector in the directory. You'll find
         every sector to be normal with the last directory sector at
         Track 18/Sector 4. Now power down and load and check the
         directory. The file names should be present. Validate the disk
         and then using the disk logger, log the file addresses.
      
      2) With Hesmon in the cartridge port, load the boot file
         < L "B",08 >. At the end of the load, Disassemble code at $02A7
         < D 02A7 > and using the cursor down key, scroll down through
         memory. The code highlights are:
      
         A) D 02C6 : JSR FF90 (control load messages)
         
         B) D 02CF : JSR FFBA (set logical addresses)
         
         C) D 02D8 : JSR FFBD (set file name: 3 characters located at
                     $02C1. Use Interpret command to see  the file
                     name GM1.
         
         D) D 02F1 : JSR FFD5 (load into ram)
        
         E) D 02FD : JMP 3800 (Jump to location $3800.)
         
      3) We now know that the next file loaded in is GM1 and that the
         code at $3800 is the jump link. Load the GM1 file as
         < L "GM1",08 >. Start disassembly of code at $3800.

         A) Let's execute the code at $3800 and see what happens. Type
            < G 3800 >. Notice the beginning screen comes up and asks for y
            or n for fast loader. Type n and listen. A short load takes
            place and the head swings out. The drive will be locked up.
            Power down and up again, type X to return to basic and
            initialize your drive. When the drive stops, hit
            RUNSTOP/RESTORE to return to the monitor.
      
         B) Again load the GM1 file as before and start Disassembling
            code at $3800 . Cursor down through the code to
            $384A. Here you'll find a JSR C800. This is the actual
            protection check routine. Notice the next instruction is a
            PHA which places the numeric value returned from the
            protection check on the stack. This value is the key to this
            protection scheme.

         C) Make sure you place a write protect on the ORIGINAL Artist 64

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

<<previous page - next page>>