1226048Sobrien 280588Sobrien#------------------------------------------------------------------------ 3267843Sdelphij# $File: sysex,v 1.8 2014/06/03 19:17:27 christos Exp $ 480588Sobrien# sysex: file(1) magic for MIDI sysex files 580588Sobrien# 6267843Sdelphij# GRR: original 1 byte test at offset was too general as it catches also many FATs of DOS filesystems 7267843Sdelphij# where real SYStem EXclusive messages at offset 1 are limited to seven bits 8267843Sdelphij# http://en.wikipedia.org/wiki/MIDI 9267843Sdelphij0 ubeshort&0xFF80 0xF000 SysEx File - 1080588Sobrien 11133359Sobrien# North American Group 12133359Sobrien>1 byte 0x01 Sequential 13133359Sobrien>1 byte 0x02 IDP 14133359Sobrien>1 byte 0x03 OctavePlateau 15133359Sobrien>1 byte 0x04 Moog 16133359Sobrien>1 byte 0x05 Passport 17133359Sobrien>1 byte 0x06 Lexicon 18169942Sobrien>1 byte 0x07 Kurzweil/Future Retro 19169942Sobrien>>3 byte 0x77 777 20169942Sobrien>>4 byte 0x00 Bank 21169942Sobrien>>4 byte 0x01 Song 22169942Sobrien>>5 byte 0x0f 16 23169942Sobrien>>5 byte 0x0e 15 24169942Sobrien>>5 byte 0x0d 14 25169942Sobrien>>5 byte 0x0c 13 26169942Sobrien>>5 byte 0x0b 12 27169942Sobrien>>5 byte 0x0a 11 28169942Sobrien>>5 byte 0x09 10 29169942Sobrien>>5 byte 0x08 9 30169942Sobrien>>5 byte 0x07 8 31169942Sobrien>>5 byte 0x06 7 32169942Sobrien>>5 byte 0x05 6 33169942Sobrien>>5 byte 0x04 5 34169942Sobrien>>5 byte 0x03 4 35169942Sobrien>>5 byte 0x02 3 36169942Sobrien>>5 byte 0x01 2 37169942Sobrien>>5 byte 0x00 1 38169942Sobrien>>5 byte 0x10 (ALL) 39169942Sobrien>>2 byte x \b, Channel %d 40133359Sobrien>1 byte 0x08 Fender 41133359Sobrien>1 byte 0x09 Gulbransen 42133359Sobrien>1 byte 0x0a AKG 43133359Sobrien>1 byte 0x0b Voyce 44133359Sobrien>1 byte 0x0c Waveframe 45133359Sobrien>1 byte 0x0d ADA 46133359Sobrien>1 byte 0x0e Garfield 47133359Sobrien>1 byte 0x0f Ensoniq 48133359Sobrien>1 byte 0x10 Oberheim 49169942Sobrien>>2 byte 0x06 Matrix 6 series 50169942Sobrien>>3 byte 0x0A Dump (All) 51169942Sobrien>>3 byte 0x01 Dump (Bank) 52169942Sobrien>>4 belong 0x0002040E Matrix 1000 53169942Sobrien>>>11 byte <2 User bank %d 54169942Sobrien>>>11 byte >1 Preset bank %d 55133359Sobrien>1 byte 0x11 Apple 56133359Sobrien>1 byte 0x12 GreyMatter 57133359Sobrien>1 byte 0x14 PalmTree 58133359Sobrien>1 byte 0x15 JLCooper 59133359Sobrien>1 byte 0x16 Lowrey 60133359Sobrien>1 byte 0x17 AdamsSmith 61133359Sobrien>1 byte 0x18 E-mu 62133359Sobrien>1 byte 0x19 Harmony 63133359Sobrien>1 byte 0x1a ART 64133359Sobrien>1 byte 0x1b Baldwin 65133359Sobrien>1 byte 0x1c Eventide 66133359Sobrien>1 byte 0x1d Inventronics 67133359Sobrien>1 byte 0x1f Clarity 68133359Sobrien 69133359Sobrien# European Group 70133359Sobrien>1 byte 0x21 SIEL 71133359Sobrien>1 byte 0x22 Synthaxe 72133359Sobrien>1 byte 0x24 Hohner 73133359Sobrien>1 byte 0x25 Twister 74133359Sobrien>1 byte 0x26 Solton 75133359Sobrien>1 byte 0x27 Jellinghaus 76133359Sobrien>1 byte 0x28 Southworth 77133359Sobrien>1 byte 0x29 PPG 78133359Sobrien>1 byte 0x2a JEN 79133359Sobrien>1 byte 0x2b SSL 80133359Sobrien>1 byte 0x2c AudioVertrieb 81133359Sobrien 8280588Sobrien>1 byte 0x2f ELKA 8380588Sobrien>>3 byte 0x09 EK-44 8480588Sobrien 85133359Sobrien>1 byte 0x30 Dynacord 86169942Sobrien>1 byte 0x31 Jomox 87133359Sobrien>1 byte 0x33 Clavia 88133359Sobrien>1 byte 0x39 Soundcraft 89169942Sobrien# Some Waldorf info from http://Stromeko.Synth.net/Downloads#WaldorfDocs 9080588Sobrien>1 byte 0x3e Waldorf 91169942Sobrien>>2 byte 0x00 microWave 92169942Sobrien>>2 byte 0x0E microwave2 / XT 93169942Sobrien>>2 byte 0x0F Q / Q+ 94169942Sobrien>>3 byte =0 (default id) 95169942Sobrien>>3 byte >0 ( 96169942Sobrien>>>3 byte <0x7F \bdevice %d) 97169942Sobrien>>>3 byte =0x7F \bbroadcast id) 9880588Sobrien>>3 byte 0x7f Microwave I 99169942Sobrien>>>4 byte 0x00 SNDR (Sound Request) 100169942Sobrien>>>4 byte 0x10 SNDD (Sound Dump) 101169942Sobrien>>>4 byte 0x20 SNDP (Sound Parameter Change) 102169942Sobrien>>>4 byte 0x30 SNDQ (Sound Parameter Inquiry) 103169942Sobrien>>>4 byte 0x70 BOOT (Sound Reserved) 104169942Sobrien>>>4 byte 0x01 MULR (Multi Request) 105169942Sobrien>>>4 byte 0x11 MULD (Multi Dump) 106169942Sobrien>>>4 byte 0x21 MULP (Multi Parameter Change) 107169942Sobrien>>>4 byte 0x31 MULQ (Multi Parameter Inquiry) 108169942Sobrien>>>4 byte 0x71 OS (Multi Reserved) 109169942Sobrien>>>4 byte 0x02 DRMR (Drum Map Request) 110169942Sobrien>>>4 byte 0x12 DRMD (Drum Map Dump) 111169942Sobrien>>>4 byte 0x22 DRMP (Drum Map Parameter Change) 112169942Sobrien>>>4 byte 0x32 DRMQ (Drum Map Parameter Inquiry) 113169942Sobrien>>>4 byte 0x72 BIN (Drum Map Reserved) 114169942Sobrien>>>4 byte 0x03 PATR (Sequencer Pattern Request) 115169942Sobrien>>>4 byte 0x13 PATD (Sequencer Pattern Dump) 116169942Sobrien>>>4 byte 0x23 PATP (Sequencer Pattern Parameter Change) 117169942Sobrien>>>4 byte 0x33 PATQ (Sequencer Pattern Parameter Inquiry) 118169942Sobrien>>>4 byte 0x73 AFM (Sequencer Pattern Reserved) 119169942Sobrien>>>4 byte 0x04 GLBR (Global Parameter Request) 120169942Sobrien>>>4 byte 0x14 GLBD (Global Parameter Dump) 121169942Sobrien>>>4 byte 0x24 GLBP (Global Parameter Parameter Change) 122169942Sobrien>>>4 byte 0x34 GLBQ (Global Parameter Parameter Inquiry) 123169942Sobrien>>>4 byte 0x07 MODR (Mode Parameter Request) 124169942Sobrien>>>4 byte 0x17 MODD (Mode Parameter Dump) 125169942Sobrien>>>4 byte 0x27 MODP (Mode Parameter Parameter Change) 126169942Sobrien>>>4 byte 0x37 MODQ (Mode Parameter Parameter Inquiry) 127169942Sobrien>>2 byte 0x10 microQ 128169942Sobrien>>>4 byte 0x00 SNDR (Sound Request) 129169942Sobrien>>>4 byte 0x10 SNDD (Sound Dump) 130169942Sobrien>>>4 byte 0x20 SNDP (Sound Parameter Change) 131169942Sobrien>>>4 byte 0x30 SNDQ (Sound Parameter Inquiry) 132169942Sobrien>>>4 byte 0x70 (Sound Reserved) 133169942Sobrien>>>4 byte 0x01 MULR (Multi Request) 134169942Sobrien>>>4 byte 0x11 MULD (Multi Dump) 135169942Sobrien>>>4 byte 0x21 MULP (Multi Parameter Change) 136169942Sobrien>>>4 byte 0x31 MULQ (Multi Parameter Inquiry) 137169942Sobrien>>>4 byte 0x71 OS (Multi Reserved) 138169942Sobrien>>>4 byte 0x02 DRMR (Drum Map Request) 139169942Sobrien>>>4 byte 0x12 DRMD (Drum Map Dump) 140169942Sobrien>>>4 byte 0x22 DRMP (Drum Map Parameter Change) 141169942Sobrien>>>4 byte 0x32 DRMQ (Drum Map Parameter Inquiry) 142169942Sobrien>>>4 byte 0x72 BIN (Drum Map Reserved) 143169942Sobrien>>>4 byte 0x04 GLBR (Global Parameter Request) 144169942Sobrien>>>4 byte 0x14 GLBD (Global Parameter Dump) 145169942Sobrien>>>4 byte 0x24 GLBP (Global Parameter Parameter Change) 146169942Sobrien>>>4 byte 0x34 GLBQ (Global Parameter Parameter Inquiry) 147169942Sobrien>>2 byte 0x11 rackAttack 148169942Sobrien>>>4 byte 0x00 SNDR (Sound Parameter Request) 149169942Sobrien>>>4 byte 0x10 SNDD (Sound Parameter Dump) 150169942Sobrien>>>4 byte 0x20 SNDP (Sound Parameter Parameter Change) 151169942Sobrien>>>4 byte 0x30 SNDQ (Sound Parameter Parameter Inquiry) 152169942Sobrien>>>4 byte 0x01 PRGR (Program Parameter Request) 153169942Sobrien>>>4 byte 0x11 PRGD (Program Parameter Dump) 154169942Sobrien>>>4 byte 0x21 PRGP (Program Parameter Parameter Change) 155169942Sobrien>>>4 byte 0x31 PRGQ (Program Parameter Parameter Inquiry) 156169942Sobrien>>>4 byte 0x71 OS (Program Parameter Reserved) 157169942Sobrien>>>4 byte 0x03 PATR (Pattern Parameter Request) 158169942Sobrien>>>4 byte 0x13 PATD (Pattern Parameter Dump) 159169942Sobrien>>>4 byte 0x23 PATP (Pattern Parameter Parameter Change) 160169942Sobrien>>>4 byte 0x33 PATQ (Pattern Parameter Parameter Inquiry) 161169942Sobrien>>>4 byte 0x04 GLBR (Global Parameter Request) 162169942Sobrien>>>4 byte 0x14 GLBD (Global Parameter Dump) 163169942Sobrien>>>4 byte 0x24 GLBP (Global Parameter Parameter Change) 164169942Sobrien>>>4 byte 0x34 GLBQ (Global Parameter Parameter Inquiry) 165169942Sobrien>>>4 byte 0x05 EFXR (FX Parameter Request) 166169942Sobrien>>>4 byte 0x15 EFXD (FX Parameter Dump) 167169942Sobrien>>>4 byte 0x25 EFXP (FX Parameter Parameter Change) 168169942Sobrien>>>4 byte 0x35 EFXQ (FX Parameter Parameter Inquiry) 169169942Sobrien>>>4 byte 0x07 MODR (Mode Command Request) 170169942Sobrien>>>4 byte 0x17 MODD (Mode Command Dump) 171169942Sobrien>>>4 byte 0x27 MODP (Mode Command Parameter Change) 172169942Sobrien>>>4 byte 0x37 MODQ (Mode Command Parameter Inquiry) 173169942Sobrien>>2 byte 0x03 Wave 174169942Sobrien>>>4 byte 0x00 SBPR (Soundprogram) 175169942Sobrien>>>4 byte 0x01 SAPR (Performance) 176169942Sobrien>>>4 byte 0x02 SWAVE (Wave) 177169942Sobrien>>>4 byte 0x03 SWTBL (Wave control table) 178169942Sobrien>>>4 byte 0x04 SVT (Velocity Curve) 179169942Sobrien>>>4 byte 0x05 STT (Tuning Table) 180169942Sobrien>>>4 byte 0x06 SGLB (Global Parameters) 181169942Sobrien>>>4 byte 0x07 SARRMAP (Performance Program Change Map) 182169942Sobrien>>>4 byte 0x08 SBPRMAP (Sound Program Change Map) 183169942Sobrien>>>4 byte 0x09 SBPRPAR (Sound Parameter) 184169942Sobrien>>>4 byte 0x0A SARRPAR (Performance Parameter) 185169942Sobrien>>>4 byte 0x0B SINSPAR (Instrument/External Parameter) 186169942Sobrien>>>4 byte 0x0F SBULK (Bulk Switch on/off) 18780588Sobrien 188133359Sobrien# Japanese Group 18980588Sobrien>1 byte 0x40 Kawai 190133359Sobrien>>3 byte 0x20 K1 19180588Sobrien>>3 byte 0x22 K4 19280588Sobrien 19380588Sobrien>1 byte 0x41 Roland 19480588Sobrien>>3 byte 0x14 D-50 19580588Sobrien>>3 byte 0x2b U-220 19680588Sobrien>>3 byte 0x02 TR-707 19780588Sobrien 19880588Sobrien>1 byte 0x42 Korg 19980588Sobrien>>3 byte 0x19 M1 20080588Sobrien 20180588Sobrien>1 byte 0x43 Yamaha 20280588Sobrien>1 byte 0x44 Casio 20380588Sobrien>1 byte 0x46 Kamiya 20480588Sobrien>1 byte 0x47 Akai 20580588Sobrien>1 byte 0x48 Victor 206133359Sobrien>1 byte 0x49 Mesosha 20780588Sobrien>1 byte 0x4b Fujitsu 20880588Sobrien>1 byte 0x4c Sony 20980588Sobrien>1 byte 0x4e Teac 21080588Sobrien>1 byte 0x50 Matsushita 21180588Sobrien>1 byte 0x51 Fostex 21280588Sobrien>1 byte 0x52 Zoom 21380588Sobrien>1 byte 0x54 Matsushita 21480588Sobrien>1 byte 0x57 Acoustic tech. lab. 215267843Sdelphij# http://www.midi.org/techspecs/manid.php 21680588Sobrien>1 belong&0xffffff00 0x00007400 Ta Horng 21780588Sobrien>1 belong&0xffffff00 0x00007500 e-Tek 21880588Sobrien>1 belong&0xffffff00 0x00007600 E-Voice 21980588Sobrien>1 belong&0xffffff00 0x00007700 Midisoft 22080588Sobrien>1 belong&0xffffff00 0x00007800 Q-Sound 22180588Sobrien>1 belong&0xffffff00 0x00007900 Westrex 22280588Sobrien>1 belong&0xffffff00 0x00007a00 Nvidia* 22380588Sobrien>1 belong&0xffffff00 0x00007b00 ESS 22480588Sobrien>1 belong&0xffffff00 0x00007c00 Mediatrix 22580588Sobrien>1 belong&0xffffff00 0x00007d00 Brooktree 22680588Sobrien>1 belong&0xffffff00 0x00007e00 Otari 22780588Sobrien>1 belong&0xffffff00 0x00007f00 Key Electronics 22880588Sobrien>1 belong&0xffffff00 0x00010000 Shure 22980588Sobrien>1 belong&0xffffff00 0x00010100 AuraSound 23080588Sobrien>1 belong&0xffffff00 0x00010200 Crystal 23180588Sobrien>1 belong&0xffffff00 0x00010300 Rockwell 23280588Sobrien>1 belong&0xffffff00 0x00010400 Silicon Graphics 23380588Sobrien>1 belong&0xffffff00 0x00010500 Midiman 23480588Sobrien>1 belong&0xffffff00 0x00010600 PreSonus 23580588Sobrien>1 belong&0xffffff00 0x00010800 Topaz 23680588Sobrien>1 belong&0xffffff00 0x00010900 Cast Lightning 23780588Sobrien>1 belong&0xffffff00 0x00010a00 Microsoft 23880588Sobrien>1 belong&0xffffff00 0x00010b00 Sonic Foundry 23980588Sobrien>1 belong&0xffffff00 0x00010c00 Line 6 24080588Sobrien>1 belong&0xffffff00 0x00010d00 Beatnik Inc. 24180588Sobrien>1 belong&0xffffff00 0x00010e00 Van Koerving 24280588Sobrien>1 belong&0xffffff00 0x00010f00 Altech Systems 24380588Sobrien>1 belong&0xffffff00 0x00011000 S & S Research 24480588Sobrien>1 belong&0xffffff00 0x00011100 VLSI Technology 24580588Sobrien>1 belong&0xffffff00 0x00011200 Chromatic 24680588Sobrien>1 belong&0xffffff00 0x00011300 Sapphire 24780588Sobrien>1 belong&0xffffff00 0x00011400 IDRC 24880588Sobrien>1 belong&0xffffff00 0x00011500 Justonic Tuning 24980588Sobrien>1 belong&0xffffff00 0x00011600 TorComp 25080588Sobrien>1 belong&0xffffff00 0x00011700 Newtek Inc. 25180588Sobrien>1 belong&0xffffff00 0x00011800 Sound Sculpture 25280588Sobrien>1 belong&0xffffff00 0x00011900 Walker Technical 25380588Sobrien>1 belong&0xffffff00 0x00011a00 Digital Harmony 25480588Sobrien>1 belong&0xffffff00 0x00011b00 InVision 25580588Sobrien>1 belong&0xffffff00 0x00011c00 T-Square 25680588Sobrien>1 belong&0xffffff00 0x00011d00 Nemesys 25780588Sobrien>1 belong&0xffffff00 0x00011e00 DBX 25880588Sobrien>1 belong&0xffffff00 0x00011f00 Syndyne 25980588Sobrien>1 belong&0xffffff00 0x00012000 Bitheadz 26080588Sobrien>1 belong&0xffffff00 0x00012100 Cakewalk 26180588Sobrien>1 belong&0xffffff00 0x00012200 Staccato 26280588Sobrien>1 belong&0xffffff00 0x00012300 National Semicon. 26380588Sobrien>1 belong&0xffffff00 0x00012400 Boom Theory 26480588Sobrien>1 belong&0xffffff00 0x00012500 Virtual DSP Corp 26580588Sobrien>1 belong&0xffffff00 0x00012600 Antares 26680588Sobrien>1 belong&0xffffff00 0x00012700 Angel Software 26780588Sobrien>1 belong&0xffffff00 0x00012800 St Louis Music 26880588Sobrien>1 belong&0xffffff00 0x00012900 Lyrrus dba G-VOX 26980588Sobrien>1 belong&0xffffff00 0x00012a00 Ashley Audio 27080588Sobrien>1 belong&0xffffff00 0x00012b00 Vari-Lite 27180588Sobrien>1 belong&0xffffff00 0x00012c00 Summit Audio 27280588Sobrien>1 belong&0xffffff00 0x00012d00 Aureal Semicon. 27380588Sobrien>1 belong&0xffffff00 0x00012e00 SeaSound 27480588Sobrien>1 belong&0xffffff00 0x00012f00 U.S. Robotics 27580588Sobrien>1 belong&0xffffff00 0x00013000 Aurisis 27680588Sobrien>1 belong&0xffffff00 0x00013100 Nearfield Multimedia 27780588Sobrien>1 belong&0xffffff00 0x00013200 FM7 Inc. 27880588Sobrien>1 belong&0xffffff00 0x00013300 Swivel Systems 27980588Sobrien>1 belong&0xffffff00 0x00013400 Hyperactive 28080588Sobrien>1 belong&0xffffff00 0x00013500 MidiLite 28180588Sobrien>1 belong&0xffffff00 0x00013600 Radical 28280588Sobrien>1 belong&0xffffff00 0x00013700 Roger Linn 28380588Sobrien>1 belong&0xffffff00 0x00013800 Helicon 28480588Sobrien>1 belong&0xffffff00 0x00013900 Event 28580588Sobrien>1 belong&0xffffff00 0x00013a00 Sonic Network 28680588Sobrien>1 belong&0xffffff00 0x00013b00 Realtime Music 28780588Sobrien>1 belong&0xffffff00 0x00013c00 Apogee Digital 28880588Sobrien 28980588Sobrien>1 belong&0xffffff00 0x00202b00 Medeli Electronics 29080588Sobrien>1 belong&0xffffff00 0x00202c00 Charlie Lab 29180588Sobrien>1 belong&0xffffff00 0x00202d00 Blue Chip Music 29280588Sobrien>1 belong&0xffffff00 0x00202e00 BEE OH Corp 29380588Sobrien>1 belong&0xffffff00 0x00202f00 LG Semicon America 29480588Sobrien>1 belong&0xffffff00 0x00203000 TESI 29580588Sobrien>1 belong&0xffffff00 0x00203100 EMAGIC 29680588Sobrien>1 belong&0xffffff00 0x00203200 Behringer 29780588Sobrien>1 belong&0xffffff00 0x00203300 Access Music 29880588Sobrien>1 belong&0xffffff00 0x00203400 Synoptic 29980588Sobrien>1 belong&0xffffff00 0x00203500 Hanmesoft Corp 30080588Sobrien>1 belong&0xffffff00 0x00203600 Terratec 30180588Sobrien>1 belong&0xffffff00 0x00203700 Proel SpA 30280588Sobrien>1 belong&0xffffff00 0x00203800 IBK MIDI 30380588Sobrien>1 belong&0xffffff00 0x00203900 IRCAM 30480588Sobrien>1 belong&0xffffff00 0x00203a00 Propellerhead Software 30580588Sobrien>1 belong&0xffffff00 0x00203b00 Red Sound Systems 30680588Sobrien>1 belong&0xffffff00 0x00203c00 Electron ESI AB 30780588Sobrien>1 belong&0xffffff00 0x00203d00 Sintefex Audio 30880588Sobrien>1 belong&0xffffff00 0x00203e00 Music and More 30980588Sobrien>1 belong&0xffffff00 0x00203f00 Amsaro 31080588Sobrien>1 belong&0xffffff00 0x00204000 CDS Advanced Technology 31180588Sobrien>1 belong&0xffffff00 0x00204100 Touched by Sound 31280588Sobrien>1 belong&0xffffff00 0x00204200 DSP Arts 31380588Sobrien>1 belong&0xffffff00 0x00204300 Phil Rees Music 31480588Sobrien>1 belong&0xffffff00 0x00204400 Stamer Musikanlagen GmbH 31580588Sobrien>1 belong&0xffffff00 0x00204500 Soundart 31680588Sobrien>1 belong&0xffffff00 0x00204600 C-Mexx Software 31780588Sobrien>1 belong&0xffffff00 0x00204700 Klavis Tech. 31880588Sobrien>1 belong&0xffffff00 0x00204800 Noteheads AB 31980588Sobrien 32080588Sobrien0 string T707 Roland TR-707 Data 321