8bitマイコンでライフゲーム用ゲーム機を作ってみた! 4KBしかないメモリをフルに使って動画再生機能まで搭載
今回紹介するのは、きっちーさんが投稿した『8bitマイコンでライフゲーム作ってみた【ゆっくり解説】』という動画です。
投稿者メッセージ(動画説明文より)
8bitマイコン(PIC16F18857)でライフゲーム(オマケつき)を作ってみました。
8bitマイコンを使って“ライフゲーム”のほか、動画再生までできてしまうゲーム機が作られました。
ライフゲームとはシュミレーションゲームの一種です。マス目に色が塗られているセルを“生”、塗られていないセルを“死”と定義します。セルの周囲に2~3マスの味方がいないと死んでしまいます。このルールに従って演算を繰り返します。
演算を繰り返すと図形はさまざまな動きを見せます。初期状態が似ていても変化はさまざま。たとえば「ソ」と「ン」でも、まったく違った挙動をします。「ン」はすぐに止まってしまうのに対して、「ソ」はダイナミックな動きを見せます。
このゲームができるマシンを電子工作します。
基板のデッドスペースになる箇所には、「LIFEGAME」と刺繍しました。
ハンダ付けで配線します。
プログラミングをします。使用したマイコンはデータメモリ4KBと8bitマイコンの中ではかなり高性能なもの。それでもデータメモリはギリギリでした。
100円ショップの箱に詰め込んで完成です。
さっそく動かしてみましょう。ランダムに図形を発生させてスタートさせます。操作は左下のジョイスティックで行っています。右下の7セグLEDが世代数です。アメーバのようなものがウネウネと動いていますが、だんだんと動くセルが減っていくようです。1750世代ほどで定常状態になりました。
microSDカードに保存されたモノクロBMP画像を表示させることもできます。画像としてライフゲームのパターンを保存しておけば、それを再現することも可能です。
ちなみに、この8bitマイコンですがライフゲームの他に、時計機能、動画再生機能も盛り込まれています。パソコンで変換したデータを再生しているそうですが、動画では初音ミクさんがネギを振っている様子も見ることができます。おまけ機能の壮大さに「ソースコードの半分くらいこれなのでは」なんてコメントも寄せられていました。
視聴者コメント
GJ
緑の7セグいいっすね
時計機能要る?って思ってたけど、コレなら必須機能ですわ
SDカード使えると夢が広がるな
文/高橋ホイコ