| 
 Вложений: 1 riku.kh3, ну вообщем вот подписанный тем же родным кирком ~SCE и ~PSP либфонт, надеюсь не напортачил и должен работать... По заголовку и размеру он ничем не отличается от оригинала. Тело же конечно уже другое 0x150 + 0x40, но подписано этим же родным кирком и заголовком. Ах да, мой шрифт, который я выкладывал в предыдущем архиве, ловит кириллицу в юникоде и в однобайте. Так что можно использовать как двубайтную кодировку юникода, так и однобайтную win-1251 0xC0 = А. А ты точно уверен, что шрифт именно jpn0.pgf? А то вдруг там какой-нибудь ltn12.pgf... как в Лунаре. В общем шрифт должен подхватываться из папки disc0:/PSP_GAME/USRDIR/X9DULE/. Название самого шрифта не указывается в пути, его даже не видно при дампе памяти, он как-то странно там отбирается по непонятному механизму, но в дампе sceFont_Library виден шрифт kr0.pgf Код: AsiaNHH(512Johab).tin...........................................kr0.pgf.f | 
| 
 Цитата: 
 ErikPshat, тебя не затруднит всё-таки проверить на реальной PSP модифицированный libfont? Неужели железу PSP пофиг, что путь к disc0:/ в мод. библе записан прямо тупо так в открытом виде, а не как до этого? :scratch_one-s_head: | 
| 
 Цитата: 
 Ну а путь складывается по тому адресу в памяти flash0:/font/. В оригинале то место забито нулями специально для этих нужд. А т.к. по тому адресу я уже прописал новый путь, то он уже не затирается. Это можно проверить сдампив память с модифицированным либфонтом. | 
| 
 ErikPshat, тогда это объясняет, почему на эмуляторе путь переписывается назад на flash0, и все это китайское мамбо джамбо с написанием своего модуля :D | 
| 
 Вложений: 5 riku.kh3, ну собсно проверил, всё работает. Подписанный и зашифрованный кастомный модуль отлично отрабатывает на PSP. Только я шрифт туда подкинул свой Times New Roman сконверченный в ltn0.pgf - переименованный в jpn0.pgf. Соответственно игра у меня японская и вместо шрифта я вижу прочерки, отображаются только английские слова и спец-символы типа - !?" Вложение 10017 Вложение 10018 Снял дамп памяти, там то же всё чётко. Путь в памяти отображается в нужном месте и не затирается:  Сравнение оригинального дампа и модифицированного зашифрованного модуля libfont Ну и во вложении доказательства дампа памяти. | 
| 
 Цитата: 
 Попробуй убрать из эмуля шрифт jpn0.pgf из папки совсем. А может ты новый модуль не сохранил в образе игры? Или может шрифт туда забыл подкинуть? | 
| 
 Вложений: 1 Цитата: 
 Подписанный: | 
| 
 riku.kh3, эмм, это китайское мамбо действительно чудо из чудес :D Как они так умудрились сконвертировать такую библу, там я вижу после концовки файла идёт ещё куча мусора, больше, чем сам продуктивный код. Выбрось эту шнягу подальше. И не понятно, что это у тебя на первых скринах и всех остальных пытается грузиться flash0:/font/zh_gb.pgf Этого шрифта нет ни в игре, нигде. Либо ты сам где-то подмешал это китайское чудо с моим модулем вперемешку. | 
| 
 ErikPshat, не, это эмулятор для своих системных нужд пытается и несуществующий шрифт добавить (там эмитация окошек для сейвов/загрузок где этот шрифт может использоваться, ввода текста и т.п.). Он вообще все существующие шрифты пытается грузить во всех играх.. :scratch_one-s_head: В образе там все чистенько - только твой libfont.prx заменен и jpn0.pgf рядышком с ним. | 
