SFC ファイル形式とは?
.sfcファイルは、スーパーファミコン(SNESとも呼ばれる)ゲームコンソールに関連付けられています。.sfcファイルには、カセットデータの生バイナリダンプであるゲームROMイメージが保存されています。.sfc ROMファイルは、デスクトップPCやモバイルデバイスで利用可能なSNESエミュレータを使用して開くこともできます。拡張子名は、ハードウェアの日本およびアジアでのブランド名である「スーパーファミコン(Super Famicom)」の略です。
慣例として、.sfcは「ヘッダーなし」(クリーン)のROMダンプに好まれる拡張子であり、密接に関連する.smc拡張子は、1990年代のカセットコピー機デバイスから引き継がれた512バイトのコピー機ヘッダーを保持していることがよくあります。基盤となるROMデータはどちらの場合も同一であり、最新のエミュレータはどちらのフォーマットも自動検出します。拡張子間の名前変更は通常、問題なく機能します。この区別は、主に特定のレイアウトを期待する古いツールを使用する場合に重要になります。
各ROMには、アドレス空間の先頭付近(LoROMの場合はオフセット0x7FC0、HiROMの場合は0xFFC0)に埋め込まれたSNES内部ヘッダーが含まれており、ASCII形式のゲームタイトル、メモリマッピングモード、ROMおよびRAMサイズ、リージョンコード、16ビットのチェックサムが保存されています。ファイルサイズは通常256 KBから約6 MBの範囲です。セーブデータは.sfcファイル内ではなく、付随する.srmファイルに個別に保存されます。
法的な側面について
エミュレータの合法性は微妙な問題です。エミュレータソフトウェア自体は、独自のコードをコピーせずにハードウェアの動作を複製するため、ほとんどの管轄区域で広く合法と見なされています。ROMファイルは別の問題であり、著作権で保護されたソフトウェアのコピーです。ROMのダウンロードを提供する一部のウェブサイトでは、ダウンロードから24時間または48時間以内にROMを削除する必要があるとユーザーに警告していますが、この主張には主要な管轄区域の著作権法において認められた根拠はありません。オリジナルのカセットを所有していても、サードパーティのソースからそのROMをダウンロードする権利が自動的に付与されるわけではありません。
セキュリティと安全性
リスク: MEDIUMROMデータはエミュレータ内でのみ実行される不活性なゲームコードですが、2つの現実的な懸念があります。法的側面:所有していないゲームのROMをダウンロードすることは、ほとんどの国で著作権侵害です。合法的な道は、自分のカセットをダンプするか、自作ソフトをプレイすることです。ソースの安全性:「ROMサイト」には広告、偽のダウンロードボタン、マルウェアが仕込まれていることが多く、古いエミュレータ(特にZSNES)には解析の脆弱性があります。最新で正確なエミュレータ(Snes9x, RetroArch, bsnes)を使用し、怪しいダウンロードポータルは避けてください。
形式の詳細
概要SFC ファイルを開くプログラム
技術的詳細
詳細仕様| フォーマットタイプ | 生バイナリカセットROMダンプ(フラットファイル、コンテナやラッパーなし) |
| CPU / バイト順 | WDC 65C816 (16ビット); リトルエンディアン |
| メモリマッピングモード | LoROM, HiROM, ExHiROM - 内部ヘッダーのオフセットとアドレスデコードを決定 |
| 内部ヘッダーオフセット | 0x7FC0 (LoROM) または 0xFFC0 (HiROM) - ASCII形式のゲームタイトル、マッパータイプ、ROM/RAMサイズ、リージョンコード、チェックサムを含む |
| マジックシグネチャ | なし - 固定のマジックバイトはありません。マッパーに依存するオフセットにある内部ヘッダーを解析することで識別されます |
| コピー機ヘッダー | 慣例により不在(クリーン / ヘッダーなしダンプ)。関連する.smcフォーマットは、512バイトのコピー機ヘッダーを先頭に付加していることが多い |
| チェックサム | すべてのROMバイトの16ビット合計とそのビット反転。内部ヘッダーに保存(LoROMレイアウトではバイト 0x7FDE-0x7FE1) |
| 典型的なファイルサイズ | 256 KB - 6 MB。クリーンなダンプの場合、32 KBの2のべき乗倍である必要があります(48 Mbit / 6 MBのStar Oceanが最大の公式カセットです) |
| コプロセッサタイプ | SA-1, SuperFX / SuperFX2, DSP-1/2/3/4, S-DD1, SPC7110 - 内部ヘッダーでフラグ立てされます。エミュレータはROMを実行するためにコプロセッサをエミュレートする必要があります |
| セーブデータ | バッテリーバックアップされたSRAMは、ROMと同じ場所にある付随する.srmファイルに保存されます。`.sfc`ファイル自体には埋め込まれません |
| リージョンコード | 内部ヘッダー内の1バイト(0x00 = 日本, 0x01 = 北米, 0x02 = 欧州/PALなど) |
| MIMEタイプ | application/octet-stream |
| 配布フォーマット | 通常、ダウンロード用にZIPアーカイブ内で圧縮されています。`.sfc`ファイル自体は非圧縮の生バイナリです |
| 互換性 | 同じROMデータを持つ.smcと機能的に同一です。最新のエミュレータはどちらも自動検出し、拡張子間の名前変更は一般的に安全です |
| プラットフォームサポート | OSによるネイティブサポートはありません。Windows、macOS、Linux、Android、iOSのSNESエミュレータ(Snes9x, bsnes/ares, RetroArch, OpenEmu, Delta)でのみ開かれます |
| リリース日 | early-mid 1990s (cartridge-copier / emulator era) |
| 仕様書 | snes.nesdev.org |
SFC の変換
コミュニティ Q&A
ユーザーからの質問よくある質問
SFCファイルを再生するにはどうすればよいですか?
.sfcをロードするだけで、エミュレータがヘッダーを自動的に処理します。.sfcと.smcの違いは何ですか?
.sfcはクリーン(ヘッダーなし)のダンプであり、.smcは512バイトのコピー機ヘッダーを保持していることが多いですが、拡張子は互換性があり、最新のエミュレータはどちらも読み取ることができます。通常、一方を他方に名前変更するだけで済みます。SFCファイルはWindowsのシステムファイルチェッカーファイルですか?
.sfc拡張子はスーパーファミコン(SNES)のゲームROMです。Windowsのシステムファイルチェッカーはコマンド(sfc /scannow)であり、.sfcファイルではありません。SFC ROMがロードされないのはなぜですか?
SFC ROMをダウンロードすることは合法ですか?
セーブデータはどこに保存されますか?
.sfc ROM内部ではなく、別の.srmファイル(およびエミュレータのステートセーブファイル)に保存されます。