Home » Personal collection » Acorn ADFS disks » Electron » Autostereograms_2.ADF » PAINT2

PAINT2

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn ADFS disks » Electron » Autostereograms_2.ADF
Filename: PAINT2
Read OK:
File size: 135E bytes
Load address: FFFF1D00
Exec address: FFFF8023
Duplicates

There are 4 duplicate copies of this file in the archive:

File contents
   10REM Elkpaint by Stuart Bain
   20REM (c) Electron User
   25REM Load/Save routine improved by            M. Ford, Oct. 1994
   30ONERRORMODE6:REPORT:PRINT" at line ";ERL:END
   40MODE5:PROCinit:MOVE0,836:DRAW1279,836:VDU24,0;0;1279;831;23,1,0;0;0;0;
   50PRINTTAB(0,0)"COL 3"'"SPE 1":PROCcurs(X%,Y%):PROCscr(0)
   60REPEATPROCmove:IFK%=66PROCband ELSEIFK%=67PROCcirc ELSEIFK%=82PROCrect
   70IFK%=69PROCellip ELSEIFK%=70PROCfill ELSEIFK%=87ORK%=81PROCwipe
   80IFK%=77PROCzoom ELSEIFK%=80PROCcut ELSEIFK%=65PROCbrush
   90IFK%=83PROCscr(0)ELSEIFK%=85PROCscr(1)ELSEIFK%=84PROCtext
  100IFK%=76ORK%=75PROCfile(K%-75)
  110PRINTTAB(0,3)SPC14:UNTIL0
  120DEFPROCmove
  130K%=INKEY0:*FX15
  140IFK%>32ANDK%<39sp%=8*(K%-32):PRINTTAB(4,1);sp%DIV8ELSEIFK%>47ANDK%<52col%=K%-48:PRINTTAB(4,0);col%
  150x%=X%:y%=Y%:X%=X%+(INKEY-98-INKEY-67)*sp%:IFX%<0X%=0ELSEIFX%>1279X%=1279
  160Y%=Y%+(INKEY-105-INKEY-73)*sp%DIV2:IFY%<0Y%=0ELSEIFY%>831Y%=831
  170PROCcurs(x%,y%):PROCcurs(X%,Y%)
  180ENDPROC
  190DEFPROCcurs(A%,B%)GCOL3,3:MOVEA%-24,B%+12:VDU5,225,4:ENDPROC
  200DEFPROCbp:SOUND1,-10,170,2:ENDPROC
  210DEFPROCband
  220PRINTTAB(0,3)"RUBBER BANDING":REPEATrx%=X%:ry%=Y%:GCOL3,3:PLOT69,X%,Y%
  230REPEATPROCmove:MOVEx%,y%:DRAWrx%,ry%:DRAWX%,Y%:FORI%=0TO30:NEXT
  240UNTILINKEY-99ORINKEY-74:PROCcurs(X%,Y%):GCOL0,col%:MOVEX%,Y%:DRAWrx%,ry%:PROCcurs(X%,Y%)
  250UNTILINKEY-74:PROCbp:ENDPROC
  260DEFPROCcirc
  270PRINTTAB(0,3)"CIRCLE":REPEATrx%=X%:ry%=Y%:PROCdots
  280REPEATPROCdots:PROCmove:PROCdots:UNTILINKEY-99ORINKEY-74:IFINKEY-74ret%=1ELSEret%=0
  290PROCcurs(X%,Y%):PROCdots:GCOL0,col%:MOVErx%+r%,ry%:FORI%=0TO19:DRAWrx%+r%*s%(I%+5)DIV100,ry%+r%*s%(I%)DIV100:NEXT
  300X%=rx%:Y%=ry%:PROCcurs(X%,Y%):PROCbp:UNTILret%:ENDPROC
  310DEFPROCdots:r%=SQR((X%-rx%)^2+(Y%-ry%)^2):GCOL3,3:FORI%=0TO18STEP2:PLOT69,rx%+r%*s%(I%+5)DIV100,ry%+r%*s%(I%)DIV100:NEXT:ENDPROC
  320DEFPROCellip
  330PRINTTAB(0,3)"ELLIPSE":REPEATrx%=X%:ry%=Y%:PROCell
  340REPEATPROCell:PROCmove:PROCell:UNTILINKEY-99ORINKEY-74:IFINKEY-74ret%=1ELSEret%=0
  350PROCcurs(X%,Y%):PROCell:GCOL0,col%:MOVErx%+r%,ry%:FORI%=0TO19:DRAWrx%+r%*s%(I%+5)DIV100,ry%+s%*s%(I%)DIV100:NEXT
  360X%=rx%:Y%=ry%:PROCcurs(X%,Y%):PROCbp:UNTILret%:ENDPROC
  370DEFPROCell:r%=ABS(X%-rx%):s%=ABS(Y%-ry%):GCOL3,3:FORI%=0TO18STEP2:PLOT69,rx%+r%*s%(I%+5)DIV100,ry%+s%*s%(I%)DIV100:NEXT:ENDPROC
  380DEFPROCrect
  390PRINTTAB(0,3)"RECTANGLE":REPEATrx%=X%:ry%=Y%:GCOL3,3:PROCbox
  400REPEATPROCbox:PROCmove:PROCbox
  410UNTILINKEY-99ORINKEY-74:IFINKEY-74ret%=1ELSEret%=0
  420PROCcurs(X%,Y%):GCOL0,col%:PROCbox:PROCcurs(X%,Y%):PROCbp:UNTILret%:ENDPROC
  430DEFPROCbox:MOVErx%,ry%:DRAWX%,ry%:DRAWX%,Y%:DRAWrx%,Y%:DRAWrx%,ry%:ENDPROC
  440DEFPROCfill
  450PRINTTAB(0,3)"FILL":PROCcurs(X%,Y%):Z%=POINT(X%,Y%):GCOL0,col%:GCOL0,Z%+128
  460PROCflood(X%,Y%,4):PROCflood(X%,Y%-4,-4):PROCcurs(X%,Y%):GCOL0,128:PROCbp:ENDPROC
  470DEFPROCflood(A%,B%,D%)
  480IFPOINT(A%,B%)<>Z%ENDPROC
  490REPEATPLOT77,A%,B%:B%=B%+D%:UNTILPOINT(A%,B%)<>Z%:PROCflood((!&314*8+!&310)DIV2AND&FFFF,B%,D%):ENDPROC
  500DEFPROCwipe:IFINKEY-34ANDINKEY-17CLG:PROCbp:PROCcurs(X%,Y%)
  510ENDPROC
  520DEFPROCzoom
  530PRINTTAB(0,3)"ZOOM":PROCcurs(X%,Y%):VDU26:GCOL0,3:MOVE752,1023:DRAW752,847:MOVE1136,1023:DRAW1136,847
  540PROCpixel:A%=5:B%=5:PROCcro:REPEATK%=GET:PROCcro:*FX15
  550IFK%=90ANDA%>0A%=A%-1ELSEIFK%=88ANDA%<10A%=A%+1ELSEIFK%=58ANDB%<10B%=B%+1ELSEIFK%=47ANDB%>0B%=B%-1
  560IFK%>47ANDK%<52col%=K%-48:PRINTTAB(4,0);col%ELSEIFK%=32GCOL0,col%:MOVE768+A%*32,863+B%*16:VDU5,224,4:PLOT69,rx%+A%*8,ry%+B%*4
  570IFK%=136X%=X%-24ELSEIFK%=137X%=X%+24ELSEIFK%=138Y%=Y%-12ELSEIFK%=139Y%=Y%+12
  580IFK%>135ANDK%<140PROCpixel:A%=5:B%=5
  590PROCcro:UNTILINKEY-74:VDU24,752;847;1136;1023;16,24,0;0;1279;831;:PROCcurs(X%,Y%):PROCbp:ENDPROC
  600DEFPROCpixel:rx%=X%-40:ry%=Y%-20:IFrx%<0rx%=0ELSEIFrx%>1192rx%=1192
  610IFry%>791ry%=791ELSEIFry%<0ry%=0
  620VDU5:FORI%=0TO10:FORJ%=0TO10:GCOL0,POINT(rx%+I%*8,ry%+J%*4):MOVE768+I%*32,863+J%*16:VDU224:NEXT,:ENDPROC
  630DEFPROCcro:GCOL3,3:MOVE768+32*A%,863+16*B%:VDU5,226,4:ENDPROC
  640DEFPROCcut
  650PRINTTAB(0,3)"CUT+PASTE":rx%=X%:ry%=Y%:PROCbox
  660REPEATPROCbox:PROCmove:PROCbox:UNTILINKEY-99:PROCcurs(X%,Y%):IFX%<rx%a%=X%:X%=rx%:rx%=a%
  670IFY%<ry%a%=Y%:Y%=ry%:ry%=a%
  680C%=rx%:D%=ry%:E%=X%-rx%:F%=Y%-ry%:PROCcurs(X%,Y%):REPEATPROCbox:PROCmove:rx%=X%-E%:ry%=Y%-F%:PROCbox:UNTILINKEY-74:PROCbox
  690PROCcurs(X%,Y%):REPEATA%=GET:UNTILA%=32ORA%=72ORA%=86ORA%=82:step%=8
  700IFA%=82PROCrotate:cos=COSRADan%:sin=SINRADan%:step%=4:IF(an%>40ANDan%<140)OR(an%>220ANDan%<320)sin=sin*2
  710FORI%=0TOE%STEPstep%:FORJ%=0TOF%STEPstep%DIV2:GCOL0,POINT(C%+I%,D%+J%)
  720IFA%=32PLOT69,rx%+I%,ry%+J%ELSEIFA%=72PLOT69,rx%+E%-I%,ry%+J%ELSEIFA%=86PLOT69,rx%+I%,ry%+F%-J%ELSEPLOT69,rx%+I%*cos-J%*sin,ry%+sin*I%DIV4+J%*cos
  730NEXT,:PROCcurs(X%,Y%):PROCbp:ENDPROC
  740DEFPROCrotate:an%=0:PROCline
  750REPEATI%=an%+10*(INKEY-67-INKEY-98):IFI%<0I%=350ELSEIFI%>350I%=0
  760IFI%<>an%PROCline:an%=I%:PROCline
  770UNTILINKEY-99:PROCline:ENDPROC
  780DEFPROCline:MOVErx%+60*COSRADan%,ry%+60*SINRADan%:DRAWrx%,ry%:DRAWrx%+10*COSRAD(an%+90),ry%+10*SINRAD(an%+90):ENDPROC
  790DEFPROCbrush
  800FORI%=0TO4:PRINTTAB(7,I%)CHR$(227+I%)" - ";I%+1:NEXT:PRINTTAB(0,3)"BRUSH":REPEATI%=GET-49:UNTILI%>=0ANDI%<5
  810REPEATPROCmove:IFINKEY-99PROCcurs(X%,Y%):GCOL0,col%:MOVEX%-24,Y%+12:VDU5,227+I%,4:PROCcurs(X%,Y%)
  820UNTILINKEY-74:FORI%=0TO4:PRINTTAB(7,I%)SPC8:NEXT:PROCbp:ENDPROC
  830DEFPROCtext
  840PRINTTAB(0,3)"TEXT":A$="":rx%=X%-24:ry%=Y%+12
  850REPEATREPEATI%=GET:UNTILI%>31ANDI%<128ORI%=13:PROCcurs(X%,Y%):MOVErx%,ry%:VDU5:PRINTA$
  860IFI%>31ANDI%<127ANDX%<1216A$=A$+CHR$I%:X%=X%+64ELSEIFI%=127ANDA$<>""A$=LEFT$(A$,LEN(A$)-1):X%=X%-64
  870MOVErx%,ry%:PRINTA$:PROCcurs(X%,Y%):UNTILI%=13
  880GCOL0,col%:MOVErx%,ry%:VDU5:PRINTA$:VDU4:PROCbp:ENDPROC
  890DEFPROCfile(I%)
  895PROCcurs(X%,Y%):IFI% C$="LOAD ":E$=""ELSEC$="SAVE ":E$=" 8000"
  900VDU28,0,4,19,0,12:PRINT'"Filename to ";C$:INPUTA$:IFA$<>""PROCfi2(I%)
  910CLS:PRINT"COL ";col%'"SPE ";sp%/8:PROCbp:PROCcurs(X%,Y%):ENDPROC
  920DEFPROCfi2(I%)
  930PRINT'':OSCLIC$+A$+" 5F80"+E$
  940PROCcurs(X%,Y%):ENDPROC
  950DEFPROCscr(C%)PROCcurs(X%,Y%):!&70=&5F80:!&72=S%:A%=C%:CALLQ%:PROCcurs(X%,Y%):PROCbp:ENDPROC
  960DEFPROCinit:*FX229,1
  970DIMS%8320,s%(24):FORI%=1TO25:s%(I%-1)=100*SINRAD(I%*18):NEXT:*FX4,1
  980VDU23,224,240,240,240,240,0;0;23,225,16,16,0,198,0,16,16,0,23,226,0,96,96,0;0;0;23,227;0;24,24;0;0;
  990VDU23,228,0,0,60,60,60,60,0;23,229,0,0,0,16,56,16;0;23,230,0,0,24,60,60,24,0;23,231,16,8,34,8,130,33,20,34
 1000X%=0:Y%=0:sp%=8:col%=3:FORI%=0TO2STEP2:P%=&900:[OPTI%
 1010.Q%TAX:LDY#0:.s1:LDA(&70),Y:CPX#0:BNEsw:STA(&72),Y:SEC:BCSs2:.sw:PHA:LDA(&72),Y:STA(&70),Y:PLA:STA(&72),Y
 1020.s2:INC&70:BNEs3:INC&71:.s3:INC&72:BNEs4:INC&73:.s4:LDA&71:CMP#&80:BNEs1:RTS:]NEXT:ENDPROC

� Elkpaint by Stuart Bain
� (c) Electron User
A� Load/Save routine improved by            M. Ford, Oct. 1994
��6:�:�" at line ";�:�
(<�5:�init:�0,836:�1279,836:�24,0;0;1279;831;23,1,0;0;0;0;
2.�0,0)"COL 3"'"SPE 1":�curs(X%,Y%):�scr(0)
<0��move:�K%=66�band ��K%=67�circ ��K%=82�rect
F0�K%=69�ellip ��K%=70�fill ��K%=87�K%=81�wipe
P)�K%=77�zoom ��K%=80�cut ��K%=65�brush
Z+�K%=83�scr(0)��K%=85�scr(1)��K%=84�text
d�K%=76�K%=75�file(K%-75)
n�0,3)�14:�0
x
��move
�K%=�0:*FX15
�M�K%>32�K%<39sp%=8*(K%-32):�4,1);sp%�8��K%>47�K%<52col%=K%-48:�4,0);col%
�?x%=X%:y%=Y%:X%=X%+(�-98-�-67)*sp%:�X%<0X%=0��X%>1279X%=1279
�4Y%=Y%+(�-105-�-73)*sp%�2:�Y%<0Y%=0��Y%>831Y%=831
��curs(x%,y%):�curs(X%,Y%)
��
�-��curs(A%,B%)�3,3:�A%-24,B%+12:�5,225,4:�
���bp:�1,-10,170,2:�
�
��band
�8�0,3)"RUBBER BANDING":�rx%=X%:ry%=Y%:�3,3:�69,X%,Y%
�,��move:�x%,y%:�rx%,ry%:�X%,Y%:�I%=0�30:�
�@��-99��-74:�curs(X%,Y%):�0,col%:�X%,Y%:�rx%,ry%:�curs(X%,Y%)
���-74:�bp:�

