SIZE_LEN
format = GET16(buf + MARK_LEN + SIZE_LEN);
ntrks = GET16(buf + MARK_LEN + SIZE_LEN + 2);
divfmt = GET8(buf + MARK_LEN + SIZE_LEN + 4);
ticks = GET8(buf + MARK_LEN + SIZE_LEN + 5);
p = buf + MARK_LEN + SIZE_LEN + HEADER_LEN;
if (p >= end - MARK_LEN - SIZE_LEN) {
tracks[t].start = p + MARK_LEN + SIZE_LEN;
p += MARK_LEN + SIZE_LEN + len;