Plutonium #19
20 августа 2001
  Софт  

Софт - X-DOS о планах развития новой оперционной системы для Спектрума.

<b>Софт</b> - X-DOS о планах развития новой оперционной системы для Спектрума.
                ┌─┐  ┌─┐   ┌───┐     ┌───┐    ┌─────┐
                │ │  │ │   │ ┌┐└┐   ┌┘   └┐  ┌┘ ┌───┘
                └┐└┐┌┘┌┘   · ││ └┐  · ┌─┐ │  └┐ └┐
                 └┐└┘┌┘ ┌─┐│ │└┐ │  │ │ │ │   └┐ └─┐
                 ┌┘┌┐└┐ └─┘│ │ │ └┐ │ │ │ └┐   └─┐ └┐
                ┌┘┌┘└┐└┐   │ │ └┐ │ │ └┐│  │    ┌┘  │
                │ │  │ │   │ └──┘ │ └┐ └┘  │ ┌──┘  ┌┘
                └─┘  └─┘   └──────┘  └─────┘ └─────┘

 (c) Boh/Image Crew...

     Проекты  на  будущее...  Cейчас  у  нас  тут  как бы просто
текучка  идет,  то есть никто никаких планов не строит, а просто
живут.
     Если   конкретно   о  X-Dos,  то  очень  много  всего  было
придумано, и многое начато. Hо все приходится делать мне одному,
и  слишком  много  всего  на  мне висит (и не только на Спекки),
поэтому почти ничего не завершено. А чего там только не было..
     -  база  данных,  в  которой  кстати  уже  работает  вполне
визуальный редактор структуры, дело за браузом стало.
     -   XMetaFile,   часть   идеологии  которого  присутстует в
муз.плеере   X-MetaPlayer,   а   именно   там  есть  формат  XM,
объединяющий в себе абсолютно любые форматы музык.
     -  И  самый  главный был план, это X-Dos 2.0... Для которой
уже  были  написаны  менеджеры  памяти  и  задач  (невытесняющая
многозадачность).

     Сейчас  же  новые программы появляются, когда меня кто-либо
попросит  утилитку  какую-нибудь написать, или вот например игру
Life.  Для  чего-то  большего  одному  мне времени не хватает, а
больше никого реально и нет.

     А  что ты имеешь ввиду под "как народ воспринимает"? Те кто
в  нее  вникся,  вполне  довольны, и с радостью принимают что-то
новое.  С  такой, что как скачают, бегом бегут смотреть :) Кроме
меня писал проги только один известный мне человек, но сейчас он
скорее всего уже и забыл это...

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

     Теперь   расскажем   по   конкретнее...  В  этот  раз  -  о
универсальном контейнере X-Metafile ..

  Hу что ж, рассказываю...
     X-MetaFile  -  это файлы, имеющие обычно расширение XM. (не
путать с музыкальными модулями на ПЦ!)
     Этот  формат  был  придуман  специально для универсальности
хранения  совершенно  любых данных, причем еще и с информацией о
них!
     Даю описение текущей версии формата, хотя имхо он требуется
еще в доработке, так как некоторых вещей не хватает.
     Hужно  сначала ввести такое понятие, как атом .  Атом - это
4-символьный  текстовый  идентификатор содержимого файла. О том,
какие  атомы  уже  заданы, позже, но приведу пример: атом "ASM0"
означает что здесь содержится музыка в формате ASM 0.XX !
     Итак,   каждый   xm-файл   имеет   128-байтный   заголовок,
непосредственно  за  которым идут данные. Вот описание заголовка
(в стиле паскаля):

 Atom: array[1..4] of Char;
 Len: Word;                      {полный размер файла}
 Reserv: array[1..11] of Byte;   {11 резервных байт}
 Name: String[50];               {Hазвание}
 Author: String[50];             {Автор}
 Date: String[10];               {Дата}

     Строки  тоже  в  стиле паскаля (ксдос с такими и работает),
где первый байт - длина строки, а число в [] - макс.длина.
 Для тех, кому непонятно, вот аналогия на асме:

 ATOM    DB "ASM0"
 LEN     DW (длина)
 RESERV  DS 11
 NAME    DS 51
 AUTHOR  DS 51
 DATE    DS 11
 В сумме 128 байт.

     Исходя  из  атома,  программа-плейер  ищет  оверлей-плейер,
