Re: [hatari-devel] Buss error - $FFFF9200 |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
]
Am Thu, 31 Dec 2015 10:10:19 +0000
schrieb "Konador, Cyprian" <cyprian.konador@xxxxxxx>:
> > From: Thomas Huth [mailto:th.huth@xxxxxx]
> > Sent: 31 December 2015 08:44
> >
> > Am Wed, 30 Dec 2015 15:09:51 +0000
> > schrieb "Konador, Cyprian" :
> >
> > > I'm testing TT/Mega STe DIP switches which are visible under byte
> > > $FFFF9200. I discovered that on real STE and Mega STE, byte read
> > > from $FFFF9200 causes buss error. Under Hatari that access is
> > > allowed. I attached test application DIP2.ZIP. On real hardware
> > > it is closed immediately without any prompt.
> >
> > Concerning Mega STE - Hatari does not emulate this machine yet,
> > only a normal STE, and on a normal STE, you can find the joypad
> > buttons register at FF9200, so that's normal that you don't see a
> > bus error here.
> >
> > Concerning TT - it seems like Hatari is currently also emulating the
> > joypad registers on this machine ... I guess that's wrong? Did the
> > TT have the enhanced joypad ports of the STE?
> >
> > Thomas
>
> Hi
>
> Lets skip TT at that moment.
>
> That instruction works fine on STE/MSTE/Hatari:
> move.w $FFFF9200.w,D0
>
> That instruction works fine on STE/MSTE/Hatari:
> move.b $FFFF9201.w, D0
>
> That instruction throws Buss Error on STE/MSTE but works fine in
> Hatari: move.b $FFFF9200.w,D0
Ok, now I see what you mean ... I now first thought that we should have
this right in Hatari already, since we've got an explicit test for that
(see the files in the tests/buserror/ directory), but after running
that test again, I saw that there's indeed a difference at ff9200 here,
so you're right and that register should generate a bus error when read
in byte mode. I've uploaded a fix now, so this should now work as
expected. Please note that ff9200 does not generate a bus error on
Falcon, so better don't rely on this behavior in your programs!
Thomas