Hobeta — различия между версиями

Материал из SpeccyWiki
Перейти к: навигация, поиск
(Новая страница: «'''Hobeta''' ('''*.$B''', '''*.$C''', '''*.$D''',...) - устаревший формат для хранения TR-DOS-файлов, используемы...»)
(нет различий)

Версия 19:24, 9 января 2012

Hobeta (*.$B, *.$C, *.$D,...) - устаревший формат для хранения TR-DOS-файлов, используемый в основном старыми эмуляторами ZX Spectrum. Особенностью формата является то, что в одном файле Hobeta хранится только один файл TR-DOS. Файл Hobeta по сути является побайтной копией файла TR-DOS с добавлением 17-байтного заголовка.

Расширение файла получается добавлением символа "$" перед расширением исходного файла TR-DOS.

Описание формата

  • Заголовок:
    • +0, 8 байт - имя файла TR-DOS
    • +8, 1 байт - тип файла (расширение) TR-DOS
    • +9, 2 байта - параметр START файла
    • +11, 2 байта - параметр LENGTH файла (длина в байтах)
    • +13, 2 байта - размер файла в секторах
    • +15, 2 байта - контрольная сумма предыдущих 15 байт (не самого файла!)
  • Данные:
    • Побайтная копия всех секторов файла

Старший байт размера файла в секторах всегда должен быть равен 0.

Алгоритм расчета контрольной суммы:

CheckSum=0;
for (i=0; i<=14; CheckSum = CheckSum + (header[i] * 257) + i, i++);