Jerremy Koot氏が開発したWindows版Snes96をGary Henderson氏がLinuxおよびDOS に移植したもの。本家がSnes97となった今もGary氏により独自に開発が進められている。Snes97 [0.0.1.5(DOS), 0.0.1.5(Windows95 with DirectX): フリーウェア]サウンドをサポートしたバージョン0.73のベータ版の話題で賑わっていたが、 7/9装いも新たにSnes9Xとして登場した。従来と同様にSunOS版とLinux版も同時に公開された。
バージョン0.10では念願のサウンドサポートがついに!!
- サウンドのサポート
- 名前の変更
- 多重SPC700エミュレーションの修正とサウンドDSPの修正(より多くのROMがサウンドを有効にして動作する)
- 同フレーム中にスプライトを再度使用するROMのための修正
- キーボードのスキャン処理を修正(『Caps-lock』や『Pause』を押した時に固まらない)
- キーやコマンドラインオプションの記録(?)
- サブスクリーンの加算/減算(マスク処理?)を使用するゲームのための処理を追加
- CPUエミュレーションのアセンブリ言語への書き換えによる速度向上
- 『Final Fantasy 3』(日本では『Final Fantasy VI』)でのマイナーバグの修正
- タイル描画処理(『9』を押したときに有効)のバグ修正(より多くのいくつかのROMがこれを有効にして動作する)
- サウンドスキップ処理の修正(以前はAPUスキップで動かなかったROMのいくつかが動く)
- ボリュームが減衰しないように、サウンドミキシング処理を改良(8bitサウンドカードで良い結果が得られる)
- ジョイステイックポーリングルーチンを呼ぶ頻度を変更(3フレーム毎から1フレームおきに)
- Pentium optimising versionのgccによる再コンパイル(ペンティアムプロセッサ使用時に数パーセントの速度向上)
- モード7でのスプライトの優先順位の修正(『Final Fantasy 3』で必要らしい)
7/20 Snes96の原作者であるJerremy Koot氏によるWindows95版がリリースされた。これによりSnes97は開発中止となり、Snes9Xに統合された形となった。
7/31 DOS版のバージョン0.12がリリースされた。変更箇所は以下のとおり。
8/16 DOS版のバージョン0.13がリリースされた。変更箇所は以下のとおり。
- ゲームと音声を一定の速度に保つための自動フレーム調整(Bloodlustのアイディア)
- スナップショットファイルでのサウンドの状態の保存および復元
- Pro Action Reply, Game GenieおよびGold Fingerのcheat コードのサポート
- コマンドラインのスイッチのロングネーム形式の追加
- サウンドありの時にいくつかのゲームで問題を起こす、"内部的な"速度向上のためのhackを止めるオプションの追加
- リアルタイムに2つのCPU間でサウンドデータをスプールするROMに対応するためのサウンドコードの書き直し
- MS-DOS版でのメモリロック問題の修正
- 2,3のサウンド修正
- タイルベースの再描画コードの速度向上
8/17 DOS版のバージョン0.131がリリースされた。変更箇所は以下のとおり。
- SPCおよびサウンド生成ルーチンのバグ修正
- タイマールーチンを少し速く
- スクリーンモードの修正とより速い新しいスクリーンモード(-m 3)の追加
- 走査線のサポート
- より速いパレットの更新
- DOS版は現在 Chad Kitching氏によって管理
- SRAM、8bitサウンドおよび -m 3のバグ修正
- PGCC 0725の代わりに0628で再コンパイル
- MrGrim氏のタイマーコードへの置き換え
- -m 3への走査線モードの追加
- F2/F3キーを押した後の正しいパレットの復元
MODE7の機能の多くをサポートしている。ウィンドウ処理も再現。ESNES [(DOS): フリーウェア]
Windows95版はDirectXを使用し、DOS版とほぼ同等の速度で動作する。 Windows95版、DOS版ともに付加機能としてcheat機能を実装。
PowerMacintoshへの移植が開始され、4/16にリリースされた。また、この移植により別のSNESエミュレータプロジェクトVSWC(Virtual Super Wild Card)との統合が決定された。
4/19にリリースされたニューバージョンは、 スコープ処理、モザイク処理およびクリップウィンドウを見事に再現している。 また、BG回転時の重ね合わせ等も修正されているようだ。
最新バージョンであるバージョン0.1.5は若干の速度改善と細かなバグが修正されている のみであり、前バージョンとの大きな違いはない。Snes96とSnes97は統合される方向にあり、 Snes96をベースにSnes97の機能を追加していく考えのようだ。 (Emu News Serviceの SNES 96/97 Interview with Jeremy Koot by Eric Linenberg は必読。)
LordESNES氏により短期間で精力的に開発され、一気にSNESエミュレータの頂点に躍り出た。 それまでネックとなっていたMode7の回転、拡大縮小を初めてエミュレートした功績は大きい。NLKSNES [0.1(d)(DOS): フリーウェア]
Ishmair氏の加入により、ついにサウンドもエミュレートされた。 Ishmair氏はこれまでにZ80エンジンや、System16エミュレータの サウンド部分(YM2151/Z80)等を開発している。8/5 バージョン0.14aがリリースされた。
Ishmair氏によって進められていたSPC700のエミュレーションおよびアセンブリ言語による65816エミュレーションが実装されている。これまですべてC言語で書かれていたため、CPUエミュレーションのアセンブリ言語化により速度向上を図っている。描画エンジンをtile-to-tileにすると非常に高速に動作するが、モード7のエミュレートができない。line-to-lineにすることでモード7のエミュレートも可能。
- Ishmair氏がESNESプロジェクトに加入
- SPC700エミュレータの追加
- デジタルサウンドプロセッサの部分的なエミュレート
- 65816エミュレータのアセンブリ言語による書き直し
- コア部分の速度改善
- line-to-lineおよびtile-to-tile(速い)の2つの描画エンジン(-gfx x)
- Game Genieのコードをサポート
- 二人同時プレイのサポート
- キー設定プログラム(-KEY)
- 設定ファイル(esnes.cfg)
- 6ボタンジョイスティックのサポート(-joy6)
- グラフィックの重ね合わせのバグの修正
スペインのNerlaska Softwareによって開発されたSNESエミュレータ。SNES Professional [0.08b(DOS): フリーウェア]
CPUエミュレーションおよび描画エンジンはアセンブリ言語で書かれ、 MODE7のエミュレーションも実装されている。
作者曰く世界最速のSNESエミュレータ。 バージョン0.01がリリースされた当初はその速さに驚かされたが、現在では飛び抜けた存在ではなくなっている。
久しぶりのリリースとなったバージョン0.1(d)での新規機能は以下のとおり。筆者の環境ではなぜかHDMAおよびMode7がエミュレートされなかった。
- CPUバグの修正
- HiROMのサポート
- line per lineをサポートした新グラフィックエンジン
- スプライトクリッピングの修正
- HiROMサポートのためのCPUコア部分の書き直し
- Mode7でのバグ修正
DOSアプリケーションであるが、Windows95ライクなGUIを持つ。ジョイスティックもサポートしている。SNEeSe [(DOS): フリーウェア]
ESNESの作者LordESNESの助けによりMODE7を一部サポートし、急速にESNESをはじめとする他のSNESエミュレータに追いついた。 バージョン0.09bではウィンドウ処理およびHDMAのエミュレーションが実装される予定 であった。
Paradox TeamはSNES Professionalの開発を中止し、Snes97 の開発に加わった。
Savoury SnaX氏によるSNESエミュレータ。SNESLight [(DOS): フリーウェア]
7/8 Demonstrationが公開された。Yoshi氏によるDEMO(TEST.SMC)が添付されている。
最初はC++で開発し、徐々にアセンブリ言語(MACRASMを使用)に書き換えていく計画のようだ。8/11 Demonstrationがアップデートされた。今回で5回目のリリースとなる。 このバージョンでの変更点は以下のとおり。
現在実装されている機能は以下のとおり。
- 256x256のSNESの画面全体が表示可能。このためにいくらかのrowが表示されない。
- スプライトの256bitテーブルの修正により、ほとんどのROMでスプライトが正しく動作する。
- Implemented slightly different screen rendering code.
- モード1のバックグラウンドのプライオリティの改善。
- PONGのようなROMが異常な速度で動作するのを防ぐために、VBlankステータスフラグをcycle countを基準とする。
- 64x64タイルモードの実装。
- ROM情報表示とPAL/NTSCの自動検出の追加。
- キー1-5によるバックグラウンドとスプライトのトグル。
- DMAオペレーション2の変更とDMAオペレーション4の追加。
Demonstration(3)からは商用カートリッジも動作する。
- 65C816のopcode(252/256)の実装
- SRAMを含めたLo-ROMのメモリマッピング
- 8チャンネルすべてにおけるDMAオペレーション0,1,2および4
- 画面モード0,1,2,3および4、タイルフリッピングとパレットマッピング
- NMI割り込み
- 以下のようなキーボード操作
カーソルキー - ジョイパッドの方向 Q,W - L と R ボタン N,M - SELECT と START A,S - Y と X ボタン Z,X - B と A ボタン ESC - エミュレーションの終了 1-4 - バックグラウンド1-4の表示/非表示 5 - スプライトの表示/非表示- ジョイパッド1のみキーボードへマップ(ジョイスティックはまだ)
- パレット、スクロールレジスタ、分割とmultiplyおよび16*8 multiplyのような多くのハードウェアレジスタ
- 8x8,16x16,32x32,64x64のスプライトの実装(初期段階のためおそらく正しくない)
- スクリーンサイズ32x32,64x32,32x64および64x64のサポート
- 標準VGAモードでSNESのスクリーン全体が表示できるようにsquashingコピールーチンを追加(modex等をサポートするまでの一時的な処置)
- 1-4キーによるバックグラウンド、5キーによるスプライトの非表示が可能(トグル)
Albert Lloyd Sawyers, Jr氏によって開発されているSNESエミュレータ。!SNES! [v0.01(DOS, Windows95): ?]8/17 Demo #1 がリリースされた。
- C言語による65C816のインストラクションセット
- パレット、ブライトネス、BG画面の描画などのグラフィック機能(モード0,1,2および3)
- スクリーンタイルのマッピングモード32x32,64x32,32x64,64x64(スクロールも)
- DMAチャンネル0-7
- APUによる処理の簡易的なスキップ
- ジョイスティック1
- NMI(ほとんど完璧)
- HiROMの実装(バギー)
SimNESのAndy Simpson氏が開発中のSNESエミュレータ。GrimSNES [-(DOS): ?]
開発の初期段階であるため実行速度は実機の10〜50%と非常に遅いが、 すでにMODE7のエフェクトを部分的にサポートしているようだ。
残念ながら6/18開発を中止したようだ。
5/27にMrGrim氏を中心として開発を開始した。pir8SNES [-(DOS): ?]
現在CPU 65C816のエミュレーション部分をアセンブリ言語で開発中。8/5 開発を中止し、Snes9Xの開発に加わることに。
ホームページは現在Snes9X for DOSのページになっている。
正式名称がpir8SNESに決定され、iRoN gHosT氏をはじめとする5人により開発が始まった。BagiSNES [-(DOS): ?]
Baromus氏とGiardante氏によるプロジェクト。
現在はまだデザインとリサーチの段階である。
7/7ホームページが消えた。