From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:20:50 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(1/10 Date: Mon, 24 Jan 1994 20:40:22 GMT Message-ID: <1994Jan24.204023.13097@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 1 Of 10 *****>> For all you WaveBlaster Owners, here is the EMU Docs on what it can and cannot do. Got this off Compu$erve from the MIDI Forum. =============================================================================== Proteus SoundEngine MIDI Specifications E-mu Systems, Inc. =============================================================================== Proteus SoundEngine MIDI Specifications About this MIDI Specification This section of the manual is included to provide a complete MIDI specification for programmers or MIDI power users. Most of the Music Module's sound programming functions are only available via MIDI SysEx. The Edit One program by Opcode allows access to all of the synthesizer parameters. Dual MIDI Modes The SoundEngine Music Module incorporates two MIDI modes which affect the way the Music Module responds to incoming MIDI messages. Mode 1 - General MIDI Mode - F0 7E 00 09 01 F7 The Music Module responds according to the General MIDI spec. On power-up, this mode is automatically invoked and both banks of General MIDI presets are loaded into RAM. General MIDI mode has several features that differ from Non-General MIDI mode. o Channel 10 is dedicated to drums. Incoming preset changes on channel 10 are automatically routed to percussion presets which are internally mapped at preset locations 129-192. Preset numbers greater than #63 will be ignored on channel 10. o Voice channels are assigned to MIDI channels in the order: 10, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16. There are also default minimum voice channels assignments. Channel 1: 8 minimum voice channels Channels 2-3: 4 minimum voice channels Channels 4-9: 2 minimum voice channels Channel 10: 4 minimum voice channels Channels 11-16: 0 minimum voice channels These minimum channel numbers can be changed via System Exclusive command, however the sum of voice channels cannot exceed 32. o Channel Volumes and Expression Controller. The Music Module powers up with all channel volumes set to 100 instead of the maximum of 127. This allows use of an expression controller (on continuous controller channel 11) to increase the volume of any given channel by up to 6dB. Mode 2 - Proteus Mode - F0 7E 00 09 02 F7 In this mode, the Music Module behaves in a manner very similar to the Proteus line of sample players, with the addition of digital effects. (Proteus is E-mu's line of professional sound modules utilizing technology and architecture very similar to the Sound Engine Music Module.) o MIDI channel 10 is NOT reserved for drums. It acts the same as any other MIDI channel. o Voice channels are assigned in a circular order with a voice stealing algorithm based on the release of a channel's volume envelope. There is no feature to assign a minimum number of voice channels per MIDI channel. o Channel volumes default to 127 on power-up. There is no expression controller. o Presets range from 000-192. A Program->Preset mapping feature allows presets higher than 127 to be accessed over MIDI. Received Channel Commands Channels number (n) = 0-15. Message bytes are represented in hex. All other numbers are decimal. Running status is supported. kk = keynumber, vv = velocity / value. <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:03 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(2/10 Date: Mon, 24 Jan 1994 20:40:27 GMT Message-ID: <1994Jan24.204029.13158@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 2 Of 10 *****>> Command Message Comments ----------------------------------------------------------------- Note Off 8n kk vv rel. velocity ignored Note On 9n kk vv velocity 0 = note off Key Aftertouch An kk vv kk=0-127 vv=0-127 Program Change Cn vv 0-127 Channel Aftertouch Dn vv 0-127 Pitch Bend En ll mm l=lsb, m=msb Realtime Controller Bn cc vv cc=0-31 Footswitch Bn cc vv cc=64-79, vv64=on Volume Bn 07 vv 0-127 Pan Bn 0A vv 0=hard left, 127=hard right Effect A Amount Bn 5B ee ee=Effect A amount Effect B Amount Bn 5D ee ee=Effect B amount Reset All Controllers Bn 79 00 ignored-omni mode All Notes Off Bn 7B 00 ignored-omni mode Omni Mode Off *+ Bn 7C 00 ** Omni Mode On *+ Bn 7D 00 ** Mono Mode On *+ Bn 7E 00 ** Poly Mode On *+ Bn 7F 00 ** * Proteus Mode Only ** forces all notes & controls off + Special Notes in Proteus Mode: >From Omni Mode Omni Off turns Poly On. >From Poly Mode Omni On turns Omni On; Mono On turns Mono On. >From Mono Mode Mono Off turns Poly On; Omni On turns Omni On. >From Multi Mode Omni On turns Omni On; Omni Off or Mono Off turns Poly On; Mono On turns Mono On. All other changes have no effect. General Information For Sound Engine Music Module SysEx o Product ID for SoundEngine Music Module is 04. o Device ID is 00. o Parameter Number and Parameter Value are 2 bytes each. o Since MIDI data bytes cannot be greater than [7F] (127 decimal), the data values are "nibble-ized" to a 14-bit signed 2's complement format. o There is only one edit buffer which is for the current preset (the preset shown in the display). Only one preset at a time can be edited via SysEx commands and changing the current preset erases the edit buffer. MIDI SysEx commands For system exclusive commands, the following format is used: F0 system exclusive status byte 18 E-mu ID byte 04 product ID byte 00 device ID byte cc command byte ... data bytes F7 EOX SysEx Editing Preset and setup parameters may be edited individually using system exclusive commands. The preset being edited is the active preset (the preset on the basic or global channel). The value of a given parameter may be changed by sending a parameter value command. The value of a parameter may be read by sending a parameter value request, to which the machine will respond by sending back the parameter value. Please note that there is only one edit buffer. Two MIDI bytes (lsb, msb) are required for each 14 bit data word. Bits 0-6 are sent first, followed by bits 7-13 in the next MIDI byte. All data words are signed 2's complement values with sign-extension out to the most significant bit (bit 13). This convention applies to all data words, regardless of the parameter's value range. Preset data may also be transmitted or received in a single block (one complete preset) using system exclusive commands. A preset data request may be issued by a host computer, to which the machine will respond by sending the data block for the requested preset. Conversely, the computer may send new preset data which will replace the specified preset. <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:06 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(3/10 Date: Mon, 24 Jan 1994 20:40:34 GMT Message-ID: <1994Jan24.204035.13222@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 3 Of 10 *****>> The preset memory on the Music Module is volatile, meaning that any changes made to presets will be lost unless the data is saved to the host computer. The factory ROM presets are automatically downloaded into RAM at power-up. The editor package supplied with the Music Module contains a full-featured librarian which makes it easy to build a custom library of sounds. Warning: When transferring preset banks and tuning table data back and forth from the Music Module to a computer, the data should be recorded as you would a regular sequence. Sending the data in one huge chunk will clog the input buffer on the Music Module unless a time period of approximately 100mS is inserted between each preset. Received System Exclusive Commands Command Message Comments ------------------------------------------------------------------------- Preset Data Req. F0 18 04 00 00 ll ll=preset # lsb, mm F7 mm=preset # msb see note 6 Preset Data F0 18 04 00 01 ll cs=checksum mm ... cs F7 Parameter Value Request F0 18 04 00 02 pl pl=parameter # lsb, pm F7 pm=parameter #msb Parameter Value F0 18 04 00 03 pl pl=parameter # lsb, pm vl vm F7 pm=parameter # msb vl=value lsb, vm=value msb Tuning Table Request F0 18 04 00 04 F7 see note 7 Tuning Table F0 18 04 00 05 ... 262 bytes ... F7 Program Map Request F0 18 04 00 06 F7 see note 8 Program Map Data F0 18 04 00 07 ... 262 bytes ... F7 Master Setting Request F0 18 04 00 08 F7 Version Request F0 18 04 00 0A F7 see note 1 Configuration Request F0 18 04 00 0C F7 see note 2 Instrument List Request F0 18 04 00 0E F7 see note 3 Preset List Request F0 18 04 00 12 F7 see note 4 Master Volume Set F0 18 04 00 14 vv vv=Volume 0-127 F7 Master Volume Request F0 18 04 00 16 F7 Front Panel Request F0 18 04 00 17 F7 see note 9 Switch Press F0 18 04 00 19 0s see note 9 F7 Current Bank Request F0 18 04 00 1A F7 Bank Select F0 18 04 00 1B bb bb = 0 or 1 F7 Option Status F0 18 04 00 1C oo oo=option # F7 see note 10 Set Option Status F0 18 04 00 1D oo oo=option # vv F7 vv=status; 00=Off, 01=On see note 10 Read Min Voices F0 18 04 00 1E cc cc=MIDI channel 0-15 F7 see note 10 Set Min Voices F0 18 04 00 1F cc cc=MIDI channel 0-15 vv F7 vv=minimum # of voices per channel see note 10 Read Max Voices F0 18 04 00 20 cc cc=MIDI channel 0-15 F7 see note 10 Set Max Voices F0 18 04 00 21 cc cc=MIDI channel 0-15 vv F7 vv=maximum # of voices <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:11 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(4/10 Date: Mon, 24 Jan 1994 20:40:40 GMT Message-ID: <1994Jan24.204041.13283@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 4 Of 10 *****>> per channel see note 10 Save Edit Buffer F0 18 04 00 22 ll see note 11 mm F7 System Reset F0 18 04 00 23 F7 resets system to power-up condition General MIDI On F0 7E 00 09 01 F7 turns general MIDI On General MIDI Off F0 7E 00 09 02 F7 turns general MIDI Off Transmitted System Exclusive Commands Command Message Comments ------------------------------------------------------------------------- Preset Data F0 18 04 00 01 ll mm ... cs=checksum cs F7 Parameter Value F0 18 04 00 03 pl pm vl pl=parameter # lsb vm F7 pm=parameter # msb vl=value lsb vm=value msb Tuning Table Data F0 18 04 00 05 ... ... F7 TT data=256 bytes Program Map Data F0 18 04 00 07 ... ... F7 see note 8 (Proteus Mode only) Version Data F0 18 04 00 0B 01 r1 r2 see note 1 r3 F7 Configuration Message F0 18 04 00 0D pl pm s1 see note 2 l1 m1 s2 l2 m2 F7 Instrument List F0 18 04 00 0F (14 see note 3 bytes/instrument) ... F7 Preset List F0 18 04 00 13 (13 see note 4 bytes/preset) ... ... F7 Master Volume F0 18 04 00 14 vv F7 vv=Volume 0-127 Front Panel Data F0 18 04 00 18 aa...aa cc see note 9 ll F7 Current Bank Number F0 18 04 00 1B bb F7 bb=bank # 0 or 1 Option Status F0 18 04 00 1D oo vv F7 see note 10 Min Voices F0 18 04 00 1F cc vv F7 see note 10 Max Voices F0 18 04 00 21 cc vv F7 see note 10 Notes Note 1 - Version Request This command allows identification of machine type and software revision. The Music Module ill respond to the request with the version data: F0 18 04 00 0B 01 r1 r2 r3 F7 r1, r2, r3 = software revision # in ASCII (decimal point between r1 and r2). Note 2 - Configuration Message This MIDI command is used to identify the sound sets in a given Music Module. The configuration request command is: F0 18 04 00 0C F7 The Music Module will respond to this command with the configuration message: F0 18 04 00 0D pl pm s1 l1 m1 s2 l2 m2 F7 where pl and pm are the lsb and msb of the total number of presets, s1 and s2 are the ID numbers of the sound sets contained in this unit, and n1=l1, m1 and n2=l2, m2 represent the lsb and msb of the number of instruments in each sound set. If no expansion set is present, s2 will be 7F and n2 will be zero. Sound Engine General MIDI Sound Set = 5. <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:14 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(5/10 Date: Mon, 24 Jan 1994 20:40:46 GMT Message-ID: <1994Jan24.204048.13344@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 5 Of 10 *****>> Note 3 - Instrument List This MIDI command allows external software to upload the instrument list as an array of ASCII strings. The instrument list request command is: F0 18 04 00 0E F7 The Music Module will respond to this command with the instrument list message: F0 18 04 00 0F (14 bytes/instrument) ... F7 The instruments are transmitted in the same order they appear to the user of the music module. Note that a given instrument's position in this list may be different from its actual number within the sound set. instrument entry: il im (11 ASCII bytes) 00 Each instrument entry in the list consists of the actual instrument number (as defined in "Sound Sets" - see note 12) in lsb, msb format, followed by the instrument name (11 ASCII characters plus a zero terminator) for a total of 14 (decimal) bytes. The first instrument is #1 as displayed on the Music Module. The total number of instrument names is equal to (n1+n2) in the configuration message above. Note 4 - Preset List This MIDI command allows external software to upload all preset names as an array of ASCII strings. The preset list request command is: F0 18 04 00 12 F7 The Music Module will respond to this command with the preset list message: F0 18 04 13 (13 bytes per preset) ... ... F7 Each preset name is 12 ASCII characters, plus a zero terminator, for a total of 13 (decimal) bytes. The first preset is #0. The total number of preset names is equal to pp in the configuration message above. Note 6 - Preset Data Request Music Module presets are organized into ranges. Each range consists of 64 presets. The Music Module has three ranges of presets (0-191). Ranges may be requested using the preset request command and the appropriate preset code listed below. The two codes for ranges 0-63, 64-127 are functionally identical. Preset Range Preset Code MIDI Message 0-63 1024 F0 18 04 00 00 00 08 F7 64-127 1024 F0 18 04 00 00 01 08 F7 128-191 1026 F0 18 04 00 00 02 08 F7 64-127 -1 F0 18 04 00 00 7F 7F F7 0-63 -2 F0 18 04 00 00 7E 7F F7 Note 7 - Alternate Tuning The "user tuning table" allows any key to be tuned to an arbitrary pitch over an 8 octave range. If selected in the preset, an alternate tuning may be achieved by modifying the tuning values from the front panel or downloading a new table into the machine. The table consists of 128 words, corresponding to the MIDI key range. Each word is a pitch value expressed in 1/64 semitones, offset from key number 0 (c-2). Therefore, for equal temperament, each entry in the table would be equal to its key number times 64. Note 8 - Program Mapping (Proteus Mode Only) MIDI program changes will normally correspond to internal preset numbers 0-127. However, the user may "re-map" any MIDI program number, assigning it to an arbitrary internal preset. This feature allows any of the internal presets to be selected >from a MIDI keyboard controller. Note 9 - Front Panel Data The front panel request uploads the ASCII text data that would normally be displayed on the LCD of a standard Proteus. The request message is: F0 18 04 00 17 F7 <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:17 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(6/10 Date: Mon, 24 Jan 1994 20:40:52 GMT Message-ID: <1994Jan24.204053.13405@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 6 Of 10 *****>> The Sound Engine Music Module responds with: F0 18 04 00 18 aa...aa cc 0l F7 Where aa=32 ASCII bytes representing the text on the screen, starting in the top left hand corner of the LCD and moving to the bottom right. cc=LCD cursor position (0 to 1F, 0=top left, 10=bottom left, 1F=bottom right). If a cursor position is specified that exceeds 32, then the cursor will disappear from the screen. This condition is called "Cursor at Rest" and is used for a one way system dialog to the user. 0l=LED status bits (1=on, 0=off) Bit 0 Master LED Bit 1 Edit LED Bit 2-3 Enter LED; 0=off, 1=on, 2=flashing Bit 4-7 Unused, always zero Switch Press command is: F0 18 04 00 19 0s F7, where s is the switch number defined below. 0 Master switch press and release 1 Edit switch press and release 2 Enter switch press and release 3 Rotary Encoder decrement by one 4 Cursor switch press and release 5 Rotary Encoder increment by one Note 10 - User Definable Options Several options can be enabled or disabled via SysEx messages. These options apply only to General MIDI mode. Upon exiting General MIDI mode options will be restored to default settings. Read Option Status Reports the status of the selected option. Set Option Status Turns the selected option Off or On. Read Minimum Voices Reads the current minimum number of voices for the designated MIDI channel. Set Minimum Voices Sets the minimum number of voices allocated to a given MIDI channel. Read Maximum Voices Reads the current maximum number of voices for the designated MIDI channel. Set Maximum Voices Sets the maximum number of voices allocated to a given MIDI channel. Option 0 - MPC Map (default on) All incoming MIDI data on channels 13-16 is ignored. This option maintains compatibility with the MPC extended model. Option 1 - MIDI Channel Prioritization (default on) This option enables and disables the General MIDI channel prioritization and minimum/maximum polyphony scheme. The default minimums are: Channel 1:8, channels 2-3:4, channels 4- 9:2, channel 10:4, channels 11-16:0. The default maximums are all 32, except for the percussion channel which defaults to 16. When Off, channel priority reverts to a circular assignment mode. Option 2 - Exclusive Drums (default off) Exclusive Drums prevents percussion and instrument parts from ever stealing voices from each other. This works by limiting the non-percussion polyphony to 32-n, where n is the maximum polyphony assigned to the non-percussion channel. For example, if the maximum number of percussion voices is 8, there will be a maximum of 24 voices available for other instruments. When this option is selected, the individual maximum-voice settings for the non-percussion channels will not be in effect. Option 1 must be turned on for this option to have any effect. Option 3 - Single Assign Drums (default off) This option causes new notes on the percussion channel to mute any of the currently sounding voice channels having the same MIDI note number. Option 1 must be turned on for this option to have any effect. Option 4 - Show Preset Plus One (default on) <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:20 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(7/10 Date: Mon, 24 Jan 1994 20:40:58 GMT Message-ID: <1994Jan24.204059.13466@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 7 Of 10 *****>> Whenever a preset is displayed, an offset of one is added to the number. This means that the presets correspond to the General MIDI numbering scheme (1-128). With this option off, the numbering scheme becomes 0-127. Note 11 - Save Edit Buffer The Save Edit Buffer command causes the contents of the edit buffer to be sent to the designated preset number. Preset Data Format Preset data is transmitted and received using the following format: The standard system exclusive header is followed by the preset number (lsb, msb), a 14 bit word for each parameter value (lsb, msb) starting at parameter #0 and continuing upward, a one-byte checksum, and the end-of-exclusive byte (F7). The checksum is the modulo 128 sum of all the parameter value bytes; that is, all of the data bytes following the preset number and before the checksum. Preset Parameters Parameter# Parameter Name Range 0-11 preset name (12 ASCII characters) 32-127 12-14 preset link 1-3 0-191 15-18 preset, link 1-3 low key 0-127 19-22 preset, link 1-3 high key 0-127 23 pri instrument 0-255 24 pri sound start offset 0-127 25 pri tuning (coarse) -36 to +35 26 pri tuning (fine) -64 to +63 27 pri volume 0-127 28 pri pan -7 to +7 29 pri delay 0-127 30 pri low key 0-127 31 pri high key 0-127 32 pri alt. volume attack 0-99 33 pri alt. volume hold 0-99 34 pri alt. volume decay 0-99 35 pri alt. volume sustain 0-99 36 pri alt. volume release 0-99 37 pri alt. volume envelope on 0-1 38 pri solo mode 0-1 39 pri chorus 0-15 40 pri reverse sound 0-1 41 sec instrument 0-255 42 sec sound start offset 0-127 43 sec tuning (coarse) -36 to +35 44 sec tuning (fine) -64 to +63 45 sec volume 0-127 46 sec pan -7 to +7 47 sec delay 0-127 48 sec low key 0-127 49 sec high key 0-127 50 sec alt. volume attack 0-99 51 sec alt. volume hold 0-99 52 sec alt. volume decay 0-99 53 sec alt. volume sustain 0-99 54 sec alt. volume release 0-99 55 sec alt. volume envelope on 0-1 56 sec solo mode 0-1 57 sec chorus 0-15 58 sec reverse sound 0-1 59 crossfade mode 0-2 60 crossfade direction 0-1 61 crossfade balance 0-127 62 crossfade amount 0-255 63 switch point 0-127 64 LFO 1 shape 0-4 65 LFO 1 rate 0-127 66 LFO 1 delay 0-127 67 LFO 1 variation 0-127 68 LFO 1 amount 0-127 69 LFO 2 shape 0-4 70 LFO 2 rate 0-127 71 LFO 2 delay 0-127 72 LFO 2 variation 0-127 73 LFO 2 amount 0-127 74 aux. envelope delay 0-127 75 aux. envelope attack 0-99 76 aux. envelope hold 0-99 77 aux. envelope decay 0-99 78 aux. envelope sustain 0-99 79 aux. envelope release 0-99 80 aux. envelope amount -128 to +127 81-86 key / vel source 1-6 0-1 <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:24 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(8/10 Date: Mon, 24 Jan 1994 20:41:03 GMT Message-ID: <1994Jan24.204105.13530@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 8 Of 10 *****>> 87-92 key / vel dest 1-6 0-33 see note 13 93-98 key / vel amount 1-6 -128 to +127 99-106 realtime source 1-8 0-9 107-114 realtime dest 1-8 0-24 see note 13 115-117 footswitch dest 1-3 0-10 118-121 controller amount A-D -128 to +127 122 pressure amount 0-127 123 pitch bend range 0-13 124 velocity curve 0-5 125 keyboard center 0-127 126 effect routing 0-3 127 keyboard tuning 0-5 Global / Setup Parameters Parameter# Parameter Name Range 256 MIDI basic channel 0-15 257 MIDI volume (basic channel) 0-127 258 MIDI pan (basic channel) -8 to +7 A value of -8 = "P" The entire message to set pan to P = F0 18 04 00 03 02 02 78 7F F7 259 current preset (basic channel) 0-383 260 master tune -64 to +63 261 transpose -12 to +11 262 global pitch bend range 0-12 263 global velocity curve 0-4 264 MIDI mode 0-3 265 MIDI overflow 0-1 266-269 controller A-D numbers 0-31 270-272 footswitch 1-3 numbers 0-15 273 mode change enable 0-1 274 device ID number 0-15 384-399 MIDI channel enable 0-1 400-415 MIDI program change enable 0-1 416-431 FX bus select 0-3 512-639 MIDI program / preset map 0-383 1459-1474 effect assign (Ch. 1-16) 0-3 1475 effect A type 0-19 1477-1486 effect A parameter values 0-100 1487 effect B type 0-5 1489-1498 effect B parameter values 0-100 1499 pan -> effect A amount 0-14 Note 12 - Sound Sets A Music Module sound set consists of sample data (sound ROMs), plus additional instrument data in the program ROMs. Each sound set has a unique ID number. The sound set for the Music Module is #5. It is necessary to include the sound set number as part of the instrument number when exchanging data. The complete instrument number contains two fields: bits 8-12 specify the sound set (0- 31) and bits 0-7 specify the instrument within the sound set (0- 255). +----------------------------------------------------------------+ | Instrument Bit Fields: | | | | 12 8 7 | | 0 | | <-- sound set --> <---------- instrument # ----------> | | (5 bits) (8 bits) | +----------------------------------------------------------------+ With any given sound set, the first instrument is #1 and #0 selects "None". The "magic number" 1280 represents the start number for the standard Music Module instruments. To calculate the complete instrument number, follow the instructions below: SysEx Instr.No. = 1280 + Music Module Instr. No. Next you must convert the SysEx Instr. No. to a 14-bit MIDI number. See the information in the following pages. Example: Suppose we want to change the instrument to I002 Piano Pad.: 1) 1280 + 2 = 1282 2) 1282 / 128 = 10 r-2 = 10 (ignore remainder) 3) 10 in Hex = 0A = msb 4) remainder 2 in Hex = 02 = lsb 5) SysEx Instrument Number = lsb msb 02 0A <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:26 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(9/10 Date: Mon, 24 Jan 1994 20:41:09 GMT Message-ID: <1994Jan24.204110.13591@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 95 <<***** Split Message. Part 9 Of 10 *****>> The complete message number to change the primary instrument to #002: F0 18 04 00 03 17 00 02 0A F7 14-bit Signed 2's Complement Numbers If the data value is negative, you must first take the 2's complement of the number: In case of a 14-bit number, this is equivalent to adding 16384 to the original negative value. To fit the 7 bit MIDI protocol, numbers must be "nibble-ized". To get the 14-bit nibble-ized value (of a positive value or a 2's complemented negative value): msb = value DIV 128 (divide and ignore the remainder) lsb = value MOD 128 (divide and use only the remainder) To go the other way (convert 14 bit signed 2's complement to a signed real number) Raw Value = (msb*128)+lsb (gives you the unsigned raw value) if Raw Value 8192 (8192 = 2^13) then Signed Value = Raw Value - 16384 (16384 = 2^14) Example: To find the "nibble-ized" Hex value of -127: 1) -127 + 16384 = 16252 2) 16252 _ 128 = 126 r-124 3) 126 in Hex = 7E = msb 4) 124 in Hex = 7C = lsb 5) Parameter value would be transmitted as 7C 7E Example: To find the "nibble-ized" Hex value of parameter #257: 1) 257 / 128 = 2 r-1 2) 2 in Hex = 02 = msb 3) 1 in Hex = 01 = lsb 4) Parameter number would be transmitted as 01 02 Note 13 - Patchcord Destinations The order in which patchcord destinations appear on the screen does not necessarily match the SysEx ordering. Key/Velocity Controllers MIDI value Destination 0 Off 1 Pitch 2 Primary Pitch 3 Secondary Pitch 4 Volume 5 Primary Volume 6 Secondary Volume 7 Attack 8 Primary Attack 9 Secondary Attack 10 Decay 11 Primary Decay 12 Secondary Decay 13 Release 14 Primary Release 15 Secondary Release 16 Crossfade 17 LFO 1 Amount 18 LFO 1 Rate 19 LFO 2 Amount 20 LFO 2 Rate 21 Auxiliary Envelope Amount 22 Auxiliary Envelope Attack 23 Auxiliary Envelope Decay 24 Auxiliary Envelope Release 25 Sound Start 26 Primary Sound Start 27 Secondary Sound Start 28 Pan 29 Primary Pan 30 Secondary Pan 31 Tone 32 Primary Tone 33 Secondary Tone Realtime Controllers MIDI value Destination 0 Off 1 Pitch 2 Primary Pitch 3 Secondary Pitch <<***** Continued Next Message *****>> --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285 From andrew.maclean@rose (andrew maclean) Wed Jan 26 16:21:37 1994 Newsgroups: comp.sys.ibm.pc.soundcard From: andrew.maclean@rose.com (andrew maclean) Subject: SoundEngine / WB Doc(10/1 Date: Mon, 24 Jan 1994 20:41:15 GMT Message-ID: <1994Jan24.204117.13652@rose.com> X-Gated-By: Usenet <==> RoseMail Gateway (v1.70) Organization: Rose Media Inc, Toronto, Ontario. Lines: 60 <<***** Split Message. Part 10 Of 10 *****>> 4 Volume 5 Primary Volume 6 Secondary Volume 7 Attack 8 Primary Attack 9 Secondary Attack 10 Decay 11 Primary Decay 12 Secondary Decay 13 Release 14 Primary Release 15 Secondary Release 16 Crossfade 17 LFO 1 Amount 18 LFO 1 Rate 19 LFO 2 Amount 20 LFO 2 Rate 21 Auxiliary Envelope Amount 22 Auxiliary Envelope Attack 23 Auxiliary Envelope Decay 24 Auxiliary Envelope Release Realtime Controllers MIDI value Source 0 Pitch Wheel 1 Controller A 2 Controller B 3 Controller C 4 Controller D 5 Key Aftertouch 6 Channel Aftertouch 7 LFO 1 8 LFO 2 9 Auxiliary Envelope Footswitch Controllers MIDI value Destination 0 Off 1 Sustain 2 Primary Sustain 3 Secondary Sustain 4 Alternate Volume Envelope 5 Primary Alternate Volume Envelope 6 Secondary Alternate Volume Envelope 7 Alternate Volume Release 8 Primary Alternate Volume Release 9 Secondary Alternate Volume Release 10 Cross Switch | Internet: andrew.maclean@rose.com | Andrew MacLean | | or: AMM@BMBCOMP.UUCP | Milton,Ontario | --- VbReader 2.01 #NR A "program" is used to turn data into error messages. RoseMail 2.50 : RoseNet<=>Usenet Gateway : Rose Media 416-733-2285