uOFW Module Installer allows you to install and load your own custom modules to flash0. It's useful if you reverse engineer an official module, recompile it and then want to check if it runs properly. On the other hand you can also make it do whatever you want it to, which can be interesting in some cases.
On the other hand it is also useful if you want to run a custom module after a specific one (For example say you want "dummy.prx" to run before "usersystemlib.prx" in the pspbtcnf module).
This is aimed more towards the technical side of things. A lot of stuff might be misunderstood or not understood at all. So it might not mean much to the average user. D:
The binary as well as the source is provided below. This was patched so it only supports 6.60, with any model.
Here's a run down of the boot process (Taken from the current uOFW readme).Changelog:
[!] No longer installs 6.60 PRO-B10 when trying to install your own modules.
[+] Colors added to make it easier to read.
[+] Disabled modules are now removed from flash0.
[+] Rebooting back to OFW now removes unused modules in flash0.
the list.txt file inside of the "uofw" directory which is inside of the bin folder is your bread and butter for this to work.Boot process:
- PXE/Launcher: launcher PBP, starts the exploit -> kernel\_permission\_call()
patches loadexec for it to run our own PXE/RebootEX, and then uses
sceKernelExitGame() to run it.
- PXE/RebootexPXE: patches reboot in order to add the fake "hen.prx" in the
module list (when it is read, it actually reads SystemControlPXE) and patch
reboot's loadcore to be able to run it.
- PXE/SystemControlPXE: patches loadcore, modulemgr, memlmd in order to run
unencrypted modules; patches sceLoadExec (at the time of running
sceMediaSync) and vsh\_module in order to run the installer instead of them.
The following is an example of what the list.txt looks like if you wanted to replace the official copy of led.prx with your own.
Also it shows how to have a custom module (dummy.prx) run before usersystemlib.prx.
Loading of the list.txt:List.txt example:
; Lines starting with ; are comments
; modules to replace with your own version (don't put the "<>" in the ;file)
; they must be with the same name in the uofw directory and will replace ;in pspbtcnf the module at "/kd/<module>.prx"
; insert modules
; here, <new_module>.prx is inserted right before <next_module>.prx in pspbtcnf
I modded a module reversed by Almost (led.prx) that can be tested to see how it all works (it turns the WLAN and MS2 LED's on permanently), just run the Installer and enable it. Also, a picture is provided below.
Led.prx mod test:
Here is a link to the uOFW repo. These are modules you can compile and install using this installer: https://github.com/uofw/uofw
Here is a link to the modules are currently working/nonworking (Some modules listed as working do not work, be aware of that): https://github.com/uofw/uofw/wiki/Curre ... les-Status
Here is a link to the modules which are loaded at boot time: https://github.com/uofw/uofw/wiki/Firmware-Boot-Process
Sources and stuff:
*) The folders you need to be looking at respectively are "./Installer" (The installer menu),
"./PXE/SystemControlPXE" (Sets up configuration and applies patches),
"./PXE/RebootexPXE" (The actual Reboot Extender),
"./PXE/Launcher" (The PBP which launches the exploit).
*) The source is pre-set to make it easier for people who wish to try and compile the thing on their own, so if you ever want to make changes to the menu, go to the Installer folder, modify, recompile, gz it, bin2c the gz copy, drag it into the Launcher folder, make clean, make and you're done.
*) Copy the contents "inside" of the bin directory into the root of your memory stick.
*) If this installer does NOT work, try again using the original installer included in the binary, otherwise ignore this. This confirms whether it's an issue with the installer itself and will help with bug fixing in the future.
*) Modules which have been installed will still running when launching games/homebrew
*) For those who want to take shortcuts, resetting the VSH/suspending the device won't cause the custom modules to unload themselves
*) Resetting the device will unload everything (Also will put you back in OFW if you don't have CIPL)
*) If you're worried your module won't work and you accidently install it, in most cases the PSP will just freeze up on you so you can try again
*) Until I talk to Felix/artart, this won't be in the main repository.
Source: https://github.com/Omega2058/custom-uOF ... -InstallerCredits
The PRO Team and the uOFW team for all of their work thus far to make this possible.
Binary : Download
Edit: Updated notes (Read the first point please~) . Added links to the uOFW repo, current module list, and modules loaded at boot time. Also, the original installer is now included in the binary.