Mistakes? Comments? Let's talk in the blog post. |
---|
|
---|
Package |
Platform |
PAL / NTSC |
Source Code |
Documentation |
Example tunes |
Proprietary file format |
Features |
Number of SID chips |
Channels visible |
Speeds |
Digi / Samples |
Auxiliary support |
Import from |
Save/Export to |
Packer |
Relocator |
Load/Save sounds |
Instruments / Sounds |
Sub tunes |
Player |
Noteworthy |
Size of player |
Zero page usage |
CPU time (1x) |
Arpeggio |
Set in instrument |
Set with command |
Pulsating |
Program table |
Set in instrument |
Set with command |
Other methods |
Filtering |
Program table |
Set in instrument |
Set with command |
Other methods |
Vibrato |
Set in instrument |
Set with command |
Hard restart |
First frame waveform |
Gate off timer |
ADSR |
Editor |
Track system |
Patterns / Sequences |
Follow-play |
Copy and Paste |
Undo |
Track commands |
Transpose |
Repeat |
Loop / Stop |
Volume |
Tempo |
Column: Note Example Row |
Note input layout |
Gating |
Legato / Tie note |
Additional effects ++ |
Column: Instr / FX / SP Example Row |
Instrument / Sound |
Additional effects ++ |
Column: Command Example Row |
Pointer to wave table |
Pointer to pulse table |
Pointer to filter table |
Pointer to chord/arp table |
Specify slide |
Specify portamento |
Specify vibrato |
Specify ADSR |
Specify waveform |
Specify pulse width |
Specify filter type |
Specify filter resonance |
Specify filter bitmask |
Specify filter cutoff |
Specify volume |
Specify tempo |
Specify arpeggio speed |
Specify transpose |
Specify finetune |
Specify delay |
Specify hard restart |
Additional effects ++ |
Tables |
Instrument table |
Names / Descriptions |
View multiple at once |
Pointer to wave table |
Pointer to pulse table |
Pointer to filter table |
Pointer to chord/arp/freq |
Pointer to slide/gliss table |
Pointer to ADSR/tremolo |
Pointer to vibrato table |
Specify ADSR |
Specify vibrato |
Specify pulse width/sweep |
Specify filter type/reson. |
Specify filter cutoff/sweep |
Specify arpeggio speed |
Specify hard restart |
Specify octave |
Specify finetune |
Wave table |
Waveform + Gating |
Relative + Absolute notes |
Delay/Repeat |
Loop/Stop |
Additional effects ++ |
Pulse table |
Specify pulse width |
Duration + Speed |
Loop/Stop |
Additional effects ++ |
Filter table |
Specify filter type |
Specify filter resonance |
Specify filter bitmask |
Specify filter cutoff |
Duration + Speed |
Loop/Stop |
Additional effects ++ |
Chord/Arp/Freq table |
Intervals (0-3-7) / Notes |
Loop/Stop |
Additional effects ++ |
Slide/Glissando table |
Amplitude |
Delay/Repeat |
Loop/Stop |
ADSR/Tremolo table |
Delay/Repeat |
Loop/Stop |
Vibrato table |
Delay |
Loop/Stop |
Finetune |
Tempo/Swing table |
Loop |
Volume table |
Fading |
Additional effects ++ |
Command table (Pat / Seq) |
Name of this table |
Names / Descriptions |
Pointer to wave table |
Pointer to pulse table |
Pointer to filter table |
Specify ADSR |
Specify waveform |
Specify vibrato |
Specify slide up/down |
Specify portamento up/dn |
Specify finetune |
Specify volume |
Specify tempo |
Unified table |
Name of this table |
Names / Descriptions |
Relative + Absolute notes |
Specify ADSR |
Specify waveform + gating |
Specify slide up/down |
Specify pulse width |
Specify pulse sweep |
Specify filter type |
Specify filter resonance |
Specify filter bitmask |
Specify filter cutoff |
Specify filter sweep |
Specify finetune |
Delay/Duration |
Loop/Stop |
GoatTracker 2.73 / 2.74s 2014-07-23 by Cadaver Download:SiteCSDb |
CheeseCutter 2.9 2017-04-13 by Abaddon Download:SiteCSDb |
SID-Wizard 1.7 2014-07-12 by Hermit Download:SiteCSDb |
SID Duzz' It 2.1.7 2014-10-12 by 6R6 + GT Download:CSDb |
Blackbird 1.2 2018-01-19 by Lft Download:SiteCSDb |
Virtuoso 1.01 2017-05-20 by Hein Download:CSDb |
defMON 20171026 2017-10-26 by Frantic Download:SiteCSDb |
NinjaTracker 2.04 2013-06-19 by Cadaver Download:SiteCSDb |
JCH Editor 3.04 / NP 20.G4 1991-08-16 by JCH Download:SiteCSDb |
Polyanna 1.00 2017-01-28 by Aleksi Eeben Download:CSDb |
DMC 5.0 1993 by Brian of Graffity Download:CSDb |
SidTracker 64 1.0.3 2015 by Daniel Larsson Buy:Apple App Store |
DefleMask 0.12.0 2016-06-03 by Delek Download:SiteCSDb |
---|
Package | |||||||||||||
Platform | Windows/Linux/[Mac] + reSID | Windows/Linux/[Mac] + reSID | Native / C64 emulator | Native / C64 emulator | Native / C64 emulator | Native / C64 emulator | Native / C64 emulator | Native / C64 emulator | Native / C64 emulator | Native / C64 emulator, 6581 only | Native / C64 emulator | iPad (using SID emulation) | Windows/Linux/Mac + reSID |
PAL / NTSC | PAL + NTSC | PAL + NTSC (NTSC untested) | PAL + NTSC | PAL + NTSC (frequency table) | PAL | PAL | PAL (+ NTSC in 20180211) | PAL | PAL | PAL | PAL | PAL + NTSC by setting ticks per sec | PAL + NTSC (can also set hertz) |
Source Code | Included in archive | Available at GitHub | Included in archive | Only the player source | Only the player source | Included in archive | No | Included in archive | Included in archive | No | No | No | No |
Documentation | Built-in + Extensive README file | Built-in + Web site + Cheat sheet | Built-in + Multiple README/PDF | Separate download for PDF | Built-in + PDF manual | Only built-in (loads from floppy) | Sparse; a wiki web site | Built-in + Various text files | Various text files | Built-in + short PDF manual | See this and this on the internet | Built-in tutorial pages | Redefine keys + PDF manual |
Example tunes | 20+ | 12+ | 14+ | Available in older packages | 7 (imported) | 11 | 1+ (separate download) | 6 | 3 for NP 20.G4 | 1 (separate download) | No | 12 | 17 |
Proprietary file format | SNG | CT | SWx | SDI | BB | V1P | S64 | DMF | |||||
Features | |||||||||||||
Number of SID chips | 1SID, or separate 2SID version | 1SID, or separate 2SID version | 1SID + 2SID + 3SID | 1SID | 1SID | 1SID | 1SID + 2SID | 1SID | 1SID | 1SID (3SID in Threesome 1.0) | 1SID | 1SID | 1SID |
Channels visible | 3 (6 in 2SID version) | 3 (6 in 2SID version) | 3 | 4 (Ch4 controls tempo/transp/filter) | 3 | 3 | 3 | 3 order lists + 1 pattern | 3 | 6 or 8 | 3 order lists + 1 sector | 3 | 3 for 6581/8580 sound systems |
Speeds | 25hz + 1x to 16x | 1x to 16x (unstable past 4x) | 1x to 8x | 1x to 16x (?) | 1x | 1x to 4x | 1x to 8x | 1x | 1x (to 4x when loading patch) | 1x + digi support | 1x | Set with ticks per second | Set with a value for hertz |
Digi / Samples | No | No | No | Separate version exists | No | No | No | No | No | 4-bit; used for channels 4-6/8 | No | No | No |
Auxiliary support | HardSID + MIDI in Mac version | MIDI | MIDI in version 3.0 preview | MIDI-, Gameboy-, and DIN-sync | MIDI | MIDI | |||||||
Import from | MOD | MIDI + SNG + XM (Separate tool) | GoatTracker instruments | ||||||||||
Save/Export to | PRG + SID | PRG + SID (separate tool) | PRG + SID (separate tool) | Must use assembler source for PRG | PRG + SID (separate tool) | PRG | PRG | PRG (editor can load these back) | PRG + SID + AAC | SID + VGM + WAV | |||
Packer | Built-in | Using separate tool | Using separate tool | Must use assembler source | Using separate tool | Built-in | Built-in | Built-in | Using separate tool | Uncompressed | Must use SYS 11776 ($2E00) | ? | Built-in |
Relocator | Built-in | Using separate tool | Using separate tool | Must use assembler source | Using separate tool | Built-in | No | Built-in | Using separate tool | No | No | No | No |
Load/Save sounds | Instruments | Instruments | Instruments | No | No | Instruments | No | No | No | No | Instruments | No | Instruments |
Instruments / Sounds | 63 | 48 | 45 (1SID) | 32 (+16 for arpeggios) | 48 | 32 | 256 sound program rows | 127 commands | 32 | 7 for 1SID + 8 for emulated SID | 32 | 32 | 128 |
Sub tunes | 32 | 32 | 6 (1SID) | 32 | No | 15 | Yes | 16 | 31 | No | 8 | No | No |
Player | |||||||||||||
Noteworthy | Can use buffered writing to SID | Choice between 5 players | Can be adapted with flags | Can stream from floppy disk | Settings adapted in source code | NP 20.G4 in focus here | 1SID + 3/5 emulated ch (pulse only) | Filter in channel 3 only | Macros can take up a lot of RAM | ||||
Size of player | 400-1600 bytes (modular player) | Less than 2300 bytes | Less than 2700 bytes (normal) | Less than 2400 bytes | Less than 1400 bytes | Less than 1900 bytes | Less than 2100 bytes | Approx 1000 bytes | Less than 1900 bytes | 3500+ bytes (uncompressed) | Approx 2000 bytes | Less than 2500 bytes | From 1-2 KB and beyond 30+ KB |
Zero page usage | 2; can be user defined or ghosted | 2; can be user defined | 2; ghosted | 2; defined in assembler source | 16; can be user defined | 2; can be user defined | 3 ($96 + $FB-$FC) | 2; can be user defined (?) | 2 ($FB-$FC) | At least 5 ($FB-$FF) | At least 2 ($F8-$F9) | 8 ($F0-$F7) | At least 13 ($1D-$2A) |
CPU time (1x) | Approx 16-25 rasterlines SD | Approx 31-36 rasterlines SD | 23-35 lines SD (depends on player) | Approx 24-27 rasterlines SD | Max 18 rasterlines | Approx 32-35 rasterlines (vanilla) | Approx 16-20 rasterlines | Approx 12-13 rasterlines SD | Approx 28-33 rasterlines SD | Most of the screen | Approx 23-27 rasterlines SD | Approx 20-24 lines (29 SD in Ninth) | Approx 23-34 rasterlines SD |
Arpeggio | Wave table with pattern cmds | Wave table + Chord table | Wave table + Chord table | Wave table + Chord table | Wv table (relative) + Chord table | Wave- and Frequency table | Uses sound programs | Wave table | Wave table with Hi-freq mode | 10 bytes for each instrument | Wave table with Hi-freq mode | Wave table | Wave- and Arpeggio macros |
Set in instrument | Pointer to table | Pointer to table + Speed | Table attached to instr + Speed | Pointer to table | Table attached to instrument | Pointers to both tables | Part of SP rows | No | Pointer for gate on/off + Speed | Table attached to instrument | Pointer to table | Separate page; up to 16 blocks | Both attached to instrument |
Set with command | Pointer to table | No | Pointer to table + Speed | No | Pointer to FX table | Pointers to both tables | Part of SP rows | Uses command table | Uses command table | No | No | No | Can use Protracker cmd 0XY |
Pulsating | Programmable | Programmable | Programmable + Note strength | Programmable | Programmable | Programmable | Programmable (sound programs) | Programmable | Programmable | Range sweeping only | Programmable | Programmable + Range sweeping | Programmable + Raw pulse width |
Program table | Yes | Yes | Yes | Yes | Part of wave table | Yes | Part of SP rows | Yes | Yes | No | Yes | Up to 16 blocks | Macro with drag/draw blocks |
Set in instrument | Pointer to table | Pointer to table, or Fixed (4-bit) | Table attached to instrument | Pointer to table | Wave table attached to instrument | Pointer to table | Part of SP rows | No | Pointer to table | Range sweeping | Pointer to table | Range sweeping | Macro + Pulse width (0-100) |
Set with command | Pointer to table | Pointer to table | Pointer to table + Fixed (8-bit) | No | No | Pointer to table | Part of SP rows | Uses command table | No | No | No | No, but can continue pulse | Pulse width + Reset |
Other methods | Note strength in a unique column | Pulse + Multipulse in wave table | |||||||||||
Filtering | Programmable | Programmable | Programmable + Note strength | Programmable + Control in Ch4 | Programmable | Programmable | Programmable (sound programs) | Programmable | Programmable | Raw sweeping only | Programmable (only filter in Ch3) | Programmable + Range sweeping | Programmable + Raw filter cutoff |
Program table | Yes | Yes | Yes | Yes | Yes | Yes | Part of SP rows | Yes | Yes | No | Yes | Up to 16 blocks | Macro with drag/draw blocks |
Set in instrument | Pointer to table | Pointer to table | Table attached to instrument | Pointer to table + Type/Res | Can be attached to instrument | Pointer to table | Part of SP rows | No | Pointer to table + Type/Res | Speed (nibble) + Cutoff (nibble) | Pointer to table | Range sweeping + Type/Res | Macro + Type/Res/Cutoff |
Set with command | Pointer to table + Bm/Res/Cut | Pointer to table | Pointer to table + Type/Res/Cut | Ch4: Pointer to table + Type | No | Pointer to table | Part of SP rows | Uses command table | No | No | Set Type/Reso/Cut | No, but can continue filter | Type/Res/Cutoff + Reset |
Other methods | Note strength in a unique column | Also in wave- and volume tables | Must set Type/Bm/Res globally | ||||||||||
Vibrato | Lo-fi + Hi-fi | Lo-fi + Hi-fi | Yes; with feeling | Yes; uses a program table | Can be simulated | Can be simulated | Can be simulated | Set in wave table | Hi-fi + Feeling | No | Yes | Yes | Yes |
Set in instrument | Yes | No | Yes | Pointer to vibrato table | Simulated in FX table | Simulated in glissando table | Simulated in sound programs | No | No | 3 bytes | Delay + Rate + Amp + Feeling | No | |
Set with command | Uses command table | Uses command table | Yes | No | Pointer to FX table | Pointer to glissando table | Simulated in sound programs | Uses command to wave table | Uses command table | No | Set amplitude | Yes, and also up/down/both | |
Hard restart | For each instrument | For each instrument | For each instrument | Yes | Three modes | Uses a dedicated table | Must set up manually in SP rows | Set globally | One mode (on or off) | No? | Hard-coded | One mode (on or off) | Yes |
First frame waveform | Yes | Adjusted by four modes | Yes | Set in wave table | Built into the modes | Set in the dedicated table | Can be defined in SP rows | Set globally | Cannot be adjusted | ? | ? | ? | |
Gate off timer | Yes | Adjusted by four modes | Yes, and also mode | Yes, and also mode | Built into the modes | Hard-coded to 2 frames | Can be defined in SP rows | Hard-coded to 2 frames | Hard-coded to 2 frames | ? | ? | Can be set with a command | |
ADSR | Command-line parameter | SR in instrument, ADSR in table | Yes | Cannot be adjusted | Built into the modes | Set in the dedicated table | Can be defined in SP rows | Set globally (only SR) | Set in command table | ? | ? | ? | |
Editor | |||||||||||||
Track system | Single-channel patterns | Contiguous sequence stacking | Single-channel patterns | Blinded sequence stacking | Same size sequence stacking | Single-channel patterns | Single-channel patterns | Order list with one pattern shown | Contiguous sequence stacking | Multi-channel sequence blocks | Order list with one sector shown | Single-channel patterns | Single-channel patterns |
Patterns / Sequences | 208; each up to 128 rows | 128; each up to 64 rows | 100 (1SID); each up to 248 rows | 128; each up to 128 rows | 255; each up to 32 rows | 80; each up to 96 rows | 128; each up to 32 rows | 127; each up to 180 rows | 114; each up to 96 rows | 63 blocks; each up to 32 rows | 96 sectors; each up to 250 rows | 128; each up to 128 rows | 128; each up to 256 rows |
Follow-play | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Screen blanks | No | Yes | Yes |
Copy and Paste | Yes | Numeric from/to input | Yes | Yes | Yes | Yes | Yes | Yes | Numeric from/to input | Yes | Yes | Extensive | Extensive |
Undo | No | Multi-step | One-step | No | No | No | No | No | No | No | No | No | Multi-step |
Track commands | Bytes in a horizontal order list | A word (XXYY) by each sequence | Bytes in a horizontal order list | A word (XXYY) by each sequence | A word (XXYY) by each sequence | Bytes in a horizontal order list | Bytes in a vertical order list | Bytes in a vertical order list | A word (XXYY) by each sequence | One seq step shown at a time | Bytes in a vertical order list | Values in a vertical order list | Values in a vertical order list |
Transpose | 15 half-tones up or down | 31 half-tones up or down | 15 half-tones up or down | 31 half-tones up or down | 64 half-tones up or down | 15 half-tones up or down | No | 63 half-tones up or down | 63 half-tones (80-BF) | No | 127 half-tones up or down | 48 half-tones up or down | No |
Repeat | Up to 16 times | No | No | No | No | Up to 14 times | Up to 256 times | No | No | No | No | No | No |
Loop / Stop | Loop only | Loop only | Both | Both | Both | Both | Loop only | Loop only | Both | Loop only | Both | Both | Both |
Volume | No | No | Yes | No | No | No | No | No | No | No | No | Set in a unique FX column | No |
Tempo | No | No | On each track (00-5D) | No | With swing nibble | No | No | No | No | No | No | Set in a unique FX column | No |
Column: Note Example Row |
Note Instr Cmd C#2 XX XYY
|
Note Instr Cmd C#2 XX XY
|
Note Instr Cmd C#2 XX XXYY
|
FX Note XX C#2
|
FX Note XY C#2
|
Instr Note Cmd XX C#2 XYY
|
SP1 SP2 Spd Note XX YY X C2#
|
Note Cmd Dur C#2 XX YY
|
I / S Note XYY C#2
|
Note Instr C#2 X
|
Note C#2
|
Note Instr Cmd C#2 ▲L1 <icons>
|
Note Vol Instr Cmd C#2 X XX XXYY ++
|
Note input layout | Protracker, DMC | Protracker | Protracker, DMC, SDI, Janko | Top two keyboard rows | Protracker | Protracker | Protracker | Protracker, DMC | Commodore SFX | Protracker | Two middle keyboard rows | Graphical keyboard, drum pads | Graphical keyboard, Protracker |
Gating | On or Off | On or Off | Off | On or Off | Off | On or Off | Controlled via SP rows | On or Off (forced) | [Hold] On | Off | On or Off (GATE command) | [Hold] On | Off |
Legato / Tie note | Have to use a command | Yes | Uses the instrument column | Yes | Uses the instrument column | Uses the command column | Always on until next SP specified | Bit set in command column | Uses the command column | No | Uses a SWITCH command | Uses the instrument column | ADSR only (via a command) |
Additional effects ++ | Auto-porta, Vibrato, Ring, Sync | Transpose in channel 4 | |||||||||||
Column: Instr / FX / SP Example Row |
Note Instr Cmd C#2 XX XYY
|
Note Instr Cmd C#2 XX XY
|
Note Instr Cmd C#2 XX XXYY
|
FX Note XX C#2
|
FX Note XY C#2
|
Instr Note Cmd XX C#2 XYY
|
SP1 SP2 Spd Note XX YY X C2#
|
Note Cmd Dur C#2 XX YY
|
I / S Note XYY C#2
|
Note Instr C#2 X
|
Instr SND.01
|
Note Instr Cmd C#2 ▲L1 <icons>
|
Note Vol Instr Cmd C#2 X XX XXYY ++
|
Instrument / Sound | Instrument (01-3F) | Instrument (00-2F) | Instrument (01-3E) | Instrument (00-1F) | Left character X is instrument | Instrument (00-1F) | One or two SP bytes (00-FF) | Command acts as instrument too | Instrument (I00-I1F) | Instrument (1-7 = 1SID + 8-F = digi) | Instrument (00-1F) | Instrument as alias (two chars) | Instrument (00-7F) |
Additional effects ++ | Tie, Waveform, Sus, Rel, Chord# | Arp, Glide, Vib, ASR, Filter on/off | Right character Y is FX table | Command table (S00-S3F) | Tie note | Must use a cmd to restart filter | |||||||
Column: Command Example Row |
Note Instr Cmd C#2 XX XYY
|
Note Instr Cmd C#2 XX XY
|
Note Instr Cmd C#2 XX XXYY
|
FX Note XX C#2
|
FX Note XY C#2
|
Instr Note Cmd XX C#2 XYY
|
SP1 SP2 Spd Note XX YY X C2#
|
Note Cmd Dur C#2 XX YY
|
I / S Note XYY C#2
|
Note Instr C#2 X
|
Cmd GLD.08
|
Note Instr Cmd C#2 ▲L1 <icons>
|
Note Vol Instr Cmd C#2 X XX XXYY ++
|
Pointer to wave table | Yes | No | Yes | Waveforms only | Uses command table | Uses command table | No | No | No | ||||
Pointer to pulse table | Yes | Yes | Yes | Yes | Uses command table | No | No | No | No | ||||
Pointer to filter table | Yes | Yes | Yes | In channel 4 | Yes | Uses command table | No | No | No | No | |||
Pointer to chord/arp table | No | Yes | Yes | Frequency table | No | No | No | No | No, but can use PT cmd 0XY | ||||
Specify slide | Pointer to command table | Pointer to command table | Yes | Glide | Pointer to command table | Pointer to command table | Glide to destination note | Glide knob up/down | Yes | ||||
Specify portamento | Pointer to command table | Pointer to command table | Yes | Glide to note | No | No | Glide start to destination note | Auto glide button on/off | Yes | ||||
Specify vibrato | Pointer to command table | Pointer to command table | Yes | Pointer to glissando table | Pointer to command table | Pointer to command table | Set in instrument | Vibrato amplitude knob | Yes | ||||
Specify ADSR | AD/SR | A/D/S/R | A/D/S/R or AD/SR | Pointer to ADSR table | Pointer to command table | Pointer to SR in command table | AD/SR | No | A/D/S/R | ||||
Specify waveform | Yes | Pointer to command table | Yes | Pointer to wave table | No | No | No | No | Yes (nibble only), or RM/HS | ||||
Specify pulse width | No | No | 8-bit | No | No | No | No | No, but can continue pulse | Yes; up to $64 (100) | ||||
Specify filter type | No | No | Yes | In channel 4 | No | No | No | Together with resonance | No | Yes | |||
Specify filter resonance | Together with bitmask | No | Yes | No | No | No | Together with type | No | Yes | ||||
Specify filter bitmask | Together with resonance | No | No | No | No | No | Filter in channel 3 only | No | No | ||||
Specify filter cutoff | Yes | No | Yes | No | No | No | Yes; 8-bit (MSB) | No, but can continue filter | Yes; up to $64 (100) | ||||
Specify volume | Yes | Yes | Yes | Pointer to filter table | No | Pointer to command table | Fade in/out + Affect sustain | Set in a unique FX column | Set in a unique volume column | ||||
Specify tempo | Yes, or cmd table for swing | Yes | Song or track | In channel 4 | Pointer to speed table | Set in a unique speed column | Set in a unique duration column | Pointer to command table | No | Set in a unique FX column | Yes | ||
Specify arpeggio speed | No | Set in instrument | Yes | No | No | Set in instrument | No | No | Yes, but only for PT cmd 0XY | ||||
Specify transpose | No | No | No | In channel 4 | No | No | No | No | No | No | |||
Specify finetune | No | Pointer to command table | Yes | Pointer to frequency table | No | No; set globally | No | No | Yes | ||||
Specify delay | No | No | Track or note | No | No | No | Uses a DUR command | No | Yes (one note, not entire song) | ||||
Specify hard restart | No | No | No | Pointer to hard restart table | No | No | No | No | Gate off timer | ||||
Additional effects ++ | Tremolo using global volume | ||||||||||||
Tables | |||||||||||||
Instrument table | 9 bytes per instrument | 8 bytes per instrument | 16 bytes per instrument | 10 bytes per instrument | 1 byte + size of wave/filter tables | 8 bytes per instrument | Uses sound programs instead | Uses commands instead | 8 bytes per instrument | 16 bytes including wave table | 8 bytes per instrument | Up to 32 instruments | Up to 128 instruments |
Names / Descriptions | Yes | Yes | Yes | Yes | One character for each | Yes | No | No | No | Yes, alias (two chars) + full name | Yes | ||
View multiple at once | No | 15 instruments | No | No | No | No | 4 instruments | No | No | No | 10 (only their names) | ||
Pointer to wave table | Yes | Yes | Attached to instrument | Yes | Attached to instrument | Waveform only | For gate on and off | Attached to instrument | Yes | Yes; button to separate page | Macro generator attached | ||
Pointer to pulse table | Yes | Yes | Attached to instrument | Yes | Part of wave table | Yes | Yes | No | Yes | Yes; button to separate page | Macro generator attached | ||
Pointer to filter table | Yes | Yes | Attached to instrument | Yes | Can be attached to instrument | Yes | Yes | No | Yes | Yes; button to separate page | Can attach macro generator | ||
Pointer to chord/arp/freq | No | No | Yes | No | Independent | Assists wave table | No | No | No | No | Macro generator attached | ||
Pointer to slide/gliss table | No | No | No | No | No | Yes | No | No | No | No | No | ||
Pointer to ADSR/tremolo | Uses one ADSR | Uses one ADSR | Uses one ADSR | Uses one ADSR | Uses one ADSR | Yes | Uses one ADSR | No | Uses one ADSR | Uses one ADSR | Uses one ADSR | ||
Pointer to vibrato table | Set here in instr or in cmd table | Set in command table | Set here in instr or in pattern | Yes | No | No | No | No | Set here in instrument | Set here in instr or in pattern | No | ||
Specify ADSR | Yes | Yes | Yes | Yes | Yes | Uses an ADSR table | Yes | Yes | Yes | Yes | Yes; along with a small graph | ||
Specify vibrato | Yes | Set in command table | With speed and feeling | Uses a vibrato table | Simulated in FX table | Must use glissando table | Set in command table | No | 3 bytes | Delay + Rate + Amp + Feeling | No | ||
Specify pulse width/sweep | Set in pulse table | Set in pulse table, fixed (4-bit) | Set in pulse table | Set in pulse table | Set in wave table | Set in pulse table | Set in pulse table | Limits (nibbles) + Speed (byte) | Set in pulse table | Yes + min/max knobs | Pulse width only (0-100) | ||
Specify filter type/reson. | Set in filter table | Set in filter table | Set in filter table | Yes | Set in filter table | Set in filter table | Yes | Set globally | Set with a command | Yes | Yes | ||
Specify filter cutoff/sweep | Set in filter table | Set in filter table | Set in filter table | Set in filter table | Set in filter table | Set in filter table | Set in filter table | Speed (nibble) + Cutoff (nibble) | Set in filter table | Yes + min/max knobs | Filter cutoff only (0-100) | ||
Specify arpeggio speed | No | Yes | Yes | No | No | No | Yes | No | No | No | No | ||
Specify hard restart | Fr1 waveform + Gate off timer | Four modes + Sustain/Release | The whole shebang | Gate off timer + mode | Three modes | Pointer to HR table | Set globally | One mode (on or off) | No | No; hard-coded | One mode (on or off) | No | |
Specify octave | No | No | Yes | No | No | No | No | Yes | No | No | No | ||
Specify finetune | A command can be used | Set in command table | Set in wave table | 16-bit | Set in FX table | Set in frequency table | Set globally | Nibble (0-F) upwards only | No | No | No | ||
Wave table | 2 bytes per row | 2 bytes per row | 3 bytes per row | 2 bytes per row | 2 bytes per row | Command nibble + 1 byte | Uses sound programs instead | 2 bytes per row | 2 bytes per row | 10 bytes for each instrument | 2 bytes per row | Up to 16 blocks | Macro with drag/draw blocks |
Waveform + Gating | All | All | All | All | All | All | All | All | Waveform nibble only | All | All | Waveform nibble only (no RM/HS) | |
Relative + Absolute notes | Both | Both | Both | Both | FX can add relative only | Set in frequency table | Both | Both + Hi-frequency (00-FF) | Relative for next 15 half-tones (0-F) | Relative + Hi-frequency (00-FF) | Both | Set in arpeggio table | |
Delay/Repeat | Yes | Overrides speed in instrument | Yes | Yes + Blocks too | No | Yes | Yes | No | No | No | No | Indicated by amount of blocks | |
Loop/Stop | Both | Both | Both | Loop only | Loop only | Both | Loop only | Both | Stops after 10th byte, or at a $00 | Loop only | Both | Both | |
Additional effects ++ | Pattern-style commands | Finetune in byte 3 (DT col) | ADSR, Filter, Pulse, Multipls, Noise | Pulse width (8-bit) + Sweep | Vibrato, Slide | Relative for noise = low to hi freq | Hi-freq mode bit replaces test-bit | ||||||
Pulse table | 2 bytes per row | 4 bytes per row | 3 bytes per row | 4 bytes per row | Set in wave table | Command nibble + 1 byte | Uses sound programs instead | 2 bytes per row | 4 bytes per row | Set in instrument | 2 bytes per row | Up to 16 blocks | Macro with drag/draw blocks |
Specify pulse width | 12-bit | 8-bit | 12-bit | 8-bit | 12-bit | 8-bit | 8-bit | 12-bit | 8-bit; set by dragging line | +/- blocks affect a global width | |||
Duration + Speed | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes; 16-bit speed | Yes; duration up to 128 ticks | Indicated by amount of blocks | |||
Loop/Stop | Both | Both | Both | Both | Both | Loop only | Loop only | Loop only | Both | Both | |||
Additional effects ++ | Note strength in byte 3 (KT col) | Sweep modes/jumps | |||||||||||
Filter table | 2 bytes per row | 4 bytes per row | 3 bytes per row | 4 bytes per row | 1 nibble + 2 bytes | Command nibble + 1 byte | Uses sound programs instead | 2 bytes per row | 4 bytes per row | Set in instrument / globally | 2 bytes per row | Up to 16 blocks | Macro with drag/draw blocks |
Specify filter type | All types | All types | All types | All types | All types | All types | All types | Set in instrument | Set with a command | All types | Set in instrument | ||
Specify filter resonance | Full nibble | Full nibble | Full nibble | Full nibble | Full nibble | Full nibble | Full nibble | Set in instrument | Set with a command | Set in instrument | Set in instrument | ||
Specify filter bitmask | All channel combinations | All channel combinations | GoatTracker compatibility | Set in volume table | All channel combinations | All channel combinations | All channel combinations | No | Set globally | Filter in channel 3 only | Set in a unique FX column | No | |
Specify filter cutoff | 8-bit (MSB) | 8-bit (MSB) | 8-bit (MSB) | 8-bit (MSB) | 8-bit (MSB) | 8-bit (MSB) | 8-bit (MSB) | 8-bit (MSB) | 11-bit | 8-bit (MSB), set by dragging line | +/- blocks affect a global cutoff | ||
Duration + Speed | Yes | Yes | Yes | Yes | Speed only (plus/minus) | Yes | Yes | Yes | Yes; 16-bit speed | Yes; duration up to 128 ticks | Indicated by amount of blocks | ||
Loop/Stop | Both | Both | Both | Loop only | Loop only | Both | Loop only | Loop only | Loop only | Both | Both | ||
Additional effects ++ | Note strength in byte 3 (KT col) | Volume (with fading) | |||||||||||
Chord/Arp/Freq table | Just the wave table only | 1 byte per row (+ pointers) | 1 byte per row | 3 bytes per row | 1 byte per row (FX table) | Command nibble + 1 byte | Uses sound programs instead | Just the wave table only | Just the wave table only | Just the wave table only | Just the wave table only | Just the wave table only | Macro with drag/draw blocks |
Intervals (0-3-7) / Notes | Intervals only | Intervals + Notes | Intervals only | Offsets down from $70 | Intervals only | +/- blocks define the intervals | |||||||
Loop/Stop | Loop to specific pointer | Loop, or return to wave table | Loop to specific pointer | Loop to specific pointer | Both | Both | |||||||
Additional effects ++ | Speed and instrument nibbles | Finetune, Vibrato simulation | Finetune | Check box for fixed arpeggio | |||||||||
Slide/Glissando table | Set in command table | Set in command table | Set in command column | Set in FX column | Set in FX table | Command nibble + 1 byte | Uses sound programs instead | Set in wave table | Set in command table | No | Set with a command | Set in command column | Set in command column |
Amplitude | 00-5F | ||||||||||||
Delay/Repeat | 00-7F (up or down) | ||||||||||||
Loop/Stop | Both | ||||||||||||
ADSR/Tremolo table | Uses one ADSR in instrument | Uses one ADSR in instrument | Uses one ADSR in instrument | Uses one ADSR in instrument | Uses one ADSR in instrument | Command nibble + 1 byte | Uses sound programs instead | Uses one ADSR in cmd table | Uses one ADSR in instrument | Uses one ADSR in instrument | Uses one ADSR in instrument | Uses one ADSR in instrument | Uses one ADSR in instrument |
Delay/Repeat | Yes | ||||||||||||
Loop/Stop | Both | ||||||||||||
Vibrato table | Set in instrument or cmd table | Set in command table | Set in instrument or pattern | 3 bytes per row | Simulated in FX table | Simulated in glissando table | Uses sound programs instead | Set in wave table | Set in command table | No | Set in instrument | Set in instrument or pattern | Set in command column |
Delay | Yes | ||||||||||||
Loop/Stop | Loop only | ||||||||||||
Finetune | With hold or continue | ||||||||||||
Tempo/Swing table | Set in command table | Set in chord table | 1 byte per row | 2 bytes per row | Set in track | 1 byte per row | Uses sound programs instead | No | Set in filter table | Set globally (half frames) | Set globally | Set in a unique FX column | Set globally and in cmd column |
Loop | Entire list is just looped | Yes | Yes | ||||||||||
Volume table | Set in pattern | Set in sequence | Set in pattern or order list | 2 bytes per row | No | Set in filter table | Uses sound programs instead | No | Set in command table | No | Set globally | Set in a unique FX column | Macro with drag/draw blocks |
Fading | Yes | Set with a command instead | +/- blocks affect the volume | ||||||||||
Additional effects ++ | Filter channel and -speed | ||||||||||||
Command table (Pat / Seq) | 2 bytes per row | 1 nibble + 2 bytes per row | No | No | No | No | Uses sound programs instead | 5 bytes per row | 2 bytes per row | No | No | No | No |
Name of this table | Speedtable | Command | Commands | Super table | |||||||||
Names / Descriptions | No | No | Yes | No | |||||||||
Pointer to wave table | Set directly in pattern | No | Yes (00 = continue) | Yes | |||||||||
Pointer to pulse table | Set directly in pattern | Set directly in sequence | Yes (00 = continue) | Set in instrument only | |||||||||
Pointer to filter table | Set directly in pattern | Set directly in sequence | Yes (00 = continue) | Set in instrument only | |||||||||
Specify ADSR | Set directly in pattern | Yes | Mandatory | Sustain/Release only | |||||||||
Specify waveform | Can use wave table | Yes | No | No | |||||||||
Specify vibrato | Lo-fi + Hi-fi | Lo-fi + Hi-fi + Feeling | Set in wave table | Hi-fi + Feeling | |||||||||
Specify slide up/down | 16-bit "Portamento" | 16-bit | Set in wave table | 12-bit | |||||||||
Specify portamento up/dn | 16-bit "Toneportamento" | 16-bit | No | No | |||||||||
Specify finetune | Must use portamento | Yes | No | Set globally | |||||||||
Specify volume | Set directly in pattern | Set directly in sequence | No | Yes | |||||||||
Specify tempo | Swing tempo (two nibbles) | Set in chord table | No | Yes | |||||||||
Unified table | No | No | No | No | No | No | 13 bytes per row | No | No | No | No | No | No |
Name of this table | sidTAB - or - sound programs | ||||||||||||
Names / Descriptions | No | ||||||||||||
Relative + Absolute notes | Yes; called transpose | ||||||||||||
Specify ADSR | Yes | ||||||||||||
Specify waveform + gating | Yes; as separate bytes | ||||||||||||
Specify slide up/down | 00-3F (shared with finetune) | ||||||||||||
Specify pulse width | 8-bit | ||||||||||||
Specify pulse sweep | 00-7F + direction bit left/right | ||||||||||||
Specify filter type | Yes | ||||||||||||
Specify filter resonance | Yes | ||||||||||||
Specify filter bitmask | Yes, or bit for source channel | ||||||||||||
Specify filter cutoff | 2 bytes; starts at $200 | ||||||||||||
Specify filter sweep | 1 byte offset + 2 bytes sweep | ||||||||||||
Specify finetune | 00-7F (shared with slide) | ||||||||||||
Delay/Duration | Yes | ||||||||||||
Loop/Stop | Loop, or stop at end of chunk (?) | ||||||||||||