home *** CD-ROM | disk | FTP | other *** search
- MODULE Shaker ;
-
- FROM CyberLib IMPORT Color ;
- FROM DOSProcessHandler IMPORT Delay ;
- FROM InOut IMPORT Write, WriteString, WriteLn ;
- FROM Interrupts IMPORT Forbid, Permit ;
- FROM Intuition IMPORT IntuitionName, IntuitionBase, ScreenPtr,
- RemakeDisplay, WindowPtr ;
- FROM Libraries IMPORT OpenLibrary, CloseLibrary, Library,
- LibraryPtr ;
- FROM SYSTEM IMPORT NULL ;
- FROM Views IMPORT View;
-
- TYPE
- IntuitionBasePtr = POINTER TO RECORD
- LibNode: Library ;
- ViewLord: View;
- ActiveWindow: WindowPtr;
- FirstScreen: ScreenPtr;
- Flags: LONGCARD;
- MouseX, MouseY: CARDINAL;
- Seconds, Micros: LONGCARD;
- END;
- VAR
- scrnptr : ScreenPtr ;
- IBase : IntuitionBasePtr ;
- X : CARDINAL ;
-
- BEGIN
- Color(3,0); WriteString("SHAKER "); Color(1,0);
- WriteString("v1.0 "); Write(CHR(0A9H)) ;
- WriteString(" 1989 Bill Nerini") ; WriteLn ;
-
- IntuitionBase := OpenLibrary(IntuitionName,0) ;
- IF (IntuitionBase = NULL) THEN
- WriteString("PROBLEM OPENING "); Color(3,0) ;
- WriteString("IntuitionBase"); Color(1,0) ;
- WriteLn ; HALT ;
- END ;
- IBase := IntuitionBasePtr(IntuitionBase) ;
- scrnptr := IBase^.FirstScreen ;
-
- FOR X := 1 TO 100 DO
- INC(scrnptr^.VPort.dyOffset,5) ;
- RemakeDisplay; Delay(2) ;
- DEC(scrnptr^.VPort.dyOffset,5) ;
- RemakeDisplay; Delay(2) ;
- END ;
-
- CloseLibrary(LibraryPtr(IntuitionBase)) ;
- END Shaker.
-