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 >
Wrap
Text File
|
1991-03-09
|
1KB
|
89 lines
IMPLEMENTATION MODULE CPCShowAll;
FROM ASCII
IMPORT nul;
FROM CPCGlobal
IMPORT window,rastport,lstring,xmax,ymax,blankC,text,yoff,topaz;
FROM CrossFont
IMPORT CreateFont;
FROM Exec
IMPORT InterruptPtr;
FROM Graphics
IMPORT SetAPen,SetBPen,SetFont,Move,Text,TextFontPtr;
IMPORT IntuiIO;
FROM Interrupts
IMPORT AddInterrupt,RemInterrupt,StackCheckOn,StackCheckOff,InterruptType;
FROM Strings
IMPORT Insert,Length,last;
FROM SYSTEM
IMPORT ADR;
CONST
xsize=7;
ysize=6;
VAR
crossfont: TextFontPtr;
initialized: BOOLEAN;
PROCEDURE ShowAll;
VAR
xloop,yloop: INTEGER;
line: lstring;
BEGIN
FOR yloop:=1 TO ymax DO
FOR xloop:=1 TO xmax DO
IF (text[xloop,yloop]=nul) THEN
line[xloop-1]:=blankC;
ELSE
line[xloop-1]:=text[xloop,yloop];
END;
END;
line[xloop-1]:=nul;
SetAPen(rastport,1);
SetFont(rastport,crossfont);
IntuiIO.Print(window,line,0,(yloop-1)*ysize+yoff);
END;
END ShowAll;
PROCEDURE CharPos(VAR cx,cy: INTEGER);
BEGIN
cx:=(cx DIV xsize);
cy:=((cy-yoff) DIV ysize);
IF (cx<0) OR (cx>xmax-1) THEN
cx:=-1;
cy:=-1;
END;
IF (cy<0) OR (cy>ymax-1) THEN
cx:=-1;
cy:=-1;
END;
END CharPos;
BEGIN
IF NOT initialized THEN
initialized:=TRUE;
crossfont:=CreateFont();
END;
END CPCShowAll.