Got something going. I noticed some of the connections in the table were unnecessary so I've modified the schematic a little, but it remains software compatible with the software presented in Sym-physis.
http://kaput.homeunix.org/~thrashbarg/ay-3-8912.png
I've made the schematic for the AY-3-8912 which is a 28 pin version of the 8910 and I believe it's more common. Please say if It's not. They can be found in Amstrad CPC's and Spectrum's, if you're willing to sacrifice one. If you've got an 8910 or an 8913 please check the datasheet for the correct pinouts.
One thing I've left out is the clock. I'll leave that up to you. You can use the 1 or 2MHz clock from the 6502. Some datasheets for the AY have a frequency table for a 1.78975MHz clock, or half of the NTSC frequency.
The use of port B on the VIA is unnecessary, but changing it would require the software to be changed. They can easily be attached to CB1 and CB2 of the VIA if you want to keep port B free.
Here's some code, based around the demo in Sym-physis:
Code: Select all
1 VIA=#####
10 GOSUB 1000
20 RE=0:DT=255
25 GOSUB 2000
30 RE=1:DT=0
35 GOSUB 2000
40 RE=7:DT=254
45 GOSUB 2000
50 RE=8:DT=15
55 GOSUB 2000
60 FOR A=1 TO 300:NEXT
70 RE=8:DT=0
75 GOSUB 2000
100 END
1000 POKE VIA+2,7:POKE VIA+3,255
1010 RETURN
2000 POKE VIA+1,RE
2010 POKE VIA,7
2020 POKE VIA,0
2030 POKE VIA+1,DT
2040 POKE VIA,6
2050 POKE VIA,0
2060 RETURN
Line 1 should be changed to set the base address of the VIA. 40960 for the application connector on the SYM-1.
Lines 1000-1010 initialize the VIA to write to the AY.
Lines 2000-2060 send data DT to register RE of the AY.
The code should make a short beep.
Of course if you wanted REAL sound you could always use a SID
