
CFW framework para PS Vita
O taiHEN é um framework de CFW para PS Vita™. Quando carregado com um exploit de kernel, ele atua como uma base comum para aplicar patches no sistema. O taiHEN fornece três recursos principais:
O último ponto significa que os desenvolvedores podem adicionar patches personalizados ao kernel, a aplicativos do sistema e a jogos.
Para compilar, você precisa da versão mais recente do toolchain com suporte a kernel. Depois, basta usar o CMake para compilar.
$ mkdir build && cd build
$ cmake ../
$ make
O taiHEN requer um exploit de kernel separado para executar. Quando o exploit carrega
taihen.skprx no kernel, o taiHEN cuida do resto. Consulte a
documentação do exploit para mais informações.
Os plugins são carregados no kernel depois que o taiHEN é carregado ou sob demanda quando
um aplicativo é iniciado. O taiHEN lê o arquivo de configuração em
ux0:tai/config.txt.
A configuração que determina quais plugins carregar e a ordem de carregamento pode
ser encontrada em ux0:tai/config.txt. O formato é muito simples e autoexplicativo.
# 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
Os principais pontos a observar são
# inicia um comentário, * inicia uma seção e qualquer outro caractere inicia
um caminho.KERNEL é um nome de seção especial que indica que um plugin de kernel deve ser carregado quando
o taiHEN é iniciado. Todos os outros nomes de seção são o ID do título do
aplicativo/jogo no qual o plugin deve ser carregado na inicialização. Observe que o SceShell
tem um ID de título especial de main.ux0:tai ou ux0:data/tai. É válido ter um plugin em várias
seções, mas o desenvolvedor deve garantir que o plugin saiba em qual aplicativo
ele está carregado caso precise fazer coisas diferentes.O taiHEN exporta uma interface de API tanto para o kernel quanto para o usuário. Essa
interface é encontrada nas [páginas de documentação](@ref taihen). Você também deve ler o
guia de uso para mais detalhes. Você pode baixar o release
ou compilar o taiHEN você mesmo. Depois disso, pode incluir taihen.h no seu
projeto e vincular com libtaihen_stub.a (para módulos de usuário) ou
libtaihen_kernel_stub.a (para módulos de kernel).