LoveGame
日本語

ガイド

shadPS4 のファームウェアモジュール(sys_modules)とは?LLE・HLE、ゲーム形式、アップデート・DLC の置き場所

公開 更新 情報確認日 2026-11-0110 分で読めます

ポイント

  • shadPS4 の sys_modules フォルダーに入れるのは PS4 システムの個別モジュール(libSceNgs2.sprx や libSceFont.sprx などの .sprx ファイル)で、ファームウェア全体ではありません。README には対応モジュールが34個載っています。
  • HLE はエミュがシステムライブラリを自前で再実装する方式、LLE は PS4 本来のモジュールをそのまま読み込む方式です。shadPS4 はほとんどを HLE で動かし、sys_modules にあるモジュールだけ LLE に切り替えます。
  • v0.8.0(2025年4月)以降の shadPS4 は PKG をインストールできず、展開済みのゲームフォルダーだけを読みます。フォルダーには eboot.bin と sce_sys/param.sfo が必要です。
  • アップデートはゲームフォルダーの隣に「フォルダー名-UPDATE」か「-patch」として置き、DLC は user/addcont の下にゲームと同じ名前のサブフォルダーで置きます。
  • PS5 エミュは方式がそれぞれ違い、KytyPS5 は外部のシステムモジュールを「不要で、対応予定もない」としています。
目次
  1. shadPS4 が使うもの
  2. HLE と LLE:エミュは PS4 のシステムライブラリをどう扱うか
  3. sys_modules に対応しているモジュール
  4. PS4 のファームウェア全体が要らない理由
  5. ゲームの形式:PKG・展開済みフォルダー・eboot.bin
  6. アップデートと DLC の置き場所
  7. トロフィー
  8. PS5 エミュでも必要?
  9. 関連ガイド

shadPS4 が言う「ファームウェアモジュール」とは、sys_modules フォルダーに入れる PS4 システムの個別モジュールファイル(.sprx)のことで、libSceNgs2.sprx(音声)や libSceFont.sprx(フォント)などがあります。PS4 のファームウェア全体ではありません。 shadPS4 はシステム機能のほとんどを自前で再実装(HLE)していて、sys_modules にあるモジュールは直接読み込んで(LLE)、再実装がまだ不十分な部分を補います。ゲーム本体は eboot.bin と sce_sys/param.sfo が入った展開済みのフォルダーで、v0.8.0 以降は PKG をインストールできません。アップデートと DLC にもそれぞれ決まった置き場所があり、以下で順に説明します。

内容は shadPS4 v0.21.0(2026-10-30)で確認しています。

shadPS4 が使うもの

もの中身置き場所(初期設定)必要?
ゲームフォルダー展開済みの PS4 ゲーム。eboot.bin・sce_sys/param.sfo を含むどこでも可。ランチャーでゲームフォルダーとして追加必須
システムモジュール(.sprx)PS4 システムの個別ライブラリuser/sys_modules/README では正しく動かすのに必要とされる。ないと一部のゲームで不具合
フォントPS4 のシステムフォントuser/fonts/ の font・font2一部のゲーム
アップデートゲームの更新データゲームフォルダーの隣の <フォルダー名>-UPDATEゲームによる
DLC追加コンテンツuser/addcont/<ゲーム番号>/ゲームによる
シェーダーキャッシュエミュが自動生成user/cache/<ゲーム番号>自動

user フォルダーの場所:shadPS4 本体の隣に user フォルダーがあればそれを使います(ポータブルモード)。なければ Windows は %APPDATA%\shadPS4、macOS は ~/Library/Application Support/shadPS4、Linux は ~/.local/share/shadPS4 です。設定ファイルは v0.16.0 から config.json(以前は config.toml。起動時に移行を案内されます)。

HLE と LLE:エミュは PS4 のシステムライブラリをどう扱うか

PS4 のゲームは描画、音声、コントローラー、動画のデコード、文字の描画などで、システムのライブラリを絶えず呼び出します。エミュはそのライブラリもゲームに「提供」しなければなりません。方法は2つあり、shadPS4 の公式 wiki は次のように定義しています。

HLE(ハイレベルエミュレーション)LLE(ローレベルエミュレーション)
定義元のモジュールをエミュ側で再実装して提供本体のファームウェアファイルを直接使う
長所本体のファイルが不要。一般に速く、PC 向けに最適化できる実機と同じ動作。誰も再実装していない機能も動く
短所未実装の関数はエラーになるか飛ばされるモジュールファイルが必要。この方式で読めるのは一部のモジュールだけ

shadPS4 は HLE が基本です。カーネル(libkernel)、GPU ドライバー(GnmDriver)、映像出力(VideoOut)、コントローラー(Pad)など約80のシステムライブラリはエミュの開発チームが書いています。HLE がまだ不完全な一部のライブラリ(主に音声デコード、動画再生、フォント、JSON・XML の解析など)については、LLE で本物のモジュールを読み込めるようになっています。

