PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   Плагины для PSP (https://www.pspx.ru/forum/forumdisplay.php?f=226)
-   -   Game Categories Lite (https://www.pspx.ru/forum/showthread.php?t=90676)

KirJan-DeSign 06.05.2012 20:47

Цитата:

Сообщение от ErikPshat (Сообщение 1030278)
Так зачем так размашисто

CAT_Sony PlayStation 1\GTA - Anthology нормально пошло...
нуууу...детям понятнее) мне вообще хочется русским языком категории называть.
букавки то отображаются, но игры не запускаются. там не предвидится русского языка?

Sasha95local 16.08.2012 21:12

А CAT писать обязательено?

KirJan-DeSign 16.08.2012 22:11

Цитата:

Сообщение от Sasha95local (Сообщение 1045884)
а CAT как писать

да, и именно латинскими буквами !

Sasha95local 17.08.2012 10:24

Я пытался написать на Русском.Игры не запускаются.Но у меня 2 категории были на английском.Теперь всё понял!



СПАСИБО ЗА ПРОГУ!

Sasha95local добавил 17.08.2012 в 10:24
Я пытался написать на Русском.Игры не запускаются.Но у меня 2 категории были на английском.Теперь всё понял!

У меня без CAT_ не пошло дело
СПАСИБО ЗА ПРОГУ!

Annama 11.05.2014 00:14

Новая версия : 1.6

oinvhi 25.02.2016 00:07

Привет, народ!
Подскажите, что не так делаю, проблема в том, что в названиях категорий отображается префикс "CAT_".

например:
ms0:\PSP\GAME\CAT_EMULATORS
ms0:\PSP\GAME\CAT_MINIS

...

в режимах "контекстное меню" и "как карта памяти", отображается так:
CAT_EMULATORS
CAT_MINIS

...
в настройках плагина стоит так: "префикс в категориях - скрывать"

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

Headgehog 26.02.2016 02:13

Цитата:

Сообщение от oinvhi (Сообщение 1102063)
Привет, народ!
Подскажите, что не так делаю, проблема в том, что в названиях категорий отображается префикс "CAT_".

например:
ms0:\PSP\GAME\CAT_EMULATORS
ms0:\PSP\GAME\CAT_MINIS

...

в режимах "контекстное меню" и "как карта памяти", отображается так:
CAT_EMULATORS
CAT_MINIS

...
в настройках плагина стоит так: "префикс в категориях - скрывать"

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

Тоже столкнулся!
Для режимов котекстного меню и карты включи префикс.

karenjan99 29.09.2016 19:23

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

ErikPshat 29.09.2016 22:17

Вложений: 1
Цитата:

Сообщение от karenjan99 (Сообщение 1105791)
что бне отображался полоска и версия прошивки под названием иконок

Под названием иконок? Где там отображается версия прошивки, что-то не замечал? Можно хоть скриншотик и показать пальцем на то место.

А, понял, сейчас посмотрю...

Такое появляется, если в настройках системы выставить отображение категорий папками.
Если выставить контекстным меню или картами памяти, тогда таких надписей нет.

Попробуй вложение, так пойдёт?

karenjan99 30.09.2016 00:09

ErikPshat, Спасибо но хотелось бы всё убрать, ну ладно уж лучше контекстное меню да и там pic1 отображается :)
кстати не в теме но есть ли способ поменять pic1 и icon0 в eboot без пересборки? а то у меня прог много и хочется поменять у всех иконки но с пересборкой уж очень долго получается

ErikPshat 30.09.2016 11:07

Цитата:

Сообщение от karenjan99 (Сообщение 1105798)
Спасибо но хотелось бы всё убрать

Ну я так и подумал. Там я убрал полностью весь код, отвечающий за выведение информации под чертой. Но в таком случае, туда пишется "Нет ограничений" :) - это строка берётся автоматически из функции стандартной прошивки. Вообще туда данные заполняются из PARAM.SFO.
Чтобы совсем это убрать, придётся всё перелопачивать и переписывать код. А это слишком энергетически затратно ради какой-то строчки. Короче, проще оставить всё, как есть.

Цитата:

Сообщение от karenjan99 (Сообщение 1105798)
ну ладно уж лучше контекстное меню да и там pic1 отображается

