Music banks stored on disc
The AMOS Professional music banks are saved to disc "as is", with only a simple header.
dc.b "AmBk" dc.w Number_Of_The_Bank dc.l $80000000 + Length_Of_The_Bank Note that $80000000 indicates a CHIP memory bank.
SAMPLE BANKS
All sample banks are loaded in CHIP Ram.
dc.b "Samples" Start-8 Name of the bank
Start dc.w Number_Of_Samples
* First we store a list of pointers to the samples in memory
* These are held as offsets from the start of the bank
REPT Number_Of_Samples
dc.l Sample_XX-start XX = number of the sample
ENDR
* Now we store the samples one after the other
* Repeat for each sample
REPT Number_Of_Samples
Sample XX dc.b "Namesamp" Name of the sample in 8 bytes
dc.w Sampling_Frequency In Hertz
dc.l Sample_Length In WORDS (real length/2)
dcb.b ... samples ... The actual sample data
ENDR
On disc, the sample bank is saved directly in the above format. The disc header is exactly the same as for a CHIP DATA bank.
AMAL BANKS
An AMAL bank can hold two separate types of information. Either a list of AMAL command
strings, or a recorded series of Object movements for use with the PLay instruction. The bank is
therefore divided into sections, as shown below:
The header
dc.b "AMAL " Start-8 Bank name, 8 bytes, Ascii
Start dc.l Strings-Start Offset to the first command string in memory
The movement table
* We start with a list of the movement table used by the PLay command
* (NN= number of the move)