GEM от Digital Research был одной из самых ранних графических сред для PC-совместимых компьютеров, и теперь благодаря вдохновленному решению он возрожден в Linux.
GEM for Linux — это порт графического рабочего стола Atari ST, созданный плодовитым словенским разработчиком Томажем Штихом.
Приложения используют общий сервер отображения, который может выводить данные напрямую через фреймбуфер Linux или отображать рабочий стол в окне с помощью эмулятора фреймбуфера Rasta на базе SDL2, разработанного Штихом.
В своем посте в LinkedIn он отмечает, что он «разработан на основе OpenGEM и FreeGEM — теперь безопасный, оптимизированный, стабилизированный и совместимый по исходному коду с Atari ST GEM».
Он основан на исходном коде GEM от Digital Research, выпущенном Caldera в 1999 году, как тогда сообщал еще молодой Register.
GEM был одним из первых успешных графических интерфейсов для PC-совместимых компьютеров под управлением MS-DOS. Европейские читатели, возможно, помнят, что это был графический рабочий стол, поставлявшийся с Amstrad PC1512 и PC1640 — первыми доступными массовыми PC-совместимыми компьютерами по эту сторону Атлантики.
В 1985 году Apple угрожала судебным иском Digital Research из-за сходства GEM с интерфейсом Macintosh. Digital Research согласилась сделать версию для ПК менее похожей на Mac, удалив значки дисков рабочего стола, перекрывающиеся окна и другие функции. Однако судебный иск не затронул версию для Atari.
Именно эту версию для ПК Caldera выпустила как открытое ПО. С 1999 года сообщество FreeGEM расширило ее за пределы версии для ST, восстановив удаленные функции и добавив новые. Среди них — рисование кривых Безье из GEM/4, поставлявшегося с CCP Artline, и кнопки с 3D-затенением из среды выполнения GEM/5 Timeworks Publisher. Некоторые результаты можно увидеть на странице FreeGEM Джона Эллиотта.
Насколько нам известно, это вторая современная реализация Atari GEM на базе FOSS, использующая исходный код FreeGEM. Другой является замечательный проект EmuTOS — полностью открытая операционная система и графический интерфейс для оригинального оборудования Atari, о котором мы упоминали в 2022 году. TOS от Atari объединял GEMDOS, основанный на технологии Digital Research, с модифицированной версией GEM для своего графического интерфейса.
Довольно много исходного кода DR доступно онлайн, но, несмотря на прояснение правового статуса CP/M, которое мы освещали в 2022 году, большая его часть не является строго открытым ПО. FreeGEM и дистрибутив OpenGEM — являются.
Еще в 1980-х годах DR имела многозадачную версию под названием X/GEM для FlexOS, историю которой мы описали позже в 2022 году. Мы рады видеть, как некоторые из многозадачных амбиций DR возрождаются почти 40 лет спустя.
Мы не ожидаем, что GEM заменит Wayland или положит начало новой эре разработки под Linux в стиле Atari. Мы бы не возражали против этого, но есть прецеденты для дальнейшего развития GEM. Сторонние разработчики в конечном итоге превратили ST GEM в самостоятельную многозадачную среду под названием FreeMiNT.
Существовала также коммерческая многозадачная операционная система, совместимая с GEM, под названием MagiC, и версия для 68K Macintosh под названием MagiCMac. Ее исходный код был позже опубликован, и разработка продолжается в аспектах кода, относящихся к Atari.
Мы задали Штиху неизбежный вопрос: был ли GEM для Linux написан с помощью ИИ? Штих ответил: «Нет. По моему опыту, использование ИИ для написания кода склонно приводить к раздуванию кода и плохой архитектуре.
«Я использую ИИ, но придерживаюсь архитектурно-ориентированного проектирования. Я определяю начальную архитектуру, реализую первую итерацию, рефакторю и повторяю.
«Для меня ИИ — это все еще младший разработчик. Я сохраняю контроль и в конечном итоге несу ответственность за архитектуру и качество кода». ®
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Liam Proven




