
NATUを作る(パート11)
HARUは失敗に終わってしまった。
だが、その悔しさをバネに、新たにNATUを作ることになった。
今回は、ROMを作っていきたいと思います。
プログラム
ROMには、命令を保存します。
なので、プログラムによって必要な容量が変わってきます。
また、命令セットの長さによっても変わってきます。
命令セットの長さ×命令行数=必要なROMの容量
といった感じになっています。
また、宝箱さん(赤石仲間)が考えた独自技術「フラグアキュ」を搭載した時に、命令数がどうなるか調べてみたいと思います。
今の所、最初の処理を除いて、塗りつぶす四角形が8行、枠だけの四角形が17行となっています。
フラグアキュを搭載することで、命令数は減らせるのか!?
出来れば、合計で16に収めたいのがホンネです、、、、(4bitで制御した方が楽だから)
それじゃぁ、プログラムを考え直したいと思います。
まずは、塗りつぶさない四角形です。
0:今のxを始まりのxにする
1:今のyを始まりのyにする
2:VRAMに書き込む
3:今のxをインクリメントして保存
4:上限のxから今のxを引く・フラグがオンだったら0にジャンプ
5:今のyから上限のyを引く・フラグがオンだったら完了
6:今のyをインクリメントして保存
7:今のxを始まりのxに戻す
8:2にジャンプ
うーん、、、同じ部分だけ見れば1行減ったけど、思ったほど劇的な差は今のところなさそうですね。
では、次は枠だけの四角形のプログラムです。
が、プログラムを見た感じ、こちらも短縮できそうなところはありません。
うーん、、、
諦めて、5bitでROM作ろうかなぁ、、
ちなみに、フラグアキュは搭載しません。
塗りつぶす四角形と、枠だけの四角形の両方を同じROMに保存しても、5bitに収まりそうなので、そこは問題ないと思います。
命令セット
それでは、命令セットを発表したいと思います。

これが、GRED II(ver.2)の命令セットです。
オペコード111は何も割り当てられていません。
これで十分だと思います。
制作
それでは、早速制作していきたいと思います。

今回は、CRED IV(バージョン3)に使われたデコーダーを使いたいと思います。
このデコーダーは、僕史上最少クラスの小型さを誇っていて、自信作です。
CRED IV(バージョン3)の時以来、一度も使っていなかったので、今回久しぶりに使いたいと思います。
あ、やっぱやめます。。。
実は、この子5Hz駆動が出来ないのです。。。
だからずっと使ってなかったんだ、、、
次回は、おとなしく別のデコーダーを使いたいと思います。
今日は、なんだか疲れちゃいました()
それでは、次回こそROMを作っていきたいと思います。
今回は、約1時間40分の作業でした。
お疲れさまでした。
それじゃあ、次回、また会いましょう