1

Интервью с Куликовым Дмитрием UV3DUK.
Взято для журнала ЗАРУЛЁМ
https://vk.com/prospeccy

https://zxaaa.net/view_demos.php?t=%2F& … hor=Author


    В начале 2017 года по просьбе спектрумистов мира я начал поиск хакеров, которые пропали в бездну жизни абсолютно бесследно. Проведя анализ текстов бегущих строк на наличие дополнительной информации мне удалось найти многих. Фото обнаруженных выложены на форуме. Однако найти Куликова Дмитрия было сложно из-за мизерности информации об объекте поиска.  В итоге я обратил внимание на картинку с надписью UV3DUK.

https://www.zxaaa.net/screen10/paradise.png

Настоящая древнегреческая загадка, - подумал я. Но, потом кто-то мне сказал что это позывной радиолюбителей. Тут час я посмотрел фильм про космонавта Леонова, которого спас радиолюбитель и документальный фильм про перевал Дятлова. Тут меня осенило, что надо искать по радио позывному. Примерно 24 часа поисков вывели меня на сайт-базу данных радиолюбителей на котором все позывные были собраны. Далее дело техники, регистрация и вот она! Долгожданная почта Дмитрия у меня в кармане. Затем я написал письмо и о чудо! Дмитрий ответил и обещал дать интервью. Правда, сразу предупредил, что времени на это фактически нет.

https://zxdemos.ru/uploads/images/2/e15c1f58ef891950c2bcf64d07fc2036.jpg
Kulikov Dmitry - автор многочисленных интро 1993 года
   
1. Привет Дмитрий! Где учился?

UV3DUK
Окончил 11 классов в 1993 году и поступил в МАИ на факультет радио электроники летательных аппаратов. В 1999 году окончил МАИ.

2.С чего началось увлечение ZX Spectrum? Какая первая модель компьютера была в наличии?  Как познакомился с тусовкой 90-х, ведь город Дмитров относительно далеко от Москвы?

UV3DUK
Тут нужно начать издалека. С детства увлекался радио электроникой. Импульс дал в этом направлении мой отец. Он начал меня привлекать к сборке простых схем (как сейчас помню - первое, что мы с ним собрали, был детекторный радиоприемник). Меня это очень заинтересовало. Потом еще что-то вместе собирали. Одной из серьезных на тот момент конструкций был осциллограф. ЭЛТ и 2 радиолампы. И он даже работал! В 1986 году в п. Орево (где я жил в то время)открылся кружок скоростной радиотелеграфии (азбука морзе) - я и еще несколько сверстников записались на этот кружок. Преподавателем был радиолюбитель, у которого был позывной на КВ (коротких волнах). Собственно, с этого момента у меня открылось еще одно увлечение - радиосвязь на КВ. В 1990 году был получен позывной 4 категории UV3DUK - который, собственно, и фигурировал в моих интро.
К этому моменту я уже с родителями переехал жить в г. Дмитров. Здесь же и произошло первое знакомство с Speccy. После переезда в г. Дмитров (в 1987 г.), я в местном доме пионеров записался в радио кружок, где по счастливой случайности руководителем также оказался радиолюбитель-коротковолновик, и помимо занятий радио электроникой я ещё совершенствовал навыки в CW (азбуке морзе). У одного из товарищей с радио кружка оказался дома компьютер ZX Spectrum (как потом выяснилось - ленинградский вариант). В каком году это было - уже точно не помню. Но точно помню - что была "убита" уйма времени за игрой в компьютерные игры (чего стоили эти бесконечные загрузки с кассеты и "зависание" на самом интересном месте, после очередного включения холодильника). Через какое-то время захотелось и себе собрать такое же "чудо". Родители поддержали финансово (в тот момент я учился в 8 или 9 классе) и начались поездки на Митинский радио рынок за комплектующими. Первым, собранным мной компьютером, был также ленинградский вариант. Сразу он, конечно же, не заработал. Но благодаря моему увлечению радио электроникой и наличия в домашней лаборатории осциллографа (на тот момент у меня уже был промышленный вариант лампового варианта осциллографа С.... - номер уже не помню. Спасибо моему дяде, который был военным, и смог для меня "достать" экземпляр) - в компьютер удалось вдохнуть жизнь. Компьютер использовался исключительно по своему прямому назначению - для игр. Но достаточно быстро мне все это дело наскучило... И у "старшего товарища" я увидел компьютер ATM (ZX-Spectrum с дисководом). Загорелся этой темой. Решил попробовать собрать Profi 128. Все удалось (хотя заработал тоже не сразу, но уже был богатый опыт по ленинградскому варианту). У меня появился компьютер с TR-DOS! Теперь не требовалось ждать 5 мин. для загрузки с кассеты - все просто "летало". Но одновременно образовалось "голодание" в наличии игр, адаптированных под загрузку с дискет. Большинство из того, что было у моих знакомых, было перенесено с кассеты при помощи кнопки "Magic". Да, что-то появлялось с радио рынка, переделанное под нормальную работу с TR-DOS. Но при наличии своего "архива" на пленке, возникло желание самому попытаться все это дело перенести корректно под TR-DOS. Вот с этого момента и появился UV3DUK...
    К сожалению, дальше уже точную хронологию событий восстановить в памяти не могу, поэтому как есть.

