マルチエミュレータースーパーシステム(MESS)は、MAMEコアをベースにした、さまざまなコンソールやコンピュータシステムのエミュレーターでした。かつてはスタンドアロンプログラムでしたが(現在は開発が終了)、現在はMAME(活発に開発中)に統合されています。MESSは、携帯ゲーム機やコンソールゲーム機、コンピュータプラットフォーム、電卓をエミュレートしました。このプロジェクトは正確性と移植性を重視していたため、特定のシステムに対して常に最速のエミュレーターだったわけではありません。その正確さから、自作ゲームの開発にも役立ちました。[ 3 ]
2015年4月現在、MESSは994の固有システムと合計2,106のシステムバリエーションをサポートしています。[ 4 ] MESSは1998年に初めてリリースされ、2015年まで開発が続けられました。
MAMEとMESSはかつて別々のアプリケーションでしたが、後に単一のソースリポジトリから一緒に開発されリリースされました。[ 5 ] MAMEDEVメンバーのDavid Haywoodは、MAMEとMESSの多くの機能を1つのアプリケーションに統合したUME(Universal Machine Emulator)を維持および配布しました。[ 6 ] 2015年5月27日、MESSは正式にMAMEに統合され、MAMEの一部となりました。[ 7 ]
MESSはMAMEライセンスの下で配布され、バイナリファイルとソースコードの変更の有無にかかわらず再配布は許可されていましたが、MESSの販売や商業利用は禁止されていました。 [ 8 ]このライセンスは、MESSまたは派生作品が配布される際に、ライセンスで規定された権利と義務がそのまま維持されなければならないという点で、他のコピーレフトライセンスと似ています。
MESS ライセンスに加えて、MESS チームは次のことを要求しました。「MESS はオリジナルのアーカイブでのみ配布する必要があります。変更されたバージョンを配布したり、アーカイブからファイルを削除または追加したりすることは許可されていません。Web サイトを宣伝するためのテキスト ファイルを 1 つ追加することは、サイトがエミュレーション シーンにオリジナルの資料を提供している場合にのみ許容されます。」[ 9 ] MAME ライセンスでは、オリジナルのソースから変更されたバージョンの MESS にソース コードを含めることが要求されていますが、MESS の法的ページでは、バイナリ ファイルを配布する場合、「ソース コードも配布する必要があります。それができない場合は、ソースを入手できる場所へのポインタを提供する必要があります。」と述べています。
MESSはバイナリ形式とソースコード形式の両方で利用可能でしたが、商用利用に関する制限があるため、フリーソフトウェア財団のフリーソフトウェアの定義には当てはまりません。同様に、オープンソース定義の基準に従って評価した場合、 MESSはオープンソースソフトウェアとはみなされませんでした。
一般的に、エミュレーションにはCPUやRAMなどのハードウェアロジック、およびトーンジェネレータやビデオスプライトなどの特殊なDSPのみが含まれます。MESSエミュレータは、エミュレート対象のコンピュータのROMチップに格納されているプログラミングコードは含みません。これは著作権で保護されたソフトウェアである可能性があるためです。
エミュレート対象のハードウェアから直接ROMデータを取得することは、所有するデバイスのチップを取り外したり、チップを取り外したりする必要があるため、非常に困難で、技術的で、費用がかかり、場合によっては破壊的になる可能性もあります。取り外したICを、別のコンピュータに接続されたチップリーダーデバイスに配置します。リーダーのピンソケットは、対象の形状に合うように特別に設計されており、ROMをデータファイルに書き出すことができます。
はんだ付けされたチップを取り外すのは、再取り付けよりもはるかに簡単な場合が多く、特に非常に小さなチップの場合はなおさらです。また、ROMを読み取りのために取り外すと、問題のエミュレートされたデバイスは復元不可能なほど破壊されます。
しかし、動作するシステムがあれば、ROMデータをテープやディスクなどにダンプして、そのデータファイルをターゲットマシンに転送する方がはるかに簡単かもしれません。
2013年、インターネットアーカイブは、JSMESS( MESSエミュレータのJavaScript移植版)を介してブラウザでプレイ可能な一部のゲームの提供を開始しました。例えば、Atari 2600のゲーム「ET the Extra-Terrestrial 」などです。[ 10 ]
{{cite web}}: CS1 maint: bot: 元の URL の状態が不明です (リンク){{cite web}}: CS1 maint: bot: 元の URL の状態が不明です (リンク)