JavaScriptを有効にすると、ここにメニューを表示します。

ysflight.com

 

Free FM TOWNS Projectについて

このプロジェクトは、完全自己完結型FM TOWNSエミュレータの実現を目指しています。あるいは、将来誰かFM TOWNS互換機をFPGAとかで作ろうとかいうプロジェクトを始めたとき、フリーに使えるROMを作っておくことも目的としています。

富士通が1989年世に送り出したパソコンFM TOWNSは世界で初めてCD-ROMを標準搭載したことで、FM TOWNS用CD-ROMソフトが多数発売されました。そして、CD-ROMメディアは正しく保管すれば相当な長期間維持することができます。他のレトロPCと比べて今でもまったく問題なく実行可能なソフトのメディアが多数存在して、そしてそれを合法的に中古ソフトショップ、オークションなどを利用して購入することができます。

しかし、その実行環境は急速に失われつつあります。FM TOWNS本体、とくに内蔵CD-ROMドライブの故障が多く発生します。FM TOWNSは他社に先駆けてCD-ROMドライブを搭載してしまったもんだから、内蔵CD-ROMドライブはまったく標準規格とは違った仕様となっています。そもそも標準規格なんて存在しないときでした。そのため、内蔵CD-ROMドライブが故障すると交換用のドライブの入手はほぼ不可能、別の中古FM TOWNSから移植するしかありませんが、果たして中古を入手したとしてその内蔵CDドライブがまだ機能するのかどうか、事前に確認するのは非常に難しいです。

そこで、「UNZ」「津軽」といったエミュレータの利用が考えられますが、著作権法を厳密に解釈すると、FM TOWNS本体を所有していない場合、エミュレータ実行に必要なROMイメージを利用することは著作権法違反となります。

現行の著作権法は、著作者は守りますが著作物を守りません。著作者が門を閉ざしてしまったら、二度と誰も合法的に著作物を利用することができません。著作者は、ひとたび世に送り出したソフトウェアを取り上げる権利まで持つべきなのでしょうか?著作者は著作物を殺す権利も持つべきなのでしょうか?僕はそうは思いません。著作権法は著作物も守るべきであると考えています。古いソフトをすべて無料にしろというのではありません。古いソフトウェアも合理的な金額でユーザが引き続き利用できて、開発者もそれによって利益を得ることができるルールを決めるべきだと思っています。

FM TOWNSエミュレータの実行には、最低二種類のROMイメージが必要になります。ひとつはFMT_SYSと呼ばれる、起動にかかわるプログラムが入った領域です。このROMイメージに関しては、UNZ開発者のKasanovaさんが互換ROMを開発されて、ソースコードを含めて公開されています。Kasanovaさんが公開された最終バージョンではCD-ROMドライブからの起動しかできませんが、僕が引き継いでフロッピーディスク、ハードディスク起動にも対応しました。

もうひとつはFMT_DOSと呼ばれる、MSDOS.SYS, COMMAND.COM, MSCDEX.EXEが入った領域です。これが問題でした。とくに、Version 3.1相当のMSDOS.SYSが必要で、MicrosoftはMS-DOS V2.0まではMITライセンスで無料としてくれたのですが、3.1はいまだ無料公開されていません。また、COMMAND.COMもVersion 3.1用バージョンが必要です。