Продолжаем.

В общем, я заинтересовался процессом перевода игрушек с пленки (кассет) под TR-DOS. Все началось с примитивного способа - доработки загрузчика на BASIC-е. Вот тогда-то я впервые командой PRINT и вывел в процессе загрузки свою визитную карточку - UV3DUK. Что это была за игра - уже не помню. Первоначально раздавал свои дисковые версии среди своих друзей в г. Дмитрове.  Тут нужно сделать небольшое отступление - в этот период я был частым гостем на Митинском радио рынке. Покупка запчастей для сборки компьютеров, мое увлечение радио - покупка комплектующих для сборки радиостанций. Сборка АОНов - сначала для себя, потом это было частью моего заработка - собирал  АОНы на продажу в г. Дмитрове и на Митинском радио рынке. И вот во время этих визитов на рынок я и познакомился с Сергеем SHI-SOFT. Уже точно и не помню, с чего это знакомство началось. Могу предположить, что разговор завязался вокруг темы создания версий игр под TR-DOS. Он на радио рынке занимался продажей игр для Speccy, а я в какой-то момент стал его клиентом (купил несколько дискет с играми). При следующих встречах завязался разговор на тему перевода версий с пленки на дискеты. Его этот вопрос, естественно, заинтересовал, и я с ним поделился своими скромными достижениями в этой области (мои первые дисковые версии игр с загрузчиком на BASICe). Он выразил заинтересованность в моих версиях под TR-DOS и у нас образовался взаимовыгодный бартер: я ему привозил дисковые версии игр, которых у него не было на дискетах - он меня снабжал дискетами с дисковыми версиями тех игр, которых не было у меня (а в дальнейшем - когда я подрос по уровню - и пленками, которые хотелось- бы перевести под дискеты). Но достаточно быстро я уперся  в проблему - не все игры можно было перевести под
TR-DOS таким примитивным способом (загрузчик на BASICe). Многие игры имели нестандартный загрузчик, который загружал небольшой код на ассемблере, а дальше загрузка выполнялась уже из этого кода, либо игры были многоуровневыми и требовали загрузки в процессе игры.
Возникла потребность в освоении ассемблера. Была приобретена на радио рынке книжечка с описанием ассемблера Z80 (название уже не помню - помню только, что она была в зеленой обложке) - она стала моей настольной книгой. Мне очень нравилось, насколько доступно в ней было все изложено. Благодаря этой книге я, собственно, и изучил ассемблер Z80. Сначала пробовал создавать какие-то примитивные вещи. Причем, на первом этапе даже не на ассемблере, а в машинных кодах (я не сразу научился пользоваться программой для написания на ассемблере и дизассемблером). Со временем освоил дизассемблер и начал изучать код игр на предмет поиска мест, которые требовалось доработать для адаптации под загрузку с дискет. Что-то стало получаться, на достаточно примитивном уровне - но уже на ассемблере. Естественно - захотелось чего-то большего. К этому времени я уже видел дисковые версии, сделанные другими известными на тот момент личностями: Vasilyev Anton, Laptev. Было к чему стремится. Стало интересно, как сделаны загрузчики у Васильева Антона (с ним не был знаком и общаться не довелось). И вот тут столкнулся с новой проблемой - к этому времени и ассемблером-дизассемблером уже овладел и были свои наработки в загрузчиках для игр (еще очень примитивных), но с наскоку разобраться с работой загрузчика Антона не получилось. Его игры (которые меня заинтересовали) загружались из одного файла, а сам загрузчик был "зашифрован" и не получалось с лету в нем разобраться.... А очень хотелось.(как я потом узнал - Антон применял свою систему "защиты" от копирования и поэтому кодировал свои загрузчики с помощью своей системы APS (Anton Protection System)). Своим умом на тот момент я не смог "открыть" его загрузчики. Но по счастливой случайности через Сергея SHI-SOFT я познакомился с Владом Воеводским. Он мне "открыл"
глаза, насколько просто открывается ларчик. Не помню, по какому поводу, но я оказался у него в гостях и посетовал на свою проблему. Влад с задором сообщил мне, что это в общем то и не проблема и продемонстрировал - как все решается. Я, честно говоря, был очень удивлен простоте решения (которое лежало на поверхности) и немного расстроен фактом, что сам до такого способа не смог додуматься... Кнопка Magic, нажатая в нужный момент. А дальше анализ кода на предмет поиска интересующего меня загрузчика. Ларчик открылся не просто, а очень просто. Используемые Антоном коды были взяты на вооружение (загрузка из одного файла). Я тоже начал выпускать дисковые версии, состоящие из одного файла. Вот что меня в них подкупало - простота копирования (1 файл, а не 2-3-4....), быстрая загрузка (нету лишних движений головки дисковода при обращении к очередному файлу).

