ファミコンエミュレータ

・NesCpu.cs

ファミコンのCPUをエミュレートします。

CPU は別スレッドで動作します。PowerOn() 関数でスレッドが作られます。
1 バイトずつ NesStorage クラスから プログラム ROM を読み込み、
ファミコンの CPU の命令コードを判定して、それに合わせた動き方を
真似しながら処理していきます。

レジスタの動作はもちろん真似しますが、
実機には無い、動作クロック数をカウントすることも必要ですし、
1 秒間に動かすクロックの数等もウエイトを入れて、実機と同じようにしていきます。
IO 操作は全て NesStorage クラスを通して行われます。

CPU の命令コードを処理した後、進めたクロック数に応じて
PPU と APU を動かす関数をこのクラスから呼び出します。
PPU と APU は NesCpu のスレッド内で呼び出されることで動作します。



メンバ変数リスト

メンバ定数リスト

メンバ関数リスト(全部で 個の関数があります)