changeset 241:7984a084aa07

still working on overall stragety... going to sleep on it.
author Robert McIntyre <rlm@mit.edu>
date Sun, 25 Mar 2012 02:35:14 -0500
parents 25022f3c6607
children 2e751984b42d
files clojure/com/aurellem/exp/notes.txt
diffstat 1 files changed, 13 insertions(+), 29 deletions(-) [+]
line wrap: on
line diff
     1.1 --- a/clojure/com/aurellem/exp/notes.txt	Sun Mar 25 01:53:29 2012 -0500
     1.2 +++ b/clojure/com/aurellem/exp/notes.txt	Sun Mar 25 02:35:14 2012 -0500
     1.3 @@ -16,57 +16,41 @@
     1.4  move one of the other items that wasn't destroyed (but not
     1.5  burn-heal) to the money counter to get a bunch of money.
     1.6  
     1.7 -buy 94 more burn heals.  95 burn heals spells out the
     1.8 +buy 95 more burn heals.  95 burn heals spells out the
     1.9  address that will safely return control to the pokemon
    1.10  kernel.
    1.11  
    1.12 -deposit the cancel item one at a time into the item computer
    1.13 -35 times. 
    1.14 -
    1.15 -deposit 95 burn heals into item computer. This establishes
    1.16 -the return point for the program so it doesn't crash the game.
    1.17 -
    1.18 -throw away the second character of rival's name until it is
    1.19 -equal to D5. Now the first two characters of rival's name
    1.20 -spell out the start point of the program that will be
    1.21 -constructed in the item computer.
    1.22 -
    1.23 -throw away the fourth and sixth characters of rival's name
    1.24 -until it they are equal to D5. The (thrid and fourth) and 
    1.25 -characters of rival's name now spell out the target item
    1.26 -which we will manipulate in the item computer.
    1.27 -
    1.28 -toss the zero items past the map data in item memory to
    1.29 -spell the following assembly (using underflow) and combine
    1.30 -with rival's name like so
    1.31 +[repeat following 35 times]
    1.32 +0x00	
    1.33 +0x01
    1.34  
    1.35  0x00
    1.36 -0xFA -- first part of "Load A from Literal address"
    1.37 +0xFA          -- first part of "Load A from Literal address"
    1.38  
    1.39  third rival's name character
    1.40 -fourth rival's name character -- target item address
    1.41 +xD5           -- target item address
    1.42  
    1.43  0x00
    1.44 -0x3C -- increment A register
    1.45 +0x3C          -- increment A register
    1.46  
    1.47  0x00
    1.48 -0xEA -- first part of "Save A to literal address"
    1.49 +0xEA          -- first part of "Save A to literal address"
    1.50  
    1.51  fifth rival's name character
    1.52 -fourth rival's name character -- target item address
    1.53 +xD5           -- target item address
    1.54  
    1.55  0x00
    1.56 -0xC3 -- first part of "Absolute Jump to literal address"
    1.57 +0xC3          -- first part of "Absolute Jump to literal address"
    1.58  
    1.59  burn-heal
    1.60 -x 95      -- address of Route 3 memory-function
    1.61 +x 95          -- address of Route 3 memory-function
    1.62  
    1.63 +0x00
    1.64 +0x??
    1.65  
    1.66  shift rival's name's first two characters into
    1.67  mem-function-address. 
    1.68  
    1.69 -
    1.70 -
    1.71  now close the menu and continue item manipulations using the
    1.72  newly constructed program.  Starting and then canceling the
    1.73  start menu activates the program.