Info Guide #05
30 апреля 2004
  Софт  

CacheVox - Пакет программ для импорта и последующего проигрывания с дискет цифровой музыки.

<b>CacheVox</b> - Пакет программ для импорта и последующего проигрывания с дискет цифровой музыки.
              CacheVox v1.0
                  памяти
         Real Audio Player for GS
               посвящается...

   Этот пакет программ вам не нужен, если:
- вы не имеете Pentagon 128 и выше;
- этот Pentagon не содержит кэша (вариант:
 мегабайта);
- на этом Pentagon'е не реализован Covox;
- ваши друзья-пцшники не пускают вас нажи-
 мать на писюковские кнопки.

   CacheVox НЕ РАБОТАЕТ под эмуляторами.

   Пакет предназначен для импорта и после-
дующего  проигрывания  с  дискет  (двойной
плотности) цифровой  музыки среднего и вы-
сокого  качества  (mono). Музыка различных
форматов (MP3 не рекомендуется ) перед ко-
нверсией  в формат программы должна пройти
преобразование в WAV поток.Формат програм-
мы включает сжатие  в 2 раза (ровно) с ми-
нимальными потерями. Концепция сжатия сос-
тоит  в восстановлении  из  каждого  байта
двух отсчётов  с опорой на предыдущий отс-
чёт.Таблицы преобразования,которые вы смо-
жете найти в прилагаемых исходниках, пост-
роены на основе статистики и дополнительно
скорректированы на слух.Поэтому данный фо-
рмат  сжатия полностью закончен. Возможные
новые форматы  сжатия будут работать с бо-
лее сложной арифметикой.
   Как правило, оптимальная громкость при-
близительно  соответствует удвоенной гром-
кости  нормализованного звука - то есть вы
подсовывается  моему конвертору нормализо-
ванный звук,а конвертор его удвоит. Но вы-
бирать вам... 8-битный звук при надлежащей
конверсии значительно чище того, к чему вы
психологически приготовлены!
   Битрейт  поддержан всего один: 22kHz. В
наименее  ресурсоёмких циклах 22kHz интер-
полируется до 44kHz. Базовая частота не 11
kHz, потому  что инвадеры не любят грязный
саунд :) В ранних  версиях она использова-
лась, поэтому может быть возвращена наряду
со стандартной, разумеется,по многочислен-
ным просьбам :)

   Музыка  хранится на дисках объёмом 640k
(файлы на TR-DOS диске), 800k (MS-DOS) или
960k (5760x170). 0-я дорожка не используе-
тся,на неё можно записать плейер. Формати-
рование  дисков  800k  следует производить
только  здесь. Форматирование и заполнение
дисков 960k производится  с двух 640k дис-
кет копировщиком в составе CacheVox. Подо-
зреваю, что такие диски не будут пользова-
ться большой популярностью :(
   Форматёру и рестореру требуется для ра-
боты 48k; копировщику 2x640k->960k требуе-
тся 128k; плейеру - либо  48k+Cache,  либо
1024k.

         - Формат позволяет обойти некото-
        рые царапины, какие, я сейчас рас-
        скажу...
                          один программист

   Не секрет,что больше 5760 форматирован-
ных  байт на дорожку DD диска не поместит-
ся, если,конечно,вы не укрутите движок ва-
шего дисковода до 280 об/мин :) И уместить
их  туда можно одним-единственным способом
- в 7 секторов, 5 из которых по 1k. С кон-
троллером шутки не шутят,поэтому все упра-
вляющие  поля  дорожки  сведены к минимуму
для  создания  индексного  запаса, который
даст  возможность записи на последний сек-
тор без нарушения  его структуры и повреж-
дения  первого. При этом дисковод, вращаю-
щийся на 1% быстрее стандартного,не сможет
записать на 960k диске даже нулевую дорож-
ку.
   По  этой  и многим другим причинам 960k
диск для ZX не может быть создан на пц.
   Создание 960k дисков проверялось на ди-
сководах 5,25" и 3,5".
   Программа может перемещать  сектора  на
