Date : Thu, 03 May 2001 08:10:57 +0000
From : "W.H.Scholten" <s_whs@...>
Subject: bbctape: tape images
L.S.
I fixed the problem I mentioned in my previous mail, but the program
needs more refinements (proper silence detection).
At the moment bbctape 0.95 only supports raw tape images (single
bitstream, no silence/noise delays yet). I've tested this on fortress (3
standard format files, then a custom format stream), making a tape dump
(result is about 56K, which includes the header tones, start/stop bits)
of a raw file (which was about 17MB).
I've written this tape image back to a raw file and directly to the BBC
which loaded it and ran. It seems to work!
Here's the format I intend to use to also support silence delays:
Tape image format:
* id: "BBCTAPE" + terminating 0
* followed by data blocks which consist of:
* byte 0 : block type:
* bytes 1 - 4 : block len (MSB)
* bytes 5 - <block_len-1> : data
*
* block type = 0 : silence
* - 4 bytes : MSB block length (=1+4+4)
* - 4 bytes : MSB duration (ms)
*
* block type = 1 : bit stream:
* - 4 bytes : MSB block length (=1+4+2+ (<nbits> +7)/8)
* - 2 bytes : MSB tone frequency (Hz) (= baud rate)
* - 4 bytes : MSB number of bits in the block
* - [ (<nbits> +7)/8 ]: data block with the bits
*
* block type = 2 : standard BBC tape block
* - 4 bytes : MSB block length (=1+4+2+ <tape block size>)
* - 2 bytes : MSB tone frequency (Hz) (= baud rate)
* - [ tape block size ]: data block with the actual tape block
Comments?
Wouter