例えばスロット3にダイレクトモードかどうかを判定するCOMMON DEFのIS_DIRECTという関数を(仮に作れて)置いたとすると、ダイレクトモードで?IS_DIRECT()とすると1、プログラム中に書いてRUNすると0、となるようなものを期待しています。
ENVSTAT()は、サブインタプリタでなら、メインインタプリタがダイレクトモードで待機中かどうかを判定することができますね。ただ、メインインタプリタで実行するとダイレクトモードでもそうじゃなくても常に3(プログラム実行中)しか返してくれません。