nsd.libをMac用にコンパイルしてみる

こんにちは。

今日はnsd.libをMac用にコンパイルしてみる記事を公開してみようと思います。最新版のnsdl129(ver1.29)では対応していない方法ですので、それ以下のバージョンでご利用ください。

こちらの記事は伝説のセピアンゲーマーズというサイトやnoteなどで公開していたのですが、サイトの閉鎖などで行き場を失ったため、こちらで公開をし直すことにしました。参考になれば幸いです。

nsd.libのダウンロード

まず、nsd.lib(NES Sound Driver & Library)はこちらからDLできます。

http://shaw.la.coocan.jp/nsdl/

GitHubでの管理に切り替えたようですので、そちらからDLしてみてください。

https://github.com/Shaw02/nsdlib/releases

現在の最新バージョンは1.29となっていますが、64bit対応されているため、この方法ではMac用にコンパイルできません。1.28を例にご説明いたしますので、ご利用の際は過去バージョンの1.28をご利用ください。(*1.29以降のバージョンのコンパイルは最下部よりご覧ください)

別途テキストエディタが必要になりますのでVisual Studio Codeなどをご利用ください。

https://azure.microsoft.com/ja-jp/products/visual-studio-code/

下ごしらえ

Macにnsdl128をDLできたらzipファイルを解凍します。

nsdl128/src/nsc

画像に alt 属性が指定されていません。ファイル名: スクリーンショット-2020-12-26-13.02.34-1024x347.png

こちらのファイルまで下に降りていってmakefileというファイルに変更を加えます。

画像に alt 属性が指定されていません。ファイル名: nsdl-1024x373.png

こんな感じです。

ポイントはcp932をutf-8に書き換えるところです。

CFLAGSの行の該当箇所を書き換えてください。

また#//と打って、CXXFLAGSをコメントアウトにします。

CFLAGS		= -finput-charset=utf-8 -fexec-charset=utf-8 -O4 -Wall -I/usr/local/include -D_UNICODE
#// CXXFLAGS = -finput-charset=cp932 -fexec-charset=cp932 -O4 -Wall -I/usr/local/include -D_UNICODE

こんな感じになりますね。

Homebrewとnkf

次にHomebrewを導入します。

https://brew.sh/index_ja

こちらのサイトのソースコードをMacのターミナルにはりつけて実行してみてください。自動的にインストールがはじまります。こちらはパッケージマネージャーになりますので、何かとあると今後も便利です。

Homebrewのインストールが終わったらnetwork kanji filterをインストールします。ターミナルで

brew install nkf

と入力してインストールしましょう。

ターミナルを使って

さて、ここからはターミナルをフル活動します。よくわからない方はコードを示しますので、順番にターミナルに打ち込んで進めて行ってください。

cd nsdl128/src/nsc

cdコマンドでnsd.libのnscフォルダに移動します。

こちらで先ほど導入したnkfを実行します。コマンドは

nkf --overwrite -w -Lu *.cpp *.h makefile

こちらです。–overwrite以下はオプションですが、つけないとうまくいかないようですので、ご注意ください。

特にエラーなどがでなければ成功しているはずですので、makeします。

make 2>&1 | tee make-log

makeが通っていればコンパイルされてnscというファイルができます。

このnscファイルをbinなどに移動して、MMLをNSFファイルにコンパイルすることが可能です。

MMLのコンパイル

コンパイルの際のコマンドは

./nsc MML

この形式です。.mmlの形式のみコンパイル可能で、ファイルの拡張子は入力しないほうが良いようです。

NSFプレーヤー

生成したNSFの再生にはプレーヤーが必要になります。

入門用としてはZXTuneが良いように思われました。

https://zxtune.bitbucket.io/

本格的な制作にはosoumenさんの提供しているnsfplayjを推奨いたします。

https://github.com/osoumen/nsfplayj

以上です。

*nsdlibの最新版(1.30)をコンパイルしてみました。

NESSoundDriver&libraryをMac向けにコンパイル

4 COMMENTS

8bit音楽の作り方講座その1 | らなちゃんねる へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です