あとパターン2で「ここに入ってしまう」に遷移するのはごくごく自然な動作です。とくにおかしくもありません。 というのはパターン2の呼び出し側のLOOPを終えた後は、その下のWHILEに入るからです。 なんとなくDEF呼び出しの感覚がGOTOに近いのかと思いましたが、DEF呼びだしはどちらかというとGOSUBに近いです。なので呼び出したら、DEFが終わったら呼び出した後に戻ってきますし、そう考えればパターン2もとくにおかしな動作ではありません。 ただ上記の理由もあって、今のプログラムはちょっとゴチャゴチャしてる印象はありますね。