[hatari-devel] Hatari 1.4 emulation bugs

Nicolas Pomarède npomarede at corp.free.fr
Sun Nov 7 19:39:40 CET 2010


Le 05/11/2010 14:01, Anders Eriksson a écrit :
>
> Hi,
>
> while doing some testing, I found some bugs in Hatari 1.4 emulation for
> some demos (I'm sure there are more, but these are the ones I've seen so
> far).
>
> All tested on Mac OS X 1.6 with Hatari 1.4. I'm aware that Monsieur
> Styckx have made some fixes regarding STe overscan since v1.4, but I've
> not been able to test that yet, so maybe the errors for More Or Less
> Zero described below are already fixed.
>

Hello,

thanks for all these reports, always useful to track some remaining/less 
common issues.

Here's what I found :

> Anyway, here's the list:
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 1.
> Wave of the future / ICE
> http://files.dhs.nu/files_demo/wavefut.zip
>
> a) Top border flickers

Hatari seems to trigger VBL 4 cycles too soon, which in the case of this 
demo prevents top border from being removed (too strict timing in the 
demo). I will try to make more tests to measure the exact starting 
timing of the VBL.

> b) Sound crackles a bit

Yes, quality is not great. I haven't checked, maybe due to some LMC 
commands not correctly emulated.


> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 2.
> More Or Less Zero / DHS
> http://files.dhs.nu/demos/molz_hdd.zip
>
> a) Fullscreens are shifted too much to the right (8px approx) - also
> seen in Cernit Trandafir and Tuttugandi (the 20 years STe megademo
> screen by DHS)

As you said, I corrected this 2 weeks ago based on the results of my 
test program you sent me. Screen is now 8 pixels to the left.

> b) When using hardware scroller in fullscreen, there is graphic garbage
> in the right border (Firehorn pic and interference circles), also seen
> in Tuttugandi

I was not able to see how it looks on a real STE. Would it be possible 
for you to send me a video of the right border in such case (the best 
would be if you could change the horizontal position of your STE's 
monitor to fully display the extreme right part of the screen) ?

> c) Music and effects get unsynchronised after the plasma. In Hatari the
> sample loop that plays during the end of the plasma repeats four times,
> but on a real STe it repeats three times. The counter is on VBL and the
> soundchip is 25033 Hz. As far as I can tell either the VBL or soundchip
> frequency (or both) runs a little bit wrong speed (see video links below)
>
> Videos to illustrate the audio sync problem
>
> Real STe: http://ae.dhs.nu/tmp/molz_stesync.mp4
> Hatari 1.4: http://ae.dhs.nu/tmp/molz_hatarsynci.mp4
>
> If you listen carefully you can hear that the audio loop at the end of
> the plasma goes on four times on Hatari and three times on the real STe.
> It is easy to spot the wrong sync after the spectrum 4096 image were the
> colours flash in sync to the drum when the chunky fullscreen effect begins.

Never looked at this, but dma sound is certainly not fully complete yet. 
Maybe some wrong clock emulation for DMA, I will try to give it a look.


> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 3.
> Space Tale / ICE
> http://files.dhs.nu/files_demo/spactale.zip
>
> a) Lower border in the intro with the two big sprites is not opened

Bottom border's removal code is run just after some blitter stuffs and 
unfortunately Hatari sometimes still has a few cycles wrong (especially 
when blitter and cpu run in parallel when cpu doesn't need to access the 
bus). It doesn't work under Steem either (which is not an excuse :) )


> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 4. The Saw / Offbase
> http://pacidemo.planet-d.net/archives/THESAW.ZIP
>
> a) Audio is garbage

Sorry, can't reproduce. Under STF or STE I have an audible sountrack.


>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 5.
> STNICCC 2000 / Oxygene
> http://files.dhs.nu/party/stniccc2000/oxygen.zip
>
> a) Vector animation ends after a while, music continues

Yes, I saw this one some times ago, but forgot to add it to the 
compatibility list. We have some wrong timings for the FDC that make 
this demo crashes while it tries to stream data from the floppy.
We would need a more accurate FDC emulation (hint : pasti support 
needed, maybe Sarnau will be able to provide a fix for these FDC problems).


> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 6.
> Fullparts by Hemoroids
> http://stknights.free.fr/uploads/fullparts.zip
>
> a) The overscan flickers when a new line begins in the text displayer

Fixed, a pairing between LSL and JMP was needed, else we had a 4 cycles 
error that altered right border's removal.


> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> 7.
> Brace by Diamond Design
> http://pacidemo.atarizone.com/archives/BRACE.ZIP
>
> a) In the scrolltext screen with split low/med-res parts, the rasters
> flicker

Unfortunately, Hatari doesn't support cycle precise colors changes in 
med res (same problem in Best part of the creation by Delta Force or 
Highres mode by Equinox on STE). I will try to look at this someday, but 
this part of the code (planar <-> 8/16/32 bpp is really ugly and not 
modular)


Thanks for your reports, don't hesitate to send more :)


Nicolas



More information about the hatari-devel mailing list