Успешно заработало на PSOne SCPH-102 с платой PM-41. В процессе установки, правда, не обошлось без некоторых незначительных трудностей, поэтому поделюсь своим опытом и свежими впечатлениями.
Так как внутри корпуса PSOne не очень много свободного места, а также потому что для PsNee нужно питание 3.5V, для установки выбрал китайский клон Pro Mini с частотой 8MHz, питанием 3.3V и чипом ATmega168PA. Прошивку загружал через китайский клон программатора USBasp. Хочу обратить внимание на программатор, так как у меня с ним возникли некторые сложности. Китайцы продают несколько их вариантов, поэтому желательно иметь такой, который позволяет запитать программируемое устройство током 3.3V и имеет перемычку для заливки прошивки на медленной скорости. Мой выглядит так:
Информации об USBasp в интернете можно почитать много. Скажу только, что желательно таких программаторов покупать сразу два, чтобы получить возможность заменить прошивку в самом программаторе, т.к. китайцы туда заливают какую-то старую версию, которая у меня выдавала ошибки. Встречал инфу от более опытных людей, что желательно сравнить реализацию программатора с оригинальной схемой и заливать оригинальную прошивку, если они более-менее совпадают. Я перепрошил свои программаторы оригинальной прошивкой, а также установил фьюзы в соответствии с рекомендациями автора оригинального USBasp. В результате перестал работать один светодиод, но в остальном программатор оказался рабочий. Кроме того, есть мнение, что для работы с устройствами 3.3V программатор требует доработки в питании, как, например, вот тут:
https://www.hackster.io/billy-cheung/3-3v-usbasp-modification-c20557, в разных вариантах программатора эта доработка делается по-разному. Я не делал, но столкнулся с проблемой: на одну из имеющихся у меня двух идентичных плат для PsNee, на которой я всё тестировал, прошивка в какой-то момент стала заливаться с ошибками, слетали фьюзы, прошивка не проходила верификацию. Я долго разбирался, в чем дело, но потом переставил перемычку на 5V и прошивка успешно записалась. Неудобство в том, что так как установленная в консоль плата питается от 3.5V, прошивать уже установленную PsNee с 5V было бы не очень полезно для консоли, но мне повезло - установленная в консоль плата прошивается и на 3.3V. Возможно, просто попался не очень удачный экземпляр ProMini, а если возможность замены прошивки в установленной PsNee в последующем не критична, то неудобство становится весьма условным.
Для заливки прошивки на программаторе также пришлось установить перемычку JP3. Дело оказалось в том, что для ATmega168PA изначально были установлены фьюзы для работы от внутреннего осциллятора с частотой 1MHz, поэтому возникала ошибка. Я перемычку впаял, программатор заработал.
Вторая проблема, с которой столкнулся - это место размещения ProMini в корпусе с платой PM-41. Разместил я её вот так:
На плате PM-41(2) проблемы бы не было, но на плате PM-41 при закрытии корпуса металлический экран оказывает давление на кнопку Reset. Выпаять кнопку одним паяльником с моими весьма посредственными навыками в пайке у меня не получилось, поэтому я кнопку просто разобрал, налепил изоленту на обратную сторону экрана, в итоге корпус закрылся нормально, без зазоров. Если бы на ProMini был установлен большой кварц, так легко отделаться не получилось бы и надо было бы искать другое место для размещения платы.
Ну и последняя проблема, с которой столкнулся - почему-то сначала не заработал патчинг БИОСа. Для сборки прошивки в Arduino IDE я использовал ядро MiniCore. Прошивка собралась и записалась нормально, бэкапы игр PAL-региона стали запускаться нормально, но BIOS не патчился. Спасибо
postal2201 за помощь в сборке прошивки и подсказку по правильной установке фьюзов
в этой теме. Для ATmega168PA 8MHz фьюзы такие:
В итоге всё заработало как надо.
О трудностях, с которыми столкнулся, вкратце всё. Как видно, трудности эти вызваны прежде всего моделью моей консоли и(или) моими кривыми руками, а не самой прошивкой. Теперь хотелось бы отметить плюсы PsNee на основании личных наблюдений по сравнению с OneChip и 12С607/P. Для PsOne есть ещё Mayumi v.5.1, заточенный именно под эту консоль, но я с этим мод-чипом никогда не сталкивался и не могу сказать, как он работает.
Основной и самый существенный для меня плюс - это работа PsNee с приводом консоли. В PsNee реализован иной подход по сравнению с другими модчипами. Как уже указывалось ранее в этой теме, аудио CD работают без всяких зависаний и торможений сразу со старта, как будто никакой модификации нет вообще. Привод консоли стал работать тише, без лишних жужжаний и скрипов. Улучшилась читаемость самописных болванок. Я когда-то пытался выяснить, как правильно сегодня записать бэкап для PlayStation, учитывая имеющиеся сегодня в продаже матрицы и отсутствие в продаже качественных CD-приводов, в ходе экспериментов пожертвовал кучей болванок, записанных в разных режимах разными приводами и с использованием различных программ, грешил на приводы, программы для записи и некачественные матрицы, но это отдельная тема. Никогда не думал, что модчип может оказывать настолько существенное влияние на читаемость бэкапов, но с PsNee я даже удивился, потому что стали читаться обычные матрицы производства Ritek, которые я считал загубленными. Проверял на первом Dino Crisis, первый же записанный образ с субканальными данными без патча для снятия защиты Libcrypt запустился без каких-либо подтормаживаний. Респект авторам прошивки!
Кроме того, остается возможность замены и обновления прошивки без перепайки. Если в будущем проект будет развиваться и не изменится распиновка, всегда остается возможность изменить или откатить прошивку. PsNee уже пытаются
переписать на Python, надеюсь, что разработка основного проекта тоже не остановится.
Ну вот как-то так.