*DECK XSAPPRC USETEXT NIPDEF USETEXT FLIST USETEXT OVERLAY USETEXT PARAMS USETEXT SWAPIN PROC XSAPPRC(SENTRY,RC); STARTIMS; # *1DC XSAPPRC * * 1. PROC NAME AUTHOR DATE * XSAPPRC E. GEE 77/08/10 * * 2. FUNCTIONAL DESCRIPTION. * PROCESS RETURN CODE FROM SCP SWAPIN REQUEST FRO (NO ACB) APP * * 3. METHOD USED. * CHECK IF APP SWAPPED OUT AGAIN. IF SO, ISSUE ANOTHER SWAPIN. * ELSE, DELINK SWAPIN ENTRY FROM CHAIN AND RELEASE. * * 4. ENTRY PARAMETERS. * SENTRY ADDR OF (NO ACB) SWAPIN ENTRY * RC RETURN CODE FROM SCP SWAPIN REQUEST * * 5. EXIT PARAMETERS. * NONE * * 6. COMDECKS CALLED AND SYMPL TEXT USED. * FLIST NIPDEF OPSIZE OVERLAY * PARAMS SWAPIN * * 7. ROUTINES AND OVERLAYS CALLED. * MRELS RELEASE BUFFER SPACE * OSWAPIN SWAPIN APPLICATION * OVLCALL LOAD AND EXECUTE OVERLAY * XSAPPDL OVL DELINK (NO ACB) SWAPIN ENTRY * XTRACE RECORD PROCEDURE CALLS * * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION. * * THIS PROGRAM IS PART OF A PRIAMRY OVERLAY LOADED BY SUBROUTINE * OVLCALL. * * W A R N I N G - THIS PROCEDURE PLUS PROGRAM XSAPP * CANNOT EXCEED THE PRIMARY *CALL OPSIZE * THIS PROCEDURE IS CALLED BY XSAPP. # STOPIMS; # EXTERNAL VARIABLES # XREF BEGIN PROC MRELS; # RELEASE BUFFER SPACE # PROC OSWAPIN; # ISSUE SF.SWPI SCP FUNCTION # PROC OVLCALL; # LOAD AND EXECUTE OVERLAY # PROC XTRACE; END # INPUT PARAMETERS # ITEM SENTRY; # ADDR OF (NO ACB) SWAPIN ENTRY # ITEM RC; # RETURN CODE FROM SCP SWAPIN REQUEST # # OUTPUT PARAMETERS # # NONE # #**********************************************************************# BEGIN CONTROL IFEQ DEBUG,1; XTRACE("APPRC") ; CONTROL FI; # PROCESS RETURN CODE FROM SYSTEM CONTROL POINT CALL FOR (NO ACB) APPLICATION # P = SENTRY; # ADDR OF (NO ACB) SWAPIN ENTRY # IF RC EQ RCSWAPPEDOUT OR RC EQ RCSWAPDELAY THEN # APP IS SWAPPED OUT AGAIN # BEGIN SWPIRC[0] = 0; # ZERO SCP RETURN CODE # SWPICB[0] = 0; # CLEAR SCP CALL COMPLETION BIT # P = LOC(SWPIFW[0]); OSWAPIN(FLE); # SWAPIN APP AGAIN # END ELSE # DO NOT NEED TO REISSUE SYS CON PT CALL # BEGIN PARAMS1 = SENTRY; # ADDR OF (NO ACB) SWAPIN ENTRY TO DELINK # OVLNAME = XSAPPDLP; # NAME OF OVERLAY TO LOAD # OVLCALL; # LOAD AND EXECUTE OVERLAY # IF SWPIWR[0] NQ 0 THEN # THERE WAS DATA BLK TO WRITE TO APP FL # MRELS(SWPIWR[0]); # RELEASE DATA BLOCK # MRELS(SENTRY); # RELEASE (NO ACB) SWAPIN ENTRY # END RETURN; END TERM