ePSXe - RetroBIOS¶
Technical notes
PlayStation emulator, closed source and distributed as a binary. Five builds are read here. The desktop ones come from the download page: 2.0.18 Windows (md5 c1abd8cffcd0bc3dbd9c72b13bfc20e5, UPX packed, cited at the virtual addresses of the unpacked image), 2.0.5 Windows (bfa6eb173d9bae9b2e7983b23383c789), 2.0.5 Linux x64 (52ef10e78aeec86f84105b7b59d375ee), 2.0.5 Linux x86 (efe6c2c6303d4f7c5251166342bfb002) and 2.0.5 macOS x64 (c4ca85710fbea827da2a1ce304536973). The Linux x64 build keeps 1771 of its own functions in .dynsym although it reports as stripped, so it is cited by function name. The Android side is package com.epsxe.ePSXe, versionCode 139 versionName 2.0.15, apk md5 e18988b825f263bbc961bfbed1c4bc0b, with 2.0.6 (fce9c60c5cbc4e075cf97a587e64eb78) read alongside it; both verify against the epsxe.com signing certificate (CN=epsxeteam, serial 0x4fdaca68), every entry digest matches and none is unsigned. Two copies of 2.0.16 circulating on archive.org are repackaged, signed CN=A1 and ModYolo, and are not read here. ref: epsxe.com/download.php, com.epsxe.ePSXe META-INF/CERT.RSA
One root holds everything. On Linux and macOS it is $HOME/.epsxe, created at startup together with plugins, bios, cheats, sstates, patches, idx, config, info, covers, memcards, memcards/games, memcards/net, shaders and configs, and the process chdirs into it. On Windows it is the program directory with the same names. On Android it is a directory named epsxe at the root of shared storage, holding sstates, bios, isos, cheats, config, idx, patches, plugins, faqs, shaders, memcards and covers. Paths below are relative to that root. ref: ePSXe 2.0.5 Linux x64 create_folders 0x42a727-0x42abcf, ePSXe.java:1517, ePSXe.java:1541-1577
Exactly one BIOS file is ever loaded, and its full path is a setting, not a name the code looks for: BiosPath in $HOME/.epsxe/epsxerc on Linux and macOS, biosPref in the shared preferences on Android, both defaulting to bios/scph1001.bin below the root. load_bios opens it read only, reads one block of 0x80000 bytes into the 0x80000-byte psxBIOS object and logs " * ePSXe: PSX BIOS loaded [%s]. ". A file that will not open reaches emu_mesg_exit_error with " * !Error: PSX BIOS not found [%s]. " and the run ends. The HLE branch, taken when the BiosHLE setting is on, skips the read entirely and logs " * ePSXe: using HLE BIOS (compatibility limited)", so any one of the images below fills the slot and none of them is needed on its own. HLE arrived in 1.9.25 and savestates made under it are not interchangeable with savestates made under a real image. ref: ePSXe 2.0.5 Linux x64 load_bios 0x433540-0x433621, ePSXe 2.0.5 Linux x64 bios_name_select 0x4334c0-0x4334f2, ePSXe 2.0.5 Linux x64 write_configfiledefault 0x42ae99-0x42aeeb, ePSXeReadPreferences.java:20-30, ePSXe.java:445-453, docs/ePSXe_en.txt:260-271, docs/ePSXe_en.txt:883-888
Both consumer families carry a table of the images they recognise, and the two tables are built differently and do not hold the same set. Android ships 21 pairs of label and md5; findBios walks the tree to a depth of ten, skipping DCIM, Camera, asec, secure, dev, obb, .lfs and anything under /Android/data, keeps files whose lowercased name ends in .bin and whose length is exactly 524288, md5s each one and on a hit writes biosPref to that path and turns BiosHLE off. Windows ships 21 records of a 32-byte name and a 32-bit id, globs bios*.bin, reads each candidate whole and identifies it by a checksum of its own: over the 512 KB as big endian 16-bit words, the sum shifted left 16 bits or'd with the low 16 bits of the xor. That value is looked up only to name the image in the setup wizard. The Linux and macOS builds carry neither table. Seventeen dumps are in both tables; four are known to Android alone; two are known to Windows alone and both turn out to be dumps TOSEC marks [b]. ref: ScanBiosTask.java:28, ScanBiosTask.java:145-191, ePSXeNative.java:280, ePSXe 2.0.18 Windows 0x5c1090-0x5c1384, ePSXe 2.0.18 Windows 0x5c108c, ePSXe 2.0.18 Windows 0x42f264-0x42f2c7, ePSXe 2.0.18 Windows 0x42f4b0-0x42f568, ePSXe 2.0.18 Windows 0x42f584-0x42f5b4
No region decides which image is taken. findBios keeps the first md5 that answers anywhere in the walk, the Windows ids only pick a label to display, and the JP, US and PAL words are part of that label string. Automatic selection of a required BIOS per game existed once and was removed because it stopped Legend of Dragoon US and Wild Arms 2 US from running. ref: ScanBiosTask.java:167-171, ePSXe 2.0.18 Windows 0x42f5aa-0x42f5c2, docs/ePSXe_en.txt:1243-1244
Video, sound, cdrom and input go through the PSEmu Pro plugin interface.
init_gpu builds plugins/
Per-title files are looked up beside the running game. ISOtestsubchannel reads
patches/.txt keyed on the game code, on top of the two cheat databases
load_cheat_dynamic_database opens from cheats. Android downloads the same cheat
file from epsxe.com into cheats, reads faqs/.txt into its help viewer and
fills covers from epsxe.com.
ref: ePSXe 2.0.5 Linux x64 ISOtestsubchannel 0x46f198-0x46f263,
ePSXe 2.0.5 Linux x64 initGSCodes 0x432ea4-0x432f11,
ePSXe 2.0.5 Linux x64 load_cheat_dynamic_database 0x431bc7-0x431cac,
DownloadCheatFileTask.java:49-55, ePSXe.java:1047, ePSXe.java:1896,
ImageLoader.java:88
Shaders are directories, not single files. createProgramCustom reads
46 files | 0 required, 46 optional | 30 in repo, 16 missing | 23 with HLE fallback Categories: 23 BIOS, 23 game data
scph1000.bin optional in repo HLE fallback
SCPH-1000, DTL-H1000 (v1.0 J)
- Path:
bios/scph1000.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
239665b1a3da... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ScanBiosTask.java:162-172,ePSXe 2.0.18 Windows 0x5c10b4 - Platforms: lakka, retroarch, retrodeck, retropie, romm
- Config key:
BiosPath - Windows names this image scph1000 - JP and identifies it by id 0xb817c93d.
scph1001.bin optional in repo HLE fallback
SCPH-1001, DTL-H1201, DTL-H3001 (v2.2 12-04-95 A)
- Path:
bios/scph1001.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
924e392ed055... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.5 Linux x64 write_configfiledefault 0x42ae99,ePSXeReadPreferences.java:21,ePSXe 2.0.18 Windows 0x5c10d8 - Platforms: batocera, lakka, recalbox, retroarch, retrodeck, retropie, rocknix, romm
- Config key:
BiosPath - The name the default BiosPath and biosPref point at on every platform. Windows names it scph1001 - US (Recommended) and identifies it by id 0x4c1e4c6a.
scph1001_v20.bin optional in repo HLE fallback
DTL-H1001 (v2.0 05-07-95 A)
- Path:
bios/scph1001_v20.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
dc2b9bf8da62... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1120 - Config key:
BiosPath - Windows names this image scph1200 - JP and identifies it by id 0xdac96c37.
scph1002a.bin optional in repo HLE fallback
SCPH-1002, DTL-H1002 (v2.0 05-10-95 E)
- Path:
bios/scph1002a.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
54847e693405... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c10fc - Config key:
BiosPath - Windows names this image scph1002 - PAL and identifies it by id 0xea0b1691.
scph3000.bin optional in repo HLE fallback
SCPH-3000, DTL-H1000H (v1.1 01-22-95)
- Path:
bios/scph3000.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
849515939161... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1144 - Platforms: lakka, retroarch, retrodeck, retropie, romm
- Config key:
BiosPath - Windows names this image scph3000 - JP and identifies it by id 0x4d0889a4.
scph3500.bin optional in repo HLE fallback
SCPH-3500 (v2.1 07-17-95 J)
- Path:
bios/scph3500.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
cba733ceeff5... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1168 - Platforms: lakka, retroarch, retrodeck, retropie, romm
- Config key:
BiosPath - Windows names this image scph3500 - JP and identifies it by id 0x4dab5145.
dtlh1100.bin optional in repo HLE fallback
DTL-H1100 (v2.2 03-06-96 D)
- Path:
bios/dtlh1100.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
ca5cfc321f91... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ScanBiosTask.java:162-172 - Config key:
biosPref - Known to the Android table alone; no Windows record carries its checksum.
scph1001_v21.bin optional in repo HLE fallback
DTL-H1101 (v2.1 07-17-95 A)
- Path:
bios/scph1001_v21.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
da27e8b6dab2... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ScanBiosTask.java:162-172 - Config key:
biosPref - Known to the Android table alone; no Windows record carries its checksum.
scph1002b.bin optional in repo HLE fallback
SCPH-1002, DTL-H1102 (v2.1 07-17-95 E)
- Path:
bios/scph1002b.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
417b34706319... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ScanBiosTask.java:162-172 - Config key:
biosPref - Known to the Android table alone; no Windows record carries its checksum.
scph5000.bin optional in repo HLE fallback
SCPH-5000, DTL-H1200 (v2.2 12-04-95 J)
- Path:
bios/scph5000.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
57a06303dfa9... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ScanBiosTask.java:162-172 - Platforms: lakka, retroarch, retrodeck, retropie, romm
- Config key:
biosPref - Known to the Android table alone. The Windows record labelled scph5000 identifies a different dump.
scph1002c.bin optional in repo HLE fallback
SCPH-1002, DTL-H1202, DTL-H3002 (v2.2 12-04-95 E)
- Path:
bios/scph1002c.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
e2110b8a2b97... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1090 - Config key:
BiosPath - Windows names this image dtlh3002 - PAL and identifies it by id 0xc8ec73c0.
scph5500.bin optional in repo HLE fallback
SCPH-5500 (v3.0 09-09-96 J)
- Path:
bios/scph5500.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
8dd7d5296a65... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c11b0 - Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrodeck, retropie, rocknix, romm
- Config key:
BiosPath - Windows names this image scph5500 - JP and identifies it by id 0xa8bc4eba.
scph5501.bin optional in repo HLE fallback
SCPH-5501, SCPH-7003 (v3.0 11-18-96 A)
- Path:
bios/scph5501.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
490f666e1afb... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1288 - Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrodeck, retropie, rocknix, romm
- Config key:
BiosPath - Windows names this image scph7003 - JP and identifies it by id 0xbe16f916.
scph5502.bin optional in repo HLE fallback
SCPH-5502, SCPH-5552 (v3.0 01-06-97 E)
- Path:
bios/scph5502.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
32736f17079d... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c11f8 - Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrodeck, retropie, rocknix, romm
- Config key:
BiosPath - Windows names this image scph5552 - PAL and identifies it by id 0x19181dce.
scph7000.bin optional in repo HLE fallback
SCPH-7000, SCPH-9000 (v4.0 08-18-97 J)
- Path:
bios/scph7000.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
8e4c14f56774... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c121c - Config key:
BiosPath - Windows names this image scph7000 - JP and identifies it by id 0x43771cd1.
scph7001.bin optional in repo HLE fallback
SCPH-7001, SCPH-7501, SCPH-7503, SCPH-9001 (v4.1 12-16-97 A)
- Path:
bios/scph7001.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
1e68c231d089... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1240 - Platforms: batocera, lakka, recalbox, retroarch, retrodeck, retropie, rocknix, romm
- Config key:
BiosPath - Windows names this image scph7001 - US and identifies it by id 0x6c1ba989.
scph7002.bin optional in repo HLE fallback
SCPH-7002, SCPH-7502, SCPH-9002 (v4.1 12-16-97 E)
- Path:
bios/scph7002.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
b9d9a0286c33... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1264,ePSXe 2.0.18 Windows 0x5c12ac,ePSXe 2.0.18 Windows 0x5c12d0 - Platforms: lakka, retroarch, retrodeck, retropie, romm
- Config key:
BiosPath - The one dump three Windows records share, scph7002 - PAL, scph7502 - PAL (Recommended) and scph9002 - PAL, all carrying id 0x701bad89.
scph100.bin optional in repo HLE fallback
SCPH-100 (v4.3 03-11-00 J)
- Path:
bios/scph100.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
8abc1b549a4a... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c12f4 - Platforms: lakka, retroarch, retrodeck, retropie, romm
- Config key:
BiosPath - Windows names this image scph100 - JP and identifies it by id 0x061a33e2.
scph102_v44.bin optional in repo HLE fallback
SCPH-102 (v4.4 03-24-00 E)
- Path:
bios/scph102_v44.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
b10f5e0e3d9e... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c133c - Config key:
BiosPath - Windows names this image scph102A - PAL and identifies it by id 0x9337252b, the A and B suffixes separating the two SCPH-102 revisions.
scph101_v45.bin optional in repo HLE fallback
SCPH-101 (v4.5 05-25-00 A)
- Path:
bios/scph101_v45.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
6e3735ff4c7d... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1318 - Config key:
BiosPath - Windows names this image scph101 - US and identifies it by id 0x6e7f8edd.
scph102_v45.bin optional in repo HLE fallback
SCPH-102 (v4.5 05-25-00 E)
- Path:
bios/scph102_v45.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
de93caec13d1... - Validation: size, md5
- Source:
ScanBiosTask.java:28,ePSXe 2.0.18 Windows 0x5c1360 - Config key:
BiosPath - Windows names this image scph102B - PAL and identifies it by id 0x727f8add.
scph5000_b.bin optional in repo HLE fallback
SCPH-5000, DTL-H1200, DTL-H3000 (v2.2 12-04-95 J), bad dump
- Path:
bios/scph5000_b.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
eb201d2d9825... - Validation: size
- Source:
ePSXe 2.0.18 Windows 0x5c118c,ePSXe 2.0.18 Windows 0x42f525-0x42f568 - Config key:
BiosPath - Recognised by Windows alone, as scph5000 - JP with id 0xa63468aa. That record is pinned on a checksum, not on a hash the code spells out; the md5 here is the dump that reproduces the checksum. TOSEC tags the same dump [b].
scph5502_b.bin optional in repo HLE fallback
SCPH-5502, SCPH-5552 (v3.0 01-06-97 E), bad dump
- Path:
bios/scph5502_b.bin - System: sony-playstation
- Size: 512.0 KB
- MD5:
e56ec1b027e2... - Validation: size
- Source:
ePSXe 2.0.18 Windows 0x5c11d4,ePSXe 2.0.18 Windows 0x42f525-0x42f568 - Config key:
BiosPath - Recognised by Windows alone, as scph5502 - PAL with id 0x702fa307, resolved the same way as the SCPH-5000 bad dump above. TOSEC tags it [b].
<game>.sbi optional missing game_data
subchannel data for a libcrypt protected disc
- Path:
patches/<game>.sbi - System: sony-playstation
- Aliases:
<game>.SBI - Source:
ePSXe 2.0.5 Linux x64 ISOtestsubchannel 0x46f198-0x46f263 - Named after the running disc. The uppercase extension is tried first and the lowercase one second, and a disc with neither runs on the built-in substitute, reported as fake .sbi.
database.dat optional missing game_data
cheat code database
- Path:
cheats/database.dat - System: sony-playstation
- Source:
ePSXe 2.0.5 Linux x64 load_cheat_dynamic_database 0x431bc7-0x431bd0 - Opened read only from cheats at startup. Absent, the session runs with no library behind the per-title files.
dataconf.dat optional missing game_data
cheat database index, keyed on the disc serial
- Path:
cheats/dataconf.dat - System: sony-playstation
- Source:
ePSXe 2.0.5 Linux x64 load_cheat_dynamic_database 0x431ca7-0x431cfa - Read after database.dat into CheatDataConf, mapping serials such as SLUS_011.60 onto entries of the library.
<code>.txt optional missing game_data
cheat codes for one title
- Path:
cheats/<code>.txt - System: sony-playstation
- Source:
ePSXe 2.0.5 Linux x64 initGSCodes 0x432ea4-0x43304d,DownloadCheatFileTask.java:49-55 - Named after the disc serial and parsed as a list of hex address and value pairs under bracketed titles. Android downloads it from epsxe.com into the same directory.
gpuCore.slv optional in repo game_data
vertex stage of one GPUCORE shader effect
- Path:
shaders/<name>/gpuCore.slv - Source:
ePSXe 2.0.5 Linux x64 createProgramCustom 0x4f7d7e-0x4f7db9,DownloadShaderPluginTask.java:68-76 - One directory per effect. A stage that will not open logs the unable to read shader file message and the effect is dropped. The shaders pack on epsxe.com carries the set.
gpuCore.slf optional in repo game_data
fragment stage of one GPUCORE shader effect
- Path:
shaders/<name>/gpuCore.slf - Source:
ePSXe 2.0.5 Linux x64 createProgramCustom 0x4f7dcd-0x4f7df1,DownloadShaderPluginTask.java:69-78 - Read straight after the vertex stage from the same directory.
gpuCore.ini optional in repo game_data
parameters of one GPUCORE shader effect
- Path:
shaders/<name>/gpuCore.ini - Source:
ePSXe 2.0.5 Linux x64 readPropertiesProgramCustom 0x4f7c30,ePSXe 2.0.5 Linux x64 createProgramCustom 0x4f7f15,DownloadShaderPluginTask.java:70-80 - Read beside the two stages once they link. Not every effect in the pack ships one.
gpuPeteOGL2.slv optional in repo game_data
GLSlang vertex stage of the integrated Pete OpenGL2 plugin
- Path:
shaders/gpuPeteOGL2.slv - Source:
ePSXe 2.0.18 Windows 0x4fbd79-0x4fbd7e,ePSXe 2.0.18 Windows 0x4fb220-0x4fb263 - Resolved under the configured shader directory, defaulting to SHADERS. Selected by the GLSlang shader effect setting.
gpuPeteOGL2.slf optional in repo game_data
GLSlang fragment stage of the integrated Pete OpenGL2 plugin
- Path:
shaders/gpuPeteOGL2.slf - Source:
ePSXe 2.0.18 Windows 0x4fbe80,ePSXe 2.0.18 Windows 0x4fb220-0x4fb263 - Read from the same directory as the vertex stage.
gpuPeteOGL2.vp optional in repo game_data
ARB vertex program of the integrated Pete OpenGL2 plugin
- Path:
shaders/gpuPeteOGL2.vp - Source:
ePSXe 2.0.18 Windows 0x4faaf2,ePSXe 2.0.18 Windows 0x59f534-0x59f580 - The ARB alternative to the GLSlang pair, taken by a different value of the shader effect setting, and reporting the offset when the program fails to assemble.
gpuPeteOGL2.fp optional in repo game_data
ARB fragment program of the integrated Pete OpenGL2 plugin
- Path:
shaders/gpuPeteOGL2.fp - Source:
ePSXe 2.0.18 Windows 0x4fabbb,ePSXe 2.0.18 Windows 0x59f4c8-0x59f518 - Read alongside the vertex program.
gpuPeteOGL2_t<n>l.tga optional missing game_data
linear lookup texture of the integrated Pete OpenGL2 plugin
- Path:
shaders/gpuPeteOGL2_t<n>l.tga - Source:
ePSXe 2.0.18 Windows 0x4fb429-0x4fb433,ePSXe 2.0.18 Windows 0x59f43c - Numbered per effect and resolved from the same directory as the shader stages. One of two names formatted into the same slot, the other being the nearest flavour, picked on the remainder of the effect index.
gpuPeteOGL2_t<n>n.tga optional missing game_data
nearest lookup texture of the integrated Pete OpenGL2 plugin
- Path:
shaders/gpuPeteOGL2_t<n>n.tga - Source:
ePSXe 2.0.18 Windows 0x4fb3de,ePSXe 2.0.18 Windows 0x4fb573,ePSXe 2.0.18 Windows 0x59f424 - The alternative to the linear flavour, taken when the index divides evenly, and read again on its own further in.
gpu<name>.dll optional missing game_data
PSEmu Pro video plugin
- Path:
plugins/gpu<name>.dll - System: sony-playstation
- Aliases:
libgpu<name>.so - Source:
ePSXe 2.0.5 Linux x64 init_gpu 0x4408a1-0x440d5d,ePSXe 2.0.18 Windows 0x58aded - Named by the VideoPlugin setting, opened from plugins and bound entry point by entry point, from GPUinit and GPUopen through GPUdmaChain to GPUregisterResolutionCallback, each missing symbol logged as a dlsym error. Windows enumerates the directory on gpu*.dll. The built-in GPUCORE and the integrated Pete OpenGL2 plugin need no file.
spu<name>.dll optional missing game_data
PSEmu Pro sound plugin
- Path:
plugins/spu<name>.dll - System: sony-playstation
- Aliases:
libspu<name>.so - Source:
ePSXe 2.0.5 Linux x64 init_spu_plugins,ePSXe 2.0.5 Linux x64 write_configfiledefault 0x42ae40 - Named by the SoundPlugin setting. Windows enumerates the directory on spu*.dll. The built-in SPUCORE needs no file.
cdr<name>.dll optional missing game_data
PSEmu Pro cdrom plugin
- Path:
plugins/cdr<name>.dll - System: sony-playstation
- Aliases:
libcdr<name>.so - Source:
ePSXe 2.0.5 Linux x64 init_plugins_cdrom,ePSXe 2.0.18 Windows 0x58af0d - Enumerated on cdr*.dll and initialised through init_plugins_cdrom. Reading a disc image directly needs none.
pad<name>.dll optional missing game_data
PSEmu Pro input plugin
- Path:
plugins/pad<name>.dll - System: sony-playstation
- Aliases:
libpad<name>.so - Source:
ePSXe 2.0.5 Linux x64 LoadPadPlugins 0x51927e,ePSXe 2.0.5 Linux x64 write_configfiledefault 0x42ae57-0x42ae6e - Named by the InputPlugin and Input2Plugin settings and loaded from plugins by LoadPadPlugins. The built-in INPUTCORE needs no file.
liboglplugin2.so optional missing game_data bundled
OpenGL2 renderer of the Android build
- Path:
plugins/liboglplugin2.so - System: sony-playstation
- Source:
ePSXe.java:847-886 - Android only. Read when the renderer setting is 5: a copy found under plugins is staged into the private directory and used, otherwise the one inside the package answers and the setting falls back to the software renderer if neither is there.
libogl2extplugin.so optional missing game_data bundled
extended OpenGL2 renderer of the Android build
- Path:
plugins/libogl2extplugin.so - System: sony-playstation
- Source:
ePSXe.java:887-926 - Android only. Same override path as liboglplugin2.so, taken when the renderer setting is 4.
libopenglplugin.so optional missing game_data
external OpenGL plugin of the Android build
- System: sony-playstation
- Source:
ePSXe.java:927-966,ePSXeReadPreferences.java:32-34,ePSXe 2.0.15 libepsxe.so 0x176128,ePSXe 2.0.15 libepsxe.so 0x176160 - Android only. Named by the gpuPref setting, which points at the root of shared storage by default and is also looked for under the package library directory and the secondary card.
<code>.txt optional missing game_data
in-app guide for one title
- Path:
faqs/<code>.txt - System: sony-playstation
- Source:
ePSXe.java:1047,ePSXe.java:1857,ePSXe.java:1896 - Android only. Named after the disc serial and loaded into the help viewer as a local page; the menu entry is offered only when the file is there.
skin.png optional missing game_data
on-screen controller skin
- Source:
ePSXeReadPreferences.java:36-38,ePSXeNative.java:702 - Android only. Named by the skinPref setting, which points at the root of shared storage by default, and handed to the view as the input skin.
<hash>.jpg optional missing game_data
cover art for one title
- Path:
covers/<hash>.jpg - System: sony-playstation
- Source:
ImageLoader.java:88,ePSXe 2.0.5 Linux x64 download_covers,ePSXe 2.0.5 Linux x64 0x572ea0 - Cached under covers and fetched from epsxe.com when absent, the desktop builds falling back to a shipped na.jpg when the fetch finds nothing.
Generated on 2026-08-23T16:12:06Z