Taihen

yifanlu yifanlu
Dépôt créer le : 31/10/2016
Release du : 20/02/2026 v0.11 – taiHEN
Forks: 49 Watcher: 0 318
Choisir une liste...
FR

C'est vrai.

Build Status

taiHEN est un cadre CFW pour PS VitaTM. Lorsqu'un noyau est chargé d'exploitation, il agit comme un substrat commun pour patcher le système. taiHEN fournit trois installations principales:

  1. Il désactive les vérifications de signature de code pour permettre des exécutables non signés.
  2. Il expose les syscalls du noyau aux applications utilisateur et permet le chargement des modules du noyau.
  3. Plus important encore, il fournit une API pour accrocher et remplacer les fonctions basé sur Remplacer.

Le dernier point signifie que les développeurs peuvent ajouter des correctifs personnalisés au noyau, système les applications et les jeux.

Bâtiment

Pour construire, vous avez besoin de la dernière version du chaîne d'outils avec support du noyau. Alors Utilisez C Make pour construire.

$ mkdir build && cd build
$ cmake ../
$ make

Installation

taiHEN nécessite un exploit séparé du noyau pour fonctionner. Une fois l'exploitation chargée taihen.skprx au noyau, taiHEN s'occupera du reste. Veuillez vous référer à documentations pour l'exploitation pour plus d'informations.

Greffons

Les greffons sont chargés soit dans le noyau après que taiHEN est chargé, soit sur demande lorsque une application est lancée. taiHEN lit le fichier de configuration dans ux0:tai/config.txt.

La configuration qui détermine les plugins à charger et l'ordre de chargement peut se retrouver dans ux0:tai/config.txt. Le format est très simple et self explication.

# 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 principales choses à noter sont:

  1. # commence un commentaire, * commence une section, et tout autre caractère commence un chemin.
  2. KERNEL est un nom de section spécial qui décèle pour charger un plugin du noyau lorsque taiHEN est démarré. Tous les autres noms de section sont le titre id de la application/jeu dans lequel charger le plugin au démarrage. Notez que SceShell a un titre spécial id de main.
  3. Dans chaque section, il y a une liste de chemins de plugin qui seront chargés dans ordre. Les chemins peuvent être n'importe où mais il est recommandé que les plugins résident dans ux0:tai ou ux0:data/tai. Il est valide d'avoir un plugin en plusieurs sections mais le développeur doit s'assurer que le plugin sait quelle application elle est chargée si elle doit faire les choses différemment.

API

taiHEN exporte une interface API vers le noyau et vers l'utilisateur. Cette interface est dans les [pages de documentation](@ref taihen). Vous devriez également lire le Guide d'utilisation pour plus de détails. Vous pouvez télécharger la version Ou construisez-vous vous-même. Après cela, vous pouvez inclure taihen.h dans votre projet et lien avec libtaihen_stub.a (pour les modules utilisateurs) ou libtaihen_kernel_stub.a (pour les modules du noyau).

Contributeurs GitHub

frangarcj
frangarcj
124 contributions
xerpi
xerpi
9 contributions
d3m3vilurr
d3m3vilurr
9 contributions
TheOfficialFloW
TheOfficialFloW
33 contributions
yifanlu
yifanlu
108 contributions
DaveeFTW
DaveeFTW
5 contributions
hyln9
hyln9
1 contributions