164
TECHNO BROTHER

Gameboy Advance SP с тяжёлой историей... [Длиннопост, про железо]

Сегодня Пикабушник под ником @apokhmel подарил мне мою мечту - оригинальную консоль GBA SP. Для тех, кто не в курсе - это легендарная портативка, вышедшая в далёком 2003 году и являющаяся раскладной версией оригинального GBA, куда добавили подсветку дисплея. Сначала ламповую, а затем и светодиодную!

Консоль построена на кастомной системе на кристалле разработки самой Nintendo. SoC AGB BE объединял в себе достаточно современный, на момент выхода, процессор ARM7TDMI, работающий на частоте 16МГц, кастомный сопроцессор Sharp SM83 прямиком из оригинального Gameboy (интересен тем, что представляет из себя микс архитектуры 8080 и Z80), продвинутый PPU (2D предок современных GPU, оперирующий спрайтами и тайлами) схожий с SNES и поддерживающий аж 7 видеорежимов, и даже аффинные трансформации, а также простенький SPU, включающий в себя как звукогенераторы оригинального GB, так и обычный ЦАП для вывода PCM-звука. Помимо основных модулей, в SoC также были таймеры, DMA и другие полезные ништяки.

Не менее интересной была и организация памяти. У процессора "торчали" наружу сразу две параллельные шины типа 8080 - одна на внешнюю SRAM объемом в 256КБ (стоит рядом с процессором), а вторая на картридж. При этом обе шины были 16-битными, из за чего выборка одного машинного слова (для ARM) требовала сразу два такта чтения. Распиновка картриджа была идентичной оригинальному GBA (для совместимости) и отличалась использованием общих сигнальных линий для адреса и данных - в чипе ROM был встроенный сдвиговый регистр, который сначала сохранял адрес нужного банка, ждал пока процессор переведет линии в высокоимпендансное состояние и затем выставлял прочитанные данные на те же линии. Хитро и умно :)

Но главной фишкой было то, что внешняя SRAM была относительно медленной и для этого Nintendo предусмотрела 32КБ сверхбыстрой оперативной памяти в самом процессоре. Эта SRAM была подключена в обход контроллера параллельной шины, скорее всего сразу через AHB.

Интересно и то, что ARM7TDMI можно было найти и в других устройствах тех лет. Например кнопочных телефонах - наши любимые Motorola E398, Samsung C100 и Nokia 3310 используют точно такое же процессорное ядро, только работает оно на разной частоте.

Несмотря на высокий уровень интеграции по меркам 2001 года, в GBA и GBA SP питальники разведены отдельно. В GBA и первой ревизии SP за питание консоли отвечало сразу два чипа - S6403, объединявший в себе 2 DC-DC понижающих преобразователя, формирующие основные шины питания - 1.8В (вероятно ядро) и 3.3В (системное) и 1 повышающий, формирующий 5В (для совместимости с картриджами оригинального геймбоя), а также простенький детектор разряженного АКБ (на делителе?). Вторым чипом была микросхема зарядки MM1581, которая частенько выходила из строя и калилась, из за чего консоль продолжала работать нормально, но жрала аккумулятор куда быстрее и переставала заряжаться.

В чуть более свежей ревизии, преобразователи и зарядку объединили в один чип, который в моем случае частично вышел из строя...

АКБ оказался сдохшим. Я проверил консоль с помощью ЛБП - она включалась, но висела на заставке без лого Nintendo (это значит что картридж не обнаружен), потребление было в норме - 40мА с обычным уровнем подсветки и 80мА с максимальной яркостью (респект инженерам Nintendo, это очень маленькое потребление по меркам такого девайса. Например RP2040 сам по себе кушает не менее 20мА в режиме сна!). Затем крокодилы чутка коротнули друг об друга и при следующем включении я уже увидел потребление в 300мА...

Само собой в Nintendo работают не идиоты и защиту на VBAT от КЗ и переполюсовки предусмотрели, так что дело явно не в этом. Однако КП начал калиться и при детальном рассмотрении оказалось что следы этого самого кофе перемкнули несколько ног на КП... но было уже слишком поздно - изначально ведь я не знал, что консоль была водолазом :)

После небольшой диагностики я выяснил что сдох только КП, что это типовуха у последней ревизии и на многих консолях остаётся лишь перерезать VIN на КП и собрать чарджер на чем то типа LTC4054. Все остальные модули, включая усилитель звука, DC-DC'шки и "Fuel gauge" остались живыми... Но сколько проработает КП, которой так калится?

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

Я поищу донора с ещё более ушатаной платой, и если повезёт найти по нормальной цене, то обязательно свапну контроллер питания и отремонтирую консоль 😎

Также мне хотелось разобрать матрицу и почистить рассеиватель от следов кофе, но в случае с дисплеем GBA это просто нереально. Дисплей толком неразборной, матрас вместе со шлейфом приклеен к подсветке и малейшее неосторожное движение либо отклеит шлейф от дешифратора, либо повредит боковые дорожки драйвера дисплея.

Перебирал довольно много разных матриц, но эта - самая неподдающаяся.

Перебирал довольно много разных матриц, но эта - самая неподдающаяся.

Что-ж, пока поиграю и так :) А ведь GBA отлично показывала себя в тех 2D играх, где используются спрайтовые режимы PPU. Несмотря на скромную частоту процессора, многие игры шли в стабильные 60 FPS как раз благодаря тому, что чипу не приходилось заниматься программным блиттингом, аффинными трансформациями и прочими тяжёлыми по меркам памяти и процессорного времени штуками - он просто заполнял атрибуты спрайтов на экране в OAM. Да, как и на NES за 20 лет до выхода GameBoy Advance :)

Если любите читать такое - подписывайтесь на мой Telegram "Клуб фанатов балдежа", куда я выкладываю различные посты связанные с ремонтом, моддингом и программированием для ретро-железа, ну и конечно немного щитпоста :)

Как вам консоль?
Всего голосов:

TECHNO BROTHER

2.4K поста14.2K подписчиков

Правила сообщества

1-Мы А-политическое сообщество. 2-Запрещено оскорбление: Администрации Пикабу, сообщества, участников сообщества а также родных, близких выше указанных.

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

3
john
Автор поста оценил этот комментарий

rp2040 20мА в режиме сна? серьёзно?

раскрыть ветку
3
Автор поста оценил этот комментарий

Ну и к слову это не единственная моя GBA. Есть еще "GBA" - китайский клон, который также подогнал мне читатель с Пикабу, за что ему большое спасибо :)


Клон не аппаратный, а лишь программный. Внутри потеет куда более мощный ARM/MIPS процессор чем в оригинале, но из-за необходимости эмуляции довольно сложного PPU, многие игры лагают. Для работы с картриджами китайцы вывели точно такую же внешнюю шину 8080 и подключили ее к своему процессору.


В целом у меня идея в том, чтобы написать небольшую портативную 2D игру типа танчиков с единой кодовой базой как для GBA, так и для ретро-кнопочников и даже современных кнопарей на базе процессоров MT6261. Было бы интересно обернуть весь фреймворк вокруг особенностей PPU консоли и затем написать ее софтрендер для других платформ.

Иллюстрация к комментарию
2
Автор поста оценил этот комментарий

Подарю автору Агушу, ведь он любит Агуша гейминг!

10 Михиалов Шкредовых из 10

Иллюстрация к комментарию
1
Автор поста оценил этот комментарий
Как бы героев на телефоне погонять
раскрыть ветку
0
Автор поста оценил этот комментарий

Недавно пришел "кирпич" из Китая, залил на него игры с gba и прочих, сейчас залипаю в Гарри Поттера

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества