Sony PlayStation Portable Hardware
Note: This document may be incomplete until all information is added. At that time, this notice will be removed.
Introduction
This document is an unofficial compilation of information on the Sony PlayStation Portable gaming system. It is not, in any way, endorsed by Sony or any of its subsidiaries.
The majority of this document was compiled by Groepaz of the Hitmen group (now defunct). It existed mostly as a long 5-ish MB PDF prior to this document. The original document's design goal was "this was made to give you what you need in the most compressed and visually pleasing form possible. Stuff that matters." This article will keep with that goal without adding a bunch of extra fluff.
What's In This Document
Nearly everything explicitly and specifically related to the PSP hardware and software internals and its programming. Everything inside the box is subject to be documentation, whether it's relevant for actual programming or not. It is meant as a reference for anyone who wants to know in all possible detail what makes the PSP tick.
Please note that this is technical documentation presented for pure educational purposes and higher learning. No warranty or support should be implied or will be given.
What's Not In This Document
- Emulating the PSP on a different system, apart from raw technical documentation about PSP hardware.
- Instructions on using any tools that let you upload and execute code on the PSP, or any other development-related tools except anything related to setting up and using
gcc
for cross-compilation to the PSP. - Software-related information, such as games or third-party software.
- Detailed and/or complete source code, except when used for illustration or clarification purposes.
- Any information related to playing/booting/copying copied/imaged/backed up games
Conventions
Bits are counted starting from 0, with the most significant bit (MSB) of a single byte being 7. The PSP is a big-endian system, meaning bits go from most-significant to least in a left-to-right fashion. When dealing with 16- or 32-bit values, all figures are also big endian.
Note that while everything is handled in big endian format, the Allegrex CPU itself is a little endian processor, which means bit order is reversed inside the CPU.
If known (from patents or other freely available sources), we use the same terminology as Sony does. In particular, we try to use the same names and abbreviations for hardware registers, signals, and the like as a weak attempt of providing consistency with other existing documentation.
Absolute memory addresses are shown as-used in real-world PSP programs. For that matter, we dont use physical adresses to avoid confusion for the majority of our readers.
Code snippets are in either real or pseudo-C language. Any logical or arithmetic expressions outside code snippets are loosely similar to C notation and use the same bitwise and arithmetic operators. Not that in outside code, this document does not make a distinction between logical and bitwise operations. When in doubt, the operation should be considered a bitwise operation.
PSP Main Unit
This is a detailed list of the features of the PSP:
Core System
- Main CPU (System clock frequency 1-333MHz), MIPS32R2 'Allegrex' core (little endian)
- Media Engine CPU (System clock frequency 1~333MHz), MIPS32R2 core (little endian)
- Main Memory 32MB DDR SDRAM
- Flash Memory 32MB
- Embedded DRAM 4MB
- 4.3-inch 16:9 TFT LCD screen, 480 x 272 pixel, 16.77 million colors, backlight, Maximum luminance 180/130/80 cd/m2 on battery, 200/180/80 cd/m2 via AC adaptor
Input
- Analog stick
- D-pad (up/down/left/right)
- Controller buttons (triangle, circle, cross, square, left shoulder, right shoulder, Select, Start)
- Home button
- Power/hold switch
- Volume up/down buttons
- Sound button
- Wireless LAN switch on/off
- Open latch for UMD bay
Storage and Media
- Proprietary "Universal Media Disc" (UMD) - 60mm optical secured ROM disc inside cartridge with 1.8 GB capacity
- Memory Stick PRO Duo
Communication and Networking
- Wireless LAN (802.11b) - A maximum of 16 PSP systems can be connected through the ad-hoc wireless mode with a typical indoor range of approx. 30m at 11Mbps and approx. 91m at 1Mbps, and a typical outdoor range of approx. 120m at 11Mbps and approx. 460m at 1Mbps.
- IrDA, IR Remote (SIRCS)
- USB 2.0 (5-pin Mini B)
Power
- Lithium-ion battery (1800 mAh)
- +5VDC via wall adapter
Models/Revisions
Standard/Slim PSP Models
Since the standard PSP has a different model revision for each region, a straight listing of hardware revisions takes up a lot of space. PSP model numbers have the following features:
PSP-X0YY
In the model number format above, X
refers to the hardware revision. For example, PSP-1000
indicates the PSP is a first-generation model release prior to the Slim revision.
In the following list, substitute the values into X
:
1
- Original PSP release (fat)2
- First hardware revision (PSP Slim & Lite)3
- Second hardware revision (PSP Brite)
In the following list, substitute the values into YY
:
00
- Japan01
- US02
- EU03
- UK04
- Europe, Middle East, Africa05
- Korea06
- Hong Kong/Singapore07
- Taiwan08
- Russia09
- China10
- Mexico
Hardware Revisions
PSP-2XXX
The first hardware revision of the PSP reduced size from 0.91 to 0.73 inches (23 to 18.6 mm) and mass from 9.87 to 6.66 ounces (280 to 189 g).
The serial port was modified to accommodate a new video-out feature, making it incompatible with older PSP remote controls. On the PSP-2XXX, games only output to external monitors and televisions in progressive scan mode. Non-game video outputs work in either progressive or interlaced mode. USB charging was introduced and the d-pad was raised in response to complaints of poor performance, and the responsiveness of the buttons was improved.
Other changes include improved WLAN modules and micro-controller, and a thinner, brighter LCD screen. To improve the poor loading times of UMD games on the original PSP, the internal memory (RAM and Flash ROM) was doubled from 32 MB to 64 MB, part of which now acting as a cache, also improving the web browser's performance.
The size of the battery was reduced, and its capacity lowered to 1200 mAh from 1800 mAh. The smaller battery is also present in the PSP-3XXX.
PSP-3XXX
The PSP-3XXX, also known as the "PSP Brite", has an improved LCD screen with an increased color range, five times the contrast ratio, a halved pixel response time, new sub-pixel structure, and anti-reflective technology to reduce outdoor glare. The disc tray, logos, and buttons were all redesigned, and a microphone was added. Games could now be output in either component or composite video using the video-out cable.
On its release, a problem with interlacing when objects were in motion on the PSP-3000 screen was noticed. Sony announced this problem would not be fixed.
Other PSP Models
In addition to the mainline PSP models, some specialty models were produced.
PSP Go (N1000)
The PSP Go (model PSP-N1000) was released on October 1, 2009, in North American and European territories, and on November 1 in Japan. Its design is significantly different from other PSP models. The unit is 43% lighter and 56% smaller than the original PSP-1000, and 16% lighter and 35% smaller than the PSP-3000. Its rechargeable battery is not intended to be removed by the user. It has a 3.8-inch (97 mm) 480 × 272 pixel LCD screen, which slides up to reveal the main controls.
The N1000 features 802.11b Wi-Fi like its predecessors, although the USB port was replaced with a proprietary connector. A compatible cable that connects to other devices' USB ports is included with the unit. The new multi-use connector allows video and sound output with the same connector using an optional composite or component AV cable. As with previous models, Sony also offers a cradle (PSP-N340) for charging, video out, and USB data transfer on the PSP Go. This model adds support for Bluetooth connectivity, which enables the playing of games using a Sixaxis or DualShock 3 controller. The use of the cradle with the controller allow players to use the PSP Go as a portable device and as a console, although output is not upscaled. PlayStation 1 games can be played in full screen using the AV/component cable or the cradle.
The PSP Go lacks a UMD drive, and instead has 16 GB of internal flash memory, which can be extended by up to 32 GB with the use of a Memory Stick Micro (M2). Games must be downloaded from the PlayStation Store. The removal of the UMD drive effectively region-locks the unit because it must be linked to a single, region-locked PlayStation Network account. While the PSP Go can download games to itself, users can also download and transfer games to the device from a PlayStation 3 console, or the Windows-based software Media Go.
All downloadable PSP and PlayStation games available for older PSP models are compatible with the PSP Go.
PSP Street (E1000)
The PSP-E1000, which was announced at Gamescom 2011, is a budget-focused model that was released across the PAL region on October 26, 2011. The E1000 lacks Wi-Fi capability and has a matte, charcoal-black finish similar to that of the slim PlayStation 3. It has a mono speaker instead of the previous models' stereo speakers and lacks a microphone. An ice-white version was released in PAL territories on July 20, 2012 with the same hardware specifications.
Hardware Overview
Headphones / Remote Control
PSP-1000
The connector for the PSP-1000 is different from most connectors on later PSP models. The dual plug is only compatible with the PSP-120 remote control, but the 3.5mm jack will accept any TRS-style headphone plug. Notably, the PSP-120 can convert a TRRS headset using OMTP standard into a functional headset for the PSP.
On the PSP-1000 series, the remote control connector is a small 6-pin connector located next to the headphone jack. The stock PSP remote for this connector is the PSP-120. The pins are numbered as viewed from the outside of the PSP:
Pin | Wire color | Description |
---|---|---|
1 | Brown | Shield (?) (GND) - Unused by standard remote/headphones |
2 | Blue | Digital ground (GND) |
3 | Orange | TXD |
4 | Green | Sense (?) +2.5v, seems to be controlled by PSP - Unused by standard remote/headphones |
5 | Yellow | +2.5v (0v when plug isn't inserted - see Notes below) |
6 | Grey | RXD |
Tip | Pink | Left audio (+600mV DC bias) |
Ring | Red | Right audio |
Sleeve | Black | Audio ground (GND) |
Notes
If a jack is plugged in and the PSP is on standby, the 2.5v output is always active regardless of whether the external device replies to potential PSP queries or not. In other words, when the PSP is on standby, external power is applied indefinitely to any remote device. This is done so the PSP may be woken up using a PLAY command(0x0001
) over the serial bus.
If a jack is plugged in and the PSP is turned on, things become interesting:
- As soon as the PSP is turned on, voltage on pin 5 drops from +2.5v to 0v for approximately 0.5 seconds. This forces any external device plugged into the remote port into a cold reset
- After the reset phase, +2.5v is turned back on, but only maintained if the remote device replies to a specific query from the PSP within 5 seconds
- If no proper reply is supplied by the external device within 5 seconds, external voltage is turned off until the PSP itself is powered off again
PSP-2000
Sony changed the connector for the headphone to include an A/V output. The new connector features 12 smaller pins next to the 3.5mm jack.
Pin | Description |
---|---|
1 | Rx |
2 | Sense - behaves the same as PSP-1000, see Notes for Sense pin |
3 | Cable detect input (42k to gnd means component cable is present ) |
4 | Remote detect line ( cts ) |
5 | Pb signal (blue-luma) |
6 | Agnd |
7 | Mic input |
8 | Tx |
9 | Dgnd (Agnd in component cable mode) |
10 | Y signal (luma) |
11 | Agnd |
12 | Pr signal (red-luma) |
Memory Stick
The Memory Stick slot on the PSP-1000, PSP-2000, and PSP-3000 series can accept MemoryStick Duo, MemoryStick PRO Duo, or Memory Stick Micro cards with an adapter. The PSP Go (PSP-N1000) can only accept Memory Stick Micro cards. The maximum capacity of external cards is generally 32 GB, but special adapters and custom firmware may increase this limit.
Pinout
The below table describes the full pinout of the Memory Stick running in parallel mode. For serial communication (which the PSP uses), pins 3, 5, and 7 are open.
Pin | Signal | Direction | Description |
---|---|---|---|
1 | VSS | ||
2 | BS | IN | Bus State - Indicates bus state (0-3) on the SDIO and the timing to start signal transfer |
3 | DATA1 | IN/OUT | Data - Open in serial mode |
4 | SDIO/DATA0 | IN/OUT | Serial Data In-Out / Data - Transfer direction and types of data change depending on the Bus State |
5 | DATA2 | IN/OUT | Data - Open in serial mode |
6 | INS | OUT | |
7 | DATA3 | IN/OUT | Data - Open in serial mode |
8 | SCLK | IN | Serial CloCK - Host device outputs signals on BS and SDIO at falling edge and inputs (latches) at rising edge. SCLK is always output during BS1-BS3 |
9 | VCC | ||
10 | VSS |
Notes
Both Pin 1 and Pin 10 will be connected to VSS.
Filesystem
In the root folder of the Memory Stick, there are three entries that concern the PSP. The first is MEMSTICK.IND
(or MSTK_PRO.IND
), which seems to be an indication that the stick is formatted. The second is the directory PSP
, which itself contains directories for the different types of data used by the PSP. These subdirectories are not mandatory, and may be simply missing if the appropriate media type is not stored on the media. The third root-level directory of interest to the PSP is MP_ROOT
, which stores video, and should only contain a single directory with the name 100mnv01
.
Note that for the directory structure illustrated below, not all directories are required to be present:
PSP
GAME
- Contains PSP software to be run directly, in the form of*.PBP
filesUPDATE
- Official firmware updates should be placed here
MUSIC
- Audio tracks in .mp3 format - only one level of subdirectories is supported by the music playerPHOTO
- Image files in .jpg format - only one level of subdirectories is supported by the image viewerSAVEDATA
- Savegame data - Each game creates a subdirectory with its product code (e.g. ILJS00002) in the following format:ILJS00002
- product codeICON0.PNG
- A still picture icon in PNG format (24bpp, 144x80 standard, or 300x170 maximum)ICON1.PMF
- (Optional) Animated version of the icon (file format still unknown)PIC1.PNG
- A fullscreen background picture for the file manager in PNG format (24bpp, 480x272)SND0.AT3
- (Optional) Background music to play in the file manager, ATRAC3plus encoded in WAV (max 500kb and 55 seconds)PARAM.SFO
- Metadata about the game as a PSF file with a category of MS
SYSTEM
BROWSER
MP_ROOT
100MNV01
- Video clips for playback in the music player - according to the PSP manual, these must be MPEG-4 (h.264/AVC MP Level 3) with a maximum bitrate of 768kbps, and named m4vnnnnn.mp4 with nnnnn being a 5-digit number - thumbnails can be optionally included with the same filename and extension of .thm
HIFI
- Used for DRM-protected ATRAC3 filesCONTROL
- Used for DRM-protected ATRAC3 filesPACKAGES
PKGxxxxx
- Containspackage.xml
, which is song information in an XML format that works similar to ID3v2 tags
DCIM
- Used by the Sony Cybershot Camera to store photos in JPEG formatMISC
- Used by the Sony Cybershot Camera, ignored by the PSP