User Tools

Site Tools


cdc:nos2.source:nam5871:nvftdqe

NVFTDQE

Table Of Contents

  • [00007] PROC NVFTDQE
  • [00008] NVFTDQE - DISPATCH QUEUE ENTRIES FOR T-A PROCESS.
  • [00012] DISPATCH QUEUE ENTRIES FOR T-A PROCESS.
  • [00051] PROC NVFTACC
  • [00052] PROC NVFTBRK
  • [00053] PROC NVFTCB
  • [00054] PROC NVFTETI
  • [00055] PROC NVFTINA
  • [00056] PROC NVFTITE
  • [00057] PROC NVFTRCN
  • [00058] PROC NVFTRVD
  • [00059] PROC NVFTTCH
  • [00060] PROC NVFTVVD
  • [00061] PROC SSTRQE
  • [00062] PROC NVFTSPC

Source Code

NVFTDQE.txt
  1. *DECK NVFTDQE
  2. USETEXT TEXTNVF
  3. USETEXT TEXTSS
  4. USETEXT TXTANVF
  5. USETEXT TXTAPSS
  6.  
  7. PROC NVFTDQE;
  8. # TITLE NVFTDQE - DISPATCH QUEUE ENTRIES FOR T-A PROCESS. #
  9.  
  10. BEGIN # NVFTDQE #
  11. #
  12. ** NVFTDQE - DISPATCH QUEUE ENTRIES FOR T-A PROCESS.
  13. *
  14. * E. THAVIKULWAT 81/08/17
  15. * C. BRION 83/04/11
  16. *
  17. * THIS PROCEDURE IS THE MAIN MODULE FOR TERMINAL TO APPLICATION
  18. * PROCESSING AND IS CALLED INTO EXECUTION WHENEVER THERE IS DATA
  19. * IN ANY OF ITS INPUT QUEUE . THE PROCEDURE'S MAIN FUNCTION IS TO
  20. * ROUTE EACH ENTRY IN ITS INPUT QUEUE TO THE APPROPRIATE ROUTINES.
  21. *
  22. * PROC NVFTDQE
  23. *
  24. * ENTRY:
  25. * TAINPQ - TERMINAL TO APPLICATION INPUT QUEUE
  26. * VCBRDQ - VCB READ DATA QUEUE
  27. * VDATAQ - VALIDATION DATA QUEUE
  28. *
  29. * EXIT:
  30. * ALL DATA IN ALL QUEUES HAVE BEEN PROCESSED.
  31. *
  32. * NOTES:
  33. * THE 3 INPUT QUEUES ARE PROCESSED IN THE FOLLOWING ORDER:
  34. * 1) TAINPQ
  35. * 2) VCBRDQ
  36. * 3) VDATAQ
  37. * EACH QUEUE IS EMPTIED BEFORE THE NEXT QUEUE IS INTERROGATED.
  38. *
  39. * METHOD:
  40. * CALL *SSTRQE* TO COPY THE FIRST ENTRY FROM A SPECIFIED QUEUE
  41. * INTO THE WORKING BUFFER. EACH ENTRY IS THEN ROUTED TO THE
  42. * APPROPRIATE ROUTINE TO BE PROCESSED.
  43. #
  44.  
  45. #
  46. **** PROC NVFTDQE - XREF LIST.
  47. #
  48.  
  49. XREF
  50. BEGIN
  51. PROC NVFTACC; # PROCESS CR/ACC SM #
  52. PROC NVFTBRK; # PROCESS FC/BRK SM #
  53. PROC NVFTCB; # PROCESS CR/CB SM #
  54. PROC NVFTETI; # PROCESS INPUT FROM TERMINAL #
  55. PROC NVFTINA; # PROCESS FC/INACT SM - TIMER EXPIRED #
  56. PROC NVFTITE; # PROCESS CR/ITE SM #
  57. PROC NVFTRCN; # PROCESS CR/RCN SM #
  58. PROC NVFTRVD; # RECEIVE VCB DATA #
  59. PROC NVFTTCH; # PROCESS TCH/TCHAR SM #
  60. PROC NVFTVVD; # VERIFY VALIDATION DATA #
  61. PROC SSTRQE; # TRANSFER QUEUE ENTRY TO FIXED BUFFER #
  62. PROC NVFTSPC; # SWITCH PENDING CONNECTIONS #
  63. END
  64.  
  65. #
  66. ****
  67. #
  68.  
  69. ITEM I I; # LOOP VARIABLE #
  70. ITEM SMID S:CTQSTAT; # SUBSCRIPT FOR GOTO SWITCH #
  71.  
  72. SWITCH TASWT:CTQSTAT
  73. LLCRACC : SACC, # LABEL FOR CR/ACC SM #
  74. LLCRCB : SCB, # LABEL FOR CR/CB SM #
  75. LLCRITE : SITE, # LABEL FOR CR/ITE SM #
  76. LLCRRCN : SRCN, # LABEL FOR CR/RCN SM #
  77. LLBRK : SIUSR, # LABEL FOR INTR/USR SM #
  78. LLFCINA : SINA, # LABEL FOR TIMER EXPIRED #
  79. LLTCTCH : STCHAR, # LABEL FOR TCH/TCHAR SM #
  80. LLNETN : SNETN, # LABEL FOR NET/ON/N SM #
  81. LLNETA : SNETA; # LABEL FOR NET/ON/A SM #
  82.  
  83. #
  84. * DISPATCH ENTRIES FROM *TAINPQ* TO APPROPRIATE ROUTINES.
  85. #
  86. FOR I = 0 WHILE TAQLNGTH NQ 0
  87. DO
  88. BEGIN
  89. SSTRQE(P<TAINPQ>,WCBUF,ABHBUF,MSGBUF); # TRNSFR TO FIX BUFFER #
  90. IF ABHABT[0] EQ APMSG
  91. OR ABHABT[0] EQ APPBLK
  92. THEN # MSG OR BLK DATA BLOCK #
  93. BEGIN
  94. NVFTETI; # EDIT TERMINAL INPUT #
  95. END
  96. ELSE # SUPERVISORY MESSAGE #
  97. BEGIN
  98. SMID = WCB$SMID[0]; # GET INTERNAL SM IDENTIFIER #
  99. GOTO TASWT[SMID];
  100.  
  101. LLCRACC: # CR/ACC SM #
  102. NVFTACC; # PROCESS CR/ACC SM #
  103. GOTO ENDTAS;
  104.  
  105. LLCRCB: # CR/CB SM #
  106. NVFTCB; # PROCESS CR/CB SM #
  107. GOTO ENDTAS;
  108.  
  109. LLCRITE: # CR/ITE SM #
  110. NVFTITE; # PROCESS CR/ITE SM #
  111. GOTO ENDTAS;
  112.  
  113. LLCRRCN: # CR/RCN SM #
  114. NVFTRCN; # PROCESS CR/RCN SM #
  115. GOTO ENDTAS;
  116.  
  117. LLBRK: # INTR/USR SM #
  118. NVFTBRK; # PROCESS BREAK SM #
  119. GOTO ENDTAS;
  120.  
  121. LLFCINA: # FC/INACT SM - NVF TIMER EXP #
  122. NVFTINA; # PROCESS NVF TIMER EXPIRED #
  123. GOTO ENDTAS;
  124.  
  125. LLTCTCH: # TCH/TCHAR SM #
  126. NVFTTCH; # PROCESS TCH/TCHAR SM #
  127. GOTO ENDTAS;
  128.  
  129. LLNETN:
  130. LLNETA:
  131. NVFTSPC; # NET/ON/N AND NET/ON/A SM #
  132. GOTO ENDTAS;
  133.  
  134. ENDTAS: # END OF CASE #
  135. END
  136. END
  137.  
  138. #
  139. * CALL *NVFTRVD* TO PROCESS ENTRIES FROM *VCBRDQ* QUEUE.
  140. #
  141. FOR I = 0 WHILE VRDLNGTH NQ 0
  142. DO
  143. BEGIN
  144. SSTRQE(P<VCBRDQ>,WCBUF,ABHBUF,MSGBUF); # TRNSFR TO FIX BUFFER #
  145. NVFTRVD; # RECEIVE VCB DATA #
  146. END
  147.  
  148. #
  149. * CALL *NVFTVVD* TO PROCESS ENTRIES FROM *VDATAQ* QUEUE.
  150. #
  151. FOR I = 0 WHILE VDQLNGTH NQ 0
  152. DO
  153. BEGIN
  154. SSTRQE(P<VDATAQ>,WCBUF,ABHBUF,MSGBUF); # TRNSFR TO FIX BUFFER #
  155. NVFTVVD; # VERIFY VALIDATION DATA #
  156. END
  157.  
  158. END # END NVFTDQE #
  159.  
  160. TERM
cdc/nos2.source/nam5871/nvftdqe.txt ยท Last modified: 2023/08/05 17:23 by Site Administrator