|Re: [hatari-devel] TT version of 4getful by gwEm crashes with newer Hatari versions|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
On 9 Feb 2016 at 0:52, Eero Tamminen wrote:
> Additionally, my fix to the TT palette sync issue Roger reported,
> breaks 4getful palette handling. The reason is similar to color
> register writes on ST, IO register code doesn't support splitting
> long access to 2 word accesses, so current code misses every other
> color register change when they're written with longs.
I've been looking into the TT video documentation carefully, and it seems that
the STe-compatible registers map to the TT registers according to the bank
number in the TT shifter, i.e. if the bank number in the TT shifter is n, then
STe-compatible palette registers 0 to 15 map to TT palette registers 16*n to
16*n+15. Normally n is zero, but it's possible for programs to change this
(there's even an XBIOS call to do it).
I haven't verified that this is true on the real hardware, but I strongly
suspect that it is (based on disassembly of TT TOS). I mention this now in
case it affects how you decide to fix the above problem. I am in the process
of making changes to EmuTOS's palette handling to support this properly.
Apologies if you already knew this and it's already handled properly by Hatari.