Version 0.5 is up...
AY chip support is in for the Super Game Module! I cheated, however... I didn't have it in me to get a 2nd sound core running so instead I did something clever. Kinda.
The SN-76489 programmable sound chip is a 3-voice programmable sound chip from Texas Instruments and is used as the sound chip for the Colecovision.
The AY-3-8910 programmable sound chip is a 3-voice programmable sound generator (PSG) designed by General Instrument in 1978. It's used on MSX computer which has a very similar architecture to the Colecovision. The Super Game Module released by OpCode games contains extra memory and also this AY sound chip - mostly so that MSX games can be ported to the Colecovision.
The AY chip is slightly superior to the SN chip... it has a wider range of frequencies and an envelope generator which allows for a number of cool oscillating and/or tapering sound effects.
My cheat was to simply map the 3 channels of AY chip into the SN chip that I already have emulation for. This is fine for normal tones (with a slightly degradation due to frequency differences) ... but I also had to emulate the AY envelope. I did this very quick and dirty - it's not timing accurate and so the pitch of some sounds on AY ported games to the Colecovision Super Game module won't sound perfect... but it's close enough and I'm able to do so with very little CPU loss so everything runs full speed!
In theory on a real CV with Super Game Module you
could use all 6 sound channels... the 3 from the SN chip and the 3 from the AY chip... my clever hack wouldn't allow that. But I have yet to find a game that actually does that. But I'm sure one exists... someday I'll properly emulate the AY chip but this is good enough for now. I'd like to spend time adding more features to the emulator rather than deal with more sound stuff
I also fixed the really buggy ROM selection code... sometimes you would pick game X and it would play game Y. That should all be okay now.
Getting ready for a full release... soon...