Friday, September 6, 2019

on MSX computer programming the analog output AY chip in Basic (music macro) language


https://m.youtube.com/watch?v=N4DSvK3qS94


https://m.youtube.com/watch?v=hGpNMqbRLNg


The digital to analog converter on the General Instruments AY chip controls the envelope. The actual raw music production is a square wave coming from a dividing in frequemcy a very high frequency clock (MHz) oscillator, just like say Solina String Ensemble. So this D to A should be like a volume control knob adjusting level is steps. It is not actual steps in the carier signal itself.


A potential problem may be that on the music macro command, notes are specified by names of notes , A, B, C. Octaves by number of octave. If octaves are internal defined as x2 in frequency then they will sound flat to listener's brain.


A way round can be to program in MSX Basic but using the Sound command instead of the Play command. So registers can be input directly to the AY chip. The programmer can then specify as much greater than 880Hz is needed for a high octave of say A 220Hz. Or should we call it 219Hz or whatever is needed for a lower octave of A440Hz!


Reference:


Datasheet of AY8910
http://www.ym2149.com/ay8910.pdf


No comments:

Post a Comment