project A DOS® Server In a Virtual Machine

Интервью с Валентином Ангеловским


Вот уже пару лет я сижу в irc.rubbermallet.org, и там я познакомился с одним очень необычным человеком по имени Валентин Ангеловский.
Валентин живёт в Австралии, где стада кенгуру рассекают бескрайние просторы материка. У него славянские корни, но его родным языком является английский.
Данная статья - это интервью с Валентином о его самодельном устройстве под названием "Flea86".



Здесь, в России, у нас принят термин "downgrade" (по-русски звучит "довнгрейд"), который подразумевает использование старых компьютеров и "софта" для решения каких-либо задач в нынешнее время. В англоязычных странах, я, честно говоря, никогда не встречал такое значение этого слова. Вероятно, наиболее близким термином к русскому "downgrade" будет слово "retrocomputing" (http://en.wikipedia.org/wiki/Retrocomputing). А, соответственно, человек, который увлекается ретрокомпьютингом, в английской литературе называется "a retrocomputing hobbyist" (собственно, дословно это и переводится так, как я написал ранее).
Так вот, Валентин Ангеловский - именно такой человек.
Давайте же попытаемся узнать побольше о его необычном изделии, задав Валентину вопросы.


Я:
Были ли какие-либо предпосылки к возникновению Flea86, перед тем как ты начал его разрабатывать? Может быть, тебя вдохновило некое устройство с такими же характеристиками?

Валентин:
Flea86 - это действующий проект, который официально стартовал в середине 2009 года как мой собственный вызов самому себе. Примерно в то время я использовал очень популярный эмулятор ПК под названием "DOSBox". Ностальгия по старым временам была настолько сильна, что я решился во что бы то ни стало, используя свои базовые знания в программировании, создать свой собственный эмулятор, по сути, "с нуля", который бы работал на очень дешёвом оборудовании с минимальными системными требованиями. Я бы не смог воплотить свою мечту о Flea86 в жизнь, если б не имел представлений о том, что такое микроконтроллер Intel 8052, и вообще что из себя представляет внутренняя архитектура компьютера IBM PC.


Я:
В нескольких словах: что такое Flea86? И что он может делать?

Валентин:
Flea86 - это 16-битный x86-совместимый эмулятор, который спроектирован для работы на современных вариантах микроконтроллера Intel 8052. Эмулятор работает на базе очень быстрого (и 8052-совместимого) процессора Appotech AX-2005. Хотя, стоит отметить, "облегчённые" версии эмулятора могут быть выполнены, в принципе, на любом чипсете 8052. Главное требование - это достаточное количество ОЗУ и ПЗУ.
Flea86 работает на основе метода булевых операций (в среде разработки ПО для встроенных систем такой механизм называется "bit-banging"), используя микросхему 8051, которая имплементирует основные функции системы IBM PC, такие как ЦП, BIOS, 8253/8259, клавиатура и мышь PS/2, SD-карты, контроллер памяти DRAM и VGA. Всё это эмулируется ядром одного процессора!


Я:
Почему "flea"? :)

Валентин:
Хм, хороший вопрос! Изначально мой проект назывался "DX-demo" (игра слов: от компьютера 386-DX), но это было временное имя. Наконец, пришёл тот час, когда проект обрёл свои черты и формы, и мне нужно было придумать какое-нибудь звучащее имя. И таким именем стало "Flea". :)


Я:
Матплата Flea86 сделана очень аккуратно, судя по фотографиям. Вообще я видел кое-какие x86-совместимые устройства, но там была туева куча проводов... Можешь поделиться секретом: что ты используешь, чтобы так аккуратно паять?

