PSG Registers R11 - R13

From Intellivision Wiki
Revision as of 00:29, 21 January 2005 by Mr z (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Volume levels and envelope selects for channels A, B and C. Channel A uses R11, channel B uses R12 and channel C uses R13. See PSG Channels and PSG Envelope Generator for more details.

   0000:0000:00ee:vvvv
   where:
       ee          selects the envelope magnitude
                     00  No envelope selected.  PSG uses the flat volume in 'vvvv' instead.
                     01  Use envelope volume, shifted right by 2
                     10  Use envelope volume, shifted right by 1 
                     11  Use envelope volume as-is
       vvvv        indicates the flat volume to use if no envelope selected (ee is 00).

Some variants of the AY-3-891x family do not implement both envelope select bits. Those devices only allow selecting the unmodified envelope or a flat volume. On those devices, bit 5 always reads as 0. To ensure compatibility across both variants of the PSG, programs should always writes 1s to both 'e' bits, and also should not rely on a 1 written to bit 5 reading back as 1 or 0. (Writing 0 to bit 5 and subsequently reading it always gives 0 in bit 5.)