PlayStation Mobile: An Overview

01/11/26

Home
About Us
Software
Devices
Ramblings
Archive
Guest Book
Alters

 

PlayStation Mobile: An overview  - The Crystal Website

Whenever i tell people i am working on a PlayStation Mobile Emulator; or when i am doing something with PlayStation Mobile in general-
it is often followed by "What is PlayStation Mobile" .. and to be honest this is a fair question,

because it's not like Sony ever acknowledged it or advertised it ever the thing! on top of that-
today there are like 10 things called PlayStation Mobile- the wikipedia page on it is also not that helpful-

To put it simply- PlayStation Mobile is an Cross-platform Game Engine, and Software distribution platform created by Sony;
games created with it were playable on both the PlayStation Vita, and some Android Devices (like the Xperia Play)

android support was eventually dropped in PSM version 2.00, meaning only 1.21 and older can run on android; where 2.00+
is only on the playstation vita;

* many 2.00 games do 'just work' on android anyway, as many do not use any features from 2.00;

at some point a "Unity for PlayStation Mobile" was released too,
a modified version of the Unity Game Engine which games for would be distributed via the PlayStation Store on PS Vita;

despite the name this is very different internally and in how it functions to PSM regular, and i haven't looked at it that much (its .. really just unity tbh)

However, games made for PlayStation Mobile have to be written in the C# programming language;
most of the PlayStation Mobile Game Library is fairly unique; and contains many exclusives; (most of the game library is exclusives)
but also a fairly big lack of games you'd expect on Sony Consoles- (no uncharted, or little big planet, etc)
as these games are typically written in C++ and would have to be completely re-written from scratch to work on PSM;

this rarely happened- and as such the only "port" like this i know of is Chaos Rings and Cytus Lambda
oh, and that whole "Appli's Archives" collection, which are ports of JME / i-Mode games, but like -- it doesn't even run doom

unfortunately PlayStation Mobile never really caught on; the stores were shut down in 2015; lasting only 3 years-
what is worse is that the ability to re-download playstation mobile games went with it, and as of 2023, all PSM games were finally removed from sonys servers
as a result of this, a lot of PSM games are now lost media, due to the fact that they were tied to a per-account license which requires a per-device activation;

neither of which can be obtained today meaning the only way to get these games today;
is if someone who had them way back then- still has them on their device- if that is you-
please
goto http://save.psmreborn.com on your PS Vita; it has a script to backup all your games;

(for android users require rooting their device, and then using NoPssDrms "Backup all games" feature)
 


Now a few of you who have been around playstation stuffs for awhile; might be thinking:
cross-platform game platform by Sony??! wait- that sounds familiar

PlayStation Minis

indeed, PlayStation Minis were a similar idea, where they were playable on PS3, PSP, and PSVita- and were also cross-buy like that- and also had a fairly unique library
 .. both would abbreviate to "PSM" but that is about where the simularities end; MINIS are actually just PSP games that are limited in RAM usage,
and the way they made them cross-platform is by having the PS3 simply Emulate a PSP- the vita can also emulate a PSP, hence why they can run on that too-

if you have a hacked / cfw ps3, it is also possible to replace the ROM inside the mini's emulator and play other PSP games; though compatibility is sparse-

besides the name still being "PSM" and both being vaguely 'cross platform' that is pretty much where the similarities end; PlayStation Mobile works differently and is completely different- about everything.


So What is it??!

the cross-platform nature of PlayStation Mobile is possible due to PlayStation Mobile games; actually targeting a modified version of the Mono;
in this case; "Mono" is a cross-platform re-implementation of the .NET Framework-

its like Java, instead of code being compiled specifically for a specific CPU or hardware architecture its instead targeting a "bytecode"
which you then have a program referred to as a "runtime" that interprets that code and translates it for your actual hardware;

 .. or another way to think about it- is that its basically as if you had an "emulator" for a made up computer that never was meant to be physically built; and there is no isolation, typically a 'runtime' can access all of your computer, such as all files folders, etc; however in the case of PlayStation Mobile; they actually have implemented sandboxing and isolated it from the rest of the system; so you really could consider it an 'emulator' .. and in that way- PS Minis actually is similar-

