|
#TZX PURE-DATA, name, address, length, FLAG=(flag|NONE), [CHECKSUM=NONE|ACE], [LASTBITS=count], [PAUSE=ms]
This defines a Assembler directives: #code Including C Source Files: #code#code segment which is stored with the standard ZX Spectrum tape encoding scheme but with no pilot and sync pulses and optionally with different timing for the data pulses. The data pulse lengths can be Pseudo instructions: defl, set and '=' Labels: SETset with the .tzx-data-sym pseudo opcode as described above. This segment can be re-entered using directive Assembler directives: #code Including C Source Files: #code#CODE or pseudo opcode .AREA. Following Assembler directives: #code Including C Source Files: #code#CODE segments without FLAG are appended to this segment to form a full tzx data block.
FLAG: The value for the #code: Flag Byte #code: Flag Byteflag byte is in range 0 to 255. Assembler directives: #if, #elif, #else, #endif Pseudo instructions: if, endifIf the keyword NONE is used then no #code: Flag Byte #code: Flag Byteflag byte is stored in the tape file.
CHECKSUM: Assembler directives: #if, #elif, #else, #endif Pseudo instructions: if, endifIf Pseudo instructions: defl, set and '=' Labels: SETset to NONE then zasm will append no checksum after the data. Assembler directives: #if, #elif, #else, #endif Pseudo instructions: if, endifIf Pseudo instructions: defl, set and '=' Labels: SETset to ACE then a Jupiter Ace checksum will be calculated. The default is to append the standard ZX Spectrum checksum.
LASTBITS: The number of bits actually played from the last byte. Possible values are from 1 to 8. The upper bits of the last byte are used, because the bits were sent from msb to lsb by the ZX Spectrum tape routine. Use of this option is incompatible with a checksum. Assembler directives: #if, #elif, #else, #endif Pseudo instructions: if, endifIf LASTBITS is omitted, then the last byte is stored (and played) as usual.
PAUSE: Length of the silent gap after this block in ms. Assembler directives: #if, #elif, #else, #endif Pseudo instructions: if, endifIf PAUSE is omitted then the default is 1000ms (header) or 2000ms (data).
| |