Print a string starting at pixel position.
Appears on
Library tape of the Indiana Sinclair Timex User’s Group.
Source Code
9000 POKE 40960,p: POKE 40961,q: POKE 40962,xdisp: POKE 40963,ydisp: FOR i=1 TO LEN s$: POKE 40964,CODE s$(i): RANDOMIZE USR 40976: NEXT i: RETURN : REM \* 1984 Cameron Hayne 9001 CLS : PRINT AT 10,1;"Leave recorder running"," data now loading": LOAD "PixelprntC"CODE : BEEP .7,4: PAPER 7: INK 0: CLS : LET pix=9000 9002 PRINT AT 0,0;"pixelprint enables you to print a string "; INK 2;"s$"; INK 0;" starting at pixel position "; INK 2;"(p,q)"; INK 0;". Here p is the x coordinate of the top left corner of the imaginary 8 x 8 square which will enclose the first character of s$. Similarlyq is the y coordinate."' INK 2;"xdisp "; INK 0;"is the displacement "'"between characters in the x "'"direction (normally 8)."'"Similarly "; INK 2;"ydisp"; INK 0;" (normally 0)"'" Example of use:" 9003 PRINT #1;AT 0,0;"PRESS ANY KEY": PAUSE 0: PRINT #1;AT 0,0;" " 9004 LET s$="I am not a crook!": LET p=75: LET q=67: LET xdisp=8: LET ydisp=0: GO SUB pix: LET p=65: LET q=63: LET ydisp=-2: GO SUB pix 9005 PAUSE 40: LET xdisp=0: LET ydisp=-8: LET s$="BEWARE": LET p=0: LET q=60: GO SUB pix: PAUSE 5: GO SUB pix: LET s$="THE": GO SUB pix: PAUSE 5: GO SUB pix: LET s$="IDES": GO SUB pix: PAUSE 5: GO SUB pix: LET s$="OF": GO SUB pix: PAUSE 5: GO SUB pix: LET s$="MARCH": GO SUB pix: PAUSE 5: GO SUB pix 9006 STOP : REM Technical info:pixelprint uses user defined graphics "T" and "U". The character is divided up into 4 parts- the top two are put into "T","U"then printed, then the bottom two. The printing is done with OVER 1 ,so anything already on the screen must first be erased 9007 REM m/c variables: A000,p A001,q A002,xdisp A003,ydisp A004,s$(i) A005,row A006,col A007,p' A008,q' A009,dp A00A,dq A00B,8-dp A00C,8-dq A00D,address of graphic 9998 CLEAR : SAVE "PixelPrnt" LINE 9001: BEEP .4,15: SAVE "PixelprntC"CODE 40960,395