cdc:nos2.source:nam5871:npism
Table of Contents
NPISM
Table Of Contents
- [00013] PRGM NPISM
- [00064] PROC BLINK
- [00065] PROC OSCHAPP
- [00066] PROC XTRACE
Source Code
- NPISM.txt
- *DECK NPISM
- USETEXT NIPDEF
- USETEXT AHEADER
- USETEXT ACB
- USETEXT ACNB
- USETEXT AT
- USETEXT PT
- USETEXT PWL
- USETEXT PCNB
- USETEXT OVERLAY
- USETEXT PARAMP
- USETEXT SUPMSG
- PRGM NPISM; # PROCESS AN ILLOGICAL SM FROM APPLICATION#
- STARTIMS;
- #
- *1DC NPISM
- *
- * 1. PROC NAME AUTHOR DATE
- * NPISM J.C. LEE 80/04/01
- *
- * 2. FUNCTIONAL DESCRIPTION.
- * PROCESS AN ILLOGICAL PRU SUPERVISORY MESSAGE FROM APPLICATION
- *
- * 3. METHOD USED.
- * CHECK IF LOGICAL ERROR LIMIT FOR THE APPLICATION IS REACHED,
- * GET BUFFER AND FORMAT THE ERR/LGL/SM
- * SEND LOGICAL ERROR SUPERVISORY MESSAGE TO APPLICATION
- *
- * 4. ENTRY PARAMETERS.
- * PARAMP1 PRU WORKLIST ADDRESS
- * PARAMP2 PCBN ADDRESS
- *
- * 5. EXIT PARAMETERS.
- * PARAMP1 NONZERO SPECIFIES ERROR CODE FOR PWL
- *
- * 6. COMDECKS CALLED AND SYMPL TEXTS USED
- * ACB ACNB AHEADER AT
- * NIPDEF OPSIZE PARAMP
- * PCNB PT PWL SUPMSG
- *
- * 7. ROUTINES AND OVERLAYS CALLED
- * BLINK LINK MESSAGE TO DATA RING
- * XTRACE TRACE CALLS
- *
- * 8. DAYFILE MESSAGES.
- * NONE
- *
- * THIS PROGRAM IS A PRIMARY OVERLAY LOADED BY SUBROUTINE OVLCALL.
- * WHEN EXECUTION HAS COMPLETED, A JUMP IS MADE TO LOCATION RJMAIN
- * TO RETURN TO THE CALLING PROGRAM.
- *
- * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE PRIMARY
- *CALL OPSIZE
- *
- * THIS OVERLAY IS CALLED BY NPPWL.
- *
- #
- STOPIMS;
- #
- EXTERNAL VARIABLES
- #
- XREF
- BEGIN
- PROC BLINK; # LINK MESSAGE TO DATA RING #
- PROC OSCHAPP; # SCHEDULE APPLICATION #
- PROC XTRACE; # TRACE CALLS #
- LABEL RJMAIN; # RETURN ADDRESS #
- END
- #
- LOCAL VARIABLES
- #
- ITEM REASON; # REASON CODE FOR ERR/LGL SUP MSG #
- ITEM DEBUGINFO; # DEBUG INFORMATION FROM PIP #
- # ******************************************************************** #
- BEGIN
- CONTROL IFEQ DEBUG,1;
- XTRACE("NPISM") ;
- CONTROL FI;
- P<PWLHDR> = PARAMP1; # PWL ADDRESS #
- P<PCNB> = PARAMP2; # PCNB ADDRESS #
- P<ACNB> = PCNBACNB[0]; # ACNB ADDRESS #
- P<ACB> = ATACBA[ACNBAN[0]]; # ACB ADDRESS #
- PARAMP1 = 0; # PRESET TO NORMAL EXIT #
- #
- CHECK IF LOGICAL ERROR LIMIT IS REACHED
- #
- IF ACBERCNT[0] LQ MAXLGERR AND # LOGICAL ERROR LIMIT NOT REACH #
- NOT ATNVFN[0] # APPLICATION NOT NETOFFED YET #
- AND NOT ATNVFF[0] # APPLICATION NOT FAILED YET #
- THEN
- BEGIN
- IF ACBERCNT[0] EQ MAXLGERR
- THEN # LOGICAL ERROR LIMIT REACHED #
- REASON = RLG"IAL";
- ELSE # REASON CODE SPECIFIED BY PIP #
- REASON = PWLRC[0];
- DEBUGINFO = PWLPARAM[0]; # SAVED DEBUG INFO SUPPLIED BY PIP #
- PWLCC[0] = O"5555"; # INDICATE ERROR LOGICAL FROM PIP #
- ACBERCNT[0] = ACBERCNT[0] + 1; # INCREMENT LOGICAL ERROR COUNT #
- P<AHEADER> = P<PWLHDR> + BLKHSIZE; # REUSE PWL #
- ABHWORD[0] = 0; # CLEAR ABH WORD #
- ABHABT[0] = APPCMD; # BLOCK TYPE #
- ABHACT[0] = CT60TRANS; # CHARACTER TYPE #
- ABHTLC[0] = PWLBS[0] - BLKHSIZE - PWLHSIZE; # SM TEXT LENGTH #
- P<SUPMSG> = P<AHEADER> + ABHSIZE;
- ERRWD[0] = 0;
- PFCSFC[0] = ERRLGL; # PFC/SFC FUNCTION CODE #
- ERRRLG[0] = REASON; # REASON CODE FROM PIP #
- SPMSG1[0] = DEBUGINFO; # RESTORE DEBUG INFO FOR RBF #
- BLINK(P<PWLHDR>,P<ACB>);
- OSCHAPP(P<ACB>); # SCHEDULE APPLICATION #
- END
- GOTO RJMAIN;
- END
- TERM
cdc/nos2.source/nam5871/npism.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator