public void Init(bool isTrace, EnmMmlFileFormat mmlFileFormat, MIDIKbd midiKbd) { this.isTrace = isTrace; this.mmlFileFormat = mmlFileFormat; this.midiKbd = midiKbd; dicInst.Clear(); Insts = new Dictionary <string, Dictionary <int, Dictionary <int, Instrument> > >(); Conductor.Clear(); AY8910.Clear(); C140.Clear(); HuC6280.Clear(); K051649.Clear(); K053260.Clear(); QSound.Clear(); RF5C164.Clear(); SN76489.Clear(); SegaPCM.Clear(); YM2151.Clear(); YM2203.Clear(); YM2413.Clear(); YM3526.Clear(); Y8950.Clear(); YM3812.Clear(); YMF262.Clear(); YM2608.Clear(); YM2609.Clear(); YM2610B.Clear(); YM2612.Clear(); YM2612X.Clear(); PPZ8.Clear(); VRC6.Clear(); Gigatron.Clear(); }
public Gigatron(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(4, chip, setting, midiKbd) { for (int i = 0; i < 4; i++) { vol[i] = 255; beforeTie[i] = false; } }
public YM2610B_mucom(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(190, chip, setting, midiKbd) { //for (int i = 0; i < 19; i++) //{ // vol[i] = i < 9 ? 127 : (i < 12 ? 15 : (i < 18 ? 31 : 255)); // beforeTie[i] = false; //} }
public YMF271(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(18 + 5 + 24, chip, setting, midiKbd) { for (int i = 0; i < 18 + 5 + 24; i++) { vol[i] = 63; beforeTie[i] = false; } }
public Conductor(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(2, chip, setting, midiKbd) { for (int i = 0; i < 2; i++) { vol[i] = 0; beforeTie[i] = false; } }
public YM3526(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(9 + 5, chip, setting, midiKbd) { for (int i = 0; i < 9 + 5; i++) { vol[i] = 63; beforeTie[i] = false; } }
public YM2151(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(8, chip, setting, midiKbd) { for (int i = 0; i < 8; i++) { vol[i] = 127; beforeTie[i] = false; } }
public C352(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(32, chip, setting, midiKbd) { for (int i = 0; i < 32; i++) { vol[i] = 255; beforeTie[i] = false; } }
public NES(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(6, chip, setting, midiKbd) { for (int i = 0; i < 6; i++) { vol[i] = 15; beforeTie[i] = false; } }
public YM2610B(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(19, chip, setting, midiKbd) { for (int i = 0; i < 19; i++) { vol[i] = i < 9 ? 127 : (i < 12 ? 15 : (i < 18 ? 31 : 255)); beforeTie[i] = false; } }
public YM2413(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(14, chip, setting, midiKbd) { for (int i = 0; i < 14; i++) { vol[i] = 15; beforeTie[i] = false; } }
public YMF262(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(23, chip, setting, midiKbd) { for (int i = 0; i < 23; i++) { vol[i] = 63; beforeTie[i] = false; } }
public SegaPCM(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(16, chip, setting, midiKbd) { for (int i = 0; i < 16; i++) { vol[i] = 127; beforeTie[i] = false; } }
public YM2203(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(9, chip, setting, midiKbd) { for (int i = 0; i < 9; i++) { vol[i] = i < 6 ? 127 : 15; beforeTie[i] = false; } }
public YM2609(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(12 + 6 + 12 + 6 + 3 + 6, chip, setting, midiKbd) { for (int i = 0; i < 45; i++) { vol[i] = i < 18 ? 127 : (i < 30 ? 15 : (i < 36 ? 31 : (i < 39 ? 255 : 31))); beforeTie[i] = false; } }
public K053260(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(4, chip, setting, midiKbd) { for (int i = 0; i < 4; i++) { vol[i] = 127; beforeTie[i] = false; } }
public GeneralMIDI(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(99, chip, setting, midiKbd) { for (int i = 0; i < 99; i++) { vol[i] = 127; expression[i] = 127; velocity[i] = 127; beforeTie[i] = false; } }
public List <Instrument> Create(InstrumentSet instSet, List <SoundManager.Chip> chips, Setting setting, MIDIKbd midiKbd) { Instrument inst; List <Instrument> ret = new List <Instrument>(); switch (instSet) { case InstrumentSet.vgm: case InstrumentSet.zgm: foreach (SoundManager.Chip chip in chips) { inst = Create(chip, setting, midiKbd); ret.Add(inst); } break; case InstrumentSet.xgm: inst = new MMLParameter.YM2612X(chips[0], setting, midiKbd); ret.Add(inst); break; case InstrumentSet.mucom: inst = new MMLParameter.YM2608_mucom(chips[0], setting, midiKbd); ret.Add(inst); break; case InstrumentSet.pmd: inst = new MMLParameter.YM2608_PMD(chips[0], setting, midiKbd); ret.Add(inst); break; default: throw new ArgumentException(); } return(ret); }
public Instrument(int n, SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) { ChCount = n; inst = new string[n]; envelope = new string[n]; gatetime = new string[n]; notecmd = new string[n]; vol = new int?[n]; volMode = new int?[n]; expression = new int?[n]; velocity = new int?[n]; octave = new int?[n]; length = new string[n]; pan = new string[n]; envSw = new string[n]; lfoSw = new string[n]; lfo = new string[n]; hlfo = new string[n]; detune = new int?[n]; keyShift = new int?[n]; keyOnMeter = new int?[n]; beforeTie = new bool[n]; clockCounter = new int[n]; MIDIch = new int?[n]; partColor = new int[n]; TraceInfo = new ConcurrentQueue <outDatum> [n]; for (int i = 0; i < n; i++) { TraceInfo[i] = new ConcurrentQueue <outDatum>(); clockCounter[i] = 128; vol[i] = 0; volMode[i] = 0; beforeTie[i] = false; partColor[i] = 1; } TraceInfoOld = new outDatum[n]; this.chip = chip; this.setting = setting; this.midiKbd = midiKbd; SetParam = new Action <outDatum, int, int>[] { //0 - null, null, SetTempo, SetInstrument, SetVolume, SetTotalVolume, SetOctave, SetOctaveUp, SetOctaveDown, null, //10 - null, SetLength, null, SetPan, SetDetune, null, null, null, SetGatetime, null, //20 - SetEnvelope, SetExtendChannel, null, null, null, null, null, null, null, SetLfo, //30 - SetLfoSwitch, null, null, null, SetKeyShift, null, SetMIDICh, null, SetNote, SetRest, //40 - null, null, null, null, null, null, SetLyric, null, null, SetVelocity, //50 - null, null, null, SetClockCounter, null, null, null, null, null, null, //60 - SetTraceUpdateStack, null, null, null, null, null, null, SetPartColor, null, null, //70 - null, null, null, null, null, null, SetHardLFO, null, null, null, }; }
public YM2608_PMD(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(20, chip, setting, midiKbd) { }
public static Instrument SetupInstInfo(outDatum od, ref SoundManager.Chip chip, Setting setting, bool isTrace, MIDIKbd midiKbd) { if (Audio.chipRegister == null || Audio.chipRegister.NES == null) { return(null); } if (od.linePos.chipIndex < Audio.chipRegister.NES.Count) { chip = Audio.chipRegister.NES[od.linePos.chipIndex]; } if (chip == null && od.linePos.chipIndex >= 0x80) { Driver.ZGM.ZgmChip.ZgmChip zChip = Audio.chipRegister.dicChipCmdNo[od.linePos.chipIndex]; chip = Audio.chipRegister.NES[zChip.Index]; } NES nes = new NES(chip, setting, midiKbd); nes.isTrace = isTrace; return(nes); }
public YM2608_mucom(SoundManager.Chip chip, Setting setting, MIDIKbd midiKbd) : base(190, chip, setting, midiKbd) { }
public Instrument Create(Chip chip, Setting setting, MIDIKbd midiKbd) { if (chip == null) { return(null); } switch (chip.Device) { case Core.EnmZGMDevice.AY8910: return(new AY8910(chip, setting, midiKbd)); case Core.EnmZGMDevice.C140: return(new C140(chip, setting, midiKbd)); case Core.EnmZGMDevice.C352: return(new C352(chip, setting, midiKbd)); case Core.EnmZGMDevice.Conductor: return(new Conductor(chip, setting, midiKbd)); case Core.EnmZGMDevice.MIDIGM: return(new GeneralMIDI(chip, setting, midiKbd)); case Core.EnmZGMDevice.HuC6280: return(new HuC6280(chip, setting, midiKbd)); case Core.EnmZGMDevice.K051649: return(new K051649(chip, setting, midiKbd)); case Core.EnmZGMDevice.K053260: return(new K053260(chip, setting, midiKbd)); case Core.EnmZGMDevice.PPZ8: return(new PPZ8(chip, setting, midiKbd)); case Core.EnmZGMDevice.QSound: return(new QSound(chip, setting, midiKbd)); case Core.EnmZGMDevice.RF5C164: return(new RF5C164(chip, setting, midiKbd)); case Core.EnmZGMDevice.SegaPCM: return(new SegaPCM(chip, setting, midiKbd)); case Core.EnmZGMDevice.SN76489: return(new SN76489(chip, setting, midiKbd)); case Core.EnmZGMDevice.Y8950: return(new Y8950(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2151: return(new YM2151(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2203: return(new YM2203(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2413: return(new YM2413(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2608: return(new YM2608(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2609: return(new YM2609(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2610: return(new YM2610B(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM2612: return(new YM2612(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM3526: return(new YM3526(chip, setting, midiKbd)); case Core.EnmZGMDevice.YM3812: return(new YM3812(chip, setting, midiKbd)); case Core.EnmZGMDevice.YMF262: return(new YMF262(chip, setting, midiKbd)); case Core.EnmZGMDevice.YMF278B: return(new YMF278B(chip, setting, midiKbd)); default: return(null); } }