- Промокоды Honkai Star Rail
- Все сундуки Золотого мига в Honkai Star Rail
- Похвала высокой морали в Honkai Star Rail
- Все сундуки в Лофу Сяньчжоу из Honkai Star Rail
- Первооткрыватель в Honkai Star Rail
- Билд Сюэи в Хонкай Стар Рейл
- Билд Аргенти в Хонкай Стар Рейл
- Все сундуки Сада безмятежности в Honkai Star Rail
- Часовщик грезных механизмов
- Первооткрыватель мертвых вод
Doom запустили на умной лампочке из IKEA
Исходники есть на GitHub, при желании эксперимент можно повторить.
Команде next-hack удалось запустить первую часть Doom на умной лампочке из IKEA. Речь идет о лампочке Trådfri GU10 345 RGB, оснащенной микропроцессором: его мощности оказалось достаточно для запуска игры.
В лампочке используется процессор Cortex M33, работающей на частоте 88 МГц, но ее пришлось дополнить периферией. Хотя микропроцессор мог запустить Doom, у лампочки не было ни экрана для вывода картинки, ни контроллеров.
Все это было добавлено с помощью платы MGM210L RF, подключенной к лампочке. Кроме того, пришлось решить проблему с памятью: у лампочки исходно только 108 КБ оперативной памяти и 1 МБ флэш-памяти.
Для Doom этого маловато: оперативки и накопителя не хватит даже для того, чтобы хранить данные самого первого уровня. Для запуска игры исследователям пришлось:
- Портировать Doom на процессоры Cortex (сперва на мощный Cortex M7, а затем, по мере оптимизации, на M33).
- Оптимизировать игру, максимально уменьшив нагрузку на память.
- Переделать работу с памятью и добавить поддержку внешнего накопителя: на нем хранились основные данные, а флэш-память лампочки выступала в роли кэша.
- Добавить вывод звука и поддержку управления.
Лампочку подключили к экрану с разрешением 160х96 пикселей. В результате всех оптимизаций Doom работал на умной лампочке с более-менее нормальной частотой кадров, почти всегда превышавшей 20 fps.
Основным бутылочным горлышком, рассказывают исследователи, была необходимость работы с медленным накопителем: при загрузке данных не из флэш-памяти частота кадров могла падать до 16 fps.
Все исходники своего проекта команда next-hack выложила на GitHub.