ファミコンエミュレータ作りたい(調査)
ファミコンエミュレータ作るのすごいなあぁぁぁ!!!
rustファミコンエミュ進捗です(すごくうれしいhttps://t.co/VvBct6k8EX pic.twitter.com/fdJ1xN1JUL
— kamiya (@kamiya_owl) September 9, 2019
が,知識がまったくない.CPUの命令の実装とかよくわからん.いつかの自分のためにリンクをまとめとく.
調べたもの
kamiyaowl.github.io rust (さっきの人)
yuiki.hatenablog.jp Kotlin
qiita.com Javascriptの方のまとめ
sairoutine.hatenablog.com 別の方のjs実装
nesdev.com ここにすべてがあるらしい
hp.vector.co.jp テスト用のROMなど
gikofami.fc2web.com ファミコンプログラミングのこと
medium.com 雰囲気がわかる
yizhang82.dev
概要と進め方
方針
記事によると
- CPUから始める
- NES ROMのサポートを追加
- PPUを実装
- スクロールのない簡単なゲームに挑戦(Donkey Kong/Popeye/balloon fight)
- スクロールの追加
- Yスクロールのあるゲームに挑戦(Ice Climer)
- スーパーマリオに挑戦
- APUサポートを追加
- mapoer を追加
- エミュレートがtricky なゲーム
- 機能拡充(デバッガ,セーブ/ロード,チートetc)
多くの人が7. スーパーマリオに挑戦をゴールにおいてるみたいなので,ここを目指そう.
うまく行かないとき
絶対詰まりまくって死ぬので…
- ログを使う.
- デバッガサポートのある既成のエミュレータと比較する.
- 時間があれば,自分でデバッガを作る
最後に
いつかやろう(いつやるんだろう…)