Мои постоянные читатели наверняка знают мою особую любовь к устройствам на Windows CE и Windows Mobile. Я коллекционирую, восстанавливаю, модифицирую и стараюсь дать новую жизнь этим прекрасным гаджетам, о чём частенько пишу отдельные статьи. Одним из примеров такого моддинга был апгрейд оперативной памяти - операция, которая была очень популярна в нулевых годах!
Дело в том, что в большинстве коммуникаторов и карманных компьютеров было установлено 64 мегабайта оперативной памяти типа SDRAM. С 2003 по 2008 год этого хватало с головой вообще для всего: благодаря экономичной к памяти Windows CE и адекватно написанным программам, в оперативке можно было одновременно держать Java-приложение, клиент ICQ, электронной почты, Internet Explorer и даже какую-нибудь не сильно тяжелую игру. И при всём этом, многозадачность у устройств была полноценная: без автоматического "прибивания" приложения системой, как это реализовано в Android и iOS:
При всём этом, в ранних устройствах на WM все пользовательские данные хранились в ОЗУ, так что от 64 мегабайт обязательно откушивался небольшой процент для фотографий, видосов и прочего контента. Чаще всего это было 15-20МБ. При этом объём выделяемой памяти под контент можно было регулировать на лету с помощью специальной программы в панели управления:
А ведь были и КПК с 32МБ оперативной памяти - и на них можно было вполне нормально жить!
Но как мы с вами понимаем... времена тогда были другие, да и сами устройства на Windows Mobile пользовались популярностью по большей части у гиков, которым интересно во всём разбираться и попробовать всякий разный софт. Накатить на RoverPC оболочку Manilla с HTC? Пожалуйста! Портировать Fallout 2 и HoMM с ПК? Были и такие ребята! Установить на 5-летний коммуникатор последнюю версию Windows Mobile? Дядя Cotulla и не такое проворачивал :)
Именно на него Cotulla когда-то портировал WM 6.5... на устройство, где в оригинале была PocketPC 2003 :)
Но вот незадача: с ростом интереса у гиков, росли и потребности, и если упора в мощнейший ARM-процессор Intel PXA272 с частотой 624МГц ещё не было, то вот ОЗУ хватало далеко не всем! И поэтому гики со всей планеты начали искать возможность увеличения объёма ОЗУ.
Дело в том, что как я уже говорил ранее, КПК и коммуникаторы в основном использовали стандартные чипы оперативной памяти типа SDRAM. Такие применялись везде: как в смартфонах Nokia и Sony Ericsson на Symbian (меньших объёмов, но с почти идентичной распиновкой и корпусом), так и в обычных кнопочных телефонах (Siemens C65/C75 и т.д.). А поскольку в те годы почти все Windows Mobile устройства производила HTC по заказу других брендов (HP, Dell и многие другие), она закладывала в аппаратную платформу почти каждого устройства (Magician, Wizard, Blue Angel и т.д.) возможность установки чипов памяти большего объёма. И если где-то достать эти чипы памяти, то можно было проапгрейдить и свой девайс:
Эти самые чипы имели маркировку Infineon HYB25L256160AC и достать под заказ их можно было почти везде, правда и стояли они довольно дорого. Сейчас их можно найти по 200 рублей за штучку, но тогда, уверен, цена была не менее 400-500 рублей (при долларе по 30). Однако это-ж не обычный компьютер, где ОЗУ можно заменить плашкой, эту память нужно было сначала припаять и вот тут начинались проблемы: тогда всякие W.E.P'ы и прочие бюджетные YaXun'ы 852 не были так распространены вне мастерских по ремонту телефонов и ноутбуков, да и гайдов по перекатке шаров и пайке BGA-чипов особо не было в свободном доступе, поэтому желающим проапгрейдить память приходилось обращаться в сервисные центры, которые брались за эту задачу:
Только представьте себе: 4090 рублей! Это больше 100$ за апгрейд КПК, который мог стоить 300$!
Но во первых, ОЗУ нужно правильно припаять. Если её поставить криво, то перекатка может стать игрой в гольф с раскидыванием BGA-шариков припоя по "лункам" вручную. На универсалке такой чип не перекатаешь из-за кристалла дешифратора (?) на пузе чипа, да и я не уверен, были ли тогда трафареты на DDR2 (он совместим с SDRAM) в таком простом доступе как сейчас:
А во вторых, после такого апгрейда девайс мог и не увидеть дополнительную оперативную память... Дело в том, что корпуса для чипов памяти (как постоянной, так и ОЗУ) придумывают не от балды. Инженеры сразу закладывают в них возможность размещения нескольких чипселектов (сигналов выбора конкретного "банка" в чипе памяти) или совмещения флэш-памяти с оперативной. Благодаря этому, чипы разных серий и производителей совместимы между собой и мы имеем возможность сдуть UFS флэху с условного сяоми и пересадить в самсунг вообще без каких либо проблем (ладно, это чисто в теории, RPMB то никто не отменял :) ).
У SDRAM-памяти в КПК было также: инженеры сразу предусмотрели возможность установки как одного банка память в каждый чип (то есть 32МБ), так и сразу двух, а переключение между ними вывели на отдельный сигнал - чипселект. И вот некоторые производители (как HTC), второй чипселект зачастую не выводили, оставляя отдельный "страп" для моддеров :)
В 128-мегабайтной версии QTek S100 (т.е QTek S110), здесь должен быть резистор 0.33Ом
Однако возможность такого моддинга была доступна в основном только для устройств разработки HTC. Потому что во первых её загрузчик изначально поддерживал трейнинг и сканирование дополнительных чипов оперативной памяти (на Asus'ах требовалась установка специальной 128МБ прошивки с поправленным загрузчиком), а во вторых многие устройства других производителей использовали процессоры Samsung S3C2442 или же Texas Instruments серии OMAP. Предки Exynos'ов были на пике инженерной мысли и интегрировали в один чип не только самое современное процессорное ядро со всей периферией, но и 32/64 мегабайта оперативной памяти, а также около 64 мегабайт NOR Flash-памяти, что делало невозможным апгрейд ОЗУ (на плате ничего не было кроме самого 2442, КП и радиочасти, однако были еще S3C2440, где ОЗУ была отдельной, но о случаях апгрейда ОЗУ там я ни разу не слышал). А у OMAP'ов причина до сих пор неизвестна, но предположительно был выведен только один чипселект на каждый канал памяти, что позволяло использовать чипы максимум по 32МБ каждый.
Но уж поверьте: те, кто апгрейдил себе ОЗУ, потом не жалели. Возможности многозадачности увеличивались в разы и помимо PocketIE с аськой и Java-приложением, можно было влегкую запустить сессию в Age of Empires, параллельно с Opera Mobile и ещё и Spb Launcher в фоне держать. И всё это действительно работало в фоне одновременно!
А на КПК с GPU появлялась возможность запускать тяжелые игрушки по типу Quake 3, правда из-за зоопарка видеочипов, условный NFS Shift на X51v не идёт :(
Ну а к 2008 году, HTC начала устанавливать по 128 мегабайт оперативной памяти в свои коммуникаторы с новыми чипсетами Qualcomm MSM7200A уже штатно, на некоторых девайсах расширяя объём аж до 288 мегабайт. Такого объёма хватало вообще на всё, поэтому необходимость моддинга ОЗУ полностью отпала...
Правда уже через пару лет начали массово появляться Android-смартфоны, где начали активно использовать eMCP чипы памяти с связкой eMMC + DDR2/DDR3. И на смартфонах с чипсетами MediaTek можно было спокойно проапгрейдить память с 512'и до 1ГБ. Но это уже совсем другая история...
Ну а я проапгрейдил ОЗУ на двух КПК в 2024 году: сначала на личном HTC Magician, который вы могли видеть в статье, а затем и на Dell Axim X51v своего подписчика, который взамен подогнал мне крутейший ноутбук Compaq из 90-х с видеочипом S3 ViRGE!
Теперь я сижу и кайфую со своим коммуникатором, у которого в панели информации гордо красуется надпись "128 мегабайт оперативной памяти" 😎😎😎😎
Заключение
Недавно я решил посидеть на гречке, но купить себе парочку крутых коммуникаторов от Garmin-Asus. Они интересны тем, что построены на базе чипсета Qualcomm MSM7200A, который построен не на Imageon 130, как многие думают, а на GPU Defender3D собственной разработки "квалков", который берет корни аж с 2004 года. Я даже драйвер видеочипа реверсил, чтобы узнать о них поподробнее :)
В связи с чем к вам вопрос:
Возможно вы читали мои статьи из рубрики про ретро-гпу из 90-х. Интересно было бы вам почитать про развитие мобильных гпу на рубеже 2000-х?
Если вам понравился длиннопост - не забудьте подписаться на меня, чтобы не пропускать новые статьи каждую неделю! А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет — подписывайтесь на мой Telegram-канал «Клуб фанатов балдежа», куда я выкладываю бэкстейджи статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты и щитпостю. А ролики (не всегда дублирующие статьи) можно найти на моём YouTube канале.
Если вам понравилась статья и вы хотите меня поддержать, у меня есть Boosty, а также виджет на Пикабу ниже. А ещё мне можноотправить какое-нибудь интересное железо: устройства на WinCE/WinMobile, китайские кнопочники, китайские подделки на iPhone/Samsung из начала 2010-х, ретро-ПК железо - всё это я очень люблю :) Всем огромное спасибо!
После статьи мне написали несколько инженеров из Тэлмы и Ронды - компаний, которые аутсорсили разработку софта для телефонов Motorola из нулевых. Теперь доподлинно известно, что в РФ разработали немалую часть прошивки Motorola E398:
Пилили софт для LG:
Добавляли в Android поддержку CDMA помимо GSM (комdпания Teleca):
Помогали пилить Maemo и Meego (которая теперь стала Sailfish и в последствии Авророй):
И по заявлению комментатора с Хабра даже Nokia X (тот самый Android-смартфон) помогали доделать :)
Никогда не слыхал о таком, полез искать информацию. Нашёл.
При чтении обзора 2007 года не смог сдержать улыбки:
Аппарат огромен, носить его можно только в сумке. Для этого в комплекте есть чехол. Он удобен, качественно сделан и, по сути, незаменим. Это следует из особенностей конструкции аппарата. В O2 XDA вам предлагается только гарнитура. В комплекте нет чехла, хотя с его помощью можно частично решить проблему переноски устройства. Аппарат едва помещается в руке. Держать его около уха во время разговора неудобно или даже скорее непривычно. Он тяжелый и большой.
А вот массо-размерные его данные:
O2 XDA Flame: 126х74х17.5 мм/вес 190 г
Для сравнения данные моей Nubia, которая не претендует на звание "лопаты"
Друзья, а есть у кого-то O2 Xda Flame? Можно нерабочий. Очень нужен для раскрытия главной тайны Windows Mobile смартфонов из нулевых: было ли в Toshiba Portege G900 3D-ускорение и если да, то почему на Sharp EM-One оно работало, а на G900 - нет :) Как вы понимаете, Flame нужен для физической пересадки видеочипа GoForce 5500 на G900 и попытку запустить 3D-демку от NVidia. Если запустится - значит NV продавала отбраковку или GPU без 3D-блока, если нет - то собака зарыта где-то в GFSDK и останется только вставить торвальдс_нвидиа.mp4.
По понятным причинам можно и нерабочий экземпляр. Если GPU заведется - я напишу об этом отдельную статью. Уж очень давно мне хочется поднять 3D-ускорение на G900, я ковырял GFSDK, реверсил, смотрел сливы, подкидывал драйвер для O2 Xda Flame - просто нет причин для того, чтобы не работало. При этом Sharp Em-One при тех же манипуляциях работает без проблем и там 3D-ускорение появляется, а на G900 при подкидывании дров просто пустой экран при запуске 3D-приложений.
Соответственно есть предположение, что в части GPU NV просто прожгла фьюз, отключающий 3D-ядро - это вполне в её стиле. Сможем ли мы разгадать главную тайную нулевых?
В общем вижу что тема с Moto E398 вам зашла :) А значит я анонсирую новый проект: Motorola E398 Pro Max! В общем если вы читали статью, то помните, что аппаратную платформу телефона я рассказывал на примере устройства, которое мне досталось из утиля после другого ремонтника. Здесь всё было залито флюсом, угрето, а телефон при подключении ЛБП начинал потреблять аж 250мА...
Как же ему плохо и больно. Колодку SIM - украли, MicroSD - отломали, всё угрели и упаяли и даже местами маску соскоблили...
Но вы ж не думаете, что в моём блоге, где я стараюсь реставрировать любые ретро-штучки и привести их в рабочий вид, этот телефон пойдет на распай или ещё того хуже - в металлолом?! Оказалось что у меня есть подписчик, сервисник, у которого есть некоторое количество новых контроллеров питания для E398. Он пообещал подогнать мне пару штучек, дабы я отремонтировал родную плату этого прекрасного гаджета и восстановил телефон ровно в таком виде, в каком он вышел с конвейера 22 года назад - с родным корпусом и IMEI'ем :)
Но я так подумал... а может сделать E398 Pro Max? Ну, я ведь упомянул, что сюда подходит дисплей от L7, который был в разы качественнее оригинального... да и стандартный разъём не особо удобен, можно и Type-C поставить. А может и джек тогда на 3.5мм переделать? В общем, модерская душа требует аппаратных зрелищ :)
Звучит иронично, не правда ли? Но заголовок не отражает сути, а сделан, скорее, как повод привлечь внимание.
Дело в том, что я, можно сказать, олд этого сайта. Не знаю, любите ли вы истории, но я создаю историю, поэтому заполню вашу ленту этим постом.
В 2019 году я ворвался на пикабу с двух ног, решив писать гайды по созданию сборки модов на Скайрим. Тогда я был зелёным, не знал, в какое болото лез, тем не менее, горел желанием рассказывать о себе. Это было 7 лет назад. Я звал тогда себя Cryser. Думал звучит, как "Крайзер", но щас понимаю, что это был крысер. Может быть, так неосознанно я дал себе диагноз.
Скриншот аккаунта. Я уже не имею к нему доступа, ради правды, но аккаунт есть и статьи можно почитать.
Пришло время выбить правду из этого крысера, хотя бы на полшишки. Пройтись по нему асфальтоукладчиком, так скажем. Дальше буду писать не от 1-го лица, а будто бы пишу про другого пользователя.
КТО Я ТАКОЙ? КТО Я ТАКОЙ?
Нет, серьёзно, его вступительный пост приводит в экстаз и вызывает смех. Я полез в комментарии и эти ответки просто имба. Я порой удивляюсь, как вообще такого наивного паренька не схавала эта жизнь.
Буквально диалог:
- Ради чего этот пост? Лови минусы - Ради ознакомления - тут такое не нужно вообще, оно только ленту засоряет - Ну больше-то я не буду делать такие посты
Если вы думаете, что знали всё об ответках, то такой абсурдно-логичной точно не знали. Если он не будет делать такие посты, то и ленту не засрёт)
Эпоха сборок Скайрима
Когда крысер красноречиво заявил о себе, он решил показать техническую подкованность в моддинге игр. В частности, Скайрима, но немножечко и Fallout 4.
TESV - Skyrim Legendary Edition - Моддинг. #1 - Программы, моды и их установка.
Чтобы понять почему это так плохо, что даже хорошо, я просто напишу вступительную фразу из статьи:
Всем привет! Знаю первый пост был мягко говоря плохим. Как ставить моды на скайрим?
Вот и что здесь видно? Абсолютный треш. Этот переход от осознания ужаса вступительного до пояснения за тему нового поста... Впрочем, там крысер поверхностно объяснил начало создания сборки, поведал то, что каждый второй знал. В чём позволит убедиться следующий скриншот:
Тег был добавлен уже после этого комментария.
Что почувствовал крысер тогда, увидев этот и подобные комментарии? Вселенскую обиду, как мне кажется, по итогу выбравшись из одного болота и уйдя в другое (дзен).
TESV - Skyrim Legendary Edition - Работа с MO, FNIS и др. прогами.
Второй пост, раскрывающий тему моддинга гораздо глубже... Объяснять, как пользоваться Mod Organizer. В оправдание его скажу, что на ютубе не было русскоязычных видео в то время по использованию этого мод-менеджера. Да и статей было не особо много. Ещё один аргумент в пользу этого - если спросить в браузере как пользоваться мод органайзером, то он выдаст эту статью.
Тем не менее, разобраться в МО было не так сложно при желании и знании английского, поэтому нет прощения этому зумеру, поясняющему копипаст инфу с тырнета вашего.
Однако совершу отступление: мод органайзер и вправду сейчас ничто не может заменить, по моему скромному мнению. А моддинг Скайрима стал проще и интереснее.
TESV - Skyrim Legendary Edition - Реплейсеры тела, Racemenu, или как создать идеального перса.
Неплохая затравочка на достойную статью? Нет, статья почти ни о чём. Инфа, что ставить, но нет инфы, как ставить. Будто бы сделано чисто, чтобы было. Ни фото, ни видео. Но дальше - хуже.
Вот это апогей пустого искусства, я считаю. Статья про графику, где нет ни одной демонстрации результата! Только огромный мод-лист. Кушайте, что дают, как говорится. Кто-то реально схавал, а кто-то отказался есть это мясо. Скажу, что даже мясоеды бы его не ели)
Тем не менее, комментарии под постом оставляют хорошее впечатление и показывают действительно положительных людей.
Аргументированно.
И теперь пролью свет на то, почему не было ни скриншотов, ни видео. Дело в том, что крысер тогда имел слабый компьютер и не мог накатить все эти моды. Он просто составил список, самостоятельно не убедившись в его функциональности. Искал инфу просто шерстя по сайтам с модами и смотря гайды на улучшение графики. Вот и всё.
В целом, дальнейшие объяснения можно оставить на лицезрение заинтересовавшихся пользователей. Просто хочется сделать вывод, что тогда у него было желание делиться технической информацией и помогать людям, но не было возможностей и опыта делать это грамотно. Хотя, как знать, может, если бы комп личным и мощным, то у нас появился бы новый мод-блогер. Так или иначе, близился закат жизни крысера.
Фатальный удар
Мдем...
Возможно кто-то помнит хайп по джоджо и этот чел стал его амбассадором. Или хотел им стать, но в итоге навалил кринжа, от которого уже не смог оправиться. Потеряв всякую надежду набрать аудиторию, он решил выпустить мем-разбор, натянув сову на глобус.
Теперь спускаемся в комментарии и видим искренне не понимающих сути поста; не особо блещущих интеллектом индивидов; и адекватных людей.
В целом, понять можно каждого, кроме тех, кто сам не понимает. Дальше диалог субъекта с одним из таких.
- Некоторых анимешников надо ещё в детстве трепанировать. - Хм, ты написал этот коммент из за внутренней боли связанной с закоренившейся философией, что аниме это мультик, а мультики для детей, соответственно нужно сжигать анимешников и всю аниме культуру? Серьезно? - Скорее из внешней боли в седалище, которая возникает, когда я наблюдаю за поведением некоторых анимешников. - Но здесь ты допустил одну ошибку. Я не анимешник - А ведёшь себя как он. Ещё и жожо увлекаешься.
Сей диалог не просто битва говна и мочи. Это момент разложения личности крысера и уже переход в псевдо-ореокера (позже, господа пика-пикабушники).
Cryser попал не в то время, не в то место. Попытался понять, что ему стоит делать, понял, что лучше ничего не делать и окуклился, перевоплотившись в другую личину, направившись покорять Яндекс Дзен.
Итог
Во второй части (если будет интересно) поведаю о том, как вылупился ореокер и его пути.
Осторожно: данная статья - одна из моих лучших работ, посвященных истории моддинга мобильных телефонов. Если вам интересно узнать о том, как команда студентов хакала загрузчик E398, как инженеры Motorola разработали настоящее чудо и каким образом команда хакеров превращала простую "звонилку" в смартфон - приглашаю вас к прочтению!
Многие ли из вас помнят о легендарном музыкальном телефоне из далёкого 2004 года - Motorola E398? На момент выхода, модель буквально не имела аналогов на рынке и за относительно скромную цену в 150$ предлагала два огромных динамика, слот для MicroSD-карты, возможность проигрывания MP3-треков и даже неплохую поддержку 3D Java-игр. Однако Moto E398 гораздо интереснее, чем кажется на первый взгляд...
❯ Предисловие
Пожалуй давно у нас не было статей в рубрике «устройства, которые мы потеряли». В прошлом году, мы успели с вами посмотреть на самые разные гаджеты: Nokia 6600, Siemens C65, HTC Wallaby и этот список далеко не конечный. Мы узнали с вами о том, на каких аппаратных и программных платформах были построены эти устройства, на что они были способны на практике и даже хакнули один из телефонов, научив его запускать нативные программы с MicroSD-флэшки:
HTC Wallaby
Однако изучая моддинг-сцену телефонов нулевых, мы незаслуженно с вами забывали о телефонах Motorola. И зря: «моторолки» были одними из самых интересных устройств с точки зрения кастомизации, а коммьюнити моддеров существует до сих пор, спустя более чем 20 лет после выхода самых популярных телефонов компании. MotoFan всё ещё жив, в нём каждый пень пишут более 500 сообщений и общается около 30 постоянных участников, а из недавних значительных достижений — порт Doom и эмулятора NES...
Но конечно такие возможности моддинга стали доступны отнюдь не сразу. Это результат тысяч часов реверс-инжиниринга и хакинга прошивок, сборки общей базы данных и паттернов по аппаратной и программной платформе телефонов Motorola, а также сотни замыканий тест-поинтов и уходов телефона в ресет из-за испорченной памяти... Но начнём, пожалуй, с предыстории.
Коллекция EXL
❯ Появление платформы P2k
Практически всю свою долгую историю телефоны Motorola строились на базе чипсетов собственной разработки. В моделях 90-х годов использовались самые разные аппаратные и программные платформы, и уже тогда предпринимались первые попытки моддинга. Конечно сам моддинг был утилитарный и в основном заключался в удалении симлока, русификации, изменения графики — но факт остаётся фактом.
Развитию моддинга способствовало использование знакомой процессорной архитектуры m68k, которую разработала также Motorola. В те годы, процессоры этого семейства были очень популярными и использовались не только в телефонах, но и в КПК Palm, компьютерах Amiga и даже в Mac'ах. Конечно ARM уже существовал в те годы, и легендарное ядро ARM7TDMI-S понемногу лицензировалось чипмейкерами, но превосходство на рынке портативных гаджетов всё ещё оставалось за m68k и Hitachi SuperH.
В 1999 году, Motorola представила новую линейку CDMA-телефонов построенных на процессорах с новой архитектурой M-Core (в какой-то степени наследник m68k, разработанный для переносимых устройств). Архитектура отличалась от m68k тем, что была RISC (что кратно снижало комплексность декодера инструкций) и имела фиксированный размер инструкции — 2 байта, что позволяло заметно экономить флэш-память. Но самое интересное было то, что для этих телефонов Motorola разработала новую программную платформу, имя которой было P2k (Platform 2000)!
В 2001 году, Motorola продолжает выпускать телефоны с m68k и M-Core «под капотом», однако к ним добавляются модели Timeport, которые использовали чипсеты разработки Texas Instruments под названием Whitecap и построенные на совершенно другой оболочке — EMMI/Legacy. По сути, это был предшественник мегапопулярного TI Calypso, который использовался с 2003 по, как минимум, 2010 год! В свою очередь, платформа P2k всё так же продолжала развиваться и использоваться в новых моделях, а к CDMA-устройствам также добавилась первая GSM-модель под названием V60.
И вот, в 2002 году, Motorola наконец-то представляет новую платформу — Neptune LCA (Low Cost Advance), построенную на базе ARM ядра. Первым телефоном с этим чипсетом стал бюджетный Motorola C330, который получил умеренный успех, но настоящим бестселлером стала последующая модель, которая получила имя C350! Телефон был невероятным прорывом для 2003 года в сегменте ультрабюджетных устройств: за 60$ (или 4.444 рубля), C350 предлагал цветной дисплей с 12-битным цветом (как у Symbian смартфонов тех лет!), поддержку GPRS с WAP-браузером, некоторый объём встроенной памяти для хранения анимации, картинок и полифонии, и даже 2.5D игру MotoGP. Такие крутые программные фичи появились благодаря новой версии MMI, которая всё также берёт корни от той самой P2k из 1999 года...
Что такое MMI?
MMI в кнопочных телефонах — это оболочка, которую видит пользователь, или если говорить простыми словами — «операционная система». В основе MMI лежит фреймворк для построения пользовательского интерфейса и разработки приложений, менеджер окон, рендерер шрифтов и изображений, декодеры аудио/видео, иногда аудио-микшер и абстракция над API конкретной операционной системы. У Motorola такая абстракция называлась suapi.
Сам MMI разрабатывается отдельно от телефона и отлаживается в специальном симуляторе на ПК. Например для Symbian — это вариация ядра EKA под Windows (не смейтесь, так и было!), для Siemens — билд оболочки под Windows (её также распространяли в SDK для J2ME), а для Motorola — полный эмулятор Neptune LTE, включая ARM-процессор. Такие вот инженеры Motorola молодцы :)
Из серьёзных конкурентов у C350 был разве что Samsung C100, но даже он стоил значительно дороже. Однако время шло, и уже в конце 2003 года, Motorola продолжила развитие ARM-платформы Neptune, представив следующее поколение — Neptune LTE (Low Tier EDGE), которое отличалось поддержкой стандарта связи EDGE. Первым устройством на LTE стала раскладушка V600 — продолжение той самой V60, в которую инженеры Motorola установили аж 5 мегабайт встроенной памяти и, только вдумайтесь, добавили поддержку воспроизведения MP3 с битрейтом в 320кбит/с!
Однако у V600 не было слота под SD-карту, так что наличие поддержки MP3 было не особо оправданно. Но уже в 2004 году, Motorola представляет телефон, который просто перевернул мобильный рынок в бюджетном сегменте. И как вы уже поняли, речь идёт о E398! Устройство, построенное на чипсете Neptune LTE, позиционировалось как специально предназначенное для прослушивания музыки и просмотра роликов. Помимо слота под MicroSD-карты и поддержки MP3, Motorola оснастила E398 двумя огромными стереодинамиками, поддержкой воспроизведения 3GP и MP4-роликов, а также довольно шустрой Java-машиной JBlend с поддержкой MIDP 2.0. Интересно было и то, что E398 стал одним из пионеров трёхмерной графики на кнопочных телефонах благодаря поддержке программного растеризатора Mascot Capsule v2 (да, как у Sony Ericsson, но чуть постарше)...
❯ Первые шаги
Немудрено что у такой недорогой и при этом нафаршированной с точки зрения функционала модели появились свои фанаты, и как в случае с телефонами Siemens, среди них были молодые студенты-гики, которые постигали искусство реверс-инжиниринга и моддинга... Но вот незадача: в отличии от тех же самых Samsung и LG, у Motorola с Siemens загрузчики были заблокированы с завода. У Siemens'ов задача разблокировки решалась генерацией специального ключа BootKEY на основе двух других значений, уникальных для каждого процессора Infineon S-Gold: ESN и Hash:
Вам знаком интерфейс этой программы? :)
У «моторов» же вообще была неприступная стена без возможности пользовательской разблокировки, и BootROM с вторичным загрузчиком имели сразу несколько степеней защиты с проверкой RSA-подписи выполняемого кода. Но был очень важный нюанс: загрузчик нельзя было разблокировать никаким способом, а инженерность (и возможность запуска неподписанного кода) каждого процессора определялась всего лишь одним фьюзом, который прожигался на заводе при производстве чипа!
Тот самый фьюз.
И вот всего один бит, один прожженный фьюз отделял целое коммьюнити от возможности модифицировать свои телефоны... Но затем один 24х-летний парень под никнеймом @Vilko с другими ребятами умудрился отреверсить загрузчик и обнаружить, что он:
Не проверял подпись, если прошивка зеркалировалась выше первых 16МБ Flash-памяти (работало только на моделях с 16МБ — как, например, C350). Можно было пропатчить заголовки в CG1 и просто указать базовый адрес XIP контроллера + 0xFFFFFF.
Не проверялся порядок проверки подписи. Там был сложный и замороченный механизм верификации загрузки, поэтому хак с подменой порядка верификации загрузчика позволял обойти проверку подписи модифицированной прошивки и запускать произвольный код.
В вспомогательном RAM-загрузчике, который загружается через USB, была уязвимость переполнения стека, благодаря которой можно было изменить адрес возврата и заставить загрузчик прыгнуть на произвольный код. С помощью этой уязвимости можно было понизить версию загрузчика на более старую, которая обходится одним из методов выше.
И уже в 2004 году, Vilko с командой Motofan успешно хакнули загрузчики первых версий на E398. А что началось после этого... сложно описать в рамках одной статьи! Патчили конфигурацию усиления динамиков (делая их ещё громче!), драйвер камеры, меняли графику и даже писали патчи, которые так или иначе изменяли поведение телефона. Прошивку активно реверсили в IDA Pro, изучали её архитектуру, находили сигнатуры функций и по паттернам выискивали их в других телефонах на той же платформе...
В 2005 году, как бы это не звучало парадоксально, Motorola выпустила первый «Apple-телефон» — ROKR E1. По сути, это был тот-же самый E398, однако в него добавили дополнительную кнопку для запуска проигрывателя, модную белую тему и плеер iTunes, знакомый нам по продукции Apple. При этом сам iTunes был реализован в виде Java-приложения — corelet'а и тем самым привлек внимание владельцев обычных E398'ых. Гений в лице @Vilko в одиночку умудрился пропатчить прошивку от E1 и запустить её на E398...
ROKR E1
Но всё равно сообществу Motofan было мало существующего функционала и они начали думать: как бы превратить E398 в полноценный смартфон и добавить возможность запуска нативных программ, написанных на C? Поскольку функции UI-фреймворка P2k ещё были недостаточно изучены, подступиться решили к Java-машине: примерно в 2005-2006 году, предположительно с R&D подразделения Motorola в России, утекли Elf-бинарники прошивки со всей информацией о символах: имена и адреса функций, глобальных переменных, информация о секциях прошивки и другие полезные данные. Там же были найдены реализации абстракции над графической подсистемой в JBlend (Aplix JBlend использовалась во многих мобильных телефонах нулевых и отличалась относительной простотой портирования благодаря абстрагированию вообще всего что можно), а также нативные реализации методов из CLDC и MIDP.
Стоп... R&D Motorola в России?
Да! Когда-то части прошивки P2k разрабатывались в офисах в Санкт Петербурге и Владивостоке. В Питере команда занималась портированием JBlend для P2k, дабы в C380 и E398 появилась поддержка Java-приложений, а вот чем занимался офис в Владивостоке мне неизвестно. Так что первая тайна E398 заключается в том, что к её созданию приложили руки в России :)
В российских R&D явно работали ребята, которые поддерживали не только бизнес-процессы транснациональной корпорации, но и идеи сплоченного коммьюнити моддеров, так что через некоторое время после закрытия отделов, в сети оказались те самые сливы Elf'ов прошивки, а чуть позже — исходный код порта JBlend для P2k. Спасибо вам ребята, которые решили поделится этим добром, именно благодаря вам спустя 22 года моддинг-сцена Motorola продолжает развиваться на полную катушку!
К слову, разработку прошивки в РФ аутсорсила не только Motorola. У нас точно был R&D-центр LG: ко мне в комментарии пару лет назад приходил инженер-хабровчанин, который рассказывал о том, как они писали программную реализацию OpenGL ES 1.0 для телефонов на чипсетах Qualcomm для западного рынка. Есть также догадки о том, что какую-то часть разработки могла аутсорсить Nokia (или её подрядчик), но железных доказательств у меня нет :(
Некий моддер из Польши под ником elektro255 додумался, что можно пропатчить одну из функций JVM так, чтобы она при вызове с определенными аргументами загружала нативную программу по заранее определенному адресу и передавала ей управление. Это был первый простейший бинлоадер, который позволял писать несложные программы по типу игр и разных демок — но это был большой задел на будущее...
В 2007 году, в моддинг-сцене Motorola случается огромный прорыв: появляется самый первый эльфлоадер, библиотека функций и EP1 (ElfPack 1). Благодаря сливу дебаг-информации, моддеры разобрались в сложной оконной системе UIS (UI-фреймворк P2k, сложность заключается в огромном количестве стейт-машин) и научились писать полноценные программы, которые работали как нативные приложения, собранные вместе с прошивкой! Помимо этого, были найдены функции для управления потоками и щедуллером RTOS, благодаря чему появилась возможность реализовать полноценную многозадачность. Теперь эльфы могли делать полезную работу в фоне: например обновлять почту, сообщения в аське (почти пуши!) или заставить по рабочему столу бегать овечку :)
Ну а дальше процесс моддинга пошёл семимильными шагами: эльфпаки были портированы на Razr V3, V360 и другие популярные модели, а затем раскопали и модели на базе процессоров M-Core. Дело в том, что в Россию попадали исключительно «бюджетные» по видению Motorola модели на платформе Neptune LTE/LCA, в то время как на западном рынке использовались флагманские M-Core'ы. Энтузиасты получили в свои руки несколько таких телефонов, умудрились точно также их отреверсить, портировать ElfPack1 и получить почти идентичный функционал на куда более мощных телефонах с процессорами, построенных на проприетарной и почти неизвестной архитектуре... Вот это я называю высшим пилотажем!
Ну что-ж, вот такая длинная предыстория моддинга телефонов Motorola у нас с вами получилась. Но вы же не думаете, что у E398 больше не осталось тайн?!
Разбираем
Следующим делом мы разберем с вами E398 и узнаем что у него находится «под капотом». Для разборки я решил взять донорский телефон, который ко мне когда-то попал из утиля, а он в свою очередь туда попал после неудачной попытки ремонта.
Разбирается телефон очень легко: достаточно лишь открутить несколько винтов по периметру корпуса и расщелкнуть клипсы, после чего устройство разделяется на две половинки. В целом, ремонтопригодность E398 была на очень достойном уровне: заменить дисплей, динамики или клавиатуру можно было без особых навыков буквально за 5-10 минут работы. Единственное исключение — джойстик, но он на этой модели никогда не был проблемным. Также радует частичная унификация запчастей: например в E398 свободно устанавливался дисплей от E1 и L7.
Почти все чипы на плате были залиты флюсом. Кто-то пытался починить устройство прогревом всего подряд :)
Первым делом в глаза бросается блок из двух огромных динамиков. Они большие даже по нынешним меркам, а уж сам факт наличия стереозвука в внешних динамиках в 2004 году был нонсенсом даже для флагманов, не говоря уже о среднебюджетной модели. К сожалению, мне нечем замерить их уровень dB, но с патчами E398 был способен заменить среднестатистическую колонку или даже бумбокс, и при всём этом звучал качественно!
Чуть ниже, под защитным экраном скрывается сердце устройства — тот самый процессор Motorola Neptune LTE под маркировкой SC29332VG. И как бы это парадоксально не звучало для телефона с поддержкой MP3, по своим инженерным решениям он был ну очень своеобразным. Состоял он из:
Основного вычислительного ядра ARM7TDMI-S, работающего на частоте 52МГц с возможностью разгона до ~64. Для 2003 года, сам факт использования ARM7TDMI родом из 1994'го в не самом бюджетном телефоне уже был некой диковинкой: более свежее ядро ARM9T с 1999 года активно вводилось в эксплуатацию и было производительнее в 2-2.5 раза с возможностью работы на частоте до ~416МГц. Однако за сам факт использования столь старого ядра Motorola корить не стоит: те же самые бюджетные чипсеты Sysol (Samsung), Analog (LG, Hyundai) использовали аналогичное ядро, просто телефоны на их базе метили в не столь функциональный сегмент.
Вспомогательного DSP-ядра S-ONYXU 56600 собственной разработки Motorola, работающего на частоте 130МГц. В его задачи входит низкоуровневая работа с GSM-стеком, декодирование и кодирование голоса, а также декодирование MP3! При этом DSP способен легко обрабатывать треки с частотой дискретизации до 320кб/с. Именно поэтому на всех телефонах с процессорами Neptune LTE была поддержка MP3, в отличии от тех же самых Siemens'ов, где несмотря на мощный DSP, поддержку воспроизведения музыки реализовывали костылями (то через сторонний декодер, то программно, даже несмотря на заявленную поддержку MP3 в DSP S-Gold и даже E-Gold).
256 килобайт встроенной RAM и аж 1.79МБ ROM! Такой большой размер BootROM'а здесь неспроста: по заявлению @EXL, в нём хранится не только загрузчик, но и своя небольшая прошивка с самостоятельным GSM-стеком. Когда-то ходили слухи о закладках со стороны Motorola, но на практике скорее всего просто хотели выпускать ультрабюджетные телефоны вообще без флэш-памяти. У DSP есть своя дополнительная память — 381КБ ROM и 191КБ ОЗУ.
Встроенный RF-фронтэнд как для RX, так и TX-части. В его задачи входит вся «магия» по превращению цифровых GSM-пакетов из DSP в аналоговый сигнал, который затем отправляется на усилитель (PA) и далее уходит в эфир. Однако в E398 всё равно используется внешний фронтэнд, разработанный самой Motorola
Контроллеры SPI, 8080, а также USB. Из-за аппаратной поддержки USB, Neptune LTE буквально был одним из самых продвинутых мобильных чипсетов тех лет и Motorola активно продвигала использование обычного USB без UART-преобразователей. Интересно то, что контроллер RAM не поддерживал динамическую оперативную память вообще. То есть по сути, контроллера памяти и не было: из процессора напрямую выходила классическая 16-битная 8080-шина с парой чипселектов исключительно на статическую память без рефреша. Тут можно провести прямую параллель с FSMC в STM32.
Встроенный референсный кварцевый резонатор, формирующий клок для набора из двух PLL (Phase Locked Loop), которые используются для тактирования и управления частотой работы различных подсистем чипсета. Например разгон мобильных процессоров — это чаще всего перезапись регистра управления PLL (если необходимо переключить на другой источник, зависит от процессора), настройка делителей, а также напряжения VCO. Вообще, мне всегда было интересно как чисто теоретически возможно встроить полноценный кварцевый резонатор прямо в кристалл, если у кого-то есть такая информация, прошу поделится в комментариях!
Такой высокий уровень интеграции для 2003 года был очень крутым. Единственное слабое место чипсета — понемногу устаревающее на момент релиза ядро ARM7TDMI, а учитывая комплексный UI-фреймворк и сложную модульную архитектуру системы в целом, 52-х мегагерцовый процессор буквально не справлялся с таким тяжелым интерфейсом, из-за чего телефоны заметно подтормаживали и плохо показывали себя в Java-играх. Это вторая тайна E398 :)
Чуть ниже процессора расположилась микросхема комбо-памяти производства Intel под маркировкой L18SCSP. На одной подложке скрывается 32МБ NOR-памяти StrataFlash и 8МБ PSRAM. NOR-память можно было напрямую подключить в адресную шину процессора и использовать XIP (eXecute In Place) для выполнения кода напрямую с чипа памяти без сложных кэшей и необходимости предварительной загрузки в RAM. PSRAM же внутри представляла из себя обычную DRAM, плюс Refresh-контроллер с обычной 8080-шиной наружу. Именно поэтому, такая память называется псевдостатической. К слову, такие чипы памяти прекрасно поддаётся апгрейду и расширению: можно просто поставить чип большего объёма и обращаться к новым верхним адресам (если линии под них, конечно, разведены).
Правее процессора расположился Bluetooth-модуль 95L14CN. Он в свою очередь требует отдельный 26МГц кварцевый резонатор для работы и несколько конденсаторов с резисторами, а к процессору он подключен по шине UART. Именно поэтому скорость работы была не слишком высокой (сейчас BT-модули чаще подключают через SDIO или USB). Правее расположился чип LP3933, который отвечает за Fun-lights (светодиоды, подмигивающие в ритм музыки) и подсветку дисплея. Так что если у вашего «мотора» не работает подсветка — смотрите в сторону этого драйвера... или переделывайте подсветку на LM-ку с Samsung C100 :)
С верхней части платы скрывается усилитель сигнала Skyworks SKY77501-14. Есть один важный момент: обычно усилители всегда подключаются напрямую к VBAT (питанию аккумулятора) без каких либо внешних DC-DC преобразователей и ключей, и иногда они могут выходить из строя, даже если телефон выключен. Так что если ваш «мотор» ни с того ни с сего перестал включаться — проверьте PA на нагрев и если нужно — замените. Чуть левее усилителя расположился RF-фронтэнд MC13777P в паре с ещё неким модулем, который в схеме помечен как фронтэнд. К сожалению о деталях реализации RF-части ничего подробнее рассказать не смогу :)
С обратной стороны платы нас поджидает ещё одна, уже третья тайна Motorola E398... и это — чип ATi Imageon 2250. Да, в телефоне за 6 тысяч рублей был установлен полноценный GPU. Однако несмотря на то, что в 2003 году, 3D-графика в телефонах и КПК только зарождалась, именно этот Imageon является 2D-ускорителем. В его задачи входит быстрая аппаратная отрисовка изображений (блиттинг), спрайтов, линий, прямоугольников и всё это с аппаратным альфа-блендингом и поддержкой различных растровых операций (умножение, суммирование, прозрачность через колоркей). Помимо этого, чип поддерживает работу с камерой, декодирование MJPEG и содержит в себе встроенную память для фреймбуфера. Дело в том, что чипсет Neptune LTE со своим ARM7TDMI ядром не был способен на быструю отрисовку графики исключительно силами процессора на телефонах с разрешением дисплея выше 128x128, поэтому инженерам пришлось прибегнуть к использованию стороннего GPU.
Этот крошечный GPU был функциональнее почти любой настольной 2D-видеокарты из 90-х
Чуть ниже ATi расположился контроллер питания, который также разработан Motorola. По плате видно что его грели в первую очередь — это часто делали некоторые олдовые ремонтники в нулевых годах (да и сейчас делают). На него даташита я не нашел, однако судя по схеме он отвечает за зарядку литиевых аккумуляторов, транзисторную защелку разрешения подачи питания, содержит в себе несколько LDO для формирования шин питания различных подсистем телефона, АЦП для микрофона, а также усилитель для динамика. И вот тут есть интересное инженерное решение: дело в том, что усилитель в КП только один и предназначен он для одного внешнего динамика. А поскольку в E398 их два, для второго используется дополнительный усилитель LM4879IBLX.
В качестве дисплея используется TFT-TN матрица неизвестного производителя (скорее всего Sharp) с разрешением 176x220, которая подключается к GPU с помощью параллельной 16-битной RGB-шины (GPU устанавливает пиксель, дергает CLK, когда одна строка изображения подготовлена — дергает HSYNC, затем когда кадр подготовлен — дергает VSYNC).
Вот такой был конструктив у Motorola E398! Причем эта же платформа использовалась без изменений и в других легендарных телефонах компании: например Razr V3 и V3i, V360, KRZR K1, SLVR L3, SLVR L6, SLVR L7...
❯ Прошиваем...
По правде сказать, я практически не встречал E398'ые без какого-либо моддинга. Может быть не у всех были монстрпаки (кастомные прошивки) с EP, но во многих были установлены различные твики и самый главный — усиление громкости динамика.
Перед прошивкой «мотора» необходимо сначала забэкапить раздел PDS (калибровки радиотракта) с помощью программы Flash & Backup, проверить версию загрузчика ( @EXL в комментариях напишет их отличия) и выбрать монстрпак на выбор. @EXL рекомендует прошивку DAR-Test как самую нафаршированную и собранную частично из хаков и частично из слитого исходного кода P2k. По сравнению с оригинальной прошивкой, кастом в себя включает:
Поддержка 2ГБ MicroSD вместо стандартного ограничения в 1ГБ
Поддержка Bluetooth в Java-приложениях
Хак плеера для включения поддержки 320кбит/с в MP3-треках.
ElfLoader с диспетчером задач и возможностью загрузки эльфов первой и второй версии. Именно этот патч превращает E398'ой в смартфон!
Три альтернативных музыкальных плеера. Почему бы и нет? :)
Возможность разгона процессора до 65МГц.
Далее необходимо прошить специальный файл — Flex. По сути, это файловая система с пользовательскими данными. Прошивка Mini Flex форматирует телефон до заводских настроек, дабы точно ничего не мешало прошить монстрпак. Теперь можно установить и саму прошивку. Скачать DAR можно с всё ещё живого мотофана по прямой ссылке. Файл с расширением fsw открываем в Flash & Backup, переводим телефон в бутлоадер, зажав * и # при включении и если у вас версия загрузчика — 07.D0, то можно спокойно прошивать телефон. Если отличается — напишите @EXL и не шейте вслепую, иначе возможно придется замыкать тест-поинт!
Если после прошивки телефон включается без проблем — поздравляю, вы только что превратили свой E398'ой почти в полноценный смартфон!
❯ Включаем...
После включения нас встречает такая ламповая, но по мнению некоторых «васянская» тема в стиле Windows 7. В те годы темы в стиле десктопных операционных систем были очень популярны: почти под каждую платформу обязательно были темы в стиле XP, Vista и 7'ки, а также Ubuntu и Debian :)
Motorola Luna Royale?
Как я уже говорил ранее, у телефонов Motorola была сложная UI-подсистема, которая называлась Synergy. Она практически вся построена на стейтмашинах и абстракциях, из-за чего слабенькому ARM7TDMI порой тяжело справляться с обработкой и отрисовкой интерфейса. Однако мощность Synergy позволяла реализовывать довольно сложные и комплексные интерфейсы, и главное меню — один из примеров. Его можно было кастомизировать до неузнаваемости: добавить эльфы, патчи, ярлыки к различным приложениям и многое другое.
Примерно в 2005-2006, к UIS прикрутили поддержку векторных сглаженных ttf-шрифтов. Это фича сонериков, нокий и моторов, другие телефоны чаще всего продолжи использовать битмаповые шрифты.
Несмотря на довольно мощный родной плеер в E398, энтузиасты взяли и написали ещё несколько дополнительных. В прошивке DAR присутствует три кастомных плеера на любой вкус: с темами, специальными опциями и другими полезностями. Кроме того, благодаря патчу появлялась возможность воспроизведения MP3-треков с битрейтом аж в 320кбит/с. А уж как играл E398 с патчами... да, пожалуй до такого качества отнюдь не каждый современный смартфон дотягивает. Из тех, что были реально в разы лучше могу вспомнить только ZTE Axon 7:
Также теперь в E398 появился полноценный файловый менеджер с доступом ко всем «дискам» телефона. Через него мы можем не только на лету редактировать коэффициент усиления динамиков и делать всяческие твики, но и запускать те самые эльфы...
Какие возможности давали эльфы? Да практически любые! Сетевые сервисы, клиенты мессенеджеров и почты, игры и даже банальные утилиты — всё это писалось абсолютно бесплатно энтузиастами, которые хотели чуточку расширить функционал своего телефона. Один из эльфов, к примеру, позволял зажать обе софт-клавиши и озвучить время голосом!
Один из самых полезных эльфов позволяет разогнать или наоборот затормозить ядро ARM7TDMI. Конечно с частотами лучше не баловаться, иначе есть риск зависания, однако любые Neptune LTE спокойно гонятся на 12МГц, то есть потенциальный прирост производительности может составлять около 23%. И он действительно чувствуется!
А сейчас телефоны Motorola становятся ещё и объектом интереса среди демосценеров. Например EXL сюда портировал эмулятор Денди, Дум и 3D-движок с GBA, а также ковыряет перспективы использования GPU Imageon. И пусть далеко не все оценили пост с его стараниями по портированию разных демок на E398, мы то знаем что он делает крутые и интересные вещи. Настоящий балдежник!
❯ Заключение
Вот так и получилось, что целых 22 года назад, компания Motorola выпустила пожалуй одну из лучших своих моделей телефонов. И несмотря на все косяки и недостатки, E398 стал действительно народным аппаратом. Настолько народным, что нашлись энтузиасты, которые отреверсили прошивку и хакнули телефон настолько, чтобы превратить его почти в полноценный смартфон...
А что вы думаете о E398? Пишите своё мнение в комментариях!
А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет — подписывайтесь на мой Telegram-канал «Клуб фанатов балдежа», куда я выкладываю бэкстейджи статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты и щитпостю. А ролики (не всегда дублирующие статьи) можно найти на моём YouTube канале.
Если вам понравилась статья и вы хотите меня поддержать, у меня есть Boosty, а также виджет на Пикабу ниже. А ещё мне можноотправить какое-нибудь интересное железо: устройства на WinCE/WinMobile, китайские кнопочники, китайские подделки на iPhone/Samsung из начала 2010-х, ретро-ПК железо - всё это я очень люблю :) Всем огромное спасибо!
Что думаете о Moto E398?
Какой был лучший телефон из нулевых?
Что думаете о статьях в таком формате?
Статья подготовлена при материальной и корректорской поддержке @Timeweb.Cloud. У TimeWeb Cloud есть блог компании на Пикабу, поэтому реклама совершенно легальная :)
Моя видеокарта начала опасно крениться, и я понял, что пора звать подмогу. Обычные палки-подпорки выглядят скучно, поэтому решил добавить в корпус немного эстетики.
Есть два кандидата на роль держателя GPU.
Кандидат №1: Атлант Выглядит сурово и решительно. Готов вечность держать на своих плечах этот горячий кирпич с тремя вентиляторами.
Кандидат №2: Античная колонна Для тех, кто предпочитает строгую классику. Меньше пафоса, больше ионического ордера.
Вот думаю, кого ставить в сборку. С одной стороны, Атлант добавляет эпичности, с другой — колонна выглядит более аккуратно.