何か動かして楽しいものを!と思いついたのが、昔のゲーム機器だったのだが、情報収集してみた結果ゲームボーイが比較的資料も豊富に存在していて、これなら作れるかもと思った。(先駆者の皆様に感謝!) 今回はゲームボーイを作るに当たって、色々調べてる内容をメモ書き程度に残しておく。
ゲームボーイを作る1
ひとまず、一番最初にたどり着いたのが、以下のブログ記事。
記事の後半に使用したツールやテストROMへのリンクの紹介などを載せてくださっていた。
そこに記載のあるGitHubのリンクを見れば、実装に当たって必要な資料は揃う様に思えた。
ほぼ上記githubの情報の抜粋だが、必要そうな資料へのリンクをまとめておく。
ドキュメント類
何となくの全容を把握するに当たって、次の4つのドキュメントを確認中。
エミュ
メジャーなエミュがいくつか存在するみたいだが、多くのサイトや資料で上げられていたのがBGBというエミュレータ。デバッガやVRAMのビューワーなどもついていて、めちゃくちゃ便利そう。
Windows用のアプリだが、Linuxでもwineを入れれば動く。wineのインストールについては、以下の記事を参考にさせていただいた。
上記BGBのサイトからダウンロード&zipを展開した中にあるデータを次の様にして起動すればOK。
wine64 bgb64.exe
テスト用ROM
自作するに当たってあるととってもありがたいテスト用のROMというのが存在している。
https://gbdev.gg8.se/files/roms/blargg-gb-tests/
このサイトに公開されているテストを通すようにできれば、それなりに動作するとのことらしい(cpu_instrs
という命令のテストと、instr_timing
という動作タイミングのテストが必須っぽい)
このテストROMももちろん前述のエミュで動かせる。
なお、しばらくはあんまり体裁を気にせず、実装していくに当たって色々試したことなどを不定期に更新していこうと思っています。ご興味あればお付き合い下さいませm( )m