Как стать автором
Обновить
2390.03
МТС
Про жизнь и развитие в IT

Picotron: фэнтезийная виртуальная рабочая станция. Тестируем и играем

Время на прочтение5 мин
Количество просмотров2.6K

Привет, %USERNAME%. Мое знакомство с 8-битными игровыми консолями состоялось в далеком детстве, когда родители подарили мне Dendy Junior. Сейчас я понимаю, что это всего-навсего бюджетный клон японской Famicom NES, но тогда он мне казался абсолютной магией. Заглавную музыкальную тему из Robocop 3 до сих пор считаю шедевром, а в космическую леталку Life Force от Konami люблю поиграть даже в 2025.

Время 8-битных консолей давно закончилось, но силами энтузиастов сейчас можно найти эмуляторы на любой вкус и цвет. Дальше всех пошли разработчики из Lexaloffle Games, которые решили в 2015 году создать собственную виртуальную игровую приставку PICO-8. Ее главной особенностью стало то, что она имитирует реальные ограничения 8-битных консолей 80-х и при этом работает на любом современном «железе».

Рост популярности заставил авторов сделать еще один шаг и создать 16-битную версию такой виртуальной приставки. Новинка получила имя Picotron, и сегодня мы с вами посмотрим, что она умеет.

Покупка и тестирование

Picotron, как и предшественник, — продукт коммерческий и платный. Хорошо это или плохо, решать каждому. Лично мне всегда приятно поддержать автора полезного приложения, поэтому лицензию без колебаний купил. Чтобы просто посмотреть на то, что из себя представляет Picotron, можно заглянуть на сайт и поиграть в понравившиеся картриджи прямо в браузере.

На момент выхода этого поста за лицензионную версию просят 19 $, в целом адекватно. Главное, что никаких подписок и прочих In-game purchases. После оплаты вам дают ссылку на скачивание и сообщают специальный код, который надо ввести в личном кабинете Lexaloffle. Капча во время регистрации просто великолепна:

Пройди три уровня и узнаешь PASSCODE
Пройди три уровня и узнаешь PASSCODE

Игры очень приятные и проходятся менее чем за минуту. Пиво за мой счет тому господину, кто это придумал. Устанавливаем Picotron и запускаем. Виртуальный десктоп стартует менее чем за 3 секунды:

Добро пожаловать в Picotron
Добро пожаловать в Picotron

Картриджи

Ну какие у фэнтезийной консоли рабочей станции могут быть картриджи, скажете вы? Авторы не пошли по стандартному пути, решив, что самым крутым и визуально приятным способом передачи программ и игр станут обычные png-изображения. Особенность этого формата — легкость, с которой в альфа- или одном из цветовых каналов можно спрятать полезные данные. Классическая стеганография, к тому же дающая возможность для творчества при создании дизайна.

Пасьянс Freecell. Лицензия: CC4-BY-NC-SA, источник
Пасьянс Freecell. Лицензия: CC4-BY-NC-SA, источник

Вот такие красивые картинки и представляют собой картриджи для Picotron. Их можно невозбранно скачивать с официального сайта или прямо внутри рабочей станции. Разработчики запустили свою собственную BBS (Bulletin Board System), на которой лежат все картриджи, выложенные пользователями:

BBS-сервер проекта
BBS-сервер проекта

Там же будут выкладываться новости проекта и полезная информация по возможностям приложения. Любой скачанный с BBS картридж запускается в отдельной «песочнице», имеет доступ только к /appdata/bbs/cart_id и не может навредить системе. При этом доверенным картриджам можно дать полный доступ, просто убрав соответствующую «галочку» в свойствах:

А помните, похожие глазки некоторые ставили на Windows 3.11
А помните, похожие глазки некоторые ставили на Windows 3.11

Главный же картридж — сам Picotron, сидящий в оперативной памяти по адресу /ram/cart.

Программирование

Прелесть Picotron в том, что тут есть скриптовый язык Lua. Можно создавать неограниченные по размеру .p64-файлы для крупных проектов, но самый цимес в том, чтобы уложиться в стандартный размер картриджа 256 Кб.

Попробую поздороваться в стиле Hello, world:

Нажимаю Ctrl + R — и вуаля:

Как по мне, так выглядит максимально лампово и прекрасно. Это настоящая находка для творческого кодинга, а ограничения консоли заставят подумать об оптимизации. Любое приложение, написанное вами или запущенное со стороннего картриджа, использует в качестве точки входа /ram/card/main.lua. Прервать исполнение можно нажатием Esc.

Написанное приложение, как и любой другой файл, спокойно сохраняется в файловой системе для дальнейшего использования. Ну а если захотите удалить что-либо, то тут есть аналог Корзины со смешным адресом /ram/compost.

Создание музыки

