예제 #1
0
        private void SetupVRC6(outDatum od)
        {
            Chip chip = null;

            if (Audio.chipRegister.VRC6 == null)
            {
                return;
            }
            if (od.linePos.chipIndex < Audio.chipRegister.VRC6.Count)
            {
                chip = Audio.chipRegister.VRC6[od.linePos.chipNumber];
            }
            if (chip == null && od.linePos.chipIndex >= 0x80)
            {
                Driver.ZGM.ZgmChip.ZgmChip zChip = Audio.chipRegister.dicChipCmdNo[od.linePos.chipIndex];
                chip = Audio.chipRegister.VRC6[zChip.Index];
            }
            VRC6 vrc6 = new VRC6(chip, setting, midiKbd);

            vrc6.isTrace = isTrace;

            VRC6.Add(vrc6);
            dicInstAdd(vrc6, od.linePos.chipIndex, od.linePos.chipNumber);
            instsAdd(vrc6, od.linePos.chipIndex, od.linePos.chipNumber);
        }
예제 #2
0
파일: VRC6.cs 프로젝트: kuma4649/mml2vgm
        public static Instrument SetupInstInfo(outDatum od, ref SoundManager.Chip chip, Setting setting, bool isTrace, MIDIKbd midiKbd)
        {
            if (Audio.chipRegister == null || Audio.chipRegister.VRC6 == null)
            {
                return(null);
            }

            if (od.linePos.chipIndex < Audio.chipRegister.VRC6.Count)
            {
                chip = Audio.chipRegister.VRC6[od.linePos.chipIndex];
            }

            if (chip == null && od.linePos.chipIndex >= 0x80)
            {
                Driver.ZGM.ZgmChip.ZgmChip zChip = Audio.chipRegister.dicChipCmdNo[od.linePos.chipIndex];
                chip = Audio.chipRegister.VRC6[zChip.Index];
            }

            VRC6 vrc6 = new VRC6(chip, setting, midiKbd);

            vrc6.isTrace = isTrace;

            return(vrc6);
        }