
CFW framework for PS Vita
taiHEN est un framework de CFW pour PS Vita™. Chargé avec une exploitation du noyau, il agit comme un substrat commun pour patcher le système. taiHEN fournit trois fonctionnalités principales :
Ce dernier point signifie que les développeurs peuvent ajouter des correctifs personnalisés au noyau, aux applications système et aux jeux.
Pour compiler, vous avez besoin de la dernière version de la toolchain avec le support du noyau. Ensuite, utilisez simplement CMake pour compiler.
$ mkdir build && cd build
$ cmake ../
$ make
taiHEN nécessite une exploitation distincte du noyau pour fonctionner. Une fois que l'exploitation charge taihen.skprx dans le noyau, taiHEN s'occupe du reste. Veuillez vous référer à la documentation de l'exploitation pour plus d'informations.
Les plugins sont chargés soit dans le noyau après le chargement de taiHEN, soit à la demande lorsqu'une application est lancée. taiHEN lit le fichier de configuration ux0:tai/config.txt.
La configuration qui détermine les plugins à charger et l'ordre de chargement se trouve dans ux0:tai/config.txt. Le format est très simple et explicite.
# ignored line starting with #
# Kernel plugins are started with taiHEN and are in this section
*KERNEL
ux0:app/MLCL00001/henkaku.skprx
ux0:path/to/another.skprx
ux0:tai/plugin3.skprx
ux0:data/tai/plugin4.skprx
ux0:data/tai/plugin5.skprx
# titleid for SceSettings
*NPXS10015
ux0:app/MLCL00001/henkaku.suprx
ux0:data/tai/some_settings_plugin.suprx
# titleid for Package Installer
*NPXS10031
ux0:path/to/some_pkg_installer_plgin.suprx
# titleid for SceShell is special (does not follow the XXXXYYYYY format)
*main
ux0:app/MLCL00001/henkaku.skprx
ux0:data/tai/shell_plgin.skprx
Les points clés à noter sont :
# commence un commentaire, * commence une section, et tout autre caractère commence un chemin.KERNEL est un nom de section spécial indiquant de charger un plugin noyau au démarrage de taiHEN. Tous les autres noms de section sont l'ID de titre de l'application/du jeu dans lequel charger le plugin au démarrage. Notez que SceShell a un ID de titre spécial main.ux0:tai ou ux0:data/tai. Il est valide d'avoir un plugin dans plusieurs sections, mais le développeur doit s'assurer que le plugin sait dans quelle application il est chargé s'il doit se comporter différemment.taiHEN exporte une interface API à la fois pour le noyau et pour l'utilisateur. Cette interface se trouve dans les [pages de documentation](@ref taihen). Vous devriez également lire le guide d'utilisation pour plus de détails. Vous pouvez soit télécharger la version publiée, soit compiler taiHEN vous-même. Ensuite, vous pouvez inclure taihen.h dans votre projet et lier avec libtaihen_stub.a (pour les modules utilisateur) ou libtaihen_kernel_stub.a (pour les modules noyau).