cdc:nos2.source:nam5871:hpnonsr
Table of Contents
HPNONSR
Table Of Contents
- [00012] PRGM HPNONSR
- [00066] PROC OMSG
- [00067] PROC RDUMP
- [00068] PROC XTRACE
Source Code
- HPNONSR.txt
- *DECK HPNONSR
- USETEXT NIPDEF
- USETEXT APPSTAT
- USETEXT AWLNTRY
- USETEXT DRHDR
- USETEXT DUMPFLG
- USETEXT FLIST
- USETEXT MSGIDX
- USETEXT NWLHEAD
- USETEXT PARAMS
- USETEXT SCPCOM
- PRGM HPNONSR; # PROCESS NONZERO SF.STAT RETURN CODE #
- STARTIMS;
- #
- *1DC HPNONSR
- *
- * 1. PROC NAME AUTHOR DATE
- * HPNONSR E. GEE 77/07/27
- *
- * 2. FUNCTIONAL DESCRIPTION.
- * PROCESS NONZERO SF.STAT RETURN CODE
- *
- * 3. METHOD USED.
- * IF BAD RETURN CODE, DUMP NIP-S FIELD LENGTH
- * IF APP IS SWAPPED OUT, REJECT NETON WITH RC=1. CREATE AWL
- * NETON ENTRY AND SCP FUNCTION TO WRITE AWL BACK AND CLEAR
- * SHORT TERM CONNECTION.
- *
- * 4. ENTRY PARAMETERS.
- * NWLADDR ADDR OF NWL (SF.STAT SCP) BUFFER
- *
- * 5. EXIT PARAMETERS.
- * PARAMS4 ADDR OF SCP FUNCTION LIST IF RETURN CODE
- * WAS APP-SWAPPED-OUT
- *
- * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
- * APPSTAT AWLNTRY DRHDR
- * FLIST NIPDEF NWLHEAD
- * PARAMS SCPCOM
- *
- * 7. ROUTINES AND OVERLAYS CALLED.
- * OMSG ISSUE DAYFILE MESSAGE
- * RDUMP DUMP NIP-S FIELD LENGTH
- * XTRACE RECORD PROCEDURE CALLS
- *
- * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION.
- *
- * THIS PROGRAM IS A SECONDARY OVERLAY LOADED BY SUBROUTINE
- * OVLCALL. WHEN EXECUTION IS 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 SECONDARY
- *CALL OSSIZE
- *
- * THIS OVERLAY IS CALLED BY HPNON.
- *
- #
- STOPIMS;
- #
- EXTERNAL VARIABLES
- #
- XREF
- BEGIN
- PROC OMSG; # DAYFILE MESSAGE #
- PROC RDUMP;
- PROC XTRACE;
- LABEL RJMAIN;
- END
- #
- INTERNAL VARIABLES
- #
- ITEM SCPADDR;
- #**********************************************************************#
- BEGIN
- CONTROL IFEQ DEBUG,1;
- XTRACE("HPNSR") ;
- CONTROL FI;
- #
- PROCESS SCP FUNCTION RETURN CODE
- #
- P<SCPCALL> = NWLADDR; # ADDR OF SCP FUNCTION LIST #
- IF SCPRC[0] NQ RCUCPGONE
- THEN # APP IS STILL IN SYSTEM #
- BEGIN
- IF SCPRC[0] NQ RCSWAPPEDOUT
- THEN # OP SYS GAVE US BAD RETURN CODE #
- BEGIN
- RDUMP; # DUMP NIP-S FIELD LENGTH #
- D25M2[0] = "HPNONSR";
- OMSG(DFMSG25,0); # "NIP DUMP TAKEN" #
- END
- ELSE # APP IS SWAPPED OUT #
- BEGIN
- #
- DO NOT BOTHER TO CONTINUE PROCESSING NETON OF APP. INSTEAD
- REJECT NETON WITH RC = 1 AND LET APP TRY TO NETON AGAIN.
- #
- # CREATE AWL TO REJECT NETON #
- P<DRHDRWD> = NWLADDR; # ADDR OF BUF TO HOLD AWL #
- BLKID[0] = MOUTIDVALUE; # (NONMOVABLE) WRITE BUF BLK ID #
- BLKBS[0] = AWLNSIZE; # SIZE OF (NETON) AWL #
- P<AWLENTRY> = NWLADDR + BLKHSIZE; # ADDR OF AWL NETON ENTRY #
- AWLEAIPH[0] = 0;
- AWLRC[0] = TRYAGAIN; # RETURN CODE IF NAM NOT AVAILABLE #
- AWLOP[0] = WLOPNON; # AIP OPCODE FOR NETON #
- AWLCB[0] = 1;
- AWLEWD1[0] = 0;
- # CREATE SCP FUNCTION TO WRITE AWL AND CLEAR SHORT TERM CONN #
- SCPADDR = NWLADDR + AWLNSIZE; # BUF TO HOLD SCP FL#
- P<SCPCALL> = SCPADDR;
- SCPWD0[0] = 0;
- SCPID[0] = NAFLIDVALUE; # (NO ACB) SCP FUNC LIST BLK ID VALUE#
- SCPBS[0] = SCPSIZE + 2*FLESIZE; # SIZE OF FUNCTION LIST #
- SCPFW[0] = 0;
- SCPFP[0] = 2; # NO OF ENTRIES IN FUNCTION LIST #
- SCPSCPA[0] = SCPADDR + SCPSIZE; # ADDR OF FUNC LIST ENTRIES #
- SCPFC[0] = SFLIST; # SCP SF.LIST FUNCTION CODE #
- SCPJOBID[0] = JOBID; # JOB ID WORD #
- P<FLE> = SCPADDR + SCPSIZE;
- FLEWD0[0] = 0;
- FLEFP[0] = AWLNSIZE - BLKHSIZE; # NO OF WDS TO WRITE TO UCP #
- FLEUCPA[0] = AWLA; # UCP APP WORKLIST ADDRESS #
- FLESCPA[0] = NWLADDR + BLKHSIZE; # ADDR OF AWL IN NIP #
- FLEFC[0] = SFWRITE; # SCP SF.WRITE FUNCTION CODE #
- P<FLE> = P<FLE> + FLESIZE;
- FLEWD0[0] = 0;
- FLEUCPA[0] = CBA; # UCP COMPLETION BIT ADDRESS #
- FLEFC[0] = SFENDT; # SCP SF.ENDT FUNCTION CODE #
- PARAMS4 = SCPADDR; # ADDR OF SCP FUNCTION LIST #
- END
- END
- GOTO RJMAIN; # RETURN TO CALLING PROGRAM #
- END
- TERM
cdc/nos2.source/nam5871/hpnonsr.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator