Lexicon PCM 80 V1.10, PCM 80 Midi Implementation Manual

PCM 80 Version 1.10
MIDI Implementation Details
© 1996, Lexicon, Inc. AllRights Reserved
Lexicon, Inc. • 3 Oak Park • Bedford, MA 01730 USA • Tel 781-280-0300 • Fax 781-280-0490
Lexicon Part No. 070-11486
www.lexicon com
Contents
Overview ............................................................1
Autoconfiguration ...............................................1
Types of System Exclusive Messages...............1
Enabling System Exclusive Messages ..............2
ASCII Character Data ........................................2
Numeric Values..................................................2
Nibbleized Data..................................................2
Data Errors.........................................................2
Timing Considerations .......................................2
SysEx Automation..............................................3
Other MIDI Implementation notes ......................3
System Exclusive Message Descriptions.............4
System Exclusive Message Header Block.........4
Table of SysEx Identifiers ..................................4
0x00 System Configuration Response...............5
0X01 Bank Dump...............................................6
0X02 Single Effect Dump...................................6
Single Effect Data ......................................7
Patch Save Data........................................8
0X03 Table Dump ..............................................8
0X04 Table Element Dump................................9
0X05 Chain Bulk Dump......................................9
0X06 Single Chain Dump.................................10
0X07 Chain Element Dump .............................10
0X08 Display Dump .........................................10
0X0B Parameter Dump....................................11
0X0C Button Dump ..........................................12
0X12 Soft Row Assignment Dump...................12
0X13 Patch Assignment Dump ........................13
0X14 Knob Message........................................14
0X15 Program Change Dump..........................14
0X16 Parameter Specific Response ................15
0X17 Parameter Display Response.................15
0X18 System Setup Dump...............................16
0X19 Save Current Edit Buffer Message .........16
0X1A Effect Information Response..................17
0X1C Adjust Knob Name Dump ......................17
0X1E Verbose Dump .......................................17
0X1F LED Response .......................................18
0X20 Meter Response .....................................18
0X21 Patch Display Response ........................19
0X22 Matrix Mapping Response......................19
0X23 Adjust Knob Value Dump .......................19
0X24 Soft Row Display Response ...................20
0X7C Failure Response...................................20
0X7F Data Request .........................................21
PCM 80 Algorithms ...............................................22
Algorithm 0: Plate.............................................22
Algorithm 1:Chamber .......................................23
Algorithm 2: Infinite ..........................................24
Algorithm 3: Inverse .........................................26
Algorithm 4: Concert Hall .................................27
Algorithm 5: M-Band+Rvb................................28
Algorithm 6: Glide>Hall ....................................30
Algorithm 7: Chorus+Rvb.................................31
Algorithm 8: Res1>Plate ..................................33
Algorithm 9: Res2>Plate ..................................34
Appendix A: Patch Sources by Index .................36
Remapping of MIDI Controllers........................36
Patch Source Table .........................................36
Appendix B: MIDI Bank Assignments .................37
Appendix C: MIDI Inquiry Message .....................38
Appendix D: List of Error Messages ...................39
Appendix E: System (Type 0) Parameters ..........40
Appendix F: Patchable (Type 1) Parameters ......42
Appendix G: Non-Patchable (Type 2)
Parameters .....................................................43
MIDI Implementation Chart...................................44
Lexicon
PCM 80 Version 1.10 MIDI Implementation Details
PCM 80
Version 1.10 MIDI Implementation Details
An ASCII text version of this document is available on CompuServe under section seven of the MIDI B forum. To access these documents:
Enter CompuServe, type GO MIDIBVEN
Select "section seven: Lexicon"
Enter the Lexicon library
Overview
The Lexicon PCM 80 is a complex device with an involved MIDI System Exclusive implementation. This document describes the Version 1.10 PCM 80 MIDI implementation, and assumes familiarity with the functions and operations of the PCM 80. MIDI Implementation information relevant to PCM 80 algorithm cards, or to Version 1.00 software, is available in separate documents
The most substantial changes to MIDI implementation between Versions 1.00 and 1.10 are in the area of effects and bank dumps. Although the data compression used in Verson 1.00 has been eliminated, Version 1.10 will accept dumps in that format. The software version of any PCM 80 can be determined using the MIDI Inquiry Message, described in Appendix C of this document.
Autoconfiguration
To aid development of editors and librarians which will remain useful through the lifetime of the PCM 80, regardless of the addition of new algorithms, we have provided a number of new System Exclusive messages that allow a librarian to autoconfigure when it encounters new algorithms. Messages which are particularly useful in autoconfiguration are:
System Configuration Response Parameter Specific Response Parameter Display Response Effect Information Response Patch Display Response Matrix Mapping Response Soft Row Display Response Data Request Direction of Data Transfer
Types of System Exclusive Messages
There are several types of System Exclusive messages: Data Requests, Messages, Responses and Data Dumps.
Data Requests A request is initiated by a remote device (never by a PCM 80). A request usually results
in a dump. A request for data causes no change in the state of the PCM 80.
Messages A message is sent by a remote device to a PCM 80. It is a command for which there is
no response, such as a knob message. It may cause a change in the state of the PCM
80.
Responses A response is a data packet that is sent from the PCM 80 to another device, always as
the result of a request by that device A response is never sent to the PCM 80 (It may be harmlessly transmitted to a PCM 80, but results in no change in the PCM 80).
1
LexiconPCM 80 Version 1.10 MIDI Implementation Details
Data Dumps A dump contains information about some aspect of the PCM 80’s internal state. A dump
is transmitted by a PCM 80, eitheron request to another device, or to another PCM 80 (via front panel dump commands or SysEx Automation). When a dump is transmitted to a PCM 80, it will normally cause a change in the internal state of the PCM 80. A dump can also be purely informational, containing version information, etc. This sort of dump may be received by a PCM 80 but results in no change. It is initiated only as the result of an external request and may be considered as unidirectional.
Enabling System Exclusive Messages
The PCM 80 must be enabled via the front panel controls for receipt of System Exclusive messages. If System Exclusive message receipt is not enabled, all System Exclusive messages are ignored. The status of both the PCM 80 Memory Protect function and PCM 80 Pro and Go Edit modes are ignored when System Exclusive is enabled.
ASCII Character Data
Many of the System Exclusive messages include ASCII character data. This refers to the values between 0x20 (space) and 0x7E (tilde). No other values should be used. Character fields should be padded with spaces — the C NULL-terminator should not be used. When the PCM 80 receives an out-of-range value, it will convert that value to a space. The small block character on the PCM 80 display (used to indicate patch source/destination) is transmitted as a tilde. It is not possible to transmit this character to the PCM 80 via System Exclusive messages. The ASCII backslash character (0x5c) maps to the yen character (¥)on the PCM 80 display.
Numeric Values
Any numeric values greater than one byte are transmitted from least-significant to most-significant.
Nibble-ized data
Some data (most importantly effect data) is transmitted in a nibble-ized format, i.e. each byte of data is transmitted as a pair of bytes, with 4 bits of data in each byte. As in all other cases in the PCM 80, the less­significant portion of the byte is transmitted first.
Data Errors The PCM 80 will display System Exclusive errors when it encounters any of a number of problems, including checksum errors and early termination of a System Exclusive message (too few characters). It will also report back to the sender of a System Exclusive message if it cannot fulfill a legally formatted request. This covers situations such as bank-not-present, etc.
Timing Considerations
As some messages require significant time to process, System Exclusive information should not be sent to the PCM 80 in bursts of more than 3 messages every 20ms. The individual message descriptions presented later in this document note any specific time out requirements.
2
Lexicon
PCM 80 Version 1.10 MIDI Implementation Details
SysEx Automation
SysEx Automation is intended primarily for facilities using multiple PCM 80s in identical modes of operation. This mode, which is enabled from the PCM 80 front panel, asumes that all units have the same effects in the same locations and the same algorithm cards loaded, and that a single master unit front panel is controlling all slaved units. (Only front panel operations are transmitted as SysEx automation commands.) Ideally, the master’s Target ID (Control 3.4) should be set to All. The MIDI inputs of all slave units must be connected directly to the master MIDI OUT. This requires a MIDI THRU box if there is more than one slave. This is not an appropriate mode for effect editing.
The displays of the slaves do not necessarily track the display of the master, although the internal states do. Although knob turns and button pushes are not transmitted, the actual parameter values are. This guarantees that the slave units will be locked directly to the master values. The only exceptions to this are the Tap, Compare and Bypass buttons, whose states are transmitted to the slaves because they change the internal state of the device. The others are visual only.
Not all system parameters are transmitted by SysEx Automation. Those which are transmitted are listed in Appendix E.
Other MIDI Implementation notes
MIDI Controller 32 is used for Bank Select. MIDI Controller 0 (normally the most significant bits of Bank Select) is ignored.
Program Change messages may be lost if they are sent to the PCM 80 before previous Program Change messages are completed. Controller Data may be sent at full MIDI speed, with no loss of data.
3
LexiconPCM 80 Version 1.10 MIDI Implementation Details
System Exclusive Message Descriptions
System Exclusive Message Header Block
All SysEx messages are preceded by the standard header.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID Values 0-126 are defined as specific addresses. Any mes-
5 0iii iiii SysEx Identifier Identifies the type of message. All System Exclusive mes-
6-(n-1) Message-specific bytes See individual descriptions
n F7 EOX End of exclusive
Table of SysEx Identifiers
The following table provides a quick reference for the System Exclusive messages which are described in detail in the following pages.
sage sent to device 127 will be received by any PCM 80 on the cable as long as it is enabled to receive System Exclusive messages.
sages in this document are described by this identifier. Iden­tifiers which are not used should be considered as reserved and should not be used.
Identifier (Hex) Name of Message
0x00 System Configuration Response 0x01 Bank Dump 0x02 Single Effect Dump 0x03 Table Dump 0x04 Table Element Dump 0x05 Chain Bulk Dump 0x06 Single Chain Dump 0x07 Chain Element Dump 0x08 Display Dump
0x09-0x0A reserved
0x0B Parameter Dump 0x0C Button Dump
0x0D-0x11 reserved
0x12 Soft Row Assignment Dump 0x13 Patch Assignment Dump 0x14 Knob Message 0x15 Program Change Dump 0x16 Parameter Specific Response 0x17 Parameter Display Response 0x18 System Setup Dump 0x19 Save Current Edit Buffer Message 0x1A Effect Info Response 0x1B reserved 0x1C Adjust Knob Name Dump 0x1D reserved 0x1E Verbose Dump Message 0x1F LED Response 0x20 Meter Response 0x21 Patch Display Response 0x22 Matrix Mapping Response 0x23 Adjust Knob Value Dump 0x24 Soft Row Display Response
0x25-0x7B reserved
0x7C Failure Response
0x7D-0x7E reserved
0x7F Data Request
4
Lexicon
PCM 80 Version 1.10 MIDI Implementation Details
0x00 System Configuration Response
This response is transmitted by the PCM 80 to a remote device when requested. It is ignored by the PCM
80. Note that this is not a Setup Dump — it is purely informational.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x0 Configuration Data 6 0iii iiii Major Version # This is the version number that appears to the left of the decimal
7 0iii iiii Minor Version # This is the version number that appears to the right of the decimal
8-15 0iii iiii 8 Byte Time string Time of the code build in ASCII format xx:yy:zz
16-26 0iii iiii 11 Byte Date string Date of the code build in ASCII format: xxx:yy:zzzz
27-34 0000 iiii 56000 memory page count
4-byte value (nibble-ized) Number of pages (64K words/page) of memory available to the
35-148 0iii iiii 114 Byte Bank information
(Space for 57 banks) Indexed by bank, 2 characters/bank. First character=bank size.
149 0n Card Present non-zero if present 150 0n Card Write Protect non-zero if protected 151 0iii iiii Card Version Indicates the version of the card directory structure. This should be
point on the the integer portion of the power up display.
point on the fractional portion of the power up display. On the front panel this may be displayed as a 2-character value with a leading zero. For example, a minor revison of 1 will appear as x.01. A minor revision of 10 will appear as x.10
(Hours:Minutes:Seconds)
(Month:Day:Year)
Motorola 56002 processor. The number of pages in a standard PCM 80 is 4. Memory can be expanded using SIMM memory.
(0=bank not present.) A non-zero in the second byte indicates that the bank is a non-writeable preset bank.
ignored if the Card Present bit is not set.
152 0iii iiii Card Type Types are:
153-162 0iii iiii 10 Byte Name string for card This should be ignored if the Card Present bit is not set.
163 0iii iiii Page count Indicates the amount of memory available on the card. 1 page=64K.
164 0iii iiii Count of algorithms online Number of valid algorithm IDs in the array beginning at byte 165.
165-228 0iii iiii 64 Byte List of algorithm IDs Only count from byte 164 is valid.
229 0iii iiii Current User Interface Mode 0=Control; 1=Tempo; 2=Edit; 3=Program; 4=Register. Mode and
230 0iii iiii User interface in a Submode 0=False; 1=True. A submode is defined as a state of the machine
231 0iii iiii Compare mode 0=Off, 1=On 232 0iii iiii Bypass 0=Off, 1=On 233 0xF7 End of SysEx
0x00=ROM (holds algorithms or presets) 0x01=RAM (holds user effects, maps, setups and chains) 0x80=Bootable Diagnostics card. This should be ignored if the Card Present bit is not set.
For example, 0x10 indicates 1 megabyte. This should be ignored if the Card Present bit is not set.
These are the algorithms currently available to the system and include internal algorithms plus any algorithms loaded from card. Algorithms for any card not loaded into the system will not appear here.
submode are purely informational and do not affect PCM 80 ability to respond to MIDI.
that is different from that caused by pressing Control, Tempo, Edit, Program Banks or Register Banks. This includes any of the dialog modes such as saving an Effect, etc.
5
LexiconPCM 80 Version 1.10 MIDI Implementation Details
0x01 Bank Dump
This is a bidirectional dump of an entire bank of effects. It is initiated from the front panel as a Bank Dump.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x1 Effect bulk Data 6 0iii iiii Bank # Source bank if sent by PCM 80; target bank if received by PCM 80.
7-70656 xxxxxxxx 50 Single effect
data packets, with checksums after each See Description of Nibble-ized Effect Data.
70657 0xF7 End of SysEx
See appendix for indices of banks.
Note that as it is possible for a bank to be sparsely populated (for example, when a user has only a small number of effects saved in bank 4 or 5) it is important to check the Flags byte for each effect. (See Single Effect Data for a description of the Flags byte.)
Note also that for any effect to be successfully transmitted or received by the PCM 80, the supporting algorithm must be present (not necessarily running) in the unit. Internal algorithms are always present, whereas Card algorithms are only present if the card has been loaded. If an effects packet is transmitted without the algorithm present, an error message is displayed on the screen. Such cases also cause special formatting of the effects packet. See Single Effect Data for details.When an effects packet is received without the algorithm present, an error message is displayed and the destination remains unchanged.
0x02 Single Effect Dump
This is a bidirectional dump initiated from the front panel as a Current Effect Dump. All numeric values appear LSB first.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x02 Single Effect Data 6 0iii iiii Bank # If both the Bank and Program values are set to 0x7F, the dump is
7 0iii iiii Program #
8 - 1419 Nibbleized effect data See next section for description.
1420 Checksum This 7-bit value is a simple additive checksum that starts at the
1421 0xF7 End of SysEx
that of the current edit buffer. If the dump is received by a PCM 80, the incoming data will go into the edit buffer (loading the new preset) but the dump is not stored anywhere else in the target system.
beginning of nibble-ized data.
The algorithm used by the effect must be present (not necessarily loaded) in the receiving unit for this message to be received. If the algorithm is not present, an error message is displayed.
Nibble-izing takes place in least-significant order. All parameters here are described as after nibble-izing has been undone. As any of these structures may appear in a number of locations, offsets are listed as relative offsets.
6
Lexicon
PCM 80 Version 1.10 MIDI Implementation Details
Single Effect Data
Byte
Offset Size Description Notes
0 16-bit (LSB first) Flags 0xffff=Valid Effect; 0xfffe=Blank effect slot. This is only sent during a
bank dump when certain positions in the bank are empty. Any other value indicates that the effect was originally dumped from a Version 1.00 ROM. The internals of the dump differ from what is described here. Note that the version 1.10 ROM will accept effect dumps from Version 1.00 — the version 1.00 ROM will NOT accept dumps from V1.10.
2 8-bit Algorithm ID The algorithm must be present in the unit for this packet to be transmitted
3 8-bit Edit Matrix Position Position in edit matrix when Edit is pressed. Upper nibble represents
4-15 12 Bytes Effect Name Name of effect. See notes on ASCII Character Data in the Overview.
16-24 9 Bytes Knob Name Name of Soft Knob. See notes on ASCII Character Data in the Overview.
25 1 Byte Adjust Knob Value Stored value for the Soft Knob.
26-35 10 Bytes Soft row assignments See Soft Row Assignment Dumps. 36-65 16-bit (LSB first)
Type 2
Parameter Values Multiple values (15) This field is an indexed array of values for all Type 2 parameters. See
66-395 Set of 110
3-Byte values Type 1 values (110) This field is an indexed array of values for all Type 1 parameters.
396 31 Bytes Patch Structure 0 This structure describes a single patch. Its fields are described in the
427 31 Bytes Patch Structure 1 458 31 Bytes Patch Structure 2 489 31 Bytes Patch Structure 3 520 31 Bytes Patch Structure 4 551 31 Bytes Patch Structure 5 582 31 Bytes Patch Structure 6 613 31 Bytes Patch Structure 7 644 31 Bytes Patch Structure 8 675 31 Bytes Patch Structure 9
706 End of Data End of Data End of Data
or received. This packet has a special format if the algorithm is not present when the packet is transmitted. The value 0x7F replaces the Algorithm ID which is placed in the Edit Matrix Position. The Effect Name is properly transmitted, but the remainder of the packet is 0.
column; lower nibble represents row. See previous note in the case of algorithm not present.
Appendix G: Non-Patchable (Type 2) Parameters.
1 Byte=Tempo Flag (1 if Tempo Mode); 2 Bytes=Value. If Tempo Mod =0, then this is a 16-bit value (LSB first). If Tempo Mode=1,
then 1st byte is numerator and 2nd byte is denominator. The first 22 parameters are the same for all algorithms. The remaining are unique for each algorithm. See Appendix F: Patchable (Type 1) Parameters.
Patch Save Data table following this section.
7
Patch Save Data
Byte
Offset Size Description Notes
0 8-bit Valid Flag 0=patch not connected, ignore following data; 1=patch connected,
following data valid.
1 8-bit Tempo Mode 0=Target parameter not in Tempo Mode; 1=Target parameter in Tempo
Mode. This must match the tempo flag field for the Type 1 parameter that
is the target of the patch. 2 1 Byte Patch Source See the Patch Source Table in Appendix A. 3 1 Byte Destination List ID The value for the Destination List ID is returned by the Parameter
Specific Response (0x16). 4 2 Bytes (LSB first) Destination List Index The value for the Destination List Index is returned by the Parameter
Specific Response (0x16). 6 1 Byte Point Count 0-8=number of points in the patch. 0 is interpreted in the same way as a
Valid Flag of 0. 7 8 3-byte values Patch Point Values Values for each of 8 possible pivot points. Fields are interpreted as: 1
Byte=Position (0-127). These should be in ascending order. 2
Bytes=Value of target parameter at the pivot point. Only the first Point
Count of these values is meaningful. The remainder should be transmit-
ted as 0’s.
31 End of Data End of Data End of Data
LexiconPCM 80 Version 1.10 MIDI Implementation Details
0x03 Table Dump
This is a bidirectional dump (initiated from the front panel as a Map Dump) which describes a complete program table (map).
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x3 Table Data 6 0iii iiii Table (map) # Unlike some other objects, there is no “current” table, so the 0x7F value
7 0iii iiii Bank for table
position 0 Any legitimate bank. See Appendix B: MIDI Bank Assignments. If
8 0iii iiii Offset for table
position 0 0 - 49
9-262 Bank/offset for positions 1-127
263 0xF7 End of SysEx
has no function in this case. There are normally 2 tables in the box (0 and
1). If a RAM card is in place, there are two additional tables (2 and 3).
nothing is assigned to this position in the table, a value of 0x7F is
returned.
8
Lexicon
PCM 80 Version 1.10 MIDI Implementation Details
0x04) Table Element Dump
This is a bidirectional dump which describes a single position in a program table (map).
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x4 Table Element Data 6 0iii iiii Table (map) # 7 0iii iiii Offset in table 0-127 8 0iii iiii Bank Any legitimate Bank index. See Appendix B: MIDI Bank Assignments. If
9 0iii iiii Offset 0-49
10 0xF7 End of SysEx
nothing is assigned to this position in the table, a value of 0x7F is returned.
0x05 Chain Bulk Dump
This is a bidirectional dump, initiated from the front panel as a Chain Bulk Dump, which describes a set of program chains (either the internal set of 10 or a card set of 10).
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x5 Chain bulk 6 0000 000i Internal/Card 0=Internal; 1=Card
7-26 0iii iiii Data for chain 0
27 - 206 Data for chains 1-9
207 0xF7 End of SysEx
(10 if card) See following description for Single Chain Dump.
(11-19 if card)
9
LexiconPCM 80 Version 1.10 MIDI Implementation Details
0x06 Single Chain Dump
This is a bidirectional dump, initiated from the front panel as a Chain Dump, which describes a complete program chain.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x6 Chain Data 6 0iii iiii Chain # Unlike some other objects, there is no “current” chain, so the value 0x7F
7 0iii iiii Bank for chain
position 0 Any legitimate Bank index. See Appendix B: MIDI Bank Assignments. If
8 0iii iiii Chain position offset 0-49
9-26 Bank/offset for
positions 1-9
27 0xF7 End of SysEx
has no effect here. Normally there are 10 chains available (0-9). If a RAM
card is in place, an additional 10 chains (10-19) are available.
nothing is assigned to this position in the table, a value of 0x7F is
returned.
0x07 Chain Element Dump
This is a bidirectional dump which describes a single position in a program chain.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x7 Chain Element Data 6 0iii iiii Chain # 7 0iii iiii Offset in chain 0-9 8 0iii iiii Bank Any legitimate Bank index. See Appendix B: MIDI Bank Assignments. If
9 0iii iiii Offset 0-49
10 0xF7 End of SysEx
nothing is assigned to this position in the table, a value of 0x7F is
returned.
0x08 Display Dump
When sent from the PCM 80, this bidirectional dump holds the current display information, whatever it is. When sent to the PCM 80, this text is displayed for 2 seconds.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x08 Display message
6-25 0iii iiii Top line of display 20-byte copy of upper display line.
26-45 0iii iiii Bottom line of display 20-byte copy of lower display line.
46 0xF7 End of SysEx
10
Lexicon
PCM 80 Version 1.10 MIDI Implementation Details
0x0B Parameter Dump
This is a bidirectional message used when a PCM 80 is transmitting SysEx Automation data. It may be transmitted or received by a PCM 80. Parameter types include:
Type 0 System Parameters: Parameters such as MIDI Channel, Edit Mode (Pro or Go), Mix Mode, etc. which are not saved with an effect, but are part of the system setup.
Type 1 Patchable Parameters: Includes all parameters that can be patch destinations These are saved with an effect.
Type 2 NonPatchable Parameters: Parameters such as envelope threshold which are saved with the effect but cannot be patch destinations.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0B Parameter Value 6 0x Parameter Type 0=system; 1=patchable;
7 0iiiiiii Parameter Offset See appendix according to type. 8 0000000i Tempo Mode Flag 0=Absolute mode; 1=Tempo Mode. This flag defines the following value
9 0000iiii Least-significant nibble
of absolute value or numerator byte Out-of-range values transmitted to PCM 80 will be adjusted to legal
10 0000iiii Next nibble of absolute
value or numerator byte
11 0000iiii Next nibble of absolute
value or denominator byte
12 0000iiii Most-significant nibble
of absolute value or denominator byte
13 F7 End of SysEx
2=nonpatchable
field as being an absolute 16-bit value (Flag=0) or a ratio value split into bytes (Flag=1). It also forces the parameter into the appropriate mode. This flag should be 0 except for those parameters that support Tempo Mode. See the flags field for the appropriate parameters in the appendi­ces describing the algorithms or use the Parameter Specific Response.
values.
11
LexiconPCM 80 Version 1.10 MIDI Implementation Details
0x0C Button Dump
This is bidirectional. Those buttons which are transmitted in SysEx automation mode are: Compare, Tap and Bypass.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0xC Button message 6 0iii iiii Button # 0=Up; 1=Down
7 0xF7 End of SysEx
2=Program Banks;
3=Load
4=Register Banks
5=Store;
6=Edit
7=Compare
8=Control
9=Bypass
10=Tempo
11=Tap
12=Reserved
13=Footswitch 1
14=Reserved
15=Footswitch 2
Button messages may be sent in quick succession (faster than 40ms) to mimic holds. For example, sending Program Banks every 20ms for 1 second will cause the Help message for the key to be displayed, just as if the key on the front panel were held down. Multiple key combinations can also be sent by sending button messages in quick succession. For example, sending an Up message immediately followed by a Down message causes the user interface to go to position 0.0 in the current matrix, just as if the two buttons were pressed simultaneously.
0x12 Soft Row Assignment Dump
Bidirectional. Assigns a Pro mode slot to a Go mode soft slot.
Byte # Byte Value Description Notes
1 F0 SysEx ID 2 06 Lexicon ID 3 07 PCM 80 ID 4 0iii iiii Device ID 5 0x12 Soft Row Assign 6 0n Soft Row Slot (0-9) 7 0n Substitute Row (0-9). This is the row/column that will appear in the soft row slot. A soft row
8 0n Substitute Column (0-9) 9 0xF7 End of SysEx
position may be de-assigned if row and column are both set to 0x0F. The number of rows and columns is dependent on the current algo­rithm.
12
Loading...
+ 34 hidden pages