オレ仕様のゲーム機を作ろう(その2)

前回は,オレ仕様の概要を考え,画面タイミング試作回路を FPGA でテストするところまでやりました。

オレ仕様のゲーム機を作ろう(その1)

今回は,予定通り FPGA に,CPU と BG の回路を実装してみます。

BG の仕様

BG の仕様を決めていきますが,前回なんとなく考えたのは…

  • BG は一面でハードウェアスクロールなし。
  • 1 キャラは,8 x 8 ドットで,ライン単位に 2 色まで。
  • パレットはナシで,デジタル 8 色。

こんな感じだったのですが…,ライン単位のカラーはやめて,キャラ単位にすることにしました。

FPGA 上で動作する VHDL で作る分には,多少コードが増えるだけで,そんなに問題にはならないのですが,最終的には部品を物理配線することになるので,

  • 可能な限り,シンプルにしたい。
  • スプライト回路がある程度の規模になることが予想されるので,今のうちに回路規模(…というか面積)をケチっておきたい。
  • スプライトは単色にする予定なので,キャラ単位の色指定でも多分大丈夫でしょ…。

という理由です。MSX  から ZX Spectrum っぽくなった感じですね。

FPGA に実装

…と言うことで,Z80 CPU と,BG 画面を,FPGA に実装しました。(Z80 は,今回も T80 という IP コアを使用させていただきました)

BG のキャラは,8 x 8 ドット単位,256 種類まで定義可能で,それをネームテーブルに 1 byte で指定,同時に対応するカラーテーブルに,0 のビットと,1 のビットの色を固定 8 色の中から指定してやります。

以下は,Z80 のコードを適当に書いて,BG 画面の表示テストをした結果です。

 

 

意図した表示になっているようです…多分。

ついでに,何か動きのあるものでも表示したいな…と思いましたが,絵心がないんですよね。…と言うことで…

 

どこかで見たような気がする…のは多分気のせいです(笑)。

 

今回はここまでです。

いよいよ,次回から実際にここまでの試作回路を IC や Z80 を使って組み上げていこうと思います。VHDL で書くのと比較すると,作業ペースが大幅に落ちる見込みです(笑)…が,気長にやっていこうと思います。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA