Skip to content

Repository files navigation

OpenTM

An independent target manager for the PlayStation 3, speaking the DECI3 protocol over TCP.

OpenTM connects to a console, browses its filesystem, inspects kernel objects, loads and runs executables from your PC, installs packages, and edits the console's debug settings - the day-to-day work a target manager does, without needing the original tooling running.

There is a GUI, a headless CLI for build steps and CI, and a small server that holds sessions so several tools can drive one console at once.

The OpenTM window connected to a DECR-1000A devkit, with the kernel explorer listing a running process's threads and modules, and TTY output in the console below

# run what you just built on a devkit, and fail the build if it asserts
opentm_cli --host 192.0.2.10 --serve build --reset --load build/game.self \
           --pass-on "RESULT: OK" --fail-on "ASSERT|FATAL"

Status

Working against real hardware:

DECR devkit (PS3_DEH_TCP) Retail/Nonretail systems running DEX firmware (PS3_DBG_DEX)
Connect / session handshake yes yes
TTY console yes yes
File explorer (browse, stat) yes yes
Host file serving (/app_home/) yes yes
Load and run a .self yes yes
Install a .pkg yes yes
Kernel explorer yes yes
Power control / reset modes yes yes
Upload / download yes yes
Rename, mkdir, delete on the console yes yes
Permissions and timestamps yes not supported
XMB settings read/write yes yes
Wake-on-LAN n/a - the CP powers the system on yes

PS3_CORE_DUMP targets are recognised but not currently implemented.

Getting it

Builds are on the releases page. On Windows, unzip and run opentm_app.exe. On Linux, either the .AppImage (one file, chmod +x and run) or the .tar.gz (unpack anywhere, run bin/opentm_app). All of them carry their own Qt, so nothing needs installing.

To build from source, see Building.

Documentation

Usage the GUI, the CLI, and how a console is shared
Building building from source on Windows and Linux
Internals how the code is put together, and where to add things
Server protocol driving OpenTM from your own tools

Relationship to vendor tooling

OpenTM is a cleanroom implementation built from protocol observation. It is not affiliated with, endorsed by, or derived from Sony Interactive Entertainment or its subsidiaries, including SN Systems Ltd.

A few features invoke executables that ship with the official SDK. OpenTM does not bundle those, it expects you to point it at your own copy, and disables the feature when the file is absent.

"PlayStation", "PS3" and "ProDG" are trademarks of their respective owners, used here only to identify the hardware and software OpenTM interoperates with.

Attributions

FamFamFam Silk icon set by Mark James - http://www.famfamfam.com/lab/icons/silk/

Licensed under Creative Commons Attribution 2.5.

Licence

OpenTM is licensed under MIT

About

An independent target manager for the PlayStation 3, speaking the DECI3 protocol over TCP.

Resources

Stars

6 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages