![]() |
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
|
Ответ: Создаём рабочий игровой диск PlayStation
Ну, вот, составил таблицу указателей в EXE на LBA файлов (файлы идут в том же порядке, что и в EXE-шнике):
Bugs Bunny - Lost in Time (PAL) LBA Pointers from EXE
POINTER LBA FILENAME 8F2800 00010383 , >:\LEVEL1\TITLE.BZZ 3EAA00 00043582 , >:\LOADING\LOADING.BZZ 30BAA0 00047664 , >:\LEVEL1\LANGUAGE.BZZ 1E2600 00009758 , >:\LEVEL1\LS01.BZZ FD1800 00006397 , >:\LEVEL1\L01A.BZZ C31B00 00007107 , >:\LEVEL1\L01B.BZZ 011E00 00007681 , >:\LEVEL1\L01C.BZZ 932000 00008339 , >:\LEVEL1\L01D1.BZZ 822300 00009090 , >:\LEVEL1\L01D2.BZZ 7F2900 00010623 , >:\LEVEL2\L02A1.BZZ 7B2C00 00011387 , >:\LEVEL2\L02A2.BZZ 1A2F00 00012058 , >:\LEVEL2\L02A3.BZZ F53100 00012789 , >:\LEVEL2\L02A4.BZZ 033500 00013571 , >:\LEVEL2\L02A5.BZZ 423800 00014402 , >:\LEVEL2\L02A6.BZZ 473B00 00015175 , >:\LEVEL2\L02B1.BZZ 6D3D00 00015725 , >:\LEVEL2\L02B2.BZZ 064000 00016390 , >:\LEVEL2\L02C1.BZZ 0A4300 00017162 , >:\LEVEL2\L02C2.BZZ CD4500 00017869 , >:\LEVEL2\L02C3.BZZ 9E4800 00018590 , >:\LEVEL2\L02C4.BZZ DF4A00 00019167 , >:\LEVEL3\L03A.BZZ 4A5000 00020554 , >:\LEVEL3\L03ACOM.BZZ 934D00 00019859 , >:\LEVEL3\L03A2.BZZ 885300 00021384 , >:\LEVEL3\L03B.BZZ 1A5600 00022042 , >:\LEVEL3\L03C.BZZ FF5800 00022783 , >:\LEVEL3\L03C1.BZZ BA5B00 00023482 , >:\LEVEL3\L03C2.BZZ 415E00 00024129 , >:\LEVEL3\L03D1.BZZ 3A6100 00024890 , >:\LEVEL4\L04A1.BZZ 726400 00025714 , >:\LEVEL4\L04A2.BZZ 6F6700 00026479 , >:\LEVEL4\L04A3.BZZ 496A00 00027209 , >:\LEVEL4\L04B1.BZZ C56C00 00027845 , >:\LEVEL4\L04B2.BZZ 566F00 00028502 , >:\LEVEL4\L04B3.BZZ 887100 00029064 , >:\LEVEL4\L04C1.BZZ DF7400 00029919 , >:\LEVEL4\L04C2.BZZ 9B7700 00030619 , >:\LEVEL4\L04C3.BZZ B27A00 00031410 , >:\LEVEL4\L04D1.BZZ FC7C00 00031996 , >:\LEVEL4\L04D2.BZZ 987F00 00032664 , >:\LEVEL4\L04E.BZZ 958100 00033173 , >:\LEVEL4\L04E2.BZZ 858300 00033669 , >:\LEVEL5\L05A1.BZZ 2F8600 00034351 , >:\LEVEL5\L05A2.BZZ D28800 00035026 , >:\LEVEL5\L05A3A.BZZ E68A00 00035558 , >:\LEVEL5\L05A3B.BZZ F78C00 00036087 , >:\LEVEL5\L05A3C.BZZ 008F00 00036608 , >:\LEVEL5\L05A4.BZZ 529100 00037202 , >:\LEVEL5\L05A5.BZZ F39300 00037875 , >:\LEVEL5\L05B1.BZZ BF9600 00038591 , >:\LEVEL5\L05C.BZZ 919900 00039313 , >:\LEVEL5\MERLIN.BZZ 180000 00000024 , >:\BONUS\LB01.BZZ 150300 00000789 , >:\BONUS\LB02.BZZ 6A0500 00001386 , >:\BONUS\LB04.BZZ 6A1600 00005738 , >:\CC\CCINTRO.BZZ 078E00 00001934 , >:\CC\CC1A.BZZ C50800 00002245 , >:\CC\CC2A.BZZ 990A00 00002713 , >:\CC\CC2B.BZZ 080C00 00003080 , >:\CC\CC2C.BZZ BA0D00 00003514 , >:\CC\CC3A.BZZ 0F0F00 00003855 , >:\CC\CC3B.BZZ 041000 00004100 , >:\CC\CC3C.BZZ 241100 00004388 , >:\CC\CC3D.BZZ 5E1200 00004702 , >:\CC\CC4A.BZZ B51200 00004789 , >:\CC\CC4B.BZZ 201400 00005152 , >:\CC\CC4C.BZZ 914000 00005270 , >:\CC\CC4D.BZZ 051500 00005381 , >:\CC\CC5A.BZZ CA1700 00006090 , >:\CC\CCMERLIN.BZZ 95AA00 00043669 , >:\CC\CCEND.BZZ BCB900 00047548 , >:\CC\CREDITS.BZZ 95AB00 00043925 , >:\DEMO\DEMO2A2.BZZ 42AE00 00044610 , >:\DEMO\DEMO3C1.BZZ D8B000 00045272 , >:\DEMO\DEMO4A1.BZZ 48B400 00046152 , >:\DEMO\DEMO5C.BZZ 39B700 00046905 , >:\DEMO\DEMOB02.BZZ D3A900 00043475 , >:\LOADING\SCREEN1.BZZ EEA900 00043502 , >:\LOADING\SCREEN2.BZZ 24AA00 00043556 , >:\LOADING\SCREEN3.BZZ 969C00 00040086 , >:\LOADING\L_30BANK.BZZ D79C00 00040151 , >:\LOADING\L_30CF.BZZ 449D00 00040260 , >:\LOADING\L_30ESCA.BZZ 989D00 00040344 , >:\LOADING\L_30LOAD.BZZ DD9D00 00040413 , >:\LOADING\L_30RIDE.BZZ 8F9E00 00040591 , >:\LOADING\L_BCORRI.BZZ 129F00 00040722 , >:\LOADING\L_BDUCK.BZZ A99F00 00040873 , >:\LOADING\L_BHUNT.BZZ 63A000 00041059 , >:\LOADING\L_FLOAD.BZZ BFA000 00041151 , >:\LOADING\L_FLOAD2.BZZ 24A100 00041252 , >:\LOADING\L_FRIDE.BZZ 7EA100 00041342 , >:\LOADING\L_FXFILE.BZZ EFA100 00041455 , >:\LOADING\L_FXROOM.BZZ 3AA200 00041530 , >:\LOADING\L_MCOOK.BZZ 03A300 00041731 , >:\LOADING\L_MLOAD.BZZ A9A300 00041897 , >:\LOADING\L_MLOAD2.BZZ 4AA400 00042058 , >:\LOADING\L_MWITCH.BZZ D5A400 00042197 , >:\LOADING\L_PCANON.BZZ 74A500 00042356 , >:\LOADING\L_PDOCK.BZZ 17A600 00042519 , >:\LOADING\L_PLOAD.BZZ 4DA600 00042573 , >:\LOADING\L_PMINE.BZZ 17A700 00042775 , >:\LOADING\L_PRED.BZZ C9A700 00042953 , >:\LOADING\L_SAKICK.BZZ 48A800 00043080 , >:\LOADING\L_SALOAD.BZZ E7A800 00043239 , >:\LOADING\L_SANIGH.BZZ 45A900 00043333 , >:\LOADING\L_SARUN.BZZ AFA200 00041647 , >:\LOADING\L_MERLIN.BZZ 98B900 00047512 , >:\LOADING\L_THALL.BZZ Необязательные LBA FILENAME -74BB00 00047988 , >:\XA\MUSIC.XA -049A01 00104964 , >:\XA\SPEECHES.XA Нет указателя 00043753 , >:\SLES_017.26 Нет указателя 00047511 , >:\SYSTEM.CNF Нет указателя 00249300 , >:\DUMMY.DAT |
Ответ: Создаём рабочий игровой диск PlayStation
YAGAMI55, SlavaVlasov, Ловите лайфхак.
Программа от создателя mkpsxiso. Сделал он ее специально для распаковки образов первой соньки, написал ее давно, но видно забросил, до сих пор альфа-версия. С распаковкой она справляется, но есть огрехи, лучше все же через PSXRebuild распаковывать. А вот очень удобна эта программа тем, что с ключем "-s" она генерирует XML-файл для дальнейшей пересборки в mkpsxiso с сортировкой файлов по LBA. Программу можно найти на гитхабе, но я ее чуть поправил -в коде пару правок и перекомпилировал заново, а то подсказки не соответствовали коду. Итак - isodump.exe - https://my-files.ru/mkvxdu Одно но, внутри XML-файла на XA и STR по прежнему будет стоять DATA, но это меняется текстовым редактором за полторы секунды. |
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
SlavaVlasov, в общем я похимичил вчера с mkpsxiso. LBA файл он создаёт следующим образом mkpsxiso -lba lba.txt -noisogen GAME.XML Но он только создаёт! Дальнейших манипуляций не производит. Не собирает iso с этими же lba. Я уже думал так собирать Bugs Bunny - сгенерить lba, потом прописать эти lba в exe и собрать через mkpsxiso. Но это геморно. Гораздо легче старым дедовским способом через CDMage файлы обратно внедрять.(при условии что файлы не изменились в размере) Ну а теперь спасибо Bambuch0 за isodump.exe. Теперь mkpsxiso содержит ВСЕ для сборки образов! |
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
|
Ответ: Создаём рабочий игровой диск PlayStation
SlavaVlasov, Ну mkpsxiso просто парсит XML-файл и только генерирует текстовик с LBA файлов и считает, что между файлов нет разрывов. Тупо по порядку - один закончился, начался другой. Высчитывает LBA по размеру извлеченных данных. Если в исходном образе есть пустые места, адреса в новом образе со старым не совпадут. Зачем этот файл нужен - непонятно, просто видимо для информации.
Оно и isodump, тоже генерирует XML и выстраивает в нем файлы только в том порядке, в котором они в образе, без учета пустых мест. То есть порядок учтен, а если размеры файлов не совпадают или есть пустые места - будут отличия. Но тут хотя бы порядок уже автоматически выстраивается, не надо XML вручную ковырять. |
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
|
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
|
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
|
Ответ: Создаём рабочий игровой диск PlayStation
Цитата:
![]() Как видите, даже так безобразно собранный образ РАБОТАЕТ после пересчета пойнтеров в EXE! =) Скоро допилю утилитку и выложу. |
Часовой пояс GMT +3, время: 15:05. |
Перевод: zCarot
Права | Copyright ©
© PSX Planet Community 2003-2024