SysEx Filter Custom Pane (Panel Edit)
This control is unusual in that it doesn't have a display. However clicking on the control in Panel edit mode will cause it to draw a frame.
The control is used to receive incoming SysEx events and respond to these events in an appropriate way. Each time an event is received, the Activate macro for the control is executed.
This control only processes SysEx events. To process standard MIDI events, use the MIDI Filter control.
SysEx Filter Parameters
The SysEx Filter parameters are divided into a number of groups. You need to set up the filter to determine which SysEx events are processed and.where their information is stored.
This control can analyse messages which are up to 32 bytes in length. There must be a successful match of each byte up the the byte set to "End" for the message to be processed. It is best to be as accurate as possible about received bytes so that only the SysEx messages you want are processed. Any one mismatch is considered a failure and processing stops. The possible options are:
-- any value -- - the byte can be any value and and it is considered a "success"
0 - 255 - the byte must match exactly or it is considered a mismatch
vbase + 0 -> vbase + 10 - always considered successful. The value in this byte is stored in a V variable specified by the Variable Base parameter.
end - if the analyzer reaches this point successfully then the analysis is a success and the control's activate macro is called
This parameter specifies the base address for transferring specific bytes from the incoming SysEx message into the V-variables as set by the 32-byte analyzer.
This group of 3 parameter allows an entire chunk of a SysEx message to be transferred into the V variable space.
The starting point in the SysEx message is specified by the SysEx Offset parameter
This parameter specifies where in the V variables to copy the SysEx
# of Bytes
This parameter specifies the number of bytes to transfer from the incoming SysEx to the the V variable space.
When a SysEx message is received. If it matches the criteria these three parameters determine how much of the message is transferred into V variables before the Activate macro is executed.
Direct Copy Settings
are used when the incoming SysEx message passes the filter and you want to copy a block of bytes from the incoming message into the SysEx being edited. The following four parameters are used together to perform the copy operation.
The copy operation is a formatted copy operation and accounts for the storage format of the destination SysEx.
The offset into the incoming SysEx message where the copy starts. The offset is zero based and relative to the start of the message.
The offset into the SysEx message being edited where the value is copied to. The offset is zero based and relative to the start of the SysEx data being edited (not the start of the SysEx message)
# of Bytes
The number of byte to copy from the incoming SysEx message to the SysEx being edited.
is an additional filter on incoming SysEx messages. When non-zero, the incoming message must be the specified number of bytes to be processed by the filter.
Mem Blit Parameters
contains the parameters necessary to perform a blit from incoming SysEx edit message to the SysEx within the editor. Unlike Direct Copy, this operation performs a direct memory copy operation so the format of the incoming SysEx and the destination SysEx must be the same.
This option is also more flexible in that the destination can be any SysEx in the Set, not just the current editor. It also uses VVars so it can be programmed in real time to perform different operations.
MemBlt Enable VVar
Specify a VVar whose contents determines whether the filter is currently active or no. If the contents of the VVar is zero, the filter is inactive. If it is non-zero, the filter is active. For example, enter "20" the editor will check VVar 20. If its value is non-zero then the filter is active and if the SysEx meets all criteria, a copy will occur.
MemBlt SrcOfs VVar
Specify the offset into the incoming SysEx to start the copy from.
MemBlt Dst ID VVar
Specify the ID of the editor where the SysEx is copied to. This is the ID assigned to the SysEx in its driver and is specified in the Instrument Creator window.
MemBlt DstOfs VVar
Specify a VVar which contains the offset into the SysEx specified by Dst ID where the incoming SysEx is copied to.
MemBlt Bytes VVar
Specify a VVar which dictates the number of bytes copied by the operation.