この状態だと、「もしA が0以上なら」「もしBが0以上なら」「もしXが0以上なら」「もしYが0以上なら」のどれでも@HOMEに戻るので、毎ループ@HOMEに戻っています。 例えAがマイナスでも、BかXかYが0以上なら@HOMEに戻ってしまうので、表示がマイナスになることもあり得ます。 ですので、@HOMEに戻る条件を付けるのではなく、そもそもAがマイナスにならないように「Aボタンを押した瞬間、かつAが0より大きかったら、Aを1減らして@HOMEに戻る」の方が良いと思います( ´ u ` )