*DECK QCMSELA 
USETEXT COMCBEG 
USETEXT COMRQUE 
USETEXT COMRAPL 
USETEXT COMRRTN 
USETEXT COMRNAM 
PROC QCMSELA(RETURNCODE,ACN,CMTYPE);
# TITLE  QCMSELA - QUEUE CM/SEL/A FOR UCP. #
  
      BEGIN  # QCMSELA #
  
# 
**    PROC QCMSELA - QUEUE CM/SEL/A FOR UCP.
* 
*     THIS ROUTINE CREATES A CM/SEL/A AND QUEUES IT ON THE
*     APPROPRIATE APPLICATIONS MESSAGE QUEUE. 
* 
*     PROC QCMSELA(REPLYCODE,ACN,CMTYPE). 
* 
*     ENTRY   - P<APL$HEADER> IS BASED ARRAY CONTAINING APPL HEADER.
*               CONNECTION IS BASED ARRAY OF ACN. 
*               RETURNCODE IS THE CM/SEL/A REASON CODE. 
*               ACN IS THE CORRESPONDING APPL CONNECTION NUMBER.
*               CMTYPE IS THE CONVERT MODE TYPE BEING REQUESTED.
* 
*     EXIT    - CM/SEL/A QUEUED ON APPL MESSAGE QUEUE.
* 
*     PROCESS - GET QUEUE ENTRY.
*               GENERATE CM/SEL/A ENTRY.
*               PLACE ENTRY APPL MESSAGE QUEUE. 
# 
  
      ITEM RETURNCODE I;             # CM/SEL/A REASON CODE # 
      ITEM ACN        I;             # APPLICATION CONNECT NUMBER # 
      ITEM CMTYPE     I;             # CONVERT MODE TYPE #
  
  
# 
****  PROC QCMSELA - XREF LIST BEGIN. 
# 
  
      XREF
        BEGIN 
        PROC GETFREE;                # GET QUEUE ENTRY FROM FREE Q #
        PROC QUEUE;                  # PLACE ENTRY ON DESIRED QUEUE # 
        END 
  
# 
****  PROC QCMSELA - XREF LIST END. 
# 
  
  
      ARRAY [0:0] S(1); 
        BEGIN 
        ITEM PRS$WD1    I(00,00,60); # PRESET FOR CM/SEL/A #
        ITEM PRS$FC     U(00,00,16) = [$CMSELA];
        ITEM PRS$RC     U(00,16,08) = [0];
        ITEM PRS$ACN    U(00,24,12); # APPLICATION CONNECTION NUMBER #
        ITEM PRS$CMTY   U(00,48,12); # CONVERT MODE TYPE SELECTED # 
        END 
  
CONTROL EJECT;
  
      GETFREE;
      QU$TYPE = QT$UCPMSGR; 
      PRS$RC = RETURNCODE;
      PRS$ACN = ACN;
      PRS$CMTY = CMTYPE;
      QU$SUPWD1 = PRS$WD1;
      $SUPTLC = 1;
      QU$BLKHDR = $SUPHDR;
      QU$CHARGE = 0;
      QU$ERRLGL = FALSE;
      QUEUE(LOC(APL$MSGQ)); 
      APL$MSGCNT = APL$MSGCNT + 1;
  
      END  # QCMSELA #
  
      TERM
