Re: [hatari-devel] Data cache Issues? |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
]
Hi,
I went through the regressed cases with latest WinUAE CPU core.
Below is summary and couple of extra findings.
Things that work now:
* Firestarter demo
(if not autostarted, which is Sentry2.2 issue)
* PM Heretic game
* Tetrhex still works and doesn't anymore give cache warnings
Games that are still broken:
* Corsair game still bombs at startup
- works if one modifies cancache!
* ChainZ loops with exception 3 at startup
- works at least with older oldUAE
* JewelZ loops with exception 3 at startup
(if user selects real Falcon instead of Hatari)
- works at least with older oldUAE
* DryEgg bombs at startup
- not a recent problem, doesn't work even with 1.6.2
* Gravon game demo shows garbage & bus errors
* Kart game crashes at startup
- worked more with older WinUAE version
* Lasers and Hommes (DLDH2) freezes at startup
* PARX' "Epi-Lepsie bombs at startup
* PARX' "Les Dinosaures" demo bombs at startup
* Teknoballs loops with exception 3 at startup
- works at least with older oldUAE
* RG's Tautology II (Sentry v2.11 packed) freezes at startup:
$00023bf2 : btst #0,(a0)
$00023bf6 : beq.s $23bf2
> r
D0 004E544B D1 004E544B D2 004E544B D3 004E544B
D4 00000001 D5 00000000 D6 00000000 D7 000001F1
A0 FFFFA202 A1 FFFFA204 A2 0007AC1C A3 000F8356
A4 0002386C A5 0001C844 A6 000F24FC A7 00100BD2
-> DSP communication reg problem?
- cancache change didn't help
- works at least with older oldUAE
I'm most worried about Corsair and Tautology II.
Former is available from here:
http://www.pouet.net/prod.php?which=1046
And latter is available from here:
http://rg.atari.org/game.htm
I will continue isolating the problems, including
checking things also without GEMDOS HD emulation.
- Eero
PS. Sorry for not testing/mailing before, last couple of weeks
were just too busy.
On keskiviikko 17 kesäkuu 2015, Nicolas Pomarède wrote:
> Le 14/06/2015 23:51, Eero Tamminen a écrit :
> > There's couple of more games with issues with WinUAE CPU core:
> >
> > * RG's "Tautology II" (that is already documented)
> >
> > * EKO's "Kart"
> >
> > * Teknoballs
> >
> > * PARX' "Epi-Lepsie"
> >
> > * PARX' "Les Dinosaures" demo. Works fine with everything else except
> >
> > latest WinUAE CPU core, if it's auto-started. Auto-starting works
> > with oldUAE and WinUAE CPU version before enabling data cache.
> >
> > -> Some problem with early TOS v4 startup & data cache?
>
> Hi
>
> one interesting test would be to run those games from a .ST floppy (if
> size allows it) with gemdos HD emulation turned off. This could help to
> see if the problem is global or related to HD emulation and maybe some
> cache entries not correctly cleaned by us.
>
> Else, do they autostart from gemdos HD if you force cancache() to return
> false and use the CE mode ?
>
> > Tetrhex v1.41 gives a lot of prefetch warnings at start, but works
> > fine. Are all those warnings correct?
>
> No, those warnings were not correct, they should never appear, else it
> means cache is not correctly synced with direct memory content.
>
> I found the cause of them : it was some misaligned long word writes made
> by the game that spanned 2 consecutive cache entries. The 1st entry was
> correctly updated, but the 2nd one was badly altered, causing more
> errors when reading back data later.
>
> Now, I really hope all 68030 data cache cases are handled :)
>
> Nicolas