General Speedlock loading system overview:
Each block can be loaded to a different location and has a different length.
The location and lengths of the blocks are either stored in the speedlock loader or in the first short speedlock block.
The location and lengths are in a table form.
The table has 5 entries:
Offset | Length | Description |
---|---|---|
0 | 2 | Destination load address |
2 | 2 | Length in bytes-1 |
4 | 1 | Unused (always &80) |
NOTES:
Normally there is a short speedlock v1 style block, stored with the same bit-rate as the main blocks. This block contains the furthur loading instructions for the remaining blocks in the main program.
For speedlock V1, following this are one or more blocks containing screen and program code.
For speedlock V2, following this is a large block containing screen and program code together.
For some speedlocks, there are additional speedlock V1 style blocks after to load additional data (see Wizball).
For some speedlocks there is more than one speedlock V1 style block before the speedlock V2 main block (see Tarzan).