IMPLEMENTATION MODULE GSXTEXT;

FROM GSXMAIN IMPORT SetText, PTSIN, PTSOUT, CB, simple, oneCARD;

PROCEDURE DrawText ( X, Y : CARDINAL; Text : ARRAY OF CHAR );  (* draw a string *)
BEGIN
  PTSIN[1].X := X;
  PTSIN[1].Y := Y;
  CB.PINLEN  := 1;
  SetText ( Text );
  simple ( 8 );
END DrawText;

PROCEDURE PGC ( X, Y : CARDINAL; Text : ARRAY OF CHAR );       (* draw graphics *)
BEGIN
  PTSIN[1].X := X;
  PTSIN[1].Y := Y;
  CB.PINLEN  := 1;
  SetText ( Text );
  CB.ESCID := 5;
  simple ( 11 );
END PGC;

PROCEDURE CharSize ( Height : CARDINAL );  		(* sizes the characters *)
BEGIN
  PTSIN[1].X := 0;
  PTSIN[1].Y := Height;
  CB.PINLEN  := 1;
  simple ( 12 );
  CharWidth  := PTSOUT[1].X;
  CharHeight := PTSOUT[1].Y;
  CellWidth  := PTSOUT[2].X;
  CellHeight := PTSOUT[2].Y;
END CharSize;

PROCEDURE CharAngle ( Angle : CARDINAL );	    (* set direction of writing *)
BEGIN
  oneCARD ( 13, Angle );
END CharAngle;

PROCEDURE CharFont ( Number : CARDINAL ); 		  (* select a text font *)
BEGIN
  oneCARD ( 21, Number );
END CharFont;

PROCEDURE CharColor ( Color : CARDINAL );	    (* select a character color *)
BEGIN
  oneCARD ( 22, Color );
END CharColor;

END GSXTEXT.

                                                      