リレーから CPU へ、
できるだけ小さく
マス目の盤面にリレーと配線を置いて回路を作る。できた回路は部品として登録でき、作ったときの大きさのまま次のステージで使える。スコアは盤面の面積。小さいほどよい。
28 ステージ・インストール不要・進み具合はこのブラウザに保存
作る、登録する、次で使う
回路パズルとしては、リレー 2 種類から始まるところは nandgame と同じ。違うのは、作った部品の大きさが次のステージにそのまま効くこと。
作る
盤面にリレーと配線を置いて、テストを全部通す。この D latch は 4×3、面積 12。
登録する
通ったら部品として登録できる。大きさは作ったときのまま。名前は自分で付ける。
次で使う
次のステージで置ける。この D flip-flop は D latch 2 個と NOT 1 個、10×6 で面積 60。
同じ機能でも大きさ違いを何個でも登録できる。あとで狭いところに入れたくなったら、小さい版を作りに戻ればいい。置くときは回転も反転もできる。
スコアは面積
幅かける高さ。それだけ。速さも部品の数も数えない。
同じ回路でも、端子の向きを変えれば入るところが変わる。配線を 1 本引き回すのをやめれば 1 列詰められる。パーは参考解の面積で、下回ると実績が付く。
どれも面積 12。入る場所が違うので、同じ XOR を何通りも作って持っておける。
盤面を縮めると、空いている行や列から削られる。次に消える行と列は赤く出る。
ステージパー
NOT2
AND3
NAND6
OR6
XOR12
SR latch12
Negative (8-bit)16
Half adder30
D flip-flop60
NOT から 8 ビット CPU まで、28 ステージ
最後の 3 つで、命令を読んで動く 8 ビット CPU になる。テストは 3 本のプログラムが最後まで正しく走ること。
論理NOT・NAND・AND・OR・XOR・Selector・Switch7
加算Half adder・Full adder2
記憶SR latch・D latch・D flip-flop・1-bit register4
8 ビットNegative (8-bit)・Zero (8-bit)・Selector (8-bit)・Adder (8-bit)・Increment (8-bit)・Subtract (8-bit)・Register (8-bit)・Counter (8-bit)8
演算Logic unit (8-bit)・Arithmetic unit (8-bit)・ALU (8-bit)・Condition (8-bit)4
CPURAM (4 words)・Control unit・CPU3
要るのはブラウザだけ
インストールも登録もない。開いたら遊べる。
保存はこのブラウザの中
進み具合と作った部品はブラウザに残る。JSON で書き出して別のブラウザへ移せる。
実績は任意
game-center に記録できる。記録するかどうかは押すまで起こらない。
ソースは公開
エンジンもステージも GitHub にある。