読み込みのルールは単純です。sys_modules にそのモジュールがあれば読み込み、なければ HLE 版がある場合は HLE に切り替え(ログに「switching to HLE」)、HLE もなければ何もしません(ログに「No HLE available」)。 この場合、音が出ない、字幕が出ない、落ちる、ある画面で止まる、といった症状が出ることがあります。

また、sys_modules/<ゲーム番号>/ というサブフォルダーに入れたモジュールはそのゲームでだけ使われるので、タイトル別の対処ができます。sys_modules の場所は設定で変えられます。

sys_modules に対応しているモジュール

shadPS4 の README(2026-11-01)に載っている34個を、名前からおおまかに分類しました。

分類モジュール
音声libSceAt9Enc・libSceAudiodec・libSceAudiodecCpu・libSceAudiodecCpuDdp・libSceAudiodecCpuDtsHdLbr・libSceAudiodecCpuHevag・libSceAudiodecCpuM4aac・libSceNgs2
動画再生libSceAvPlayer・libSceAvPlayerStreaming・libSceBeisobmf・libSceBemp2sys
フォントlibSceFont・libSceFontFt・libSceFreeTypeOl・libSceFreeTypeOptOl・libSceFreeTypeOt・libSceWkFontConfig
画像libSceJpegDec・libSceJpegEnc・libScePngEnc
データ形式libSceJson・libSceJson2・libSceXml・libSceCesCs(文字コード)
システムほかlibSceLibcInternal・libSceUlt・libSceRtc・libSceRudp・libScePsmKitSystem・libSceSystemGesture・libSceDepth・libScePadTracker・libSceMoveTracker

拡張子はすべて .sprx です。名前を見れば担当がわかります。オープニングムービーは AvPlayer、効果音や BGM は Ngs2 と Audiodec 系、文字表示は Font・FreeType 系です。そのため、モジュールが足りないときの症状も、音が出ない、ムービーが真っ黒、文字が表示されない、といった形で出やすくなります。

PS4 のファームウェア全体が要らない理由

PS4 のシステムアップデートは PS4UPDAT.PUP という1つのファイルで、OS 全体が入っています。shadPS4 は「ほとんどを再実装し、足りない部分を個別モジュールで補う」方式なので、システム全体は読み込まず、使うのは上の数十個のモジュールとフォントだけです。

逆の方式をとる PS4 エミュもあります。Obliteration は本物の PS4 システムソフトを動かすことを目指していて、Emulation General Wiki はそのため PS4 のファームウェアファイルが必要だと説明しています。ただし2026-11-01 時点では、まだどのゲームも動きません。

ゲームの形式:PKG・展開済みフォルダー・eboot.bin

名前中身shadPS4 で使える?
PKGPS4 のインストールパッケージ形式。PS Store のゲーム・アップデート・DLC はこの形式で、中身は暗号化されているv0.8.0(2025-04-23)以降は使えない。PKG 対応は削除された
展開済みのゲームフォルダーインストール後のゲームファイル(暗号化なし)使える。現在はこれが唯一の形式
eboot.binゲームのメインの実行ファイル。フォルダー直下にある必須
sce_sys/param.sfoタイトル名、Title ID、バージョンなどのメタデータ必須。shadPS4 はこれでゲームを識別する
.sprx / .prx動的ライブラリ。ゲーム同梱のものはゲームフォルダー内、システムのものは sys_modulesゲーム同梱のものは自動で読み込まれる

初期の shadPS4 は一部の PKG をインストールでき、そのためのコードも入っていましたが、2025年3月のコミットでまるごと削除され、v0.8.0 の更新内容には「Removed fpkg support」と書かれています。今の shadPS4 は暗号化されたインストールパッケージを一切扱わず、ふつうのフォルダーを読むだけです。

CUSA 番号:PS4 ゲームの Title ID で、英字4文字と数字5桁です。たとえば『Bloodborne』の欧州版 Game of the Year Edition は CUSA03173 です。PS4 では接頭辞で地域を区別しないため、同じゲームでも地域ごとに別の番号があります。本体内蔵のシステムアプリは NPXS で始まります。shadPS4 のゲームフォルダーはふつうこの番号で名前をつけ、アップデートフォルダー、シェーダーキャッシュ、タイトル別のモジュールフォルダーもこの番号で対応づけます。

アップデートと DLC の置き場所

アップデートはゲームフォルダーと同じ階層に、「ゲームフォルダー名」+ -UPDATE(-patch も可)という名前で置きます。shadPS4 は起動時に本体の上に重ねて読み込むので、ファイルを統合する必要はありません。

games/
├── CUSA00900/           ← ゲーム本体(eboot.bin、sce_sys/…)
├── CUSA00900-UPDATE/    ← アップデート
└── CUSA00900-mods/      ← 任意:Mod 用

