The sounds come last in the file. After the last stored pattern, the data of each sample follows in the order of the sample headers, sample 1 first, with nothing between them; the lengths are in the sample headers.
Where each sample starts
The data begins where the stored patterns end. They are 4-channel patterns of 1,024 bytes, always a whole number of pairs:
pairs = (highest order entry ÷ 2, rounded down) + 1
start of sample data = 1084 + 2 × pairs × 1024
sample n starts at = start of sample data + 2 × (length of samples 1 to n − 1)
Sample n is 2 × length bytes long, and samples with a length of 0 take no space. A module whose highest order entry is 6 holds 4 pairs, and its sample data starts at 1084 + 8 × 1,024 = 9,276. A reader that counted as for a ProTracker module, one more than the highest entry, would find 7 patterns and look for the samples 1,024 bytes too early.
Encoding
Each byte is one sample point, a signed 8-bit number from −128 to 127, mono. No sample rate is stored: the rate depends on the note being played, as the period says; C-2 plays a sample at about 8,287 bytes a second. By convention the first two bytes of a sample are 0, because the Amiga’s sound chip keeps playing them after a sample without a loop has finished.
+0 00 00 05 12 26 3B 4A 52 51 47 35 1D 02 E8 D0 BD
E8 is −24, BD is −67)Short and long files
The file should end with the last byte of the last sample. A reader should take what is there rather than turn a file down that ends early or carries extra bytes: the explorer reads a sample cut short as far as the file goes and reports how much is missing.