Some days ago I played on another pc a version of visual boy advance which had the feature of scanning for cheats. Althoug I'm not new in this field (I managed to find cheats with other emulators and also CheatEngine), I couldn't find any, not even the easiest (coins, lifes, etc.). So I decided to investigate, compile the svn for linux, and I have a few question and suggestions.
1) Where's this feature gone? :xso_grin: I heard that there are several fork of the original emulator, but I think that the M version, which is supposed to be a "big merge", should really have it.
1b) That scan lacks a very important kind of search, that is "value is as during first scan".
2) I couldn't find any cheat, and I wonder if that's because the search was broken in that version, or if the game (Super Mario Land 3) had some rudimentary protection against memory tampering (xoring?). Also, as contemporary C programmers default to 32 bits long ints, what was the preferred choice back in the times of the gameboy, 32 or 16 bit integers? And is it common the use of pointers?
3) As of now the cmake script is broken, because you removed the fex folder. Unfortunately, I don't think that any linux distro ships with a dev version of that library. I edited CMakeLists.txt so that it doesn't try to compile fex but links vbam to the precompiled library. Fex has to be compiled and installed as a normal library in /usr/lib and /usr/include. I attach the modified CMakeLists.txt and the makefile for fex which has the 'install' target. I tested it succesfully on Ubuntu 11.04 x64; I don't know if this method is compatible with windows.
4) I think you should make wx a dependency, that is remove the sources and just link to the library provided by the OS, both to avoid redundancy and because wxWidgets build just doesn't work right now.
Thanks in advance.
I'll be on holidays for about 10 days, I won't reply immediately to new messages.