Exemple #1
0
        private void Start()
        {
            for (var i = 0xff10; i <= 0xff25; i++)
            {
                var v = 0;
                // lengths should be preserved
                if (i == 0xff11 || i == 0xff16 || i == 0xff20)
                {
                    // channel 1, 2, 4 lengths
                    v = GetUnmaskedByte(i) & 0b00111111;
                }
                else if (i == 0xff1b)
                {
                    // channel 3 length
                    v = GetUnmaskedByte(i);
                }

                SetByte(i, v);
            }

            foreach (var m in _allModes)
            {
                m.Start();
            }

            _output.Start();
        }