Pull to refresh

Comments 34

Упс, отвалился CDN с видосами. Перезаливаю.

На следующей неделе вас ждёт довольно интересный материал про аппаратный ретро-моддинг устройств. Думаю, у многих моих читателей был такой крутой коммуникатор, как QTek S100. Я свой экземпляр купил два года назад за сто рублей в неизвестном состоянии и мне удалось его включить, смастерив аккумулятор "из того что было". И свежая WM2003 на борту, и шустрый PXA272 с частотой 400МГц, да вот только всего 64Мб ОЗУ (не на всех рынках) портили малину!

Около года назад я узнал о том, что некоторые особо ушлые мастерские практиковали такую процедуру, как увеличение объёма ОЗУ на коммуникаторах, путём физической замены банок ОЗУ. Я изучил вопрос подробнее, изучил дш на модули памяти и проапгрейдил свой S100, превратив его в S110 с 128Мб ОЗУ! А поскольку информации по этой теме очень мало, в следующей статье вы узнаете: где достать SDRAM в BGA-корпусе повышенного объёма, что необходимо сделать, дабы бутлоадер увидел дополнительную ОЗУ, на каких коммуникаторах это можно делать и собственно сам процесс выпаивания старых банок и установки новых, а также тесты.

Интересен такой материал о ретромоддинге?

Пользуясь случаем, вклинюсь не в тему.

Есть кнопочный телефон на Unisoc T107. Гигагерц дури, 48 МБ оперативки, 320х240, 4G. Что хорошего есть для этой платформы - это же вроде как Mocor? Пойдут ли на ней mrp, как на телефонах с SC6531? Есть ли Opera Mini или другой продвинутый браузер?

Маловероятно. А с чего взяли, что гигагерц?

Есть инфа, что T117 - гигагерц, а Т107 от него отличается, по сути, только обвязкой (они поставляются как готовая платформа) - например, 48 МБ ОЗУ вместо 64. Ну и внешние источники пишут. У них и заводские индексы похожие UMS9117 и UMS9117-L.

Кстати, на некоторых телефонах имелся графический процессор. Например, в SE k800-k790 и motorola razr v3i устанавливался ATI Imageon 2192.

Да, так и есть :) Я кстати об этом упоминал в прошлом материале о N-Gage QD.

Единственный нюанс: большинство Imageon'ов были исключительно 2D-ускорителями, которые в основном предоставляли аппаратное рисование и заливку линий, прямоугольников, овалов и.т.п, а также аппаратный блиттинг (копирование одного участка памяти с картинкой в другой). 3D-ускорители Imageon появились немного позже, зато вроде почти сразу с поддержкой GLES 2.0 (почти сразу же Qualcomm выкупил всё подразделение Imageon, что и вылилось в нынешний Adreno!).

Но 3D GPU действительно были и тогда. Один из самых частых: Intel 2700G в КПК и коммуникаторах, представлял из себя PowerVR MBX (дальний наследник архитектуры GPU из Dreamcast) и аппаратный декодер видео от Nvidia. Кроме того, PowerVR MBX Lite можно было встретить и в чистом виде - на Nokia N95, Sony Ericsson W950i, некоторых самсунгах на Symbian, которых не было на рынке РФ и конечно же, iPhone 2G и 3G!

Ещё были GoForce, но КПК с ними весьма мало и мне ни один не попадался сейчас. А некоторые производители делали неприятную подлянку - 3D-ускоритель отключили в системе софтварно, хотя он был в железе :(

Крутой семпл для создания игры) Мне понравилась статья, так держать! Интересный материал

Спасибо, стараюсь))

Шутеры типа Wolf3D/Doom на «звонилке» — это здорово, жаль, что колёсико скроллинга не стало стандартом. Без хотя бы горизонтального аналогового позиционирования (даже Doom нормально сам наводил по вертикали, а в Wolf3D вертикали и вовсе не было) остаётся только унылый «трактор», который, естественно, не прижился :(

Интересно, можно ли на какой-нибудь телефон «с колёсиком» прошить насмерть не J2ME-порт, а нативный порт GZDoom, чтобы актуальные моды тянул :) Всякие там DRLA и прочее :) Хотя он крайне жручий…

Ну или OpenTyrian, хотя стоп, этого, наверное, и J2ME потянет :) Было бы колёсико! :)

Под колесиком подразумевается центральный стик, или именно JogDial боковой?

Боковой, боковой. Центральный стик по чувствительности недалеко от кнопок ушёл :( А вот JogDial можно шустро крутнуть в сторону противника не хуже мышки :)

Хм. Идея интересная, без шуток :) Новый экспиренс так сказать.

Портировать ничего не нужно, все уже есть: вам нужен SE P900 и GZDoom. jogDial кажись как кнопка вверх-вниз определяется системой.

на Сименсах был эльф с Думом, он тянул простенькие вадники)

перспективно-корректное наложение текстур

Помню одну игру, где текстуры рендерятся ровно, без искажений: Powerball Arcade c SE W900.

Не могу сказать, какое там используется 3D API, но у меня на J105i это была единственная игра с корректным отображением текстур.

3D-шутаны — это, конечно, хорошо.

Но мне больше был мил сердцу написанный для Mophun ICQ-клиент, который пилили парни с одного из WAP-форумов, посвященных SonyEricsson, и позволявший на моём «гробике» T230 экономить солидные деньги на SMS :)

Еще интересное замечание: у тех же самых парней не было, понятное дело, возможности купить сертификат для подписи приложух, и он делали специальную девелоперскую сборку для всех желающих. Нет, не просто для всех, а для каждого индивидуально — с привязкой IMEI.