Зайди в Recovery Menu и выставь там "Прятать PIC1.PNG"

Цитата:

Сообщение от karenjan99 (Сообщение 1105798)
есть ли способ поменять pic1 и icon0 в eboot без пересборки? а то у меня прог много и хочется поменять у всех иконки но с пересборкой уж очень долго получается

Ужас, это ещё для чего? Каждый разработчик трудится и добавляет свои фирменные картинки - это как копирайт. А ты хочешь все труды разрабов на смарку. Это не стоит делать. Понимаю там у одного или пары, тройки приложений тебе не нравится, а зачем прямо у всех?

Если лень пересобирать с помощью PBP Unpacker, то в C:\pspsdk\bin есть консольные утилиты pack-pbp.exe и unpack-pbp.exe. Ты можешь написать батник для пакетной обработки и одним запуском батника разбирать и собирать все приложения, как тебе требуется, например пересобирать вообще без иконок.

karenjan99 30.09.2016 11:37

ну просто когда прог много и у всех разные иконки то смотрится не очень хочется что то одинаковое для всех в одном стиле
http://www.riotsgraph.jp/pochistyle/nes.html уже штук 20 менял пересборкой :crazy:

ErikPshat 30.09.2016 12:10

karenjan99, ну это морока, там же не ко всем прогам есть иконки http://www.riotsgraph.jp/pochistyle/index.html
Потом их же нужно ещё сначала найти, подобрать, скачать иконки и бэкграунды к ним. И оно тебе надо, фигнёй заниматься? :)

Это ты типа ArtHouse занимаешься - домашним искусством? :D

karenjan99 30.09.2016 12:14

http://rgho.st/7nnnCqHtw
теперь ничего не отображается :) просто удалил из файла имена homebrew game, psn game и т.д :D
а вот полоску никак не убрать?

ErikPshat 30.09.2016 12:41

Вложений: 1
Цитата:

Сообщение от karenjan99 (Сообщение 1105807)
просто удалил из файла имена homebrew game, psn game и т.д

Можно и так, там выводится же текст в кавычках, но у тебя всё равно код задействуется.

Я сносил полностью весь код:
Этот код
Код:

wchar_t* GetGameSubtitle(void *arg0 UNUSED, SfoInfo *sfo)
{
    const char *game_type;
    char subtitle[128];
    char firmware[5];
    char *sfofirm, *sfocat, *sfocode;

    sfofirm = patch_index ? sfo->sfo630.firmware : sfo->sfo620.firmware;
    sfocat = patch_index ? sfo->sfo630.category : sfo->sfo620.category;
    sfocode = patch_index ? sfo->sfo630.gamecode: sfo->sfo620.gamecode;

    kprintf("called\n");

    sce_paf_private_strcpy(firmware, sfofirm);

    if (sce_paf_private_strcmp(sfocat, "EG") == 0) {
        game_type = "PSN Game";

        if (sfofirm[0] == 0) {
            sce_paf_private_strcpy(firmware, "5.00");
        }
    } else if (sce_paf_private_strcmp(sfocat, "ME") == 0) {
        game_type = "PS1 Game";

        if (sfofirm[0] == 0) {
            sce_paf_private_strcpy(firmware, "3.03");
        }
    } else {
        if (sfocode[0] == 0 || sce_paf_private_strcmp(sfocode, "UCJS10041") == 0) {
            game_type = "Homebrew Game";
            sce_paf_private_strcpy(firmware, "2.71");
        } else {
            game_type = "Game";

            if (sfofirm[0] == 0) {
                sce_paf_private_strcpy(firmware, "1.00");
            }
        }
    }

    if (firmware[0] >= currfw[0] && firmware[2] >= currfw[2] && firmware[3] >= currfw[3]) {
        sce_paf_private_snprintf(subtitle, 128, "%s (requires %s)", game_type, firmware);
    } else {
        sce_paf_private_snprintf(subtitle, 128, "%s (for %s - %s)", game_type, firmware, currfw);
    }

#ifdef BENCHMARK
    sce_paf_private_snprintf(subtitle, 128, "Benchmark result: %.4f seconds", benchmark_result);
#endif

    kprintf("Returning %s\n", subtitle);
    gc_utf8_to_unicode((wchar_t*)user_buffer, subtitle);
    return (wchar_t*)user_buffer;
}