Качество моих дисковых версий вышло на другой уровень. К этому моменту я начал практиковаться в создании интро к моим детищам. Естественно, на первом этапе брались наработки "старших товарищей", немного видоизменялись и в таком виде включались в состав выпускаемой дисковой версии. По какой-то причине в это же время у меня возникла назойливая идея создания своей системы защиты по аналогии с APS, но лишенной тех недостатков, которые позволяли ее легко взломать (зачем мне это нужно было - я уже и не могу вспомнить. Какого-то глубокого смысла я сейчас в ней не вижу. Если Антон Васильев ее делал ради защиты своих дисковых версий от копирования, то я ее делал просто так - чтобы было. Ну вот захотелось и всё.). Я много времени проводил в поездках на подготовительные курсы в институт (ездил 3 раза в неделю из Дмитрова в Москву) - 1,5 часа в один конец. Вот в это время в общей тетради я и писал код своей будующей системы DPS (ничего придумывать не стал: у Антона APS, у меня DPS).  Ключевым моментом в работе моей системы была защита от кнопки Magic. Я эту проблему решил следующим образом - расшифрованный код загрузчика копировался в экранную область памяти, как раз в ту её часть, которая "портится" работой штатного алгоритма Magica, и из этой области и запускался на исполнение код расшифрованного загрузчика. Поэтому, штатным образом через кнопку Magic, получить код моего загрузчика не представлялось возможным. Сама система защиты работала следующим образом: я готовил исходники с загрузчиком, интро и самой игрой. Далее запускал свою систему DPS, которая кодировала загрузчик, собирала все файлы в один и записывала на диск. Процесс был полностью автоматизирован. Исходники DPS и саму DPS я никому не отдавал. Вот на этом этапе я стал выпускать дисковые версии, которые по качеству своего исполнения меня удовлетворяли, ведь я добился автоматизации процесса создания дисковых версий игр и мои версии распространялись на Митинском рынке через Сергея SHI-SOFT (на самом деле, сначала это был Тушенский радио рынок, а потом уже он мигрировал в Митино после его закрытия). Через него же у меня появлялись и новые знакомые из известного списка (но об этом чуть позже).

