dhedberg wrote:Thanks for the reply. I'll have tun run some more tests to try and figure out what's going on. In some cases I rely on the fact that the blitter and CPU can run in paralell on the F030 as long as the instructions and data accessed after starting the blitter are precached (no bus activity by CPU). Perhaps Hatari doesn't emulate this fully.
this behaviour is fully emulated for STE, any prefetched opcode will run in parallel if the blitter is started with an instruction which does the write to control register at the end.
As for falcon blitter, I never tested it
Theoretically, I guess it could even run several instructions if they were all cached and if none of those instruction require some memory access (for example several MUL / DIV using only Dx registers)
But as said above, even in cycle exact mode, 68030 is not always cycle exact for now, several internal 68030 behaviours are still not known and they affect the way opcodes are prefetched and the way instructions tail/head can sometimes run in parallel.
So for now, I'm afraid you won't get similar results under Hatari as under real HW
Edit : it's possible the number of cycles per word access is also wrong in Falcon mode, if you see a x2 difference it could be the case. If you have a simple example (that don't spoil your demo
) in hog mode with a screenshot of a real falcon, I could have a look (I guess you're trying to change colors with blitter ?)