Плюс нужно убрать блоки кода, отвечающие за эту функцию, обозначенную в заголовке кода: GetGameSubtitle
Иначе не даст компилироваться, это ниже в трёх местах повторяется для разных прошивок:
Код:

    /* Patch the call of scePafGetText to GetGameSubtitle */
    { 0x0000A8AC, (u32) GetGameSubtitle }, // jal scePaf_CB608DE5 -> jal GetGameSubtitle
    { 0x0000A8B0, 0x02402821 }, // addiu $a1, $a1, -21952 -> move $a1, $s2

Код:

    /* Patch the call of scePafGetText to GetGameSubtitle */
    { 0x0000A420, (u32) GetGameSubtitle }, // jal scePaf_CB608DE5 -> jal GetGameSubtitle
    { 0x0000A424, 0x02602821 }, // addiu $a1, $a1, -21952 -> move $a1, $s3

Код:

    /* Patch the call of scePafGetText to GetGameSubtitle */
    { 0x0000A5A4, (u32) GetGameSubtitle }, // jal scePaf_3874A5F8 -> jal GetGameSubtitle
    { 0x0000A5A8, 0x02602821 }, // addiu $a1, $a1, -13876 -> move $a1, $s3


И потом, чтобы не парится каждый раз с русиком, его нужно просто сразу встроить во внутрь плагина, а из папки seplugins удалить внешний.
Вот во вложении русификатор закинь в папку lang, а в файле Makefile поменяй в строке "CONFIG_LANG = en" на ru, затем можешь компилировать прогу сразу с русским языком. Только перед компиляцией удали в исходниках файл category_lite_lang.h, который сгенерировался при предыдущей компиляции. То есть, при очистке предыдущей компиляции командой make clean, этот файл всё равно остаётся, не удаляется.

Цитата:

Сообщение от karenjan99 (Сообщение 1105807)
а вот полоску никак не убрать?

Фиг знает, с этим нужно сидеть разбираться. Хотя, что ты от этого выиграешь, все равно в этом виде "папок" всё по другому отображается. Там не выводится бэкграунд, т.е., как будто это Карта памяти.

karenjan99 30.09.2016 13:00

спасибо компилил русский :)

ErikPshat 30.09.2016 18:55

karenjan99, кстати, я приложил category_lite_ru.txt, потому что в шапке и в исходниках этот файл переведён наполовину и некорректно.

Обновил архив в шапке, всё исправлено.

karenjan99 01.10.2016 22:03

ErikPshat, тут небольшая проблемка, есть хоумбрю super mini mario дело в том что оно ищет свои файлы строго по пути PSP/GAME а положить туда папку с игрой не получается так как отображается как категория

п.с. разобрался, была откючена функция CAT :)

ErikPshat 01.10.2016 22:55

Цитата:

Сообщение от karenjan99 (Сообщение 1105832)
super mini mario

Да, и таких хоумбрю много. Ты уж как-то конкретизируй что ли, ссылки, явки, пароли... Я же не экстрасенс. Этих Марио много всяких, есть v3, есть много портов.

Если в хомке статичные пути, тогда с плагином они конечно дружить не будут. Тебе придётся разбирать EBOOT.PBP и искать в DATA.PSP эти пути, где присутствует PSP/GAME и заменять их через Хекс-редактор на относительные пути. Относительный путь будет считаться от папки, из которой был запущен EBOOT.PBP.

Например, попался такой путь:
  • ms0:/PSP/GAME/SMM/LEVELS/smm_level_XXX.txt
Заменяешь его на такой:
  • LEVELS/smm_level_XXX.txt

karenjan99 02.10.2016 11:53

ErikPshat, вообщем вкючил режим CAT префикс, и просто кидал хомку в PSP/GAME все робит :), отображается в uncategorized :)
сперва я посмотрел через хекс но подумал что надо заменить вот так ms0:/PSP/GAME/Homebrew/SMM/LEVELS/smm_level_XXX.txt но там место не хватило вечером попробую как ты сказал :)


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

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