Кассета

Материал из SpeccyWiki
Версия от 14:50, 14 ноября 2009; Zxdn (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Лицензионная версия игры Chase H.Q.

Кассета (компакт-кассета, магнитофонная кассета) — основной внешний носитель информации для ZX Spectrum до широкого распространения дисководов. Так как на момент появления ZX Spectrum формат Compact Cassete являлся наиболее широко распространённым в области бытовой магнитной звукозаписи, предполагалось применение кассетных магнитофонов и кассет именно такого формата в качестве устройства хранения данных. Технически не существовало препятствий для использования любых других видов звукозаписывающих устройств при условии обеспечения ими достаточной полосы записываемых частот. Так, в разное время в отдельных случаях в качестве альтернативы кассетному магнитофону применялись катушечные магнитофоны, видеомагнитофоны (звуковой канал), грампластинки и CD-диски (первый случай — CD Games Pack, декабрь 1989 года).

ПО для ZX Spectrum на кассетах обычно распространялось в виде кассеты с лентой небольшой длины, на которой записывалась одна программа. Кассета снабжалась специально оформленной вкладкой и/или наклейками с цветной полиграфией. Некоторые распространители ПО, в частности, Durell Software, в рамках борьбы с компьютерным пиратством использовали дополнительную маркировку на корпусе кассеты, выполненную в пластике. Также к копии ПО прилагалась документация в печатном виде и, в некоторых случаях, дополнительные материалы. Точная комплектация ПО зависела от самой программы, а также издания — существовали как полноценные издания, так и бюджетные версии. Средняя стоимость коммерческой игры на кассете составляла £5-10, бюджетной версии — £3.

В целях защиты от нелегального копирования лицензионные версии ПО часто использовали нестандартный формат хранения данных на ленте и специальные загрузчики. Помимо защиты данных, они могли обеспечивать повышенную скорость загрузки данных и сопровождение процесса загрузки каким-либо простым эффектом - например, счётчиком времени загрузки. Наиболее распространённые нестандартные форматы — Speedlock (7 версий), Alkatraz, Bleepload, Softlock, Power Load.

В России, ввиду отсутствия оригинальных версий ПО и широкого распространения нелицензионных версий, имели хождение сборники ПО на аудиокассетах стандартной длины. В качестве оформления сборников обычно использовались монохромные вкладки со списком ПО, отпечатанные на матричном принтере и/или размноженные каким-либо способом. Некоторые сборники в качестве первой программы на каждой из сторон имели демонстрационную программу, содержащую рекламу фирмы, занимающейся распространением этих сборников. Также в такой программе мог содержаться список ПО в сборнике.

Технология

Аппаратная часть интерфейса магнитофона в ZX Spectrum была крайне примитивной — однобитный выход и однобитный вход с компаратором. Возможность автостарта кассеты по команде загрузки или записи, реализованная во многих домашних компьютерах 1980-х годов, отсутствует.

Кодирование и декодирование информации осуществляется полностью программным способом. В ПЗУ компьютера присутствуют стандартные подпрограммы записи и загрузки, используемые интерпретатором Бейсика. Начальный загрузчик любой программы должен быть записан стандартными средствами в виде Бейсик-программы. Дальнейшая загрузка может происходить как с помощью стандартных подпрограмм с использованием стандартного формата, так и с помощью загружаемых подпрограмм, позволяющих использовать различные нестандартные форматы.

Стандартный формат кодирования информации очень прост. Нули и единицы кодируются импульсами разной длительности, после которых следует пауза такой же длительности — около 244 микросекунд для нуля и около 489 микросекунд для единицы. За одну секунду может быть записано 1023 следующих подряд единицы, либо 2047 следующих подряд нуля. Так как нужные задержки обеспечиваются процессором, при отклонении тактовой частоты от номинальной возможна несовместимость с данными, записанными при стандартной тактовой частоте.

Стандартные процедуры используют пилот-тон - длинный сигнал перед началом передачи данных, используемый для синхронизации, а также хранение каждой записи в виде двух блоков, каждый из которых имеет собственный пилот-тон - заголовка, содержащего название файла и параметры, необходимые для его загрузки, и собственно данных. Заголовок необходим при загрузке произвольных данных. В случае, когда заранее известно, какие данные будут загружаться (например, при загрузке игры), заголовки всех файлов, кроме загрузчика, могут отсутствовать. В процессе загрузки данных стандартными процедурами на бордюр выводятся разноцветные полосы, показывающие ход процесса загрузки.

Средняя скорость передачи данных в стандартном формате кодирования составляет около 1365 бит в секунду и изменяется в зависимости от количества нулей и единиц в передаваемых данных. На 60-минутной кассете может храниться около 600 килобайт данных. Максимальное время загрузки программы для ZX Spectrum 48K может составлять около 5 минут, средним значением является 3-4 минуты. Программы для ZX Spectrum 128K могут загружаться 12 и более минут.

Некоторые отечественные клоны ZX Spectrum использовали модифицированные прошивки ПЗУ с возможностью ускоренной загрузки и сохранения данных. Данные, записанные с повышенной скоростью, не могли быть прочитаны стандартными средствами на компьютерах без такой модификации. Существует копировщик Turbo Comp (Turbo Copy), позволяющий записывать данные с обычной или увеличенной скоростью.

Максимальная скорость загрузки при использовании нестандартных процедур ограничена скоростью работы процессора и качеством носителя. В настоящее время, при использовании качественных цифровых носителей (CD-плеера или выхода звуковой карты компьютера), достижимы скорости, многократно превосходящие скорость стандартных процедур. Так, при использовании программы k7zx возможна загрузка данных со скоростью до 27000 бит в секунду. При этом снапшот игры Manic Miner для ZX Spectrum 48K загружается примерно за 15 секунд.

Форматы файлов

Для оцифровки кассет и последующего использования полученных файлов в эмуляторах ZX Spectrum было разработано несколько специальных форматов. Наиболее популярными форматами являются TAP (позволяет хранить только данные, записанные стандартными процедурами) и TZX (позволяет хранить данные в любых форматах).

Адаптация кассетных программ на другие носители

Некоторые дисковые интерфейсы (MB02) позволяют загружать с диска неадаптированные версии программ, перехватывая обращения к процедурам загрузки в ПЗУ. Вопрос адаптации кассетных программ к TR-DOS рассмотрен Николаем Родионовым в книге "Адаптация программ к системе TR-DOS".