This is a simple plugin that set ARM clock to 444mhz. By pressing SELECT for a few seconds, the amphetamin plugin menu will show up where you can set ARM/BUS/GPU frequency.
I have only done a benchmark with 444mhz ARM clock, BUS is already at its max, and whether GPU frequency increasement does change anything is not known.

Put the plugins folder at ux0:plugins. The plugin will only work with games that have been dumped with Vitamin.

This is a simple plugin that set ARM clock to 444mhz. By pressing SELECT for a few seconds, the amphetamin plugin menu will show up where you can set ARM/BUS/GPU frequency.
I have only done a benchmark with 444mhz ARM clock, BUS is already at its max, and whether GPU frequency increasement does change anything is not known.

Put the plugins folder at ux0:plugins. The plugin will only work with games that have been dumped with Vitamin.

This little kernel plugin allows users to improve their experience with PSVITA analogs. It allows to:

- Set a specific deadzone value between 0 and 128 for each analog
- Enable software rescaling of analogs output for better precision (Thanks to rsn8887)
- Force PSVITA system to use ANALOG_WIDE mode even when ANALOG mode is used causing a better precision in general

- Install the plugin under *KERNEL in your taiHen config file.
- Place the config.txt file in ux0:data/AnalogsEnhancer.
- Edit the config.txt file according to what you need.

config.txt structure:

config.txt has 4 values that can be edited:

Example of config.txt:
CODE: SELECT ALL

left=0,n;right=0,n
First 0 value is the deadzone for left analog.
Second parameter for left is either if you want to enable or disable software rescaling (can be y or n which stands for yes and no).
The same applies for right analog.

Put "arkrightanalog.suprx" in 'tai' folder in the root of your Vita. Change config.txt in that directory to load plugin for title of your choice by adding new lines like below:

titleid for your game (this one is for Ape Escape Demo for example to enable right analog stick usage for ARK)

*NPEG00005 ux0:tai/arkrightanalog.suprx

Additional plugins/homebrews should be used to utilize right analog stick to its fullest.

You can use flow's GTA right analog plugins, Resistance pspplus mappings plugin and freakler's Camera Patch Light plugin to make the most of this. Extra right analog stick remap plugins should be enabled from within ARK. This only makes the groundwork which Adrenaline already has.

All code belongs to flow, it was taken from the open source adrenaline app and has been compiled as a stand-alone release. Also thanks to dots_tb for help.

Disable Adrenaline's kernel plugin if you want to use this as they conflict. Also i noticed oclock plugin makes ARK blackscreen if enabled together with this.

Have fun, also please notify me if you can also pass R2/L2/L3/R3 buttons to ePSP when DS3Vita/DS4Vita is used. Something i couldn't do.

You can also use the EBOOT.PBP i provided to check if right analog info can be read, copy the eboot to your ux0:/pspemu/psp/game/controller folder. It is a modified version of basic controller sample found in PSP SDK, it can read info from regular PSP buttons/stick plus right analog and R2/L2/R3/L3 buttons. The last 4 buttons are for future compatibility.

Here is a simple plugin to prevent those pesky little kids from messing with your Vita.
This plugin starts with a specified game/app and doesn't start the game/app until
a new password is created or the password entered matches.
I had CMA in mind when making this plugin, to prevent kids from messing with the Vita's precious files.
But this plugin also works with other games/apps.
I tested it on the Settings app but it doesn't not show up on screen, but it does run in the background.
I still haven't figured out how to fix it, so I'll leave it for now.
Also, it doesn't work on all games, certain ones will prevent the password file from being opened, not sure why.

Thanks to everyone involved in the community.
I hope you enjoy this more than I did making it. :D

install
Look for the line marked "load os0:kd/clockgen.skprx" from boot_config.txt.
Add "- load ur0:tai/custom_boot_splash.skprx" one line before that.
The path of the plugin can be freely ok.

To Enso 3.65 users
If Enso 3.65 is installed and boot_config.txt exists in vs0:tai/ and it is not loaded even if plugin path is written to ur0:tai/boot_config.txt, please update Enso to the latest version.

