000 1ST

Do nothing. Slide up. (ST is an index in the speedtable, left and right columns combined.) Slide down (as above). Slide to note. As above, or ST = 00 slides instantly. Vibrato. Left column of ST index is frequency, right is amplitude Set attack/decay. Set sustain/release. Set waveform register to XY. Wavetable takes precedence. Set wavetable index. Set pulsetable index. Set filtertable index. Set resonance to R and channel bitmask to M. Set filter cutoff to CO. Set master volume to Y. If X is not zero, copies XY to timing mark location (player address + 3F) Global funk tempo. Shuffles between tempo specified in left and right bytes at speedtable index ST. Set tempo. 03-7F sets global tempo. 83-FF sets channel tempo + 80. Tempos 00-01 use the funk tempo values set by the E command above.

00 01-0F E0-EF F0-FE FF

Null command. Delay step by 1-15 frames Inaudible Execute track effect 0-E with right side as data Jump to table pos on right side Values from here are bitmasks r b2 2 b3 3 4 b5 -3 60 61 62 63 b6 6 b7 7 64 65 66 67 -2 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 -1 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F +0 00 01 02 03 04 05 06 07 08 09 0A 0B +1 0C 0D 0E 0F 10 11 12 13 14 15 16 17 +2 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 +3 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F +4 30 31 32 33 34 35 36 37 38 39 3A 3B +5 3C 3D 3E 3F 40 41 42 43 44 45 46 47 +6 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 +7 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F

00 01-7F

Set cutoff as right column. Filter modulation step. Time in left column, signed* extent and direction of modulation in right column. Filter configuration. Filter mode bitmask* in left column (filter can be in multiple modes); resonance is first value of right column and channel bitmask* is second value. Jump to index in right column. FF 00 means stop.

2ST 3ST

80-F0

4ST

FF

x1

5AD 6SR 7XY

Gate and initiate attack/ decay. (0 here initiates sustain/release.) Hardsync. Ch1 uses Ch3, Ch2 uses Ch1 and Ch3 uses Ch2 Ringmod, channels as above Test bit. Resets oscillator Use triangle Use sawtooth Use pulsewave Use noise

80 90 A0 B0 C0 D0 E0

none LP BP LP & BP HP LP & HP BP & HP all

0 1 2 3 4 5 6 7

none 1 2 12 3 13 23 all

x2 x4 x8 1x 2x 4x 8x

8WT 9PT AFT BRM CCO DXY

C 0 1 2 8C 98 A4 B0 BC C8 D4

C# 81 8D 99 A5 B1 BD C9 D5 sus4 05 07 79 7B 05 7B

D 82 8E 9A A6 B2 BE CA D6

D# 83 8F 9B A7 B3 BF CB D7

E 84 90 9C A8 B4 C0 CC D8

F 85 91 9D A9 B5 C1 CD D9 7 +0B +7F

F# 86 92 9E AA B6 C2 CE DA mi7 +0A +7E

G 87 93 9F AB B7 C3 CF DB b5

G# 88 94 A0 AC B8 C4 D0 DC

A 89 95 A1 AD B9 C5 D1 DD #5

A# 8A 96 A2 AE BA C6 D2 DE

B 8B 97 A3 AF BB C7 D3 DF b9 +0D 9 +0E

F0

00-5F 7F-60 80 81-DF

Relative notes* upward Relative notes* downward Unchanged note Absolute notes* C#0 to B-7

01-7F

3 4 5 6 7

Pulse modulation step: time in left column; signed* speed in right. Set pulse width. X is high value, right column is low value. Jump to index in right column. FF 00 stops the table.

EST

8X-FX FF

FXY

major root 1st inv 2nd inv 04 07 78 7B 04 7B

minor 03 07 77 7B 03 7B

dim 03 06 7A 7D 03 7D

aug 04 08 78 7C 04 7C

dim7 03 06 09 77 7A 7D 03 7A 7D 03 06 7D

#9 +0F

11 +11

#11 +12

b13 +14

13 +15

-07 +06 -7B +7A

-07 +08 -7B +7C

01 -> 7F FF -> 80

Up Down

3rd