[hatari-devel] Killing impact screen problem : I've found the problem

Laurent Sallafranque laurent.sallafranque at free.fr
Wed Feb 3 23:39:03 CET 2010


npomarede at corp.free.fr a écrit :
> On Wed, 3 Feb 2010, Eero Tamminen wrote:
>
>   
>>> I don't think that adding something like the following patch is a good
>>> idea:
>>>
>>> if (hscrolloffset !=0)
>>>    fvram +=2;
>>>
>>> Perhaps "atariVideoRAM" is the problem too ?
>>>       
>> You can look into Video_CopyScreenLineColor() in video.c how it does STE HW
>> scrolling.  Maybe Videl code isn't taking into account everything doe in
>> there?
>>
>> (I guess in the Videl case you can ignore the border handling code)
>>
>> Nicolas?
>>     
>
> Hello,
>
> I really don't have any clue on how the falcon memory is working. Sure 
> that in ST/STE mode, we can use the same routs are those for plain STE in 
> video.c/screen.c but for the problem reported by laurent, I think it's 
> falcon specific.
>
> On STE low res, using hscroll requires 8 more bytes per line (due to 
> prefetching), but I don't know if similar adjustements are needed on 
> falcon.
>
>   
Yes, it is. Falcon mode seems to work like st mode in planar mode.
I'll have a closer look at what is done in ST code (video.c)

>
> Yes, maybe some "shortcuts" could be used to call STE screen functions, 
> but does someone know how to determine when videl is in such mode ?
>   
I think more and more about rewriting the VIDEL code.
I thought about doing it the other way.
I would prefer to isolate all the video functions in Videl.c and link 
them via iomemtabFalcon.c.

I'd have to rewrite some ST video code, but video.c and videl.c would be 
totally separated.
(I did this for crossbar code, I've rewritten every address, also the ST 
addresses are remapped in crossbar.c).

Like this, it would be easier to debug and maintain videl specific code 
and there's no risk to use some "ST code" and add in it : "if (machine 
== FALCON)" tests.


Do you agree with this ?

Regards

Laurent




More information about the hatari-devel mailing list