The unofficial Official FirmWare, a complete latest PSP firmware reverse engineering project
Go to file
Felix-Dev ad6f95d334 utils/basic-decompiler/main.cpp: This commit
is used to create a meaningful commit message for the previous commit. 
Intended original commit message: Added explicit (s32) casts for source registers of sign-dependent MIPS instructions. This should prevent sign-errors to occur in reverse engineered code using the output of the basic-decompiler as its base.
2014-05-21 23:15:14 +02:00
docs Configured travis to build and deploy the executables 2014-05-14 17:09:27 -04:00
include Fixed some warnings, and some mistakes by the way 2014-05-12 20:07:57 +02:00
lib Removed compiled files 2014-05-14 17:09:27 -04:00
src Fixed some warnings, and some mistakes by the way 2014-05-12 20:07:57 +02:00
utils utils/basic-decompiler/main.cpp: This commit 2014-05-21 23:15:14 +02:00
.gitignore Removed compiled files 2014-05-14 17:09:27 -04:00
.travis.yml Configured travis to build and deploy the executables 2014-05-14 17:09:27 -04:00
CONTRIBUTING.md Adding workflow to contributing. Closes #16 2014-05-15 14:20:37 -05:00
COPYING Finished the build system, with the import side: now our modules will be easily able to import functions and variables. Modified pspimport.s and added a modified version of psp-fixup-imports to support variables. 2012-01-01 23:19:42 +00:00
Makefile memlmd: Removed Makefile (src/memlmd) and removed memlmd entry in the global makefile. Reason: memlmd is not included in the master branch yet. 2014-05-09 23:01:39 +02:00
README.md Fixed typo in README.MD 2014-05-18 02:06:08 +02:00

uOFW Build Status

The unofficial Official FirmWare, a complete latest PSP firmware reverse engineering project.

Doxygen documentation: http://uofw.github.com/uofw/
Module status list: https://github.com/uofw/uofw/wiki/Current-Modules-Status
For more information: https://github.com/uofw/uofw/wiki

Getting started

In order to contribute to uOFW, you need advanced knowledge in MIPS ASM and C. Some good MIPS ASM
online resources can be found on the official MIPS page.
MIPS ASM Instruction Set Reference: http://math-atlas.sourceforge.net/devel/assembly/mips-iv.pdf

In addition, there is a nice MIPS runtime simulator and debugger which can be found at:
http://courses.missouristate.edu/kenvollmar/mars/

The next step is to improve your reverse engineering skills (if needed). We suggest reading [this excellent guide] (https://github.com/uofw/uofw/wiki/Reverse-engineering-tutorial) about reverse engineering for the PSP.

Make sure to check out uOFW's wiki for more information!

Installation & Running

For information on how to install and run uOFW, please look here.

Repository structure

uOFW's Github repository contains one 'master' branch and several sub-branches.

The master branch is aimed to contain only tested and working code (in fact, it should contain working modules). Please note that this is not entirely the case right now as we still need to test, and fix, some of the code in the master branch due to the past repository structure.

Then there are sub-branches which are aimed to each represent a module currently being worked on. Such a branch contains unfinished, untested and undocumented code about the module it is named after. Once such a branch contains finished, documented code (that is, the module has been finished reverse-engineering) it will be merged into the 'master' branch. Current branches are listed on the branches page.

Additional Information

While you reverse-engineer parts of the PSP's kernel, you may will find yourself in a position where you would like to know more about how Operating Systems work in general. We suggest to check out this webpage.

If you are looking for more PSP-related resources, you should consider checking out the following links below:

Other websites are:

Questions or need help?

You can stay in touch with us and discuss project-related topics with us via the following ways:

For copyright and license information, please check this file.