バーの操作はロータリーエンコーダで行うことにした。エンコーダの左側にある基板上の部品は押しボタンスイッチでゲーム開始の操作に使用する。
また、画像だけだとつまらないので音も発生するようにした。
このままだと操作しづらいので以下のように段ボール箱を筐体代わりにして組み上げた。
箱の内部はエンコーダのケーブルがとぐろを巻いているだけだ。
電源を入れると、以下の画面表示になる。
ここで押しボタンスイッチを押すとボールが下方に動き始めゲームが開始される。
プレイしている様子
プレイしてみて、自分の反射神経の衰えを実感してしまった。orz
が、中々楽しい。なんじゃこりゃーおもしろいぞー!ってな感じだ。
アーキテクチャと最上位のRTLは以下のようになっていて結構シンプルだ。
syncgenで同期信号と描画座標を生成してbreakoutモジュールに渡す。
breakoutモジュールは描画座標とボールや各ブロックの座標とを比較して衝突判定して処理をおこなっている。
回路規模はこんな感じ
タイミングもMetしている。
0 件のコメント:
コメントを投稿