Если словосочетание «трекерная музыка» для вас не пустой звук, то вы уже знаете, чего ожидать. В Picotron встроен простой, но понятный редактор, использующий ресурсы виртуального 16-канального синтезатора PFX6416. Последний поддерживает 64 узла (мини-модуля), каждый из которых может создавать сигнал из волновой таблицы или обрабатывать приходящий сигнал с помощью:

  • FM-модуляции;

  • кольцевой модуляции;

  • задержки (delay);

  • резонансных фильтров высоких/низких частот (HP/LP);

  • искажения формы волны.

Интерфейс чем-то отдаленно напоминает Fast Tracker 2. Он максимально простой, но вместе с этим функциональный:

Все готово к написанию трека
Все готово к написанию трека

Начинающим советую заглянуть в раздел SFX Snippets, где выложены готовые наборы разных инструментов. Начать можно с картриджа abledbody's instrument pack 1:

32 заранее проработанных инструмента
32 заранее проработанных инструмента

Процесс кропотливый, но результат того стоит.

Пиксель-арт

Еще в Picotron «из коробки» есть отличный пиксель-арт-редактор. Каждый участок холста представлен как спрайт, изображение фиксированного размера, который можно заполнять попиксельно, с помощью разных инструментов. В дальнейшем такие спрайты можно использовать для создания анимаций или игр:

Куда же без попытки нарисовать наш логотип
Куда же без попытки нарисовать наш логотип

Этот редактор тесно интегрирован с другими инструментами Picotron. Ну а если стандартной палитры и функций недостаточно, то можно поискать сторонние картриджи. Благо такие уже были созданы энтузиастами. Например, советую попробовать редактор векторной графики VGFX:

VGFX (Лицензия CC4-BY-NC-SA, источник)
VGFX (Лицензия CC4-BY-NC-SA, источник)

Игры

Напоследок о самом очевидном. Picotron прекрасно справляется со своей главной задачей — дать возможность играть в стильные и интересные игрушки, которые ежедневно создаются энтузиастами по всему миру. Разумеется, прямых портов нет, но есть аналоги. Любителям Castlevania стоит поиграть в Picovania:

Аналог Castlevania для Picotron. Лицензия CC4-BY-NC-SA, источник
Аналог Castlevania для Picotron. Лицензия CC4-BY-NC-SA, источник

Мне очень зашел вариант классической игры «Змейка», но с большим полем и разноцветными яблоками. Сначала она кажется медленной, но ровно до того момента, пока туловище не начинает занимать половину экрана и нужно быть предельно осторожным:

Snake. Лицензия CC4-BY-NC-SA, источник
Snake. Лицензия CC4-BY-NC-SA, источник

Единственный негативный момент тут в том, что игры с PICO-8 напрямую в Picotron запустить нельзя. Но уже появился инструмент p8x8, который сносно может конвертировать большинство существующих игр. Правда, полной автоматической совместимости пока нет.

Конвертер игр p8x8. Лицензия CC BY-NC 4.0, источник
Конвертер игр p8x8. Лицензия CC BY-NC 4.0, источник

Исходный код проекта есть в репозитории на GitHub, так что можно порадовать автора звездочками. Там же вы найдете детальную документацию и руководство по конвертированию.

Вместо заключения

Picotron меня приятно удивил. Начиная от визуального стиля, который можно легко настроить под себя, и заканчивая широкими возможностями для творчества и программирования. Каждый найдет в нем то, что придется по вкусу. Пусть выбор игрушек и приложений для него пока невелик, но зато сама идея и реализация выше всех похвал.

Такую фэнтезийную рабочую станцию можно смело рекомендовать детям и взрослым. Первым будет интересно поиграть, а вторым — попробовать свои силы в программировании или создании трекерной музыки. Более того, коммуникационные возможности Picotron позволяют общаться с другими пользователями и обмениваться результатами творчества.

Уверен, дальнейшая разработка принесет в Picotron массу новых функций, ну а пока что можно попробовать написать собственную игру и даже собрать свой виртуальный картридж.

Теги:
Хабы:
+39
Комментарии6

Полезные ссылки

Обходим подводные камни работы с UDA в коде на Lua для ScyllaDB: дружим Java-драйвер и пустые значения

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров248
Всего голосов 5: ↑5 и ↓0+10
Комментарии0

Пайплайн распознавания номеров транспортных средств: как это устроено

Время на прочтение7 мин
Количество просмотров1.8K
Всего голосов 23: ↑22 и ↓1+25
Комментарии1

Интеграция виджета обратного звонка МТС Exolve в документацию на MkDocs

Время на прочтение8 мин
Количество просмотров385
Всего голосов 5: ↑5 и ↓0+7
Комментарии0

Путь видео в онлайн-кинотеатрах от «стекла до стекла». Middleware — ядро, подписки, сервисы, витрина

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров703
Всего голосов 4: ↑3 и ↓1+4
Комментарии0

Приручая хаос: как структурировать процессы в эксплуатационных командах. Кейс МТС

Время на прочтение6 мин
Количество просмотров681
Всего голосов 3: ↑3 и ↓0+4
Комментарии0

Информация

Сайт
www.mts.ru
Дата регистрации
Дата основания
Численность
свыше 10 000 человек
Местоположение
Россия