Re: [hatari-devel] Data cache Issues?

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Le 06/06/2015 20:14, Eero Tamminen a écrit :
Hi,


So standard 68000 packers like the STF are not correct if they don't
flush the caches at the end, there's nothing Hatari can do about this.

Why someone would pack Falcon program with a packer that doesn't
work on Falcon?

Or is it normal for people to (somehow) disable caches before they
run (these) demos, or Beats of Rage game?


hi

I don't know, maybe because they never noticed it could create some crash ?

For example beat of rage doesn't work for you with cache but it always works for me. So depending on the programm (*.acc or others) launched at start before you start a packed program, the instruction cache can be in a "random" state. It's only 256 bytes, so most likely the old / not flushed entries will be replaced before PC points to them.

But in the case it happens, boooom ! you get a crash, for example 4 bombs "illegal instruction" like I saw from time to time when running virtual city (from pouet.net) before I added flushing for the instruction cache in gemdos HD Fread too.

If the depacker doesn't flush the instr cache, you can be sure a crash can happen ; depending on the packers, some of them are moving the depacked code at the same place that the depacker code was (to reduce memory footprint), so chances of getting a cache mismatch are even higher.

Nicolas




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/