備忘録:UPTとECTを動的に求める

バッチやTSOなど動く環境を固定しないで、呼び出された環境に応じてメッセージを出力するサブルーチンを作るような場合に使えます。TSO環境でメッセージを出力する際はTPUTが使えますが、バッチTSO環境でSYSTSPRTにメッセージを出力する為にPUTLINEを使いたい場合はUPTとECTアドレスが必要になります。

TSOの一部のAPI(PUTLINEやPUTGETなど)で必要とされるUPTとECTは、TSOコマンド・プロセッサー・プログラムであれば入口点におけるGR1が示すCPPLに入っている。しかし、汎用的なサブルーチンとして動くプログラムなどでCPPLがわからない場合(呼び出し元からCPPLを渡されない場合)、PSCBとLWAから求められる。ASCB→ASXB→LWA→PSCB→UPT、ASCB→ASXB→LWA→ECTとたどることができる。