MEM2 Code Help

Started by live2play, April 10, 2010, 09:11:30 PM

Previous topic - Next topic

live2play

I have a memory address value that changes by exactly 0x114 in MEM2 depending on the level and other settings selected.  I can manually change the value at the MEM2 address using WiiRD and get the desired effect.  To me, this looked like a prime pointer candidate.  I tried doing a pointer search to determine the MEM1 or MEM2 pointer address, but the pointer search never results in anything.  I even tried the "Different by" search for 00000114 and it didn't yield pointer candidates.  Is it possible that the MEM2 memory address is not referenced by a pointer even though it changes from level to level?  If so, how can I use ASM to write my desired value into it without having a pointer?  I do have the breakpoint at which the value is read, but I don't know how to write a float into the memory address referenced by the assembly.

dcx2

I think you said in the other thread that you're looking at a float.  Floats are often passed on the stack, so it's possible it's not held in a pointer.  If you see the float being loaded with a value pointed at by r1, then it's being passed on the stack.

i.e. lfs f0,16(r1) would be loading f0 with a float that's on the stack.