xref: /freebsd/contrib/file/magic/Magdir/sysex (revision 898496ee09ed2b7d25f6807edc4515628196ec0a)
1b6cee71dSXin LI
2b6cee71dSXin LI#------------------------------------------------------------------------
3*898496eeSXin LI# $File: sysex,v 1.12 2022/10/31 13:22:26 christos Exp $
4b6cee71dSXin LI# sysex: file(1) magic for MIDI sysex files
5b6cee71dSXin LI#
6b6cee71dSXin LI# GRR: original 1 byte test at offset was too general as it catches also many FATs of DOS filesystems
7b6cee71dSXin LI# where real SYStem EXclusive messages at offset 1 are limited to seven bits
848c779cdSXin LI# https://en.wikipedia.org/wiki/MIDI
9a4d6d3b8SXin LI# test for StartSysEx byte and upper unsed bit of vendor ID
10a4d6d3b8SXin LI0	ubeshort&0xFF80		0xF000
11a4d6d3b8SXin LI# MIDI System Exclusive (SysEx) messages (strength=50) after Microsoft Visual C library (strength=70)
12a4d6d3b8SXin LI#!:strength +0
13*898496eeSXin LI# skip Microsoft Visual C library with page size 16 misidentified as ADA and
14*898496eeSXin LI# page size 32 misidentified as Inventronics by looking for terminating End Of eXclusive byte (EOX)
15a4d6d3b8SXin LI>2		search/12	\xF7
16a4d6d3b8SXin LI>>0	use	midi-sysex
17a4d6d3b8SXin LI#	display information about MIDI System Exclusive (SysEx) messages
18a4d6d3b8SXin LI0	name		midi-sysex
19a4d6d3b8SXin LI# https://fileinfo.com/extension/syx
20a4d6d3b8SXin LI>1	ubyte			x		MIDI audio System Exclusive (SysEx) message -
21a4d6d3b8SXin LI# Note: file (version 5.41) labeled the above entry as "SysEx File"
22a4d6d3b8SXin LI#!:mime	application/octet-stream
23a4d6d3b8SXin LI!:mime	audio/x-syx
24a4d6d3b8SXin LI# https://onsongapp.com/docs/features/formats/sysex
25a4d6d3b8SXin LI!:ext	syx/sysex
26a4d6d3b8SXin LI# https://www.midi.org/specifications-old/item/manufacturer-id-numbers
27a4d6d3b8SXin LI# https://raw.githubusercontent.com/insolace/MIDI-Sysex-MFG-IDs/master/Sysex%20ID%20Tables/MIDI%20Sysex%20MFG%20IDs.csv
28a4d6d3b8SXin LI# SysEx manufacturer ID; originally one byte, but now 0 is used as an escapement to reach the next two
29b6cee71dSXin LI# North American Group
30a4d6d3b8SXin LI#>1	byte			0x01		Sequential
31a4d6d3b8SXin LI>1	byte			0x01		Sequential Circuits
32b6cee71dSXin LI>1	byte			0x02		IDP
33a4d6d3b8SXin LI#>1	byte			0x03		OctavePlateau
34a4d6d3b8SXin LI>1	byte			0x03		Voyetra Turtle Beach
35b6cee71dSXin LI>1	byte			0x04		Moog
36a4d6d3b8SXin LI#>1	byte			0x05		Passport
37a4d6d3b8SXin LI>1	byte			0x05		Passport Designs
38a4d6d3b8SXin LI#>1	byte			0x06		Lexicon
39a4d6d3b8SXin LI>1	byte			0x06		Lexicon Inc.
40b6cee71dSXin LI>1	byte			0x07		Kurzweil/Future Retro
41b6cee71dSXin LI>>3	byte			0x77		777
42b6cee71dSXin LI>>4	byte			0x00		Bank
43b6cee71dSXin LI>>4	byte			0x01		Song
44b6cee71dSXin LI>>5	byte			0x0f		16
45b6cee71dSXin LI>>5	byte			0x0e		15
46b6cee71dSXin LI>>5	byte			0x0d		14
47b6cee71dSXin LI>>5	byte			0x0c		13
48b6cee71dSXin LI>>5	byte			0x0b		12
49b6cee71dSXin LI>>5	byte			0x0a		11
50b6cee71dSXin LI>>5	byte			0x09		10
51b6cee71dSXin LI>>5	byte			0x08		9
52b6cee71dSXin LI>>5	byte			0x07		8
53b6cee71dSXin LI>>5	byte			0x06		7
54b6cee71dSXin LI>>5	byte			0x05		6
55b6cee71dSXin LI>>5	byte			0x04		5
56b6cee71dSXin LI>>5	byte			0x03		4
57b6cee71dSXin LI>>5	byte			0x02		3
58b6cee71dSXin LI>>5	byte			0x01		2
59b6cee71dSXin LI>>5	byte			0x00		1
60b6cee71dSXin LI>>5	byte			0x10		(ALL)
61b6cee71dSXin LI>>2	byte			x			\b, Channel %d
62b6cee71dSXin LI>1	byte			0x08		Fender
63a4d6d3b8SXin LI#>1	byte			0x09		Gulbransen
64a4d6d3b8SXin LI>1	byte			0x09		MIDI9
65a4d6d3b8SXin LI#>1	byte			0x0a		AKG
66a4d6d3b8SXin LI>1	byte			0x0a		AKG Acoustics
67b6cee71dSXin LI>1	byte			0x0b		Voyce
68b6cee71dSXin LI>1	byte			0x0c		Waveframe
69a4d6d3b8SXin LI# not ADA programming language
70a4d6d3b8SXin LI#>1	byte			0x0d		ADA
71a4d6d3b8SXin LI>1	byte			0x0d		ADA Signal Processors Inc.
72a4d6d3b8SXin LI#>1	byte			0x0e		Garfield
73a4d6d3b8SXin LI>1	byte			0x0e		Garfield Electronics
74b6cee71dSXin LI>1	byte			0x0f		Ensoniq
75b6cee71dSXin LI>1	byte			0x10		Oberheim
76b6cee71dSXin LI>>2	byte			0x06		Matrix 6 series
77b6cee71dSXin LI>>3	byte			0x0A		Dump (All)
78b6cee71dSXin LI>>3	byte			0x01		Dump (Bank)
79b6cee71dSXin LI>>4 belong			0x0002040E		Matrix 1000
80b6cee71dSXin LI>>>11 byte			<2			User bank %d
81b6cee71dSXin LI>>>11 byte			>1			Preset bank %d
82b6cee71dSXin LI>1	byte			0x11		Apple
83b6cee71dSXin LI>1	byte			0x12		GreyMatter
84b6cee71dSXin LI>1	byte			0x14		PalmTree
85b6cee71dSXin LI>1	byte			0x15		JLCooper
86b6cee71dSXin LI>1	byte			0x16		Lowrey
87b6cee71dSXin LI>1	byte			0x17		AdamsSmith
88b6cee71dSXin LI>1	byte			0x18		E-mu
89a4d6d3b8SXin LI#>1	byte			0x19		Harmony
90a4d6d3b8SXin LI>1	byte			0x19		Harmony Systems
91b6cee71dSXin LI>1	byte			0x1a		ART
92b6cee71dSXin LI>1	byte			0x1b		Baldwin
93b6cee71dSXin LI>1	byte			0x1c		Eventide
94b6cee71dSXin LI>1	byte			0x1d		Inventronics
95b6cee71dSXin LI>1	byte			0x1f		Clarity
96b6cee71dSXin LI
97b6cee71dSXin LI# European Group
98a4d6d3b8SXin LI#>1	byte			0x21		SIEL
99a4d6d3b8SXin LI>1	byte			0x21		Proel Labs (SIEL)
100b6cee71dSXin LI>1	byte			0x22		Synthaxe
101b6cee71dSXin LI>1	byte			0x24		Hohner
102b6cee71dSXin LI>1	byte			0x25		Twister
103a4d6d3b8SXin LI#>1	byte			0x26		Solton
104a4d6d3b8SXin LI>1	byte			0x26		Ketron s.r.l.
105b6cee71dSXin LI>1	byte			0x27		Jellinghaus
106b6cee71dSXin LI>1	byte			0x28		Southworth
107b6cee71dSXin LI>1	byte			0x29		PPG
108b6cee71dSXin LI>1	byte			0x2a		JEN
109a4d6d3b8SXin LI#>1	byte			0x2b		SSL
110a4d6d3b8SXin LI>1	byte			0x2b		Solid State Logic Organ Systems
111a4d6d3b8SXin LI#>1	byte			0x2c		AudioVertrieb
112a4d6d3b8SXin LI>1	byte			0x2c		Audio Veritrieb-P. Struven
113b6cee71dSXin LI
114b6cee71dSXin LI>1	byte			0x2f		ELKA
115b6cee71dSXin LI>>3	byte			0x09		EK-44
116b6cee71dSXin LI
117b6cee71dSXin LI>1	byte			0x30		Dynacord
118a4d6d3b8SXin LI#>1	byte			0x31		Jomox
119a4d6d3b8SXin LI>1	byte			0x31		Viscount International Spa
120b6cee71dSXin LI>1	byte			0x33		Clavia
121b6cee71dSXin LI>1	byte			0x39		Soundcraft
122b6cee71dSXin LI# Some Waldorf info from http://Stromeko.Synth.net/Downloads#WaldorfDocs
123b6cee71dSXin LI>1	byte			0x3e		Waldorf
124b6cee71dSXin LI>>2	byte			0x00		microWave
125b6cee71dSXin LI>>2	byte			0x0E		microwave2 / XT
126b6cee71dSXin LI>>2	byte			0x0F		Q / Q+
127b6cee71dSXin LI>>3	byte			=0			(default id)
128b6cee71dSXin LI>>3 byte			>0			(
129b6cee71dSXin LI>>>3 byte			<0x7F		\bdevice %d)
130b6cee71dSXin LI>>>3 byte			=0x7F		\bbroadcast id)
131b6cee71dSXin LI>>3	byte			0x7f		Microwave I
132b6cee71dSXin LI>>>4	byte			0x00		SNDR (Sound Request)
133b6cee71dSXin LI>>>4	byte			0x10		SNDD (Sound Dump)
134b6cee71dSXin LI>>>4	byte			0x20		SNDP (Sound Parameter Change)
135b6cee71dSXin LI>>>4	byte			0x30		SNDQ (Sound Parameter Inquiry)
136b6cee71dSXin LI>>>4	byte			0x70		BOOT (Sound Reserved)
137b6cee71dSXin LI>>>4	byte			0x01		MULR (Multi Request)
138b6cee71dSXin LI>>>4	byte			0x11		MULD (Multi Dump)
139b6cee71dSXin LI>>>4	byte			0x21		MULP (Multi Parameter Change)
140b6cee71dSXin LI>>>4	byte			0x31		MULQ (Multi Parameter Inquiry)
141b6cee71dSXin LI>>>4	byte			0x71		OS (Multi Reserved)
142b6cee71dSXin LI>>>4	byte			0x02		DRMR (Drum Map Request)
143b6cee71dSXin LI>>>4	byte			0x12		DRMD (Drum Map Dump)
144b6cee71dSXin LI>>>4	byte			0x22		DRMP (Drum Map Parameter Change)
145b6cee71dSXin LI>>>4	byte			0x32		DRMQ (Drum Map Parameter Inquiry)
146b6cee71dSXin LI>>>4	byte			0x72		BIN (Drum Map Reserved)
147b6cee71dSXin LI>>>4	byte			0x03		PATR (Sequencer Pattern Request)
148b6cee71dSXin LI>>>4	byte			0x13		PATD (Sequencer Pattern Dump)
149b6cee71dSXin LI>>>4	byte			0x23		PATP (Sequencer Pattern Parameter Change)
150b6cee71dSXin LI>>>4	byte			0x33		PATQ (Sequencer Pattern Parameter Inquiry)
151b6cee71dSXin LI>>>4	byte			0x73		AFM (Sequencer Pattern Reserved)
152b6cee71dSXin LI>>>4	byte			0x04		GLBR (Global Parameter Request)
153b6cee71dSXin LI>>>4	byte			0x14		GLBD (Global Parameter Dump)
154b6cee71dSXin LI>>>4	byte			0x24		GLBP (Global Parameter Parameter Change)
155b6cee71dSXin LI>>>4	byte			0x34		GLBQ (Global Parameter Parameter Inquiry)
156b6cee71dSXin LI>>>4	byte			0x07		MODR (Mode Parameter Request)
157b6cee71dSXin LI>>>4	byte			0x17		MODD (Mode Parameter Dump)
158b6cee71dSXin LI>>>4	byte			0x27		MODP (Mode Parameter Parameter Change)
159b6cee71dSXin LI>>>4	byte			0x37		MODQ (Mode Parameter Parameter Inquiry)
160b6cee71dSXin LI>>2	byte			0x10		microQ
161b6cee71dSXin LI>>>4	byte			0x00		SNDR (Sound Request)
162b6cee71dSXin LI>>>4	byte			0x10		SNDD (Sound Dump)
163b6cee71dSXin LI>>>4	byte			0x20		SNDP (Sound Parameter Change)
164b6cee71dSXin LI>>>4	byte			0x30		SNDQ (Sound Parameter Inquiry)
165b6cee71dSXin LI>>>4	byte			0x70		(Sound Reserved)
166b6cee71dSXin LI>>>4	byte			0x01		MULR (Multi Request)
167b6cee71dSXin LI>>>4	byte			0x11		MULD (Multi Dump)
168b6cee71dSXin LI>>>4	byte			0x21		MULP (Multi Parameter Change)
169b6cee71dSXin LI>>>4	byte			0x31		MULQ (Multi Parameter Inquiry)
170b6cee71dSXin LI>>>4	byte			0x71		OS (Multi Reserved)
171b6cee71dSXin LI>>>4	byte			0x02		DRMR (Drum Map Request)
172b6cee71dSXin LI>>>4	byte			0x12		DRMD (Drum Map Dump)
173b6cee71dSXin LI>>>4	byte			0x22		DRMP (Drum Map Parameter Change)
174b6cee71dSXin LI>>>4	byte			0x32		DRMQ (Drum Map Parameter Inquiry)
175b6cee71dSXin LI>>>4	byte			0x72		BIN (Drum Map Reserved)
176b6cee71dSXin LI>>>4	byte			0x04		GLBR (Global Parameter Request)
177b6cee71dSXin LI>>>4	byte			0x14		GLBD (Global Parameter Dump)
178b6cee71dSXin LI>>>4	byte			0x24		GLBP (Global Parameter Parameter Change)
179b6cee71dSXin LI>>>4	byte			0x34		GLBQ (Global Parameter Parameter Inquiry)
180b6cee71dSXin LI>>2	byte			0x11		rackAttack
181b6cee71dSXin LI>>>4	byte			0x00		SNDR (Sound Parameter Request)
182b6cee71dSXin LI>>>4	byte			0x10		SNDD (Sound Parameter Dump)
183b6cee71dSXin LI>>>4	byte			0x20		SNDP (Sound Parameter Parameter Change)
184b6cee71dSXin LI>>>4	byte			0x30		SNDQ (Sound Parameter Parameter Inquiry)
185b6cee71dSXin LI>>>4	byte			0x01		PRGR (Program Parameter Request)
186b6cee71dSXin LI>>>4	byte			0x11		PRGD (Program Parameter Dump)
187b6cee71dSXin LI>>>4	byte			0x21		PRGP (Program Parameter Parameter Change)
188b6cee71dSXin LI>>>4	byte			0x31		PRGQ (Program Parameter Parameter Inquiry)
189b6cee71dSXin LI>>>4	byte			0x71		OS (Program Parameter Reserved)
190b6cee71dSXin LI>>>4	byte			0x03		PATR (Pattern Parameter Request)
191b6cee71dSXin LI>>>4	byte			0x13		PATD (Pattern Parameter Dump)
192b6cee71dSXin LI>>>4	byte			0x23		PATP (Pattern Parameter Parameter Change)
193b6cee71dSXin LI>>>4	byte			0x33		PATQ (Pattern Parameter Parameter Inquiry)
194b6cee71dSXin LI>>>4	byte			0x04		GLBR (Global Parameter Request)
195b6cee71dSXin LI>>>4	byte			0x14		GLBD (Global Parameter Dump)
196b6cee71dSXin LI>>>4	byte			0x24		GLBP (Global Parameter Parameter Change)
197b6cee71dSXin LI>>>4	byte			0x34		GLBQ (Global Parameter Parameter Inquiry)
198b6cee71dSXin LI>>>4	byte			0x05		EFXR (FX Parameter Request)
199b6cee71dSXin LI>>>4	byte			0x15		EFXD (FX Parameter Dump)
200b6cee71dSXin LI>>>4	byte			0x25		EFXP (FX Parameter Parameter Change)
201b6cee71dSXin LI>>>4	byte			0x35		EFXQ (FX Parameter Parameter Inquiry)
202b6cee71dSXin LI>>>4	byte			0x07		MODR (Mode Command Request)
203b6cee71dSXin LI>>>4	byte			0x17		MODD (Mode Command Dump)
204b6cee71dSXin LI>>>4	byte			0x27		MODP (Mode Command Parameter Change)
205b6cee71dSXin LI>>>4	byte			0x37		MODQ (Mode Command Parameter Inquiry)
206b6cee71dSXin LI>>2	byte			0x03		Wave
207b6cee71dSXin LI>>>4	byte			0x00		SBPR (Soundprogram)
208b6cee71dSXin LI>>>4	byte			0x01		SAPR (Performance)
209b6cee71dSXin LI>>>4	byte			0x02		SWAVE (Wave)
210b6cee71dSXin LI>>>4	byte			0x03		SWTBL (Wave control table)
211b6cee71dSXin LI>>>4	byte			0x04		SVT (Velocity Curve)
212b6cee71dSXin LI>>>4	byte			0x05		STT (Tuning Table)
213b6cee71dSXin LI>>>4	byte			0x06		SGLB (Global Parameters)
214b6cee71dSXin LI>>>4	byte			0x07		SARRMAP (Performance Program Change Map)
215b6cee71dSXin LI>>>4	byte			0x08		SBPRMAP (Sound Program Change Map)
216b6cee71dSXin LI>>>4	byte			0x09		SBPRPAR (Sound Parameter)
217b6cee71dSXin LI>>>4	byte			0x0A		SARRPAR (Performance Parameter)
218b6cee71dSXin LI>>>4	byte			0x0B		SINSPAR (Instrument/External Parameter)
219b6cee71dSXin LI>>>4	byte			0x0F		SBULK (Bulk Switch on/off)
220b6cee71dSXin LI
221b6cee71dSXin LI# Japanese Group
222b6cee71dSXin LI>1	byte			0x40		Kawai
223b6cee71dSXin LI>>3	byte			0x20		K1
224b6cee71dSXin LI>>3	byte			0x22		K4
225b6cee71dSXin LI
226b6cee71dSXin LI>1	byte			0x41		Roland
227b6cee71dSXin LI>>3	byte			0x14		D-50
228b6cee71dSXin LI>>3	byte			0x2b		U-220
229b6cee71dSXin LI>>3	byte			0x02		TR-707
230b6cee71dSXin LI
231b6cee71dSXin LI>1	byte			0x42		Korg
232b6cee71dSXin LI>>3	byte			0x19		M1
233b6cee71dSXin LI
234b6cee71dSXin LI>1	byte			0x43		Yamaha
235b6cee71dSXin LI>1	byte			0x44		Casio
236b6cee71dSXin LI>1	byte			0x46		Kamiya
237b6cee71dSXin LI>1	byte			0x47		Akai
238a4d6d3b8SXin LI#>1	byte			0x48		Victor
239a4d6d3b8SXin LI>1	byte			0x48		Victor Company of Japan. Ltd.
240b6cee71dSXin LI>1	byte			0x49		Mesosha
241b6cee71dSXin LI>1	byte			0x4b		Fujitsu
242b6cee71dSXin LI>1	byte			0x4c		Sony
243b6cee71dSXin LI>1	byte			0x4e		Teac
244b6cee71dSXin LI>1	byte			0x50		Matsushita
245b6cee71dSXin LI>1	byte			0x51		Fostex
246a4d6d3b8SXin LI#>1	byte			0x52		Zoom
247a4d6d3b8SXin LI>1	byte			0x52		Zoom Corporation
248b6cee71dSXin LI>1	byte			0x54		Matsushita
249b6cee71dSXin LI>1	byte			0x57		Acoustic tech. lab.
25048c779cdSXin LI# https://www.midi.org/techspecs/manid.php
251b6cee71dSXin LI>1	belong&0xffffff00	0x00007400	Ta Horng
252b6cee71dSXin LI>1	belong&0xffffff00	0x00007500	e-Tek
253b6cee71dSXin LI>1	belong&0xffffff00	0x00007600	E-Voice
254b6cee71dSXin LI>1	belong&0xffffff00	0x00007700	Midisoft
255b6cee71dSXin LI>1	belong&0xffffff00	0x00007800	Q-Sound
256b6cee71dSXin LI>1	belong&0xffffff00	0x00007900	Westrex
257b6cee71dSXin LI>1	belong&0xffffff00	0x00007a00	Nvidia*
258b6cee71dSXin LI>1	belong&0xffffff00	0x00007b00	ESS
259b6cee71dSXin LI>1	belong&0xffffff00	0x00007c00	Mediatrix
260b6cee71dSXin LI>1	belong&0xffffff00	0x00007d00	Brooktree
261b6cee71dSXin LI>1	belong&0xffffff00	0x00007e00	Otari
262b6cee71dSXin LI>1	belong&0xffffff00	0x00007f00	Key Electronics
263b6cee71dSXin LI>1	belong&0xffffff00	0x00010000	Shure
264b6cee71dSXin LI>1	belong&0xffffff00	0x00010100	AuraSound
265b6cee71dSXin LI>1	belong&0xffffff00	0x00010200	Crystal
266b6cee71dSXin LI>1	belong&0xffffff00	0x00010300	Rockwell
267b6cee71dSXin LI>1	belong&0xffffff00	0x00010400	Silicon Graphics
268b6cee71dSXin LI>1	belong&0xffffff00	0x00010500	Midiman
269b6cee71dSXin LI>1	belong&0xffffff00	0x00010600	PreSonus
270b6cee71dSXin LI>1	belong&0xffffff00	0x00010800	Topaz
271b6cee71dSXin LI>1	belong&0xffffff00	0x00010900	Cast Lightning
272b6cee71dSXin LI>1	belong&0xffffff00	0x00010a00	Microsoft
273b6cee71dSXin LI>1	belong&0xffffff00	0x00010b00	Sonic Foundry
274b6cee71dSXin LI>1	belong&0xffffff00	0x00010c00	Line 6
275b6cee71dSXin LI>1	belong&0xffffff00	0x00010d00	Beatnik Inc.
276b6cee71dSXin LI>1	belong&0xffffff00	0x00010e00	Van Koerving
277b6cee71dSXin LI>1	belong&0xffffff00	0x00010f00	Altech Systems
278b6cee71dSXin LI>1	belong&0xffffff00	0x00011000	S & S Research
279b6cee71dSXin LI>1	belong&0xffffff00	0x00011100	VLSI Technology
280b6cee71dSXin LI>1	belong&0xffffff00	0x00011200	Chromatic
281b6cee71dSXin LI>1	belong&0xffffff00	0x00011300	Sapphire
282b6cee71dSXin LI>1	belong&0xffffff00	0x00011400	IDRC
283b6cee71dSXin LI>1	belong&0xffffff00	0x00011500	Justonic Tuning
284b6cee71dSXin LI>1	belong&0xffffff00	0x00011600	TorComp
285b6cee71dSXin LI>1	belong&0xffffff00	0x00011700	Newtek Inc.
286b6cee71dSXin LI>1	belong&0xffffff00	0x00011800	Sound Sculpture
287b6cee71dSXin LI>1	belong&0xffffff00	0x00011900	Walker Technical
288b6cee71dSXin LI>1	belong&0xffffff00	0x00011a00	Digital Harmony
289b6cee71dSXin LI>1	belong&0xffffff00	0x00011b00	InVision
290b6cee71dSXin LI>1	belong&0xffffff00	0x00011c00	T-Square
291b6cee71dSXin LI>1	belong&0xffffff00	0x00011d00	Nemesys
292b6cee71dSXin LI>1	belong&0xffffff00	0x00011e00	DBX
293b6cee71dSXin LI>1	belong&0xffffff00	0x00011f00	Syndyne
294b6cee71dSXin LI>1	belong&0xffffff00	0x00012000	Bitheadz
295b6cee71dSXin LI>1	belong&0xffffff00	0x00012100	Cakewalk
296b6cee71dSXin LI>1	belong&0xffffff00	0x00012200	Staccato
297b6cee71dSXin LI>1	belong&0xffffff00	0x00012300	National Semicon.
298b6cee71dSXin LI>1	belong&0xffffff00	0x00012400	Boom Theory
299b6cee71dSXin LI>1	belong&0xffffff00	0x00012500	Virtual DSP Corp
300b6cee71dSXin LI>1	belong&0xffffff00	0x00012600	Antares
301b6cee71dSXin LI>1	belong&0xffffff00	0x00012700	Angel Software
302b6cee71dSXin LI>1	belong&0xffffff00	0x00012800	St Louis Music
303b6cee71dSXin LI>1	belong&0xffffff00	0x00012900	Lyrrus dba G-VOX
304b6cee71dSXin LI>1	belong&0xffffff00	0x00012a00	Ashley Audio
305b6cee71dSXin LI>1	belong&0xffffff00	0x00012b00	Vari-Lite
306b6cee71dSXin LI>1	belong&0xffffff00	0x00012c00	Summit Audio
307b6cee71dSXin LI>1	belong&0xffffff00	0x00012d00	Aureal Semicon.
308b6cee71dSXin LI>1	belong&0xffffff00	0x00012e00	SeaSound
309b6cee71dSXin LI>1	belong&0xffffff00	0x00012f00	U.S. Robotics
310b6cee71dSXin LI>1	belong&0xffffff00	0x00013000	Aurisis
311b6cee71dSXin LI>1	belong&0xffffff00	0x00013100	Nearfield Multimedia
312b6cee71dSXin LI>1	belong&0xffffff00	0x00013200	FM7 Inc.
313b6cee71dSXin LI>1	belong&0xffffff00	0x00013300	Swivel Systems
314b6cee71dSXin LI>1	belong&0xffffff00	0x00013400	Hyperactive
315b6cee71dSXin LI>1	belong&0xffffff00	0x00013500	MidiLite
316b6cee71dSXin LI>1	belong&0xffffff00	0x00013600	Radical
317b6cee71dSXin LI>1	belong&0xffffff00	0x00013700	Roger Linn
318b6cee71dSXin LI>1	belong&0xffffff00	0x00013800	Helicon
319b6cee71dSXin LI>1	belong&0xffffff00	0x00013900	Event
320b6cee71dSXin LI>1	belong&0xffffff00	0x00013a00	Sonic Network
321b6cee71dSXin LI>1	belong&0xffffff00	0x00013b00	Realtime Music
322b6cee71dSXin LI>1	belong&0xffffff00	0x00013c00	Apogee Digital
323b6cee71dSXin LI
324b6cee71dSXin LI>1	belong&0xffffff00	0x00202b00	Medeli Electronics
325b6cee71dSXin LI>1	belong&0xffffff00	0x00202c00	Charlie Lab
326b6cee71dSXin LI>1	belong&0xffffff00	0x00202d00	Blue Chip Music
327b6cee71dSXin LI>1	belong&0xffffff00	0x00202e00	BEE OH Corp
328b6cee71dSXin LI>1	belong&0xffffff00	0x00202f00	LG Semicon America
329b6cee71dSXin LI>1	belong&0xffffff00	0x00203000	TESI
330b6cee71dSXin LI>1	belong&0xffffff00	0x00203100	EMAGIC
331b6cee71dSXin LI>1	belong&0xffffff00	0x00203200	Behringer
332b6cee71dSXin LI>1	belong&0xffffff00	0x00203300	Access Music
333b6cee71dSXin LI>1	belong&0xffffff00	0x00203400	Synoptic
334b6cee71dSXin LI>1	belong&0xffffff00	0x00203500	Hanmesoft Corp
335b6cee71dSXin LI>1	belong&0xffffff00	0x00203600	Terratec
336b6cee71dSXin LI>1	belong&0xffffff00	0x00203700	Proel SpA
337b6cee71dSXin LI>1	belong&0xffffff00	0x00203800	IBK MIDI
338b6cee71dSXin LI>1	belong&0xffffff00	0x00203900	IRCAM
339b6cee71dSXin LI>1	belong&0xffffff00	0x00203a00	Propellerhead Software
340b6cee71dSXin LI>1	belong&0xffffff00	0x00203b00	Red Sound Systems
341b6cee71dSXin LI>1	belong&0xffffff00	0x00203c00	Electron ESI AB
342b6cee71dSXin LI>1	belong&0xffffff00	0x00203d00	Sintefex Audio
343b6cee71dSXin LI>1	belong&0xffffff00	0x00203e00	Music and More
344b6cee71dSXin LI>1	belong&0xffffff00	0x00203f00	Amsaro
345b6cee71dSXin LI>1	belong&0xffffff00	0x00204000	CDS Advanced Technology
346b6cee71dSXin LI>1	belong&0xffffff00	0x00204100	Touched by Sound
347b6cee71dSXin LI>1	belong&0xffffff00	0x00204200	DSP Arts
348b6cee71dSXin LI>1	belong&0xffffff00	0x00204300	Phil Rees Music
349b6cee71dSXin LI>1	belong&0xffffff00	0x00204400	Stamer Musikanlagen GmbH
350b6cee71dSXin LI>1	belong&0xffffff00	0x00204500	Soundart
351b6cee71dSXin LI>1	belong&0xffffff00	0x00204600	C-Mexx Software
352b6cee71dSXin LI>1	belong&0xffffff00	0x00204700	Klavis Tech.
353b6cee71dSXin LI>1	belong&0xffffff00	0x00204800	Noteheads AB
354b6cee71dSXin LI
355a4d6d3b8SXin LI# Update:	Joerg Jenderek; January 2022
356a4d6d3b8SXin LI>1	byte			0x00		ID EXTENSIONS
357a4d6d3b8SXin LI>1	byte			0x13		Digidesign Inc.
358a4d6d3b8SXin LI>1	byte			0x1e		Key Concepts
359a4d6d3b8SXin LI>1	byte			0x20		Passac
360a4d6d3b8SXin LI>1	byte			0x23		Stepp
361a4d6d3b8SXin LI>1	byte			0x2d		Neve
362a4d6d3b8SXin LI>1	byte			0x2e		Soundtracs Ltd.
363a4d6d3b8SXin LI>1	byte			0x32		Drawmer
364a4d6d3b8SXin LI>1	byte			0x34		Audio Architecture
365a4d6d3b8SXin LI>1	byte			0x35		Generalmusic Corp SpA
366a4d6d3b8SXin LI>1	byte			0x36		Cheetah Marketing
367a4d6d3b8SXin LI>1	byte			0x37		C.T.M.
368a4d6d3b8SXin LI>1	byte			0x38		Simmons UK
369a4d6d3b8SXin LI>1	byte			0x3a		Steinberg
370a4d6d3b8SXin LI>1	byte			0x3b		Wersi GmbH
371a4d6d3b8SXin LI>1	byte			0x3c		AVAB Niethammer AB
372a4d6d3b8SXin LI>1	byte			0x3d		Digigram
373a4d6d3b8SXin LI>1	byte			0x3f		Quasimidi
374a4d6d3b8SXin LI#
375a4d6d3b8SXin LI>1	byte			0x40		Kawai Musical Instruments MFG. CO. Ltd
376a4d6d3b8SXin LI#>1	byte			0x45		foo
377a4d6d3b8SXin LI#>1	byte			0x4a		foo
378a4d6d3b8SXin LI#>1	byte			0x4d		foo
379a4d6d3b8SXin LI#>1	byte			0x4f		foo
380a4d6d3b8SXin LI#>1	byte			0x53		foo
381a4d6d3b8SXin LI>1	byte			0x55		Suzuki Musical Instruments MFG. Co. Ltd.
382a4d6d3b8SXin LI>1	byte			0x56		Fuji Sound Corporation Ltd.
383a4d6d3b8SXin LI#>1	byte			0x58		foo
384a4d6d3b8SXin LI>1	byte			0x59		Faith. Inc.
385a4d6d3b8SXin LI>1	byte			0x5a		Internet Corporation
386a4d6d3b8SXin LI#>1	byte			0x5b		foo
387a4d6d3b8SXin LI>1	byte			0x5c		Seekers Co. Ltd.
388a4d6d3b8SXin LI#>1	byte			0x5d		foo
389a4d6d3b8SXin LI#>1	byte			0x5e		foo
390a4d6d3b8SXin LI>1	byte			0x5f		SD Card Association
391a4d6d3b8SXin LI# Reserved for other uses for 60H to 7FH
392a4d6d3b8SXin LI# URL:		https://www.philscomputerlab.com/roland-midi-emulator-project-20.html
393a4d6d3b8SXin LI# Reference:	http://mark0.net/download/triddefs_xml.7z/defs/s/syx--midiemu.trid.xml
394a4d6d3b8SXin LI# Note:         called by TrID "MIDI Emulator Project SysEx preset command"
395a4d6d3b8SXin LI>1	byte			0x66		MIDI Emulator
396a4d6d3b8SXin LI# https://electronicmusic.fandom.com/wiki/List_of_MIDI_Manufacturer_IDs
397a4d6d3b8SXin LI# Educational, prototyping, test, private use and experimentation
398a4d6d3b8SXin LI>1	byte			0x7D		PROTOTYPING
399a4d6d3b8SXin LI# universal non-real-time (sample dump, tuning table, etc.)
400a4d6d3b8SXin LI>1	byte			0x7E		UNIVERSAL
401a4d6d3b8SXin LI# universal real time (MIDI time code, MIDI Machine control, etc.)
402a4d6d3b8SXin LI>1	byte			0x7F		universal real time
403a4d6d3b8SXin LI# display information about End Of eXclusive byte (EOX=F7)
404a4d6d3b8SXin LI#>2	ubyte			0xF7		\b, at 2 EOX
405a4d6d3b8SXin LI#>3	ubyte			0xF7		\b, at 3 EOX
406a4d6d3b8SXin LI# https://tttapa.github.io/Control-Surface-doc/new-input/Doxygen/d2/d93/SysEx-Send-Receive_8ino-example.html
407a4d6d3b8SXin LI>4	ubyte			0xF7		\b, at 4 EOX
408a4d6d3b8SXin LI# http://www.1manband.nl/tutorials2/sysex.htm
409a4d6d3b8SXin LI>5	ubyte			0xF7		\b, at 5 EOX
410a4d6d3b8SXin LI# http://www.somascape.org/midi/tech/mfile.html#sysex
411a4d6d3b8SXin LI>6	ubyte			0xF7		\b, at 6 EOX
412a4d6d3b8SXin LI#
413a4d6d3b8SXin LI>7	ubyte			0xF7		\b, at 7 EOX
414a4d6d3b8SXin LI# https://webmidijs.org/forum/discussion/34/how-to-send-or-receive-system-exclusive-messages
415a4d6d3b8SXin LI>8	ubyte			0xF7		\b, at 8 EOX
416a4d6d3b8SXin LI#
417a4d6d3b8SXin LI>9	ubyte			0xF7		\b, at 9 EOX
418a4d6d3b8SXin LI# https://www.chd-el.cz/wp-content/uploads/845010_syxcom.pdf
419a4d6d3b8SXin LI>10	ubyte			0xF7		\b, at 10 EOX
420a4d6d3b8SXin LI# https://stackoverflow.com/questions/52906076/handling-midi-the-input-of-multiple-system-exclusive-messages-in-vb
421a4d6d3b8SXin LI>11	ubyte			0xF7		\b, at 11 EOX
422a4d6d3b8SXin LI# https://www.2writers.com/eddie/TutSysEx.htm
423a4d6d3b8SXin LI>12	ubyte			0xF7		\b, at 12 EOX
424a4d6d3b8SXin LI>13	ubyte			0xF7		\b, at 13 EOX
425a4d6d3b8SXin LI# http://www.chromakinetics.com/handsonic/rolSysEx.htm
426a4d6d3b8SXin LI>14	ubyte			0xF7		\b, at 14 EOX
427a4d6d3b8SXin LI#>15	ubyte			0xF7		\b, at 15 EOX
428a4d6d3b8SXin LI
429b6cee71dSXin LI0	string			T707		Roland TR-707 Data
430