Topic : Pure Assembler Documentation Author : John Kormylo Version : PASM.HYP 1.0 Subject : Documentation/Pure Assembler Nodes : 740 Index Size : 20262 HCP-Version : 3 Compiled on : Atari @charset : atarist @lang : en @default : @help : Help @options : +g -i -s +x +z -t4 @width : 75 View Ref-File[ YM2149 Sound Chip ] ... supports tone, volume, envelope and noise for three channels. In addition it has two general purpose I/O ports (see GI Sound Chip). Its 16 registers are accessed by writing the desired register number to $FF8800 then either reading from $FF8800 or writing to $FF8802. Register 0: Channel A fine tone register (low byte) Register 1: Channel A coarse tone register (bits 0-3 only) Register 2: Channel B fine tone register (low byte) Register 3: Channel B coarse tone register (bits 0-3 only) Register 4: Channel C fine tone register (low byte) Register 5: Channel C coarse tone register (bits 0-3 only) Pitch = 125 KHz / 12 bit tone value. Register 6: Noise period register (bits 0-4 only) Pitch = 125 KHz / value Register 7: Noise/Tone Mixer (data direction) Register 8: Channel A volume Register 9: Channel B volume Register 10: Channel C volume Bits 0-3 = volume Bit 4: 1=use envelope register Register 11: Envelope Period (low byte) Register 12: Envelope Period (high byte) Period = 7812.5 Hz / 16 bit value Register 13: Envelope Shape Bit 0: Hold (stop after one repeat) Bit 1: Alternate (reverse attack/decay on repeat) Bit 2: 0=decay, 1=attack Bit 3: Continue (repeat) Register 14: I/O Port A Register 15: I/O Port B