ACNews #45
31 января 2006

Новости - Мы одолжили у Макса Тимонина АТМку и сделали на ней игру "Time Gal"

<b>Новости</b> - Мы одолжили у 
Макса Тимонина АТМку и сделали на ней игру
                           ACNews #45
                    AC Edit v0.98 supplement
                           31.01.2ooб

:::::::::::::::::::::::::::: Новости ::::::::::::::::::::::::::: 

Итак, мой пц починен методом перепаивания двух конденсаторов,и я 
снова с вами. 

У  нас на завод кто-то пронёс вирус, в связи с этим был объявлен 
шмон; в частности, закрыли доступ в интернет (я, впрочем, не был 
туда записан). 

Даже  рассказик  придумался  по  этому  поводу, в стиле древнего 
фидошного юмора: 
──────────────────────────────────────────────────────────────── 
Касперский: Эй, задача, ты хто? 
DrWeb: Я DrWeb, типа антивирус. 
К: Это я антивирус! Я ставлюсь так, что меня фиг снесёшь! 
D: А я нахожу вирусы, которые ещё не придуманы! 
К: Зато я... замедляю файловые операции в два раза! 
D: А я - перезагрузку в полтора! 
К: А я... а я... а я тебя сейчас вылечу, выскочка несчастный! 
D: Обломись, я тебя заблокировал. 
Norton AntiVirus: Я вас щас обоих сотру. 
К: А енто хто? 
D: Нутром чую - вирус! Заблокирую-ка я его. Ну-ка, ну-ка... 
N: В памяти обнаружен вирус DrWeb. 
Windows: Закрываю DrWeb. Он блокировал Касперского. Разблокирую. 
N: Товарищ юзер... я к тебе по вопросу о вирусе DrWeb. 
   Стереть файл / Отформатировать диск?
Юзер: Отмена!!! 
N: Как так отмена?.. Отмену мы не тестировали... 
W: Выполнена недопустимая операция. Снимаю Norton. 
   Перезагружаюсь...
Nero: Стой, я болванку не дорезал! 
W: Nero не отвечает. Снять задачу? 
Ю: Подождать!!! 
К: Ага, у меня теперя 20 секунд. Ща я вылечу этот DrWeb, не 
   будет выпендриваться :)
N: Эй ты, вирус! Думал, я одна задача и меня просто так сняли? 
   Закрываю тебя нафиг и сотру.
К: Ручки твои загребущие. Я свою память защитил. 
W: Выполнена недопустимая операция. Снимаю Norton. 
   Перезагружаюсь...
N: Хрен ты перезагрузишься, пока я этого гада не стёр. 
К: Ну-ну, так ты всю жизнь меня стирать будешь, а я пока твои 
   запускальники поищу...
CPU: Я кипю. 
Дрова: Температура процессора 100 градусов. Выключай комп! 
W: Выключаю комп. 
N: Ничего ты не выключишь, пока я не снимусь! 
Ю: Чё-то всё повисло. Reset! 
BIOS: Тестю память. 
Память: Тестюсь. 
CPU: БАБАХ! 
──────────────────────────────────────────────────────────────── 

С  2  по  8  января  я был в Москве у Shiru Otaku. Мы одолжили у 
Макса Тимонина  АТМку  и сделали  на ней игру "Time Gal" (игра с 
древнего  игрового  автомата,  представляет  из  себя в основном 
видео).  Конечно, сама игра делалась не всю неделю, ведь сначала 
надо   было   изучить,  можно  ли  её  сделать  вообще - и  как, 
собственно,  её делать. Сперва мы выясняли, как перегонять файлы 
с пц на АТМ. Пц Shiru не захотел писать на ZX дискеты. Заработал 
единственный способ - через MS-DOS дискету, используя iS-DOS'ные 
утилиты.  Собственно, на этом первый день и закончился ( Тимонин 
приехал  довольно  поздно,  и  все  эксперименты заняли довольно 
долгое  время,  не считая показа демок, которые Макс очень хотел 
нам показать и показал :)). 

Потом  надо  было  переделать  под  АТМ  16-цветный видеоплейер, 
который  я  писал  дома под пентагон. Как и ожидалось, запустить 
плейер  не  удалось до тех пор, пока я не переделал HDDoctor под 
АТМ  (я  пытался  ещё  летом у Чунина, но не вышло). При этом мы 
выяснили,  что  CD-ROM,  стоящий  на  АТМ Тимонина, умеет читать 
только  заводские  диски и Очень Неохотно может читать Некоторые 
CD-R.  RW-шники  он  не  читает  в  принципе.  Поэтому  пришлось 
поставить CD-ROM Shiru, и тут обнаружилось... что с ним на одном 
шлейфе   не   дружит   винт.  Поэтому  мы  занялись  ди-джейским 
перетыканием   CD-приводов.   Чтобы   проверить   каждую   новую 
компиляцию программы, надо было: 

