Dead Hackers Society
Other BBSes »
 
 

Silly Venture 2019
Demoscene  Coding  CT60  Buy/sell

Atari coding BBS
 
HBL on Falcon (follow up)
Posted by: Orion Apr,11.2019-18:59 


Hi dudes,

I'd like to follow up this old thread, http://dhs.nu/bbs-coding/index.php?request=2378, with my own experience.

(I've first posted a message to the original thread directly but as it is really old, you might miss it, so I re-post my message as a new thread).

I'm facing an issue with HBL (actually rasters) on Falcon and I need some help from the experts :)

I wrote a small program which setup the Falcon video registers in ST-compatible mode (320x200, RGB50 or VGA50 depending on the monitor type) using Leonard's init: http://leonard.oxg.free.fr/articles/multi_atari/multi_atari.html.

All CPU caches are disabled and CPU runs at 8MHz.

Then I use Timer-B in event count mode to trigger an HBL interrupt at a particular raster line.
All interrupts are disabled except Timer-B and VBL.

In the Timer-B interrupt handler, I change the background color using ST palette registers.

This simple code works perfectly on ST(e) as I get stable rasters starting from the desired raster line.

Here is what I observe on Falcon:

1) in RGB50 mode (with Leornard's init), the Timer-B/HBL interrupt is triggered as expected at the start of the desired raster line.
But there is an interrupt jitter: the raster is shaky on the left.
I guess that, unlike on the ST, there is "less time" to change the color before it is visible on Falcon?

2) in VGA50 mode (with Leornard's init), the Timer-B/HBL interrupt is triggered in the *middle* of the desired raster line, and this is unexpected!
Is it because the VIDEL uses two halflines for each raster line and the Timer-B/HBL routine is triggered on the second halfline rather than on the first one?

3) if I don't use Leonard's init to setup the video mode, but I only use the XBIOS VSetscreen() to setup the ST-compatible video mode, then I get different results!
- in RGB mode, the Timer-B/HBL interrupt is triggered at the end of the previous line.
- in VGA mode, the interrupt is triggered at the start of the previous raster line, thus having the color change occurring one raster line earlier than expected!

Questions are:
- How to get the Timer-B/HBL interrupt be triggered deterministically whatever the monitor mode is used (RGB or VGA)?
- What is the recommended method to get stable rasters on Falcon?

My constraint is that I need to achieve this in ST-Compatible mode.

Thx for your help guys!

Orion/Replicants








[All messages in this thread]    [Start new thread]

Topic Posted by  Date 
HBL on Falcon (follow up) Orion Apr,11.2019-18:59
  Re: HBL on Falcon (follow up) Orion Apr,12.2019-00:30
    Re: HBL on Falcon (follow up) mikro Apr,12.2019-09:08
      Re: HBL on Falcon (follow up) Orion Apr,12.2019-11:50
        Re: HBL on Falcon (follow up) Daniel Apr,15.2019-00:09
          Re: HBL on Falcon (follow up) mikro Apr,15.2019-11:46
            Re: HBL on Falcon (follow up) Orion Apr,15.2019-15:12
        Re: HBL on Falcon (follow up) evil Apr,15.2019-11:46
          Re: HBL on Falcon (follow up) Orion Apr,15.2019-14:39
            Re: HBL on Falcon (follow up) mikro Apr,16.2019-07:43
              Re: HBL on Falcon (follow up) Orion Apr,16.2019-12:20
          Re: HBL on Falcon (follow up) Daniel Apr,16.2019-23:45
            Re: HBL on Falcon (follow up) mikro Jun,16.2019-14:26
              Re: HBL on Falcon (follow up) mikro Aug,30.2019-08:32


Reply to this message
Name:
Topic:
Anti-troll code:

Message:

What's the anti-troll code?
That's your personal code to be able to add comments and messages on the dhs.nu site.
Don't have a code or forgot it? Fix it here.
© 1994-2019 Dead Hackers Society Contact: Anders Eriksson