because Mono is derived from .NET; it uses regular Portable Executables- that is the Executable format used on Microsoft Windows;
which leads to some funny situations where PSM games contain an "app.exe" and a bunch of familiar dynamic link libraries such as "System.dll"

app.exe along with many DLL's such as System.dll, System.Core.dll, etc

you can even attempt to directly run it inside windows; and it does technically "run" but it crashes due to a missing DLL:

"Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Sce.PlayStation.Core'" Even if you were to include this however, it wouldn't actually work for multiple reasons;
the first one is lack of sandboxing, sony actually added a IO sandbox to mono, PSM expects to load files from /Application/ however; in real .NET framework; it would look litterally at
/Application/ .. and immediately throw FileNotFound exception; however the much more pressing issue is that: Sony didn't just use Mono/.NET infact; Mono by itself is actually fairly barebones; it has no graphics, audio, or even font rendering code; which makes it not that great for games-

so what sony actually did was add a bunch of extra functionality to mono, for things like graphics, fonts, audio, etc-
and basically every PlayStation Mobile game expects this to be present; these are implemented as part of the
PlayStation Mobile Runtime Package (or; PlayStation Mobile App on Android) in C++, which can be accessed from inside the .NET/C# code;
 


now a few of you who have been around even longer, and maybe who have even been to some exotic places;
may think what i have just said sounds familiar!

 

Microsoft XNAXbox Live Arcade

a cross-platform game SDK, with its own app distribution service, thats built upon the .NET framework??!?!? isnt this just Microsoft XNA ??
and indeed that would be a pretty good comparison actually, PlayStation Mobile is effectively Sony's XNA;

but unlike XNA, PlayStation Mobile never really caught on, but XNA lives on with things like FNA (a foss-reimplementation of XNA) and used in popular games like Celeste
.. which has ironically even been ported to the PlayStation 4.


PlayStation Mobile has a bit of an identity crisis:

PlayStation Mobile internally, and was before release, called "PlayStation Suite" often abbreviated to "PSS" .. this is fairly common for sony products, the vita was "PSP2" (and before that, "NGP") ps4 is "Orbis" PS5 is "Prospero"; etc-


however annoyingly- sony called alot of things "PlayStation Suite";

for example the "PlayStation Pocket" launcher for PS1 games is has the package name of "com.playstation.pssuite",
.. the varient of it exclusive to the Xperia Play and its supported games is "com.sonyericsson.pssuite"

there were some PlayStation 1 games released on Xperia phones through a "PlayStation Store" application,
which originally had nothing to do with PlayStation Mobile; and that would access the domain "http://pss.dl.playstation.net/"
and contains a native library called "libPssLicenseData.so" which is for handling DRM of PS1 games;

this "playstation store" application was later updated to "PlayStation Mobile", they have the same package name "com.playstation.psstore";
the but the playstation mobile stuff is handled in "libdefault.so", which contains function names inside a namespace "sce::pss::core" ...

PlayStation Certified logo

PlayStation Mobile was advertised as being available on "select" android devices; devices with this functionality,
usually were said to be "PlayStation Certfied" and featured a logo on the box;


(also; the inablity of certain devices to use ps mobile or other features is not a technical limitation-
but rather an arbitrary decision from Sony, probably for licensing fees);
 

However rather annoyingly more pressing thing is that there is actually 4 things "playstation certified" can mean:

for playing playstation mobile games, the framework "playstationcertified.jar" has to be present or it wont start;
   ->  OR; your devices model number is listed in devList2.dat which gets downloaded on the app startup
   ->  OR; your devices model number and vendor is listed in additionalDevList.dat, which gets downloaded on the app startup

for playing playstation 1 games, your devices vendor name and model number have to be present in devList.dat
   ->  having the framework installed has no effect on PS1.

