*DECK KSTPAGE
USETEXT NIPDEF
USETEXT KDIS
USETEXT PARAMS
PRGM KSTPAGE;
STARTIMS;
#
*1DC KSTPAGE
*
* 1.PROC NAME AUTHOR DATE
* KSTPAGE M.GIBIAN 84/01/20
*
* 2.FUNCTIONAL DESCRIPTION
*
* PAGE STATUS DISPLAY BY UPDATING VIEW TABLE
*
* 3.METHOD USED
*
* IF PAGE FORWARD, MAKE OLD LAST LINE THE NEW FIRST LINE
* OF DISPLAY
* ELSE
* COMPUTE NEW FIRST LINE BY MOVING KDVWLN-1 LINES BACKWARD
* IN DISPLAY.
*
* 4.ENTRY PARAMETERS
*
* PARAMS1 - 1 = PAGE FORWARD FUNCTION
* 2 = PAGE BACKWARD FUNCTION
*
* 5.OUTPUT PARAMETERS
*
* 6.COMDECKS AND TEXTS USED.
*
* NIPDEF KDIS PARAMS
*
* 7.ROUTINES CALLED.
*
*
* 8.DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION
*
* MUST FIT IN SECONDARY OVERLAY
*
#
STOPIMS;
#
INPUT PARAMETER
#
ITEM TYPE U;
#
EXTERNAL REFERENCES
#
XREF
BEGIN
LABEL RJMAIN;
END
BEGIN
TYPE=PARAMS1;
IF TYPE EQ 1 THEN
BEGIN
IF KDLGLST[0] NQ 0 THEN
BEGIN
KDLGLST[0]=KDLGLND[0];
KDESTST[0]=0;
KDAPPST[0]=0;
END
ELSE
IF KDESTST[0] NQ 0 THEN
BEGIN
KDESTST[0]=KDESTND[0];
KDAPPST[0]=0;
END
ELSE
KDAPPST[0]=KDAPPND[0];
END
ELSE
BEGIN
IF KDAPPST[0] NQ 0 THEN
IF KDAPPST[0] GR KDVWLN[0] THEN # USE KDVWLN[0] SO APPL LINES#
# START AT ORIGIN 2, NOT 1 #
KDAPPST[0]=KDAPPST[0]-(KDVWLN[0]-1);
ELSE
KDAPPST[0]=2;
ELSE
IF KDESTST[0] NQ 0 THEN
IF KDESTST[0] GR KDVWLN[0]-1 THEN
KDESTST[0]=KDESTST[0]-(KDVWLN[0]-1);
ELSE
IF KDAPPMX[0] GR KDVWLN[0]-KDESTST[0] THEN
KDAPPST[0]=KDAPPMX[0]-((KDVWLN[0]-KDESTST[0])-1);
ELSE
KDAPPST[0]=2;
ELSE
IF KDLGLST[0] GR KDVWLN[0]-1 THEN
KDLGLST[0]=KDLGLST[0]-(KDVWLN[0]-1);
ELSE
IF KDESTMX[0] GR (KDVWLN[0]-KDLGLST[0])-1 THEN
KDESTST[0]=KDESTMX[0]-((KDVWLN[0]-KDLGLST[0])-1);
ELSE
IF KDAPPMX[0] GR
KDVWLN[0]-KDESTMX[0]-KDLGLST[0] THEN
KDAPPST[0]=KDAPPMX[0]-
((KDVWLN[0]-(KDESTMX)-KDLGLST[0])-1);
ELSE
KDAPPST[0]=2;
END
KDIS$STAT=STM"STM$UPDATE";
KDBLNK=TRUE;
GOTO RJMAIN;
END
TERM