{
  "commit": "d38cd580364b2c788e633b9e51c15e1668f726c0",
  "count": 1,
  "generated_at": "2026-11-03T13:36:34Z",
  "items": [
    {
      "id": "rpcs3",
      "profile": {
        "core_classification": "official_port",
        "core_version": "0.0.43",
        "cores": [
          "rpcs3",
          "rpcs3-sa"
        ],
        "dev_flash": {
          "bdplayer": {
            "files": [
              {
                "name": "bdp_bdmv.self",
                "purpose": "BD-MV player"
              },
              {
                "name": "bdj.self",
                "purpose": "BD-J (Java) player"
              }
            ],
            "note": "Blu-ray disc player modules",
            "path": "dev_flash/bdplayer/",
            "source_ref": "rpcs3/Crypto/key_vault.h:257-258"
          },
          "certs": {
            "note": "SSL root certificates for PSN and HTTPS connections",
            "path": "dev_flash/data/cert/",
            "source_ref": "rpcs3/Emu/Cell/Modules/cellSsl.cpp:110"
          },
          "fonts": {
            "files": [
              {
                "name": "SCE-PS3-RD-R-LATIN.TTF",
                "required": true,
                "type": "Rodin Sans Serif Regular Latin"
              },
              {
                "name": "SCE-PS3-RD-L-LATIN.TTF",
                "type": "Rodin Sans Serif Light Latin"
              },
              {
                "name": "SCE-PS3-RD-B-LATIN.TTF",
                "type": "Rodin Sans Serif Bold Latin"
              },
              {
                "name": "SCE-PS3-RD-R-LATIN2.TTF",
                "type": "Rodin Sans Serif Regular Latin2"
              },
              {
                "name": "SCE-PS3-RD-L-LATIN2.TTF",
                "type": "Rodin Sans Serif Light Latin2"
              },
              {
                "name": "SCE-PS3-RD-B-LATIN2.TTF",
                "type": "Rodin Sans Serif Bold Latin2"
              },
              {
                "name": "SCE-PS3-MT-R-LATIN.TTF",
                "type": "Matisse Serif Regular Latin"
              },
              {
                "name": "SCE-PS3-NR-R-JPN.TTF",
                "type": "NewRodin Gothic Regular Japanese"
              },
              {
                "name": "SCE-PS3-NR-L-JPN.TTF",
                "type": "NewRodin Gothic Light Japanese"
              },
              {
                "name": "SCE-PS3-NR-B-JPN.TTF",
                "type": "NewRodin Gothic Bold Japanese"
              },
              {
                "name": "SCE-PS3-YG-R-KOR.TTF",
                "type": "YD Gothic Regular Korean"
              },
              {
                "name": "SCE-PS3-SR-R-LATIN.TTF",
                "type": "Seurat Maru Gothic Regular Latin"
              },
              {
                "name": "SCE-PS3-SR-R-LATIN2.TTF",
                "type": "Seurat Maru Gothic Regular Latin2"
              },
              {
                "name": "SCE-PS3-SR-R-JPN.TTF",
                "type": "Seurat Maru Gothic Regular Japanese"
              },
              {
                "name": "SCE-PS3-VR-R-LATIN.TTF",
                "type": "VAGR Sans Serif Round Latin"
              },
              {
                "name": "SCE-PS3-VR-R-LATIN2.TTF",
                "type": "VAGR Sans Serif Round Latin2"
              },
              {
                "name": "SCE-PS3-DH-R-CGB.TTF",
                "subdir": "SONY-CC/",
                "type": "Chinese GB font"
              }
            ],
            "note": "PS3 system fonts used by cellFont API. Loaded from dev_flash/data/font/ and dev_flash/data/font/SONY-CC/ subdirectory. Games using cellFont will fail to render text without these.\n",
            "path": "dev_flash/data/font/",
            "source_ref": "rpcs3/Emu/Cell/Modules/cellFont.cpp:226-281"
          },
          "ps1emu": {
            "files": [
              {
                "name": "ps1_newemu.self",
                "purpose": "PS1 emulator binary"
              }
            ],
            "note": "PS1 Classics emulator. Booted when running PS1 game via ps1_newemu.self",
            "path": "dev_flash/ps1emu/",
            "source_ref": "rpcs3/Emu/System.cpp:2252"
          },
          "ps2emu": {
            "note": "PS2 emulator components. Only present on fat PS3 models (CECHA/B/C/E). Includes me_iso_for_ps2emu.self and sv_iso_for_ps2emu.self (since FW 3.70).\n",
            "path": "dev_flash/ps2emu/",
            "source_ref": "rpcs3/Crypto/key_vault.h:219"
          },
          "pspemu": {
            "files": [
              {
                "name": "psp_emulator.self",
                "purpose": "PSP emulator main binary"
              },
              {
                "name": "psp_translator.self",
                "purpose": "PSP translator"
              },
              {
                "name": "release/emulator_api.sprx",
                "purpose": "Emulator API"
              },
              {
                "name": "release/emulator_drm.sprx",
                "purpose": "DRM handling"
              }
            ],
            "note": "PSP emulator for PS3. Contains psp_emulator.self, psp_translator.self, and release/*.sprx",
            "path": "dev_flash/pspemu/",
            "source_ref": "rpcs3/Emu/System.cpp:2280, rpcs3/Crypto/key_vault.h:285-290"
          },
          "sys_external": {
            "critical_file": "liblv2.sprx",
            "modules": [
              "liblv2.sprx",
              "libsysmodule.sprx",
              "libfs_utility_init.sprx",
              "libadec.sprx",
              "libatrac3plus.sprx",
              "libcelp8dec.sprx",
              "libcelpdec.sprx",
              "libcelpenc.sprx",
              "libddpdec.sprx",
              "libdtslbrdec.sprx",
              "libdtsdec.sprx",
              "libdtshdcoredec.sprx",
              "libdtshddec.sprx",
              "libm2aac.sprx",
              "libm2bc.sprx",
              "libm4aac.sprx",
              "libm4aac2ch.sprx",
              "libm4aac2chmod.sprx",
              "libmp3dec.sprx",
              "libmp3sdec.sprx",
              "libmpl1dec.sprx",
              "libtrhddec.sprx",
              "libwmadec.sprx",
              "libwmaprodec.sprx",
              "libwmalslbrdec.sprx",
              "libac3dec.sprx",
              "libvdec.sprx",
              "libdmux.sprx",
              "libdmuxpamf.sprx",
              "libpamf.sprx",
              "libvpost.sprx",
              "libsail.sprx",
              "libsailrec.sprx",
              "libgcm_sys.sprx",
              "libresc.sprx",
              "libio.sprx",
              "libcamera.sprx",
              "libgem.sprx",
              "libmic.sprx",
              "libusbpspcm.sprx",
              "libusbd.sprx",
              "libnetctl.sprx",
              "librudp.sprx",
              "libssl.sprx",
              "libhttp.sprx",
              "libhttps.sprx",
              "libhttputil.sprx",
              "libsysnet.sprx",
              "libsysutil.sprx",
              "libsysutil_ap.sprx",
              "libsysutil_avc2.sprx",
              "libsysutil_avc_ext.sprx",
              "libsysutil_np_eula.sprx",
              "libaudio.sprx",
              "libvoice.sprx",
              "libavconfext.sprx",
              "libsavedata.sprx",
              "libgame.sprx",
              "libgameexec.sprx",
              "libuserinfo.sprx",
              "libosklialog.sprx",
              "libsysconf.sprx",
              "libgifdec.sprx",
              "libjpgdec.sprx",
              "libjpgenc.sprx",
              "libpngdec.sprx",
              "libpngenc.sprx",
              "libsceNp.sprx",
              "libsceNp2.sprx",
              "libsceNpBasicLimited.sprx",
              "libsceNpClans.sprx",
              "libsceNpCommerce2.sprx",
              "libsceNpMatchingInt.sprx",
              "libsceNpPlus.sprx",
              "libsceNpSns.sprx",
              "libsceNpTrophy.sprx",
              "libsceNpTus.sprx",
              "libsceNpUtil.sprx",
              "libfont.sprx",
              "libfontFT.sprx",
              "libfreetype2.sprx",
              "librtc.sprx",
              "librtcalarm.sprx",
              "libl10n.sprx",
              "libkey2char.sprx",
              "libimejp.sprx",
              "libcrosscontroller.sprx",
              "libfiber.sprx",
              "libspurs_jq.sprx",
              "libspudll.sprx",
              "libmixer.sprx",
              "libsnd3.sprx",
              "libsynth2.sprx",
              "libovis.sprx",
              "libprint.sprx",
              "librec.sprx",
              "libremoteplay.sprx",
              "libscreenshot.sprx",
              "libsearch.sprx",
              "libmusic.sprx",
              "libmusicdecode.sprx",
              "libmusicexport.sprx",
              "libphoto.sprx",
              "libphotoexport.sprx",
              "libphotoimportutil.sprx",
              "libvideo.sprx",
              "libvideoplayer.sprx",
              "libvideoupload.sprx",
              "libnetaoi.sprx",
              "libpesmutility.sprx",
              "libbgdl.sprx",
              "libsubdisplay.sprx",
              "libdtcpiputility.sprx",
              "libsheap.sprx",
              "libsync2.sprx",
              "libminisSavedata.sprx",
              "libauthdialogutility.sprx",
              "libcrashdump.sprx",
              "liblv2dbg.sprx"
            ],
            "note": "Primary firmware module directory. Contains decrypted .sprx modules loaded by liblv2.sprx at boot. RPCS3 can run these via LLE (low-level emulation) or fall back to HLE (high-level emulation) per module. liblv2.sprx is the kernel loader.\n",
            "path": "dev_flash/sys/external/",
            "source_ref": "rpcs3/Emu/Cell/PPUModule.cpp:2674"
          },
          "sys_internal": {
            "note": "Internal system modules, e.g. libfs_utility_init.sprx",
            "path": "dev_flash/sys/internal/",
            "source_ref": "rpcs3/Emu/Cell/lv2/sys_prx.cpp:33"
          },
          "vsh": {
            "files": [
              {
                "path": "vsh/module/vsh.self",
                "purpose": "XMB main executable",
                "required_for": "Boot VSH / XrossMediaBar"
              },
              {
                "path": "vsh/etc/version.txt",
                "purpose": "Firmware version string"
              },
              {
                "path": "vsh/module/eseibrd.sprx",
                "purpose": "System module (precompiled at boot)"
              },
              {
                "path": "vsh/module/msmw2.sprx",
                "purpose": "Media streaming"
              },
              {
                "path": "vsh/resource/explore/user/*.png",
                "purpose": "User avatar icons (000.png - 025.png)"
              },
              {
                "path": "vsh/resource/explore/icon/icon_home.png",
                "purpose": "Home icon for game list"
              }
            ],
            "note": "PS3 XMB interface. vsh.self is the main executable, booted via 'Boot VSH' menu.",
            "path": "dev_flash/vsh/",
            "source_ref": "rpcs3/rpcs3qt/main_window.cpp:277, rpcs3/rpcs3qt/main_window.cpp:676"
          }
        },
        "dev_flash2": {
          "device": "CELL_FS_IOS:BUILTIN_FLSH2",
          "filesystem": "CELL_FS_FAT",
          "note": "Second flash partition, used for additional system data",
          "path": "dev_flash2/",
          "source_ref": "rpcs3/Emu/Cell/lv2/sys_fs.cpp:30"
        },
        "dev_flash3": {
          "device": "CELL_FS_IOS:BUILTIN_FLSH3",
          "filesystem": "CELL_FS_FAT",
          "note": "Third flash partition",
          "path": "dev_flash3/",
          "source_ref": "rpcs3/Emu/Cell/lv2/sys_fs.cpp:29"
        },
        "display_name": "Sony - PlayStation 3 (RPCS3)",
        "emulator": "RPCS3",
        "files": [
          {
            "name": "PS3UPDAT.PUP",
            "note": "PUP firmware package. Validated via SCEUF magic + HMAC-SHA1 per entry. Extracted to dev_flash/ at install time.",
            "required": true,
            "source_ref": "rpcs3/Loader/PUP.cpp:23-77",
            "storage": "large_file"
          }
        ],
        "notes": "RPCS3 requires the official PS3 firmware (PS3UPDAT.PUP) from Sony. The PUP file is\na signed update package containing multiple TAR archives prefixed with \"dev_flash_\".\nDuring installation, RPCS3 extracts these TARs into the dev_flash/ directory structure.\n\nThe most critical component is dev_flash/sys/external/liblv2.sprx - without it, no\nPS3 game can boot. RPCS3 checks for its presence and shows a firmware install prompt\nif missing.\n\nMost sys/external modules can run in either LLE (real firmware code) or HLE (RPCS3\nreimplementation) mode. By default, liblv2.sprx loads libsysmodule.sprx which chains\nall other modules. Users can toggle individual modules between LLE/HLE.\n\nThe dev_flash/ structure mirrors the real PS3 NAND layout:\n- sys/external/  : Loadable firmware PRX modules\n- sys/internal/  : Internal system modules\n- vsh/           : Visual Shell (XMB interface)\n- data/font/     : System TTF fonts (16+ files)\n- data/cert/     : SSL certificates\n- ps1emu/        : PS1 backward compat emulator\n- ps2emu/        : PS2 backward compat emulator (fat models only)\n- pspemu/        : PSP emulator\n- bdplayer/      : Blu-ray disc player\n\nFirmware versions follow the X.XX format (e.g. 4.90). RPCS3 reads the version from\ndev_flash/vsh/etc/version.txt at startup.\n",
        "profiled_date": "2026-03-30",
        "source": "https://github.com/RPCS3/rpcs3",
        "source_commit": "c365ea76a552961ff078ea1a46da9d4b07729674",
        "systems": [
          "sony-playstation-3"
        ],
        "type": "standalone",
        "upstream": "https://github.com/RPCS3/rpcs3",
        "version_basis": {
          "format": "{1}.{2}.{3}",
          "kind": "file",
          "path": "rpcs3/rpcs3_version.cpp",
          "pattern": "utils::version version\\{\\s*(\\d+),\\s*(\\d+),\\s*(\\d+),"
        }
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
