> > The Hitachi recompiler runs CV1000 buttery smooth now.
> > In fact it's so smooth, i get killed all the time as the thing runs better than my
> > real boards, omitting the slowdown(s) normally caused by blitter limits and ram
> > speeds
> Notwithstanding the awesome job Haze and team did with the DRC, I'm sure you realize
> delivering us from slowdown brings MAME further away from accurate CV1000 emulation.
> I'm sure there were reasons to go the route they did, but I'm curious whether this
> was a necessary step to introduce the slowdown, so common with the games on this
> platform, at some point in the future. I'm guessing it won't happen anytime soon, but
> it's nice to dream.
The recompiler buys us some extra CPU cycles to work with.
Accurately emulating the blitter speed will require more calculations during rendering, which costs CPU cycles.
The recompiler potentially gives us breathing space to improve the accuracy without making the whole driver run badly.
I say potentially because the blitter and CPU run on different threads, and while the recompiler gets rid of the SH3 bottleneck in some places (especially noticeable on Pink Sweets and MM Pork when it's decompressing stuff ingame) it doesn't change the weight of the blitter thread which can still be heavy in places (although not as heavy as the SH3 was before this as the blitter was already extensively optimized)
A better way to thread the blitter to make use of the cycles freed up on the main core might also be needed however, currently it just makes use of a 2nd core because it's important that all blits are processed in order. It might be possible to split the blitting of each object by scanline, assuming blits aren't relying on reading data written by the same blit.
If the games however slowdown because the original SH3 CPU is not fast enough rather than the blitter, then yes, the recompiler could cause problems as the recompiler isn't really going to allow us to emulate 100% accurate memory access timings for the CPU, doing so would be incredibly slow and require a much more accurate interpretor that likely no PC will be able to run. To the best of my knowledge the limits come from the blitter, not the SH3 tho.
However, as I've said before, I've really little interest in trying to accurately model the blitter timings until all the games are dumped so I know exactly what I'm working with, so that could be a good 10 years yet. It doesn't really bother me at this stage. I'm not going to stop anybody else from doing it, but I'm not in a rush and would prefer to have all possible evidence to work with before I commit to something like that.
For now just enjoy the performance improvements, MAME needed somebody to look into building an SH3/4 recompiler and if you're lucky somebody else will build on what's been done here and make the recompiler work properly for Naomi-AW-SP-DC / Hikaru / Gaelco / Aristocrat Mk6 etc. too, at which point things get a lot more interesting. This is more about trying to help unlock some of MAME's potential, the Cave stuff was just a nice simple test bed.