��circ
'�0,3)"CIRCLE":�rx%=X%:ry%=Y%:�dots
4��dots:�move:�dots:��-99��-74:�-74ret%=1�ret%=0
"\�curs(X%,Y%):�dots:�0,col%:�rx%+r%,ry%:�I%=0�19:�rx%+r%*s%(I%+5)�100,ry%+r%*s%(I%)�100:�
,*X%=rx%:Y%=ry%:�curs(X%,Y%):�bp:�ret%:�
6d��dots:r%=�((X%-rx%)^2+(Y%-ry%)^2):�3,3:�I%=0�18�2:�69,rx%+r%*s%(I%+5)�100,ry%+r%*s%(I%)�100:�:�
@��ellip
J'�0,3)"ELLIPSE":�rx%=X%:ry%=Y%:�ell
T2��ell:�move:�ell:��-99��-74:�-74ret%=1�ret%=0
^[�curs(X%,Y%):�ell:�0,col%:�rx%+r%,ry%:�I%=0�19:�rx%+r%*s%(I%+5)�100,ry%+s%*s%(I%)�100:�
h*X%=rx%:Y%=ry%:�curs(X%,Y%):�bp:�ret%:�
ra��ell:r%=�(X%-rx%):s%=�(Y%-ry%):�3,3:�I%=0�18�2:�69,rx%+r%*s%(I%+5)�100,ry%+s%*s%(I%)�100:�:�
|
��rect
�.�0,3)"RECTANGLE":�rx%=X%:ry%=Y%:�3,3:�box
���box:�move:�box
�!��-99��-74:�-74ret%=1�ret%=0
�6�curs(X%,Y%):�0,col%:�box:�curs(X%,Y%):�bp:�ret%:�
�4��box:�rx%,ry%:�X%,ry%:�X%,Y%:�rx%,Y%:�rx%,ry%:�
�
��fill
�:�0,3)"FILL":�curs(X%,Y%):Z%=�X%,Y%):�0,col%:�0,Z%+128
�@�flood(X%,Y%,4):�flood(X%,Y%-4,-4):�curs(X%,Y%):�0,128:�bp:�
���flood(A%,B%,D%)
��A%,B%)<>Z%�
�L��77,A%,B%:B%=B%+D%:��A%,B%)<>Z%:�flood((!&314*8+!&310)�2�&FFFF,B%,D%):�
�'��wipe:�-34��-17�:�bp:�curs(X%,Y%)
��

