odanny がんばる

//TODO: たまに何か書こう

ファミコンエミュレータ作りたい(調査)

ファミコンエミュレータ作るのすごいなあぁぁぁ!!!

が,知識がまったくない.CPUの命令の実装とかよくわからん.いつかの自分のためにリンクをまとめとく.

調べたもの

kamiyaowl.github.io rust (さっきの人)

yuiki.hatenablog.jp Kotlin

blog.bokuweb.me Javascript

qiita.com Javascriptの方のまとめ

sairoutine.hatenablog.com 別の方のjs実装

github.com java実装

pgate1.at-ninja.jp FPGA実装

nesdev.com ここにすべてがあるらしい

hp.vector.co.jp テスト用のROMなど

gikofami.fc2web.com ファミコンプログラミングのこと

medium.com 雰囲気がわかる

yizhang82.dev 概要と進め方

方針

記事によると

  1. CPUから始める
  2. NES ROMのサポートを追加
  3. PPUを実装
  4. スクロールのない簡単なゲームに挑戦(Donkey Kong/Popeye/balloon fight)
  5. スクロールの追加
  6. Yスクロールのあるゲームに挑戦(Ice Climer)
  7. スーパーマリオに挑戦
  8. APUサポートを追加
  9. mapoer を追加
  10. エミュレートがtricky なゲーム
  11. 機能拡充(デバッガ,セーブ/ロード,チートetc)

多くの人が7. スーパーマリオに挑戦をゴールにおいてるみたいなので,ここを目指そう.

うまく行かないとき

絶対詰まりまくって死ぬので…

  • ログを使う.
  • デバッガサポートのある既成のエミュレータと比較する.
  • 時間があれば,自分でデバッガを作る

www.mesen.ca

最後に

いつかやろう(いつやるんだろう…)