このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

M1(Appleシリコン)Macで、ファミコンソフトプログラミング。 サクッと開発環境準備編

Game

2021.03.21

この記事は最終更新日から1年以上が経過しています。

どもです。

最近、ゲーム作りたい欲も久々に湧いてきまして、いい加減Unityを始めようかと思いましたが、

ファミコンのエミュレータ作りたい事もあって、(前からやると行って未だ着手できていない。。)ファミコンのゲームが良いなと思って初めて見ました。

ファミコンのゲーム作成やエミュレータ作成に関しての情報はネットでも沢山ありますが、M1Macでの作成事例はまだ無さそうな雰囲気もあって、人柱的に靄ってみようかなと。

そもそも出来るのかと調べたら、なんかいけそうですね。

という事で、早速、開発環境作成していきましょう。

 

環境
  • Mac mini (M1, 2020)
  • Mac OS 11.2.3
  • Apple clang version 12.0.0

 

開発ツール インストール

ファミコンのゲーム作成に必要なアセンブラとエミュレータをインストールしていきます。

アセンブラとエミュレータは色々存在しますが、アセンブラには、「nesasm」エミュレータには「fceux」を使用していきます。

nesasm

nesasmは、ファミコン開発用のアセンブラとなります。こちらを使って、ファミコンソフトが実行できるnes形式ファイルの、.nes形式にアセンブルできます。

nesasm github

https://github.com/camsaul/nesasm

こちらのファイルをダウンロードします。

https://github.com/camsaul/nesasm/archive/refs/heads/master.zip

sourceフォルダに移動して、makeコマンドと、sudo make installを実行してインストールします。

 

インストール
$ cd source && make && sudo make install

エラーがなく、無事インストールできたら徐に、nesasmコマンドを実行。

$ nesasm NES Assembler (v3.1)
s/S : show segment usage
-l # : listing file output level (0-3)
-m : force macro expansion in listing
-raw : prevent adding a ROM header
-srec : create a Motorola S-record file
infile : file to be assembled

このように表示すれば成功。ふむ良いですね。

エミュレータ インストール

続いてエミュレータをインストールしていきます。

実行環境となるエミュレータですが、遊ぶだけであればなんでも良いのですが、開発となるとデバッグ機能などが備わっていると非常に便利なので、皆さん使用されている「FCEUX」をインストールしていきます。

FCEUX

公式

http://fceux.com/web/home.html

github

https://github.com/TASVideos/fceux

ダウンロード

http://fceux.com/web/download.html

Homebrew

https://formulae.brew.sh/formula/fceux

こちらは、Homebrewを使ってサクッとインストールしていきます。

Homebrewのページでも確認できるように、しっかり、Apple Siliconはオッケーマーク出てますね。

 

その他、インストールされるパッケージは、以下の様なパッケージとなっております。

  • qt@5 5.15.2
  • sdl2 2.0.14
  • cmake 3.19.7
  • pkg-config 0.29.2

それでは、brewコマンドでインストール。

$ brew install fceux

インストール終了後、パスも通ってますので、fceuxコマンドを叩きますと、

 

はい。きた。

では、「HelloWorld」を表示していきましょう。

ファミコン開発で有名なサイトの「NES研究室」さんからサンプルファイルをダウンロードします。

NES研究室

http://hp.vector.co.jp/authors/VA042397/nes/sample.html

ダウンロードすると、「HELLO, WORLD!」を表示させる実行ファイルsample1.nesがあるので、FCEUXのFileから読み込むと

 

はい。表示したぁ!

「HELLO, WORLD!」実行したらこちらのものですね。あとはひたすら作成していくのみ。

ファミコンの仕様やスペックやアセンブラなどに関しては、以下のサイトなどを参考に。

その他、色々と情報がありますので、詳細は割愛しつつ、何か作っていきたいと思います。

NES研究室

http://hp.vector.co.jp/authors/VA042397/nes/index.html

ギコ猫でもわかるファミコンプログラミング

http://gikofami.fc2web.com/

あと、ファミコン世代じゃないでファミコンのゲームなんてよく知らないわ。って方も、この辺の書籍はオススメです。

 

当時、少ないスペックで、工夫してゲームを作成していた様子がわかります。

今回はとりあえず、サクッと開発環境を用意してみました。

次回から作成していきますー。ではではぁ。

Comment

Related Article

M1Macで、PSP モンハン3 をプレイする。

2022.01.23

M1 Macで作る、ファミコンソフトプログラミング。 アセンブラでハローワールド編

2021.11.08

う、動くぞ! M1 Mac(Big Sur)で PS2ソフトを遊ぶ。PCSX2 Mac版を起動

2021.11.07

ゲオ 驚異の80%オフセール開催中! 中古ソフト大量購入!! まだ間に合う急げぇ〜!

2021.10.24

【2021】ゲオのサマーセール 980円以下のゲームソフトが半額!8月16日(月)まで。で購入したもの。

2021.08.08

M1(Appleシリコン)Macで、ファミコンソフトプログラミング。 サクッと開発環境準備編

2021.03.21

ゲオのサマーセール 980円以下のゲームソフトが半額!8月16日(日)まで。で購入したもの。

2020.08.13

Mac用 エミュレーター 「OpenEmu」が、V2.2リリース!GameCube対応して更に神アプリ進化!

2020.01.01

この時期になると、やたらレトロゲームをやりたくなるのはなんですかね?ハードオフに向かうの巻その2

2019.12.31

この時期になると、やたらレトロゲームをやりたくなるのはなんですかね?ハードオフに向かうの巻

2019.12.14

CATEGORY LIST

LATEST NEWS

【Unity x WebAssembly】UnityコンテンツをBlazorとFlutterでWebアプリとして扱う

Unity

2023.01.30

【nasne】M1 Mac Miniで、「torne® mobile」使用して、テレビ視聴。

mac

2022.12.31

2022 VIVA JS World Cup 開幕!! 〜 Vue3で作るサッカーゲーム 〜

JavaScript

2022.12.24

M1 Mac ruby rbenv install error

Ruby

2022.10.10

【Flutter】CheckboxListTileのチェックボックスをカスタマイズ

Flutter

2022.10.01

FLEXISPOT E3で作るスタンディング PCデスク

イベント

2022.09.18

NordVPNを使ってみた感想は?評判や口コミを徹底的に解説

tool

2022.07.26

Ubuntu 20.04 LTS サーバ構築 - DKIM、DMARCを設定する

ubuntu

2022.05.01

Ubuntu 20.04 LTS サーバ構築 - Postfix Let’s EncryptでTLS化

ubuntu

2022.05.01

Ubuntu 20.04 LTS サーバ構築 - Postfix SASL認証

ubuntu

2022.05.01

Ubuntu 20.04 LTS サーバ構築 - Dovecotインストール

ubuntu

2022.05.01

Ubuntu 20.04 LTS サーバ構築 - Postfixインストール

ubuntu

2022.05.01

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US