��zoom
N�0,3)"ZOOM":�curs(X%,Y%):�26:�0,3:�752,1023:�752,847:�1136,1023:�1136,847
*�pixel:A%=5:B%=5:�cro:�K%=�:�cro:*FX15
&Q�K%=90�A%>0A%=A%-1��K%=88�A%<10A%=A%+1��K%=58�B%<10B%=B%+1��K%=47�B%>0B%=B%-1
0h�K%>47�K%<52col%=K%-48:�4,0);col%��K%=32�0,col%:�768+A%*32,863+B%*16:�5,224,4:�69,rx%+A%*8,ry%+B%*4
:C�K%=136X%=X%-24��K%=137X%=X%+24��K%=138Y%=Y%-12��K%=139Y%=Y%+12
D"�K%>135�K%<140�pixel:A%=5:B%=5
NK�cro:��-74:�24,752;847;1136;1023;16,24,0;0;1279;831;:�curs(X%,Y%):�bp:�
X=��pixel:rx%=X%-40:ry%=Y%-20:�rx%<0rx%=0��rx%>1192rx%=1192
b�ry%>791ry%=791��ry%<0ry%=0
lN�5:�I%=0�10:�J%=0�10:�0,�rx%+I%*8,ry%+J%*4):�768+I%*32,863+J%*16:�224:�,:�
v.��cro:�3,3:�768+32*A%,863+16*B%:�5,226,4:�
�	��cut
�(�0,3)"CUT+PASTE":rx%=X%:ry%=Y%:�box
�B��box:�move:�box:��-99:�curs(X%,Y%):�X%<rx%a%=X%:X%=rx%:rx%=a%
��Y%<ry%a%=Y%:Y%=ry%:ry%=a%
�bC%=rx%:D%=ry%:E%=X%-rx%:F%=Y%-ry%:�curs(X%,Y%):��box:�move:rx%=X%-E%:ry%=Y%-F%:�box:��-74:�box
�7�curs(X%,Y%):�A%=�:�A%=32�A%=72�A%=86�A%=82:step%=8
�Z�A%=82�rotate:cos=��an%:sin=��an%:step%=4:�(an%>40�an%<140)�(an%>220�an%<320)sin=sin*2
�4�I%=0�E%�step%:�J%=0�F%�step%�2:�0,�C%+I%,D%+J%)
�{�A%=32�69,rx%+I%,ry%+J%��A%=72�69,rx%+E%-I%,ry%+J%��A%=86�69,rx%+I%,ry%+F%-J%��69,rx%+I%*cos-J%*sin,ry%+sin*I%�4+J%*cos
��,:�curs(X%,Y%):�bp:�
���rotate:an%=0:�line
�2�I%=an%+10*(�-67-�-98):�I%<0I%=350��I%>350I%=0
��I%<>an%�line:an%=I%:�line
��-99:�line:�
U��line:�rx%+60*��an%,ry%+60*��an%:�rx%,ry%:�rx%+10*��(an%+90),ry%+10*��(an%+90):�
��brush
 K�I%=0�4:�7,I%)�(227+I%)" - ";I%+1:�:�0,3)"BRUSH":�I%=�-49:�I%>=0�I%<5
*J��move:�-99�curs(X%,Y%):�0,col%:�X%-24,Y%+12:�5,227+I%,4:�curs(X%,Y%)
4#��-74:�I%=0�4:�7,I%)�8:�:�bp:�
>
��text
H*�0,3)"TEXT":A$="":rx%=X%-24:ry%=Y%+12
R;��I%=�:�I%>31�I%<128�I%=13:�curs(X%,Y%):�rx%,ry%:�5:�A$
\R�I%>31�I%<127�X%<1216A$=A$+�I%:X%=X%+64��I%=127�A$<>""A$=�A$,�(A$)-1):X%=X%-64
f$�rx%,ry%:�A$:�curs(X%,Y%):�I%=13
p$�0,col%:�rx%,ry%:�5:�A$:�4:�bp:�
z��file(I%)
;�curs(X%,Y%):�I% C$="LOAD ":E$=""�C$="SAVE ":E$=" 8000"
�;�28,0,4,19,0,12:�'"Filename to ";C$:�A$:�A$<>""�fi2(I%)
�2�:�"COL ";col%'"SPE ";sp%/8:�bp:�curs(X%,Y%):�
�
��fi2(I%)
��'':�C$+A$+" 5F80"+E$
��curs(X%,Y%):�
�I��scr(C%)�curs(X%,Y%):!&70=&5F80:!&72=S%:A%=C%:�Q%:�curs(X%,Y%):�bp:�
���init:*FX229,1
�;�S%8320,s%(24):�I%=1�25:s%(I%-1)=100*��(I%*18):�:*FX4,1
�e�23,224,240,240,240,240,0;0;23,225,16,16,0,198,0,16,16,0,23,226,0,96,96,0;0;0;23,227;0;24,24;0;0;
�l�23,228,0,0,60,60,60,60,0;23,229,0,0,0,16,56,16;0;23,230,0,0,24,60,60,24,0;23,231,16,8,34,8,130,33,20,34
�3X%=0:Y%=0:sp%=8:col%=3:�I%=0�2�2:P%=&900:[OPTI%
�m.Q%TAX:LDY#0:.s1:LDA(&70),Y:CPX#0:BNEsw:STA(&72),Y:SEC:BCSs2:.sw:PHA:LDA(&72),Y:STA(&70),Y:PLA:STA(&72),Y
�U.s2:INC&70:BNEs3:INC&71:.s3:INC&72:BNEs4:INC&73:.s4:LDA&71:CMP#&80:BNEs1:RTS:]�:�
�
00000000  0d 00 0a 1d f4 20 45 6c  6b 70 61 69 6e 74 20 62  |..... Elkpaint b|
00000010  79 20 53 74 75 61 72 74  20 42 61 69 6e 0d 00 14  |y Stuart Bain...|
00000020  17 f4 20 28 63 29 20 45  6c 65 63 74 72 6f 6e 20  |.. (c) Electron |
00000030  55 73 65 72 0d 00 19 41  f4 20 4c 6f 61 64 2f 53  |User...A. Load/S|
00000040  61 76 65 20 72 6f 75 74  69 6e 65 20 69 6d 70 72  |ave routine impr|
00000050  6f 76 65 64 20 62 79 20  20 20 20 20 20 20 20 20  |oved by         |
00000060  20 20 20 4d 2e 20 46 6f  72 64 2c 20 4f 63 74 2e  |   M. Ford, Oct.|
00000070  20 31 39 39 34 0d 00 1e  1b ee 85 eb 36 3a f6 3a  | 1994.......6:.:|
00000080  f1 22 20 61 74 20 6c 69  6e 65 20 22 3b 9e 3a e0  |." at line ";.:.|
00000090  0d 00 28 3c eb 35 3a f2  69 6e 69 74 3a ec 30 2c  |..(<.5:.init:.0,|
000000a0  38 33 36 3a df 31 32 37  39 2c 38 33 36 3a ef 32  |836:.1279,836:.2|
000000b0  34 2c 30 3b 30 3b 31 32  37 39 3b 38 33 31 3b 32  |4,0;0;1279;831;2|
000000c0  33 2c 31 2c 30 3b 30 3b  30 3b 30 3b 0d 00 32 2e  |3,1,0;0;0;0;..2.|
000000d0  f1 8a 30 2c 30 29 22 43  4f 4c 20 33 22 27 22 53  |..0,0)"COL 3"'"S|
000000e0  50 45 20 31 22 3a f2 63  75 72 73 28 58 25 2c 59  |PE 1":.curs(X%,Y|
000000f0  25 29 3a f2 73 63 72 28  30 29 0d 00 3c 30 f5 f2  |%):.scr(0)..<0..|
00000100  6d 6f 76 65 3a e7 4b 25  3d 36 36 f2 62 61 6e 64  |move:.K%=66.band|
00000110  20 8b e7 4b 25 3d 36 37  f2 63 69 72 63 20 8b e7  | ..K%=67.circ ..|
00000120  4b 25 3d 38 32 f2 72 65  63 74 0d 00 46 30 e7 4b  |K%=82.rect..F0.K|
00000130  25 3d 36 39 f2 65 6c 6c  69 70 20 8b e7 4b 25 3d  |%=69.ellip ..K%=|
00000140  37 30 f2 66 69 6c 6c 20  8b e7 4b 25 3d 38 37 84  |70.fill ..K%=87.|
00000150  4b 25 3d 38 31 f2 77 69  70 65 0d 00 50 29 e7 4b  |K%=81.wipe..P).K|
00000160  25 3d 37 37 f2 7a 6f 6f  6d 20 8b e7 4b 25 3d 38  |%=77.zoom ..K%=8|
00000170  30 f2 63 75 74 20 8b e7  4b 25 3d 36 35 f2 62 72  |0.cut ..K%=65.br|
00000180  75 73 68 0d 00 5a 2b e7  4b 25 3d 38 33 f2 73 63  |ush..Z+.K%=83.sc|
00000190  72 28 30 29 8b e7 4b 25  3d 38 35 f2 73 63 72 28  |r(0)..K%=85.scr(|
000001a0  31 29 8b e7 4b 25 3d 38  34 f2 74 65 78 74 0d 00  |1)..K%=84.text..|
000001b0  64 1c e7 4b 25 3d 37 36  84 4b 25 3d 37 35 f2 66  |d..K%=76.K%=75.f|
000001c0  69 6c 65 28 4b 25 2d 37  35 29 0d 00 6e 10 f1 8a  |ile(K%-75)..n...|
000001d0  30 2c 33 29 89 31 34 3a  fd 30 0d 00 78 0a dd f2  |0,3).14:.0..x...|
000001e0  6d 6f 76 65 0d 00 82 0f  4b 25 3d a6 30 3a 2a 46  |move....K%=.0:*F|
000001f0  58 31 35 0d 00 8c 4d e7  4b 25 3e 33 32 80 4b 25  |X15...M.K%>32.K%|
00000200  3c 33 39 73 70 25 3d 38  2a 28 4b 25 2d 33 32 29  |<39sp%=8*(K%-32)|
00000210  3a f1 8a 34 2c 31 29 3b  73 70 25 81 38 8b e7 4b  |:..4,1);sp%.8..K|
00000220  25 3e 34 37 80 4b 25 3c  35 32 63 6f 6c 25 3d 4b  |%>47.K%<52col%=K|
00000230  25 2d 34 38 3a f1 8a 34  2c 30 29 3b 63 6f 6c 25  |%-48:..4,0);col%|
00000240  0d 00 96 3f 78 25 3d 58  25 3a 79 25 3d 59 25 3a  |...?x%=X%:y%=Y%:|
00000250  58 25 3d 58 25 2b 28 a6  2d 39 38 2d a6 2d 36 37  |X%=X%+(.-98-.-67|
00000260  29 2a 73 70 25 3a e7 58  25 3c 30 58 25 3d 30 8b  |)*sp%:.X%<0X%=0.|
00000270  e7 58 25 3e 31 32 37 39  58 25 3d 31 32 37 39 0d  |.X%>1279X%=1279.|
00000280  00 a0 34 59 25 3d 59 25  2b 28 a6 2d 31 30 35 2d  |..4Y%=Y%+(.-105-|
00000290  a6 2d 37 33 29 2a 73 70  25 81 32 3a e7 59 25 3c  |.-73)*sp%.2:.Y%<|
000002a0  30 59 25 3d 30 8b e7 59  25 3e 38 33 31 59 25 3d  |0Y%=0..Y%>831Y%=|
000002b0  38 33 31 0d 00 aa 1d f2  63 75 72 73 28 78 25 2c  |831.....curs(x%,|
000002c0  79 25 29 3a f2 63 75 72  73 28 58 25 2c 59 25 29  |y%):.curs(X%,Y%)|
000002d0  0d 00 b4 05 e1 0d 00 be  2d dd f2 63 75 72 73 28  |........-..curs(|
000002e0  41 25 2c 42 25 29 e6 33  2c 33 3a ec 41 25 2d 32  |A%,B%).3,3:.A%-2|
000002f0  34 2c 42 25 2b 31 32 3a  ef 35 2c 32 32 35 2c 34  |4,B%+12:.5,225,4|
00000300  3a e1 0d 00 c8 17 dd f2  62 70 3a d4 31 2c 2d 31  |:.......bp:.1,-1|
00000310  30 2c 31 37 30 2c 32 3a  e1 0d 00 d2 0a dd f2 62  |0,170,2:.......b|
00000320  61 6e 64 0d 00 dc 38 f1  8a 30 2c 33 29 22 52 55  |and...8..0,3)"RU|
00000330  42 42 45 52 20 42 41 4e  44 49 4e 47 22 3a f5 72  |BBER BANDING":.r|
00000340  78 25 3d 58 25 3a 72 79  25 3d 59 25 3a e6 33 2c  |x%=X%:ry%=Y%:.3,|
00000350  33 3a f0 36 39 2c 58 25  2c 59 25 0d 00 e6 2c f5  |3:.69,X%,Y%...,.|
00000360  f2 6d 6f 76 65 3a ec 78  25 2c 79 25 3a df 72 78  |.move:.x%,y%:.rx|
00000370  25 2c 72 79 25 3a df 58  25 2c 59 25 3a e3 49 25  |%,ry%:.X%,Y%:.I%|
00000380  3d 30 b8 33 30 3a ed 0d  00 f0 40 fd a6 2d 39 39  |=0.30:....@..-99|
00000390  84 a6 2d 37 34 3a f2 63  75 72 73 28 58 25 2c 59  |..-74:.curs(X%,Y|
000003a0  25 29 3a e6 30 2c 63 6f  6c 25 3a ec 58 25 2c 59  |%):.0,col%:.X%,Y|
000003b0  25 3a df 72 78 25 2c 72  79 25 3a f2 63 75 72 73  |%:.rx%,ry%:.curs|
000003c0  28 58 25 2c 59 25 29 0d  00 fa 0f fd a6 2d 37 34  |(X%,Y%)......-74|
000003d0  3a f2 62 70 3a e1 0d 01  04 0a dd f2 63 69 72 63  |:.bp:.......circ|
000003e0  0d 01 0e 27 f1 8a 30 2c  33 29 22 43 49 52 43 4c  |...'..0,3)"CIRCL|
000003f0  45 22 3a f5 72 78 25 3d  58 25 3a 72 79 25 3d 59  |E":.rx%=X%:ry%=Y|
00000400  25 3a f2 64 6f 74 73 0d  01 18 34 f5 f2 64 6f 74  |%:.dots...4..dot|
00000410  73 3a f2 6d 6f 76 65 3a  f2 64 6f 74 73 3a fd a6  |s:.move:.dots:..|
00000420  2d 39 39 84 a6 2d 37 34  3a e7 a6 2d 37 34 72 65  |-99..-74:..-74re|
00000430  74 25 3d 31 8b 72 65 74  25 3d 30 0d 01 22 5c f2  |t%=1.ret%=0.."\.|
00000440  63 75 72 73 28 58 25 2c  59 25 29 3a f2 64 6f 74  |curs(X%,Y%):.dot|
00000450  73 3a e6 30 2c 63 6f 6c  25 3a ec 72 78 25 2b 72  |s:.0,col%:.rx%+r|
00000460  25 2c 72 79 25 3a e3 49  25 3d 30 b8 31 39 3a df  |%,ry%:.I%=0.19:.|
00000470  72 78 25 2b 72 25 2a 73  25 28 49 25 2b 35 29 81  |rx%+r%*s%(I%+5).|
00000480  31 30 30 2c 72 79 25 2b  72 25 2a 73 25 28 49 25  |100,ry%+r%*s%(I%|
00000490  29 81 31 30 30 3a ed 0d  01 2c 2a 58 25 3d 72 78  |).100:...,*X%=rx|
000004a0  25 3a 59 25 3d 72 79 25  3a f2 63 75 72 73 28 58  |%:Y%=ry%:.curs(X|
000004b0  25 2c 59 25 29 3a f2 62  70 3a fd 72 65 74 25 3a  |%,Y%):.bp:.ret%:|
000004c0  e1 0d 01 36 64 dd f2 64  6f 74 73 3a 72 25 3d b6  |...6d..dots:r%=.|
000004d0  28 28 58 25 2d 72 78 25  29 5e 32 2b 28 59 25 2d  |((X%-rx%)^2+(Y%-|
000004e0  72 79 25 29 5e 32 29 3a  e6 33 2c 33 3a e3 49 25  |ry%)^2):.3,3:.I%|
000004f0  3d 30 b8 31 38 88 32 3a  f0 36 39 2c 72 78 25 2b  |=0.18.2:.69,rx%+|
00000500  72 25 2a 73 25 28 49 25  2b 35 29 81 31 30 30 2c  |r%*s%(I%+5).100,|
00000510  72 79 25 2b 72 25 2a 73  25 28 49 25 29 81 31 30  |ry%+r%*s%(I%).10|
00000520  30 3a ed 3a e1 0d 01 40  0b dd f2 65 6c 6c 69 70  |0:.:...@...ellip|
00000530  0d 01 4a 27 f1 8a 30 2c  33 29 22 45 4c 4c 49 50  |..J'..0,3)"ELLIP|
00000540  53 45 22 3a f5 72 78 25  3d 58 25 3a 72 79 25 3d  |SE":.rx%=X%:ry%=|
00000550  59 25 3a f2 65 6c 6c 0d  01 54 32 f5 f2 65 6c 6c  |Y%:.ell..T2..ell|
00000560  3a f2 6d 6f 76 65 3a f2  65 6c 6c 3a fd a6 2d 39  |:.move:.ell:..-9|
00000570  39 84 a6 2d 37 34 3a e7  a6 2d 37 34 72 65 74 25  |9..-74:..-74ret%|
00000580  3d 31 8b 72 65 74 25 3d  30 0d 01 5e 5b f2 63 75  |=1.ret%=0..^[.cu|
00000590  72 73 28 58 25 2c 59 25  29 3a f2 65 6c 6c 3a e6  |rs(X%,Y%):.ell:.|
000005a0  30 2c 63 6f 6c 25 3a ec  72 78 25 2b 72 25 2c 72  |0,col%:.rx%+r%,r|
000005b0  79 25 3a e3 49 25 3d 30  b8 31 39 3a df 72 78 25  |y%:.I%=0.19:.rx%|
000005c0  2b 72 25 2a 73 25 28 49  25 2b 35 29 81 31 30 30  |+r%*s%(I%+5).100|
000005d0  2c 72 79 25 2b 73 25 2a  73 25 28 49 25 29 81 31  |,ry%+s%*s%(I%).1|
000005e0  30 30 3a ed 0d 01 68 2a  58 25 3d 72 78 25 3a 59  |00:...h*X%=rx%:Y|
000005f0  25 3d 72 79 25 3a f2 63  75 72 73 28 58 25 2c 59  |%=ry%:.curs(X%,Y|
00000600  25 29 3a f2 62 70 3a fd  72 65 74 25 3a e1 0d 01  |%):.bp:.ret%:...|
00000610  72 61 dd f2 65 6c 6c 3a  72 25 3d 94 28 58 25 2d  |ra..ell:r%=.(X%-|
00000620  72 78 25 29 3a 73 25 3d  94 28 59 25 2d 72 79 25  |rx%):s%=.(Y%-ry%|
00000630  29 3a e6 33 2c 33 3a e3  49 25 3d 30 b8 31 38 88  |):.3,3:.I%=0.18.|
00000640  32 3a f0 36 39 2c 72 78  25 2b 72 25 2a 73 25 28  |2:.69,rx%+r%*s%(|
00000650  49 25 2b 35 29 81 31 30  30 2c 72 79 25 2b 73 25  |I%+5).100,ry%+s%|
00000660  2a 73 25 28 49 25 29 81  31 30 30 3a ed 3a e1 0d  |*s%(I%).100:.:..|
00000670  01 7c 0a dd f2 72 65 63  74 0d 01 86 2e f1 8a 30  |.|...rect......0|
00000680  2c 33 29 22 52 45 43 54  41 4e 47 4c 45 22 3a f5  |,3)"RECTANGLE":.|
00000690  72 78 25 3d 58 25 3a 72  79 25 3d 59 25 3a e6 33  |rx%=X%:ry%=Y%:.3|
000006a0  2c 33 3a f2 62 6f 78 0d  01 90 14 f5 f2 62 6f 78  |,3:.box......box|
000006b0  3a f2 6d 6f 76 65 3a f2  62 6f 78 0d 01 9a 21 fd  |:.move:.box...!.|
000006c0  a6 2d 39 39 84 a6 2d 37  34 3a e7 a6 2d 37 34 72  |.-99..-74:..-74r|
000006d0  65 74 25 3d 31 8b 72 65  74 25 3d 30 0d 01 a4 36  |et%=1.ret%=0...6|
000006e0  f2 63 75 72 73 28 58 25  2c 59 25 29 3a e6 30 2c  |.curs(X%,Y%):.0,|
000006f0  63 6f 6c 25 3a f2 62 6f  78 3a f2 63 75 72 73 28  |col%:.box:.curs(|
00000700  58 25 2c 59 25 29 3a f2  62 70 3a fd 72 65 74 25  |X%,Y%):.bp:.ret%|
00000710  3a e1 0d 01 ae 34 dd f2  62 6f 78 3a ec 72 78 25  |:....4..box:.rx%|
00000720  2c 72 79 25 3a df 58 25  2c 72 79 25 3a df 58 25  |,ry%:.X%,ry%:.X%|
00000730  2c 59 25 3a df 72 78 25  2c 59 25 3a df 72 78 25  |,Y%:.rx%,Y%:.rx%|
00000740  2c 72 79 25 3a e1 0d 01  b8 0a dd f2 66 69 6c 6c  |,ry%:.......fill|
00000750  0d 01 c2 3a f1 8a 30 2c  33 29 22 46 49 4c 4c 22  |...:..0,3)"FILL"|
00000760  3a f2 63 75 72 73 28 58  25 2c 59 25 29 3a 5a 25  |:.curs(X%,Y%):Z%|
00000770  3d b0 58 25 2c 59 25 29  3a e6 30 2c 63 6f 6c 25  |=.X%,Y%):.0,col%|
00000780  3a e6 30 2c 5a 25 2b 31  32 38 0d 01 cc 40 f2 66  |:.0,Z%+128...@.f|
00000790  6c 6f 6f 64 28 58 25 2c  59 25 2c 34 29 3a f2 66  |lood(X%,Y%,4):.f|
000007a0  6c 6f 6f 64 28 58 25 2c  59 25 2d 34 2c 2d 34 29  |lood(X%,Y%-4,-4)|
000007b0  3a f2 63 75 72 73 28 58  25 2c 59 25 29 3a e6 30  |:.curs(X%,Y%):.0|
000007c0  2c 31 32 38 3a f2 62 70  3a e1 0d 01 d6 15 dd f2  |,128:.bp:.......|
000007d0  66 6c 6f 6f 64 28 41 25  2c 42 25 2c 44 25 29 0d  |flood(A%,B%,D%).|
000007e0  01 e0 11 e7 b0 41 25 2c  42 25 29 3c 3e 5a 25 e1  |.....A%,B%)<>Z%.|
000007f0  0d 01 ea 4c f5 f0 37 37  2c 41 25 2c 42 25 3a 42  |...L..77,A%,B%:B|
00000800  25 3d 42 25 2b 44 25 3a  fd b0 41 25 2c 42 25 29  |%=B%+D%:..A%,B%)|
00000810  3c 3e 5a 25 3a f2 66 6c  6f 6f 64 28 28 21 26 33  |<>Z%:.flood((!&3|
00000820  31 34 2a 38 2b 21 26 33  31 30 29 81 32 80 26 46  |14*8+!&310).2.&F|
00000830  46 46 46 2c 42 25 2c 44  25 29 3a e1 0d 01 f4 27  |FFF,B%,D%):....'|
00000840  dd f2 77 69 70 65 3a e7  a6 2d 33 34 80 a6 2d 31  |..wipe:..-34..-1|
00000850  37 da 3a f2 62 70 3a f2  63 75 72 73 28 58 25 2c  |7.:.bp:.curs(X%,|
00000860  59 25 29 0d 01 fe 05 e1  0d 02 08 0a dd f2 7a 6f  |Y%)...........zo|
00000870  6f 6d 0d 02 12 4e f1 8a  30 2c 33 29 22 5a 4f 4f  |om...N..0,3)"ZOO|
00000880  4d 22 3a f2 63 75 72 73  28 58 25 2c 59 25 29 3a  |M":.curs(X%,Y%):|
00000890  ef 32 36 3a e6 30 2c 33  3a ec 37 35 32 2c 31 30  |.26:.0,3:.752,10|
000008a0  32 33 3a df 37 35 32 2c  38 34 37 3a ec 31 31 33  |23:.752,847:.113|
000008b0  36 2c 31 30 32 33 3a df  31 31 33 36 2c 38 34 37  |6,1023:.1136,847|
000008c0  0d 02 1c 2a f2 70 69 78  65 6c 3a 41 25 3d 35 3a  |...*.pixel:A%=5:|
000008d0  42 25 3d 35 3a f2 63 72  6f 3a f5 4b 25 3d a5 3a  |B%=5:.cro:.K%=.:|
000008e0  f2 63 72 6f 3a 2a 46 58  31 35 0d 02 26 51 e7 4b  |.cro:*FX15..&Q.K|
000008f0  25 3d 39 30 80 41 25 3e  30 41 25 3d 41 25 2d 31  |%=90.A%>0A%=A%-1|
00000900  8b e7 4b 25 3d 38 38 80  41 25 3c 31 30 41 25 3d  |..K%=88.A%<10A%=|
00000910  41 25 2b 31 8b e7 4b 25  3d 35 38 80 42 25 3c 31  |A%+1..K%=58.B%<1|
00000920  30 42 25 3d 42 25 2b 31  8b e7 4b 25 3d 34 37 80  |0B%=B%+1..K%=47.|
00000930  42 25 3e 30 42 25 3d 42  25 2d 31 0d 02 30 68 e7  |B%>0B%=B%-1..0h.|
00000940  4b 25 3e 34 37 80 4b 25  3c 35 32 63 6f 6c 25 3d  |K%>47.K%<52col%=|
00000950  4b 25 2d 34 38 3a f1 8a  34 2c 30 29 3b 63 6f 6c  |K%-48:..4,0);col|
00000960  25 8b e7 4b 25 3d 33 32  e6 30 2c 63 6f 6c 25 3a  |%..K%=32.0,col%:|
00000970  ec 37 36 38 2b 41 25 2a  33 32 2c 38 36 33 2b 42  |.768+A%*32,863+B|
00000980  25 2a 31 36 3a ef 35 2c  32 32 34 2c 34 3a f0 36  |%*16:.5,224,4:.6|
00000990  39 2c 72 78 25 2b 41 25  2a 38 2c 72 79 25 2b 42  |9,rx%+A%*8,ry%+B|
000009a0  25 2a 34 0d 02 3a 43 e7  4b 25 3d 31 33 36 58 25  |%*4..:C.K%=136X%|
000009b0  3d 58 25 2d 32 34 8b e7  4b 25 3d 31 33 37 58 25  |=X%-24..K%=137X%|
000009c0  3d 58 25 2b 32 34 8b e7  4b 25 3d 31 33 38 59 25  |=X%+24..K%=138Y%|
000009d0  3d 59 25 2d 31 32 8b e7  4b 25 3d 31 33 39 59 25  |=Y%-12..K%=139Y%|
000009e0  3d 59 25 2b 31 32 0d 02  44 22 e7 4b 25 3e 31 33  |=Y%+12..D".K%>13|
000009f0  35 80 4b 25 3c 31 34 30  f2 70 69 78 65 6c 3a 41  |5.K%<140.pixel:A|
00000a00  25 3d 35 3a 42 25 3d 35  0d 02 4e 4b f2 63 72 6f  |%=5:B%=5..NK.cro|
00000a10  3a fd a6 2d 37 34 3a ef  32 34 2c 37 35 32 3b 38  |:..-74:.24,752;8|
00000a20  34 37 3b 31 31 33 36 3b  31 30 32 33 3b 31 36 2c  |47;1136;1023;16,|
00000a30  32 34 2c 30 3b 30 3b 31  32 37 39 3b 38 33 31 3b  |24,0;0;1279;831;|
00000a40  3a f2 63 75 72 73 28 58  25 2c 59 25 29 3a f2 62  |:.curs(X%,Y%):.b|
00000a50  70 3a e1 0d 02 58 3d dd  f2 70 69 78 65 6c 3a 72  |p:...X=..pixel:r|
00000a60  78 25 3d 58 25 2d 34 30  3a 72 79 25 3d 59 25 2d  |x%=X%-40:ry%=Y%-|
00000a70  32 30 3a e7 72 78 25 3c  30 72 78 25 3d 30 8b e7  |20:.rx%<0rx%=0..|
00000a80  72 78 25 3e 31 31 39 32  72 78 25 3d 31 31 39 32  |rx%>1192rx%=1192|
00000a90  0d 02 62 1f e7 72 79 25  3e 37 39 31 72 79 25 3d  |..b..ry%>791ry%=|
00000aa0  37 39 31 8b e7 72 79 25  3c 30 72 79 25 3d 30 0d  |791..ry%<0ry%=0.|
00000ab0  02 6c 4e ef 35 3a e3 49  25 3d 30 b8 31 30 3a e3  |.lN.5:.I%=0.10:.|
00000ac0  4a 25 3d 30 b8 31 30 3a  e6 30 2c b0 72 78 25 2b  |J%=0.10:.0,.rx%+|
00000ad0  49 25 2a 38 2c 72 79 25  2b 4a 25 2a 34 29 3a ec  |I%*8,ry%+J%*4):.|
00000ae0  37 36 38 2b 49 25 2a 33  32 2c 38 36 33 2b 4a 25  |768+I%*32,863+J%|
00000af0  2a 31 36 3a ef 32 32 34  3a ed 2c 3a e1 0d 02 76  |*16:.224:.,:...v|
00000b00  2e dd f2 63 72 6f 3a e6  33 2c 33 3a ec 37 36 38  |...cro:.3,3:.768|
00000b10  2b 33 32 2a 41 25 2c 38  36 33 2b 31 36 2a 42 25  |+32*A%,863+16*B%|
00000b20  3a ef 35 2c 32 32 36 2c  34 3a e1 0d 02 80 09 dd  |:.5,226,4:......|
00000b30  f2 63 75 74 0d 02 8a 28  f1 8a 30 2c 33 29 22 43  |.cut...(..0,3)"C|
00000b40  55 54 2b 50 41 53 54 45  22 3a 72 78 25 3d 58 25  |UT+PASTE":rx%=X%|
00000b50  3a 72 79 25 3d 59 25 3a  f2 62 6f 78 0d 02 94 42  |:ry%=Y%:.box...B|
00000b60  f5 f2 62 6f 78 3a f2 6d  6f 76 65 3a f2 62 6f 78  |..box:.move:.box|
00000b70  3a fd a6 2d 39 39 3a f2  63 75 72 73 28 58 25 2c  |:..-99:.curs(X%,|
00000b80  59 25 29 3a e7 58 25 3c  72 78 25 61 25 3d 58 25  |Y%):.X%<rx%a%=X%|
00000b90  3a 58 25 3d 72 78 25 3a  72 78 25 3d 61 25 0d 02  |:X%=rx%:rx%=a%..|
00000ba0  9e 1e e7 59 25 3c 72 79  25 61 25 3d 59 25 3a 59  |...Y%<ry%a%=Y%:Y|
00000bb0  25 3d 72 79 25 3a 72 79  25 3d 61 25 0d 02 a8 62  |%=ry%:ry%=a%...b|
00000bc0  43 25 3d 72 78 25 3a 44  25 3d 72 79 25 3a 45 25  |C%=rx%:D%=ry%:E%|
00000bd0  3d 58 25 2d 72 78 25 3a  46 25 3d 59 25 2d 72 79  |=X%-rx%:F%=Y%-ry|
00000be0  25 3a f2 63 75 72 73 28  58 25 2c 59 25 29 3a f5  |%:.curs(X%,Y%):.|
00000bf0  f2 62 6f 78 3a f2 6d 6f  76 65 3a 72 78 25 3d 58  |.box:.move:rx%=X|
00000c00  25 2d 45 25 3a 72 79 25  3d 59 25 2d 46 25 3a f2  |%-E%:ry%=Y%-F%:.|
00000c10  62 6f 78 3a fd a6 2d 37  34 3a f2 62 6f 78 0d 02  |box:..-74:.box..|
00000c20  b2 37 f2 63 75 72 73 28  58 25 2c 59 25 29 3a f5  |.7.curs(X%,Y%):.|
00000c30  41 25 3d a5 3a fd 41 25  3d 33 32 84 41 25 3d 37  |A%=.:.A%=32.A%=7|
00000c40  32 84 41 25 3d 38 36 84  41 25 3d 38 32 3a 73 74  |2.A%=86.A%=82:st|
00000c50  65 70 25 3d 38 0d 02 bc  5a e7 41 25 3d 38 32 f2  |ep%=8...Z.A%=82.|
00000c60  72 6f 74 61 74 65 3a 63  6f 73 3d 9b b2 61 6e 25  |rotate:cos=..an%|
00000c70  3a 73 69 6e 3d b5 b2 61  6e 25 3a 73 74 65 70 25  |:sin=..an%:step%|
00000c80  3d 34 3a e7 28 61 6e 25  3e 34 30 80 61 6e 25 3c  |=4:.(an%>40.an%<|
00000c90  31 34 30 29 84 28 61 6e  25 3e 32 32 30 80 61 6e  |140).(an%>220.an|
00000ca0  25 3c 33 32 30 29 73 69  6e 3d 73 69 6e 2a 32 0d  |%<320)sin=sin*2.|
00000cb0  02 c6 34 e3 49 25 3d 30  b8 45 25 88 73 74 65 70  |..4.I%=0.E%.step|
00000cc0  25 3a e3 4a 25 3d 30 b8  46 25 88 73 74 65 70 25  |%:.J%=0.F%.step%|
00000cd0  81 32 3a e6 30 2c b0 43  25 2b 49 25 2c 44 25 2b  |.2:.0,.C%+I%,D%+|
00000ce0  4a 25 29 0d 02 d0 7b e7  41 25 3d 33 32 f0 36 39  |J%)...{.A%=32.69|
00000cf0  2c 72 78 25 2b 49 25 2c  72 79 25 2b 4a 25 8b e7  |,rx%+I%,ry%+J%..|
00000d00  41 25 3d 37 32 f0 36 39  2c 72 78 25 2b 45 25 2d  |A%=72.69,rx%+E%-|
00000d10  49 25 2c 72 79 25 2b 4a  25 8b e7 41 25 3d 38 36  |I%,ry%+J%..A%=86|
00000d20  f0 36 39 2c 72 78 25 2b  49 25 2c 72 79 25 2b 46  |.69,rx%+I%,ry%+F|
00000d30  25 2d 4a 25 8b f0 36 39  2c 72 78 25 2b 49 25 2a  |%-J%..69,rx%+I%*|
00000d40  63 6f 73 2d 4a 25 2a 73  69 6e 2c 72 79 25 2b 73  |cos-J%*sin,ry%+s|
00000d50  69 6e 2a 49 25 81 34 2b  4a 25 2a 63 6f 73 0d 02  |in*I%.4+J%*cos..|
00000d60  da 19 ed 2c 3a f2 63 75  72 73 28 58 25 2c 59 25  |...,:.curs(X%,Y%|
00000d70  29 3a f2 62 70 3a e1 0d  02 e4 18 dd f2 72 6f 74  |):.bp:.......rot|
00000d80  61 74 65 3a 61 6e 25 3d  30 3a f2 6c 69 6e 65 0d  |ate:an%=0:.line.|
00000d90  02 ee 32 f5 49 25 3d 61  6e 25 2b 31 30 2a 28 a6  |..2.I%=an%+10*(.|
00000da0  2d 36 37 2d a6 2d 39 38  29 3a e7 49 25 3c 30 49  |-67-.-98):.I%<0I|
00000db0  25 3d 33 35 30 8b e7 49  25 3e 33 35 30 49 25 3d  |%=350..I%>350I%=|
00000dc0  30 0d 02 f8 1e e7 49 25  3c 3e 61 6e 25 f2 6c 69  |0.....I%<>an%.li|
00000dd0  6e 65 3a 61 6e 25 3d 49  25 3a f2 6c 69 6e 65 0d  |ne:an%=I%:.line.|
00000de0  03 02 11 fd a6 2d 39 39  3a f2 6c 69 6e 65 3a e1  |.....-99:.line:.|
00000df0  0d 03 0c 55 dd f2 6c 69  6e 65 3a ec 72 78 25 2b  |...U..line:.rx%+|
00000e00  36 30 2a 9b b2 61 6e 25  2c 72 79 25 2b 36 30 2a  |60*..an%,ry%+60*|
00000e10  b5 b2 61 6e 25 3a df 72  78 25 2c 72 79 25 3a df  |..an%:.rx%,ry%:.|
00000e20  72 78 25 2b 31 30 2a 9b  b2 28 61 6e 25 2b 39 30  |rx%+10*..(an%+90|
00000e30  29 2c 72 79 25 2b 31 30  2a b5 b2 28 61 6e 25 2b  |),ry%+10*..(an%+|
00000e40  39 30 29 3a e1 0d 03 16  0b dd f2 62 72 75 73 68  |90):.......brush|
00000e50  0d 03 20 4b e3 49 25 3d  30 b8 34 3a f1 8a 37 2c  |.. K.I%=0.4:..7,|
00000e60  49 25 29 bd 28 32 32 37  2b 49 25 29 22 20 2d 20  |I%).(227+I%)" - |
00000e70  22 3b 49 25 2b 31 3a ed  3a f1 8a 30 2c 33 29 22  |";I%+1:.:..0,3)"|
00000e80  42 52 55 53 48 22 3a f5  49 25 3d a5 2d 34 39 3a  |BRUSH":.I%=.-49:|
00000e90  fd 49 25 3e 3d 30 80 49  25 3c 35 0d 03 2a 4a f5  |.I%>=0.I%<5..*J.|
00000ea0  f2 6d 6f 76 65 3a e7 a6  2d 39 39 f2 63 75 72 73  |.move:..-99.curs|
00000eb0  28 58 25 2c 59 25 29 3a  e6 30 2c 63 6f 6c 25 3a  |(X%,Y%):.0,col%:|
00000ec0  ec 58 25 2d 32 34 2c 59  25 2b 31 32 3a ef 35 2c  |.X%-24,Y%+12:.5,|
00000ed0  32 32 37 2b 49 25 2c 34  3a f2 63 75 72 73 28 58  |227+I%,4:.curs(X|
00000ee0  25 2c 59 25 29 0d 03 34  23 fd a6 2d 37 34 3a e3  |%,Y%)..4#..-74:.|
00000ef0  49 25 3d 30 b8 34 3a f1  8a 37 2c 49 25 29 89 38  |I%=0.4:..7,I%).8|
00000f00  3a ed 3a f2 62 70 3a e1  0d 03 3e 0a dd f2 74 65  |:.:.bp:...>...te|
00000f10  78 74 0d 03 48 2a f1 8a  30 2c 33 29 22 54 45 58  |xt..H*..0,3)"TEX|
00000f20  54 22 3a 41 24 3d 22 22  3a 72 78 25 3d 58 25 2d  |T":A$="":rx%=X%-|
00000f30  32 34 3a 72 79 25 3d 59  25 2b 31 32 0d 03 52 3b  |24:ry%=Y%+12..R;|
00000f40  f5 f5 49 25 3d a5 3a fd  49 25 3e 33 31 80 49 25  |..I%=.:.I%>31.I%|
00000f50  3c 31 32 38 84 49 25 3d  31 33 3a f2 63 75 72 73  |<128.I%=13:.curs|
00000f60  28 58 25 2c 59 25 29 3a  ec 72 78 25 2c 72 79 25  |(X%,Y%):.rx%,ry%|
00000f70  3a ef 35 3a f1 41 24 0d  03 5c 52 e7 49 25 3e 33  |:.5:.A$..\R.I%>3|
00000f80  31 80 49 25 3c 31 32 37  80 58 25 3c 31 32 31 36  |1.I%<127.X%<1216|
00000f90  41 24 3d 41 24 2b bd 49  25 3a 58 25 3d 58 25 2b  |A$=A$+.I%:X%=X%+|
00000fa0  36 34 8b e7 49 25 3d 31  32 37 80 41 24 3c 3e 22  |64..I%=127.A$<>"|
00000fb0  22 41 24 3d c0 41 24 2c  a9 28 41 24 29 2d 31 29  |"A$=.A$,.(A$)-1)|
00000fc0  3a 58 25 3d 58 25 2d 36  34 0d 03 66 24 ec 72 78  |:X%=X%-64..f$.rx|
00000fd0  25 2c 72 79 25 3a f1 41  24 3a f2 63 75 72 73 28  |%,ry%:.A$:.curs(|
00000fe0  58 25 2c 59 25 29 3a fd  49 25 3d 31 33 0d 03 70  |X%,Y%):.I%=13..p|
00000ff0  24 e6 30 2c 63 6f 6c 25  3a ec 72 78 25 2c 72 79  |$.0,col%:.rx%,ry|
00001000  25 3a ef 35 3a f1 41 24  3a ef 34 3a f2 62 70 3a  |%:.5:.A$:.4:.bp:|
00001010  e1 0d 03 7a 0e dd f2 66  69 6c 65 28 49 25 29 0d  |...z...file(I%).|
00001020  03 7f 3b f2 63 75 72 73  28 58 25 2c 59 25 29 3a  |..;.curs(X%,Y%):|
00001030  e7 49 25 20 43 24 3d 22  4c 4f 41 44 20 22 3a 45  |.I% C$="LOAD ":E|
00001040  24 3d 22 22 8b 43 24 3d  22 53 41 56 45 20 22 3a  |$="".C$="SAVE ":|
00001050  45 24 3d 22 20 38 30 30  30 22 0d 03 84 3b ef 32  |E$=" 8000"...;.2|
00001060  38 2c 30 2c 34 2c 31 39  2c 30 2c 31 32 3a f1 27  |8,0,4,19,0,12:.'|
00001070  22 46 69 6c 65 6e 61 6d  65 20 74 6f 20 22 3b 43  |"Filename to ";C|
00001080  24 3a e8 41 24 3a e7 41  24 3c 3e 22 22 f2 66 69  |$:.A$:.A$<>"".fi|
00001090  32 28 49 25 29 0d 03 8e  32 db 3a f1 22 43 4f 4c  |2(I%)...2.:."COL|
000010a0  20 22 3b 63 6f 6c 25 27  22 53 50 45 20 22 3b 73  | ";col%'"SPE ";s|
000010b0  70 25 2f 38 3a f2 62 70  3a f2 63 75 72 73 28 58  |p%/8:.bp:.curs(X|
000010c0  25 2c 59 25 29 3a e1 0d  03 98 0d dd f2 66 69 32  |%,Y%):.......fi2|
000010d0  28 49 25 29 0d 03 a2 19  f1 27 27 3a ff 43 24 2b  |(I%).....'':.C$+|
000010e0  41 24 2b 22 20 35 46 38  30 22 2b 45 24 0d 03 ac  |A$+" 5F80"+E$...|
000010f0  12 f2 63 75 72 73 28 58  25 2c 59 25 29 3a e1 0d  |..curs(X%,Y%):..|
00001100  03 b6 49 dd f2 73 63 72  28 43 25 29 f2 63 75 72  |..I..scr(C%).cur|
00001110  73 28 58 25 2c 59 25 29  3a 21 26 37 30 3d 26 35  |s(X%,Y%):!&70=&5|
00001120  46 38 30 3a 21 26 37 32  3d 53 25 3a 41 25 3d 43  |F80:!&72=S%:A%=C|
00001130  25 3a d6 51 25 3a f2 63  75 72 73 28 58 25 2c 59  |%:.Q%:.curs(X%,Y|
00001140  25 29 3a f2 62 70 3a e1  0d 03 c0 13 dd f2 69 6e  |%):.bp:.......in|
00001150  69 74 3a 2a 46 58 32 32  39 2c 31 0d 03 ca 3b de  |it:*FX229,1...;.|
00001160  53 25 38 33 32 30 2c 73  25 28 32 34 29 3a e3 49  |S%8320,s%(24):.I|
00001170  25 3d 31 b8 32 35 3a 73  25 28 49 25 2d 31 29 3d  |%=1.25:s%(I%-1)=|
00001180  31 30 30 2a b5 b2 28 49  25 2a 31 38 29 3a ed 3a  |100*..(I%*18):.:|
00001190  2a 46 58 34 2c 31 0d 03  d4 65 ef 32 33 2c 32 32  |*FX4,1...e.23,22|
000011a0  34 2c 32 34 30 2c 32 34  30 2c 32 34 30 2c 32 34  |4,240,240,240,24|
000011b0  30 2c 30 3b 30 3b 32 33  2c 32 32 35 2c 31 36 2c  |0,0;0;23,225,16,|
000011c0  31 36 2c 30 2c 31 39 38  2c 30 2c 31 36 2c 31 36  |16,0,198,0,16,16|
000011d0  2c 30 2c 32 33 2c 32 32  36 2c 30 2c 39 36 2c 39  |,0,23,226,0,96,9|
000011e0  36 2c 30 3b 30 3b 30 3b  32 33 2c 32 32 37 3b 30  |6,0;0;0;23,227;0|
000011f0  3b 32 34 2c 32 34 3b 30  3b 30 3b 0d 03 de 6c ef  |;24,24;0;0;...l.|
00001200  32 33 2c 32 32 38 2c 30  2c 30 2c 36 30 2c 36 30  |23,228,0,0,60,60|
00001210  2c 36 30 2c 36 30 2c 30  3b 32 33 2c 32 32 39 2c  |,60,60,0;23,229,|
00001220  30 2c 30 2c 30 2c 31 36  2c 35 36 2c 31 36 3b 30  |0,0,0,16,56,16;0|
00001230  3b 32 33 2c 32 33 30 2c  30 2c 30 2c 32 34 2c 36  |;23,230,0,0,24,6|
00001240  30 2c 36 30 2c 32 34 2c  30 3b 32 33 2c 32 33 31  |0,60,24,0;23,231|
00001250  2c 31 36 2c 38 2c 33 34  2c 38 2c 31 33 30 2c 33  |,16,8,34,8,130,3|
00001260  33 2c 32 30 2c 33 34 0d  03 e8 33 58 25 3d 30 3a  |3,20,34...3X%=0:|
00001270  59 25 3d 30 3a 73 70 25  3d 38 3a 63 6f 6c 25 3d  |Y%=0:sp%=8:col%=|
00001280  33 3a e3 49 25 3d 30 b8  32 88 32 3a 50 25 3d 26  |3:.I%=0.2.2:P%=&|
00001290  39 30 30 3a 5b 4f 50 54  49 25 0d 03 f2 6d 2e 51  |900:[OPTI%...m.Q|
000012a0  25 54 41 58 3a 4c 44 59  23 30 3a 2e 73 31 3a 4c  |%TAX:LDY#0:.s1:L|
000012b0  44 41 28 26 37 30 29 2c  59 3a 43 50 58 23 30 3a  |DA(&70),Y:CPX#0:|
000012c0  42 4e 45 73 77 3a 53 54  41 28 26 37 32 29 2c 59  |BNEsw:STA(&72),Y|
000012d0  3a 53 45 43 3a 42 43 53  73 32 3a 2e 73 77 3a 50  |:SEC:BCSs2:.sw:P|
000012e0  48 41 3a 4c 44 41 28 26  37 32 29 2c 59 3a 53 54  |HA:LDA(&72),Y:ST|
000012f0  41 28 26 37 30 29 2c 59  3a 50 4c 41 3a 53 54 41  |A(&70),Y:PLA:STA|
00001300  28 26 37 32 29 2c 59 0d  03 fc 55 2e 73 32 3a 49  |(&72),Y...U.s2:I|
00001310  4e 43 26 37 30 3a 42 4e  45 73 33 3a 49 4e 43 26  |NC&70:BNEs3:INC&|
00001320  37 31 3a 2e 73 33 3a 49  4e 43 26 37 32 3a 42 4e  |71:.s3:INC&72:BN|
00001330  45 73 34 3a 49 4e 43 26  37 33 3a 2e 73 34 3a 4c  |Es4:INC&73:.s4:L|
00001340  44 41 26 37 31 3a 43 4d  50 23 26 38 30 3a 42 4e  |DA&71:CMP#&80:BN|
00001350  45 73 31 3a 52 54 53 3a  5d ed 3a e1 0d ff        |Es1:RTS:].:...|
0000135e
PAINT2.m0
PAINT2.m1
PAINT2.m2
PAINT2.m4
PAINT2.m5