for running the PlayStation Pocket launcher, you need the framework "com.playstation.pscertified.jar",
which yes, is different to the one for ps mobile;
(this one is also a hard dependancy in the APK, not checked dynamically, so the app wont install if its missing)
    -> oh yeah this one is ALSO required for the psp and ps3 XMB live wallpapers

The Holy PlayStation Certified Trinity !

note: these 'frameworks' contain a single empty class file, and do not actually do anything at all, it merely checks they're present.

basically tl;dr:
"PlayStation Certified" means you can run the PS Pocket and PSP/PS3 XMB live wallpapers,
AND/OR it means you can play PS1 games in an offical emulator,
AND/OR it means you can play "PlayStation Mobile" games;

 Sony never said which or acknowledged it can mean 4 different things; so its anyones guess what exactly it means (or you can just try it on your phone, or if your lame check the frameworks folder and the devList2 and additonalDevList files :D ..)

furthermore, just to make things even more confusing, at the time there was a website run by sony where you could login with your PSN Account
(and if you did it early enough you also had to pay some fee) to "become playstation certified" ..

however this actually was to sign up to access Developer Tools and SDKs; rather than your device becoming able to
play PlayStation Mobile games; granted- this was kind of obvious from the website, but still; but im sure someone somewhere got confused by this whole mess;

it is actually called the "PlayStation Mobile Developer Certification" ..

and also if that wasn't enough- today Sony uses "PlayStation Mobile" as name of the publisher for the "PlayStation App", and "PS Remote Play",
other unrelated playstation android apps on the Google Play Store; and the Apple App Store.

Tech News outlets also keep calling the PlayStation Portal and the Playstation Backbone Controller,
"PlayStation Mobile" or "The PlayStation Mobile Controller" .. .. for some reason.


which i guess leads me to share a deepest darkest secret about me-
i am a Playstation Mobile Certified developer!

 

PlayStation Mobile Development CertificatePlayStation Mobile Development ProgramPlayStation Mobile Development Assistant



it even still says as much on my PSN accounts "Services List" and i have a the "PlayStation Mobile Development Assistant" in my download list to this day;
which honeslty makes me want to specify the SDK tools;

the PlayStation Mobile SDK, includes quite a few useful variety of useful tools; the most useful of which is a program included called the "PlayStation Mobile Simulator" ..

this is a complete port of the PlayStation Mobile Runtime 2.00 to Windows, it is intended for development and testing; however it is feature complete;
and can even (with much effort)  run full retail PSM games, it also has export symbols to mono, GLES2, and more; which makes it very useful for writing the emulator
(anything is better than dealing with the vitas Name-ID system :D) and is generally an incredibly useful reference for the emulator;

Life of Pixel running in the PlayStation Mobile Simulator

however as great as this is, there are quite a few limitations with this too notably-

  • Only runs decrypted games, does not implement PsmDrm

  • No way to remap buttons

  • Fairly limited resolution options

  • Closed source, locked to windows and x86!

  • Ships its own OpenGLES2 implemenation

  • Does not work very well in WINE.

so although this is good for running PSM games on a computer, and without a pc; it is nice to have, but its also not a perfect solution.

for testing on official firmware; there is an application for the PlayStation Vita, that after signing up could be downloaded from the PlayStation Store;
known as "PlayStation Mobile Development Assistant"- which could let you test your games on the console,
and older SDKs (<1.21) included a "devassist.apk" for testing and debugging games on android;-

but unfortunately this application was blocked from running on Firmware 2.51, however with a modded console these days it is possible to get it working again.
 

