Spectrum tape interface: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 28: Line 28:


== Blocks ==
== Blocks ==
On the tape every block is started with a marker byte (0x00 for header and 0xff for data blocks) and ended with a checksum byte.
The checksum byte is not really a sum, but a binary XOR of all header/data bytes.
=== Header block ===
=== Header block ===
The header, which is 17 bytes long, is as follows:
The header, which is 17 bytes long, is as follows:
Line 139: Line 143:
|}
|}


''(Of course on the tape there are two more bytes: a 0xff -- marker of data block -- at the beginning and a checksum byte at the end.)''
Note: although the array name is saved, you cannot just ''LOAD "" DATA'', you have to explicitly say where to load: e.g. ''LOAD "" DATA w()'', but you can use any letter regardless of the original array name.
 
Note: although the array name is saved, you cannot just ''LOAD "" DATA'', you have to explicitly say where to load: e.g. ''LOAD "" DATA w()'', but you can use any letter regardless of the original name.


==== BASIC programs ====
==== BASIC programs ====
161

edits

Navigation menu