дорожке за счёт 7 необязательных байт вну-
три межсекторных промежутков, 4 необязате-
льных байт в поле пробела (после заголовка
сектора) и последовательности расположения
самих секторов.Вся работа происходит авто-
матически, однако успешность результата не
гарантирована :(

   Копирование происходит из файлов разме-
ром 255 секторов (smp.s, smp.0, smp.1...).
Их  можно  разбрасывать по 640k дискам как
вам угодно. Наплодить их способен Spectrum
Navigator:  для  этого   надо  скопировать
smp.smp  в .scl, потом  из этого .scl сде-
лать два, которые и записываются на TR-DOS
диски.
   Форматирование  для надёжности происхо-
дит с большой задержкой после позициониро-
вания,с записью и двойной проверкой читае-
мости. Читаемость  проверяется в условиях,
близких  к боевым - перед чтением делается
перепозиционирование. Но, тем не менее, на
одной  из моих дискет запись на определён-
ной дорожке где-то в районе середины диска
успевает улетучиться между форматированием
и чтением.
   Безусловно, в копировщике  вам придётся
подиджействовать. Но поменьше, чем при за-
писи  ролика  "Locomotion" :) У меня  весь
процесс занял 11 минут 45 секунд.Была идея
формировать 960k диск из MS-DOS'ного с фа-
йлом в Rar'е.
   Предусмотрено  восстановление подсевшей
записи на 800k и 960k дисках. Для 960k это
особенно долгий процесс,поскольку работает
аналогично форматированию,- более 7 минут.

             Пакет содержит:

  1. CacheVox.B - плейер в оболочке, в нём
же рестореры  дисков  800k и 960k, а также
опция  создания  дисков  960k из длинного-
длинного файла на двух дисках 640k.
  2. wavpk2pi.pas - конвертор  из  WAV (по
умолчанию  44 kHz stereo, можете откоммен-
тировать другие варианты) в мой формат.Ну-
жно откомпилировать  эту программу в Turbo
Pascal, найти в текущем каталоге достаточ-
но длинный WAV и ткнуть в него.В результа-
те получается smp.smp длиной 4096*255 (мо-
жете  исправить  это  число,  например, на
4096*159  или 5120*159). Теперь программой
Spectrum Navigator или другими программами
этот smp.smp следует скопировать на чистую
дискету/дискеты, смотря какого сорта носи-
тель вы проготовили для композиции.
  3. CVoxPlay.H - плейер в исходниках. Ну-
жен,если плейер в оболочке на вашем компь-
ютере не заработал,а вы знаете,что ваш ко-
мпьютер может играть музыку с дисков.(При-
сылайте  исправления под свои компьютеры.)
Он же нужен, чтобы сгенерировать из вашего
(! например, с настройкой 11 kHz или с не-
стандартным количеством дорожек !) вариан-
та плейера бейсик-плейер для размещения на
0-х дорожках любых CacheVox-дискет. Старая
0 дорожка при этом форматируется насмерть.
Даже если диск был MS-DOS'ный,он превраща-
ется в TR-DOS'ный.

             Грустные мысли.

   Для написания этого чуда,вроде бы,небо-
льшого по размерам,понадобилось 10 месяцев
и 3 разных компьютера. Или 4, если считать
отдельно  старую  конфигурацию  моего пц и
новую,без HDD. Ещё пришлось тестировать на
друх чужих машинах и задействовать для ко-
нверсии  комп  на  работе. Как будто всё в
программе правильно.Но я отнюдь не уверен,
что на других дисководах всё будет так же,
как у меня...
   Форматирование  и восстановление дисков
640k я не реализовал, потому что не прете-
ндую на лавры создателей FUT (точнее, FUCK
Utility, которому  FUT обязан  90% кода) и
особенно AIDS. Ведь я знаю, что стоит сде-
лать такой ресторер - и какой-нибудь умник
начнёт  ресторить на нём единственную (ра-
зумеется) копию  своего  рабочего диска. И
запорет, потому  что "алгоритмы (ц) я" ещё
умнее этого бедняги...
   Не  по назначению здесь имеет смысл ис-
