TD4の命令を実行できる自作CPU「Kageki」で「ガッテンR」もどきを作ってみた。
ガッテンR
「ガッテンR」とは、プロジェクト59 タケ様がかつて頒布していたキットである。
『ガッテンR』 ⑥ キット頒布について - プロジェクト59 : キット頒布、電子工作 『ユルハム派』
以下の仕様となっているようである。
- ボタンを押して離すと、モールス信号の「R」の音が鳴り、LEDが光る。
- 光るLEDの色は、緑と赤がボタンを押すたびに交互になる。
- スイッチを切り替えると、「R」のかわりに「FB」の音を鳴らすモードにできる。
今回の仕様
- 入力ポートの最上位ビットを「1」にして「0」にすると、出力ポートの最上位ビットにモールス信号の「R」を出力する。
- 光るLEDの切り替えは無い。
- 「FB」を出力するモードは無い。
プログラム
位置 機械語 アセンブリ言語
--------------------------------
0 00100000 WAIT1: IN A
1 00001000 ADD A, 1000
2 11100000 JNC WAIT1
3 00100000 WAIT2: IN A
4 00001000 ADD A, 1000
5 11100111 JNC SOUND
6 11110011 JMP WAIT2
7 10111000 SOUND: OUT 1000
8 10110000 OUT 0000
9 10111000 OUT 1000
A 00000000 ADD A, 0000
B 00000000 ADD A, 0000
C 10110000 OUT 0000
D 10111000 OUT 1000
E 10110000 OUT 0000
F 11110000 JMP WAIT1
実行結果
入力ポートに Pmod BTN を、出力ポートに Dice Board を接続して実行した。
- 20Hzのクロックで実行すると、ちょうどいい速さになった。※感じ方には個人差があります
- ボタンを押す時間が短いと、タイミングによって反応しないことがあった。