エミュレーション
えみゅれーしょん概念
あるハードウェアの動きを別の機械の上でソフトウェアとして再現する技術。古いゲーム機やPCを今の環境で動かし、失われゆく作品やソフトを保存する役割も果たす。レトロゲーム解析にとっては欠かせない土台技術。
概要
あるハードウェアの動きを別の機械の上でソフトウェアとして再現する技術。CPUの命令セットやメモリマップ、周辺機器の挙動までソフトウェアで模倣することで、実機がなくても当時のソフトを動かせるようにする。
利点と代償
実機の入手が難しくなった古いゲーム機やPCの環境を、今のハードウェア上で再現できる。ROM解析やデバッグにも使われ、実機では難しい一時停止・巻き戻し・メモリの直接観察といった操作ができる利点もある。代償は、再現の精度がハードウェアの正確な解析に依存する点で、細部の挙動まで完全に一致させるのは難しい場合がある。
実例
スーパーファミコンのエミュレータSnes9xは、公式サイトの説明によれば「3年以上のパートタイムでのハッキング・コーディング・デバッグの結果」生まれたC++製のソフトで、i386版ではCPUエミュレーションの一部にアセンブラのコアを使っている。
現在
レトロゲーム保存やROM解析・改造文化を支える基盤技術として、今なお活発に開発が続けられている分野。失われゆく古いソフトを動かせる状態で残す、保存の役割も担う。
| 分野 | ソフトウェア |
|---|---|
| 用途 | 保存・解析 |
関連項目
- Snes9xスーパーファミコンのソフトをPC上で動かすエミュレータ。正確なエミュレーションと使いやすさから定番として親しまれ、レトロゲーム保存やROM解析・デバッグの現場でも活躍する。当時の機械を今の環境で動かす橋渡し役。
- スーパーファミコン任天堂の16ビット家庭用ゲーム機。豊かな色数と拡大縮小・回転機能で当時の表現力を大きく広げた。ROMカートリッジは暗号化されておらず平文で読めたため、後年のROM解析・改造文化が育つ土壌になった。
- リバースエンジニアリング完成した製品やプログラムを分解・解析して、その仕組みや設計を読み解く行為。ソフトウェアでは逆アセンブルなどで内部の動きを追う。古いソフトやゲームの「痕跡」を読む作業の中核であり、この営みの最大の武器。