The long awaited PS4 project titled no other then the Mira Project from TeamOrbis (see our past coverage) has released the source code (no compiled version) for the project on Github and to follow developer SpecterDev from the team has also released the OpenOribis SDK (PS4 Toolchain) which should spark some native PS4 homebrew development as developer's can create homebrew without the need of the Official SDK. like how PSl1ght was the OpenSDK used for the PS3 .
The Mira Project is a suite of powerful tools that adds a variety of new functionality with a new CFW framework, while not CFW in the traditional sense of a modified software update file (ex. PUP), but a powerful HEN (homebrew enabler) on steroids. There is a number of new functionality outlined in the Mira Project Read Me, a snippet of the information is in the "About Mira Project" Tab below and full details with building instructions, but beware this is geared for advanced user's and developer's. A user-friendly version should be coming soon with this source code release
Now with OpenOrbisSDK (OoSDK) we now finally have a free and open source SDK for PS4 Homebrew development, this is surely to spark some development and hopefully we see some great homebrew come to fruition from this library. There is various samples provided in the SDK. This is the start of a new journey for the PS4 and could be producing some great homebrew projects in the future. Stay Tuned as the SDK and the scene continues to develop. Checkout more info in the source links included at the bottom and also view the tabs for a snippet of those readme's from these latest PS4 projects.
Mira Project - PlayStation 4 Homebrew Tools
The Mira Project is a set of tools that grants you more power and control over yourJailbroken Playstation 4. It is the result of all the hard work by the OpenOrbis team. It works differently to the custom firmware experience on Playstation 3, where CFW would be installed on the system via modified PUP files (e.g. Rebug), however once the framework is installed and ran it gives users the same functionality they were previously used to.
You can also:
- Homebrew Enabler (HEN)
- Emulated Registry (EmuReg)
- Emulated NVS (EmuNVS)
- Kernel Debugger
- Remote GDB
- System-level FUSE implementation (Experimental, WIP)
- Load sprx modules + IAT + Function Hooking (Thanks theorywrong)
- Mount and decrypt local gamesaves (Thanks ChendoChap) (WIP)
- Transfer files to and from the harddrive
- Implement your own kernel plugins (RPC using protobuf)
- Implement your own userland trainers (hooks included!)
- Dump your HDD encryption keys
- A bunch of other stuff
- Clean kernel rebooting support
- Web browser activation
- Fake Online (spoof for LAN usage)
- Game dumping and decryption
- FakeDEX support
- Linux loader
- Embedded builds into loader
- Remote registryContributors
This project would not be possible without these people (no paticluar order):
- kiwidog - Lead developer
- flatz - Developer (Code, writeups, non-stop help we <3 u flatz)
- CrazyVoid - Developer (Loader/self/SDK help, overall general help, OO moderator)
- theorywrong - Developer (Substitute, OverlayFS, general)
- SiSTR0 - Developer (HEN support, general)
- SocraticBliss - Developer (HEN support, general)
- valentinbreiz - Developer (Mira Companion App v1)
- Seremo - Developer (Mira Companion App v2, Log plugin)
- Al-Azif - Developer (5.05 lead maintainer, general)
- z80 - Developer (5.05 maintainer)
- balika011 - Developer (Fixing userland elf loader entry point, general developer)
- Zer0xFF - Developer (OverlayFS, general)
- CelesteBlue - Developer (Bugfixes, plugins)
- Joonie - Developer (Offsets porting 5.01/5.05)
- AlexAltea - Low level and kernel help (go check out Orbital Emulator)
- qwertyoruiop - Security (4.55-5.05 kernel exploits)
- CTurt - Security (Initial payload PS4 SDK and 1.76 kernel exploit)
- m0rph3us1987 - Developer (Code examples, kernel SDK, overall general help)
- eeply - Developer (UART)
- zecoxao - RE (4.74 Port)
- aerosoul - Developer (Everything elf related, loaders, etc)
- maxton - Developer (Everything pkg related, etc)
- ChendoChap - RE (Bug hunting, general kernel help)
- sugarleaf - Initial 4.55 private exploit, inital help with Mira dev (retired/left)
- kozarovv - RE (4.05 offsets)
- LM - RE (Research on System-Library-Loading), assembler and linker script help
- TheFlow - RE
- samsepi0l - Offset Porting
- xvortex - Original VTX-Hen
- 2much4u - Ptrace patches
- golden - Ptrace patches, rpc ideas
- bigboss - liborbis with examples and orbisdev (and complaining a lot)
- rogero - Original 5.01 testing
- AbkarinoMHM - Original 5.01 testing
- wildcard - General questions, and hardware help
- frangarcj - orbisdev sdk, musl, C++ support
- masterzorag - orbisdev sdk, musl, C++ support
- fjtrujy - orbisdev sdk, musl, C++ support
- [Anon #1] - Developer (Code, Non-stop help, <3 thx bruv)
- [Anon #2] - Developer (Code, Non-stop help, gl with job!)
- [Anon #3] - Security (Future proofing design)
- [Anon #4] - Developer (Ideas from Vita)
- [Anon #5] - Security (Software and hardware
OpenOrbis PS4 Toolchain
The repository contains the source code and documentation for the OpenOrbis PS4 toolchain, which enables developers to build homebrew without the need of Sony's official Software Development Kit (SDK). It contains the header files, library stubs, and tools to build applications and libraries for the PS4.
The header files as well as the library stubs may need updating to support yet undiscovered functions, so feel free to fork the repository and make pull requests to update support.
All Visual Studio solution files are assumed VS2017 for now. This will change when the .NET core-based projects drop, which will be VS2019 to allow usage of .NET core 3.1.
The following projects will be added to this repo within the next few days:
It was intended for these to drop at the same time as everything else, however both are getting ported to .NET core to be made more future-proof and to allow easier Continuous Integration (CI).
- Each tool will have an additional README.md file in it's sub-directory giving more specific information on that project. The docs sub-directory also contains additional materials and documentation. Below is an overview of the purpose of each sub-directory:
Setup & Installation
Directory Contents /bin Executables for tools for each platform (Windows in /bin/windows and Linux in /bin/linux) /docs Documentation for PS4 format specifications (reverse engineered) and the toolchain itself /extra Extra / miscellaneous files. Currently, this includes project templates for Visual Studio /include Contains header files to compile against when building applications/libraries (PS4 specific files are in /include/orbis /lib Contains library stubs to link against when building applications/libraries /samples Example programs to get you started and for reference /scripts Helpful scripts to view Orbis ELF (OELF) information as well as other various tools /src Contains source code for tools (see /src/README.md for more information on this directory)
The clang toolchain as well as the llvm linker (lld) is needed to compile and link using this SDK. For Windows, these can be downloaded using the Pre-Built Binaries provided by LLVM. For Linux and macOS, the same page contains pre-built binaries, however you can also use the following commands (Debian/Ubuntu):
sudo apt-get update
sudo apt-get install clang
sudo apt-get install lld
In the future, we may include pre-built binaries for clang/lld, however for the present, it is required for you to install these separately.
The OO_PS4_TOOLCHAIN environment variable also needs to be set. On Windows, this can be done using the environment variables control panel. On linux, the following command can be added to ~/.bashrc (Debian/Ubuntu):
export OO_PS4_TOOLCHAIN=[directory of installation]
This is needed so the build scripts and the converter tool know where to look for certain files. It is also recommended you add the root SDK directory + /bin to your path variable.
For Windows, a Nullsoft scriptable installer is provided, which will automate the process of extracting the toolchain files and setting the OO_PS4_TOOLCHAIN environment variable.
For Linux, after installing the required dependencies and setting up the environment variable as noted above, you'll also want to run the setup-toolchain.sh script in /extra. This will mark all the Linux binaries as executable, as by default they're read/write.
Creating Homebrew Projects
For Windows, /extra provides Visual Studio templates which can be added into your VS installation's templates directory to allow easy creation of homebrew projects. You can also copy and modify the solutions from the provided samples.
For Linux, /extra contains a setup-project.sh script which will create a project directory based on the hello_world sample.
Contribution is welcome, the OpenOrbis toolchain is open source after all. For those eager to contribute, we have an actively maintained list of issues on CONTRIBUTING.md that are accessible and would be awesome to get closed. We appreciate anyone who contributes and acknowledgements will be maintained in this README.
Each tool will have a dedicated README.md file for more specific information on the tool. Below is a generic overview of the tools included in the toolchain currently.
- The create-eboot tool takes normal Executable Linkable Format (ELF) files and performs the necessary patches and relinking to create an Orbis ELF (OELF). It will further take this OELF and process it into a final wrapped Signed Executable Linkable Format (SELF). This was made possible thanks to flatz' previous work on the make-fself.py script, which can be found in /scripts. For more information on these formats, see the wiki or /docs.
- Author: Specter + flatz (fself stuff)
- The create-lib tool is similar to the create-eboot tool, however it produces Playstation Relocatable eXecutable (PRX) library files from a given ELF file.
- Author: Specter + flatz (fself stuff)
- The create-pkg tool takes a set of files that applications are expected to have (eboot.bin, param.sfo, necessary modules, etc.) and creates a package file (pkg) for them to install on the PS4.
- Author: maxton
- The stub-generator generates the header files and shared libraries (.so) files for linking with PS4 system libraries. The output of this tool can be found in /include/orbis and /lib. These directories are essential to properly link with PS4 libraries.
- Author: CrazyVoid
- The miralib library contains C# and Python code for interacting with Mira on the desktop side of things. This includes management of a local list of consoles, connecting to a console, and performing various actions once connected via RPC.
- Author: Specter + Kiwi
- Assistant is actually a suite of tools for aiding in developing PS4 homebrew. This includes a log viewer, a debugger, a launcher for Mira, and a tray application to easily launch all of these.
- Author: Specter
- A replacement readelf tool for reading PS4-compatible ELFs, otherwise known as Orbis ELFs (OELF).
- Author: Specter
- All scripts in the /scripts directory are Python 3 scripts, specifically targeting Python 3.7.0, with the exception of /scripts/make_fself.py. You will need Python installed on your system to run these scripts. Usage of these scripts can be found in /scripts/README.md.
- autobuild.py - is an automated pkg generating script based on project dir content (may be unstable, wait for release build)
- dynamic_entries.py - Gets a list of dynamic entries from the dynamic table of Orbis ELFs.
- make_fself.py - Copy of flatz' script to generate fake SELF files. This functionality has now been integrated as a part of create-eboot and create-lib.
- program_headers.py - Gets a list of program headers from the program header table of Orbis ELFs.
- rela_entries.py - Gets a list of relocation with addend (RELA) entries from the relocation table of Orbis ELFs.
- symbol_entries.py - Gets a list of symbols from the symbol table of Orbis ELFs.
Credits + Special Thanks
- Specter: Create-eboot/lib relinker, miralib, assistant suite, readelf, samples and documentation
- CrazyVoid: Stub generator, headers, samples and documentation
- maxton: Create-pkg pkg and SFO generation tools
- Kiwidog: Mira stuff, documentation
- flatz: Homebrew research and writeups, SELF reversing and documentation
- m0rph3us1987: Help with debugging stuff
- bigboss / psxdev: Library research and reverse engineering, used for reference by various samples
- LightningMods / LM: Testing via APP_HOME and lib loading help on the Mira side
- MrSlick: Awesome logo <3
- OpenOrbis Team
- Other anonymous contributors
Mira Project: Source Code & Building Instructions @: github.com/OpenOrbis/mira-project/
OpenOrbisSDK (OoSDK) v0.1 BETA : https://github.com/OpenOrbis/OpenOrbis-PS4-Toolchain/releases
PS4 Mira Project Source Code Release + OpenOrbis PS4 Toolchain (OoSDK) Released
By STLcardsWS on May 11, 2020 at 7:54 PM
RetroArch (PS2 - v1.8.8) - Utilizing New PS2 SDK / Toolchain adds performance upgradesThere has been some great work being done in the PS2 community, First off i would like to give two PS2 developer a big shoutout and some recognition (I failed in doing so in my previous coverage back in April, thanks to @TnA for pointing that out ) with work done on the PS2 SDK / Toolchain as PS2 developer's @uyjulian and @Maximus32 have been working and progressing the toolchain and SDK for sometime as you can read about some of that progress and follow some of the development in this thread.
Developer @fjtrujy has also put in some great work to the project and has utilized and adopted the improved toolchain for the RetroArch PS2 port and can be seen with the release of RetroArch v1.8.8 and its been a good descion for the homebrew (multi-system emulator) as it has been getting significant performance increases, right now we only have one new core and its a classic from the 80's (theodore libretro core), but the existing cores have an incredible performance boost for instance the QuickNESContinue reading
The latest with RetroArch (PS4-Unofficial): PSP emulation in next update along with OOSDK conversionSince the release of unofficial version of RetroArch (PS4-R3) from developer @OsirisX and subsequently the source code release that came along with it, we surprisingly have not seen or heard much in regards to an official team adopting this release to make it official. We can however more then likely gather some clues and "connect some dots" from the OG port that started it all on the PS3 and has since been pulled in recent and replace with the still in development Psl1ght (Open Source) SDK port rather then the previous versions that used the official sony sdk. With the Open Orbis SDK (OoSDK) release recently for the PS4, this seems to be the approach for the PS4 to become official as well,
Recently developer OsirisX has stated that he wants to convert the project's to OoSDK before another release is made, but the developer has already made some progress and teases a bit of that progress in the video below showing a new core being supported in PPSSPP. When asked about potential PSP or PS2 Support the developer stated the plan is to include PSP support (via PPSSPP core) in the next release. The teaser video show's GTA Vice City Stories being quite playable (video shows FPS counter) so if this game looks this well, many others should play very well also. There is still alot of great development going on with this port by developer OsirisX. .Continue reading
Super Console Wars - v1.0 (by @Acekone1 & @Lapy05575948)We have a new Homebrew Game released for the PS4 (Also available on Windows / Android / Xone / Switch (update now on PS Vita)) from developer Lapy of Lapy Games, this time around the developer who has brought us other games like River Raid Remake & Duck Hunt /Wild Gunman Remake's (and many games other's (9) found in the Lapy's Game Collection has collaborated with Acekone1 in this release. Acekone1 came up with the original concept, while also designing many of the elements that reside in the game. Where as developer Lapy did the programming portion of the game Powered by the Unity Engine for this Homebrew Game creation.
Super Console Wars is the title, its gameplay can be seen in the included ScreenShots and Video attached, S.C.W.'s main characters are some familiar faces from the video game industry as head figures of Sony, Microsoft & Nintendo who embark's on a new journey in this title where you "Choose your side and fight against fans & haters!". This platform shooter put those characters in an adventure that spans 5 stages (sectors). With an included final boss, but along the way you will encounter 4 different types of enemies in this journey (more info on those enemies in the tab below). The game can be played in both English or Spanish languages. Also, the devs have snuck in some Easter Eggs to be foundContinue reading
Share This Page
- henkaku homebrew
- playstation 2
- playstation 2 resources
- playstation portable
- playstation portable cfw
- playstation portable resources
- playstation tv
- ps tv
- ps vita
- ps2 resources
- ps3 cfw
- ps3 homebrew
- ps4 homebrew
- psp cfw
- psp resources
- pstv homebrew
- vita homebrew
- webman mod
- User Record:
- Latest Member: