バッチや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とたどることができる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
----+----1----+----2----+----3----+----4----+----5----+----6----+----7-- L R1,PSAAOLD-PSA(0,0) LOAD ASCB L R1,ASCBASXB-ASCB(,R1) LOAD ASXB L R1,ASXBLWA-ASXB(,R1) LOAD LWA L R4,LWAPSCB-LWA(,R1) LOAD PSCB L R4,PSCBUPT-PSCB(,R4) LOAD UPT L R5,LWAPECT-LWA(,R1) LOAD ECT L RF,CVTPTR LOAD CVT L RF,CVTPTGT-CVT(,RF) LOAD TSO PUTGET ROUTINE ENTRY PUTGET PARM=IRBPGPB, + UPT=(4),ECT=(5), + ECB=IRBPGECB, + OUTPUT=(IRBOLD,SINGLE,MODE), + TERMPUT=(ASIS,WAIT,NOHOLD,NOBREAK), + TERMGET=(EDIT,WAIT), + ENTRY=(15),MF=(E,IRBIOPL) |