こんな感じでボタン1つ1つ判定すればこのままでもいけなくはないですが、めんどくさいです(´з`)
「離した瞬間のボタンだけビットが1になっている変数」を用意できれば、とても楽になります。
(つまりBUTTON(3)に相当する値ですね)
ここで、ビット演算を利用します。
もう一度、B0は前のフレームの値なので、ビットが1であるのが条件です。そしてB1はビットが0であるのが条件です。
「両方1のビット」を判定するならこのままANDを使えばいいのですが、B1は「0のビット」の時なのでそのままは使えません。
そのままは使えませんが………B1のビットが全部、0と1が逆になってくれたら使えます。
ここでNOTです。
CPUが今離したボタンのビットが1になっている値=B0 AND B1のビットの01を逆にしたもの
↓
CPUHA=(B0) AND (NOT B1)
0そうだね プレイ済み