Здравствуйте, уважаемые друзья!
Недавно, мне попался в руки маленький динозаврик… но обо всем по порядку.
DOOM! Что можно добавить к этому понятию? Обреченность, Рок, Судьба. При упоминании названия игры, вспоминается незабываемый рык чудовищ, безумная динамичная музыка, одноглазый Какодемон и то время, когда это все начиналось. Почему существует челлендж запускать его на всем, что мало-мальски имеет CPU, RAM и дисплей?
В данной статье мы попытаемся систематизировать знания по вопросу разворачивания операционной Linux на наладонник 20-ти летней давности и, подхватив челлендж о том, что устройство, способное потянуть DOOM — небесполезно, установить его, а в финале статьи — демонстрация и запуск не менее известной игры, догадались какой? :))
Первый из моих компьютеров, способных потянуть упомянутую игру, был основан на процессоре i386sx, без математического сопроцессора. Да, DOOM на нем запускался, но чтобы поиграть без тормозов, приходилось уменьшать/увеличивать размер окна кнопками «+» и «-«. На дворе 2023 год, а экранчик также мал, ведь мы запускаем DOOM на КПК.
В чем магия DOOMа? Внятно объяснить не могу, но тоже попал под влияния этого феномена. Почему именно DOOM будоражит сознание геймеров со стажем? Потому что он такой первый? Потому что он настолько атмосферный? Потому что в нем есть Какодемон? А может быть пытливые умы портировали его на всевозможные платформы?
Целью статьи, является описание выполнения ряда действий:
- Краткий обзор наладонника;
- Поиск и установка (развертывание) операционной системы;
- Установка и настройка порта DOOM из репозитария;
- Установка карт (WAD);
- Проверка работоспособности игры;
- Пасхалка.
❯ Краткий обзор наладонника
Итак, динозавриком называется PDA (Personal Mobile Tool), как его позиционировал производитель. Динозаврик — потому что Zaurus часть сложносоставного слова, наподобие «тираннозавр», «бронтозавр», да и просто «динозавр», содержат в себе «завр». Шарпик-динозаврик мне достался без установленной операционной системы и софта.
В сложенном виде выглядит он так:
По меркам 20-ти летней давности достаточно интересный аппарат. Модель называется Sharp Zaurus SL-C1000, qwerty-наладонник, обладающий следующими характеристиками:
- CPU: ARM Intel PXA250 с тактовой частотой 416 MGz
- RAM: 64Mb
- VGA экран, размером 3,7″, с разрешением 640×480 точек
- Слотов под карты расширения — 2, форматы Compact Flash и SD
- Встроенная, хардварная qwerty-клавиатура
Клавиатура. О, она достойна всяческого восхищения, раздельные кнопки, изумительные тактильные ощущения. К раскладке и модификаторам привыкаешь очень быстро и в дальнейшем пользуешься с комфортом, который я не ощущал ни на одном замечательном qwerty-аппарате (имхо, ни Blackberry, ни Nokia n900, ни Nokia e90). Этими аппаратами я пользовался по нескольку лет, поэтому сравнить есть с чем (если сравнение наладонника с коммуникаторами вообще корректно), но ни на чем не настаиваю, удобство вещь субъективная и индивидуальная.
❯ Поиск и установка операционной системы
Аппаратная часть без программного обеспечения — мертва, поэтому следующий важный момент — выбор операционной системы (ОС). Выбор есть, это — Gentoo, pdaXrom, Cacko Linux и OpenBSD 5 и еще ряд программных продуктов фонда свободного программного обеспечения.
Основная сложность поиска ОС заключалась в том, что множество ссылок, которые удалось найти, были уже недействительными, за давностью лет. Однако все оказалось не так плохо. Удалось наткнуться на ссылку BACKUP флеш-памяти зауруса, которая содержала чистый образ операционной системы, устанавливаемый производителем при продаже наладонника.
Бэкап доступен по ссылке.
Найденный образ операционной системы был разархивирован и записан в корень CF-карты. Далее CF-карта вставлена в наладонник. Затем из устройства был извлечен аккумулятор, и зажав две кнопки «D» и «M», установлен обратно. На экране появилось диагностическое меню, в котором был найден и выбран пункт RESTORE.
После выбора данного пункта и успешной процедуры восстановления, которая заняла около 3-х минут, началась загрузка операционной системы. По мере загрузки было предложено остановиться на загрузки консоли или продолжить загрузку графического интерфейса. Для инсталляции софта нам достаточно командной строки. Графический интерфейс пока нам не нужен.
Загрузка увенчалась приглашением командной строки и первым делом нужно определить в какой среде мы очутились. Символ # (шарп), в приглашении, означает, что шелл имеет привилегии root. Согласно команде uname -a, выявлено, что у нас на динозаврике поселилась OS Linux Zaurus с версией ядра 2.4.20 под arm-архитектуру. Операционная система установлена (не совсем точное определение, скорее развернута, ведь я восстановил образ из заранее сохраненного бэкапа). Переходим к следующему шагу — установке клона DOOM.
❯ Установка и настройка порта DOOM из репозитария
Результатами поисков DOOMа пригодного для инсталляции явился действующий репозитарий, который выкачал целиком на локальное хранилище, а затем, при помощи кард-ридера, записал на CF-карту.
Интересующие нас установочные файлы выглядят так:
Файлы имеют расширение .ipk. Помимо файлов, содержащих в имении корень doom, был обнаружен порт prboom. Мы будем устанавливать порт prboom.
Установка выполняется запуском следующей команды
ipkg-install
После инсталляции порта prboom и попытки запустить исполняемый файл, чуда не произошло. Не хватало ряда зависимостей, в частности библиотек libSDL, обозначенных на фото. В конечном итоге, перелопатив форумы, нашел и эти библиотеки.
Все требуемые библиотеки были успешно установлены командой ipkg-install libSDL*.
Замечу, что вся инсталляция проводилась от имени привилегированного пользователя — root.
❯ Установка карт (WAD)
Итак, мы установили движок игры и после его инсталляции необходимо установить карты (локации, где мы будем бегать). Карты для игры DOOM имеют расширение .wad. Можно использовать разные оригинальные и кастомные карты, в общем, любые. Порты DOOMов под различные операционные системы вместе с картами я храню на отдельной флешке с Какодемоном, чтобы не потерять.
Карты необходимо положить в определенное место, чтобы prboom их мог обнаружить.
После всех этих манипуляций игра (ура) запустилась в портретном, не полноэкранном режиме (в окошке и с разворотом на 90 градусов). Устанавливать, так уж так, как хотелось бы, поэтому я полез искать конфигурационный файл с настройками. Файл был обнаружен по следующему пути:
Поэкспериментировав в части разрешения экрана и поменяв значения 640×480, местами:
Мы видим желаемый результат:
Видео:
❯ Пасхалка
Ну, конечно, где DOOM, там и QUAKE, что любопытно, здесь есть настройка сетевых функций, хочется попробовать сетевой мультиплеер. Заврик в роли сервера?)) Но это, еще один из будущих экспериментов.
Общий вид:
Меню сетевых настроек:
Видео:
Подводя итоги, отмечу, что установка прошла успешно и не отличалась сложностью, за исключением поиска программного обеспечения и борьбы с библиотеками. Игра запускается и идет без какого-либо торможения, не виснет и не доставляет хлопот.
Спасибо за уделенное время, надеюсь, было интересно.
P. S. В моем табеле о рангах одна из самых изящных реализаций полета фантазии — запуск «Квейка» на осциллографе. Осциллографе, разумеется, с ЭЛТ, но это, конечно, высший пилотаж, к которому надо стремиться. Если увидите внятный туториал, сообщите пожалуйста.