C64 SID on Amstrad CPC, software or hardware ?
-The Amstrad CPC use the General Instrument AY-3-8912 sound chip, providing 3 channels, each configurable to generate square waves, white noise or both. A small array of hardware volume envelopes are available. The C64 use the SID sound chip with also 3 channels, each configurable to generate 4 different waves forms : sawtooth, triangle, pulse, noise. It offers other features, much more than the AY-3-8912.
So is it possible to listen to SID music on an limited Amstrad CPC ? The answer is yes, and if you are lucky enough to read french, you will be able to read the article "les SID-Voices" on Quasar. So to resume, yes you can do it on a plain Amstrad CPC, but if you play 3 SID-Voices, you wont have enough CPU time to do something else. Otherwise on an Amstrad CPC+ using the DMA, you will be able to do something else than playing music. The Quasar article comes with the AY+ source to play SID-Voices on a CPC+. On a plain Amstrad CPC, you can use a program by Geco, a hungarian programmer. He usually works on the Elan enterprise, he wrote a SID player for this computer, and ported it to the Amstrad CPC. Download this Amstrad CPC SID player (128 Kb only).
Some informations about this utility directly from the author (taken from chipmusic.org) : I created the player used 6510 emulation code of Simon Owen, and CPC header checking. The player spends a lot of time with 6510 code, this is the reason of speed changing on CPC, on Enterprise I met less speed changing, may be the cause of this on EP the processor is running at 4Mhz if the code is not in the video Memory. Yes, only some feature is emulated, frequency registers, envelopes in 50Hz, control registers (without wave formats), and volume register, if I remember well. And the noise emulation is also interesting on CPC, because when noise should apply then I give fix 0f value to noise channel, and drive the frequency with tone channel frequency (set reg 6 tone and noise enable on a channel), with this solution 3 different noises can appear on the AY. The player can play songs in 2 speeds, 50Hz, and 100Hz, does not matter of SID speed, ex if the speed of SID is 60Hz the player plays it on 50Hz.
Finally, you can play it hard too, with an extension. Read about it on CPCWiki (a bit of drama included).