http://tasvideos-moviefiles.googlecode.com/files/megaman_rng.zip
This Lua file may be helpful. It indexes RNG values, so you know exactly how many times the game has called the RNG. It has two parts, "megaman_rng.lua" and "lookup.xyz". Snes9x 1.43 v17 and later is required (but there is a simple workaround for v16 and some others). Also works for Mega Man X1-6 as well as Mega Man 7 (edit the Lua file).
The program checks the RNG value in memory, looks up the index in lookup.xyz, and determines the number of calls on the last frame as well as the RNG values called. The starting value 0xD37 has index 0. After it reaches 43533, it will go back to 0.
The RNG works like this:
val <- (val*3)&0xFF00 + (((val*3)>>8)+val)&0x00FF
where val is a 16-bit integer. The period of the RNG is 43534.
sparky, I think Astro Man battle could still be improved. I'll see if it is possible.