void PARSER_MidiDataList(MidiMsgType t, int track, int offset, int imsg, byte bmsg, ulong ppq, int rse, bool isrse) { switch (t) { case MidiMsgType.MetaStr: midiDataList.AddV(SelectedTrackNumber, new MidiMetaMessage(MidiMsgType.MetaStr, ppq, imsg, GetMetaBString(offset))); break; case MidiMsgType.MetaInf: midiDataList.AddV(SelectedTrackNumber, new MidiMetaMessage(ppq, imsg, GetMetaData(offset))); break; case MidiMsgType.System: case MidiMsgType.SysCommon: // MetaHelpers.MetaNameFF( imsg ) if (imsg == 0xFF7F) { // { // Debug.Print("rse? {0} -----------sys---------------\n{1}",isrse ? 0 :1, SmfStringFormatter.byteToString(GetEventValue(offset))); midiDataList.AddV(SelectedTrackNumber, new MidiSysexMessage(ppq, imsg, GetMetaValue(offset))); } // } else if (imsg == 0xF0) { Debug.Print("0xF0 {0} {1}", isrse, GetEventValue(offset).StringifyHex()); midiDataList.AddV(SelectedTrackNumber, new MidiSysexMessage(ppq, imsg, GetEventValue(offset))); } break; default: if (isrse) { MidiDataList.AddV(SelectedTrackNumber, new MidiChannelMessage(ppq, rse, GetRseEventValue(offset))); } else { MidiDataList.AddV(SelectedTrackNumber, new MidiChannelMessage(ppq, rse, GetEventValue(offset))); } break; } }