ACA NeoGeo Samurai Showdown are 2 Games that use Dynamic MAIN Addresses. Can not use Pointer Searcher for those Games. I tried it with JNoexs, but those did not work except for the Round Time (Which the Offset matched the last 3 for the MaME Cheat File for said Code. I tried replacing it with the last 3 for Health, but it did not work. So might require more Offsets, with last one being the MAME last 3, but no way to tell.
The basic premises being assumed in the algorithm is
1. pointer has the value that lies between heap start and heap end.
2. when main segment is reached the job is done.
3. each stage of the pointer jump use constant offset.
For emulator the assumption can be true for the engine but not for the game that the emulator runs. The pointers for the game does not fulfill point 1 and there is also no end point that match point 2. There are probably virtual heap and virtual main for the game but without going into the emulator in question nothing can be done.
This does create a reason for pointer chain to be used by the emulator engine on main. It is easy to change to
1. pointer has the value that lies between heap start and heap end or main start and main end.
2. When to end the search is a problem. I suppose can just end when no more progress can be made and preset the chain for testing.
But this may well be point less as for emulator engine any such chain is very likely to be widely reused.
So the best bet is find the pointer that points to the start of game virtual memory. Assuming that these game uses static addresses just to have a big offset from this base to get to the target. For MAME I suppose this is likely to be the case.