Эмулируем Windows на Android Lollipop через BOCHS

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
После неприятной неудачи с QEMU я обратил взор на программу под названием BOCHS (читается как «бокс», а не «бочс» и точно не «бош»). О ней я сказал пару ласковых в предыдущей статье-списке, но повторюсь — это эмулятор, выполняющий в данном контексте ту же задачу, что и QEMU, использует тот же SDL, но является, по заверениям свидетелей, более стабильной в работе. И да, она идёт на моём D802 с Android 5.0.2, так что от тест-драйва мне не отвертеться никак.


Для начала — капелька истории. Bochs изначально разрабатывался товарищем по имени Кевин Лоутон (Kevin Lawton) как платное ПО, но с опубликованным исходником для использования оного в сторонних продуктах. В 2000 году программу купила компания Mandrakesoft, нынче переименованная в  Mandriva, и сменила лицензию на GNU Lesser General Public License. Всеядность BOCHS потрясает — приложение идёт везде, где ему хватает мощностей, и Android исключением не стал.


Базовые правила запуска таковы. Качаем apk. файл (у меня оказалась версия 2.5.1 от 27 ноября 2015 года с парой ключевых изменений), устанавливаем его. Далее качаем архив SDL, он отличается от оного для QEMU, так что предыдущий сносите. Распаковывать его нужно в ту же корневую папку. Вслед за распакованными файлами в папку перемещается образ Windows, в моём случае — Windows 95. Важно переименовать его в c.img, иначе быть беде! Образы ОС лучше брать специально подогнанные под эмуляторы. Win95 я использовал от MVoloshin, а Win98 — от MaHiaK_biosa. После этого в папку перемещается (если его там нет изначально) текстовый файл bochscrs.txt, а после — уже идёт запуск самой программы.


Для начала скажу, что BOCHS версии 2.5.1 имеет встроенную эмуляцию мышки, что в отдельных образах конфликтует с приложениями вроде PowerPro. Первая моя попытка эмулировать Windows 98 оказалась неудачной именно поэтому. Со сборкой W95 от MVoloshin всё прошло успешнее. Система загрузилась меньше чем за минуту, мышка работает сносно в плане перемещения, а вот некоторые программы пахать отказываются. Например, одной из особенностей данного репака указывалась возможность выходить в Интернет через Firefox или IE версии 5.5. Не работает ни через один браузер.


Сама ОС при этом работает крайне медленно, переключение между программами занимает по пол-минуты. Курсор перемещается туго, подключение, скажем, GameSir G3s в режиме мышки ситуацию не исправляет. Двойное нажатие сделать практически нереально, приходится открывать файлы и папки через контекстное меню. Ничего толкового в сборке я не нашёл. И ещё один момент, который меня сильно разочаровал.


Я — далеко не самый казуальный пользователь Android, но и спецом себя не считаю. Поэтому, когда я не смог запустить через BOCHS Fallout, хотя пытался сделать это разными способами, вплоть до создания дополнительного HDD, у меня, как говорится, запал иссяк. А потом случилось ещё более страшное — эмулятор перестал запускаться. Двойная переустановка всех компонентов и многократная попытка замены образов не привела ни к чему.


Теоретически, существует ещё один способ запуска приложений, не входящих в образ ОС BOCHS. Для этого нужно создать отдельный образ диска с нужными приложениями, закинуть его в папку SDL под именем "D.img" и добавить в файл bochscrs.txt следующую строку:

/sdl -L. -m 128 -boot c -hda C.img -hdb D.img -usb -usbdevice tablet

В результате этого, теоретически, после запуска ОС в «Моём компьютере» появится ещё один диск, откуда загрузка программ производится и будет. Но проблема одна — этот способ создавался по QEMU, и я не гарантирую его работу на BOCHS, как и не могу его проверить.


В результате могу сказать, что BOCHS не представляет ценности для игромана — даже если игры и можно на нём запустить, то ждать пять минут для загрузки бессмысленно. Для работы эмулятор подходит лучше, но и тут проблемы есть. В целом, если тебе нужна стабильная, пусть и медленно работающая старая версия Windows в кармане, то рекомендую.