Each block specification contains a general description of the block and
a table of the exact ordering of data within the block. The first column
in these tables either contains a string literal (for example the block
name "APAL") or an identifier (made up by me) written in
hungarian notation.
The second column contains the size/format of the data meaning the
following:
The third column contains a description of the data. In this, some
abbreviations are used:
Special schemes are used for special instances, such as a piece of the spec
being repeated for a specified number of times:
- or an unspecified number of times:
Also, if a piece of the spec may not occur in some instances, it's marked
thusly:
Finally, if a piece can be different in some instances, it's marked with:
Some of these may be prepended a multiplier, such as "5 *", which
means what you think it does.
If nothing is noted, the number is stored as Big Endian.
loop <count>
...
end of loop
loop
...
end of loop
(
...
)
{
...
}
or
{
...
}