La tabella blocchi (BLOCKS) è composta da un numero di definizioni di blocco (BLOCK) contigue, ognuna delle quali contiene tutte le informazioni su uno specifico blocco e del relativo contenuto su file.
La posizione (relativa al file) e il numero di elementi della tabella sono specificate rispettivamente dai campi HEADER.BLOCKSOFF e HEADER.BLOCKSCNT.
Definizione blocco
Un blocco (BLOCK) è composto dai seguenti dati:
Nome |
Offset |
Tipo |
Descrizione |
---|---|---|---|
ID |
+0 |
U32 |
ID univoco del blocco. Nota: i valori 0 e 0xFFFFFFFF sono ID a significato speciale. |
STATUS |
+4 |
U16 |
(riservato, uso runtime) |
FLAGS |
+6 |
U16 |
Impostazioni del blocco: 0x0001 = Blocco principale (ISMAIN). 0x0002 = Campo TEXT non compresso (NCF0). 0x0004 = Campo COMMENT non compresso (NCF1). |
NAME |
+8 |
U32 |
Offset nome del blocco (relativo a stringhe). Nota: se flag ISMAIN specificato, il nome viene deve essere "main". |
TEXT |
+12 |
U32 |
Offset descrizione del blocco (relativo a stringhe compresse, o stringhe se NCF0). |
COMMENT |
+16 |
U32 |
Offset commenti per il blocco (relativo a stringhe compresse, o stringhe se NCF1). |
RUNGSOFF |
+20 |
U32 |
Offset della tabella circuiti del blocco (relativo a file). |
RUNGSCNT |
+24 |
U32 |
N. di elementi della tabella circuiti del blocco. |
|
+28 |
B[36] |
(riservati) |