PSM was also consistently useful for console modding and hacking purposes:
here are a .. few examples:

  • metadata for PSM games, are for some inexplicable reason, stored as CXML "app.info" files, instead of the usual param.sfo
    (there is also a param.sfo embedded inside PKG files) the SDK includes a python script to compile XML to CXML;
    which was a helpful reference for figuring out the CXML format use on the vita (its used for resources, sound effects, etc)
     

  • for some god forsaken reason, PlayStation Mobile on vita statically linked an entire implementation of OpenGLES2 and shaders are shipped in source code form
    (most likely because of its cross-platform nature) so, the PSM runtime package has a CG shader compiler, 'shaccg.suprx'
    which allows you to compile shaders for the vitas GPU on the console itself

    furthermore- the OpenGLES implementation was also found within other games as an external module as well,
    allowing easy porting of games using OpenGLES2 to the console;
     

  • the first code execution exploit for the PlayStation Vita, "rejuvinate" was triggered from inside the "PlayStation Mobile Development Assistant" application,
    and it was possible because PSM is the only application on the console that has permissions to allocate memory with executable permission;

    ALSO: there as a homebrew competition held for making useful homebrew applications using rejuvinate, and the winner of it was a little known file-manager named "VitaShell"
     

  • PSM SDK contains an official DualShock 3 driver, that is never actually installed when you use the thing,
    the PSM Simulator has support for DualShock 3 controller, before this it was a complete pain in the ass to get a
    dualshock 3 to connect to a windows computer, requiring third-party drivers that frequently didn't work, with this its plug-n-play..
     

  • the PSM SDK also contains a USB serial driver, and the vita kernel be placed into USB Serial mode, which is used only inside PSM Dev;
    this makes your vita emulate an old COM port, normally this is just used to send console output from PSM games over USB Serial;

    however it can be easily reused to send console output from the entire device, making it useful for developing vita homebrew as well
     

  • Alot of requests to PlayStation Network were in a bespoke custom binary format with no documentation;
    however as it turns out the PlayStation Mobile app for android, actually communicated with PSN directly using the binary "console" protocol;
    futhermore, unlike the actual 'PSM' part, the PSN communication part, was implemented in the Java portion of the application
    and also is the only part of the psm application's java code to not be unobfuscated. Thanks Sony!

    yeah so, this makes it a very useful reference for projects like the Vita4Ever PSN Server re-implementation.


"My death was… greatly exaggerated."

despite all official signs and information about it pointing to PlayStation Mobile being all but dead-

it actually lives on, you see secretly, without telling anyone Sony ported it to the PlayStation 4, and i've heard its even used on the PlayStation 5,
sitting in the files of every PlayStation 4 are files like "psm/Application/app.exe"
with familiar libraries like "Sce.PlayStation.Core" and "Sce.PlayStation.HighLevel.UI" ..

furthermore it is used for almost all of the built in system applications on the PS4! thats right-
every time you open the messages application, you are running a PSM game !

this new version is a bit different though, they did away with JIT, it is now ahead-of-time compiled; rather than instrcutions being translated at runtime
they are translated directly to the processor architecture beforehand

But also from what i am aware sony also no longer maintains their own fork of mono-
instead they seem to actually maintain PSM upstream, it has been sitting there this whole time ..

in the latest release of mono you can use "mono_jit_init_version" to initialize the .NET SDK version to "mobile"; .. .. did any of you even notice? 
they even offer it as a middleware tool for Playstation Partners to create games for the PS4 and PS5,, and its also using PlayStation Mobile ..

so i guess what im trying to say is; .. although it is true that XNA was brought to the PS4, with games like Celeste.
.. what you dont know is that it was only possible to bring it over in the first place, because sony had already ported Mono/.NET for PlayStation Mobile

    ;)

so really, you could say PSM might be one of the single most important peices of software sony has ever written in modern times both for modding & hacking;
but also for the latest generation of consoles
/hj /lh

Thanks for coming to my ted talk.

Home | About Us | Software | Devices | Ramblings | Archive | Guest Book | Alters

This site was last updated 10/29/25

Subscribe to our RSS Feed!

no ai webring previous next a rectangle with an animated, shifting rainbow pattern with the words NO AI / WEBRING on it in big fat letters. to either side of the rectangle are two arrows pointing left and right with animated, concentrically expanding rainbow patterns in them