Wiird 0.9.1 pointer search bug?

Started by Dr.Pepper, September 22, 2008, 05:21:13 PM

Previous topic - Next topic

Dr.Pepper

I was making codes for Red Steel PAL version and found some bug maybe. Game freezes if you dump memory areas higher than 93400000, nothing to do with pointer search bug though, most likely related to multi dol and that you need rebooter to start this one.

I found unlimited gun addresses on mem2-area, and dumped 2x 80-memory dumps.

And did pointer searches for ptr1 926A1D48 and ptr2 91D9FF98, but when you press "Search" button it does not find anything. But if I use ultraedit search on the same dump files accordingly, it finds memory ptr location on the same offset. So is there some problem to find mem2 pointers in mem1 dump?

I can provide memdumps if needed.

kenobi

#1
Indeed there is a problem. I'll look into it. Thanks for reporting ^_^
Edit : fixed. I'll see if Link can make a build, as my current version is WiP (I've added stuff but I didn't finish it yet).

Link

I got to rebuilt it: http://l0nk.org/WiiRdGUI-ptrfix.zip - this just contains the fixed GUI version.. please test it first I wasn't yet able to test it myself so if there are no errors I'll include it in the regular packages!

Dr.Pepper


Dr.Pepper

Noticed 1 more UI bug, when doing C0-dumps, and searching mem2 pointers in it, it shows matches as "90xxxxxx" when it should show matches in "C0xxxxxx", no biggie since I can easily just change prefix in my mind :)

Ofcourse not so often used compared to 80 and 90 searches, but yet again in Red Steel C0 seemed to be the only semi reliable place where pointer to health was :-)

kenobi

Thanks, I've just fixed that too.
If that brings you too much troubles let me know so we can make a small update, else I'll just wait for the next version to release the fix.

Dr.Pepper

No problem, I can wait for the next version.  :P

the_dave


Dr.Pepper

#8
Yet another bug, this time I was debugging Brothers in Arms game, sometimes the weapon in hand is located in mem1 area and sometimes its located in mem2 area, did 2 memdumps of 80-area, and put ptr1 to 81xxxxxx and ptr2 as 91xxxxxx, and search does not work, even though it should find ptrs ;-)

But anyways I managed to get codes working for the game, so maybe I'll just wait for next version to verify if bugs are fixed, as I might have be using regular 0.9.1.

the_dave

Dr. Pepper how did you search using ultraedit I loaded the dumps in ultra but what command do I use.  Thanks

kenobi

Whoa, one address in mem1 and the other in mem2... I feared that would happen :/
I'll look at it, but I might have to do more changes to allow pointer in pointer for that kind of stuff...
Thanks for all the reports btw ! ^_^

Dr.Pepper

No problem. Anyways as pointer in pointer searching in wiiird is atleast on my machine _very_ slow (and searching blocks the usage of wiird (ie would be nice to have seperate pointer search application that you can run on background)), I started to code my own pointer in pointer searcher application which would combine 80 and 90 area searches and allow multiple dumps to be searched simultaneously and maybe also do pointer in pointer in pointer searches :).

Lets see if I get it working someday... :)

kenobi

I believe you could speed the process for pointer in pointers search by changing the "max offset".
(you could change them to 0x800. And if no results are found, increase the numbers (to 0x2000, 0x4000...)).

However I have several other ideas on how to actually speed up the search... That won't be easy to add, but it should work once done ^_^

Dr.Pepper

#13
I've now spent 2 nights coding my own application, currently it imports all the 8x and 9x pointers from the memdumps to indexed SQL database where you can make sql queries with wanted data. I haven't done speed measurements yet, I'll report the results if and when my application is working in the way I want ;-)