THE AMB CONTAINER
The AMB file is a container - one could say it is a very simplistic archive
format. It starts with a 4-bytes format signature (magic value) "AMB1". Then
comes a 2-bytes number that tells how many files are present in the container,
followed by the list of all files: each file is described by a file entry.
All values are little-endian.
offset
0 format signature: "AMB1"
4 files count (16-bit value)
6 FILE ENTRY #1
FILE ENTRY #2
FILE ENTRY #3
....
DATA
Each file entry is a 20-bytes structure:
offset
0 filename, 12 characters, zero-padded ("FILE.EXT\0\0\0\0")
12 offset where this file starts (32 bits)
16 file length, in bytes (16 bits)
18 BSD sum (16-bit) of the file
The AMB archive is expected to contain a set of AMA (Ancient Machine Article)
files, and optionally a title file, an index dictionary and a codepage map.
An AMB archive must contain at least one AMA file named "index.ama" - this is
the first file that an AMB reader will try loading.
Note: Names of files contained in an AMB archive are to be processed in a case
insensitive way and must be composed exclusively of 7-bit characters.