*DECK SWAPIN
USETEXT COMCBEG 
USETEXT COMRAPL 
USETEXT COMRQUE 
USETEXT COMRSFC 
PROC SWAPIN;
# TITLE SWAPIN - CREATE SWAP IN REQUEST.  # 
  
      BEGIN  # SWAPIN # 
  
# 
**    SWAPIN  - CREATE SWAP IN REQUEST. 
* 
*     CREATE SWAP IN REQUEST. 
* 
*     PROC SWAPIN.
* 
*     ENTRY   - APL$HEADER IS BASED ARRAY CONTAINING APPLICATION TABLE. 
* 
*     EXIT    - SWAP IN REQUESTED.
* 
*     PROCESS - OBTAIN FREE QUEUE ENTRY.
*               INITIALIZE SWAP IN CODE AND JOB ID IN REQUEST 
*               SET UP AND MAKE SSF REQUEST WITHOUT AUTORECALL. 
*               LINK QUEUE ENTRY AT START OF UCP QUEUE. 
*               RETURN. 
# 
  
# 
****  PROC SWAPIN - XREF LIST BEGIN.
# 
      XREF
        BEGIN 
        PROC GETFREE;                # OBTAIN FREE QUEUE ENTRY. # 
        PROC CALLSYS;                # MAKE RA+1 REQUEST #
        END 
  
# 
***   PROC SWAPIN - XREF LIST END.
# 
  
  
CONTROL EJECT;
  
      P<QU$ADDRESS> = APL$UCPQ; 
  
      IF QU$TYPE NE QT$UCPSWAP
      THEN
        BEGIN  # INITIATE SWAPIN #
        GETFREE;
        QU$TYPE = QT$UCPSWAP; 
        QU$SSFC = SF$SWPI;
        QU$WD2 = APL$JOBID; 
        SSFRCL = FALSE; 
        SSFADDR = LOC(QU$SSFC); 
        CALLSYS(SSF$CALL);
        QU$NXTADR = APL$UCPQ; 
        APL$UCPQ = P<QU$ADDRESS>; 
        END 
  
      RETURN; 
      END  # SWAPIN # 
  
      TERM
