セガ ゲームギア。いわずと知れた超大人気 携帯ゲームハードでありました※。
※個人の感想です
単三電池6本で2時間も持つ長大な持続性、当時最先端のSTNカラー液晶が繰り出すぼんやりした映像、サードパーティなんぼのもんじゃいというセガによる散発的なソフト供給(後期は大幅改善)。
セガ家庭用ハードの魅力が全部詰まったゲームギア。
当時小学生だった私はそんなセガというメーカーに胸を熱くしたものです。
友達はいませんでしたが・・・。
そして昨年、唐突に胸に去来した思いが・・・
ゲームギアのプログラミングをしよう
思い立ったが吉日、人生短し! というわけでいろいろ読んでみました。
- 堀 桂太郎, 浅川 毅 『Z80アセンブラ入門』 東京電機大学出版局
頑張って全部読んでみた。すべて理解した!(死亡フラグ) - massie's programming 様
ゲームギア開発:アセンブラで開発できる「WLA-DX」を動かしてみる
WLA-DXやMr. Ultra(Gamegearguy様)の紹介でとても助かりました! - suzukiplan様
ほぼ最強の8bitゲーム機「ゲームギア」プログラミング入門
細部にわたる解説でHello Worldできました! - SMS Power! 様
Getting Started (マスターシステムの開発チュートリアル集 ※)
※ ゲームギアはマスターシステム互換なのでプログラムはだいたい共通
世界には仲魔がこんなにいるのか・・・( ゚д゚)ポカーン - Maxim’s World of Stuff 様
How To Program
懇切丁寧に解説してもらいHello Worldできました! - Internet Archive様
HardwareReferenceManual for Sega Game Gear Console
プリントアウトして首っ引きで読んでます。
さて、これらをザクっと読んだ結果・・・
うん、分かった。まったく分かんないことが分かった。俺たちは雰囲気だけでプログラミングに挑戦しようとしている。
というわけで、Visual Studio Codeでアセンブリをなんとかして書いてみようと相成りました。
最初はもちろんHello World!。
Hello World!
結論から言えば、最初suzuki plan様やMaxim's World of Stuff様の記事を読み込んでやってみました。
余裕で1日仕事だったな。素人だから。
Gearsystemというエミュレーター上ですが・・・じゃん。実機ではそのうちやります。
なにこれ楽しすぎ
昔のゲームハードは画像表示するために、ハードウェアに画像を分割したようなタイルデータを送り、色のデータ(パレットデータ)を送り、画面上の配置情報(ネームテーブル)を送り、画面を起動~みたいな処理の手順が必要です。
これがいちいち楽しい。コンピューターのチップと対話している感じが最高であります。
とりあえずHello World!ができたなら、ほかの画像表示もできるだろう。
次はなんかこう、気の利いた画像の表示だ!
セガ野郎先生の次回作にご期待ください!
How Toも書きました・・・
やり方はこちらからどうぞ。