Waldorf Wave Documentation

Waldorf Wave System Exclusive Description (c) Waldorf Electronics
written by Stefan Stenzel September 21st 1993
Operating System Version 1.400
1.) General Information
This document is prepared under great caution in a most precise manner. Several experts took care in sorting and checking the available information the best way possible. However, we cannot guarantee that all information is absolutely correct, nor can we guarantee that there won't be changes due to further software enhancements.
All System Exclusive messages of the Wave have the following format :
Label Bytes Comment
-------------------------------------------------------------------------------­ SYSX 1 Always 0xF0 WALDORF 1 Always 0x3E WAVE ID 1 Always 0x03 DEVICE ID 1 According to global parameter <Device Number> MESSAGE ID 1 Specifies message type LOCATION nl Specifies location of Dump, Number of bytes nl depends on MESSAGE ID DATA n Number of data bytes n depending on MESSAGE ID CHKSUM 1 sum of all bytes of LOCATION and DATA truncated to 7 bit EOX 1 0xF7
--------------------------------------------------------------------------------
Dumps are only accepted if the DEVICE ID fits the global parameter <Device Number> or is set to 127, which means all units. If a checksum error is detected, the whole message will be ignored. An unknown message will lead to no reaction, it will be ignored completely.
In all dumps there may be unused data-bytes. Those data-bytes represent reserved, but yet unused parameters and should be set to zero.
If not indicated differently, a databyte consists of a regular MIDI-databyte (0x00 - 0x7F).
Otherwise:
ASCII: A MIDI databyte in the range of 20h..7Fh. BYTE : Two consecutive nibbles form an 8-bit byte. The MS nibble is sent first. WORD : Four consecutive nibbles form a 16-bit word. The MS nibble is sent first.
No other data formats will be provided. Within a single message data formats may be mixed.
2.) MESSAGE IDs
Detailed information:
The diference between dumps and requests is determined by a high or low bit 6. This means: requests occupy IDM-numbers 00h to 3Fh, while the corresponding dumps have IDM-numbers 40h to 7Fh. As you can see, a dump always has the same IDM-number as it's request, the difference being a high (set) bit 6.
The Wave accepts and sends the following Dump MESSAGE IDs :
Label Value Bytes nl Bytes n Description LOCATION of DATA
---------------------------------------------------------------------------­ SBPR 0x00 3 256 Soundprogram SARR 0x01 2 512 Performance SWAVE 0x02 4 128 Wave SWTBL 0x03 2 266 Wave control table SVT 0x04 1 128 Velocity Curve STT 0x05 1 256 Tuning Table SGLB 0x06 0 384 Global Parameters SARRMAP 0x07 0 256 Performance Program Change Map SBPRMAP 0x08 0 256 Sound Program Change Map SBPRPAR 0x09 3 1 Sound Parameter SARRPAR 0x0A 1 1 Performance Parameter SINSPAR 0x0B 2 1 Instrument/External Parameter SBULK 0x0F 0 1 Bulk Switch on/off
---------------------------------------------------------------------------­ *** Note *** SARRPAR and SINSPAR Dumps cannot be sent by the Wave with the current Operating System Version, nevertheless they are properly received.
*** Note *** Although the Wave offers Bulk Dumps of Soundbanks, Performance banks and Arrangements, there is no System Exclusive implementation for these data types. Instead of this, the Wave sends out a sequence of single Dumps :
Dump Sequence for Soundbank :
1. Bulk switch on SBULK
2. 128 consecutive Sound Dumps SBPR
3. Bulk switch off SBULK
Dump Sequence for Performance bank :
1. Bulk switch on SBULK
2. 128 consecutive Performance Dumps SARR
3. Bulk switch off SBULK
Dump Sequence for Wavetable :
1. Wave control table dump SWTBL
2. Wave Dumps for each needed userwave SWAVE Rom waves 0-299 will not be sent.
Dump Sequence for Arrangement :
1. Performance Dump SARR
2. Sound Dumps for each needed Sound SBPR *** Dump without tables stops here ***
3. Dumps of needed Velocity curves SVT
4. Dumps of needed Tuning tables STT
5. Dumps of needed Wavetables (see above) SWTBL
The Wave accepts and sends the following Request MESSAGE IDs : ( all DATA fields have 0 Bytes )
Label Value Bytes nl Description of LOCATION
---------------------------------------------------------------------------­ RQBPR 0x40 1 Soundprogram RQARR 0x41 0 Performance RQWAVE 0x42 4 Wave RQWTBL 0x43 1 Wavetable RQVT 0x44 1 Velocity Curve RQTT 0x45 1 Tuning Table RQGLB 0x46 0 Global Parameters RQARRMAP 0x47 0 Performance Program Change Map RQBPRMAP 0x48 0 Sound Program Change Map
----------------------------------------------------------------------------
3.) Detailed Messages
3.a) SBPR ( Soundprogram Dump ) Format :
---------------------------------------------------------------------------­ SYSX 1 0xF0 WALDORF 1 0x3E WAVE ID 1 0x03 DEVICE ID 1 See global parameter <Device Number> MESSAGE ID 1 0x00 ( SBPR ) LOCATION 3 Instrument and Sound Number Byte 0: Instrument number Byte 1: Bank number, 0: bank A, 1: bank B Byte 2: Sound Number DATA 256 Soundprogram data ( see description below ) CHKSUM 1 sum of all bytes of DATA and LOCATION, truncted to 7 bit EOX 1 0xF7
----------------------------------------------------------------------------
Format of Soundprogram :
Byte description
--------------------------------------------------------------------­ 0 Oscillator 1 octave (0=-2, 0x10=-1, 0x20=0, 0x30=+1, 0x40=+2) 1 Oscillator 1 semitone (16-112, 1 semitone equals a value of 4) 2 Oscillator 1 detune (14-114 represents -50...+50 ) 3 Oscillator 1 bend range (16-112 in steps of 4, represents -12...+12, 12 means global. ) 4 Oscillator 1 pitch mode (0: norm, 1-4: random 1-4,5: fixed ) 5 Oscillator 1 mod 1 source (0-38, see modifier table ) 6 Oscillator 1 mod 1 control (0-38, see modifier table ) 7 Oscillator 1 mod 1 amount (0-127, represents -64...+63 ) 8 Oscillator 1 mod 2 source (0-38, see modifier table ) 9 Oscillator 1 mod 2 amount (0-127, represents -64...+63 ) 10 Oscillator 1 mod 2 quantize (0-7) 11 unused 12 Oscillator 2 octave (0=-2, 0x10=-1, 0x20=0, 0x30=+1, 0x40=+2) 13 Oscillator 2 semitone 14 Oscillator 2 detune
15 Oscillator 2 bend range 16 Oscillator 2 pitch mode 17 Oscillator 2 mod 1 source 18 Oscillator 2 mod 1 control 19 Oscillator 2 mod 1 amount 20 Oscillator 2 mod 2 source 21 Oscillator 2 mod 2 amount 22 Oscillator 2 mod 2 quantize 23 Oscillator 2 link (0: off, 1: on ) 24 unused 25 Wavetable (0-127 represents wavetables 1-128) 26 Wave 1 wave pos (0-63) 27 Wave 1 wave phase (0-127, 0 means free start ) 28 Wave 1 start mod source (0-38, see modifier table ) 29 Wave 1 start mod amount (0-127, represents -64...+63 ) 30 Wave 1 envel amount (0-127, represents -64...+63 ) 31 Wave 1 envel velo amount (0-127, represents -64...+63 ) 32 Wave 1 kb tracking (0-127, represents -64...+63 ) 33 Wave 1 kb center (0-127, represents C-2...G9 ) 34 Wave 1 mod 1 source (0-38, see modifier table ) 35 Wave 1 mod 1 control (0-38, see modifier table ) 36 Wave 1 mod 1 amount (0-127, represents -64...+63 ) 37 Wave 1 mod 2 source (0-38, see modifier table ) 38 Wave 1 mod 2 amount (0-127, represents -64...+63 ) 39 Wave 1 mod 2 quantize (0-7) 40 Wave 1 stepped/smooth (0: stepped, 1: smooth ) 41 unused 42 Wave 2 startwave 43 Wave 2 wave phase 44 Wave 2 start mod source 45 Wave 2 start mod amount 46 Wave 2 envelope amount 47 Wave 2 envelope velo amount 48 Wave 2 keytrack 49 Wave 2 keycenter 50 Wave 2 mod 1 source 51 Wave 2 mod 1 control 52 Wave 2 mod 1 amount 53 Wave 2 mod 2 source 54 Wave 2 mod 2 amount 55 Wave 2 mod 2 quantize 56 Wave 2 stepped/smooth 57 Wave 2 link (0: off, 1: on ) 58 unused 59 Wave 1 volume (0-112, in steps of 16, => 0-7) 60 Wave 2 volume (0-112, in steps of 16, => 0-7) 61 Noise volume (0-112, in steps of 16, => 0-7) 62 Wave 1 volume mod source (0-38, see modifier table ) 63 Wave 1 volume mod amount (8-120 in steps of 8, => -7...+7 ) 64 Wave 2 volume mod source (0-38, see modifier table ) 65 Wave 2 volume mod amount (8-120 in steps of 8, => -7...+7 ) 66 Noise volume mod source (0-38, see modifier table ) 67 Noise volume mod amount (8-120 in steps of 8, => -7...+7 ) 68 Amplifier envelope amount (0-127, represents -64...+63 ) 69 Amplifier envelope velocity amount (0-127, => -64...+63 ) 70 Amplifier keytrack (0-127, represents -64...+63 ) 71 Amplifier keycenter (0-127, represents C-2...G9 ) 72 Amplifier mod 1 source (0-38, see modifier table ) 73 Amplifier mod 1 control (0-38, see modifier table ) 74 Amplifier mod 1 amount (0-127, represents -64...+63 ) 75 Amplifier mod 2 source (0-38, see modifier table )
76 Amplifier mod 2 amount (0-127, represents -64...+63 ) 77 unused 78 Filter mode (0: lowpass, 1: Highpass, 2: Bandpass, 3: Dual ) 79 Lowpass filter frequency (0-127) 80 Filter resonance (0-127) 81 Filter envelope amount (0-127, represents -64...+63 ) 82 Filter velocity amount (0-127, represents -64...+63 ) 83 Filter keytrack (0-127, represents -64...+63 ) 84 Filter keycenter (0-127, represents C-2...G9 ) 85 Filter mod 1 source (0-38, see modifier table ) 86 Filter mod 1 control (0-38, see modifier table ) 87 Filter mod 1 amount (0-127, represents -64...+63 ) 88 Filter mod 2 source (0-38, see modifier table ) 89 Filter mod 2 amount (0-127, represents -64...+63 ) 90 Filter resonance mod source (0-38, see modifier table ) 91 Filter resonance mod control (0-38, see modifier table ) 92 Filter resonance mod amount (0-127, represents -64...+63 ) 93 Dual mode highpass frq (0-127) 94 Dual mode highpass envelope select (0: Amp, 1:Filter, 2: Wave, 1: Free ) 95 Dual mode highpass envelope amount (0-127, represents -64...+63 ) 96 Dual mode highpass velocity amount (0-127, represents -64...+63 ) 97 Dual mode highpass keytrack (0-127, represents -64...+63 ) 98 Dual mode highpass keycenter (0-127, represents C-2...G9 ) 99 Dual mode highpass mod 1 source (0-38, see modifier table ) 100 Dual mode highpass mod 1 control (0-38, see modifier table ) 101 Dual mode highpass mod 1 amount (0-127, represents -64...+63 ) 102 Dual mode highpass mod 2 source (0-38, see modifier table ) 103 Dual mode highpass mod 2 amount (0-127, represents -64...+63 ) 104 Bandpass filter bandwidth (0-127) 105 unused 106 Amplifier envelope attack (0-127) 107 Amplifier envelope decay (0-127) 108 Amplifier envelope sustain (0-127) 109 Amplifier envelope release (0-127) 110 Amplifier envelope attack mod source (0-38, see modifier table ) 111 Amplifier envelope attack mod amount (0-127, represents -64...+63 ) 112 Amplifier envelope decay mod source (0-38, see modifier table ) 113 Amplifier envelope decay mod amount (0-127, represents -64...+63 ) 114 Amplifier envelope sustain mod source (0-38, see modifier table ) 115 Amplifier envelope sustain mod amount (0-127, represents -64...+63 ) 116 Amplifier envelope release mod source (0-38, see modifier table ) 117 Amplifier envelope release mod amount (0-127, represents -64...+63 ) 118 unused 119 Filter envelope delay (0-127) 120 Filter envelope attack (0-127) 121 Filter envelope decay (0-127) 122 Filter envelope sustain (0-127) 123 Filter envelope release (0-127) 124 unused 125 unused 126 Filter envelope attack mod source (0-38, see modifier table ) 127 Filter envelope attack mod amount (0-127, represents -64...+63 ) 128 Filter envelope decay mod source (0-38, see modifier table ) 129 Filter envelope decay mod amount (0-127, represents -64...+63 ) 130 Filter envelope sustain mod source (0-38, see modifier table ) 131 Filter envelope sustain mod amount (0-127, represents -64...+63 ) 132 Filter envelope release mod source (0-38, see modifier table ) 133 Filter envelope release mod amount (0-127, represents -64...+63 ) 134 unused
135 Wave envelope time 1 (0-127) 136 Wave envelope level 1 (0-127) 137 Wave envelope time 2 (0-127) 138 Wave envelope level 2 (0-127) 139 Wave envelope time 3 (0-127) 140 Wave envelope level 3 (0-127) 141 Wave envelope time 4 (0-127) 142 Wave envelope level 4 (0-127) 143 Wave envelope time 5 (0-127) 144 Wave envelope level 5 (0-127) 145 Wave envelope time 6 (0-127) 146 Wave envelope level 6 (0-127) 147 Wave envelope time 7 (0-127) 148 Wave envelope level 7 (0-127) 149 Wave envelope time 8 (0-127) 150 Wave envelope level 8 (0-127) 151 Wave envelope time mod source (0-38, see modifier table ) 152 Wave envelope time mod amount (0-127, represents -64...+63 ) 153 Wave envelope level mod source (0-38, see modifier table ) 154 Wave envelope level mod amount (0-127, represents -64...+63 ) 155 Wave envelope key off point ( 0-7 represents point 1-8 ) 156 Wave envelope loop start point ( 0-7 represents point 1-8 ) 157 Wave envelope loop on/off (0: off,1: on ) 158 unused 159 Free envelope time 1 (0-127) 160 Free envelope level 1 (0-127) 161 Free envelope time 2 (0-127) 162 Free envelope level 2 (0-127) 163 Free envelope time 3 (0-127) 164 Free envelope level 3 (0-127) 165 Free envelope time 4 (0-127) 166 Free envelope level 4 (0-127) 167 Free envelope time mod source (0-38, see modifier table ) 168 Free envelope time mod amount (0-127, represents -64...+63 ) 169 Free envelope level mod source (0-38, see modifier table ) 170 Free envelope level mod amount (0-127, represents -64...+63 ) 171 Free envelope zero axis (0-127, represents -64...+63 ) 172 Lfo 1 rate (0-127) 173 Lfo 1 shape (0: sine, 1:tri, 2: saw,3: pulse,4: random, 5: S&H ) 174 Lfo 1 symmetry (0-127, represents -64...+63 ) 175 Lfo 1 humanize (0-7) 176 Lfo 1 rate mod source (0-38, see modifier table ) 177 Lfo 1 rate mod amount (0-127, represents -64...+63 ) 178 Lfo 1 level mod source (0-38, see modifier table ) 179 Lfo 1 level mod control (0-38, see modifier table ) 180 Lfo 1 level mod amount (0-127, represents -64...+63 ) 181 Lfo 1 sync (0: off, 1: on ) 182 Lfo 2 rate 183 Lfo 2 shape 184 Lfo 2 symmetry 185 Lfo 2 humanize 186 Lfo 2 rate mod source 187 Lfo 2 rate mod amount 188 Lfo 2 level mod source 189 Lfo 2 level mod control 190 Lfo 2 level mod amount 191 Lfo 2 sync 192 Control ramp trigger source (0-38, see modifier table ) 193 Control ramp rate (0-127, represents -64...+63 )
194 Panning source 1 (0-38, see modifier table )
Loading...
+ 13 hidden pages