Re: [hatari-devel] New version of WinUAE's cpu core

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


Am Mon, 24 Nov 2014 10:41:03 +0100
schrieb Nicolas Pomarède <npomarede@xxxxxxxxxxxx>:

> Le 24/11/2014 08:47, Thomas Huth a écrit :
> 
> > FYI, as a quick hack, I've patched the movep instructions that occur
> > during the boot process to nops:
> >
> > static const TOS_PATCH TosPatches[] =
> > {
> >    ...
> >    { 0x404, -1, "060fix", TP_ALWAYS, 0xE025E2, 0x01C80000, 12,
> > pNopOpcodes }, { 0x404, -1, "060fix", TP_ALWAYS, 0xE0263C,
> > 0x01C80026, 4, pNopOpcodes }, ...
> > };
> >
> > Then the desktop is successfully reached again also in 68060 mode.
> > So it's not that much that has to be fixed in TOS.
> >
> 
> hi
> 
> does it mean those movep were useless ? Shouldn't they be replaced by
> 2 move.b for example ?

First region seems to pre-initialize the MFP:

$e025dc : 41f8 fa01             lea       $fffffa01.w,a0
$e025e0 : 7000                  moveq     #0,d0
$e025e2 : 01c8 0000             movep.l   d0,0(a0)
$e025e6 : 01c8 0008             movep.l   d0,8(a0)
$e025ea : 01c8 0010             movep.l   d0,$10(a0)
$e025ee : 117c 0048 0016        move.b    #$48,$16(a0)
$e025f4 : 08e8 0002 0002        bset      #2,2(a0)

The second region is setting some more values there:

$e02632 : 41f8 fa01             lea       $fffffa01.w,a0
$e02636 : 203c 0088 0105        move.l    #$880105,d0
$e0263c : 01c8 0026             movep.l   d0,$26(a0)

So it likely works in Hatari to nop them out because the MFP is in a
sane state at the beginning, but that's certainly not a proper fix and
should be replaced with correct code for setting up the MFP instead.

 Thomas



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