The official PS Vita™ webbrowser is only able to downloaded media files. This plugin removes that limitation and allows you to download any files from the webbrowser to ux0:download. Content that do not have a Content-Length entity-header field are not supported.

Documentation changes:
* New limitation discovered: don't turn your controller upside down or the orientation computation will go wrong
* Explanation about some perceived inverted axis issues: please try to test the game behavior on a real PS Vita before reporting issues on this subject!

Initial release
Put "DynClockVita.suprx" in 'tai' folder in the root of your Vita.

Change config.txt in that directory to load plugin for title of your choice by adding new lines like below:

# titleid for your game (this one is for Root//Letter for example)
*PCSB01019
ux0:tai/DynClockVita.suprx
After that just run the game and press SELECT + UP to enable menu. Press SELECT + DOWN to close menu.

Henkaku plugin that fakes invalid camera calls in order to avoid some crashes for some titles on PlayStation TV.

Of course, those titles have been blocked by Sony and you must previously unlock them in order to launch them. Use an application like AntiBlackList (from Rinnegatamante) to do it: http://vitadb.rinnegatamante.it/#/info/11

Once titles are unlocked, they could crash due unexpected SceCamera API answers (because they were never conceived to run on a device without camera). This is where this plugin could intervene to "simulate" expected answers and, therefore, avoid some crashes.

With "fakecamerabmp.suprx" or "fakecamerakbmp.suprx" plugin, a BMP file image can be loaded and used as camera output. Images must be placed in "ux0:data/FakeCamera" directory. An image is selected in this directory with the following priority:

"ux0:data/FakeCamera/TITLEID00_Front.bmp" or "ux0:data/FakeCamera/TITLEID00_Back.bmp" (depends on front or back camera use)
"ux0:data/FakeCamera/TITLEID00.bmp"
"ux0:data/FakeCamera/ALL_Front.bmp" or "ux0:data/FakeCamera/ALL_Back.bmp" (depends on front or back camera use)
"ux0:data/FakeCamera/ALL.bmp"

when you run a PSM game, the screen will go RED.. While the screen is RED. the game files are being dumped

There is no progess indicaton (doing pretty much anything requires aditional DLL's that the game might not have)

however. once it is done, the screen will go GREEN at this point you can close out of the game.
and look in the ux0:/PSM/<TITLEID>/Documents/ folder and there will be a complete (Now decrypted) mirror of the Application/ folder.

If you wanna use it in the PSM Simulator. i found it doesnt like me if i keep the original .edata file, so you may have to rename that

What this will NOT enable
1) Vita Game Emulation (no. j-just stop the simulator isnt even emulating anything)
2) Running PSM games you dont have a license for (dumper requires you to RUN the game in the first place!)
3) PSM Dev or PSM Unity applications.

A PSVita kernel plugin that allows more IO operations in userland. Fast, simpler, and efficient alternative to kuio (by @Rinnegatamante) (3x smaller). It allows elevated IO permissions of user applications and plugins using the original sceIo functions. This includes reading, writing, opening, and folder management within applications such as official games. It may also include getting stats, not sure.

## Further Notes:
LOLIcon save data has been moved to ur0, please move your LOLIcon folder to ur0.

The error messages hold for 3 seconds and will show up when you open the LOLIcon menu. You can disable these messages by going to "OSD OPTIONS". Be sure to save this configuration for default to disable for all games and for the games that you have profiles for.

The FPS counter has been limited to whatever process has the configuration, hopefully this helps the accuracy.

Added more control hooks.
## Why is this a pre-release:
I will have less time to work on vita stuff so I'm letting everyone have an adrenaline fixed build.

## Problems with this release:
Input is not disabled on some games when menu is opened.
Some games do not disable button swaps with system ui (save dialogs and such).
System apps, when using exit game, will crash the system, do not do this.
It does not work in the camera app.

## Clarifying notes:
Some idiots think I'm Silica and Pina. Just wew. His only involvement with the project was choosing "Little Idiots" over "Lots of Idiots".