このほかに、FM TOWNSエミュレータの実行には、FMT_FNT.ROM (フォントROM), FMT_F20.ROM (20ドットフォントROM), FMT_DIC.ROM (OASYSかな漢字変換用辞書ROM)が必要ですが、pinteriorさんがFMT_FNT.ROMをパブリック・ドメインのフォントから生成するコードを作成されました。(https://github.com/pinterior/FMT_FNT.ROM/actions)。FMT_F20.ROMは初期のTOWNSにはそもそも搭載されていないため、すべて0で埋めておいても実行に問題のあるソフトはほとんどありません。FMT_DIC.ROMは実験の結果、すべて0xFFで埋めておくととりあえず平仮名とカタカナは入力できることが確認できました。

このうち、MSDOS.SYSとほぼ互換のYSDOS.SYS, COMMAND.COMとほぼ互換のYAMAND.COMの開発に成功しつつあります。まだ、未対応の機能にあたるといきなり止まってしまいますが、それでも、FM TOWNSを彩ったいくつかのゲーム、Towns OS GUIの起動までできるようになったので公開しました。

しかし、久しぶりにすごい量のアセンブリコード書いた。。。。。

ROMイメージパッケージ(2021/06/13) ROMS.zip
ソースコードなど https://github.com/captainys/TOWNSROM
パーティションをひとつ作成したハードディスクイメージ。ハードディスクイメージにインストールしてプレイしたいゲームはあるけどTownsOSが無い場合、(1)いったんゲームのCDで起動してCMOSを初期化 (2)実機救済用IPLのメニューからドライブレター割り当てをすることで使えるようになる。というか需要があったらドライブひとつだけ割り当てたCMOSもアップロードしてもいいんだけど。

津軽で動作確認

Towns System Software V1.1 L10 Fujitsu CDから起動を確認
Towns System Software V1.1 L20 Fujitsu CDから起動とハードディスクインストールを確認
Towns System Software V2.1 L20 Fujitsu CDから起動とハードディスクインストールを確認
Towns System Software V2.1 L31 Fujitsu CDから起動とハードディスクインストールを確認
Towns System Software V2.1 L51 Fujitsu CDから起動とハードディスクインストールを確認
Afterburner II SEGA/CRI プレイ開始から数ステージ動作確認
Microcosm Psygnosis 起動確認
Megamorph Psygnosis 起動確認
Fractal Engine Demo Psygnosis 最後まで動作というか起動したまま忘れてたけど1時間以上走り続けてた
Strike Commander Origin インストール、オープニングムービー、トレーニングミッション、モーリタニア遠征完了まで確認
Wing Commander Origin 起動確認
Wing Commander II Origin インストールから最初のメニューまで確認
Alone in the Dark Infograms 直接起動・HDインストールからプレイ開始まで確認
Towns OS V1.1 L10付属デモ Towns Illusion 富士通(T&Eに委託) 最後まで走る
Brandish Falcom オープニングムービーまで確認
Galaxy Force II SEGA/CRI 起動まで確認
RAYXANBER DATAWEST 起動~オートデモまで確認
Turbo Outrun SEGA/CRI 起動~オートデモまで確認
Viewpoint SNK/VING 起動~オートデモまで確認
Chase HQ TAITO/VING 起動~オートデモまで確認
Air Combat 2 Special Systemsoft 起動確認
A列車で行こう3 Artdink 起動確認
F-29 Retaliator Imagineer 起動~オートデモまで確認
機甲師団 Artdink 起動~オープニングムービーまで確認
Libble Rabble namco/電波新聞社 起動確認
Shadow of the Beast Psygnosis 起動~オープニングムービーまで確認
Advantage Tennis Infograms 起動確認
Super大戦略 Systemsoft 起動からプレイ開始まで確認
Emerald Dragon Glodia プレイ開始まで確認 (前のバージョンではCPUスピードを遅くする必要があったが2021/06/13バージョンで66MHzでも起動可能になった)
遥かなるオーガスタ T&E トーナメントモードで優勝まで確認
ImageFight IREM/VING プレイ開始まで確認
雷電伝説 SEIBU/SUCCESS/KID プレイ開始まで確認
Operation Wolf TAITO/VING プレイ開始まで確認
The New Zealand Story TAITO/VING プレイ開始まで確認
ぷよぷよ COMPILE/CRI VERY HARDモードでエンディングまで確認
F-BASIC 386 V2.1 L10 富士通 コマンドをいくつかテスト
Sky Duel Makken (フリコレ9収録) Snowy Valley完走
4D Driving Electronic Arts ゲーム開始から少し走行まで確認
Evolution SYSTEM SACOM ステージ2の途中まで確認
Dungeon Master FTL/富士通 ゲーム開始時にメニューまたはコマンドからCDDAを止める必要があるが、その後は問題なく動作。英語版・日本語版両方クリアまで確認。

動作しないまたは不完全確認済み

Dungeon Master FTL/富士通 CDDA演奏を止めないままQ:\JDATA\DUNGEON.DATをFOPENしようとして失敗してフリーズ。解析の結果、プログラムは、(1) fopen (2) CDDA演奏停止 (3) ファイル読み込みの順で処理している。明らかな順番の誤り。MSCDEXだとたまたまディレクトリがキャッシュに残っているためFOPENに成功するが、本来は失敗するべきなので動作としてはSHSUCDXの方が正しい。津軽のコマンドまたはメニューで強制的にCDDA演奏を止めるか、演奏終了を待ってダンジョンに入るとフリーズを回避できる。
Wing Commander Origin OASYSかな漢字変が不完全なため、プレイヤーの名前とコールサインの入力に制限あり。
Comments are welcome.  Send E-Mail to: 

Back to http://www.ysflight.com