PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   Горячая линия по PS4 (https://www.pspx.ru/forum/forumdisplay.php?f=441)
-   -   [FAQ] Пересборка дампа PS4 (https://www.pspx.ru/forum/showthread.php?t=112646)

in1975 16.02.2022 14:30

Вложений: 19

Если при проверке дампа высянилось,что много блоков [DANGER] или [WARNING], то вот гайд по правке дампа


1) Считанный дамп
2) Дамп такой же версии, но с рабочей приставки. Если дампа той же версии нет, то шансы резко падают
3) BwE NOR Validator
4) Hex-редактор. Я предпочитаю Hex Editor Neo или Hex Editor HxD


Предыстория: в ремонт пришла приставка CUH-1003A, с симптомом – не включается. Диагностика показала отсутствие поступления напряжений ядра и графики на APU приставки. После снятия дампа и анализа с помощью BwE NOR Validator стало понятно, что с дампом не все так здорово и придется испытывать судьбу по ее восстановлению. Ситуацию осложняло то, что версия прошивки приставки была 1.62, в то время как уже повсеместно была доступна 9.03.

Анализ исходной ситуации.
В исходном состоянии было 2 критические ошибки (Danger), 8 предупреждений (Warning) и 1 несовпадение контрольной суммы в блоке с файловой системой с неопределенным содержимым (Unlisted). Что же проблема со стартом налицо, будем пробовать восстанавливать. Для перехода к дальнейшим шагам вам потребуется дамп такой же версии, но с рабочей приставки. Если дампа той же версии нет, то шансы резко падают, хоть и остаются ненулевыми.
В моем случае ситуацию осложняло то, что найти редкий и древний дамп версии 1.62 мне так и не удалось. Единственное, что было найдено более-менее близким, была версия 1.61Е. На основе работы с этими двумя дампами и будет строиться данный гайд.
NB! Следует запомнить, что наличие несколько Warning без непосредственно ошибок, вполне себе допустимо и не влияет на работоспособность консоли. Большинство проанализированных мной дампов прошивок имели по 2-3 предупреждения и прекрасно работали.
Нажмите для увеличения

Перед разбором дампа, следует снять дамп несколько раз и проверить на различие по MD5, если различия есть, нужно снять так, чтобы различий не было (проверить контакты и прочее)

Понимание того, как устроена прошивка

