Приставки > 5 поколение
PSone Bios Dumping Guide.
<< < (6/10) > >>
dedok179:

--- Цитата: megavolt85 от 09 Май 2018, 20:41:00 ---в общем гугление дало результат, нарвался и на дизасм БИОСА и всё стало на свои места, я наконец понял как происходит загрузка стороннего ПО, мне это долго не давало покоя, а всё оказалось легко и просто, эту функцию заложила в БИОС сама SONY

--- Код: ---Сигнал Нога Flash Нога CPU Нога Paralell IO
  CE   22 (30)    98          4
  WE   31 (7)   100 64
  OE   24 (32)   101 30
 
номера ног Flash указаны для SST29EE020 в корпусе PLCC32 (TSOP32)
Нога CPU указана для установки в SLIM консоль

--- Конец кода ---

--- Конец цитаты ---
Сегодня как раз собирался этим заняться.
EVIL:

--- Цитата: megavolt85 от 09 Май 2018, 20:41:00 ---чуток подредактировал код, собрал без оптимизации
в дизассемблере вроде всё красиво, пробуйте

в общем гугление дало результат, нарвался и на дизасм БИОСА и всё стало на свои места, я наконец понял как происходит загрузка стороннего ПО, мне это долго не давало покоя, а всё оказалось легко и просто, эту функцию заложила в БИОС сама SONY


--- Код: ---Сигнал Нога Flash Нога CPU Нога Paralell IO
  CE   22 (30)    98          4
  WE   31 (7)   100 64
  OE   24 (32)   101 30
 
номера ног Flash указаны для SST29EE020 в корпусе PLCC32 (TSOP32)
Нога CPU указана для установки в SLIM консоль

--- Конец кода ---

--- Конец цитаты ---
Вроде все нормально шьется. Но все же рандомно глючило. Т.е. Теперь они и шарки про на составной памяти должны шиться, хотя в комментах почему-то только про Xplorer пишется.

Если пихать его уже после загрузки диска и шить потом, то все нормально, а если до и грузить диск с него, то ждут рандомные глюки. Но с ним и просто так игры тормозят, например видео в них. Может у тебя и на то конкретное объяснение есть и оно из описанного и вытекает? Или дело в том, что у этой версии есть еще и своя оперативка, дабы память оперативную ковырять можно было и это проблемы и создает. А еще там есть in game menu и оно явно тоже в памяти висит. 


Вот X-Flash v1.2 Beta 5 - 2 образа дисков, биосы со скринами и релиз бета 3 с комментами автора и утилитой для сборки прошивок в файл.
Я чужой образ редактировал, но выглядит все это кривовато, хотя на моей запускается.
megavolt85:
EVIL, тормозит потому что выполняется код не в RAM, хоть флешь и не медленная, но до скорости оперативки ей всё же далеко
выход есть, но он тебе не понравится  :) во первых надо распаять на плойку ещё один RAM чип, во вторых надо патчить софт, чтоб он из RAM работал, ну или писать свой софт
по поводу того что шьётся : Xplorer, Xplorer FX 1, Xplorer FX 2, Xplorer FX 3, AR/GS Pro
если есть что то не прошиваемое, то пиши, всё решаемо.
EVIL:

--- Цитата: megavolt85 от 10 Май 2018, 19:13:45 ---EVIL, тормозит потому что выполняется код не в RAM, хоть флешь и не медленная, но до скорости оперативки ей всё же далеко
выход есть, но он тебе не понравится  :) во первых надо распаять на плойку ещё один RAM чип, во вторых надо патчить софт, чтоб он из RAM работал, ну или писать свой софт
по поводу того что шьётся : Xplorer, Xplorer FX 1, Xplorer FX 2, Xplorer FX 3, AR/GS Pro
если есть что то не прошиваемое, то пиши, всё решаемо.

