Page 2 of 2

Re: AY emulation testing

Posted: Fri Sep 13, 2019 10:03 am
by djnzx48
Is anyone willing to try running the test?

Meanwhile, I found yet another bug: envelope type 13 is broken in Spectaculator. It's supposed to ramp up to the maximum level and stay there, but instead it drops back to 0, resulting in silence. You can see the cause of the problem here:

Image

The envelope level is incremented, but does not get set back to 15 when the cycle ends, causing it to overflow and become silence.

Re: AY emulation testing

Posted: Fri Sep 13, 2019 12:18 pm
by Guesser
I've said it before, but I believe the only way to get really accurate AY sound is to first determine how the DACs actually work and then calculate the resulting levels and apply suitable filtering per machine. No fiddling with look-up-table values is going to correctly emulate a +3 for instance.

Re: AY emulation testing

Posted: Sat Sep 14, 2019 5:15 am
by djnzx48
Guesser wrote: Fri Sep 13, 2019 12:18 pm I've said it before, but I believe the only way to get really accurate AY sound is to first determine how the DACs actually work and then calculate the resulting levels and apply suitable filtering per machine. No fiddling with look-up-table values is going to correctly emulate a +3 for instance.
Could you elaborate on that? What does a current emulator (using accurate measurements) get wrong that would require proper DAC emulation to rectify? I'm not sure that I see much value in trying to emulate the faulty sound of the +3.

I found some recordings taken from AY and YM chips, and I couldn't detect any volume differences in the tone+noise parts. Or if they are there, the difference is more subtle than claimed. But it's hard to tell without an isolated recording.

I also fixed the envelope 13 bug, here's the patch if anyone wants to apply it.
Spoiler
000021D5:C7->E9
000021D6:00->B7
000021D7:03->07
000021DA:00->90
00002991:00->C7
00002993:00->03
00002997:00->89
00002998:00->1A
00002999:00->E9
0000299A:00->3D
0000299B:00->F8
0000299C:00->FF
0000299D:00->FF

Re: AY emulation testing

Posted: Sat Sep 14, 2019 10:49 am
by 1024MAK
Amstrad messed up the audio circuitry on the +2A/+3 PCB hence the AY audio is distorted. Note that most +2A machines use a later PCB where they corrected the circuit design.

Also, what type of digital to analogue converter does the AY actually use? And is there good repeatability between chips of different batches...

Mark

Re: AY emulation testing

Posted: Sat Sep 14, 2019 12:29 pm
by Ast A. Moore
djnzx48 wrote: Fri Sep 13, 2019 10:03 am Is anyone willing to try running the test?
Sure. Here’s the audio from my +2A(B). Recorded from the TV speaker.
Matches the output of Fuse, by the way.

Re: AY emulation testing

Posted: Sat Sep 14, 2019 12:50 pm
by djnzx48
Thanks. So the 'noise doubling' doesn't seem to occur on a real chip.

I wonder how EvgenRU managed to observe the effect.

Re: AY emulation testing

Posted: Sat Sep 14, 2019 4:35 pm
by Guesser
djnzx48 wrote: Sat Sep 14, 2019 5:15 am Could you elaborate on that?
The different models of Spectrum all have different circuits for the AY, though the +3 is where this has the most significant effect on the resulting audio signal as the amplification is all wrong. The +3 and Black +2 circuits both have some low pass filtering too.

Re: AY emulation testing

Posted: Sat Sep 14, 2019 4:37 pm
by Guesser
1024MAK wrote: Sat Sep 14, 2019 10:49 am Also, what type of digital to analogue converter does the AY actually use? And is there good repeatability between chips of different batches...
And what effect does shorting the channels together vs mixing them with a resistor network have on the resulting signal.

Re: AY emulation testing

Posted: Thu Feb 13, 2020 3:40 pm
by goodboy
full reverse of AY-3-8910 1979 G.I. CORP
http://dlcorp.nedopc.com/download/file.php?id=3033