1. Собрать загружаемую версию программы под эмулятором. 
2. Урезать .trd с помощью SN. 
3. Записать .trd на дискету. 
4. Подключить к АТМ CD-привод Тимонина (иначе не работала запись 
   на винт).
5. Включить АТМ. 
6. Скопировать .trd с дискеты на винт. 
7. Выключить АТМ. 
8. Подключить к АТМ CD-привод Shiru (иначе CD-RW на читались). 
9. Включить АТМ. 
10. Запустить программу. 
11. Выключить АТМ. 

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

На  третий  день  Shiru  предложил идею: писать код игры на саму 
болванку,  а  загрузчик с CD сделать раз и навсегда (списать его 
один раз - и тогда больше ди-джействовать не придётся). Конечно, 
чтобы отладить этот загрузчик, таки пришлось подиджействовать на 
всю  катушку  :)  Вытаскивание файла игры из trdшника (ради чего 
раньше  приходилось  запускать  SN ) Shiru смог автоматизировать 
небольшой утилиткой. 

Параллельно  я  создал  учётную  запись  на  zx.pk.ru  и пытался 
проконсультироваться  там  хотя  бы  у кого-нибудь, но получил в 
ответ  только  глупые  шутки.  Разве  что SMT смог уточнить, что 
неэмулируемость   CD-операций  в  HDDoctor'е  (а  за  ним - и  в 
видеоплейере)  происходит  из-за  кривой поддержки ATAPI-команды 
#00  в  драйвере  (эта  команда  должна снимать любую предыдущую 
ATAPI-команду).  А  без  #00 поддержку CD не написать. Разве что 
через ATA-команду #EC (хитрость, найденная Budder'ом ), однако с 
#EC  можно очень конкретно обломаться на ряде приводов - ведь её 
командоснимательные способности не документированы. 

Тем   временем   из   инета  докачалось  Delphi,  и  дальше  шли 
эксперименты   с  видеоконвертором,  для  которых  ему  пришлось 
скормить  кучу  видеороликов самого разного вида. На "Симпсонах" 
мы  обнаружили  накопление  рассинхронизации  видео относительно 
звука.  На  ролике  из  игры "Soul Edge" - плохое звучание после 
передискретизации  без  интерполяции  и  ещё  рассыпание быстрых 
фрагментов  видео,  которое  эффективнее всего лечится снижением 
площади  картинки  (например,  если  картинка  на  15%  меньше - 
пропускается на 25-30% меньше кадров!). На какой-то песне - сбой 
в  выгрузке  файла  конвертором.  На  полнометражном мультфильме 
"Призрак в доспехах" (там очень, доложу вам, реалистичные тени и 
блики,  как  живые!  ничего  подобного  в  рисованной анимации я 
раньше   не  видел) - пропуск  кадров  на  почти  не  меняющихся 
участках. Заодно конвертор удалось ускорить примерно в 5 раз. 

В пятницу-субботу я наконец дописал скриптовой движок. В ночь на 
воскресенье  мы  конвертили  уровни. Shiru находил, какие ролики 
(основная   последовательность  и  сцены  гибели)  соответствуют 
конкретным   уровням,   доставал   из   них   картинки  и  звук, 
нормализовал  звук  и  составлял  таблицы действий с указаниями, 
какое   когда.  Потом  за  пц  садился  я - конвертил  ролики  в 
спектрумовский  формат, писал скрипты, записывал болванку, тащил 
её  на  АТМ  и  садился  тестировать  уровни.  В это время за пц 
садился  Shiru  и  конвертил  следующие  уровни.  И так до утра. 
Причём  пришлось  потратить  час на выяснение структуры каталога 
CDFS.  С  определённого  момента  дескрипторы  файлов  перестали 
помещаться  в  один сектор - и начались глюки. Выяснилось, что в 
Абзаце#25  ошибка:  длина  дескриптора =#0000  означает не конец 
каталога, а переход к следующему сектору! 

В  воскресенье утром я захотел добавить в игру ещё немного кода, 
но не получилось. Собрали как есть, с тем я и уехал. 