同じルールで Mod 用の -mods フォルダーにも対応していて、アップデートを一時的に無視する設定もあります。動作報告にはテストしたゲームのバージョン(『Bloodborne』の 1.09 など)が書かれていることが多く、バージョンによって挙動が変わることがあります。

DLC は追加コンテンツ用フォルダーの中に、ゲームと同じ名前のサブフォルダーで置きます。初期設定は user/addcont/<ゲーム番号>/ で、ランチャー(QtLauncher)の設定で場所を変えられます。v0.21.0 では DLC(addcont)の読み込みが改善されました。実ファイルがなくライセンスだけの DLC(一部のアンロック系 DLC)は user/licenses に置きます。

ゲームフォルダーを複数使う場合:ランチャー設定の「Paths」ページで複数のゲームフォルダーを追加でき、sys_modules・フォント・DLC のフォルダーも個別に指定できます。

トロフィー

shadPS4 は PS4 のトロフィーに対応していて、表示するには user/keys.json にトロフィー用のキーを書き込む必要があります。なくてもゲーム自体は普通に動きます。

PS5 エミュでも必要?

  • KytyPS5 の README は、外部のローレベルエミュレーション用モジュールを「不要で、対応予定もない」としています。
  • SharpEmu の README には、著作権のあるシステムファームウェア、ゲームデータ、PlayStation 独自の素材は一切含まれていないとあります。
  • PS5 のゲームもメインの実行ファイルは eboot.bin です。2026年7月の DSOGaming の記事によると、SharpEmu は当時すでに実際のゲームの eboot.bin を読み込み、システムモジュール(PRX と sys_module)の読み込みにも対応していました。現状は PS5 エミュの現状 を見てください。

関連ガイド

よくある質問

shadPS4 の sys_modules とは何ですか?

shadPS4 のユーザーフォルダー内にあるフォルダー(user/sys_modules)で、PS4 システムの個別モジュール(.sprx)を入れる場所です。音声担当の libSceNgs2.sprx やフォント担当の libSceFont.sprx などがあり、README には対応モジュールが34個載っています。入れたモジュールは直接読み込まれ(LLE)、入っていないものはエミュ自身の再実装(HLE)が使われます。

shadPS4 に PS4 のファームウェアは必要ですか?

ファームウェア(システムアップデートファイル)全体は不要です。shadPS4 が読み込むのは sys_modules 内の個別モジュールと user/fonts 内のフォントだけです。README ではこれらのモジュールがゲームを正しく動かすのに必要とされていて、ない場合は HLE があれば自動で HLE に切り替わり、なければその機能が欠けて一部のゲームで不具合が出ます。

LLE と HLE の違いは?

shadPS4 の wiki によると、LLE(ローレベルエミュレーション)は本体のファームウェアファイルを直接使う方式、HLE(ハイレベルエミュレーション)は元のモジュールをエミュ側で再実装する方式です。HLE は本体のファイルが要らず一般に速い反面、未実装の機能は動きません。LLE は実機に近い動作になりますが、該当するモジュールファイルが必要です。

shadPS4 で PKG はインストールできますか?

今はできません。初期の shadPS4 は一部の PKG をインストールできましたが、v0.8.0(2025-04-23)で PKG 対応が削除されました。現在は eboot.bin と sce_sys/param.sfo が入った展開済みのゲームフォルダーだけを読み込みます。

CUSA とは何ですか?

CUSA で始まる番号は PS4 ゲームの Title ID で、英字4文字と数字5桁でできています(例:CUSA00900)。同じゲームでも地域ごとに別の番号があり、PS4 のシステムアプリは NPXS で始まります。shadPS4 はこの番号でゲームフォルダー、アップデートフォルダー、シェーダーキャッシュを対応づけています。

shadPS4 のアップデートと DLC はどこに置きますか?

アップデートはゲームフォルダーと同じ階層に、フォルダー名に -UPDATE(または -patch)を付けた名前で置きます。たとえば CUSA00900 と CUSA00900-UPDATE を並べると、shadPS4 が自動で重ねて読み込みます。DLC は追加コンテンツ用フォルダー(初期設定は user/addcont)の中に、ゲームと同じ名前のサブフォルダーで置きます。場所はランチャーの設定で変更できます。

出典

  1. shadPS4 公式サイト
  2. shadPS4 公式ブログ:v0.21.0 リリース(DLC の読み込み)
  3. PS4 Developer Wiki:PKG files
  4. PS4 Developer Wiki:Title ID
  5. Wikipedia:ShadPS4
  6. KytyPS5 公式サイト
  7. SharpEmu 公式サイト
  8. DSOGaming:PS5 エミュ SharpEmu が Demon's Souls リメイクを起動(2026-07)
  9. Emulation General Wiki:PlayStation 4 emulators(Obliteration は PS4 ファームウェアが必要)

関連