r57shell wrote:Hmm Interesting. (about Gens standard debug)
But, you need to make new ROM with such chunk, and calculate yourself.
There is no simple way to break in particular point in Dissasembly.
By the way, I have tried to add Lua method into gens rerecording to get cycles counter, but its M68k emulator (starscream) updates odometer only after end of cycle.
So, Stef how to improve that.
And there is another bug: after lsl.l #$20,d0 highest bit is wrong. (must always be 0)
Gens is not maintained since a long time now but as far i remember there are methods which allow you to get the "live" odometer so you should be able to sort that (i use them for hv counter or z80 bus cycle synchronization). About the lsl #20,d0 instruction i remember i fixed a bug in the original starscream as the implementation was not perfect, i'm really surprised there is still an issue with it !
Edit:
Just had a look on the starscream code... my fix is shit, the bug is obvious :p
It miss one extra :
Code: Select all
emit("%s%c %s[__dreg+ebx*4], %s\n", op, direction[main_dr], sizename[main_size], tmps);
at line 3148 of the emitter, and still that does not cover the shift #63 case ! Anyway the base code was even more buggy so and my fix was enough to make games working, i guess it's why i never noticed it :p