Дома  я  портировал  игру  под пентагон с 16-цветной примочкой и 
добавил загрузочную заставку (точнее, нашёл глюк, из-за которого 
она  не  выводилась). Вот, собственно, и всё. Shiru выложил игру 
на  своём  хостинге.  Теперь Макс не может сказать, что на сайте 
http://atmturbo.narod.ru есть весь софт для АТМ :) Наша игра как 
минимум раза в 2 больше этого сайта :))) 

Ещё  в  Москве  я  успел  зарелизить  кучу самого разного софта, 
который  долгие  годы  копился  у  меня  дома. В том числе много 
исходников  я  отослал  Crank'у,  но...  ни  ответа, ни привета. 
Что-то  случилось  с  его  сайтом  или  с ним самим, или и то, и 
другое... 

А  уехал  я  из  Москвы, вывозя огромную кучу скачанных сайтов с 
библиотеками  (например,  огромная  www.krotov.info и знаменитый 
www.vostlit.info ) и энциклопедиями ( www.1911encyclopedia.org и 
ещё   несколько   маленьких,   которые  кинул  мылом  Константин 
Свиридов ). Shiru  даже  умудрился  скачать  всю  Википедию,  но 
распаковать её .tar не удалось - хитрая кодировка русских имён. 

Пока  меня  не  было, Евгений Серёгин с помощью KSA-7G подключил 
себе CMOS-часы. Протестировал их, а потом снова отключил :) 

Недавно,  когда  ко  мне  приходил  KSA-7G,  мы  случайно сожгли 
12-вольтовый  трансформатор  для  паяльника  (произошло короткое 
замыкание  в  вилке  этого  самого  паяльника). Так что теперь я 
паять не могу :( А у меня была мысля... 

Приходил  также  John,  мы  даже  попытались  написать  какую-то 
музыку.  Basil  сейчас  в  Тамбове. Интересно, что они с John'ом 
купили себе GamePad для пц. Типа чтобы веселее было играть... 

В  мыле  появлялся  Nikphe.  Он  рассказал,  что  теперь живёт и 
работает в Рязани, что Event теперь пишет музыку на пц и что оба 
они  часто  сидят  в  интернете.  Когда  я  спросил, какие у них 
последние релизы, Nikphe мгновенно испарился :-/ 

У  Ldir'а,  как обычно, Last выпустить не получилось (как он сам 
говорит, "пропил"). 

Я  существенно расширил и исправил список композиторов с помощью 
Shiru  и  Newart'а. Теперь  известно 1053 (!) AY/YM композитора. 
Подавляющее   большинство - спектрумовские   :)   И  подавляющее 
большинство - из  России  :)))  Под  Turbo-Sound,  кстати,  пока 
никто,  кроме  Shiru,  не  пишет,  хотя болтовни и обещаний было 
много. А между тем, у Чунина уже есть рабочий экземпляр Turbo-FM 
(где  вместо  YM2149  стоят  YM2203,  в  которых кроме обычных 3 
каналов имеются FM-каналы). 

Коммодорщики,   оказывается,   вполне   нормально   смотрят   на 
распространение   огромных  баз  своих  адресов...  А  меня  вот 
некоторые  спектрумисты  бранят  всё  время...  Я  уже  не  могу 
по-человечески    зарелизить    новую   версию   своего   списка 
спектрумистов, который куда подробнее старого. 

Elph   прислал   мне   конвертор   графики  от  Baze,  он  вышел 
одновременно  с  IG#8,  где  я  про  него  писал.  Он называется 
"bzither".  Палитры  подбирает  очень удачно. Но не умеет делать 
Floyd-Steinberg  diffusion  :(  Baze говорит, что есть конвертор 
"dithvide" (by Pavel Cimbal ), который это умеет. 

Выпущено: HDDoctor 0.10, Time Gal, VideConv. 



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

Новости - Мы одолжили у Макса Тимонина АТМку и сделали на ней игру "Time Gal"

Прогрммирование - ZX-СТАНДАРТ НА АВТОЗАПУСКАЕМЫЕ CD v1.0


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

Похожие статьи:
Отдохнём - Нечто: один день из жизни программиста
Тень - Я сидел и ждал. Ожидание, признаться, длилось уже давно. моя последняя сигарета красным огоньком полетела вниз.
Krasnodar Hard Corp - группа Краснодарских железячников.
Печатается с продолж. - Три СисОпенка (окончание).
От авторов - Редакция.

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