--- Конец цитаты ---
Будь бы у меня еще их так много. Пусть пробуют. Теперь она обязана быть универсальной, но не ясно, достаточно ли там чипов памяти, чтобы покрыть все устройства.
Решение есть - это нечто подобное, что выполняется с сд и висит где-то на карте памяти и в оперативке. Гуглится: psx cheat engine compilation.
Ну и может кто накинет прошивок сверху. Там и так уже тонна устройств, но может есть еще. Тогда вообще станет всё и для всего.
megavolt85:
EVIL, я тут toolchain собираю, решил PSXSDK освоить, ну и как контрольную работу решил накидать новый флешер, но так как плойки у меня нет, то нужно чтоб кто нибудь потестил, ты как на это смотришь?
EVIL:

--- Цитата: megavolt85 от 13 Май 2018, 14:24:31 ---EVIL, я тут toolchain собираю, решил PSXSDK освоить, ну и как контрольную работу решил накидать новый флешер, но так как плойки у меня нет, то нужно чтоб кто нибудь потестил, ты как на это смотришь?

--- Конец цитаты ---
Если бы я не был готов кому-то помогать, то и не ходил бы сюда.

Если решится вопрос коннекта с пк (а это вроде x-killer и xp), то я и не против, либо, если это не потребует много болваносов.
Другой вопрос - а надо ли? Тем более, что уже есть.
Тут нужен широкий спектр устройств, а их нет. Нужно пара человек, что готовы поломать свое добро на тестах и починить сами, а таких нет, хотя с наличием уже имеющейся приблуды вроде это и отпадает.
Плюс встает вопрос о расширении функционала, иначе зачем оно все..
Неясно, реализуемо оно, но добавить туда например дамп проши на кп для удобного его вытаскивания, а заодно и дамп биоса( хотя такое уже есть). Ну и непонятно есть ли в природе для картриджей такие проши, что позволят запускать диск на нечипованой приставке или менять биос на другой регион для обхода, например (как в сатурне). Это бы тоже сделало это более привлекательным для юзера, если добавить такие проши в лист.
Ну и имеющийся софт для проверки падов видит далеко не все оригинальные джои, поэтому и этим бы тоже можно было заняться. И добавить что-то для работы с кп.
Вот "все в одном" бы явно привлекло к себе пользователя, а только флешер, да при наличии рабочего - немного спорно.
megavolt85:
EVIL, флешер будет с поддержкой кучи типов памяти, на данный момент поддерживаются лишь 18 чипов и это вместе с однотипными (29EE010, 29EE010A)
дамп на карту памяти реализовать вообще не проблема, всё остальное в процессе, как говорится аппетит приходит во время еды  :)
EVIL:
Можешь поживиться.
pad test не видит и половины ориг. джоев, не говоря о вторых дуалшоках.
http://shendosoft.blogspot.ru/2013/07/psx-bios-dumper-26-released.html
http://shendosoft.blogspot.ru/2014/03/padtest-ps1-homebrew.html

Вопрос о кучерявых прошах (вроде pseudo saturn) пока открыт.



--- Цитата: megavolt85 от 13 Май 2018, 17:18:03 ---аппетит приходит во время еды  :)

--- Конец цитаты ---
Учитывая такие амбиции можно представить готовый продукт
dedok179:
Народ. Никто случаем не занимался переделкой бп от слимки к фатке? Есть рабочая плата 5ххх серии, но нечем запитать.
EVIL:

--- Цитата: dedok179 от 13 Май 2018, 17:56:55 ---Народ. Никто случаем не занимался переделкой бп от слимки к фатке? Есть рабочая плата 5ххх серии, но нечем запитать.

--- Конец цитаты ---
Как ты его переделаешь? Если там одно напряжение на выходе, а надо не одно.
Бывает конечно колхоз с dc-dc преобразователями, но зочем...
У меня вроде должен валяться не особо нужный, но на 110 Да и зачем уходить настолько в оффтоп.
dedok179:

