home *** CD-ROM | disk | FTP | other *** search
- (*******************************************************)
- (* CHRDEMO.MOD *)
- (* Demoprogramm für das CHR-Modul *)
- (* (C) 1989 R.Hensmann & TOOLBOX *)
-
- MODULE CHRDemo;
-
- IMPORT Chr, Graph, IO;
-
- VAR Sans, Goth, Litt, Trip : ADDRESS;
- i, size, x, y, c : CARDINAL;
- Eingabe : CHAR;
-
- PROCEDURE SansDemo;
- (* Demo des Sans Serif Font *)
- BEGIN
- Chr.TextStyle("SANS",TRUE,10,10);
- c := 32;
- FOR y := 10 TO 470 BY 20 DO
- FOR x := 0 TO 630 BY 15 DO
- Chr.OutCharXY(x,y,CHAR(c));
- INC(c);
- IF c > 127 THEN
- c := 32;
- END;
- END;
- END;
- REPEAT UNTIL IO.KeyPressed();
- Graph.GraphMode();
- END SansDemo;
-
- PROCEDURE GothDemo;
- (* Demo des gothischen Fonts *)
- BEGIN
- Chr.TextStyle("GOTH",TRUE,10,10);
- c := 32;
- FOR y := 10 TO 470 BY 20 DO
- FOR x := 0 TO 630 BY 15 DO
- Chr.OutCharXY(x,y,CHAR(c));
- INC(c);
- IF c > 127 THEN
- c := 32;
- END;
- END;
- END;
- REPEAT UNTIL IO.KeyPressed();
- Graph.GraphMode();
- END GothDemo;
-
- PROCEDURE LittDemo;
- (* Demo des "Little" (kleinem) Font *)
- BEGIN
- Chr.TextStyle("LITT",TRUE,20,20); (* <--- andere Größe *)
- c := 32;
- FOR y := 10 TO 470 BY 15 DO
- FOR x := 0 TO 630 BY 15 DO
- Chr.OutCharXY(x,y,CHAR(c));
- INC(c);
- IF c > 127 THEN
- c := 32;
- END;
- END;
- END;
- REPEAT UNTIL IO.KeyPressed();
- Graph.GraphMode();
- END LittDemo;
-
- PROCEDURE TripDemo;
- (* Demo des Triplex-Font *)
- BEGIN
- Chr.TextStyle("TRIP",TRUE,10,10);
- c := 32;
- FOR y := 10 TO 470 BY 20 DO
- FOR x := 0 TO 630 BY 15 DO
- Chr.OutCharXY(x,y,CHAR(c));
- INC(c);
- IF c > 127 THEN
- c := 32;
- END;
- END;
- END;
- REPEAT UNTIL IO.KeyPressed();
- Graph.GraphMode();
- END TripDemo;
-
- PROCEDURE SizeDemo;
- (* Demo variabler Schriftgröße *)
- BEGIN
- FOR size := 10 TO 50 BY 3 DO
- Chr.TextStyle("SANS",TRUE,size,size);
- y := 10*size - 60;
- Chr.OutTextXY(30,y,"Hallo Welt in variabler Groesse");
- END;
- REPEAT UNTIL IO.KeyPressed();
- Graph.GraphMode;
- END SizeDemo;
-
- BEGIN
- Sans := Chr.LoadDriver("SANS.CHR");
- Goth := Chr.LoadDriver("GOTH.CHR");
- Litt := Chr.LoadDriver("LITT.CHR");
- Trip := Chr.LoadDriver("TRIP.CHR");
-
- Graph.InitVGA();
- Graph.GraphMode();
- REPEAT
- Chr.TextStyle("SANS",TRUE,15,15);
- Chr.OutTextXY(0,0,
- "===========================================");
- Chr.OutTextXY(0,40,
- "===========================================");
- Chr.TextStyle("SANS",TRUE,15,15);
- Chr.OutTextXY(170,19,"Demo des CHR-Modules");
- Chr.TextStyle("SANS",TRUE,15,15);
- Chr.OutTextXY(20,140,
- "(S)ansDemo (G)othDemo (L)ittDemo");
- Chr.OutTextXY(20,175,
- "s(I)zeDemo (T)ripDemo (Q)uit :?");
- Eingabe := IO.RdKey();
- Graph.GraphMode();
- CASE Eingabe OF
- 'S','s' : SansDemo(); |
- 'G','g' : GothDemo(); |
- 'L','l' : LittDemo(); |
- 'T','t' : TripDemo(); |
- 'I','i' : SizeDemo();
- END;
- UNTIL (Eingabe = 'q') OR (Eingabe = 'Q');
- Graph.TextMode();
- END CHRDemo.