Очень быстро само создание дисковых версии мне стало на скучивать - хотелось каких-то более сложных задач (чтобы развивается дальше). И мне их подкинули. С распространением 128К версий Speccy с AY, появился спрос и на игры. Но те игры, которые на первых парах появлялись - оказались "кастрированными" версиями: без музыки, с некорректной работой многоуровневой загрузки и т.п. Сейчас уже не помню кто из моих знакомых мне предложил заняться восстановлением таких игр к их нормальному виду. Мне это показалось интересным
и я занялся данной работой. Стал изучать внутренности кода игр на предмет поиска утерянных фрагментов кода. И стало что-то получаться. В некоторых играх удалось вернуть оригинальное музыкальное сопровождение для AY. В части игр, где музыка была утеряна безвозвратно и не удавалось найти ее оригинал - была произведена замена альтернативное музыкальное сопровождение. Занимался починкой загрузчиков для многоуровневых игр, убитых горе - хакерами. Параллельно внедрял Cheat-mode в игры (собственно, этот режим в многоуровневых играх в первую очередь требовался мне самому, чтобы оттестировать корректность работы загрузки уровней). Тут возникло еще одно интересное направление - русификация игр. Сам я процессом русификации не занимался, но с удовольствием наблюдал за результатом работы других на этом направлении. И по результатам появления русифицированных версий обратил внимание на вот какую проблему: возникали сложности с внедрением русского текста в графических объектах (спрайтах). Этот момент побудил меня на создания утилиты SCE (Screen Сracker Editor). Какова была роль Влада Воеводского в этом проекте - я уже и не помню. Проект был успешно реализован и SCE я раздал всем знакомым, кто был заинтересован в редактировании графических объектов внутри игр. Утилита позволяла находить спрайты в играх (если они не были закодированы), редактировать их в графическом редакторе и вставлять их обратно в игру. Процесс обратной интеграции в игру был автоматизирован.

Не могу никак вспомнить имя автора архиватора для спектрума. Меня с ним познакомил Сергей SHI-SOFT. Я был очень впечатлён возможностью уменьшения размера файла игры путем ее архивирования и дальнейшего разархивирования в памяти после загрузки. Причем сам модуль, занимающийся раз архивацией, занимал очень мало места в памяти. Я начал активно пользоваться архиватором при создании своих дисковых версий. Плюсом был меньший размер файла с игрой (и на дискету в результате влезало больше игр) и уменьшение времени загрузки (правда, не во всех случаях здесь был выигрыш - требовалось дополнительное время на разархивацию).

А каким архиватором ты пользовался?

UV3DUK
    По поводу автора архиватора, которым я пользовался - если не путаю, то это  Владимир Василевский. Он же автор утилиты ADS (Advanced disk services).

ПРОДОЛЖЕНИЕ, БУДЕМ НАДЕЯТСЯ СЛЕДУЕТ....

Новое м е г ААА д е м о готово на 14%

2

Продолжения не было? Очень интересное интервью! А ты ему рассказал про Форум? Почему его там нет, личность то культовая

3

abelenki сказал:

Продолжения не было? Очень интересное интервью! А ты ему рассказал про Форум? Почему его там нет, личность то культовая

я предпочитаю не давить излишне на людей, например как это делает МооH. Если человек не хочет или не может значит всё. Продолжения не было. Чел перестал отвечать. Мы все люди взрослые, у каждого свои проблемы. Может он ваабще заболел или что-то изменилось в жизни. Я и так своими глупыми вопросами вырываю человека из общей реки жизни. Например KSA софта я не смог уговорить вернуться. Это норм. Кто то застрял в прошлом, а кто то совсем не хочет туда возвращаться или вернется позже когда захочется.

Новое м е г ААА д е м о готово на 14%