Mac OS X+PC-9801エミュレーターでFM音源ツール『みゅあっぷ98』を動かしてみました

こんにちは。

今年は年明けからデジゲー博の準備で超絶テンパっていましたが、とりあえずデジゲー博は終わりました。成功したかどうかはさておいて・・・。

ちょっと趣味の世界に帰ってきました。

MacでFM音源が聞きたい・・・

アラフォープログラマーにとって、PC-8801mkII SR や PC-9801UV などに搭載されていた FM音源は、ファミコンやMSXの8ビット音源と双璧を成す魂の音源です(少なくとも自分には)。自分は大学生くらいのとき、PC-9801DA のFM音源にこころ奪われていました。

最近(といっても5〜10年前からすでに)は昔のPCをソフトウェア的に再現する「エミュレーター」の実用的なものがいくつかあるので、ディスクイメージさえあれば現物に近い音を、Mac や Windows PC で再現できます。いい時代ですね・・・。

というわけで、いま自分が保有している MacBook Pro に、昔自分が使用していた PC-9801 の環境を再現し、FM音源(っぽい音)を鳴らしてみましたので、やったことをまとめてみました。

試した環境

本体: MacBook Pro (13インチ, Late 2013)
OS: Mac OS X 10.11.2 (El Capitan)
CPU: Intel Core i5 2.4GHz
メモリ: 8 GB

また、下記作業中にやむを得ずブートキャンプで起動した Windows 8.1 を使用した部分があります。無念。一度インストールしてしまえば Windows は必要ありません。

Neko Project II Mac OS X 版の導入手順

Neko Project II (for Mac OS X) のダウンロード

以下のページから PC-9801エミュレータである Neko Project II のMac OS X 版がダウンロードできます。

Neko Project II
http://www.yui.ne.jp/np2/

Screen Shot 2016-02-03 at 5.35.49 PM

ダウンロードした ZIP ファイルを解凍しておきます。

Screen Shot 2016-02-03 at 5.42.27 PM

SDL (Simple DirectMedia Layer) のインストール

SDL (Simple DirectMedia Layer) はオープンソースのクロスプラットフォームマルチメディアライブラリです。これの恩恵で、Neko Project II も Windows/Mac OS/Linux など様々なOS上で動作します。Neko Project II は SDL2 を使用しているようなので、以下の場所からバージョン2.x をダウンロードし、Mac にインストールしておきます。

Simple DirectMedia Layer
https://www.libsdl.org/download-2.0.php

MS-DOSシステムディスク (FD または HDD) イメージの入手

方法1 フロッピーディスクドライブを持つ PC と MS-DOSシステムディスクを使用する

フロッピーディスクドライブを持つPCと、読み込み可能な MS-DOSシステムディスクをお持ちの方は、この方法がいろいろと安全です。

ディスクイメージの作り方はこのページに書かれています。

簡単な導入方法 / ディスクイメージ
http://www.retropc.net/yui/np2help/how2use2.html

作成した *.d88 ファイルは np2sdl.app と同じディレクトリに置くとわかりやすいです。

ここでは msdos.d88 という名前にします。

方法2 フリーの互換DOSを使用する

MS-DOS互換のフリーのDOS(FreeDOS(98)など) がいくつか存在します。それを利用したディスクイメージを公開されている方がいるので、それを使ってもうまくいくかもしれません。

その他の方法

