sysex 16 KB

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