Home » Archimedes archive » Micro User » MU 1991-12.adf » PD-Stuff » Utils/!Wiper2/!RunImage

Utils/!Wiper2/!RunImage

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 » Archimedes archive » Micro User » MU 1991-12.adf » PD-Stuff
Filename: Utils/!Wiper2/!RunImage
Read OK:
File size: 1354 bytes
Load address: 0000
Exec address: 0000
File contents
D��< ��40����Q��Z���BASIC -Quit @00009000,0000A304�T�

� > !RunImage


(� q% &100, errblk% &100
2� NameArray% 60
<� block 1024
F� t 4:$t="TASK"
P
Z.ș "Wimp_Initialise",200,!t,"Object Wiper"
d� icons 511, sprites 2559
n� icons1 511, sprites1 2559
x� icons2 511, sprites2 2559
�6ș "OS_File",15,"<Obey$Dir>.Templates" � templates
��� templates<>0 ș "Wimp_OpenTemplate",,"<Obey$Dir>.Templates":ș "Wimp_LoadTemplate",,sprites,icons,icons+512,-1,"Info",0 � ,,i:ș "Wimp_CreateWindow",,sprites � info
�� templates<>0 ș "Wimp_LoadTemplate",,sprites1,icons1,icons1+512,-1,"Wipe",0 � ,,i:ș "Wimp_CreateWindow",,sprites1 � wipe
��� templates<>0 ș "Wimp_LoadTemplate",,sprites2,icons2,icons2+512,-1,"Finished",0 � ,,i:ș "Wimp_CreateWindow",,sprites2 � finished
�,� templates<>0 � ș "Wimp_CloseTemplate"
�
�menus
��install
�;� � ș"Wimp_ReportError",�errblk(�,�$),1,"Object Wiper"
�
��
�!ș "Wimp_Poll",0,q% � action%
�Ȏ action% �
 � 2:ș "Wimp_OpenWindow",,q%
!� 3:ș "Wimp_CloseWindow",,q%
�  6    : �mouse(q%)
"�  9    : �decodemenu(q%)
,� 17,18 : �message(q%)
6�
@� �
J
T��mouse(q%)
^mx%=q%!0
hmy%=q%!4
rmb%=q%!8
|
iw%=q%!12
�
ii%=q%!16
�	err=�
�d� q%!12=-2 � mb%=&02 � menuicon%=q%!16:ș "Wimp_CreateMenu",,iconmenu%,mx%-iconmenu%!16/2-24,180
�f� q%!12=wipe � mb%=&02 � menuicon%=q%!16:ș "Wimp_CreateMenu",,iconmenu%,mx%-iconmenu%!16/2-24,my%
�� mb%<>4 � �
�#� iw%=wipe � ii%=4 � mb%!2<>2 �
�FQ=� fname$:� #FQ
�� FQ=0 � err=�
��
�`� err � �closewindow(wipe):�indirIcon(finished,0,"Object not found"):�openwindow(finished):�
�O�indirIcon(finished,0,"The Object has been deleted"):�closewindow(finished)
�#� iw%=wipe � ii%=4 � mb%!2<>2 �
�3�"WIPE "+fname$+" ~CFR~V":�openwindow(finished)
�closewindow(wipe)
�
%� iw%=wipe � ii%=4 � mb%!2<>2 � �
&y� iw%=wipe � ii%=5 � mb%!2<>2 � �closewindow(wipe):�indirIcon(finished,0,"Operation aborted"):�openwindow(finished):�
0@� iw%=finished � ii%=1 � mb%!2<>2 � �closewindow(finished):�
:�
D��decodemenu(q%)
NȎ !q% �
X&� 1 :ș "Wimp_CloseDown":�wipecode
b�
l�
v
���message(q%)
�Ȏ q%!16 �
�'� 0 : ș "Wimp_CloseDown":�wipecode
�>� 3 : filename$=�string(q%+44):�deletefile(�string(q%+44))
��
��
�
���deletefile(file$)
�filetype=q%!40
�1� *****************HERE ! *******************
�" �indirIcon(wipe,1,�file$,38))
�
�filetype
�fname$=file$
�closewindow(wipe)
�closewindow(finished)
�openwindow(wipe)
 file$=file$
*�
4
>
��install
H� sx%,sy%,sm%,px%,py%
Rsprite$ = "!Wiper2"
\4ș "Wimp_SpriteOp",40,,sprite$ � ,,,sx%,sy%,,sm%
f9ș "OS_ReadModeVariable",sm%,4 � ,,px% : sx%=sx%<<px%
p9ș "OS_ReadModeVariable",sm%,5 � ,,py% : sy%=sy%<<py%
z-� �(sprite$)*16 > sx% � sx%=�(sprite$)*16
�
!q%=-2
�#q%!4=0:q%!8=0:q%!12=66:q%!16=86
�q%!20=2
�$(q%+24)=sprite$
�-ș "Wimp_CreateIcon",,q% � appicon%:� !q%
��
�
���menus
�� iconmenu% 1024
�$iconmenu% = "Wiper 2"
�iconmenu%?12 = 7
�iconmenu%?13 = 2
�iconmenu%?14 = 7
iconmenu%?15 = 0
#iconmenu%!16 = �"SPAMPER"*16+12
iconmenu%!20 = 44
$iconmenu%!24 = 0
.m%=iconmenu%+28
8m%!0 = 0
Bm%!4 = info
Lm%!8 = &07000001
V$(m%+12)=" Info"
`m%=m%+24
jm%!0 = &80
t
m%!4 = -1
~m%!8 = &07000001
�$(m%+12)=" Quit"
��
�
�ݤstring(a%)
�-� b$:b$="":ȕ ?a%<>0:b$+=�?a%:a%+=1:�:=b$
�
�ݤerrblk(err%,report$)
�>!errblk%=err%:$(errblk%+4)=report$ :� +" at line "+STR$ERL
�errblk%?(4+�$(errblk%+4))=0
�=errblk%
�� �openwindow(handle%)
�q%!0=handle%
ș"Wimp_GetWindowState",,q%

ș"Wimp_OpenWindow",,q%
�
� �closewindow(handle%)
(q%!0=handle%
2ș"Wimp_GetWindowState",,q%
<ș"Wimp_CloseWindow",,q%
F�
P� �getIconInfo(h%,i%)
Z:!block=h% : block!4=i% : ș "Wimp_GetIconState",,block
d@ix0%=block!8 : iy0%=block!12 : ix1%=block!16 : iy1%=block!20
n+flags%=block!24 : � (flags% � &100)>0 �
x     : data$=$block!28
�� : data$=$(block+28)
��
��
�� �indirIcon(h%,i%,text$)
�?�getIconInfo(h%,i%) : $block!28=text$ : �setIcon(h%,i%,0,0)
��
� � �setIcon(h%,i%,eor%,mask%)
�:!block=h% : block!4=i% : block!8=eor% : block!12=mask%
�!ș "Wimp_SetIconState",,block
��
�� �filetype
�type$=""
�'� filetype=4096 � type$="Directory"
� filetype=8192 �
type$="Application"
	n$=""
"er=�:� K=�(file$) � 1 � -1
,8� �file$,K,1)<>"." � er=� � n$=�file$,K,1)+n$ � er=�
6� K
@type$=type$+"  ("+n$+")"
J�
T'� filetype>-1 � filetype<(&FFF+1) �
^$NameArray%=�54,�(13))
hGș "XOS_ReadVarVal","File$Type_"+�~(filetype),NameArray%,NameArray%
rft$=$NameArray%
|b� � ft$>0 � type$="File Type : "+�~(filetype)+" ("+ft$+")" � type$="File Type : "+�~(filetype)
��
��indirIcon(wipe,7,type$)
��
�� �wipecode
�ș "Hourglass_On"
�E$="Fuck Off "
�c=0
�� J=�+35 � �P-140
�
� ?J=13 �
�J+=3
��
�
� ?J<>0 �
�c=c+1:� c>� E$ � c=1
?J=�(�E$,c,1))
�
�
&� J
0ș "Hourglass_Off"
:�
�
00000000  44 10 9f e5 3c 20 9f e5  34 30 9f e5 04 00 12 e4  |D...< ..40......|
00000010  04 00 03 e4 04 10 51 e2  fb ff ff 5a 00 00 8f e2  |......Q....Z....|
00000020  05 00 00 ef 42 41 53 49  43 20 2d 51 75 69 74 20  |....BASIC -Quit |
00000030  40 30 30 30 30 39 30 30  30 2c 30 30 30 30 41 33  |@00009000,0000A3|
00000040  30 34 00 0e 04 a3 00 00  54 93 00 00 04 13 00 00  |04......T.......|
00000050  0d 00 0a 11 f4 20 3e 20  21 52 75 6e 49 6d 61 67  |..... > !RunImag|
00000060  65 0d 00 14 04 0d 00 1e  04 0d 00 28 1b de 20 71  |e..........(.. q|
00000070  25 20 26 31 30 30 2c 20  65 72 72 62 6c 6b 25 20  |% &100, errblk% |
00000080  26 31 30 30 0d 00 32 13  de 20 4e 61 6d 65 41 72  |&100..2.. NameAr|
00000090  72 61 79 25 20 36 30 0d  00 3c 10 de 20 62 6c 6f  |ray% 60..<.. blo|
000000a0  63 6b 20 31 30 32 34 0d  00 46 13 de 20 74 20 34  |ck 1024..F.. t 4|
000000b0  3a 24 74 3d 22 54 41 53  4b 22 0d 00 50 04 0d 00  |:$t="TASK"..P...|
000000c0  5a 2e c8 99 20 22 57 69  6d 70 5f 49 6e 69 74 69  |Z... "Wimp_Initi|
000000d0  61 6c 69 73 65 22 2c 32  30 30 2c 21 74 2c 22 4f  |alise",200,!t,"O|
000000e0  62 6a 65 63 74 20 57 69  70 65 72 22 0d 00 64 1d  |bject Wiper"..d.|
000000f0  de 20 69 63 6f 6e 73 20  35 31 31 2c 20 73 70 72  |. icons 511, spr|
00000100  69 74 65 73 20 32 35 35  39 0d 00 6e 1f de 20 69  |ites 2559..n.. i|
00000110  63 6f 6e 73 31 20 35 31  31 2c 20 73 70 72 69 74  |cons1 511, sprit|
00000120  65 73 31 20 32 35 35 39  0d 00 78 1f de 20 69 63  |es1 2559..x.. ic|
00000130  6f 6e 73 32 20 35 31 31  2c 20 73 70 72 69 74 65  |ons2 511, sprite|
00000140  73 32 20 32 35 35 39 0d  00 82 36 c8 99 20 22 4f  |s2 2559...6.. "O|
00000150  53 5f 46 69 6c 65 22 2c  31 35 2c 22 3c 4f 62 65  |S_File",15,"<Obe|
00000160  79 24 44 69 72 3e 2e 54  65 6d 70 6c 61 74 65 73  |y$Dir>.Templates|
00000170  22 20 b8 20 74 65 6d 70  6c 61 74 65 73 0d 00 8c  |" . templates...|
00000180  aa e7 20 74 65 6d 70 6c  61 74 65 73 3c 3e 30 20  |.. templates<>0 |
00000190  c8 99 20 22 57 69 6d 70  5f 4f 70 65 6e 54 65 6d  |.. "Wimp_OpenTem|
000001a0  70 6c 61 74 65 22 2c 2c  22 3c 4f 62 65 79 24 44  |plate",,"<Obey$D|
000001b0  69 72 3e 2e 54 65 6d 70  6c 61 74 65 73 22 3a c8  |ir>.Templates":.|
000001c0  99 20 22 57 69 6d 70 5f  4c 6f 61 64 54 65 6d 70  |. "Wimp_LoadTemp|
000001d0  6c 61 74 65 22 2c 2c 73  70 72 69 74 65 73 2c 69  |late",,sprites,i|
000001e0  63 6f 6e 73 2c 69 63 6f  6e 73 2b 35 31 32 2c 2d  |cons,icons+512,-|
000001f0  31 2c 22 49 6e 66 6f 22  2c 30 20 b8 20 2c 2c 69  |1,"Info",0 . ,,i|
00000200  3a c8 99 20 22 57 69 6d  70 5f 43 72 65 61 74 65  |:.. "Wimp_Create|
00000210  57 69 6e 64 6f 77 22 2c  2c 73 70 72 69 74 65 73  |Window",,sprites|
00000220  20 b8 20 69 6e 66 6f 0d  00 96 7f e7 20 74 65 6d  | . info..... tem|
00000230  70 6c 61 74 65 73 3c 3e  30 20 c8 99 20 22 57 69  |plates<>0 .. "Wi|
00000240  6d 70 5f 4c 6f 61 64 54  65 6d 70 6c 61 74 65 22  |mp_LoadTemplate"|
00000250  2c 2c 73 70 72 69 74 65  73 31 2c 69 63 6f 6e 73  |,,sprites1,icons|
00000260  31 2c 69 63 6f 6e 73 31  2b 35 31 32 2c 2d 31 2c  |1,icons1+512,-1,|
00000270  22 57 69 70 65 22 2c 30  20 b8 20 2c 2c 69 3a c8  |"Wipe",0 . ,,i:.|
00000280  99 20 22 57 69 6d 70 5f  43 72 65 61 74 65 57 69  |. "Wimp_CreateWi|
00000290  6e 64 6f 77 22 2c 2c 73  70 72 69 74 65 73 31 20  |ndow",,sprites1 |
000002a0  b8 20 77 69 70 65 0d 00  a0 87 e7 20 74 65 6d 70  |. wipe..... temp|
000002b0  6c 61 74 65 73 3c 3e 30  20 c8 99 20 22 57 69 6d  |lates<>0 .. "Wim|
000002c0  70 5f 4c 6f 61 64 54 65  6d 70 6c 61 74 65 22 2c  |p_LoadTemplate",|
000002d0  2c 73 70 72 69 74 65 73  32 2c 69 63 6f 6e 73 32  |,sprites2,icons2|
000002e0  2c 69 63 6f 6e 73 32 2b  35 31 32 2c 2d 31 2c 22  |,icons2+512,-1,"|
000002f0  46 69 6e 69 73 68 65 64  22 2c 30 20 b8 20 2c 2c  |Finished",0 . ,,|
00000300  69 3a c8 99 20 22 57 69  6d 70 5f 43 72 65 61 74  |i:.. "Wimp_Creat|
00000310  65 57 69 6e 64 6f 77 22  2c 2c 73 70 72 69 74 65  |eWindow",,sprite|
00000320  73 32 20 b8 20 66 69 6e  69 73 68 65 64 0d 00 aa  |s2 . finished...|
00000330  2c e7 20 74 65 6d 70 6c  61 74 65 73 3c 3e 30 20  |,. templates<>0 |
00000340  8c 20 c8 99 20 22 57 69  6d 70 5f 43 6c 6f 73 65  |. .. "Wimp_Close|
00000350  54 65 6d 70 6c 61 74 65  22 0d 00 b4 0a f2 6d 65  |Template".....me|
00000360  6e 75 73 0d 00 be 0c f2  69 6e 73 74 61 6c 6c 0d  |nus.....install.|
00000370  00 c8 3b ee 20 85 20 c8  99 22 57 69 6d 70 5f 52  |..;. . .."Wimp_R|
00000380  65 70 6f 72 74 45 72 72  6f 72 22 2c a4 65 72 72  |eportError",.err|
00000390  62 6c 6b 28 9f 2c f6 24  29 2c 31 2c 22 4f 62 6a  |blk(.,.$),1,"Obj|
000003a0  65 63 74 20 57 69 70 65  72 22 0d 00 dc 04 0d 00  |ect Wiper"......|
000003b0  e6 05 f5 0d 00 f0 21 c8  99 20 22 57 69 6d 70 5f  |......!.. "Wimp_|
000003c0  50 6f 6c 6c 22 2c 30 2c  71 25 20 b8 20 61 63 74  |Poll",0,q% . act|
000003d0  69 6f 6e 25 0d 00 fa 10  c8 8e 20 61 63 74 69 6f  |ion%...... actio|
000003e0  6e 25 20 ca 0d 01 04 20  c9 20 32 3a c8 99 20 22  |n% .... . 2:.. "|
000003f0  57 69 6d 70 5f 4f 70 65  6e 57 69 6e 64 6f 77 22  |Wimp_OpenWindow"|
00000400  2c 2c 71 25 0d 01 0e 21  c9 20 33 3a c8 99 20 22  |,,q%...!. 3:.. "|
00000410  57 69 6d 70 5f 43 6c 6f  73 65 57 69 6e 64 6f 77  |Wimp_CloseWindow|
00000420  22 2c 2c 71 25 0d 01 18  18 c9 20 20 36 20 20 20  |",,q%.....  6   |
00000430  20 3a 20 f2 6d 6f 75 73  65 28 71 25 29 0d 01 22  | : .mouse(q%).."|
00000440  1d c9 20 20 39 20 20 20  20 3a 20 f2 64 65 63 6f  |..  9    : .deco|
00000450  64 65 6d 65 6e 75 28 71  25 29 0d 01 2c 1a c9 20  |demenu(q%)..,.. |
00000460  31 37 2c 31 38 20 3a 20  f2 6d 65 73 73 61 67 65  |17,18 : .message|
00000470  28 71 25 29 0d 01 36 05  cb 0d 01 40 07 fd 20 a3  |(q%)..6....@.. .|
00000480  0d 01 4a 04 0d 01 54 0f  dd f2 6d 6f 75 73 65 28  |..J...T...mouse(|
00000490  71 25 29 0d 01 5e 0c 6d  78 25 3d 71 25 21 30 0d  |q%)..^.mx%=q%!0.|
000004a0  01 68 0c 6d 79 25 3d 71  25 21 34 0d 01 72 0c 6d  |.h.my%=q%!4..r.m|
000004b0  62 25 3d 71 25 21 38 0d  01 7c 0d 69 77 25 3d 71  |b%=q%!8..|.iw%=q|
000004c0  25 21 31 32 0d 01 86 0d  69 69 25 3d 71 25 21 31  |%!12....ii%=q%!1|
000004d0  36 0d 01 90 09 65 72 72  3d a3 0d 01 9a 64 e7 20  |6....err=....d. |
000004e0  71 25 21 31 32 3d 2d 32  20 80 20 6d 62 25 3d 26  |q%!12=-2 . mb%=&|
000004f0  30 32 20 8c 20 6d 65 6e  75 69 63 6f 6e 25 3d 71  |02 . menuicon%=q|
00000500  25 21 31 36 3a c8 99 20  22 57 69 6d 70 5f 43 72  |%!16:.. "Wimp_Cr|
00000510  65 61 74 65 4d 65 6e 75  22 2c 2c 69 63 6f 6e 6d  |eateMenu",,iconm|
00000520  65 6e 75 25 2c 6d 78 25  2d 69 63 6f 6e 6d 65 6e  |enu%,mx%-iconmen|
00000530  75 25 21 31 36 2f 32 2d  32 34 2c 31 38 30 0d 01  |u%!16/2-24,180..|
00000540  a4 66 e7 20 71 25 21 31  32 3d 77 69 70 65 20 80  |.f. q%!12=wipe .|
00000550  20 6d 62 25 3d 26 30 32  20 8c 20 6d 65 6e 75 69  | mb%=&02 . menui|
00000560  63 6f 6e 25 3d 71 25 21  31 36 3a c8 99 20 22 57  |con%=q%!16:.. "W|
00000570  69 6d 70 5f 43 72 65 61  74 65 4d 65 6e 75 22 2c  |imp_CreateMenu",|
00000580  2c 69 63 6f 6e 6d 65 6e  75 25 2c 6d 78 25 2d 69  |,iconmenu%,mx%-i|
00000590  63 6f 6e 6d 65 6e 75 25  21 31 36 2f 32 2d 32 34  |conmenu%!16/2-24|
000005a0  2c 6d 79 25 0d 01 ae 10  e7 20 6d 62 25 3c 3e 34  |,my%..... mb%<>4|
000005b0  20 8c 20 e1 0d 01 b8 23  e7 20 69 77 25 3d 77 69  | . ....#. iw%=wi|
000005c0  70 65 20 80 20 69 69 25  3d 34 20 80 20 6d 62 25  |pe . ii%=4 . mb%|
000005d0  21 32 3c 3e 32 20 8c 0d  01 c2 15 46 51 3d 8e 20  |!2<>2 .....FQ=. |
000005e0  66 6e 61 6d 65 24 3a d9  20 23 46 51 0d 01 cc 12  |fname$:. #FQ....|
000005f0  e7 20 46 51 3d 30 20 8c  20 65 72 72 3d b9 0d 01  |. FQ=0 . err=...|
00000600  d6 05 cd 0d 01 e0 60 e7  20 65 72 72 20 8c 20 f2  |......`. err . .|
00000610  63 6c 6f 73 65 77 69 6e  64 6f 77 28 77 69 70 65  |closewindow(wipe|
00000620  29 3a f2 69 6e 64 69 72  49 63 6f 6e 28 66 69 6e  |):.indirIcon(fin|
00000630  69 73 68 65 64 2c 30 2c  22 4f 62 6a 65 63 74 20  |ished,0,"Object |
00000640  6e 6f 74 20 66 6f 75 6e  64 22 29 3a f2 6f 70 65  |not found"):.ope|
00000650  6e 77 69 6e 64 6f 77 28  66 69 6e 69 73 68 65 64  |nwindow(finished|
00000660  29 3a e1 0d 01 ea 4f f2  69 6e 64 69 72 49 63 6f  |):....O.indirIco|
00000670  6e 28 66 69 6e 69 73 68  65 64 2c 30 2c 22 54 68  |n(finished,0,"Th|
00000680  65 20 4f 62 6a 65 63 74  20 68 61 73 20 62 65 65  |e Object has bee|
00000690  6e 20 64 65 6c 65 74 65  64 22 29 3a f2 63 6c 6f  |n deleted"):.clo|
000006a0  73 65 77 69 6e 64 6f 77  28 66 69 6e 69 73 68 65  |sewindow(finishe|
000006b0  64 29 0d 01 f4 23 e7 20  69 77 25 3d 77 69 70 65  |d)...#. iw%=wipe|
000006c0  20 80 20 69 69 25 3d 34  20 80 20 6d 62 25 21 32  | . ii%=4 . mb%!2|
000006d0  3c 3e 32 20 8c 0d 01 fe  33 ff 22 57 49 50 45 20  |<>2 ....3."WIPE |
000006e0  22 2b 66 6e 61 6d 65 24  2b 22 20 7e 43 46 52 7e  |"+fname$+" ~CFR~|
000006f0  56 22 3a f2 6f 70 65 6e  77 69 6e 64 6f 77 28 66  |V":.openwindow(f|
00000700  69 6e 69 73 68 65 64 29  0d 02 08 16 f2 63 6c 6f  |inished).....clo|
00000710  73 65 77 69 6e 64 6f 77  28 77 69 70 65 29 0d 02  |sewindow(wipe)..|
00000720  12 05 cd 0d 02 1c 25 e7  20 69 77 25 3d 77 69 70  |......%. iw%=wip|
00000730  65 20 80 20 69 69 25 3d  34 20 80 20 6d 62 25 21  |e . ii%=4 . mb%!|
00000740  32 3c 3e 32 20 8c 20 e1  0d 02 26 79 e7 20 69 77  |2<>2 . ...&y. iw|
00000750  25 3d 77 69 70 65 20 80  20 69 69 25 3d 35 20 80  |%=wipe . ii%=5 .|
00000760  20 6d 62 25 21 32 3c 3e  32 20 8c 20 f2 63 6c 6f  | mb%!2<>2 . .clo|
00000770  73 65 77 69 6e 64 6f 77  28 77 69 70 65 29 3a f2  |sewindow(wipe):.|
00000780  69 6e 64 69 72 49 63 6f  6e 28 66 69 6e 69 73 68  |indirIcon(finish|
00000790  65 64 2c 30 2c 22 4f 70  65 72 61 74 69 6f 6e 20  |ed,0,"Operation |
000007a0  61 62 6f 72 74 65 64 22  29 3a f2 6f 70 65 6e 77  |aborted"):.openw|
000007b0  69 6e 64 6f 77 28 66 69  6e 69 73 68 65 64 29 3a  |indow(finished):|
000007c0  e1 0d 02 30 40 e7 20 69  77 25 3d 66 69 6e 69 73  |...0@. iw%=finis|
000007d0  68 65 64 20 80 20 69 69  25 3d 31 20 80 20 6d 62  |hed . ii%=1 . mb|
000007e0  25 21 32 3c 3e 32 20 8c  20 f2 63 6c 6f 73 65 77  |%!2<>2 . .closew|
000007f0  69 6e 64 6f 77 28 66 69  6e 69 73 68 65 64 29 3a  |indow(finished):|
00000800  e1 0d 02 3a 05 e1 0d 02  44 14 dd f2 64 65 63 6f  |...:....D...deco|
00000810  64 65 6d 65 6e 75 28 71  25 29 0d 02 4e 0c c8 8e  |demenu(q%)..N...|
00000820  20 21 71 25 20 ca 0d 02  58 26 c9 20 31 20 3a c8  | !q% ...X&. 1 :.|
00000830  99 20 22 57 69 6d 70 5f  43 6c 6f 73 65 44 6f 77  |. "Wimp_CloseDow|
00000840  6e 22 3a f2 77 69 70 65  63 6f 64 65 0d 02 62 05  |n":.wipecode..b.|
00000850  cb 0d 02 6c 05 e1 0d 02  76 04 0d 02 80 11 dd f2  |...l....v.......|
00000860  6d 65 73 73 61 67 65 28  71 25 29 0d 02 8a 0e c8  |message(q%).....|
00000870  8e 20 71 25 21 31 36 20  ca 0d 02 94 27 c9 20 30  |. q%!16 ....'. 0|
00000880  20 3a 20 c8 99 20 22 57  69 6d 70 5f 43 6c 6f 73  | : .. "Wimp_Clos|
00000890  65 44 6f 77 6e 22 3a f2  77 69 70 65 63 6f 64 65  |eDown":.wipecode|
000008a0  0d 02 9e 3e c9 20 33 20  3a 20 66 69 6c 65 6e 61  |...>. 3 : filena|
000008b0  6d 65 24 3d a4 73 74 72  69 6e 67 28 71 25 2b 34  |me$=.string(q%+4|
000008c0  34 29 3a f2 64 65 6c 65  74 65 66 69 6c 65 28 a4  |4):.deletefile(.|
000008d0  73 74 72 69 6e 67 28 71  25 2b 34 34 29 29 0d 02  |string(q%+44))..|
000008e0  a8 05 cb 0d 02 b2 05 e1  0d 02 bc 04 0d 02 c6 17  |................|
000008f0  dd f2 64 65 6c 65 74 65  66 69 6c 65 28 66 69 6c  |..deletefile(fil|
00000900  65 24 29 0d 02 d0 12 66  69 6c 65 74 79 70 65 3d  |e$)....filetype=|
00000910  71 25 21 34 30 0d 02 da  31 f4 20 2a 2a 2a 2a 2a  |q%!40...1. *****|
00000920  2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 48 45 52 45  |************HERE|
00000930  20 21 20 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  | ! *************|
00000940  2a 2a 2a 2a 2a 2a 0d 02  e4 22 20 f2 69 6e 64 69  |******..." .indi|
00000950  72 49 63 6f 6e 28 77 69  70 65 2c 31 2c c2 66 69  |rIcon(wipe,1,.fi|
00000960  6c 65 24 2c 33 38 29 29  0d 02 ee 0d f2 66 69 6c  |le$,38)).....fil|
00000970  65 74 79 70 65 0d 02 f8  10 66 6e 61 6d 65 24 3d  |etype....fname$=|
00000980  66 69 6c 65 24 0d 03 02  16 f2 63 6c 6f 73 65 77  |file$.....closew|
00000990  69 6e 64 6f 77 28 77 69  70 65 29 0d 03 0c 1a f2  |indow(wipe).....|
000009a0  63 6c 6f 73 65 77 69 6e  64 6f 77 28 66 69 6e 69  |closewindow(fini|
000009b0  73 68 65 64 29 0d 03 16  15 f2 6f 70 65 6e 77 69  |shed).....openwi|
000009c0  6e 64 6f 77 28 77 69 70  65 29 0d 03 20 0f 66 69  |ndow(wipe).. .fi|
000009d0  6c 65 24 3d 66 69 6c 65  24 0d 03 2a 05 e1 0d 03  |le$=file$..*....|
000009e0  34 04 0d 03 3e 0d dd f2  69 6e 73 74 61 6c 6c 0d  |4...>...install.|
000009f0  03 48 19 ea 20 73 78 25  2c 73 79 25 2c 73 6d 25  |.H.. sx%,sy%,sm%|
00000a00  2c 70 78 25 2c 70 79 25  0d 03 52 17 73 70 72 69  |,px%,py%..R.spri|
00000a10  74 65 24 20 3d 20 22 21  57 69 70 65 72 32 22 0d  |te$ = "!Wiper2".|
00000a20  03 5c 34 c8 99 20 22 57  69 6d 70 5f 53 70 72 69  |.\4.. "Wimp_Spri|
00000a30  74 65 4f 70 22 2c 34 30  2c 2c 73 70 72 69 74 65  |teOp",40,,sprite|
00000a40  24 20 b8 20 2c 2c 2c 73  78 25 2c 73 79 25 2c 2c  |$ . ,,,sx%,sy%,,|
00000a50  73 6d 25 0d 03 66 39 c8  99 20 22 4f 53 5f 52 65  |sm%..f9.. "OS_Re|
00000a60  61 64 4d 6f 64 65 56 61  72 69 61 62 6c 65 22 2c  |adModeVariable",|
00000a70  73 6d 25 2c 34 20 b8 20  2c 2c 70 78 25 20 3a 20  |sm%,4 . ,,px% : |
00000a80  73 78 25 3d 73 78 25 3c  3c 70 78 25 0d 03 70 39  |sx%=sx%<<px%..p9|
00000a90  c8 99 20 22 4f 53 5f 52  65 61 64 4d 6f 64 65 56  |.. "OS_ReadModeV|
00000aa0  61 72 69 61 62 6c 65 22  2c 73 6d 25 2c 35 20 b8  |ariable",sm%,5 .|
00000ab0  20 2c 2c 70 79 25 20 3a  20 73 79 25 3d 73 79 25  | ,,py% : sy%=sy%|
00000ac0  3c 3c 70 79 25 0d 03 7a  2d e7 20 a9 28 73 70 72  |<<py%..z-. .(spr|
00000ad0  69 74 65 24 29 2a 31 36  20 3e 20 73 78 25 20 8c  |ite$)*16 > sx% .|
00000ae0  20 73 78 25 3d a9 28 73  70 72 69 74 65 24 29 2a  | sx%=.(sprite$)*|
00000af0  31 36 0d 03 84 0a 21 71  25 3d 2d 32 0d 03 8e 23  |16....!q%=-2...#|
00000b00  71 25 21 34 3d 30 3a 71  25 21 38 3d 30 3a 71 25  |q%!4=0:q%!8=0:q%|
00000b10  21 31 32 3d 36 36 3a 71  25 21 31 36 3d 38 36 0d  |!12=66:q%!16=86.|
00000b20  03 98 0b 71 25 21 32 30  3d 32 0d 03 a2 14 24 28  |...q%!20=2....$(|
00000b30  71 25 2b 32 34 29 3d 73  70 72 69 74 65 24 0d 03  |q%+24)=sprite$..|
00000b40  ac 2d c8 99 20 22 57 69  6d 70 5f 43 72 65 61 74  |.-.. "Wimp_Creat|
00000b50  65 49 63 6f 6e 22 2c 2c  71 25 20 b8 20 61 70 70  |eIcon",,q% . app|
00000b60  69 63 6f 6e 25 3a f4 20  21 71 25 0d 03 b6 05 e1  |icon%:. !q%.....|
00000b70  0d 03 c0 04 0d 03 ca 0b  dd f2 6d 65 6e 75 73 0d  |..........menus.|
00000b80  03 d4 14 de 20 69 63 6f  6e 6d 65 6e 75 25 20 31  |.... iconmenu% 1|
00000b90  30 32 34 0d 03 de 1a 24  69 63 6f 6e 6d 65 6e 75  |024....$iconmenu|
00000ba0  25 20 3d 20 22 57 69 70  65 72 20 32 22 0d 03 e8  |% = "Wiper 2"...|
00000bb0  14 69 63 6f 6e 6d 65 6e  75 25 3f 31 32 20 3d 20  |.iconmenu%?12 = |
00000bc0  37 0d 03 f2 14 69 63 6f  6e 6d 65 6e 75 25 3f 31  |7....iconmenu%?1|
00000bd0  33 20 3d 20 32 0d 03 fc  14 69 63 6f 6e 6d 65 6e  |3 = 2....iconmen|
00000be0  75 25 3f 31 34 20 3d 20  37 0d 04 06 14 69 63 6f  |u%?14 = 7....ico|
00000bf0  6e 6d 65 6e 75 25 3f 31  35 20 3d 20 30 0d 04 10  |nmenu%?15 = 0...|
00000c00  23 69 63 6f 6e 6d 65 6e  75 25 21 31 36 20 3d 20  |#iconmenu%!16 = |
00000c10  a9 22 53 50 41 4d 50 45  52 22 2a 31 36 2b 31 32  |."SPAMPER"*16+12|
00000c20  0d 04 1a 15 69 63 6f 6e  6d 65 6e 75 25 21 32 30  |....iconmenu%!20|
00000c30  20 3d 20 34 34 0d 04 24  14 69 63 6f 6e 6d 65 6e  | = 44..$.iconmen|
00000c40  75 25 21 32 34 20 3d 20  30 0d 04 2e 13 6d 25 3d  |u%!24 = 0....m%=|
00000c50  69 63 6f 6e 6d 65 6e 75  25 2b 32 38 0d 04 38 0c  |iconmenu%+28..8.|
00000c60  6d 25 21 30 20 3d 20 30  0d 04 42 0f 6d 25 21 34  |m%!0 = 0..B.m%!4|
00000c70  20 3d 20 69 6e 66 6f 0d  04 4c 14 6d 25 21 38 20  | = info..L.m%!8 |
00000c80  3d 20 26 30 37 30 30 30  30 30 31 0d 04 56 14 24  |= &07000001..V.$|
00000c90  28 6d 25 2b 31 32 29 3d  22 20 49 6e 66 6f 22 0d  |(m%+12)=" Info".|
00000ca0  04 60 0c 6d 25 3d 6d 25  2b 32 34 0d 04 6a 0e 6d  |.`.m%=m%+24..j.m|
00000cb0  25 21 30 20 3d 20 26 38  30 0d 04 74 0d 6d 25 21  |%!0 = &80..t.m%!|
00000cc0  34 20 3d 20 2d 31 0d 04  7e 14 6d 25 21 38 20 3d  |4 = -1..~.m%!8 =|
00000cd0  20 26 30 37 30 30 30 30  30 31 0d 04 88 14 24 28  | &07000001....$(|
00000ce0  6d 25 2b 31 32 29 3d 22  20 51 75 69 74 22 0d 04  |m%+12)=" Quit"..|
00000cf0  92 05 e1 0d 04 9c 04 0d  04 a6 10 dd a4 73 74 72  |.............str|
00000d00  69 6e 67 28 61 25 29 0d  04 b0 2d ea 20 62 24 3a  |ing(a%)...-. b$:|
00000d10  62 24 3d 22 22 3a c8 95  20 3f 61 25 3c 3e 30 3a  |b$="":.. ?a%<>0:|
00000d20  62 24 2b 3d bd 3f 61 25  3a 61 25 2b 3d 31 3a ce  |b$+=.?a%:a%+=1:.|
00000d30  3a 3d 62 24 0d 04 ba 04  0d 04 c4 1a dd a4 65 72  |:=b$..........er|
00000d40  72 62 6c 6b 28 65 72 72  25 2c 72 65 70 6f 72 74  |rblk(err%,report|
00000d50  24 29 0d 04 ce 3e 21 65  72 72 62 6c 6b 25 3d 65  |$)...>!errblk%=e|
00000d60  72 72 25 3a 24 28 65 72  72 62 6c 6b 25 2b 34 29  |rr%:$(errblk%+4)|
00000d70  3d 72 65 70 6f 72 74 24  20 3a f4 20 2b 22 20 61  |=report$ :. +" a|
00000d80  74 20 6c 69 6e 65 20 22  2b 53 54 52 24 45 52 4c  |t line "+STR$ERL|
00000d90  0d 04 d8 1f 65 72 72 62  6c 6b 25 3f 28 34 2b a9  |....errblk%?(4+.|
00000da0  24 28 65 72 72 62 6c 6b  25 2b 34 29 29 3d 30 0d  |$(errblk%+4))=0.|
00000db0  04 e2 0c 3d 65 72 72 62  6c 6b 25 0d 04 ec 1a dd  |...=errblk%.....|
00000dc0  20 f2 6f 70 65 6e 77 69  6e 64 6f 77 28 68 61 6e  | .openwindow(han|
00000dd0  64 6c 65 25 29 0d 04 f6  10 71 25 21 30 3d 68 61  |dle%)....q%!0=ha|
00000de0  6e 64 6c 65 25 0d 05 00  1f c8 99 22 57 69 6d 70  |ndle%......"Wimp|
00000df0  5f 47 65 74 57 69 6e 64  6f 77 53 74 61 74 65 22  |_GetWindowState"|
00000e00  2c 2c 71 25 0d 05 0a 1b  c8 99 22 57 69 6d 70 5f  |,,q%......"Wimp_|
00000e10  4f 70 65 6e 57 69 6e 64  6f 77 22 2c 2c 71 25 0d  |OpenWindow",,q%.|
00000e20  05 14 05 e1 0d 05 1e 1b  dd 20 f2 63 6c 6f 73 65  |......... .close|
00000e30  77 69 6e 64 6f 77 28 68  61 6e 64 6c 65 25 29 0d  |window(handle%).|
00000e40  05 28 10 71 25 21 30 3d  68 61 6e 64 6c 65 25 0d  |.(.q%!0=handle%.|
00000e50  05 32 1f c8 99 22 57 69  6d 70 5f 47 65 74 57 69  |.2..."Wimp_GetWi|
00000e60  6e 64 6f 77 53 74 61 74  65 22 2c 2c 71 25 0d 05  |ndowState",,q%..|
00000e70  3c 1c c8 99 22 57 69 6d  70 5f 43 6c 6f 73 65 57  |<..."Wimp_CloseW|
00000e80  69 6e 64 6f 77 22 2c 2c  71 25 0d 05 46 05 e1 0d  |indow",,q%..F...|
00000e90  05 50 19 dd 20 f2 67 65  74 49 63 6f 6e 49 6e 66  |.P.. .getIconInf|
00000ea0  6f 28 68 25 2c 69 25 29  0d 05 5a 3a 21 62 6c 6f  |o(h%,i%)..Z:!blo|
00000eb0  63 6b 3d 68 25 20 3a 20  62 6c 6f 63 6b 21 34 3d  |ck=h% : block!4=|
00000ec0  69 25 20 3a 20 c8 99 20  22 57 69 6d 70 5f 47 65  |i% : .. "Wimp_Ge|
00000ed0  74 49 63 6f 6e 53 74 61  74 65 22 2c 2c 62 6c 6f  |tIconState",,blo|
00000ee0  63 6b 0d 05 64 40 69 78  30 25 3d 62 6c 6f 63 6b  |ck..d@ix0%=block|
00000ef0  21 38 20 3a 20 69 79 30  25 3d 62 6c 6f 63 6b 21  |!8 : iy0%=block!|
00000f00  31 32 20 3a 20 69 78 31  25 3d 62 6c 6f 63 6b 21  |12 : ix1%=block!|
00000f10  31 36 20 3a 20 69 79 31  25 3d 62 6c 6f 63 6b 21  |16 : iy1%=block!|
00000f20  32 30 0d 05 6e 2b 66 6c  61 67 73 25 3d 62 6c 6f  |20..n+flags%=blo|
00000f30  63 6b 21 32 34 20 3a 20  e7 20 28 66 6c 61 67 73  |ck!24 : . (flags|
00000f40  25 20 80 20 26 31 30 30  29 3e 30 20 8c 0d 05 78  |% . &100)>0 ...x|
00000f50  1a 20 20 20 20 20 3a 20  64 61 74 61 24 3d 24 62  |.     : data$=$b|
00000f60  6c 6f 63 6b 21 32 38 0d  05 82 19 cc 20 3a 20 64  |lock!28..... : d|
00000f70  61 74 61 24 3d 24 28 62  6c 6f 63 6b 2b 32 38 29  |ata$=$(block+28)|
00000f80  0d 05 8c 05 cd 0d 05 96  05 e1 0d 05 a0 1d dd 20  |............... |
00000f90  f2 69 6e 64 69 72 49 63  6f 6e 28 68 25 2c 69 25  |.indirIcon(h%,i%|
00000fa0  2c 74 65 78 74 24 29 0d  05 aa 3f f2 67 65 74 49  |,text$)...?.getI|
00000fb0  63 6f 6e 49 6e 66 6f 28  68 25 2c 69 25 29 20 3a  |conInfo(h%,i%) :|
00000fc0  20 24 62 6c 6f 63 6b 21  32 38 3d 74 65 78 74 24  | $block!28=text$|
00000fd0  20 3a 20 f2 73 65 74 49  63 6f 6e 28 68 25 2c 69  | : .setIcon(h%,i|
00000fe0  25 2c 30 2c 30 29 0d 05  b4 05 e1 0d 05 be 20 dd  |%,0,0)........ .|
00000ff0  20 f2 73 65 74 49 63 6f  6e 28 68 25 2c 69 25 2c  | .setIcon(h%,i%,|
00001000  65 6f 72 25 2c 6d 61 73  6b 25 29 0d 05 c8 3a 21  |eor%,mask%)...:!|
00001010  62 6c 6f 63 6b 3d 68 25  20 3a 20 62 6c 6f 63 6b  |block=h% : block|
00001020  21 34 3d 69 25 20 3a 20  62 6c 6f 63 6b 21 38 3d  |!4=i% : block!8=|
00001030  65 6f 72 25 20 3a 20 62  6c 6f 63 6b 21 31 32 3d  |eor% : block!12=|
00001040  6d 61 73 6b 25 0d 05 d2  21 c8 99 20 22 57 69 6d  |mask%...!.. "Wim|
00001050  70 5f 53 65 74 49 63 6f  6e 53 74 61 74 65 22 2c  |p_SetIconState",|
00001060  2c 62 6c 6f 63 6b 0d 05  dc 05 e1 0d 05 e6 0f dd  |,block..........|
00001070  20 f2 66 69 6c 65 74 79  70 65 0d 05 f0 0c 74 79  | .filetype....ty|
00001080  70 65 24 3d 22 22 0d 05  fa 27 e7 20 66 69 6c 65  |pe$=""...'. file|
00001090  74 79 70 65 3d 34 30 39  36 20 8c 20 74 79 70 65  |type=4096 . type|
000010a0  24 3d 22 44 69 72 65 63  74 6f 72 79 22 0d 06 04  |$="Directory"...|
000010b0  15 e7 20 66 69 6c 65 74  79 70 65 3d 38 31 39 32  |.. filetype=8192|
000010c0  20 8c 0d 06 0e 17 74 79  70 65 24 3d 22 41 70 70  | .....type$="App|
000010d0  6c 69 63 61 74 69 6f 6e  22 0d 06 18 09 6e 24 3d  |lication"....n$=|
000010e0  22 22 0d 06 22 1e 65 72  3d a3 3a e3 20 4b 3d a9  |""..".er=.:. K=.|
000010f0  28 66 69 6c 65 24 29 20  b8 20 31 20 88 20 2d 31  |(file$) . 1 . -1|
00001100  0d 06 2c 38 e7 20 c1 66  69 6c 65 24 2c 4b 2c 31  |..,8. .file$,K,1|
00001110  29 3c 3e 22 2e 22 20 80  20 65 72 3d a3 20 8c 20  |)<>"." . er=. . |
00001120  6e 24 3d c1 66 69 6c 65  24 2c 4b 2c 31 29 2b 6e  |n$=.file$,K,1)+n|
00001130  24 20 8b 20 65 72 3d b9  0d 06 36 07 ed 20 4b 0d  |$ . er=...6.. K.|
00001140  06 40 1c 74 79 70 65 24  3d 74 79 70 65 24 2b 22  |.@.type$=type$+"|
00001150  20 20 28 22 2b 6e 24 2b  22 29 22 0d 06 4a 05 cd  |  ("+n$+")"..J..|
00001160  0d 06 54 27 e7 20 66 69  6c 65 74 79 70 65 3e 2d  |..T'. filetype>-|
00001170  31 20 80 20 66 69 6c 65  74 79 70 65 3c 28 26 46  |1 . filetype<(&F|
00001180  46 46 2b 31 29 20 8c 0d  06 5e 1a 24 4e 61 6d 65  |FF+1) ...^.$Name|
00001190  41 72 72 61 79 25 3d c4  35 34 2c bd 28 31 33 29  |Array%=.54,.(13)|
000011a0  29 0d 06 68 47 c8 99 20  22 58 4f 53 5f 52 65 61  |)..hG.. "XOS_Rea|
000011b0  64 56 61 72 56 61 6c 22  2c 22 46 69 6c 65 24 54  |dVarVal","File$T|
000011c0  79 70 65 5f 22 2b c3 7e  28 66 69 6c 65 74 79 70  |ype_"+.~(filetyp|
000011d0  65 29 2c 4e 61 6d 65 41  72 72 61 79 25 2c 4e 61  |e),NameArray%,Na|
000011e0  6d 65 41 72 72 61 79 25  0d 06 72 13 66 74 24 3d  |meArray%..r.ft$=|
000011f0  24 4e 61 6d 65 41 72 72  61 79 25 0d 06 7c 62 e7  |$NameArray%..|b.|
00001200  20 a9 20 66 74 24 3e 30  20 8c 20 74 79 70 65 24  | . ft$>0 . type$|
00001210  3d 22 46 69 6c 65 20 54  79 70 65 20 3a 20 22 2b  |="File Type : "+|
00001220  c3 7e 28 66 69 6c 65 74  79 70 65 29 2b 22 20 28  |.~(filetype)+" (|
00001230  22 2b 66 74 24 2b 22 29  22 20 8b 20 74 79 70 65  |"+ft$+")" . type|
00001240  24 3d 22 46 69 6c 65 20  54 79 70 65 20 3a 20 22  |$="File Type : "|
00001250  2b c3 7e 28 66 69 6c 65  74 79 70 65 29 0d 06 86  |+.~(filetype)...|
00001260  05 cd 0d 06 90 1c f2 69  6e 64 69 72 49 63 6f 6e  |.......indirIcon|
00001270  28 77 69 70 65 2c 37 2c  74 79 70 65 24 29 0d 06  |(wipe,7,type$)..|
00001280  9a 05 e1 0d 06 a4 0f dd  20 f2 77 69 70 65 63 6f  |........ .wipeco|
00001290  64 65 0d 06 ae 15 c8 99  20 22 48 6f 75 72 67 6c  |de...... "Hourgl|
000012a0  61 73 73 5f 4f 6e 22 0d  06 b8 12 45 24 3d 22 46  |ass_On"....E$="F|
000012b0  75 63 6b 20 4f 66 66 20  22 0d 06 c2 07 63 3d 30  |uck Off "....c=0|
000012c0  0d 06 cc 15 e3 20 4a 3d  90 2b 33 35 20 b8 20 b8  |..... J=.+35 . .|
000012d0  50 2d 31 34 30 0d 06 d6  0d e7 20 3f 4a 3d 31 33  |P-140..... ?J=13|
000012e0  20 8c 0d 06 e0 08 4a 2b  3d 33 0d 06 ea 05 cc 0d  | .....J+=3......|
000012f0  06 f4 0d e7 20 3f 4a 3c  3e 30 20 8c 0d 06 fe 18  |.... ?J<>0 .....|
00001300  63 3d 63 2b 31 3a e7 20  63 3e a9 20 45 24 20 8c  |c=c+1:. c>. E$ .|
00001310  20 63 3d 31 0d 07 08 12  3f 4a 3d 97 28 c1 45 24  | c=1....?J=.(.E$|
00001320  2c 63 2c 31 29 29 0d 07  12 05 cd 0d 07 1c 05 cd  |,c,1))..........|
00001330  0d 07 26 07 ed 20 4a 0d  07 30 16 c8 99 20 22 48  |..&.. J..0... "H|
00001340  6f 75 72 67 6c 61 73 73  5f 4f 66 66 22 0d 07 3a  |ourglass_Off"..:|
00001350  05 e0 0d ff                                       |....|
00001354