sysex 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. #------------------------------------------------------------------------
  2. # $File: sysex,v 1.9 2017/03/17 21:35:28 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. # http://en.wikipedia.org/wiki/MIDI
  8. 0 ubeshort&0xFF80 0xF000 SysEx File -
  9. # North American Group
  10. >1 byte 0x01 Sequential
  11. >1 byte 0x02 IDP
  12. >1 byte 0x03 OctavePlateau
  13. >1 byte 0x04 Moog
  14. >1 byte 0x05 Passport
  15. >1 byte 0x06 Lexicon
  16. >1 byte 0x07 Kurzweil/Future Retro
  17. >>3 byte 0x77 777
  18. >>4 byte 0x00 Bank
  19. >>4 byte 0x01 Song
  20. >>5 byte 0x0f 16
  21. >>5 byte 0x0e 15
  22. >>5 byte 0x0d 14
  23. >>5 byte 0x0c 13
  24. >>5 byte 0x0b 12
  25. >>5 byte 0x0a 11
  26. >>5 byte 0x09 10
  27. >>5 byte 0x08 9
  28. >>5 byte 0x07 8
  29. >>5 byte 0x06 7
  30. >>5 byte 0x05 6
  31. >>5 byte 0x04 5
  32. >>5 byte 0x03 4
  33. >>5 byte 0x02 3
  34. >>5 byte 0x01 2
  35. >>5 byte 0x00 1
  36. >>5 byte 0x10 (ALL)
  37. >>2 byte x \b, Channel %d
  38. >1 byte 0x08 Fender
  39. >1 byte 0x09 Gulbransen
  40. >1 byte 0x0a AKG
  41. >1 byte 0x0b Voyce
  42. >1 byte 0x0c Waveframe
  43. >1 byte 0x0d ADA
  44. >1 byte 0x0e Garfield
  45. >1 byte 0x0f Ensoniq
  46. >1 byte 0x10 Oberheim
  47. >>2 byte 0x06 Matrix 6 series
  48. >>3 byte 0x0A Dump (All)
  49. >>3 byte 0x01 Dump (Bank)
  50. >>4 belong 0x0002040E Matrix 1000
  51. >>>11 byte <2 User bank %d
  52. >>>11 byte >1 Preset bank %d
  53. >1 byte 0x11 Apple
  54. >1 byte 0x12 GreyMatter
  55. >1 byte 0x14 PalmTree
  56. >1 byte 0x15 JLCooper
  57. >1 byte 0x16 Lowrey
  58. >1 byte 0x17 AdamsSmith
  59. >1 byte 0x18 E-mu
  60. >1 byte 0x19 Harmony
  61. >1 byte 0x1a ART
  62. >1 byte 0x1b Baldwin
  63. >1 byte 0x1c Eventide
  64. >1 byte 0x1d Inventronics
  65. >1 byte 0x1f Clarity
  66. # European Group
  67. >1 byte 0x21 SIEL
  68. >1 byte 0x22 Synthaxe
  69. >1 byte 0x24 Hohner
  70. >1 byte 0x25 Twister
  71. >1 byte 0x26 Solton
  72. >1 byte 0x27 Jellinghaus
  73. >1 byte 0x28 Southworth
  74. >1 byte 0x29 PPG
  75. >1 byte 0x2a JEN
  76. >1 byte 0x2b SSL
  77. >1 byte 0x2c AudioVertrieb
  78. >1 byte 0x2f ELKA
  79. >>3 byte 0x09 EK-44
  80. >1 byte 0x30 Dynacord
  81. >1 byte 0x31 Jomox
  82. >1 byte 0x33 Clavia
  83. >1 byte 0x39 Soundcraft
  84. # Some Waldorf info from http://Stromeko.Synth.net/Downloads#WaldorfDocs
  85. >1 byte 0x3e Waldorf
  86. >>2 byte 0x00 microWave
  87. >>2 byte 0x0E microwave2 / XT
  88. >>2 byte 0x0F Q / Q+
  89. >>3 byte =0 (default id)
  90. >>3 byte >0 (
  91. >>>3 byte <0x7F \bdevice %d)
  92. >>>3 byte =0x7F \bbroadcast id)
  93. >>3 byte 0x7f Microwave I
  94. >>>4 byte 0x00 SNDR (Sound Request)
  95. >>>4 byte 0x10 SNDD (Sound Dump)
  96. >>>4 byte 0x20 SNDP (Sound Parameter Change)
  97. >>>4 byte 0x30 SNDQ (Sound Parameter Inquiry)
  98. >>>4 byte 0x70 BOOT (Sound Reserved)
  99. >>>4 byte 0x01 MULR (Multi Request)
  100. >>>4 byte 0x11 MULD (Multi Dump)
  101. >>>4 byte 0x21 MULP (Multi Parameter Change)
  102. >>>4 byte 0x31 MULQ (Multi Parameter Inquiry)
  103. >>>4 byte 0x71 OS (Multi Reserved)
  104. >>>4 byte 0x02 DRMR (Drum Map Request)
  105. >>>4 byte 0x12 DRMD (Drum Map Dump)
  106. >>>4 byte 0x22 DRMP (Drum Map Parameter Change)
  107. >>>4 byte 0x32 DRMQ (Drum Map Parameter Inquiry)
  108. >>>4 byte 0x72 BIN (Drum Map Reserved)
  109. >>>4 byte 0x03 PATR (Sequencer Pattern Request)
  110. >>>4 byte 0x13 PATD (Sequencer Pattern Dump)
  111. >>>4 byte 0x23 PATP (Sequencer Pattern Parameter Change)
  112. >>>4 byte 0x33 PATQ (Sequencer Pattern Parameter Inquiry)
  113. >>>4 byte 0x73 AFM (Sequencer Pattern Reserved)
  114. >>>4 byte 0x04 GLBR (Global Parameter Request)
  115. >>>4 byte 0x14 GLBD (Global Parameter Dump)
  116. >>>4 byte 0x24 GLBP (Global Parameter Parameter Change)
  117. >>>4 byte 0x34 GLBQ (Global Parameter Parameter Inquiry)
  118. >>>4 byte 0x07 MODR (Mode Parameter Request)
  119. >>>4 byte 0x17 MODD (Mode Parameter Dump)
  120. >>>4 byte 0x27 MODP (Mode Parameter Parameter Change)
  121. >>>4 byte 0x37 MODQ (Mode Parameter Parameter Inquiry)
  122. >>2 byte 0x10 microQ
  123. >>>4 byte 0x00 SNDR (Sound Request)
  124. >>>4 byte 0x10 SNDD (Sound Dump)
  125. >>>4 byte 0x20 SNDP (Sound Parameter Change)
  126. >>>4 byte 0x30 SNDQ (Sound Parameter Inquiry)
  127. >>>4 byte 0x70 (Sound Reserved)
  128. >>>4 byte 0x01 MULR (Multi Request)
  129. >>>4 byte 0x11 MULD (Multi Dump)
  130. >>>4 byte 0x21 MULP (Multi Parameter Change)
  131. >>>4 byte 0x31 MULQ (Multi Parameter Inquiry)
  132. >>>4 byte 0x71 OS (Multi Reserved)
  133. >>>4 byte 0x02 DRMR (Drum Map Request)
  134. >>>4 byte 0x12 DRMD (Drum Map Dump)
  135. >>>4 byte 0x22 DRMP (Drum Map Parameter Change)
  136. >>>4 byte 0x32 DRMQ (Drum Map Parameter Inquiry)
  137. >>>4 byte 0x72 BIN (Drum Map Reserved)
  138. >>>4 byte 0x04 GLBR (Global Parameter Request)
  139. >>>4 byte 0x14 GLBD (Global Parameter Dump)
  140. >>>4 byte 0x24 GLBP (Global Parameter Parameter Change)
  141. >>>4 byte 0x34 GLBQ (Global Parameter Parameter Inquiry)
  142. >>2 byte 0x11 rackAttack
  143. >>>4 byte 0x00 SNDR (Sound Parameter Request)
  144. >>>4 byte 0x10 SNDD (Sound Parameter Dump)
  145. >>>4 byte 0x20 SNDP (Sound Parameter Parameter Change)
  146. >>>4 byte 0x30 SNDQ (Sound Parameter Parameter Inquiry)
  147. >>>4 byte 0x01 PRGR (Program Parameter Request)
  148. >>>4 byte 0x11 PRGD (Program Parameter Dump)
  149. >>>4 byte 0x21 PRGP (Program Parameter Parameter Change)
  150. >>>4 byte 0x31 PRGQ (Program Parameter Parameter Inquiry)
  151. >>>4 byte 0x71 OS (Program Parameter Reserved)
  152. >>>4 byte 0x03 PATR (Pattern Parameter Request)
  153. >>>4 byte 0x13 PATD (Pattern Parameter Dump)
  154. >>>4 byte 0x23 PATP (Pattern Parameter Parameter Change)
  155. >>>4 byte 0x33 PATQ (Pattern Parameter Parameter Inquiry)
  156. >>>4 byte 0x04 GLBR (Global Parameter Request)
  157. >>>4 byte 0x14 GLBD (Global Parameter Dump)
  158. >>>4 byte 0x24 GLBP (Global Parameter Parameter Change)
  159. >>>4 byte 0x34 GLBQ (Global Parameter Parameter Inquiry)
  160. >>>4 byte 0x05 EFXR (FX Parameter Request)
  161. >>>4 byte 0x15 EFXD (FX Parameter Dump)
  162. >>>4 byte 0x25 EFXP (FX Parameter Parameter Change)
  163. >>>4 byte 0x35 EFXQ (FX Parameter Parameter Inquiry)
  164. >>>4 byte 0x07 MODR (Mode Command Request)
  165. >>>4 byte 0x17 MODD (Mode Command Dump)
  166. >>>4 byte 0x27 MODP (Mode Command Parameter Change)
  167. >>>4 byte 0x37 MODQ (Mode Command Parameter Inquiry)
  168. >>2 byte 0x03 Wave
  169. >>>4 byte 0x00 SBPR (Soundprogram)
  170. >>>4 byte 0x01 SAPR (Performance)
  171. >>>4 byte 0x02 SWAVE (Wave)
  172. >>>4 byte 0x03 SWTBL (Wave control table)
  173. >>>4 byte 0x04 SVT (Velocity Curve)
  174. >>>4 byte 0x05 STT (Tuning Table)
  175. >>>4 byte 0x06 SGLB (Global Parameters)
  176. >>>4 byte 0x07 SARRMAP (Performance Program Change Map)
  177. >>>4 byte 0x08 SBPRMAP (Sound Program Change Map)
  178. >>>4 byte 0x09 SBPRPAR (Sound Parameter)
  179. >>>4 byte 0x0A SARRPAR (Performance Parameter)
  180. >>>4 byte 0x0B SINSPAR (Instrument/External Parameter)
  181. >>>4 byte 0x0F SBULK (Bulk Switch on/off)
  182. # Japanese Group
  183. >1 byte 0x40 Kawai
  184. >>3 byte 0x20 K1
  185. >>3 byte 0x22 K4
  186. >1 byte 0x41 Roland
  187. >>3 byte 0x14 D-50
  188. >>3 byte 0x2b U-220
  189. >>3 byte 0x02 TR-707
  190. >1 byte 0x42 Korg
  191. >>3 byte 0x19 M1
  192. >1 byte 0x43 Yamaha
  193. >1 byte 0x44 Casio
  194. >1 byte 0x46 Kamiya
  195. >1 byte 0x47 Akai
  196. >1 byte 0x48 Victor
  197. >1 byte 0x49 Mesosha
  198. >1 byte 0x4b Fujitsu
  199. >1 byte 0x4c Sony
  200. >1 byte 0x4e Teac
  201. >1 byte 0x50 Matsushita
  202. >1 byte 0x51 Fostex
  203. >1 byte 0x52 Zoom
  204. >1 byte 0x54 Matsushita
  205. >1 byte 0x57 Acoustic tech. lab.
  206. # http://www.midi.org/techspecs/manid.php
  207. >1 belong&0xffffff00 0x00007400 Ta Horng
  208. >1 belong&0xffffff00 0x00007500 e-Tek
  209. >1 belong&0xffffff00 0x00007600 E-Voice
  210. >1 belong&0xffffff00 0x00007700 Midisoft
  211. >1 belong&0xffffff00 0x00007800 Q-Sound
  212. >1 belong&0xffffff00 0x00007900 Westrex
  213. >1 belong&0xffffff00 0x00007a00 Nvidia*
  214. >1 belong&0xffffff00 0x00007b00 ESS
  215. >1 belong&0xffffff00 0x00007c00 Mediatrix
  216. >1 belong&0xffffff00 0x00007d00 Brooktree
  217. >1 belong&0xffffff00 0x00007e00 Otari
  218. >1 belong&0xffffff00 0x00007f00 Key Electronics
  219. >1 belong&0xffffff00 0x00010000 Shure
  220. >1 belong&0xffffff00 0x00010100 AuraSound
  221. >1 belong&0xffffff00 0x00010200 Crystal
  222. >1 belong&0xffffff00 0x00010300 Rockwell
  223. >1 belong&0xffffff00 0x00010400 Silicon Graphics
  224. >1 belong&0xffffff00 0x00010500 Midiman
  225. >1 belong&0xffffff00 0x00010600 PreSonus
  226. >1 belong&0xffffff00 0x00010800 Topaz
  227. >1 belong&0xffffff00 0x00010900 Cast Lightning
  228. >1 belong&0xffffff00 0x00010a00 Microsoft
  229. >1 belong&0xffffff00 0x00010b00 Sonic Foundry
  230. >1 belong&0xffffff00 0x00010c00 Line 6
  231. >1 belong&0xffffff00 0x00010d00 Beatnik Inc.
  232. >1 belong&0xffffff00 0x00010e00 Van Koerving
  233. >1 belong&0xffffff00 0x00010f00 Altech Systems
  234. >1 belong&0xffffff00 0x00011000 S & S Research
  235. >1 belong&0xffffff00 0x00011100 VLSI Technology
  236. >1 belong&0xffffff00 0x00011200 Chromatic
  237. >1 belong&0xffffff00 0x00011300 Sapphire
  238. >1 belong&0xffffff00 0x00011400 IDRC
  239. >1 belong&0xffffff00 0x00011500 Justonic Tuning
  240. >1 belong&0xffffff00 0x00011600 TorComp
  241. >1 belong&0xffffff00 0x00011700 Newtek Inc.
  242. >1 belong&0xffffff00 0x00011800 Sound Sculpture
  243. >1 belong&0xffffff00 0x00011900 Walker Technical
  244. >1 belong&0xffffff00 0x00011a00 Digital Harmony
  245. >1 belong&0xffffff00 0x00011b00 InVision
  246. >1 belong&0xffffff00 0x00011c00 T-Square
  247. >1 belong&0xffffff00 0x00011d00 Nemesys
  248. >1 belong&0xffffff00 0x00011e00 DBX
  249. >1 belong&0xffffff00 0x00011f00 Syndyne
  250. >1 belong&0xffffff00 0x00012000 Bitheadz
  251. >1 belong&0xffffff00 0x00012100 Cakewalk
  252. >1 belong&0xffffff00 0x00012200 Staccato
  253. >1 belong&0xffffff00 0x00012300 National Semicon.
  254. >1 belong&0xffffff00 0x00012400 Boom Theory
  255. >1 belong&0xffffff00 0x00012500 Virtual DSP Corp
  256. >1 belong&0xffffff00 0x00012600 Antares
  257. >1 belong&0xffffff00 0x00012700 Angel Software
  258. >1 belong&0xffffff00 0x00012800 St Louis Music
  259. >1 belong&0xffffff00 0x00012900 Lyrrus dba G-VOX
  260. >1 belong&0xffffff00 0x00012a00 Ashley Audio
  261. >1 belong&0xffffff00 0x00012b00 Vari-Lite
  262. >1 belong&0xffffff00 0x00012c00 Summit Audio
  263. >1 belong&0xffffff00 0x00012d00 Aureal Semicon.
  264. >1 belong&0xffffff00 0x00012e00 SeaSound
  265. >1 belong&0xffffff00 0x00012f00 U.S. Robotics
  266. >1 belong&0xffffff00 0x00013000 Aurisis
  267. >1 belong&0xffffff00 0x00013100 Nearfield Multimedia
  268. >1 belong&0xffffff00 0x00013200 FM7 Inc.
  269. >1 belong&0xffffff00 0x00013300 Swivel Systems
  270. >1 belong&0xffffff00 0x00013400 Hyperactive
  271. >1 belong&0xffffff00 0x00013500 MidiLite
  272. >1 belong&0xffffff00 0x00013600 Radical
  273. >1 belong&0xffffff00 0x00013700 Roger Linn
  274. >1 belong&0xffffff00 0x00013800 Helicon
  275. >1 belong&0xffffff00 0x00013900 Event
  276. >1 belong&0xffffff00 0x00013a00 Sonic Network
  277. >1 belong&0xffffff00 0x00013b00 Realtime Music
  278. >1 belong&0xffffff00 0x00013c00 Apogee Digital
  279. >1 belong&0xffffff00 0x00202b00 Medeli Electronics
  280. >1 belong&0xffffff00 0x00202c00 Charlie Lab
  281. >1 belong&0xffffff00 0x00202d00 Blue Chip Music
  282. >1 belong&0xffffff00 0x00202e00 BEE OH Corp
  283. >1 belong&0xffffff00 0x00202f00 LG Semicon America
  284. >1 belong&0xffffff00 0x00203000 TESI
  285. >1 belong&0xffffff00 0x00203100 EMAGIC
  286. >1 belong&0xffffff00 0x00203200 Behringer
  287. >1 belong&0xffffff00 0x00203300 Access Music
  288. >1 belong&0xffffff00 0x00203400 Synoptic
  289. >1 belong&0xffffff00 0x00203500 Hanmesoft Corp
  290. >1 belong&0xffffff00 0x00203600 Terratec
  291. >1 belong&0xffffff00 0x00203700 Proel SpA
  292. >1 belong&0xffffff00 0x00203800 IBK MIDI
  293. >1 belong&0xffffff00 0x00203900 IRCAM
  294. >1 belong&0xffffff00 0x00203a00 Propellerhead Software
  295. >1 belong&0xffffff00 0x00203b00 Red Sound Systems
  296. >1 belong&0xffffff00 0x00203c00 Electron ESI AB
  297. >1 belong&0xffffff00 0x00203d00 Sintefex Audio
  298. >1 belong&0xffffff00 0x00203e00 Music and More
  299. >1 belong&0xffffff00 0x00203f00 Amsaro
  300. >1 belong&0xffffff00 0x00204000 CDS Advanced Technology
  301. >1 belong&0xffffff00 0x00204100 Touched by Sound
  302. >1 belong&0xffffff00 0x00204200 DSP Arts
  303. >1 belong&0xffffff00 0x00204300 Phil Rees Music
  304. >1 belong&0xffffff00 0x00204400 Stamer Musikanlagen GmbH
  305. >1 belong&0xffffff00 0x00204500 Soundart
  306. >1 belong&0xffffff00 0x00204600 C-Mexx Software
  307. >1 belong&0xffffff00 0x00204700 Klavis Tech.
  308. >1 belong&0xffffff00 0x00204800 Noteheads AB
  309. 0 string T707 Roland TR-707 Data