LoginSignup
4
5

More than 3 years have passed since last update.

オープンソースのファミコンエミュ。コードリーディング

Posted at

オープンソースのファミコンエミュ。コードリーディング

概要

タイトルどおりのことをチャレンジしようとしたけど
2019/10/18現在。結果的には挫折している。
したがって、本記事は執筆時点ではただのリンク集的なものとなっている。

経緯

久々にソースコードリーディングしようと思って
適切なオープンソースソフトウェアを探していた。

どちらかというと、低い層のプログラム(OSやドライバ)のが良い。
x86のエミュレータであるQEMUを考えていたが、コード量膨大なので
僕らのファミコンであれば、もう少しお手軽なのでは?
と安易に考えただけであった。

言語的には、C/C++ が良かったが、いざ探してみると
C#の実装のものや、今回の調べ物で初めて知ったrustなる言語による実装もあった。

コードリーディングするにしても、実際にビルド&動作させながら行いたいので
まずはビルドなのだが、どれもそれでつまづいた。
時間かけて、調査、試行錯誤すれば乗り越えられそうだが
当面やりたいのは、動かしながらコードリーディングだったので
QEMUを対象にすることとした。(これは別記事とする。)

オープンソースのファミコンエミュレータ

実際にソースコードダウンロード→ビルドまでチャレンジしてみたのが以下の4つ
どれも特徴があって面白い

My Nes
My NesはC#で書かれたポータブルでオープンソースのNES/ファミコンエミュレータ

NESTOPIA
C++で実装。オープンソースで開発されている、最も完成度が高いといわれるファミコンエミュ。

VirtuaNES
C++で実装。国産のファミコンエミュ。

rustynes
Rust/WebAssemblyで作られたファミコンエミュレータ

参考記事リンク

以下もとても面白い
特に、@bokuwebさんのHelloWorld記事は、これを見ながら手を動かすとNESエミュレータそのものが目的であれば
かなり参考になる。

ファミコンエミュレータの創り方 - Hello, World!編 -

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

ファミコン オープンソースソフトウェアの紹介

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5