*DECK HCNONFL USETEXT NIPDEF USETEXT APPSTAT USETEXT AWLNTRY USETEXT DRHDR USETEXT FLIST USETEXT INPARUT USETEXT NWLHEAD USETEXT NWLNTRY USETEXT PARAMS USETEXT SCPCOM PRGM HCNONFL; # CREATE NETON FUNCTION LIST # STARTIMS; # *1DC HCNONFL * * 1. PROC NAME AUTHOR DATE * HCNONFL E. GEE 77/09/14 * N. NICHOLAS 80/09/12 * * 2. FUNCTIONAL DESCRIPTION. * CREATE NETON FUNCTION LIST * * HCNONFL IS CALLED HERE IN TWO CASES. * * 1. NVF NETS ON,IN THIS CASE AN ACB * FOR NVF EXISTS AND NETS ON * IS ACCEPTED. * * 2. A REGULAR APPLICATION TRIES TO NETON * AND REJECTED. IN THIS CASE NO ACB EXISTS. * * 3. METHOD USED. * CREATE AWL NETON ENTRY OUTSIDE OF ACB. * CREATE SCP FUNCTION LIST FOR WRITING BACK NETON AWL * IF NVF NETTING ON, ALSO SET SCP LONG TERM CONNECTION * * 4. ENTRY PARAMETERS. * AWLA UCP AWL ADDRESS * CBA UCP COMPLETION BIT ADDRESS * JOBID UCP JOB ID WORD * NWLADDR ADDR OF BUF TO HOLD NETON AWL ENTRY * PARAMS1 NONZERO VALUE (AN) IF NVF NETTING ON * PARAMS4 NETON REJECT RETURN CODE FROM NVF * * 5. EXIT PARAMETERS. * PARAMS7 ADDR OF SCP FUNCTION LIST * * 6. COMDECKS CALLED AND SYMPL TEXTS USED. * APPSTAT AWLNTRY DRHDR FLIST * NIPDEF NWLHEAD NWLNTRY OSSIZE * PARAMS SCPCOM * * 7. ROUTINES AND OVERLAYS CALLED. * XTRACE RECORD PROCEDURE CALLS * * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION. * * THIS PROGRAM IS A SECONDARY 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 SECONDARY *CALL OSSIZE * * THIS OVERLAY IS CALLED BY HPNON. * # STOPIMS; # EXTERNAL REFERENCES # XREF BEGIN PROC XTRACE; LABEL RJMAIN; END # INTERNAL REFERENCES N O N E # #**************** E X E C U T A B L E C O D E *********************# BEGIN CONTROL IFEQ DEBUG,1; XTRACE("HCNON") ; CONTROL FI; # CREATE NETON AWL ENTRY # P = NWLADDR; # ADDR OF BUF TO HOLD NETON AWL ENTRY # CMWORD[0] = 0; BLKID[0] = MOUTIDVALUE; # BLK ID FOR MSG TO BE WRITTEN TO APP # BLKBS[0] = AWLNSIZE; # SIZE OF AWL NETON ENTRY # # CREATE AWL NETON ENTRY # P = NWLADDR + BLKHSIZE; AWLEAIPH[0] = 0; AWLRC[0] = PARAMS4; # SYSTEM CONTROL POINT RETURN CODE (RC) # AWLOP[0] = WLOPNON; # NETON OPCODE # AWLCB[0] = 1; # SET OPCODE COMPLETION BIT # AWLNIN[0] = INPNIN[1]; # CURRENT INVOCATION NUMBER # AWLEWD1[0] = PARAMS1; # APPLICATION NUMBER IN THE ( AT ) TABLE # # CREATE SCP FUNCTION LIST FOR NETON RESPONSE # P = NWLADDR + AWLNSIZE; # ADDR OF BUF TO HOLD FUNC LIST # FLWD0[0] = 0; FLSCPA[0] = NWLADDR + AWLNSIZE + FLSIZE; # ADDR OF SF.LIST ENTRYS# FLJOBID[0] = JOBID; # JOB ID WORD # FLFP[0] = 2; P = P + FLSIZE; # ADDR OF FIRST SF.LIST ENTRY # FLEWD0[0] = 0; FLEFP[0] = AWLNSIZE - BLKHSIZE; # NO OF WDS TO WRITE TO APP # FLEUCPA[0] = AWLA; # UCP ADDR TO WRITE NETON RESPONSE # FLESCPA = NWLADDR + BLKHSIZE; # ADDR OF AWL NETON ENTRY # FLEFC[0] = SFWRITE; # SF.WRITE SCP FUNCTION # # CHECK IF APPLICATION NUMBER (PARAMS1) = NON ZER0 # IF PARAMS1 NQ 0 THEN # THIS IS NVF NETING ON # BEGIN # MUST SET LONG TERM CONNECTION WITH SUP # P = P + FLESIZE; FLEWD0[0] = 0; FLEFC[0] = SFSLTC; # SF.SLTC SCP FUNCTION # FLID[0] = FLIDVALUE; # FUNCTION LIST BLOCK ID VALUE # FLBS[0] = FLSIZE + 2*FLESIZE; # SIZE OF FUNCTION LIST # FLAN[0] = PARAMS1; # APPLICATION NUMBER (AN) IN (AT ENTRY) # END ELSE # REJECTED NETON OF NON-SUP APP # BEGIN FLBS[0] = SCPSIZE + 2*FLESIZE; # SIZE OF (NO ACB) FUCN LIST # FLID[0] = NAFLIDVALUE; # (NO ACB) FUNCTION LIST ID VALUE # P = P + FLESIZE; FLEWD0[0] = 0; FLEUCPA[0] = CBA; # UCP COMPLETION BIT ADDR # FLEFC[0] = SFENDT; END PARAMS7 = NWLADDR + AWLNSIZE; # ADDR OF FUNC LIST # GOTO RJMAIN; END TERM