пользовать только форматёр на 800k. Потому
как я приличных  форматеров этого дела во-
обще в природе не видел... Сначала я хотел
сделать  на  MS-DOS  диске 166 дорожек, но
оказалось,что мой пц при записи на послед-
ние дорожки их физически порет.Ну и хрен с
ними, подумал  я. На  диске 960k последние
дорожки тоже могут прокиснуть,но это почти
не важно, т.к.чтение всегда можно прервать
Break'ом. А  играться будет ровно столько,
сколько  прочиталось. На  всякий случай во
всех  режимах чтения (кроме кэшевого) есть
кнопка  Caps  -  перепозиционирование. Ещё
кнопки  в проигрывателе: F - промотка впе-
рёд (в  случае  чтения  в реальном времени
почти  не  помогает), Enter - смена диска,
Break - выход.

   Как я понял, развитие этого проекта па-
хнет  непредставимыми затратами времени...
Очень нужен (как никогда) человек, который
взял  бы  на себя программу. Я могу только
подкидывать  исходники движков, на большее
меня не хватит!

                           А. Кодер, автор



Другие статьи номера:

CacheVox - Пакет программ для импорта и последующего проигрывания с дискет цифровой музыки.

For Coderz - RAYCASTING - сделай себе немного DOOM'a. Алгоритм трассировки 3D лабиринта как в игре WOLF.

Inferno - О журнале.

DIY - Приспосабливаем мышь от Amiga к ZX Spectrum.

Sofтинка - обзор экранных упаковщиков для ZX Spectrum.

Inferno - Авторы и контакты редакции.

Gameland - описание игры Stronghold (Бастион).

Sofтинка - Пакет CacheVox v1.0 для импорта и проигрывания с дискет цифровой музыки.

Интервью - интервью с Disabler'ом - кодером, художником и железячником из Ростова-на-Дону.

Others - Глюки записи на дискеты. Причины и методы борьбы.

Gameland - Краткое описание проблем игры Dune: Imperia 2.

Inferno - Ошибки в предыдущих номерах.

For Coderz - Маленькие программерские хитрости.

Spectrum - Форматы упакованных данных на ZX Spectrum.

Gameland - об игре Hexagonal Filler.

Sofтинка - Hrum 3.5i - самый быстрый LZ-распаковщик с битовым потоком.

DIY - Изготовление хвоста для мышки.

Железо - Исследуем микросхему К561ИЕ10A.

Железо - Исследуем микросхему КР1533ИЕ7.

Железо - Исследуем микросхему К561ТЛ1. .

Sofтинка - экранный компрессор Laser Compact 4.0.

Inferno - Письма в редакцию.

Sofтинка - компрессор текстов MS Pack 01.96.

Inferno - Об оболочке.

Sofтинка - преимущества архиватора Rar.

Sofтинка - Упаковщик RGB картинок Powerful Code Decreaser v6.2.

Ликбез - Что такое плюс и минус напряжения.

Ликбез - Как работает защита элементов цепи.

For Coderz - Нюансы Raycasting-а.

Sofтинка - Real Information Packer 0.2x - один из самых мощных компрессоров на ZX.

For Coderz - Автосборка программы. Оптимизируем процесс сборки.

Inferno - Вступление.

Others - Результаты анкетирования.

Others - The Compo. Об анкетировании.

О Спектруме - размышления о будущем спектрума.

Железо - Еще раз о защите микросхемы КР1818ВГ93.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Мир звуков Спектрума - глава 5: Оператор PLAY для музыкального сопроцессора AY- 3-8910 (AY-3-8912).
Мысли - Навеяные MSF: Болезнь.
Demo-строение - Генератор таблицы квадратов.
Scene - interview: интервью с Минским художником Surfin Bird.
IS-DOS - Не так давно я написал макросы под "IS-EDIT 4.2 -PLUS-", и сейчас решил ими поделится.

В этот день...   21 ноября