Re: [hatari-devel] New WinUAE core issue with Bad Mood?

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


Le 08/12/2014 00:50, Roger Burrows a écrit :
$e00090 : f039 0800 00e0 013e                  pmove     $e0013e,tt0
$e00098 : f039 0c00 00e0 013e                  pmove     $e0013e,tt1

On a 68ec030, you won't get an error because those registers really exist.

Thanks for the feedback, but EmuTOS is ahead of you :-).  It doesn't expect to
get an error from the above instructions, which are only issued after EmuTOS
detects that it's running on a full 68030.  Before that happens, the processor
type is determined in the detect_cpu routine.  EmuTOS differentiates between a
68ec030 and a full 68030 by issuing the following instruction:
	pmove tc,temp
This instruction exists on the 68030 but not on the 68ec030.


Hi,

then I think there's an error in EmuTOS PMMU boot's sequence, because we have this code :

$e00088 : 21fc 00e0 00b2 002c                  move.l    #$e000b2,$002c.w
$e00090 : f039 0800 00e0 013e                  pmove     $e0013e,tt0
$e00098 : f039 0c00 00e0 013e                  pmove     $e0013e,tt1
$e000a0 : 21fc 00e0 00d0 002c                  move.l    #$e000d0,$002c.w
$e000a8 : f039 4000 00e0 013e                  pmove     $e0013e,tc

So, emutos first write to tt0/tt1, then it writes to tc ; the 2 moves to TTx are not made after a full 68030 was detected.

It seems to be the opposite of what you describe ? Before reaching e00088, I don't see 68030 only instructions.

Nicolas



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