который  зарегистрировал  этот  атом  как  свой.  Таким образом,
идентификация  файла  очень  проста.  Пока зарегистрированы лишь
музыкальные  форматы,  вот  список атомов, и содержимое xm-файла
при этом атоме:
 (все без плейеров)

 ASM0  модуль от ASC Sound Master v 0.XX
 ASM1  модуль от ASC Sound Master v 1.XX
 PT2X  модуль от Pro Tracker v 2.X
 PT24  модуль от Pro Tracker v 2.4
 PT3X  модуль от Pro Tracker v 3.X
 PSC1  модель от Pro Sound Creator v 1.XX
       первые два байта данных содержат уточненный номер версии
       например #01#07 - PSC 1.07
       затем сама музыка
 ST    модуль от Sound Tracker
 STP   модуль от Sound Tracker Pro

     Это  пока  все,  но для поддержки нового формата нужно лишь
оверлей написать.
     Теперь  немного  о  программе  X-MetaPlayer. Это оверлейный
проигрыватель    X-MetaFile,    однако    способен    понимать и
оригинальные   (без  XM-заголовка)  файлы  от  вышеперечисленных
муз.редакторов. Сделано это следующим образом. Оверлеи разделены
на  три типа: input, player и visualisation. По порядку о каждом
типе:
     input  -  оверлей,  распознающий  тип  файла,  и  автоматом
конвертирующий его в X-Meta формат (с заголовком)
     player  -  проигрыватель  для  конкретного  или  нескольких
атомов (например ASM0 и ASM1 реализованы в одном оверлее)
     visualisation   -   визуализация   музыки   :)  Канальчики,
индикаторы,  частотный  анализатор,  либо  просто любой эффект в
нижней трети экрана.
     При   выборе   файла   в   каталоге  (или  как  параметра в
ком.строке) алгоритм такой:
     -  вызываются по порядку все input-оверлеи, пока какой-либо
из них не скажет, что этот файл его. После этого считается что в
памяти лежит уже готовый xm-файл.
     -  проверяются  все  player-оверлеи  на  поддержку  нужного
атома. Если такой плейер найден, запускается проигрывание, иначе
сообщаем что нет нужного плейера.
     Вот  и все, ведь все очень просто. А так как все оверлеи на
рамдиске, скорость поиска приемлемая.
     О формате оверлеев и их функциях пока рассказывать не буду,
если надо, то в следующий раз.
     Скажу лишь, что были мысли расширить заголовок до 256 байт.
Тем самым упростится загрузка и остальное.

                                          Продолжение следует...
                    Ekaterinburg city 2001.



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

Вступление - не заставил себя долго ждать новый номер нашей газеты ;).

Софт - X-DOS о планах развития новой оперционной системы для Спектрума.

News - Черная ворона - новый электронный журналы на Спектруме.

News - Новости, старости: Chaos Construction 2001 состоялся, Pussy стала freeware, новое бумажное издание на спектруме, Raver покинул ряды Phantasy, новая версия эмулятора спектрума Real Speccy, Assembly 2001, новый коммандер Real Commander 2.0, Delirium Tremens уходят со спектрума...

Press - обзор свежей прессы: Explorer 1,2,3, IzhNews #0C, Body, Zx-Light, Inferno #2, ULTIMATUM#2, MADNESS #1, KoSME#0.

Humor - юмор.

Fazan - Поток БезФазания от Анонимного Лица/GmdTeam.

Программирование - формирование изображения на экране монитора.

Программирование - формирование изображения на экране монитора (продолжение).

Демопати - Chaos C0NstRucTI0n'2001 отчет от Shiru Otaku.

Демопати - Chaos C0NstRucTI0n'2001: результаты.

Демосцена - портрет "нового" Спектрумиста.

Авторы - авторы газеты.


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

Похожие статьи:
Реклама - Реклама и объявления ...
Paradox 2000 - отчет Касика с поездки на Paradox'2000.
News From Ukraine: Still Enough Haxxors In Smash!
Письмо №266
Deatch Come - Black Metall.

В этот день...   16 апреля