I choose the name because of an inside joke with the NPS team. Also because my works don't need to be sold on the name and I like people to know that.

I would like to emphasize this is not an overclock plugin, its a console/shell that just happened to actually overclock... Expect better futures that were not possible with its predecessors (like 500mhz).

We tried GPU overclock before the release of LOLIcon, it does not seem to work with current methods.

As it says on the wiki, increasing the arm clock register even more causes it to underclock. So 500mhz seems to be the limit with current methods.

I say "current methods" because I don't want this to be in a screenshot like certain people.

## ioPlus is not needed for this plugin as its a kernel plugin unlike any of its predecessors. It was simply a push for user plugin devs to use it. Just a little nudge. Existing user plugins have to be updated to use it, so don't delete kuio yet.

This plugin allows you to connect up to 4 DS3/DS4 controllers to your PS Vita, and play local multiplayer games, by using the exact same driver as on the PS TV. Yes, the PS Vita screen is rather small, but I think it's kinda cute to play on it with friends while travelling or so.
Note that this plugin is still in beta stage and more features will be added, like the ability to assign controller ports, etc. Basically every controller feature that the normal PS TV has will be included.
Only official DS3/DS4 controllers are currently supported!

Installation
Download minivitatv.skprx and ds3.skprx, and copy them to ux0:tai.

Add these lines to taiHEN config.txt at ux0:tai/config.txt:

*KERNEL
ux0:tai/minivitatv.skprx
ux0:tai/ds3.skprx

Reboot your device and relaunch HENkaku. Note that you cannot use your physical buttons anymore, however you can still use your touchscreen to pair the controllers.

If you're using enso you should boot with L trigger hold to skip plugins in case you want to remove this plugin. Remember it's a beta.

Pairing a DS4 controller