Кстати, по теме мобильных клиентов «аськи». У Нокии был такой малоизвестный протокол — Wireless Village, клиент которого был встроен в некоторые их телефоны. Один из серверов, который поддерживал этот протокол, имел бридж в AIM/ICQ. Я даже им пользовался какое-то время.

Спасибо за то, что пишете, ваш блог на «Хабре» — просто бриллиант, один из немногих, статьи в котором я очень жду и всегда читаю!

@bodyawm, огромное спасибо за контент! В сторону Siemens SXG75 не смотрели?

Привет. Смотрел конечно, я даже в чатике, посвященном эльфам на сименсах сижу, но схг очень дорогие :)

Так что в ближайшие месяцы выйдет материал об эльфах на С75 и 65 серии.

Очень жду! Хочу достать С65 и на него тоже что-то написать

специально зарегистрировался, чтобы сказать, что статья ТОП. Было очень интересно прочитать.

Спасибо большое!

Очень интересно! Спасибо за статью!

Скупая мужская слеза скатилась по небритой щеке ...
Занимался разработкой софтверной имплементации OpenGL ES и M3G(JSR-184) для LG. Моя команда еще и игры пилила для телефонов LG - аппаратная платформа близка к Nokia N-Gage по процу/памяти/экрану.
Вот несоклько разработанных нами игр - https://www.youtube.com/watch?v=8tWNL9nxVis
Вот сетевая игра по BT, видно как такие телефоны выглядели - https://www.youtube.com/watch?v=tvYmv28-sp0

О, нифига, вот это прям очень интересно)) А подскажите, какой девайс от LG GLES держал? Я знаю что из серийных девайсов только пару поздних моделей SE держали GLES... ни s40, ни p2k, ни s60 не держали GLES :(

Это было чисто в нативе, не на S60 телефонах - там была собственная платформа еще(на базе REX).
То есть доступно только своим разрабам или партнерам.
Наш M3G был доступен всем есс-но, а он базировался на нашем же OpenGL ES.

Ага, значит BREW... интересненько, всегда интересовался их возможностью выполнять нативный код. Надо бы покопать потом мобилки на BREW, слышал некоторые легко поддаются джейлбрейку, жаль в РФ они не очень часто попадались.

Глянул видосы! Очень круто, работают прям шустренько :) Если помните некоторые моменты, сможете подсказать?

  1. Софтрендер использовал полноценный Z-буфер или сортировал треугольники ручками? Всё же ресурсов маловато для ещё одного фулл-скрин буфера, да и FPU нет, а fixed-point Z-буфер страдает от некоторых проблем с точностью.

  2. Какой алгоритм для клиппинга (near-clipping, не по пирамиде видимости) геометрии использовали?

  3. Была ли поддержка Stencil'а и если да, то какая? Отъедали один бит у Z-буфера?

Спасибо за ответы :) Из крутых софтрендеров всречал ещё Yeti3D с его интересным алгоритмом сортировки (работает даже на GBA). В будущем хотел бы написать статью о разработке "GPU" на базе ядра общего назначения - т.е фактически софтрендер + контроллер дисплея на микроконтроллере, с которым можно общаться через SPI. При этом весь пайплайн возьмет на себя один мощный мк: от трансформации геометрии и хранения вершинных/текстурных буферов, до растеризации и возможно даже некоторого подобия шейдеров (путем инжектов "шеллкода", например вот так).

Поскольку нужно было проходить верификацию у Кроноса на получение шильдика OpenGL ES, то работало все, причем в некоторых особо оптимизированных местах приходилось переделывать, так как не хватало точности - там конформант тесты рендерят что-то а потом берут точку и проверяют цвет и он должен быть ТОЧНО как ожидается - недопустимо чтобы был шум в младших битах и тп. Тесты на M3G были еще более придирчивы.
Поэтому Z буфер был полноценный как и все остальные фичи OpenGL ES. Это была еще первая версия, которая без шейдеров и примерно соответствовала обычному классическому старому Open GL.
А чтобы игры быстро работали применялись те же техники что и для писишных игр времен 385-486 машин. То есть либо вообще без Z буфера, либо как в Квейке - окружение рисуем без зет теста но с заполнением з буфера, а уже мелкие обьекты с полноценным зет тестом и тп. Но это уже то что выше OGL то есть игровой движок - у нас было два варианта такового. Один очень простой, а второй делался отдельной командой - там все по самым модным методикам тех времен. Есс-но везде упрощенные режимы рендеринга - без освещения и тп. Могу сказать что самые ходовые режимы рендеринга(типа только текстура без зет, только текстура с зет записьмю и тп.) были захардкожены отдельными функциями без проверок и кастомизации чтобы получить максимум скорости.
По скорости мы чутка обгоняли азиатские решения от Hi-Corp и Superscape, но чутка отставали от решения финской Hybrid, которую потом купила NVidia. Hybrid вообще использовали генерацию(с кешированием) бинарного кода для конкретных настроек конвейера, на что я замахнуться не мог. Но все равно разница была небольшая, потому что софтверный рендеринг упирается хочешь не хочешь должен делать примерно одно и то же и есть предел оптимизации.

Спасибо. А Hybrid это кто? :)

Superscape это Swerve3D, довольно шустрый софтрендер, помню, Hi-Corp это Mascot Capsule. И интересно стало, кто верифицировал реализацию M3G?

Sign up to leave a comment.