その他の方法は権利的に問題ありそうなので、ここでの説明は省かせていただきます。(^^;

ホストPC上のファイル(20年前のバックアップ)を含んだHDDディスクイメージの作成

ここで、HDDディスクイメージを作成し、そこに昔使用していた環境のバックアップをコピーします。

なんとか Mac OS X 上でいろいろやってみたのですが、どうもうまくいきませんでした。おそらく、Neko Project II の Mac OS X 版のビルドは、ディスク周りの幾つかの機能が正常に動作しないようです。

しかたなく、ディスクイメージ作成ツールとして、Windows版の Neko Project II を使いました。やはりこの辺は Windows が強いです・・・。

Neko Project II (for WinNT) のダウンロード

さきほどのページから Neko Project II の Windows 版をダウンロードします。

Neko Project II
http://www.yui.ne.jp/np2/

Screen Shot 2016-02-04 at 2.49.53 PM

ダウンロードしたファイルを解凍します。

空のHDDイメージファイル作成

np2nt.exe を起動します。システムディスクがないと怒られますが、無視してください。

メニューから “Emulate” → “NewDisk…” を選び、HDDディスクイメージファイルを作成します。ここでは SASI の拡張子が hdi のフォーマットを選びました。サイズは20MBくらいで。

名前はここでは newdisk.hdi にしました。

その後エミュレータのメニューから、

  • FDD1: msdos.d88
  • Harddisk SASI1: newdisk.hdi

にそれぞれ割り当て、エミュレータをリブートします。リブートは メニューの “Emulate” -> “Reset” から行えます。

首尾よく FDD1 (Aドライブ) の MS-DOS が起動したら、newdisk.hdi をフォーマットしてください。システムを転送し、起動可能にしておくと便利です。

ここでは、MS-DOS 5.0 の format コマンドを使いました。

ss10

ホストOSからHDDイメージファイルへのファイル転送

フォーマットが完了したら、再度エミュレーターをリブートします。仮想ハードディスクが Cドライブとして認識できたら、ここにホストOS上の、エミュレーターで実行したいプログラムなどをコピーします。

np2tool.zip を解凍し、中の np2tool.d88 を np2nt.exe と同じディレクトリにコピーしておきます。

これをエミュレータのメニューから、

  • FDD2: np2tool.d88

に割り当てます。

ここで一度 np2nt.exe を閉じます。すると “font.tmp” と “np2nt.ini” というファイルが生成されているはずです。

このうち np2nt.ini を編集し、以下の2行を追加します。

  • hdrvroot=c:\My  (※元ファイルが置いてあるホストOS上のディレクトリ)
  • hdrv_acc=3

ss1

なお、 もう1つのファイル font.tmp は後ほど使います。

再度 np2nt.exe を起動したら、FDD2(Bドライブ) の np2tool.d88 に含まれている “hostdrv” コマンドを実行します。この hostdrv コマンドは、エミュレーターからホストOS上のディスクが見えるようになる魔法のコマンドです。ここではドライブD を指定します。

ss8

コマンドが成功すれば、指定したドライブ名で、さきほど np2nt.init で指定したホストOS上のディレクトリ (上記の例では C:\My) が、エミュレーター内のMS-DOS からアクセスできるようになります。すごい!

ss9

ここで見えているファイルを、先ほど作成した newdisk.hdi が割り当てられた仮想 HDD にコピーします。

コピーは XCOPY コマンドなどを使ってもいいですし、FD コマンドとかが使えればそれでもよいです。MS-DOS スキルの見せ所です。

Windows でしかできない作業は以上ですので、Mac OS X に戻ります。

Mac OS X に戻り エミュレーター起動

Mac OS X 版の Neko Project II の、np2sdl2.app と同じディレクトリに、Windows 上で作成した以下の2ファイルをコピーします。

  • font.tmp
  • newdisk.hdi

Screen Shot 2016-02-04 at 3.44.08 PM

この状態で、ついに np2.sdl2.app を起動します。長かった・・・。

システムファイルが無いと怒られるので、メニューから(Mac 版の場合、ウインドウを1度クリックするとシステムメニューが現れます)HDD -> SASI1 に newdisk.hdi を割り当てて、再起動します。

Screen Shot 2016-02-04 at 1.05.15 PM

Screen Shot 2016-02-04 at 1.05.36 PMうまくいくと、MS-DOS が立ち上がり、さきほどコピーしておいたファイルも見えるはずです!

Screen Shot 2016-02-04 at 3.50.38 PM

自分はとりあえず往年のFM音源オーサリングツール『みゅあっぷ98』を立ち上げてみました。

起動の様子(動画)

嬉しかったので、動画を撮ってしまいました!(^^;

まとめ

  • PC-9801 エミュレータである Neko Project II の Mac OS X 版は、El Capital 上でも動作した。
  • しかし Mac OS X 版は、ディスクイメージ操作関連がうまく動作しなかった。やむを得ず、ディスクイメージ作成の部分は Windows 版に頼らざるをえなかった。ディスクイメージは、1度作ってしまえば、Mac OS X 版上でも問題なく読み書きできた。
  • FM音源が Mac で聴けて幸せ。

PRINCIPIA PERFECTUSのプレビュー版を『デジゲー博SPECIAL in 闘会議2016』で頒布してきました!

こんにちは。

少し遅くなりましたが、出展完了報告です。

先日当ブログでもお知らせした通り、去る2016年1月30日(土)、31日(日) に幕張メッセで開催されました闘会議2016内の『デジゲー博SPECIAL in 闘会議2016』に出展してまいりました。

通常のデジゲー博より時間が長めで2日間開催と、少々きついスケジュールでしたが、なんとか無事に終了しました。

ブースの様子

配置は A-02ab という激戦区でした。

degiga

音楽担当の椎葉大翼さんと接客中!

(写真はありませんが椎葉さん不在の時間帯に手伝っていただいた囚人へのペルエムフルさん、ありがとうございました!)

DSC00306-

先日のブログで告知した通りPRINCIPIA PERFECTUS (プリンキピア・ペルフェクトゥス)プレビュー版を500円にて販売させていただきました。

写真を撮ってくれたナナゼロハチさん、ありがとうございました!

頒布実績

頒布物がどれくらい頒布できたか書いておきます。2日間トータルの数字です。

PRINCIPIA PERFECTUS プレビュー版(シリアルコード付き)[新作]

48枚

PRINCIPIA PERFECTUS サウンドトラックCD

7枚

缶バッチ

30個くらい?(数えてない)

フライヤー

50枚くらい?(数えてない)

正直、完成していないバージョンを「プレビュー版」と称して販売してよいものか、かなり悩みました。しかしシリアルコードをつけ、正式版販売開始時に、プレビュー版を買っていただいた方にはその金額分割引サービスを行うことにすれば自然に販売できるのではとの結論に至って実施してみました。

写真 2016-02-01 15 14 37
手作り感はんぱないシリアルコード

実際「プレビュー版」と聞くとちょっとためらわれていた方も、後日割引特典をつける旨を説明したところ、買っていただけたパターンも何回かありました。前日徹夜でシリアルコード作成したかいがありました・・・。

購入していただいた方、もらってくれた方、ありがとうございました!

出展効果

2スペースx2日間の出展で、サークル参加料2万4千円だったので、頒布物の原価を考えると黒字ではありません。(^^;

しかし一緒に出展されていたクリエイターの方々room6 さん、ヌンさん、bluffmanさん、ナナゼロハチさん、ピースさん、HobbyAppTokyo さん、なかじまさん、カミオリさん)やブースに来ていただいた方々じぇふさん、Zabosamaさん、オーヤマさん、うに++さん、Popさん、魔王さまの配下A&Bさん、ち→Pさん、あきこまさん、ノベルスフィアさん、ゲームキャストさん、ミスターXさんと交流できたのが非常に有意義でした。ありがとうございました!

あとオーヤマさんにアイロンビーズでニュートンなどの登場人物をドットで作っていただきました。ありがとうございました!ブースで飾りました!

gepAz3ga

 

あと「闘会議の萎えラジ」というネット放送で紹介されたようです。教えていただいた M8 さん、ありがとうございました!

MacBook で試遊できるようにしていたのですが、試遊した直後にプレビュー版を購入してくれた方が何名もいらっしゃったのが非常にうれしかったです。

結論として、この場で収益をあげようとすると難しいと思いますが、宣伝効果は絶対にあったと思いますし、今後の活動の幅が間違いなく広がったと思います!

今後の活動予定

PRINCIPIA PERFECTUS の開発状況ですが、ゲーム自体は今月中くらいに完成できると思われます。それに合わせて現在リリース方法を検討中です。どのような形でリリースできるか今月中くらいに見通しをお知らせできればいいなと思っていますので、ご期待ください!