Валентин:
Да конечно! У меня есть несколько способов, чтобы Flea86 получился "презентабельным":
1. Дизайн печатной платы выполнен так, чтобы было понятно, что куда идёт и откуда.
2. Ввиду того что Flea86 - это изделие ручной работы, я использую метод "Drag-soldering" (прим. ред.: в русском языке аналога этому термину нет, поэтому просто посмотрите пример на видео: http://youtu.be/erb6-i54tbo). Это даёт достаточно хороший результат, пайка получается аккуратной. Такая методика пайки применима для большинства (но не для всех) микросхем.
3. Игла для распайки и лупа - два инструмента, без которых никак не обойтись при чистке плат от последствий короткого замыкания вследствие действия слабых токов.


Я:
Flea86 - это, по сути, голая плата, и она подвержена действию электростатических разрядов. Ты задумывался о создании для неё специального корпуса для защиты от воздействия внешней окружающей среды?

Валентин:
Хотя Flea86 - это достаточно устойчивое к внешним воздействиям устройство, у меня были мысли о том, чтобы приобрести для него полноценный корпус.


Из-за того, что производитель установил высокую цену на корпус (примерно $130 для "бюджетного" варианта), я решил временно забыть про эту идею до тех пор, пока не найду более "дешёвое" решение.


Я:
Ты выпуск Flea86 поставил на поток, или же это индивидуальные заказы?

Валентин:
Сейчас Flea86 собираются вручную в очень малых количествах вследствие высокой стоимости корпусов для них, о чём я упомянул ранее.


Я:
Ты делаешь за деньги или бесплатно? И вообще как можно заказать компьютер?

Валентин:
Пока что я не делаю платы Flea86 бесплатно; мне всё же очень хочется верить, что я беру адекватную цену за них. :) Стоимость базовой комплектации системы Flea86 без Slave USB-порта на борту обойдётся в $60; если же брать плату, оборудованную портом USB, то её стоимость составит $75. Расчёт цены идёт как следствие очень ограниченного количества запасов товара. Мне бы очень хотелось, чтобы те читатели, что заинтересовались моим предложением, зашли бы на мой web-сайт www.fleasystems.com: жду ваших отзывов на мой e-mail, контакты можно найти на сайте.


Я:
Сколько времени уже ушло на работу над проектом "Flea86"?

Валентин:
Если учесть с момента начала разработки, я уже потратил, грубо говоря, около двух с половиной лет (с июня 2009-го по январь 2012-го).


Я:
Валентин, а ты в курсе про Raspberry Pi, Arduino и прочие одноплатные компьютеры? И если да, то знаешь ли ты какие-нибудь ещё одноплатные устройства, совместимые с процессором 8086?

Валентин:
Да, я в курсе про эти системы; более того, знаю много других! Если брать во внимание самодельные 8086-совместимые компьютеры, то есть ряд проектов по разработке устройств, наследующих процессор 8086 (к примеру, система Xi-8088 Сергея Киселёва), или даже более современное "железо" на базе FPGA (например, Zet x86 System-On-Chip).


Я:
Какие-нибудь идеи на будущее есть по поводу Flea86?

Валентин:
Ну, я недавно закончил тестирование шины расширения "Flea86-to-ISA":


позволяющей дополнять компьютер различными модулями.
Будем надеяться, что когда эта статья выйдет в печать, я всё же опубликую кое-какие схемы / исходные коды на систему Flea86 для тех, кто увлекается старым "железом" и "софтом", а также для хакеров. Впоследствии я буду открыт для дискуссий и предложений. :)


Я:
Над какими ещё проектами ты работаешь?

Валентин:
Сейчас я работаю над взаимосвязанным проектом, который я назвал "Fleatiny". Я его полностью, на 100%, хочу сделать опенсорсным.


Fleatiny изначально задумывался как облегчённый / упрощённый вариант Flea86, учитывая ещё то, что Fleatiny работает с компактным интерпретатором языка программирования под названием Tiny-BASIC вместо стандартного эмулятора. :) Сейчас имеется несколько версий Fleatiny, но все они на стадии разработки: есть варианты с поддержкой микроконтроллера и варианты системы, которые основываются на FPGA. Подробнее об этих проектах можно узнать на моём сайте www.fleasystems.com.


Я:
Большое спасибо за интервью, Валентин!

Валентин:
Всегда пожалуйста!


Интервью проводил Артём Ефремов специально для журнала "Downgrade".

22 января 2013 год.


[Английская версия, оригинал (English version, the original)]