| Value | Meaning |
|---|---|
| nullcmd0x00 | Null command |
| shwait0x01 | Short wait (24 bits) |
| lnwait0x02 | Long wait (48 bits) |
| emit0x03 | Emit command list to device |
| jmp0x04 | Conditional jump |
| chain_par0x05 | Chain in pattern in parallel |
| chain_ser0x06 | Chain in pattern in serial |
| add0x07 | Add two registers, store in third |
| sub0x08 | Subtract two registers, store in third |
| mul0x09 | Multiply two registers, store in third |
| div0x0a | Divide two registers, store in third |
| mod0x0b | Modulo two registers, store in third |
| and0x0c | Binary and two registers, store in third |
| or0x0d | Binary or two registers, store in third |
| xor0x0e | Binary xor two registers, store in third |
| not0x0f | Binary invert RA, store in RD |
| lshi0x10 | Logically shift left RA by RB immediate value, store in RD |
| rshi0x11 | Logically shift right RA by RB immediate value, store in RD |
| rasi0x12 | Arithmetically shift right RA by RB immediate value, store in RD |
| adds0x13 | Add two registers, store in third (signed) |
| subs0x14 | Subtract two registers, store in third (signed) |
| muls0x15 | Multiply two registers, store in third (signed) |
| divs0x16 | Divide two registers, store in third (signed) |
| lsh0x17 | Logically shift left RA by RB, store in RD |
| rsh0x18 | Logically shift right RA by RB, store in RD |
| ras0x19 | Arithmetically shift right RA by RB, store in RD |
| mov0x1a | Move register content of RA to RD |
| satadd0x1b | Saturated add |
| satsub0x1c | Saturated subtract |
| satmul0x1d | Saturated multiply |
| satadds0x1e | Saturated signed add |
| satsubs0x1f | Saturated signed subtract |
| satmuls0x20 | Saturated signed multiply |
| cmp0x40 | Compare two register values |
| chain0x41 | Abandon current pattern to next one |
| emit_r0x42 | Emit command with value from register |
| cue0x48 | Set cue point/marker |
| trnsps0x49 | Transpose |
| ctrl0xf0 | Control command |
| display0xff | Display command |
Contains opcodes for M2 operations.