IT module format (.it)

The module format of impulse-tracker, documented by its author in ITTECH.TXT (in raw/impulse-tracker/; summary s-ittech). Everything an .it contains beyond an S3M — instruments with envelopes, NNAs and duplicate checks, sustain/ping-pong loops, sample vibrato, 16-bit and compressed samples, 64 channels, linear slides, surround pan, a song message, MIDI macros, and (later) filter cutoff/resonance per instrument — is what made IT the last word in DOS tracking, and it is the spec duet's IT engine and openmpt/libopenmpt are built from (source: s-duet-readme).

Limits (from the manual)#

99 samples · 99 instruments · 200 patterns of 32–200 rows · 256 orders · 64 channels + up to 256 virtual channels · samples 8/16-bit up to ~4 MB (source: s-it-manual).

Semantics worth knowing as a musician#

  • Linear frequency slides: 768 units per octave, 64 per semitone (Exx/Fxx step 4 units, EEx/FEx 1 unit) — the reason a slide value means the same interval at every pitch when the song is in linear mode.
  • Volume chain: note volume × sample volume × (instrument volume × envelope × fade) × channel volume × global volume.
  • Panning chain: channel pan, overridden by instrument pan, offset by pitch-pan separation around a centre note.
  • Instrument flags: random volume variation is real; random panning variation is "not implemented yet" in the format doc; the pitch envelope can be redefined as a filter envelope, and instruments carry an initial filter cutoff and resonance — the resonant filters of IT 2.14 (version attribution unverified).
  • Compatibility flags matter to players: Old Effects (ST3-style vibrato depth and offset-past-end), link G to sample, instrument mode on/off, linear vs Amiga slides.

A modern writer's choices (DUET)#

  • duet writes IT 2.14 files (CWTV $0214, CMWT $0200) with 2.x IMPI instrument blocks, uncompressed signed 16-bit samples (stereo stored separated: all left frames, then all right) and full-mask pattern packing without run-length coding — a layout every loader accepts; a packed pattern past the format's 64 KB cap is refused (source: s-duet-docs-formats).
  • Header counts are derived from the highest non-blank slot, so header and body cannot disagree; bit 7 of a channel's pan byte disables the channel — DUET sets it on its SID columns so foreign players play silence there (source: s-duet-docs-formats).

Saving as S3M#

IT can write S3M only under restrictions: Amiga slides, 64-row patterns (max 100), 16 channels, notes C-1B-8, channel volumes 64, no instruments, no sustain/ping-pong loops, no sample vibrato, Old Effects on; the newer commands (M N P S5x S6x S7x S91 SAy W Y) are silently unsupported (source: s-it-manual).

Adoption (1996)#

The format arrived before the players: in mid-1996 vegas used IT but saved his work as S3M "until .IT's are supported by a couple popular players" (source: s-tw062-interview-vegas); liam-the-lemming's musicdisk shipped late because some tracks were .IT and "support for the format is... uh... sparse" (source: s-tw066-interview-liam-the-lemming); and ryan-sprott said IT users had an advantage in Music Contest 4 because no standalone IT player existed, proposing that each format be judged in its own tracker (source: s-tw063-interview-ryan-sprott; see compos). By January 1997 perisoft wanted only his .IT files kept on the archive and called IT the one tracker able to make "a truely CD quality song" through disk-writing and huge samples (source: s-tw087-interview-perisoft).

To verify#

  • Sourced: 2.14 (1997-09-02) introduced on-the-fly sample compression ("IT214"), and 2.14 patch 5 (1999-04-08) the alternative "IT215" compression, readable by 2.14 patch 1 and later (source: s-tracker-history-notes); OpenMPT can write IT-compressed samples since 1.22 and documents the format's semantics on its Module formats page — per-note sample transposition, resonant filters, NNAs, channel-based panning (sources: s-tracker-history-notes, s-openmpt-manual-module-formats).
  • (unverified) Which version added the resonant filters (Zxx), and that the source was published in 2014.

impulse-tracker · scream-tracker-3 · s3m-format · openmpt · duet · new-note-actions · instrument-envelopes · compos

Sources#

s-ittech · s-it-manual · s-duet-readme · s-tracker-history-notes · s-openmpt-manual-module-formats · s-tw062-interview-vegas · s-tw066-interview-liam-the-lemming · s-tw063-interview-ryan-sprott · s-tw087-interview-perisoft · s-duet-docs-formats

source file wiki/entities/it-format.md · 1 unverified · graph