Device / Filesystem Access
From PSPWiki
| Table of contents |
Accessing of files on UMD
via Wipeout Pure Browser
Run the following code by accessing your webserver with the Wipeout Pure Webbrowser:
<html> <head> <title>UMD</title> </head> <body background="file://disc0:/PSP_GAME/PIC1.PNG"> <img src="file://disc0:/PSP_GAME/ICON0.PNG"> </body> </html>
You might also use drive letter Z: as an alias to disc0.
Accessing of files on Memorystick
via Wipeout Pure Browser
Recent investigation shows that it's also possible to access file on memorystick:
<html> <head> <title>MS</title> </head> <body background="file://fatms0:/PSP/SAVEDATA/UCUS98612P0000/PIC1.PNG"> <img src="file://fatms0:/PSP/SAVEDATA/UCUS98612P0000/ICON0.PNG"> </body> </html>
Accessing of files on Flash
via Wipeout Pure Browser
There are two types of flash memory accessible on your PSP:
flash0: is where the system files reside
flash1: is where configurations are store. e.g. key/button-assignment and so on
Finally accessing system files and unencrypted parts of the firmware is possible:
<html> <head> <title>Flash</title> </head> <body> <a href="file://flash0:/vsh/etc/version.txt">version.txt</a><br> </body> </html>
The output for a version 1.00 PSP will look like:
release:1.00: build:228,0,3,1,0:root@psp-vsh system:17919@release_103a,0x01000300: vsh:p4029@special_day1,v9972@special_day1,20041201:
The output for a version 1.50 PSP will look like:
release:1.50: build:376,0,3,1,0:root@psp-vsh system:20182@release_150,0x01050001: vsh:p4201@release_150,v11079@release_150,20050201:
The output for a version 2.00 PSP will look like:
release:2.00: build:725,0,3,1,0:root@psp-vsh system:26084@release_200,0x02000010: vsh:p4705@release_200,v15867@release_200,20050726: target:1:WorldWide
An earlier leaked 1.00 firmware shows us:
release:1.00: build:106,1:root@psp-vsh system:16214,0x00100000: vsh:2004_1104_s16214_p3883_v8335:
See Firmware 1.00 Filelist for a complete list of files residing either in flash0 or flash1.
Other schemes for fileaccess
There are also accessible files using the scheme:
file://host0:/www/index.html
host0 only seems to be used to access a DVD drive on a development workstation.
Other schemes, yet not known how to use:
javascript: mailto: proc: fax: tel: news:
proc:// seems to be a promising candidate for further explorations as it can be used to embed streamed content like audio and video as well as commands/calls to developer-crafted functions.
proc://<function>/[options] <location> and or <file> or <http link>
Function can be one of:
atrac3_http* buttons command exists psmf_http* sound upload
command for example is being used to update game content for Wipeout Pure via
internet downloads:proc://command/http://wipeoutpurepsp.scej-online.jp/downloads/pak_gamma1/download.pspdif
Probably the downloaded content will then be executed, in this case obviously as diff.
PSP FontCache Kernel module:
host0:../../../module/libfont.prx
List of accessible devices
ms0: FAT access - Memorystick
mscm: BLOCK device - Memorystick
mscm0: ?alias for ms0?
mscmX: X = 1...9 (returns error 0x80220081)
fatms0: ?alias for ms0?
mscmhc0: ?alias for ms0?
msstor: BLOCK device - Memorystick (entire stick, including mbr+partitions)
(blocksize: 512 byte, driver: msstor.prx, sceMSstor_Driver)
msstor0: ?alias for msstor0?
msstor0p1: ?partition1 of msstor0?
umd: BLOCK device - UMD
(blocksize: 2048 byte)
umd0: ?alias for umd?
umd1: ?alias for umd?
umd00: ?alias for umd?
umd01: ?alias for umd?
umd0X: X = 2...7 (returns error 0x80010013)
umdXX: X = 8...99 (returns error 0x8001B002)
disc0: ?alias for umd?
isofs: ?alias for umd?
isofs0: ?alias for umd?
isofs1: ?alias for umd?
lflash: BLOCK device - containing four FAT12 partitions:
(blocksize: 512 byte, driver: lflash_fatfmt.prx, sceLflashFatfmt)
0x00000000...0x017FC1FF FAT flash0: size 24MB
0x01800000...0x01BFC1FF FAT flash1: size 4MB
0x01C00000...0x01CFC1FF FAT unknown: size 1MB
0x01D00000...0x01DEC1FF FAT unknown: size 1MB
lflashX: X = 0...99 ?alias for lflash?
flash0: FAT access - system data / firmware
flash1: FAT access - configuration data
flashfat: ?alias for flash0?
flashfat0: ?alias for flash0?
flashfat1: ?alias for flash1?
irda: BLOCK device - Infrared IrDA port
(blocksize: user, driver: sircs.prx, sceSIRCS_IrDA_Driver)
irdaX: X = 0...9 ?alias for irda?
host0: ?network access to development workstation?
wad: ?no idea? (appears in Wipeout Pure)
prfat: ?no idea?
prfatX: X = 0...99 ?alias for prfat?