Прежде чем идти дальше, рекомендую ознакомиться с главным источником информации о том, как устроено содержимое прошивки. Для этого лучше всего подойдет англоязычный ресурс www.psdevwiki.com и статься на нем Flash-Main (https://www.psdevwiki.com/ps4/Flash-Main). Для тех, кому не нужны подробности я опишу основные виды блоков в прошивке (согласно BwE NOR Validator):
- Static Section. Статическое содержимое, повторяющееся на всех консолях и их прошивках
- Dynamic Section. Изменяемое содержимое, в зависимости от версии прошивки, но не привязанное к конкретному экземпляру консоли
- Dynamic Section (Per console). Изменяемое содержимое, в зависимости от версии прошивки, и привязанное к конкретному экземпляру консоли. Иногда может повторяться в разных консолях, но с вероятностью 1 к 100, а то и меньше. Одна из самых паршивых ситуаций, если у вашей прошивки поврежден именно этот блок.
- SKU Ident. Идентификатор серии консоли (например, CUH-1xxx).
- Filler. Просто серия повторяющихся байтов, служащая заполнителем текущего блока до начала следующего. Как правило забито 0xFF.
- Прочие… их мы особо не рассматриваем, поскольку интерес они представляют в меньшей степени.

Также обратите внимание, что перед типом блока указывается его класс:
- SCE (SONY Computer Entertainment)
- SLB (область загрузчика)
- CID (область Сonsole ID, специфичная для каждой приставки и крайне критическая, тут же находится микрокод для различных устройств, того же BT или WiFi)
- UNK (область пока неизвестного назначения)
- VTRM (Virtual Table Rights Management). Этот блок отвечает за работу с защищенным контентом и за шифрование. Содержит счетчик активаций консоли. Тоже крайне критическая область.
- CoreOS (ядро системы). Уязвимая часть, содержит в себе уникальные для определённой версии прошивки блоки, поддается восстановлению, в т.ч. автоматическому через программу BwE NOR Validator.

Как несложно догадаться из описания выше, статические блоки, просто динамические а так же уникальные для конкретной версии прошивки можно брать с прошивок-образцов практически безболезненно. Филлеры можно просто самому заполнить значением 0xFF, а вот все, что связано с уникальными блоками на уровне экземпляра консоли, блока прав и шифрования вызовет у вас легкий зуд в районе пятой точки.


Первым в логе валидатора нам попадается блок со статусом [Unlisted]. Конкретно не сходится контрольная сумма по MD5 файла C0018001.bin:
C0010001.bin MD5: 6FCA0436441A1BCBFF497DC306EE8ADD [UNLISTED]
Нажмите для увеличения

Поскольку он пока не сильно информативен и не понятна степень влияния на запуск, решено было пропустить данный блок и заняться остальными.
Следующим на пути у нас появляется рассадник, состоящий из критической ошибки и тройки предупреждений.
Нажмите для увеличения

Повреждены блоки SKU Ident, CID Dynamic Filler, CID Filler, а также CID Dynamic Section. Самое время открыть Hex-редактор и приступить к сравнению обоих дампов. Используем для этого режим Tools – File Comparison – Compare Files…, после чего выбираем оригинальный битый дамп с приставки и дамп-образец. Дальше ставим синхронизацию окон и вертикальное разбиение:
Нажмите для увеличения

Нажмите для увеличения

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

Копируем из лога первый сбойный фрагмент: (B9290007FF070007FF0700030C040000000450DE) и ищем его в нашем битом дампе:
Нажмите для увеличения

Поиск привел нас к первому сбойному блоку, а HEX-редактор сразу подсвечивает разницу в содержимом дампов, делая процесс наглядным:
Нажмите для увеличения

Тут же откроем лог обоих дампов чтобы понимать, какое содержимое должно было быть на месте ошибок и предупреждений (слева наш многострадальный дамп, справа – образец).
Нажмите для увеличения

1. Обращаем внимание на то, что в нашем битом дампе повторяются циклично значения
50 de 2c bb, а первым вхождением данного мусора является блок
CID SKU Ident 25: B9290007FF070007FF0700030C040000000450DE [WARNING]
В первоисточнике же видно, что должно стоять 00 00 на конце SKU Ident 25, а потом должен идти Dynamic Filler 3.
Воспользуемся копированием и приведем блоки в идентичное состояние, поскольку они не являются уникальными.
Нажмите для увеличения

2. Дальше идет динамическая секция с пометкой уникальности для конкретной консоли, но раз у нас блок поврежден и взять его неоткуда, то просто копируем с первоисточника (вдруг повезет?) и заодно «добиваем» очередной филлер с помощью 0xFF.
Нажмите для увеличения

Если на этом этапе все сохранить и сделать повторную валидацию битого дампа, то можно будет увидеть, что у нас ушел 1 Danger и Warning’и, а значит пока движемся в правильном направлении.
Нажмите для увеличения

3. Следующим у нас идет битый блок CID Dynamic section 6. К сожалению, у нас он забит 0xFF и что туда писать – не понятно.
Нажмите для увеличения

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

Ищем по данной сигнатуре в дампе-образце возможное второе вхождение и натыкаемся на еще один такой же блок по адресу 0x001ce220 (первый был по 0x001c5220).
Бинго!
Нажмите для увеличения

Копируем указанный блок, начинающийся с 04 00 из этой секции в верхнюю по адресу 0x001c5220 и сохраняем. Еще один блок восстановлен!
Нажмите для увеличения

Смотрим в дамп-образец, а там всё забито 0xFF-ками. Недолго думая, делаем привычное дело – копируем блок.
Нажмите для увеличения

5. И вот мы добрались до финальной ошибки и пары предупреждений.
Нажмите для увеличения


Снова повреждена динамическая секция, филлеры и еще одна динамическая секция. Но нам это уже чем-то знакомо. Точно! Нечто подобное было при восстановлении SKU из п.1! Меняем тут последние 2 байта с 50 DE на 00 00, копируем секцию, начинающуюся с 6b 00 и забиваем остатки филлером по образцу.

6. Делаем финальную валидацию, и смотрим на результат….
Нажмите для увеличения

Отлично, пробуем прошиться! После прошивки нашего восстановленного дампа консоль ожила, дала старт и картинку.
Надеюсь, мой опыт будет кому-то полезен. Всем удачных ремонтов!


Автор инструкции: Alexey Bogdanov

Programer-7 18.02.2022 19:21

Добрый день
Принесли приставку, выключили свет при обновлении.

Приставка включается и просит установить программное обеспечение.

При установке выдает ошибку CE-34697-9 гуглление показало что это ошибка из за жёсткого диска.

менял. результат такой же CE-34697-9

считал прошивку, с помощью PS4 NOR Validator проверил

куча ошибок https://picabox.ru/img/83454814

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

ткните пожалуйста носом!

Damned2000 23.02.2022 02:23

Чем читали? Такое ощущение, что вы криво дамп сняли, иначе не могу объяснить такое кол-во ошибок. Если через CH341, то смотрите настройки, чтобы он корректно писал 0x00 и 0xFF. Надеюсь кривой дамп обратно не шили?

Okas43 23.02.2022 11:17

Цитата:

Сообщение от Programer-7 (Сообщение 1252440)
Добрый день
Принесли приставку, выключили свет при обновлении.

Приставка включается и просит установить программное обеспечение.

При установке выдает ошибку CE-34697-9 гуглление показало что это ошибка из за жёсткого диска.

менял. результат такой же CE-34697-9

считал прошивку, с помощью PS4 NOR Validator проверил

куча ошибок https://picabox.ru/img/83454814

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

ткните пожалуйста носом!

для правильного считания дампа. его считывают 2 раза и сравнивают данные в HEX редакторе. если данные совпали ,то можно продолжать. если разнятся. то ничего обратно заливать нельзя

Delfin- 25.03.2022 22:13

Добавь в инструкцию как считать правильно дамп а то с такими ошибками будут говорить что ты виноват не так описал

Delfin- 26.03.2022 20:15

дайте дамп 1.61 кто ни будь

Okas43 28.03.2022 13:49

Цитата:

Сообщение от Delfin- (Сообщение 1253404)
Добавь в инструкцию как считать правильно дамп а то с такими ошибками будут говорить что ты виноват не так описал

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

in1975 31.03.2022 09:51

Okas43, добавил в шапку:

Цитата:

Перед разбором дампа, следует снять дамп несколько раз и проверить на различие по MD5, если различия есть, нужно снять так, чтобы различий не было (проверить контакты и прочее)

goldmember22 06.02.2023 11:37

здравствуйте, BwE NOR Validator платный? просит пароль для архива.

J0hnTR 06.02.2023 11:54

goldmember22, читаем на странице программы пункт "Why is your software no longer free?" (будет запускаться в триал-режиме) + обращаем внимание на заметочку ниже "Archive Password: BwE".

Programer-7 13.02.2023 20:35

был снят криво дамп.https://picabox.ru/img_small/376480612
https://picabox.ru/img_small/376481158
прошивка 8.03 где искать рабочие дампы?

sin89rus 23.02.2023 12:25

Цитата:

Сообщение от J0hnTR (Сообщение 1266038)
goldmember22, читаем на странице программы пункт "Why is your software no longer free?" (будет запускаться в триал-режиме) + обращаем внимание на заметочку ниже "Archive Password: BwE".

ну а как проверить-то дамп? 100 баксов заплатить? Если так, то они хотябы сделали программу нормальную, чтобы попробовать ее раз. Я запустил прогу, и это по сути был мой пробный раз, она не нашла файл дампа. Все. купите лицензию. Дичь
если у кого есть последняя фри версия, поделитесь, у меня только 1.5.1 на жестком нашлась, но там нет 10.01 поддержки, хз как отработает с патчем UART

D777 24.02.2023 09:38

Programer-7,
sin89rus, ищите мастера, например в другом городе который сможет что то сделать. Эта сложная тема чтобы так просто в нее лезть, если испортите флешку, то приставку на разбор. :blush:

sin89rus 24.02.2023 09:44

Цитата:

Сообщение от D777 (Сообщение 1266801)
Programer-7,
sin89rus, ищите мастера, например в другом городе который сможет что то сделать. Эта сложная тема чтобы так просто в нее лезть, если испортите флешку, то приставку на разбор. :blush:

Спасибо, посмеялся.
Хорошо, родной.

sin89rus 24.02.2023 11:26

на ядре сопротивление 0.4ом, на таком же проце с рабочей платы CXD90051GB 1.1ом
Для слимок, да даже для прошек это низкое сопротивление.
В терминале ничего нет, отдает пару пустых строк.

У кого есть опыт, если проц мертвый - терминал будет пустой?

Ponka_k 30.03.2023 16:06

Цитата:

Сообщение от J0hnTR (Сообщение 1266038)
goldmember22, читаем на странице программы пункт "Why is your software no longer free?" (будет запускаться в триал-режиме) + обращаем внимание на заметочку ниже "Archive Password: BwE".

нет триала, красивая картинка с вашим HwID и ссылка на сайт. а там купите за 135евро и усЁ

Ponka_k 30.03.2023 17:01

Написала этому джентельмену на мыло.
200 австралийских или 125 евриков
Только так

D777 30.03.2023 20:45

Ponka_k, есть метод проще, но до него мастер если он себя считает мастером должен дойти сам. :D

Ponka_k 30.03.2023 21:32

Намекаете на исходник ? И обход реги?


Текущее время: 16:09. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.