| 
 riku.kh3, я вижу у китайцев такой хитрый путь: ms0:/iso/open_ms0 :xDD: Они наверное подумали, что путь сработает и откроется ms0 :D Ага, и откуда они догадались такую строчку воткнуть ms0:/ISO/zh_gb.pgf oldfont.prx - это вообще либа не от этой игры. То есть, как я понял, либа libfont.prx компилится только для одной игры, под которую она предназначена, на другой игре по идее она работать не должна. Это потому, что в самой либе прописано название игры, зашифрованное в заголовке ~SCE. В этом oldfont прописан заголовок от другой игры: Код: \yr=`c`0~{tx...22222GIDD/Код: \yr=`c`0~{tx...22222JFDD/ | 
| 
 Вложений: 1 Вот он ~SCE заголовок зашифрованного файла и он же прописан внутри самого файла, если его декриптовать. Вложение 10023 Но у китайцев внутри файлов я вижу другой заголовок от какой-то другой игры. По идее такой файл не должен работать на чужой игре. | 
| 
 Все, понятно почему на эмуляторах с правильным libfont.prx шрифт не грузится откуда положено. :) Они попросту не используют libfont.prx вообще, вместо него там в самом эмуляторе грузится рутина. Попробовал заменить libfont.prx на пустышку забитую мусором, и оба эмулятора как ни в чем не бывало запустили игру: Тут же и ответ на оба поста выше. | 
| 
 riku.kh3, ну на первых скринах я вижу, что вроде бы грузится disc0:/PSP_GAME/USRDIR/X9DULE/libfont.prx Там кругом видно, что путь отрабатывает. И шрифт должен браться оттуда же disc0:/PSP_GAME/USRDIR/X9DULE/jpn0.pgf Ты посмотри внимательнее в логах, может наряду с другими шрифтами он грузится где-то в конце? | 
| 
 ErikPshat, на первых то скринах да, видно что 'вроде бы' грузится, но на самом деле эмуль определяет "что" это такое пытается грузится и скипает, перенаправляя на свой код рутины по работе со шрифтами. Логи я внимательно все пересмотрел - disc0:/PSP_GAME/USRDIR/X9DULE/jpn0.pgf не грузится 100%. Да и говорю, пустым файлом заменил libfont.prx в игре, а она все так же как ни в чем не бывало работает и шрифт все так же отображается. То есть грубо говоря даже если libfont.prx и грузится, эмулятор его поверх своим кодом все-равно перезаписывает. Как то так, в общем. :scratch_one-s_head: | 
| 
 riku.kh3, ну ладно, тогда значит понятно, что нифига не понятно, почему эмуляторы подсовывают свои шрифты :D В общем думаю проблему мы решили, ведь игру планируется запускать на PSP. И в общем всё на ней работает, как положено. Ну а проблемы со шрифтами при сохранении - это уже из другой оперы. | 
| 
 Цитата: 
 Цитата: 
 | 
| 
 riku.kh3, вот посмотри, мне так кажется, что английский шрифт нормально отображается по ширине и не заметно двойных пробелов: А у тебя почему-то диалоги отображаются широкими с большим пробелом: | 
| 
 ErikPshat, надпись 'Converted Edition' у тебя на скрине в обычной ascii кодировке с нормальным $20 пробелом, текст для таких системных сообщений берется из самого EBOOT.BIN. А на втором скрине текст и пробелы в shiftjis 2-байтовой кодировке: Код: Vot takaya vot kodirovka | 
| 
 riku.kh3, а, ну да, тупанул я мальца. Получается нужно как-то Shift-JIS сконвертировать из TTF. А в TTF можно подкорректировать пробел покороче с помощью редактора шрифтов, дома на компе валяется такой. Это у Японцев в этой кодировке всегда расстояния такие, чтобы иероглифы не сливались, ну и другие символы языков так же отрисованы. | 
| 
 ErikPshat, с самим TTF я как только не игрался.. ширину уменьшать пробовал, в самой windows и любыми программами где этот шрифт используется как положено буковки уже становятся и shiftjis пробел в два раза меньше как надо.. но после конвертирования в pgf в самой игре совсем все не так.. Пробел как большим был так большим и остается, из ascii буквы если все глифы удалить - интервала вообще она перестает создавать.. а если из shiftjis символа все глифы удалить - в точности все до наоборот.. :unknw: riku.kh3 добавил 08.05.2014 в 23:20 Цитата: 
 http://www.seiai.ed.jp/sys/text/java...jis_table.html | 
| Текущее время: 02:06. Часовой пояс GMT +3. | 
	Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
	
	PSPx Forum - Сообщество фанатов игровых консолей.