[hatari-devel] [Crossbar emulation] : new infos and a problem in DmaSnd.c (I think)

Laurent Sallafranque laurent.sallafranque at free.fr
Tue Sep 22 00:11:45 CEST 2009


In complement to my precedent mail :

Dma sound is back (but instable for now).
And quality is much better than before (I'm doing my tests with Eko 
system demo which had a bad sound quality before).

The problem is that sound is unstable and freezes sometimes (I'm trying 
to find out why).

I'm still far to have finished to code the crossbar, but this work on 
Falcon DmaSound is important before I start to write the crossbar part.

Another problem (I think) :

Thomas, in dmaSnd.c, I think there's a problem in :

void DmaSnd_FrameCountHigh_ReadByte(void)
void DmaSnd_FrameCountMed_ReadByte(void)
void DmaSnd_FrameCountLow_ReadByte(void)

You call DmaSnd_GetFrameCount().

    if (nDmaSoundControl & DMASNDCTRL_PLAY)
        nActCount = nFrameStartAddr + (int)FrameCounter;

The problem (I think is that you always return (nFrameStartAddr + 0), as 
FrameCounter is only computed in a loop in DmaSnd_GenerateSamples.

Regards

Laurent




More information about the hatari-devel mailing list