User Tools

Site Tools


cdc:nos2.source:nam5871:hpruonx

HPRUONX

Table Of Contents

  • [00008] PRGM HPRUONX
  • [00060] PROC MGETS
  • [00061] PROC BLINK
  • [00062] PROC OSCHAPP
  • [00063] PROC XTRACE

Source Code

HPRUONX.txt
  1. *DECK HPRUONX
  2. USETEXT ACB
  3. USETEXT NIPDEF
  4. USETEXT PARAMS
  5. USETEXT AHEADER
  6. USETEXT APPSTAT
  7. USETEXT SUPMSG
  8. PRGM HPRUONX;
  9. STARTIMS;
  10. #
  11. *1DC HPRUONX
  12. *
  13. * 1. PROC NAME AUTHOR DATE
  14. * HPRUONX A.BEN-ARTZI 82/03/01
  15. *
  16. * 2. FUNCTIONAL DESCRIPTION.
  17. * THIS ROUTINE IS RESPONSIBLE FOR FORMATTING A PRU/ON/N OR
  18. * PRU/ON/A
  19. * MESSAGE AND SENDING IT TO THE APPROPRIATE APPLICATION.
  20. *
  21. * 3. METHOD USED.
  22. * FORM THE APPROPRIATE MESSAGE WITH ERROR CODE TO THE
  23. * APPLICATION BY LINKING TO THE PROPER ACB.(ZERO RC FOR N)
  24. *
  25. * 4. ENTRY PARAMETERS.
  26. * PARAMS1 REASON CODE FOR THE ERROR(OR 0 )
  27. * PARAMS2 PRU CONNECTION NUMBER
  28. *
  29. * 5. EXIT PARAMETERS.
  30. * BUFADDR LOCATION OF PRU/ON/N(OR A) MESSAGE
  31. *
  32. * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
  33. * AHEADER APPSTAT
  34. * NIPDEF OSSIZE
  35. * ACB APPLICATION CONTROL BLOCK TEMPLATE
  36. * PARAMS PARAMETERS FOR PASSING TO/FROM SEC OVERLAYS
  37. * SUPMSG SUPERVISORY MESSAGE TEMPLATE
  38. *
  39. * 7. ROUTINES CALLED.
  40. * BLINK LINK DATA BLOCK INTO DATA RING
  41. * MGETS ALLOCATE EMPTY BUFFER
  42. * OSCHAPP SCHEDULE APPLICATION
  43. * XTRACE RECORD CALL
  44. *
  45. * 8. DAYFILE MESSAGES.
  46. * NONE
  47. *
  48. * THIS PROGRAM IS A SECONDARY OVERLAY LOADED BY OVLCALL.
  49. * WHEN EXECUTION HAS COMPLETED, A JUMP IS MADE TO LOCATION
  50. * RJMAIN TO RETURN TO THE CALLING PROGRAM.
  51. *
  52. *
  53. * THIS OVERLAY IS CALLED BY HPRUON AND HBSTTP
  54. * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE SECONDARY
  55. *CALL OSSIZE
  56. *
  57.  #
  58. STOPIMS;
  59. XREF BEGIN
  60. PROC MGETS; # GET A FREE BUFFER #
  61. PROC BLINK; # SEND THE BUFFER TO THE APPLICATION #
  62. PROC OSCHAPP; # #
  63. PROC XTRACE; # TRACE CALLS #
  64. LABEL RJMAIN; # TO EXIT TO CALLING PROGRAM #
  65. END
  66. #
  67.   INTERNAL VARIABLES
  68. #
  69. ITEM BUFADDR; # STORE NEW BUFFER ADDRESS #
  70. # #
  71. BEGIN
  72. CONTROL IFEQ DEBUG,1;
  73. XTRACE("HPRUX") ;
  74. CONTROL FI;
  75. #
  76.   GET A BUFFER TO FORMAT MESSAGE
  77. #
  78. MGETS(LPRUA+BLKHSIZE+ABHSIZE,BUFADDR,TRUE) ;
  79. P<SUPMSG> = BUFADDR+BLKHSIZE+ABHSIZE ;
  80. P<AHEADER>= BUFADDR+BLKHSIZE ;
  81. #
  82.   FORMAT APPLICATIN HEADER FIELDS
  83. #
  84. ABHTLC[0] = LPRUA ;
  85. ABHABT[0] = APPCMD ;
  86. ABHACT[0] = CT60TRANS ;
  87. ABHABN[0] = 0 ;
  88. ABHADR[0] = 0 ;
  89. #
  90.   FORMAT THE MESSAGE
  91. #
  92. PRUACN[0] = PARAMS2 ;
  93. PRURC[0] = PARAMS1 ;
  94. IF PARAMS1 EQ 0
  95. THEN
  96. PFCSFC[0] = PRUONN ;
  97. ELSE
  98. BEGIN
  99. P<ACB> = ACBADDR; # ADRESS OF ACB #
  100. ACBERCNT[0] = ACBERCNT[0] + 1; # INCRE CNT OF QUEUED PRU/ON/A #
  101. PFCSFC[0] = PRUONA ;
  102. END
  103. #
  104.   AND SEND IT TO APPLICATION
  105. #
  106. BLINK(BUFADDR,ACBADDR) ;
  107. OSCHAPP(ACBADDR) ;
  108. GOTO RJMAIN ; # RETURN TO CALLING PROGRAM #
  109. END
  110. TERM
cdc/nos2.source/nam5871/hpruonx.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator