home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* EVSMDEMO.PAS *)
- (* Das Programm demonstriert ein paar Fähigkeiten *)
- (* des Objekts "ExtVSManager". Es lohnt sich, *)
- (* der Geschwindigkeit zuliebe, sämtliche benötigte *)
- (* Units mit folgenden Direktiven zu compilieren: *)
- (* {$R-,S-,I-,D-,L-,V-} *)
- (* D- und L- sollten nur gesetzt werden, wenn man auf *)
- (* ein Debugging verzichten will. *)
- (* *)
- (* (c) 1991 Raimond Reichert & TOOLBOX *)
- (* ------------------------------------------------------ *)
- PROGRAM EVSM_Demo;
-
- USES VSObj, ExtVSM, Crt;
-
- VAR
- VSM : ExtVSMPtr;
- i, j : BYTE;
-
- BEGIN
- VSM := New(ExtVSMPtr, Init(80, 25));
- IF VSM <> NIL THEN
- WITH VSM^ DO BEGIN
- Clear;
- WriteStr(20, 10, 7, 'Bitte einen Moment Geduld !');
- FOR i := 1 TO 26 DO BEGIN
- AddVS(New(VirtualScreenPtr, Init(80, 25)));
- IF GetReturnCode = VSOk THEN BEGIN
- SelectVS(i);
- Fill(Chr(64+i), $70)
- END;
- END;
- FOR i := 1 TO 26 DO BEGIN
- SelectVS(i);
- IF GetReturnCode = VSOk THEN BEGIN
- CopyToScr;
- Delay(300)
- END;
- END;
- SelectVS(Screen);
- WriteStr(20, 10, 127,
- ' <Enter> zum Beenden ');
- ReadLn;
- Clear;
- Done;
- END ELSE BEGIN
- TextAttr := 127;
- WriteLn('Fehler: Nicht genügend Speicher für ',
- 'virtuellen Bildschirm!');
- TextAttr := 15;
- WriteLn;
- WriteLn('Programm abgebrochen.');
- Halt(1)
- END;
- END.
- (* ------------------------------------------------------ *)
- (* Ende von EVSMDEMO.PAS *)