Using it for the first time:
Go to Settings → Devices → Bluetooth Devices
Press SHARE+PS on the DS4 for about 3-4 seconds, until the lightbar blinks very quickly
The DS4 will then connect and be paired (don't press over it when it appears)
Using it once paired (see above):
Just press the PS button and it will connect to the Vita

Pairing a DS3 controller

Using it for the first time:
Download this tool (or this other one if you want to compile it yourself)
Connect your DS3 to the PC and open the tool
Introduce the Vita's MAC address plus 1 to the tool (Settings → System → System information)
Using it once paired (see above):
Just press the PS button and it will connect to the Vita
Known issues
Cannot use physical buttons yet
Pressing the touchpad on DS4 crashes Adrenaline

Credits

Thanks to xerpi for his work on ds3vita/ds4vita and the pairing guide.

Exports PS Vita content license keys as fake licences.
Bypasses expiration of PlayStation Plus and other timed licenses.
Allows you to run trial versions as full versions.
Allows sharing PFS encrypted content (unmodified non decrypted games) across multiple PS Vita accounts and devices using generated fake license files.
Imported games behave as purchased games and allow the use of game updates seemlessly downloaded from the Sony Interactive Entertainment Network (PlayStation Network) as long as these updates run on firmware 3.60 and lower.
Games can also be stripped of their PFS encryption using tools such as Vitamin just as any other purchased games would.
Using purchased applications on deactivated devices.

Installation
Put noPsmWhitelist.skprx into ux0:/tai (or ur0:tai for sd2vita(or simular) users)
and add an entry under *KERNEL for ux0:/tai/noPsmWhitelist.skprx (again, ur0 for sd2vita(or simular)
reboot the console and enjoy PSM Games on PSTV!

Simply put patched files into ux0:psm/TITLEID/Documents/p
files here will be read instead of the files in /Application
Think of it as PSM Repatch..

How to decrypt PSM Games tho??!
Use FuckPSSE
to decrypt the PSSE Layer on PSM Games and then you can modify whatever you want!
For executables, you can use dnSpy or ILLSpy to decompile and modify the executables.

About loading homebrew?
Well this is a bit of a hack-y system. but it should work.
if you compile an app using the PSM SDK there is an unsigned copy of it created.
you can simply copy the unsigned files into the patch folder and it'll load the homebrew instead of the original game! PS: if u get compile errors while using the PSM SDK try running 'setx MSBUILDENABLEALLPROPERTYFUNCTIONS 1' in CMD.

Installation
Place the plugin under the *ALL section of your config.txt and your good to go,
NOTE: Do not use this plugin at the same time as FuckPSSE. you will break the universe

As of version 2.0 and above you will require a dependency plugin to be always enabled. (a modified (lighter) version of kuio.skprx is provided. Kuio was originally developed by Rinnegatamante) -- Instructions can be found in the [README](https://github.com/joel16/PSV-VSH-Menu#installation). **If you've had KUIO already installed from another plugin, then you don't need this.**

- Added ability to set timed intervals to check if the clock rates have been reset by the game. This fixes issues where certain games reset the clock rates back to default during a certain event or after sleep. (Advanced menu)
- Added custom VSH colour option. You can now modify your colour codes to your liking! more info [here](https://github.com/joel16/PSV-VSH-Menu#custom-colours).

ReNpDrm constantly refreshes the system’s activation files so that it achieves its purpose of granting unrestricted access to PSN.This plugin will bring along the following:

Activation for unactivated consoles (or consoles that Sony rudely deactivated..) so that you can play your legally purchased digital games again!
Full access to PSN will be restored without the possibility of losing your activation files.
You will be able to purchase and download games from PSN again so you needn’t pirate games if you want to run them off your memory card! This is particularly great if you wish to benefit from the somewhat regular PSN sales!
Applications such as LiveTweet can also be downloaded so you can get access to the slim suite of smartphone-esque applications again!

Download both restore.suprx and renpdrm.skprx;
Copy these 2 files to ur0:tai/ (using FTP or USB or any way);
Open ux0:tai/config.txt if this file exists, or else ur0:tai/config.txt;
Under *ALL line, write : ur0:tai/restore.suprx
Under *KERNEL line, write : ur0:tai/renpdrm.skprx
Save the file
Reboot PSVita;
You can now use the PSStore and activate your PSVita from the Settings app under PlayStation Network.
Remarks
If you have nonpdrm.skprx inside config.txt, try removing it then reboot PSVita.

Changelog

v3
fixed rif folder creation
fixed 0KB act.dat checking
found why some users had 0 KB act.dat
-> 2 things to do if you have some problems :
- if activation fails : go to http://account.sonyentertainment.com/ and deactivate all devices
- if you have another problem, it should be fixed in new ver

* Compat pack compatibility [thanks to CelesteBlue and TheFlow (for 3.68 H-encore)]
* Manual (with additional pages) and Changeinfo Support
* No need for rePatch AIDS
* Support for "ux0:", "uma0:", "imc0:", "grw0:", "xmc0:" (Note: it will only load files from one device PER GAME, and this is the priority order. So if no ux0:rePatch/titleid, it will load uma0:rePatch/titleid. A ux0:rePatch/titleid will prevent uma0:rePatch/titleid)
* Now uses the Sony overlay system, you may now create files that don't exist in both patch and app, however, the game must support this.
* Mods such as SBXE ( https://twitter.com/Nkekev/status/1059271162629365761) now take less time to load (1:10 vs 1:16)

Addresses: #5 #10 #13 #15 #17 #18 #24 #28

Please note that while the crashes are fixed when using DLC in above games, decrypted DLC may not load. This does not prevent OFFICIAL or NoNpDRM DLC from loading.

SavedataPlus is a plugin that will redirect your savedata to your preferred partition (ur0, ux0, uma0). Redirected savedata files are also decrypted so can be directly modified to apply savedata hacks/cheats.

How to install

- Place your preferred .skprx in your tai folder.
- Create a data folder inside the partition you want to redirect the saves to.
- Add the relative string to your config.txt under *KERNEL.
- Saves will be found in PARTITON/data/savegames/TITLEID/SLOT0.

How to keep using your old savedata

You'll have to decrypt your savedata in order to use it with SavedataPlus. You can use rinCheat or vita-savemgr to achieve this.

Known issues

The plugin will work perfectly with Vitamin/maidumptool dumps. At the moment it can cause crashes with retail cartridges or NoNpDrm/.psv dumps. (A game that certainly will crash as retail cartridge/NoNpDrm dump is Rayman Origins).

Configuration
ShellSecBat can be configurated through a "ShellSecBat.txt" file. The file size should not exceed 116 bytes and its content should look like:

Features:11
Time:100/
Drives:11.111111
LeftKey:101
RightKey:201
This configuration sample matches the official default ShellSecBat settings (when there is no found configuration file).

Only the following paths are supported for the configuration file (they will be check in this same order):

ux0:/data/ShellSecBat.txt
ux0:/tai/ShellSecBat.txt
ur0:/tai/ShellSecBat.txt
ur0:/plugins/ShellSecBat.txt
The file must follows the following rules:

Features:[Drives display][Battery display]
Time:[Seconds display][Date display][Year display][Date separator]
Drives:[Skip unmounted][Free space display][Space decimal separator][imc0:][ur0:][ux0:][uma0:][xmc0:][grw0:]
LeftKey:[Keys combination for previous drive display]
RightKey:[Keys combination for next drive display]
You should be aware that configuration file reading is very basic (and it could easily fail if there is even the slightest mistake).

Keywords Feature:, Time:, Drives:, LeftKey: and RightKey: are used to find configuration parts. Once a configuration part is found, configuration parameters must directly follow the : character (without any blank character between):

Valid configuration part: Features:01
Invalid configuration part: Features: 01
For parameters which can be activated (all parameters except keys and separators), 1 means that it is enabled and any other character means that it is disabled.

LeftKey: and RightKey: must be followed by an hexadecimal value which describes the key combination. Hexadecimal flags for each key can be found here (on SceCtrlButtons section):

Keywords can appear in any order in the configuration but parameters must always exactly match what the keyword expects
Drives:, LeftKey: and RightKey: won't be parsed if "[Drives display]" is disabled
On PlayStation TV, "[Battery display]" is ignored as it will always be disabled
You can simulate ShellSecBat and ShellDateSecBat previous versions (prior to configuration file support) with the following configurations:

Add delayed config loading to allow config to be reloaded from `module_start`. The main use-case here is if a kernel module defined in `*KERNEL` wishes to refresh the config. Previously there will be a use-after-free as it tries to free the old config while it is still being parsed. Now that's been fixed and it supports re-loading the config (delayed) after the first parse is complete.

This is a simple plugin that extends both WDNR and WDNF with other touchpads emulation possibilities.
It allows eight types of emulation:

- Default: Standard touchpads functionalities
- Frontpad -> Rearpad: Rearpad is disabled and frontpad will be redirected to both frontpad and rearpad
- Rearpad -> Frontpad: Frontpad is disabled and rearpad will be redirected to both frontpad and rearpad
- Inverted pads: Frontpad is redirected to rearpad and viceversa
- Frontpad disabled: Disables frontpad (WDNF)
- Rearpad disabled: Disables rearpad (WDNR)
- Both -> Frontpad: Both pads will be redirected to frontpad
- Both -> Rearpad: Both pads will be redirected to rearpad

To use it, just put it under *ALL and press START+TRIANGLE+CROSS to change current mode.

Description:
TrackPlug is a simple plugin allowing you to take track of the time you spend in your games.

How to install:
- Install the VPK file
- Place the .suprx file in ux0:/tai
- Place the .skprx file in ux0:/tai
- Install the skprx in your config.txt under *KERNEL.
- Install the suprx in your config.txt under *ALL or under whatever game you want to track.

How to use:
The plugin will automatically take playtime info. You can use the TrackPlug vpk application to see current playtime status for every game you started at least once.

# New features
Menu improvements and now you can unlock a single trophy by specifying its identifier.

# Installation
1. Put trophax.suprx into ux0:tai (or ur0:tai if u prefer)
2. Edit the config.txt file in that same 'tai' folder
3. At the bottom of config.txt put *ALL to use it on all games (or u can use a games titleid specifically)
4. Underneath that put in ux0:tai/trophax.suprx (or ur0:tai/trophax.suprx depending on what ur using)
5. Reload your henkaku configuration file from HENKAKU SETTINGS

# Usage
At any time in a game you can press SELECT+START to activate the plugin.
After the plugin is activated, a menu is shown with instructions (best to do at main menu)
Pressing L+R starts the full unlocker: A BLUE SCREEN OF SILICA will appear and start unlocking all trophys.
Pressing L+START starts the single unlocker: Use L+UP / L+DOWN to select the ID.
ID are basically the number position of the trophy you want in the trophy list.
WARNING: The ID starts at 0, so 0 is basically the platinum trophy.
Then when you get the id you want, press L+CIRCLE to unlock. Please wait some seconds for the first use, the first trophy is longer to unlock.

Keep in mind there is a risk you may get your PSN account banned if you use this plugin, so use at own risk (Even if nobody has been banned yet, the risk is globally the same as having your vita hacked imo).

This plugin allows you to enable RapidFire on whatever button you want with different types of rapidfire for the best compatibility according to certain anti-rapidfire rules.

Current available modes:

Every Tick = RapidFire rules are applied at each input scan call. This is the fastest rapidfire version but some games won't recognize it (ex: vitaQuake).
Every 200 msecs = RapidFire rules are applied every 200 msecs.
Every 500 msecs = RapidFire rules are applied every 500 msecs.
Every 1000 msecs = RapidFire rules are applied every 1000 msecs.

To set your rules, press START+TRIANGLE to open the config menu.
At the moment configs will NOT be saved due to issues i'm having with SD access on plugins, so for the moment you'll have to set the rules every time you run your game.

unmount by cxziaho
Unmount and Remount all drives from PS Vita
Enables RW access just like VitaRW by Major_Tom does, but in a kernel plugin, on boot.
Fixes the sa0 and pd0 unmount problems.
There are builds for this one though o_0 - BE CAREFUL.

So this is a project I've had in mind for a few months already and finally I've decided to put some effort into it.

Let me explain: the Vita OS has a module (SceUdcd) that allows you to setup the Vita (fat and slim) bottom USB port as any USB device by setting custom USB descriptors.
In the past, I've already used SceUdcd to make the Vita act as an standard USB HID Gamepad (check this) so I asked myself: why don't I take advantage of the power of that module and write a plugin that setups the Vita as an USB Video Class device (like a webcam or USB video capture card) and sends the screen data to the PC?
And here we are, it has taken me quite a bit of reverse engineering the Vita OS (specially the SceDisplay and SceUdcd modules) to be able to have a very alpha-stage proof of concept skprx working.

As I said it's very PoC, so don't expect it to go fast at all: the code is currently very inefficient and I'm not taking advantage of the Vita's hardware colorspace converters and image encoders at all, it's all done by CPU. Also, for now, this version will only capture the LiveArea footage.

Even though it isn't very useful at its current stage, I'm releasing this so you can test it on different OSes and report back whether it's working or not (I'm developing on Linux so that's my testing platform).

To make it easier to load this plugin I've created a Plugin loader VPK that its job is to load any skprx placed in ux0:data/tai/kplugin.skprx

Changes since PoC v6:

Fixed right screen margin glitch

More general code cleanups and improvements

If the video looks glitched, try to change the video player configuration to use the NV12 format or switch to another player (like PotPlayer or OBS). If you use Windows 10 you might have to change the Camera access permissions on the Privacy Settings.

<b>Poc v2</b>
I've improved the PSVita as a UVC (USB Video Class) device plugin lately with the following changes in this PoC v2 with respect to the first PoC:
Uses Vita's colorspace conversion hardware
Uses Vita's JPEG encoder hardware
Much improved and faster USB video frame transfer routine
After performing some timing to these three key components, the results are the following with a 960x544 framebuffer:
It takes around 2ms to perform the colorspace conversion, which is really fast
It takes from 86ms to 120ms to perform the JPEG encoding, which is too slow
It takes 2ms to send the video frame, which is fast
If we want to achieve 60FPS, a new frame would need to be ready after 16.667ms, and if you add the worst case time it currently takes (2 + 120 + 2 = 124ms) to process the frame, you'll see that 10FPS are the current expected FPS.
So this leaves us with the following conclusion: if we want a decent framerate, downscaling to 480x272 is a must. This PoC v2 version I'm releasing doesn't have said downscaling yet, as I'd like to hear your opinions/ideas first.
The install instructions are the same as the first PoC, but this time I'm uploading two skprxes, one that streams the SceShell (LiveArea) and another one that streams the games/apps as I have yet to find a way to properly decide which one to select at runtime.

Add viimote.skprx to taiHEN's config (ux0:/tai/config.txt):
*KERNEL
ux0:tai/viimote.skprx
You need to refresh the config.txt by rebooting or through VitaShell.
First time using it (aka pairing):

Go to Setting -> Devices -> Bluetooth Devices
Press 1+2 (SYNC won't work) on the Wiimote during 2 seconds
The Wiimote will pair and connect automatically (don't press over it when it appears)
Using it after pairing it:

You simply need to press any button (instead of pressing 1+2) to connect it to the Vita.
Supported extensions:

Nunchuk
Classic Controller
Note: If you use Mai, don't put the plugin inside ux0:/plugins because Mai will load all stuff you put in there...

VITA2PC is a plugin allowing you to stream your PSVITA to your PC. It suports any kind of game (cartridges, Vitamin dumps, maiDump dumps).
NOTE: This plugin will automatically set max clocks and hook SetClock functions in order to not being able to lower them. If you use oclockvita or any other clock changer plugin, they will have no effects at all.

Synchronous vs Asynchronous

VITA2PC allows to start video streaming in two different ways: asynchronous and synchronous.
Async stream will drop some frames but won't have any effect on Vita side.
Sync stream will send every frame but will cause stuttering on Vita side on several games.
Frameskip feature works only with Sync stream.

Audio Streaming

Audio streaming is still higly experimental and can cause several issues depending on how the game manages audio:
- Noise loops
- Game freezes
- Mute audio on Vita side
- Garbage audio or missing audio on PC side

This will be ironed out in next releases.

How to use

- Place VITA2PC.suprx in ux0:tai
- Add ux0:tai/VITA2PC.suprx under the titleid of the game you want to stream (if you put it under *ALL, you'll have to start your Vita by holding L and then you have to reload config using molecularShell to prevent enso to freeze).
- In game press L + SELECT to bring config menu.
- Set your configuration and start the stream on Vita.
- Open the PC client and insert the IP shown on your Vita.

Compatibility List

Here's the official compatibility list: http://rinnegatamante.it/stream_compatibility.php
If you want to report your experience with missing games in the list, please post a report here: https://github.com/Rinnegatamante/VITA2PC/issues/9

Credits

- frangarcj for helping me figure out how to properly hook power save mode enabling by games.

Very experimental, allows to lower the minimum brightness by a bit (same brightness as when the screen dims after some inactivity).
Notice: This plugin won't do anything out of the box, you need to customize the gamma table yourself and figure out what each number does.

This update allows users to customize the gamma lookup table that is used for brightness levels.
The table vitabright_lut.txt is the original one unaltered, it needs to be placed in ur0:/tai/ or ux0:/tai (ur0 has the priority).

Each line in this file corresponds to a brightness level, there must be exactly 17 lines plus an empty one a the end. Each number has to be a 2-digit hexadecimal integer (so from 00 to FF).

You don't need to download ioPlus again if you have already installed it once.

If you are interested in eboot.bin modding using rePatch (more permanent solution), check 'ux0:data/VitaGrafix/log.txt' where you can find what exactly does the plugin patch (eboot offsets + patched hex values). Don't forget to blacklist VitaShell in taihen config.txt, or the log will get overwritten each time you open VitaShell.