home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / spezial / 22 / vsms / scrobj.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1991-01-04  |  1.6 KB  |  52 lines

  1. (* ----------------------------------------------------- *)
  2. (*                     SCROBJ.PAS                        *)
  3. (*                                                       *)
  4. (*  ■ ScrObj schreibt direkt in den Bildschirmspeicher.  *)
  5. (*    Die Anfangsadresse des Bildschirmspeichers wird    *)
  6. (*    in Init festgelegt. Wer in einem erweiterten       *)
  7. (*    Textmodus (zB 80x43) arbeitet, muss die Parameter  *)
  8. (*    XL und YL an Init entsprechend übergeben.          *)
  9. (*    Für die Werte 0,0 wird die Standardauflösung 80x25 *)
  10. (*    eingesetzt.                                        *)
  11. (*                                                       *)
  12. (*              (c) 1991 by R.Reichert                   *)
  13. (* ----------------------------------------------------- *)
  14. UNIT ScrObj;
  15.  
  16. INTERFACE
  17.  
  18. USES VSObj;
  19.  
  20. VAR
  21.   ScrType : BYTE ABSOLUTE $0040:$0049;
  22.  
  23. TYPE
  24.   ScreenObjPtr = ^ScreenObj;
  25.   ScreenObj    = OBJECT (VirtualScreen)
  26.     CONSTRUCTOR Init (XL, YL : BYTE);
  27.     DESTRUCTOR Done;                               VIRTUAL;
  28.   END;
  29.  
  30. IMPLEMENTATION
  31.  
  32. CONSTRUCTOR ScreenObj.Init (XL, YL : BYTE);
  33. BEGIN
  34.   IF (XL=0) OR (YL=0) THEN BEGIN
  35.     XL := 80;  YL := 25;
  36.   END;
  37.   XLength := XL;  YLength := YL;
  38.   ReturnCode := VSOk;
  39.   IF ScrType=7 THEN VSMem := Ptr ($B000, $0000)
  40.                ELSE VSMem := Ptr ($B800, $0000);
  41. END;
  42.  
  43. DESTRUCTOR ScreenObj.Done;
  44. BEGIN
  45.   { kein Speicher freizugeben }
  46. END;
  47.  
  48. END.
  49. (* ----------------------------------------------------- *)
  50. (*                  Ende von SCROBJ.PAS                  *)
  51. (* ----------------------------------------------------- *)
  52.