--- Цитата: EVIL от 13 Май 2018, 18:06:01 ---Как ты его переделаешь? Если там одно напряжение на выходе, а надо не одно.
Бывает конечно колхоз с dc-dc преобразователями, но зочем...
У меня вроде должен валяться не особо нужный, но на 110 Да и зачем уходить настолько в оффтоп.

--- Конец цитаты ---
Даа. Проблемка. Есть убитый от 100х серии. Но без деталей смысл лезть туда.
EVIL:

--- Цитата: dedok179 от 13 Май 2018, 18:10:43 ---Даа. Проблемка. Есть убитый от 100х серии. Но без деталей смысл лезть туда.

--- Конец цитаты ---
А ты слазь, он не укусит

dedok179:
Вот оно. Ну и кнопка побита. Кнопка есть, конденсатор есть. Резисторы можно поискать, а последнюю штуковину я хз чем заменить. У меня нет таких в наличии.
megavolt85:
EVIL, ну со вторым дуалшоком понятно что не работает, а вот с оригинальными не совсем понятно, хотя подозреваю что сильно часто опрашивается джой, не любят фирменные чтоб их дёргали чаще 60-ти раз в секунду, а лучше ещё реже
EVIL:

--- Цитата: dedok179 от 13 Май 2018, 18:41:37 ---Вот оно. Ну и кнопка побита. Кнопка есть, конденсатор есть. Резисторы можно поискать, а последнюю штуковину я хз чем заменить. У меня нет таких в наличии.

--- Конец цитаты ---

Плавкий предохранитель. Должен продаваться даже не только в радиомагазинах, а много где. Номинал должен быть рядом.
Ну и раз там уже нет этого конденсатора, то ты уверен, что он ранее не был взорван из-за неверного напряжения сети и это блок не на 110, а на 220? Конденсатор на входе там точно разный.


--- Цитата: megavolt85 от 13 Май 2018, 18:49:13 ---EVIL, ну со вторым дуалшоком понятно что не работает, а вот с оригинальными не совсем понятно, хотя подозреваю что сильно часто опрашивается джой, не любят фирменные чтоб их дёргали чаще 60-ти раз в секунду, а лучше ещё реже

--- Конец цитаты ---
По идее и со вторым должен хоть частично. Явно, что он с каждой кнопки значение от 0 до 255 не снимет, но все же...
megavolt85:

--- Цитата: EVIL от 13 Май 2018, 18:59:58 ---По идее и со вторым должен хоть частично.
--- Конец цитаты ---

вот кусок кода TwinPad плагина


--- Код: ---// Command 0x45 Read extended status 1

// return values for cmd45:
u8 stdmodel[2][8] = { {0xff, 0x5a,
   0x03, // 03 - dualshock2, 01 - dualshock (Guitar Hero!?)
   0x02, // number of modes
   0x01, // current mode: 01 - analog, 00 - digital
   0x02,
   0x01,
   0x00},
  {0xff, 0x5a,
   0x03, // 03 - dualshock2, 01 - dualshock
   0x02, // number of modes
   0x01, // current mode: 01 - analog, 00 - digital
   0x02,
   0x01,
   0x00} };

--- Конец кода ---

видимо PadTest проверяет ответ на cmd45, видит что третий байт ответа 0x03 и не считает это за джойстик
EVIL:

--- Цитата: megavolt85 от 13 Май 2018, 20:38:11 ---вот кусок кода TwinPad плагина


--- Код: ---// Command 0x45 Read extended status 1

// return values for cmd45:
u8 stdmodel[2][8] = { {0xff, 0x5a,
   0x03, // 03 - dualshock2, 01 - dualshock (Guitar Hero!?)
   0x02, // number of modes
   0x01, // current mode: 01 - analog, 00 - digital
   0x02,
   0x01,
   0x00},
  {0xff, 0x5a,
   0x03, // 03 - dualshock2, 01 - dualshock
   0x02, // number of modes
   0x01, // current mode: 01 - analog, 00 - digital
   0x02,
   0x01,
   0x00} };

