ASMB,R,L,C
* 
*   NAME:  VCPMN
*   SOURCE:  91750-18180
*   RELOC:   91750-16180
*   PRGMR:   D. L. M. 
* 
*********************************************************** 
* COPYRIGHT HEWLETT-PACKARD CO 1980. ALL RIGHTS RESERVED. * 
* NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, REPRODUCED  * 
* OR TRANSLATED INTO ANOTHER PROGRAM LANGUAGE WITHOUT THE * 
* PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD CO.            * 
*********************************************************** 
* 
      NAM VCPMN,19,30 91750-16180 REV.2013 800328 M,4B,L
      ENT VCPMN 
      EXT FTIME,EXEC,KCVT,SYCON,#NRVS,RMPAR,DTACH,CNUMD 
* 
* THIS IS THE INITIAL CLASS GET SUSPENDS THE PROGRAM UNTIL
* THE PROGRAM QUEUE PUTS SOMETHING INTO THE CLASS.
* 
      SUP PRESS EXTRA LISTING 
VCPMN JSB RMPAR     GET CLASS NUMBER FOR SYSTEM 
      DEF *+2 
      DEF CLSS#     LOCATION
* 
      JSB DTACH     DETACH FROM SESSION 
      DEF *+1       RETURN
READ  LDA CLSS#     GET NUMBER
      AND =B37777   MASK OUT ALL UNNEEDED BITS
      IOR =B20000   DON'T DE-ALLOCATE 
      STA CLSS#      AND STORE IN THE BUFFER
      JSB EXEC       DO READ ON THE CLASS 
      DEF R1
      DEF CLGET 
      DEF CLSS# 
      DEF MSGBF 
      DEF MSGLN 
      DEF LU# 
      DEF MTYPE 
R1    EQU * 
* 
      STB PRNLN     SAVE LENGTH 
* 
      JSB FTIME     GET CURRENT TIME IN A STRING
      DEF R2
      DEF TIMBF 
R2    EQU * 
      SKP 
* 
      LDA LU#       GET LU NUMBER 
      CMA,INA       MAKE NEGATIVE 
      STA NODE#     RESTORE 
* 
      JSB KCVT      CONVERT TO ASCII
      DEF *+2 
      DEF LU#       THE LU NUMBER 
* 
      STA LU#       RESTORE 
* 
      JSB #NRVS     GET NODE NUMBER FROM LU.
      DEF R3
      DEF NODE#     NEGATIVE LU NUMBER
      DEF NAYBR+1   DUMMY LOCATIONS 
      DEF NAYBR+2     FOR THE CALL
      DEF NAYBR     DUMMY LOCATION
      DEF NODE      CORRECT NODE NUMBER 
R3    EQU * 
* 
      JMP NFND      NO ERROR SHOULD OCCUR 
      JSB CNUMD     CONVERT TO AN ASCII NUMBER
      DEF *+3 
      DEF NODE
      DEF NODE# 
* 
FOUND JSB SYCON     NOW WRITE MESSAGE!!!
      DEF *+3 
      DEF BUF 
      DEF TIMLN 
* 
      LDA PRNLN     GET LENGTH AGAIN
      CPA B1        ONE WORD ONLY?
      JMP PDUMP     YES - POSSIBLE DUMP REQUEST 
PRINT JSB SYCON     WRITE THE DS MESSAGE
      DEF *+3 
      DEF MSGBF     MESSAGE RECEIVED AND LENGTH 
      DEF PRNLN 
* 
R4    JMP READ      DO IT ALL OVER AGAIN!!
* 
NFND  LDA =A??      DON'T KNOW WHAT NODE IT IS
      STA NODE# 
      STA NODE#+1 
      STA NODE#+2 
      JMP FOUND 
* 
      SKP 
PDUMP LDA MSGBF     GET THE WORD
      ALF,ALF       LOOK AT UPPER BYTE
      AND =B377     MASK OFF ALL OTHERS 
      CPA B1        IS IT A DUMP? 
      JMP PRINT     NO - PRINT IT 
* 
      JSB SYCON 
      DEF *+3 
      DEF DPMSG 
      DEF DPMSL 
* 
      JMP READ      GO BACK TO READING DS 
* 
BUF   ASC 9,**BREAK** ON NODE 
NODE# BSS 3 
      ASC 3,, LU
LU#   NOP 
      ASC 2, AT 
TIMBF ASC 15, 
TIMLN DEF *-BUF 
MSGBF ASC 28, 
DPMSG ASC 17,DUMP REQUEST PENDING ON THIS NODE
DPMSL DEF *-DPMSG 
CLSS# BSS 5 
CLGET DEC 21
WRITE OCT 2 
WCTRL OCT 201 
MSGLN ABS -56 
MTYPE NOP 
RDCNT NOP 
LEN   NOP 
M2    DEC -2
B1    OCT 1 
PRNLN BSS 1 
NAYBR BSS 3         DUMMY LOCATION
NODE  NOP 
      END VCPMN 
                                                                                                                                                                                                                