home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / dirs / cross_464.lzh / Cross / txt / CPCShowAll.mod < prev    next >
Text File  |  1991-03-09  |  1KB  |  89 lines

  1. IMPLEMENTATION MODULE CPCShowAll;
  2.  
  3.  
  4.  
  5. FROM ASCII
  6.  IMPORT nul;
  7.  
  8. FROM CPCGlobal
  9.  IMPORT window,rastport,lstring,xmax,ymax,blankC,text,yoff,topaz;
  10.  
  11. FROM CrossFont
  12.  IMPORT CreateFont;
  13.  
  14. FROM Exec
  15.  IMPORT InterruptPtr;
  16.  
  17. FROM Graphics
  18.  IMPORT SetAPen,SetBPen,SetFont,Move,Text,TextFontPtr;
  19.  
  20. IMPORT IntuiIO;
  21.  
  22. FROM Interrupts
  23.  IMPORT AddInterrupt,RemInterrupt,StackCheckOn,StackCheckOff,InterruptType;
  24.  
  25. FROM Strings
  26.  IMPORT Insert,Length,last;
  27.  
  28. FROM SYSTEM
  29.  IMPORT ADR;
  30.  
  31.  
  32.  
  33. CONST
  34.  xsize=7;
  35.  ysize=6;
  36.  
  37.  
  38.  
  39. VAR
  40.  crossfont: TextFontPtr;
  41.  initialized: BOOLEAN;
  42.  
  43.  
  44.  
  45. PROCEDURE ShowAll;
  46.  VAR
  47.   xloop,yloop: INTEGER;
  48.   line: lstring;
  49.  BEGIN
  50.   FOR yloop:=1 TO ymax DO
  51.    FOR xloop:=1 TO xmax DO
  52.     IF (text[xloop,yloop]=nul) THEN
  53.      line[xloop-1]:=blankC;
  54.     ELSE
  55.      line[xloop-1]:=text[xloop,yloop];
  56.     END;
  57.    END;
  58.    line[xloop-1]:=nul;
  59.    SetAPen(rastport,1);
  60.    SetFont(rastport,crossfont);
  61.    IntuiIO.Print(window,line,0,(yloop-1)*ysize+yoff);
  62.   END;
  63.  END ShowAll;
  64.  
  65.  
  66.  
  67. PROCEDURE CharPos(VAR cx,cy: INTEGER);
  68.  BEGIN
  69.   cx:=(cx DIV xsize);
  70.   cy:=((cy-yoff) DIV ysize);
  71.   IF (cx<0) OR (cx>xmax-1) THEN
  72.    cx:=-1;
  73.    cy:=-1;
  74.   END;
  75.   IF (cy<0) OR (cy>ymax-1) THEN
  76.    cx:=-1;
  77.    cy:=-1;
  78.   END;
  79.  END CharPos;
  80.  
  81.  
  82.  
  83. BEGIN
  84.  IF NOT initialized THEN
  85.   initialized:=TRUE;
  86.   crossfont:=CreateFont();
  87.  END;
  88. END CPCShowAll.
  89.