--- Конец кода ---

видимо PadTest проверяет ответ на cmd45, видит что третий байт ответа 0x03 и не считает это за джойстик

--- Конец цитаты ---
Надо будет проверить, может я что-то попутал. Но помню, что детектил он все крайне избирательно.
Кстати, а что там в коде на счет необычных падов? А то я даже не пробовал. Есть ли тесты для них и вообще где-то это реализовано? т.е. вытянуть с эмуля, например. А то было их не так мало.
У меня лишь один
megavolt85:
EVIL, как правило в эмулях реализовано только стандартное железо, экзотики нет. так что или вешать логер на шину и мониторить обмен с экзотикой, или дизасмить игру которая работает с этой экзотикой
EVIL:

--- Цитата: megavolt85 от 13 Май 2018, 21:09:54 ---EVIL, как правило в эмулях реализовано только стандартное железо, экзотики нет. так что или вешать логер на шину и мониторить обмен с экзотикой, или дизасмить игру которая работает с этой экзотикой

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

Да и просто выводить это в виде графики далеко не обязательно. Банально должно хватать и символов, либо вообще тупо регистрируемых значений.
megavolt85:

--- Цитата: EVIL от 13 Май 2018, 18:59:58 ---По идее и со вторым должен хоть частично.
--- Конец цитаты ---

вот тебе точный ответ на этот вопрос. pad test написан на PSXSDK, смотрим как в этом SDK полятся джои


--- Код: ---unsigned char psxsdkPadArr[PAD_READ_RAW_SIZE];

void PSX_PollPad(int pad_num, psx_pad_state *pad_state)
{
unsigned char *arr = psxsdkPadArr;

pad_read_raw(pad_num, arr);

pad_state->status = arr[0];
pad_state->id = arr[1];

pad_state->buttons = (arr[3]<<8)|arr[4];
pad_state->buttons = ~pad_state->buttons;

switch(pad_state->id)
{
case 0xFF:
pad_state->type = PADTYPE_NONE;
break;
case 0x41:
pad_state->type = PADTYPE_NORMALPAD;
break;
case 0x53:
pad_state->type = PADTYPE_ANALOGJOY;
pad_state->extra.analogJoy.x[0] = arr[5]-128;
pad_state->extra.analogJoy.y[0] = arr[6]-128;
pad_state->extra.analogJoy.x[1] = arr[7]-128;
pad_state->extra.analogJoy.y[1] = arr[8]-128;
break;
case 0x73:
pad_state->type = PADTYPE_ANALOGPAD;
pad_state->extra.analogPad.x[0] = arr[5]-128;
pad_state->extra.analogPad.y[0] = arr[6]-128;
pad_state->extra.analogPad.x[1] = arr[7]-128;
pad_state->extra.analogPad.y[1] = arr[8]-128;
break;
case 0x23:
pad_state->type = PADTYPE_NEGCON;
pad_state->extra.negCon.steering = arr[5]-128;
pad_state->extra.negCon.one = arr[6];
pad_state->extra.negCon.two = arr[7];
pad_state->extra.negCon.shoulder = arr[8];
break;
case 0x31:
pad_state->type = PADTYPE_KONAMIGUN;
break;
default:
pad_state->type = PADTYPE_UNKNOWN;
}
}

--- Конец кода ---

у PS2 DUALSHOK id 0x79, как видишь обработчика для этого типа нет, значит попадаем на default, а у нас там PADTYPE_UNKNOWN, вот и приплыли, джой не поддерживается, хотя кнопки вроде как должна отображаться, но опять же, не известно добавлял ли автор проверку типа джойстика, если добавил, то всё сходится
ну да ладно, добавим нам не жалко  :lol:
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии