DELETE VIEWPORT; REDEFINE PROCEDURE VIEWPORT ! DECLARE LINE1 PIC X(6). DECLARE LINE2 PIC X(6). DECLARE LINE3 PIC X(6). DECLARE LINE4 PIC X(6). DECLARE LINE5 PIC X(6). DECLARE LINE6 PIC X(6). DECLARE LINE7 PIC X(6). DECLARE LINE8 PIC X(6). ! LINE1 = "Line 1" LINE2 = "Line 2" LINE3 = "Line 3" LINE4 = "Line 4" LINE5 = "Line 5" LINE6 = "Line 6" LINE7 = "Line 7" LINE8 = "Line 8" ! DECLARE OUT_DEV PIC X(10). OUT_DEV = "SYS$OUTPUT" ! DECLARE TIMER USAGE REAL. TIMER = 1.0 ! DECLARE PB USAGE LONG. DECLARE VD1 USAGE LONG. DECLARE I USAGE LONG. ! ! ! Set up normal pasteboard, vitual display and virtual keyboard. ! PB = FN$SMG_CREATE_PASTEBOARD (OUT_DEV, 0, 0, 0, 0) ! VD1 = FN$SMG_CREATE_VIRTUAL_DISP (10, 10, 1, 0, 0) ! FN$SMG_PUT_LINE (VD1, LINE1, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE2, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE3, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE4, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE5, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE6, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE7, 1, 0, 0, 1, 1, 1) FN$SMG_PUT_LINE (VD1, LINE8, 1, 0, 0, 1, 1, 1) ! FN$SMG_CREATE_VIEWPORT (VD1, 1, 1, 3, 10) ! FN$SMG_PASTE_VIRTUAL_DISP (VD1, PB, 2, 10) ! FN$WAIT (TIMER) ! I = 1 WHILE I LE 5 BEGIN !! FN$SMG_SCROLL_VIEWPORT (VD1, SMG$M_UP, 1) FN$SMG_SCROLL_VIEWPORT (VD1, 1, 1) FN$WAIT (TIMER) I = I + 1 END ! I = 1 WHILE I LE 5 BEGIN ! FN$SMG_SCROLL_VIEWPORT (VD1, SMG$M_DOWN, 1) FN$SMG_SCROLL_VIEWPORT (VD1, 2, 1) FN$WAIT (TIMER) I = I + 1 END ! END_PROCEDURE