Special Commands and Parameters

Besides strings of constant Hex values (bytes), commands can be programmed with special characters and with converted parameter values. Examples of the special characters include the two special values to perform a communications break. The communications break is formed by a data zero event that extends beyond the normal data bit length permitted in the serial data word (for example, serial word length of 8-Odd-1Stop bit is 1+8+1+1 = 11 bits long). The commonly used minimum length for break is 17 bits long or one and a half to two data-words. To implement a break in custom devices, there needs to be a [Break On], a [Break Off], and an optional delay in between.

Certain commands pass a parameter to the custom device driver that can be converted into a string of bytes using a special packed command in place of a single byte. Only one of these special command lines may appear in any given command slot (since only one parameter is ever passed). This command line is converted during runtime into the specified one to four bytes of parameter data, and included at that location in the command string. One command tag that gets a parameter is the Cue to Clip command. The value passed when a Cue to Clip command is triggered is the desired cue time as represented in a packed word timecode format. Typically, this value must then be converted into some representation of packed timecode bytes to be sent to the external device.

Table 1. Packed Command Flags
Special Name Function
[Break On] Force the outputs to data low value (for RS-232 data low is a positive voltage).
[Break Off] Release the outputs from a forced data low.
[Checksum] Insert the checksum byte (currently supports only simple 8-bit additive checksum).
[Posn X] Not currently supported.
[Posn Y] Not currently supported.
[Posn Z]] Not currently supported.
[Param…] Parameter from Table 2.
Table 2. Parameter Formatting Flags
Special Name Function
Hex Parameters are taken as-is and are converted into string of bytes (1-4). If the parameter is already in a packed BCD format, then using Hex format will preserve the BCD format of the parameter.
ASCII Hex Text representation of the above Hex format.
BCD Binary Coded Decimal (each nybble represents 1 digit 0-9). This command converts a parameter that is in non-BCD format to a BCD format.
ASCII BCD Text representation of the above “BCD” format. This command converts a parameter from a non-BCD format to a text representation of the equivalent BCD format.
Mot Motorola ordering. Most Significant Byte (MSB) first, LSB last.
Int Intel ordering. Least Significant Byte (LSB) first, MSB last.
Scaled (Sca) Re-scales a 12-bit parameter to fit output range.
ASCII Extended (Ext) Extends up the output to an even number of digits/characters without changing the output range.
Signed (Sign) Internal use — sign conversion.
Table 3. BCD Width Description
BCD Width Motorola Description
1 Digit 1 byte of 1 digit, [00] to max [09]
2 Digit 1 bytes of 2 packed digits each, [00] to max [99]
3 Digit 1 bytes of 2 packed digits and 1 byte of 1 digit, [00][00] to max[09][99]
4 Digit 2 bytes of 2 packed digits each, [00][00] to max[99][99]
5 Digit 2 bytes of 2 packed digits and 1 byte of 1 digit, max [09][99][99]
6 Digit 3 bytes of 2 packed digits each, max [99][99][99]
7 Digit 3 bytes of 2 packed digits and 1 byte of 1 digit, max [09][99][99][99]
8 Digit 4 bytes of 2 packed digits each, max [99][99][99][99]
Table 4. Hexadecimal Width Description
Hex Width Motorola Description
4 Bits [00] to [0F]
8 Bits [00] to [FF]
12 Bits [00][00] to [0F][FF] (or Intel [FF][0F])
14 Bits [00][00] to [3F][FF] (or Intel [FF][3F])
15 Bits [00][00] to [7F][FF] (or Intel [FF][7F])
16 Bits [00][00] to [FF][FF]
24 Bits [00][00][00] to [FF][FF][FF]
32 Bits [00][00][00][00] to [FF][FF][FF][FF]