fixator / ukncbtl

Automatically exported from code.google.com/p/ukncbtl
0 stars 0 forks source link

Поддержка формата TAP #27

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Нужна поддержка "ленточного" формата 
подобного формату .TAP для ZX 
Spectrum: файл состоит из произвольного 
количества блоков, каждый блок 
начинается двумя байтами с указанием длины 
блока, затем данные блока 
включая чексумму.

Original issue reported on code.google.com by nzeemin on 30 Oct 2009 at 1:07

GoogleCodeExporter commented 9 years ago
Alexey Kisly:
В принципе неплохо. Формата .TAP для ZX Spectrum  я 
не знаю, но на
УКНЦ формат записи такой:
1. Формат записи файла:
 1.1. Пилот-тон перед заголовком длиной 8000 битов "1".
 1.2. Заголовок состоящий из:
  1.2.1. 16 байт имени файла
  1.2.2. 1 слово длины данных в словах
  1.2.3. 1 слово адреса загрузки данных
 1.3. Пилот-тон перед данными длиной 2000 битов "1".
 1.4. Собственно данные.
 1.5. Контрольная сумма зона данных (одно слово).
 1.6. Бит "1".
2. Формат записи блока данных:
 2.1. Пилот-тон перед данными длиной 2000 битов "1".
 2.2. Собственно данные длиной 256 байт.
 2.3. Контрольная сумма зоны данных (одно слово).
 2.4. Бит "1".

Фактически все сводится к заголовку и 
данным. Только после заголовка
следуют данные той длины, которые указаны в 
заголовке, а отдельно
данные записываются только блоком 
размером 256 байт.
Бейсик-Вильнюс при записи на магнитофон 
делит программу на блоки по
256 байт. Самый первый блок записывается как 
файл с размером 256 байт,
а остальные как блоки данных.

Original comment by nzeemin on 31 Oct 2009 at 7:08