[hatari-devel] some falcon registers questions

Nicolas Pomarède npomarede at corp.free.fr
Tue Feb 1 23:45:02 CET 2011


Le 01/02/2011 22:47, Miro Kropáček a écrit :
>     $FFFF8201/03/0d : Video Base Hi/Mi/Lo
>
>     On Ste, when one writes to Hi or Mi register, low register is reset.
>     Is it still true for the Falcon ?
>
> Yes.
>
>     $FFFF8264.B|RW|VDL_HSH|H-Scroll Hi                          %____xxxx |F
>     $FFFF8265.B|RW|VDL_HSL|H-Scroll Lo - clears Line Wide
>     %____xxxx |STE,F
>
>     Some docs indicates that $FFFF8264 exists for the Falcon.
>     Some other don't.
>     Where is the truth ?
>
> It does exist but not as shadow register but more like hi-byte (which is
> unused). I.e. it's legal to write *(unsigned short*)0xffff8264 = [0-15]
> as well as  *(unsigned char*)0xffff8265 = [0-15] ... however, writing to
> 8264 alone does something but I'm unable to tell you what. It scrolls
> the screen but the picture is gambled.

As the falcon is supposed to be be compatible at some level with ste, I 
would say 8264 and 8265 are the same than on ste, but not like some kind 
of shadown reg : one is scrolling with prefetch (8 bytes more per line 
in low res), the other without prefetch. This is all explained in video.c

But are those regs used when falcon is in vga mode ? If they're only 
used when falcon is emulating low/med STE video mode, then I think we 
can use the code already present in video.c

In all cases, I think it will give better results to first emulate 
videl's own register instead of focusing on STE compatibility mode (this 
can be emulated later by refactoring code in video.c). Most falcon demos 
certainly don't use the limited resolution of the STE, but more likely 
some VGA resolution.


Nicolas



More information about the hatari-devel mailing list