JavaScriptを有効にすると、ここにメニューを表示します。
FM Towns エミュレータ「津軽」プロジェクト

ysflight.com

FM Townsエミュレータ作ってます。多分、CPUコアとか音源コアとか出回ってるものを使えばもっと楽なのかと思いますが、それだと自分の経験値にならないので、いばらの道を覚悟でCPUコアから作り始めました。

FM Townsエミュレータとしては、Kasanovaさん作のUNZが非常に再現性が高く、最近はMAMEの再現性も上がってきたと聞きます。が、これは自分の考えですが、こういうソフトは同じような機能を持ったものが3種類ぐらいあるのが良いと思ってます。例えば、ある機能を持ったプログラムが一種類しか無いとして、あるとき突然そのプログラムが使えなくなってしまったら、手も足も出ません。とくに、最近OSを開発する企業が無責任かつ不必要かつ頻繁に後方互換性を切り捨てる悪習が蔓延しているので、使ってるプログラムがある日突然使えなくなる危険はコンピュータ史上ありえないレベルで高くなっています。

また、FM Townsのソフトを実行するだけであれば、SCSI接続のCD-ROMドライブをエミュレートする意味はまったくないですが、僕は実機を稼働状態に維持するためのドライバ YSSCSICD.SYS の開発と必要に応じたパッチ開発のためにエミュレータを使いたいという個人的な需要があるので、SCSI接続のCD-ROMドライブのサポートも予定しています。

ソースコードは既にGithub上に公開しています。

https://github.com/captainys/TOWNSEMU

実行ファイルは、とりあえず仮に↓で公開しています。GitHubでコンパイルしたやつをそのままアップロードしています。"Assets"の中からダウンロードできます。

https://github.com/captainys/TOWNSEMU/releases

なお、現状コマンドユーザーインターフェースです(^_^;)  GUIなんかつけるからプラットフォーム依存になったり、ものすごく重たいライブラリに依存したりになるんです。

とかいいながら、GUIも作ってみました。Tsugaru_GUI.exeで起動します。中からTsugaru_CUI.exeを呼ぶので同じディレクトリに両EXEが入っている必要があります。macOSの場合だと数々のセキュリティの警告を突破してAppを起動するとGUIで使えます。

WindyさんがWikiを作成してくださいました。ありがとうございます!ご利用ください。

https://wiki3.jp/fmtowns

津軽ユーザのみなさんによる動作確認リストも↓にあります。大半のFM Towns/Martyアプリケーションが実行できるようになってきました!ユーザの皆さんにテストしていただけるようになってから、互換性の向上が加速しました。協力していただいている皆さんには非常に感謝しています!

https://wiki3.jp/fmtowns/page/10

動作確認

一応、1月中旬(2020年)に開発を開始して、約4か月でAfterburner IIがプレイできるレベルになりました。まさかこんなに早くここまで実行できるようになるとは思ってませんでした。自分のプログラミングの技術を過少評価していた(自分で言うな)。

