AY-3-8910 rectangular waves
category: code [glöplog]
Is a rectangular wave with a constant volume on a real AY-3-8910 (or YM2149) actually rectangular, or will it e.g. be ski slope-shaped:
..or deformed in some other way? The datasheets aren't exactly the best quality. If the output waveform is not perfectly rectangular, does anyone have a wav recording or decent quality image available?
..or deformed in some other way? The datasheets aren't exactly the best quality. If the output waveform is not perfectly rectangular, does anyone have a wav recording or decent quality image available?
At the end of the day a lot depends on the machine, I guess: the condensators, resistors etc. that sit between the AY and the output. For example, there are big differences between different MSX models.
Ok, so let's say for the following HW:
Stock ZX Spectrum 48k (AY)
Stock Atari 520ST (YM)
Stock ZX Spectrum 48k (AY)
Stock Atari 520ST (YM)
Not sure if the quality is going to be anywhere good enough, but a quick youtube search for AY-3-8910 turned up a bunch of DIY projects outputting sound. You may be able to find a section of square wave output and look at the waveform. Very much a long shot though since most videos involve an AY-3-8910 -> simple amp on a breadboard -> 8 ohm hobby speaker -> worlds shittiest video camera.
Sorry, I can't provide you with Spectrum or Atari ST recordings (only MSX), but why do you need this and in what kind of a project does the shape of the waves make a considerable difference? You're trying to do some very serious hardware modeling, without having the actual hardware?
I just want to have as accurate a view as possible of what the output _should_ look like. Then I can decide whether or not to attempt to model all the characteristics based on my performance constraints.
So I guess your current implementation doesn't _sound_ good enough?
Well, I don't really know what it should sound like since I don't own any of the original HW.
It's never going to sound great or perfectly accurate since I'm doing this on a ~20 MHz CPU, where I do nearest-neighbor sampling and run that through a cheap bandpass filter.
But the more information I have, the better. I can then try do model the things that will give me the most bang for the buck.
It's never going to sound great or perfectly accurate since I'm doing this on a ~20 MHz CPU, where I do nearest-neighbor sampling and run that through a cheap bandpass filter.
But the more information I have, the better. I can then try do model the things that will give me the most bang for the buck.
For Spectrum and ST I cant help at the moment, but on the MSX, the actual sound output varies a lot between MSX models and even individual computers. On some machines there's a huge amount of distortion and noise/hiss and the high frequencies are dull, but on another machine it's crystal clear. There's no particular characteristic sound or frequency response that "everybody" expects, because there are so many different sounds in real machines that people have experienced. As said, the amps and speakers and everything play a role, perhaps much bigger than anything that happens inside the machine itself. At least on the MSX scene, I can't recall anyone complaining much about how the emulators sound when it comes to the plain old PSG/AY/YM square waves. If that helps.
Here's some preliminary piccy of a recording from a Spectrum 128k, the first model where the PSG was used:
Quite noisy, a bit rounded at the edges, and then there's the initial kick that levels off quickly.
Quite noisy, a bit rounded at the edges, and then there's the initial kick that levels off quickly.
@Marq: Thanks. So it looks like there's some decay in the output signal, although not quite as extreme as in my example picture. Good to know.
Lowpass + fade + noise would probably be a reasonable approximation. Probably there's a lot more to it when the pitch changes.
I would first try a simple implementation and some actual listening comparison. If you or your friends can't _hear_ any significant difference, then why care about what the waveforms look like?
@yzi: Because I don't have any reference HW to use for a listening comparison. I can compare my output against other emulators, but I'd prefer to at least have some data from a real device.
I still don't understand how looking at waveforms can tell you if your synth sounds good enough. In any case, you will need to compare your synth's sound to the sound of a real machine. Otherwise you won't know if it's good enough. Your idea is of course right: compare recordings from real hardware with your emulator. But your synth's waveform doesn't really have to _look_ good enough. It has to _sound_ good enough.
I mean, why not create a test program and ask a Spectrum owner to run it and record the output for you to _listen_ to?
I mean, why not create a test program and ask a Spectrum owner to run it and record the output for you to _listen_ to?
Subjective measurements might be good sometimes, but that's not what I'm interested in here. I was looking for some hard data on the output characteristics of a real system, which I got from Marq (granted, that's from one individual unit).
Even though I might not actually try to fully apply this information it's still good to have it, in order to know what to aim for.
Even though I might not actually try to fully apply this information it's still good to have it, in order to know what to aim for.