home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1991 / 02 / oop / evsmdemo.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1990-11-08  |  1.8 KB  |  59 lines

  1. (* ------------------------------------------------------ *)
  2. (*                     EVSMDEMO.PAS                       *)
  3. (*   Das Programm demonstriert ein paar Fähigkeiten       *)
  4. (*   des Objekts "ExtVSManager". Es lohnt sich,           *)
  5. (*   der Geschwindigkeit zuliebe, sämtliche benötigte     *)
  6. (*   Units mit folgenden Direktiven zu compilieren:       *)
  7. (*   {$R-,S-,I-,D-,L-,V-}                                 *)
  8. (*   D- und L- sollten nur gesetzt werden, wenn man auf   *)
  9. (*   ein Debugging verzichten will.                       *)
  10. (*                                                        *)
  11. (*        (c) 1991 Raimond Reichert & TOOLBOX             *)
  12. (* ------------------------------------------------------ *)
  13. PROGRAM EVSM_Demo;
  14.  
  15. USES VSObj, ExtVSM, Crt;
  16.  
  17. VAR
  18.   VSM  : ExtVSMPtr;
  19.   i, j : BYTE;
  20.  
  21. BEGIN
  22.   VSM := New(ExtVSMPtr, Init(80, 25));
  23.   IF VSM <> NIL THEN
  24.     WITH VSM^ DO BEGIN
  25.     Clear;
  26.     WriteStr(20, 10, 7, 'Bitte einen Moment Geduld !');
  27.     FOR i := 1 TO 26 DO BEGIN
  28.       AddVS(New(VirtualScreenPtr, Init(80, 25)));
  29.       IF GetReturnCode = VSOk THEN BEGIN
  30.         SelectVS(i);
  31.         Fill(Chr(64+i), $70)
  32.       END;
  33.     END;
  34.     FOR i := 1 TO 26 DO BEGIN
  35.       SelectVS(i);
  36.       IF GetReturnCode = VSOk THEN BEGIN
  37.         CopyToScr;
  38.         Delay(300)
  39.       END;
  40.     END;
  41.     SelectVS(Screen);
  42.     WriteStr(20, 10, 127,
  43.                     '        <Enter> zum Beenden         ');
  44.     ReadLn;
  45.     Clear;
  46.     Done;
  47.   END ELSE BEGIN
  48.     TextAttr := 127;
  49.     WriteLn('Fehler: Nicht genügend Speicher für ',
  50.             'virtuellen Bildschirm!');
  51.     TextAttr := 15;
  52.     WriteLn;
  53.     WriteLn('Programm abgebrochen.');
  54.     Halt(1)
  55.   END;
  56. END.
  57. (* ------------------------------------------------------ *)
  58. (*                  Ende von EVSMDEMO.PAS                 *)
  59.