ソフトウェアタイトル 開発 確認日 確認内容
Towns OS V1.1 L10 富士通 (Unit Test) 起動、基本的な操作、デモプログラム
Towns OS V1.1 L30 富士通 (Unit Test) 起動、基本的な操作
Towns OS V2.1 L10 富士通 2020/05/23 起動、ただし -PRETEND386DX オプションが必要 (フリコレ4 DiscBで確認)
Towns OS V2.1 L10B 富士通 2020/05/23 起動、基本的な操作
Towns OS V2.1 L20 富士通 (Unit Test) 起動、基本的な操作、ハードディスクイメージへのインストール
Towns OS V2.1 L31 富士通 2020/05/23 起動、基本的な操作
Towns OS V2.1 L50 富士通 2020/05/23 起動、基本的な操作 (フリコレ11で確認)
F-BASIC 386 V2.1 L10 富士通 2020/05/23 起動、簡単なプログラムの動作
MS-DOS V3.1 富士通 (Unit Test) 起動、基本的な操作
Afterburner II SEGA/CRI 2020/05/23 ステージ8入るところまで確認 (オートデモまで定期的に動作確認)
Turbo Out Run SEGA/CRI 2020/05/23 二つ目のチェックポイント通過後ぐらいまで確認 (オートデモまで定期的に動作確認)
Galaxy Force II SEGA/CRI 2020/05/23 ステージ3(?)ぐらいまで確認 (タイトル画面まで定期的に動作確認)
Wing Commander 1 Origin 2020/05/25 VEGA星域キャンペーンクリア確認!
遥かなるオーガスタ T&E Soft 2020/06/07 デモ画面~ショット練習、ホール1クリアまで。
Alone in the Dark INFOGRAMES 2020/06/07 ゲーム開始まで
RAYXANBER DATAWEST 2020/06/12 ゲーム開始まで (オートでもまで定期的に動作確認)
Afterburner III SEGA/CRI 2020/06/12 ゲーム開始~ステージ5ぐらいまで。
Air Combat II Special System Soft 2020/06/13 ミッション開始して飛行可能なことを確認。ユーティリティメニューでキー割り当てを変更しないとデフォルトの割り当てはちょっと変。ユーティリティのユーザディスク作成を選ぶと、CDDAを止めないままCD上のファイルを読もうとして固まってしまうが、ただフォーマットしたブランクディスクをAドライブに入れておけばいいだけの模様。 (オープニングまで定期的に動作確認)
Super大戦略 System Soft 2020/06/13 ゲーム開始、昔のセーブデータから初めてIsland Campaignクリア、エンディング
VIEWPOINT SNK/VING 2020/06/17 オートデモ、ゲーム開始。 (オートデモまで定期的に動作確認)
Chase HQ TAITO/VING 2020/06/19 ゲーム開始~ステージ2クリアまで。 (オートデモまで定期的に動作確認)
A列車で行こう3 ARTDINK 2020/06/20 ユーザーディスク作成、ゲーム開始、線路敷設 (オープニングまで定期的に動作確認)
F-29 Retaliator Imagineer 2020/06/23 オートデモ、Zulu-Alertで飛行
Libble Rabble namco/電波新聞社 2020/06/30 普通にプレイ可能。
VSGP Drivers T's (フリコレ6) 2020/06/30 FD1マップ一周。ただし、タイマーを見ていないようで (逆アセンブルして結構調べたんだけど)、
12MHzぐらいまで下げないと速すぎてついていけない。実機でもそうだったっけ?
Sky Duel Makken (フリコレ9) 2020/06/30 Snowy ValleyをFINまで飛行。
僕がポリゴン3DやってたときMakkenさんのこのプログラムはインパクトでかかった。
ぷよぷよ COMPILE/CRI 2020/07/01 ステージ1
Dungeon Master FTL 2020/07/02 起動に妙に時間がかかって動かないかと思ったら単に時間がかかっていた模様。
キャラクター一名復活させて歩き回る、手裏剣を投げるなど確認。
Emerald Dragon GLODIA 2020/07/03 起動、タイトル~戦闘開始まで確認。
Advantage Tennis INFOGRAMES 2020/07/03 プレイ可能。ただし、そのままだと速すぎるのでクロックを下げた方がいい鴨。
Lemmings Imagineer 2020/07/08 マウスで操作するには -APP LEMMINGS オプション。プルプル震えるけど。
DINOSAUR Falcom 2020/07/11 起動から町を歩くとこまで確認。
Xak II MICRO CABIN 2020/07/11 データディスク作成、ゲーム開始まで確認。
Strike Commander Origin/EA Victor 2020/07/11 2020/09/06 クリア確認!要8MB RAM。-APP STRIKECOMMANDERでマウスインテグレーション。-FLIGHTMOUSEオプションで、USB接続のジョイスティックをマウス座標に変換することで操縦が楽になる。-STCMTHR gameDevId axisId オプションでスロットルレバーの位置をキーボード1,2,3,...,0に置き換えて送信する機能追加。
Strike Commander Plus Origin/EA Victor 2020/07/17 HDDインストール、トレーニングミッションで飛行。-APP STRIKECOMMANDERでマウスインテグレーション。
New Zealand Story TAITO/VING 2020/07/19 ステージ1-3までクリア確認。
Fractal Engine Demo Psygnosis/Fujitsu 2020/07/19 30分ほど流して問題無さそう。
Scavenger 4 Psygnosis 2020/02/28 ステージ1のボスにやられるところまで確認
Microcosm Psygnosis/Fujitsu 2020/07/29 最初の分岐で右に行って、雑魚戦には勝ったけど、最初のボスにやられるとこまで確認。血管とかスプライトで描画してるとは思わなかった。
Shadow of the Beast Psygnosis 2020/08/02 一応うろうろして正常だった。
Megamorph Psygnosis 2020/08/02 画面がちょっと上に寄ってるけどプレイ可能。最初のボスを倒すとこまで確認。
Vain Dream GLODIA 2020/08/02 起動、ゲーム開始、セーブ・ロード
Vain Dream II GLODIA 2020/08/02 起動、ゲーム開始、セーブ・ロード
Shadow of the Beast 2 Psygnosis 2020/08/03 起動、ゲーム開始。しかし、CD-ROMのMODE1READコマンドの強制終了のやり方はああいう書き方はどうかと思った。
Lemmings 2 Psygnosis 2020/08/04 画面がちらつくもののプレイ可能。-APP LEMMINGS2 でマウスインテグレーションも対応。
Wing Commander II Origin 2020/08/16 インストール時、実行時にメモリ5MB以上が必要。4MB以下でインストールしてしまうとオプションにram=3と設定されてしまって起動しない。ram=4以上が必要。マウスインテグレーション未対応
Towns OS V2.1 L51 on MS-DOS V6.2 Fujitsu/Microsoft 2020/08/18 動いちゃった。
Railroad Tycoon Microprose 2020/08/19 起動~練習マップ開始まで確認
FM-OASYS Fujitsu 2020/09/12 ハードディスクにインストールされたOASYSの起動に成功。まだ文書作成まで行ってないけど。大体正常に動作している模様。

 

 

今思えば当時志願してThe CockpitのFM Towns用移植をさせてもらえばよかった。当時そういう発想は無かった。ポリゴンエンジン自作したんだから頑張ればTop Landingぐらい移植できたかもしれん。

Comments are welcome.  Send E-Mail to: 

Back to http://www.ysflight.com