I can use pointer search to find the source of the chat lines from within a module, and then I can reference from that to find the locations where the chat strings are stored all the time?
Correct.
I read from somewhere that says I can set breakpoints from the lines of code that prints the chat window, is that you meant when you said it's typically done through disasembly?
Essentially.
but can I pause the game to set the break point ?
You don’t pause the game to set breakpoints.
out there are AT LEAST 3 possible places it can be (7ffd9008, 7ffda008 and 7ffdb008)
The only way these can be the correct addresses is if they are copies of values returned by the Windows® API used to load the file.
For example, CreateFileMapping().
However, if they are used in connection with the game loading process, you can set breakpoints on them before they load the game and see what creates these values, and follow the code back to the emulator code.
How do I find out where the rom game data begins?
By searching for it and/or by doing the above.
The only thing constant that I have found so far is where the emulator starts (400000) and I have no idea what pointer or value to search for.
Then the base pointer is required to be from 0x00400000 to (0x00400000 + module size).
Unless it uses a special DLL to load the ROM, in which it would just be in that DLL instead of the main process. Either way, same thing.
L. Spiro