Home » Archimedes archive » Archimedes World » archimedes_world_volume_16_issue_1_scp.adf » !Wimp10_wimp » !NewApp12/!runimage
!NewApp12/!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 » Archimedes World » archimedes_world_volume_16_issue_1_scp.adf » !Wimp10_wimp |
Filename: | !NewApp12/!runimage |
Read OK: | ✔ |
File size: | 1E9F bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
1 REM> Prog12 for Just4Wimps 2 ON ERROR:REPORT:PRINT ERL:PROCError:END 3 DIM block%600,ws%300,Text%12,IconSprite%12,menspc%200,submenspc%200 4 DIM time%100,stamp%100:Input%=0:N%=FALSE:Code%=1 5 REM SYS"XDDEUtils_ThrowbackStart" 6 Name$ = "New App 12" 7 Purpose$ = "Archimedes world Error demo" 8 Author$ = "Simon Anthony" 9 Version$ = "1.00" 10 Contact$ = "simon@ecsltd.co.uk" 11 wsend%=ws%+300 12 SYS "Wimp_Initialise",200,&4B534154,"Input/Output�b" TO ,TaskHandle% 13 PROCTemplates 14 PROCCreateSubMenu 15 PROCCreateMenu 16 PROCIconBarIcon 17 !block%=input% 18 PROCOpenWindow 19 !block%=output% 20 PROCOpenWindow 21 ON ERROR PROCError 22 REPEAT 23 SYS "Wimp_Poll",0,block%,0 TO Reason% 24 CASE Reason% OF 25 WHEN2:SYS"Wimp_OpenWindow",,block% 26 WHEN3:SYS"Wimp_CloseWindow",,block% 27 WHEN6:PROCMouseClick 28 WHEN8 29 PROCReadInput 30 PROCSetIcon_State(output%,0,0) 31 WHEN9:PROCMenuClick 32 WHEN17,18:PROCMessage 33 ENDCASE 34 UNTIL N%=TRUE 35 SYS"Wimp_CloseDown",TaskHandle% 36 END 37 38 DEF PROCIconBarIcon 39 $Text%="NewApp 12" 40 $IconSprite%="s"+"!NewApp12" 41 !block%=-1 42 block%!4=0 43 block%!8=-16 44 block%!12=128 45 block%!16=88 46 block%!20=&1700310B 47 block%!24=Text% 48 block%!28=IconSprite% 49 block%!32=20 50 SYS"Wimp_CreateIcon",,block% 51 ENDPROC 52 53 DEF PROCMessage 54 CASE block%!16 OF 55 WHEN 0:N%=TRUE 56 ENDCASE 57 ENDPROC 58 59 DEF PROCOpenWindow 60 SYS "Wimp_GetWindowState",,block% 61 SYS "Wimp_OpenWindow",,block% 62 ENDPROC 63 64 DEF PROCSetIcon_State(WindowHandle%,Icon%,State%) 65 !block%=WindowHandle% 66 block%!4=Icon%: 67 IF State%=1 Clear%=&200000:Eor%=&200000:REM BIT 21 SET 68 IF State%=0 Clear%=&200000:Eor%=&000000 69 block%!8=Eor% 70 block%!12=Clear% 71 SYS"Wimp_SetIconState",,block% 72 ENDPROC 73 74 DEF PROCTemplates 75 SYS "Wimp_OpenTemplate",,"<Obey$Dir>.Templates" 76 SYS "Wimp_LoadTemplate",,block%,ws%,wsend%,-1,"Input",0 TO ,,ws% 77 SYS "Wimp_CreateWindow",,block% TO input% 78 Input%=!(block%+88+32*0+20) 79 SYS "Wimp_LoadTemplate",,block%,ws%,wsend%,-1,"Output",0 TO ,,ws% 80 SYS "Wimp_CreateWindow",,block% TO output% 81 Output%=!(block%+88+32*0+20) 82 SYS "Wimp_LoadTemplate",,block%,ws%,wsend%,-1,"Info",0 TO ,,ws% 83 Name%=!(block%+88+32*0+20) 84 Purpose%=!(block%+88+32*1+20) 85 Author%=!(block%+88+32*2+20) 86 Version%=!(block%+88+32*3+20) 87 Contact%=!(block%+88+32*4+20) 88 Date$=FNReadDateStamp("<obey$dir>.!Runimage") 89 SYS "Wimp_CreateWindow",,block% TO info% 90 $Name%=Name$ 91 $Purpose%=Purpose$ 92 $Author%=Author$ 93 $Version%="Vr. "+Version$+" ("+Date$+")" 94 $Contact%=Contact$ 95 PROCSetIcon_State(info%,0,0) 96 PROCSetIcon_State(info%,1,0) 97 PROCSetIcon_State(info%,2,0) 98 PROCSetIcon_State(info%,3,0) 99 PROCSetIcon_State(info%,4,0) 100 SYS "Wimp_CloseTemplate" 101 ENDPROC 102 103 DEF PROCMouseClick 104 SYS"Wimp_GetPointerInfo",,block% 105 REM------------Icon click actions----------------------- 106 CASE block%!12 OF 107 WHEN -2 108 CASE block%!8 OF 108 WHEN 1 109 !block%=input% 110 SYS"Wimp_CloseWindow",,block% 111 !block%=output% 112 SYS"Wimp_CloseWindow",,block% 109 WHEN 2:PROCShowMenu(MainMenu%,!block%-64,96+2*44) 110 WHEN 4 111 !block%=input% 112 SYS"Wimp_GetWindowState",,block%:block%!28=-1 113 SYS"Wimp_OpenWindow",,block% 114 !block%=output% 115 SYS"Wimp_GetWindowState",,block%:block%!28=-1 116 SYS"Wimp_OpenWindow",,block% 111 ENDCASE 112 112 WHEN input%,output% 113 CASE block%!8 OF 114 WHEN 2:PROCShowMenu(MainMenu%,!block%-64,block%!4) 115 ENDCASE 116 116 CASE block%!16 OF 117 WHEN 1:PROCMakeError 118 ENDCASE 119 ENDCASE 120 ENDCASE 121 ENDPROC 122 123 DEF PROCCreateMenu 124 start%=menspc%:REM 125 $(start%)="New App 12" 126 start%?12=7: REM title forground colour 127 start%?13=2: REM title background col 128 start%?14=7: REM work area foreground colour 129 start%?15=0: REM work area back col 130 start%!20=44: REM height of menu items 131 start%!24=0: REM gap between items 132 start%!16=96: REM width of menu 133 menspc%+=28: 134 REM data for Info 135 !menspc%=0 : REM menu flags 136 menspc%!4=info%: REM sub menu pointer 137 menspc%!8=&07000021:REM icon flags 138 $(menspc%+12)="Info" 139 menspc%+=24: 140 REM data for Code Submenu entry 141 !menspc%=0 : REM menu flags 142 menspc%!4=submenu%: REM sub menu pointer 143 menspc%!8=&07000021:REM icon flags 144 $(menspc%+12)="Code" 145 menspc%+=24: 146 REM data for Error entry 147 !menspc%=0 : REM menu flags 148 menspc%!4=-1: REM sub menu pointer 149 menspc%!8=&07000021:REM icon flags 150 $(menspc%+12)="Error" 151 menspc%+=24: 152 REM data for quit 153 !menspc%=&80: REM menu flags with bit seven set to show end of list 154 menspc%!4=-1: REM sub menu pointer 155 menspc%!8=&07000021: REM icon flags again 156 $(menspc%+12)="Quit" 157 menspc%+=24: 158 MainMenu%=start% 159 ENDPROC 160 161 DEF PROCCreateSubMenu 162 start%=submenspc%:REM 163 $(start%)="Code" 164 start%?12=7: REM title forground colour 165 start%?13=2: REM title background col 166 start%?14=7: REM work area foreground colour 167 start%?15=0: REM work area back col 168 start%!20=44: REM height of menu items 169 start%!24=0: REM gap between items 170 start%!16=96: REM width of menu 171 submenspc%+=28: 172 173 !submenspc%=0 : 174 submenspc%!4=-1: 175 submenspc%!8=&07000021 176 $(submenspc%+12)="0" 177 submenspc%+=24: 178 179 !submenspc%=0 : 180 submenspc%!4=-1: 181 submenspc%!8=&07000021 182 $(submenspc%+12)="1" 183 submenspc%+=24: 184 185 !submenspc%=0 : 186 submenspc%!4=-1: 187 submenspc%!8=&07000021 188 $(submenspc%+12)="2" 189 submenspc%+=24: 190 191 !submenspc%=0 : 192 submenspc%!4=-1: 193 submenspc%!8=&07000021 194 $(submenspc%+12)="3" 195 submenspc%+=24: 196 197 !submenspc%=0 : 198 submenspc%!4=-1: 199 submenspc%!8=&07000021 200 $(submenspc%+12)="4" 201 submenspc%+=24: 202 REM data for last entry in submenu 203 !submenspc%=&80: REM menu flags with bit seven set to show end of list 204 submenspc%!4=-1: REM sub menu pointer 205 submenspc%!8=&07000021: REM icon flags again 206 $(submenspc%+12)="5" 207 submenspc%+=24: 208 submenu%=start% 209 ENDPROC 210 211 DEF PROCShowMenu(Menu%,x%,y%) 212 topmenu%=Menu%:topx%=x%:topy%=y% 213 SYS"Wimp_CreateMenu",,Menu%,x%,y% 214 ENDPROC 215 216 DEF PROCMenuClick 217 LOCAL MenuSelection% 218 MenuSelection%=block%+100 219 SYS"Wimp_DecodeMenu",,MainMenu%,block%,MenuSelection% 220 SYS"Wimp_GetPointerInfo",,block%:XWinpos%=!block%:YWinpos%=block%!4 221 adj%=(block%!8 AND 1) 222 CASE $MenuSelection% OF 223 WHEN "Info": !block%=info%:PROCOpenWindow 224 WHEN "Code.0":VDU7:Code%=0 225 WHEN "Code.1":VDU7:Code%=1 226 WHEN "Code.2":VDU7:Code%=2 227 WHEN "Code.3":VDU7:Code%=3 228 WHEN "Code.4":VDU7:Code%=4 229 WHEN "Code.5":VDU7:Code%=5 230 WHEN "Error":PROCMakeError 231 WHEN "Help": OSCLI("Filer_Run <Helpdata$Dir>.Name-of-Stronghelp-manual") 232 WHEN "Quit": N%=TRUE 233 ENDCASE 234 IF adj% PROCShowMenu(MainMenu%,!block%-64,96+2*44):REM keeps menu displayed on Adjust click 235 ENDPROC 236 237 DEF PROCError:SYS"XDDEUtils_ThrowbackStart":REM Moved here to stop window opening too soon. 238 !block%=ERR 239 SYS"XDDEUtils_ThrowbackSend",1,,+"<Obey$dir>.!runimage",ERL,1,"Error "+STR$(ERR)+" "+REPORT$+" "+TIME$ 240 $(block%+4)=REPORT$+" at line "+STR$ ERL+" "+TIME$+CHR$0 241 SYS "Wimp_ReportError",block%,2,"NewApp12" 242 ENDPROC 243 244 DEF FNReadDateStamp($stamp%) 245 SYS"OS_File",5,$stamp% TO ObType,,FileType,Date,Length,Atributes 246 !stamp%=Date 247 stamp%!4=FileType 248 SYS"OS_ConvertStandardDateAndTime",stamp%,time%,1000 249 Stamp$=FNExtractName(time%) 250 =Stamp$ 251 252 DEF FNExtractName(F%):Z$="": 253 WHILE(?F%>31AND?F%<256)ANDLEN(Z$)<255: 254 Z$=Z$+CHR$?F% 255 F%=F%+1:ENDWHILE 256 =Z$ 257 258 DEF PROCReadInput 259 FOR n%=0 TO 14 260 Output%?n%=0 261 NEXT 262 n%=0 263 WHILE Input%?n%>32 264 Output%?n%=Code%+Input%?n% 265 n%+=1 266 ENDWHILE 267 Input%?n%=13 268 $Output%=$Output% 269 ENDPROC 270 271 DEF PROCMakeError 272 A=RND(255) 273 Error$=STR$ A+"#####-Demo Error "+STR$ A+"-#####" 275 OSCLI("ERROR "+Error$) 276 ENDPROC
�> Prog12 for Just4Wimps � �:�:� �:�Error:� G � block%600,ws%300,Text%12,IconSprite%12,menspc%200,submenspc%200 0 � time%100,stamp%100:Input%=0:N%=�:Code%=1 % � SYS"XDDEUtils_ThrowbackStart" Name$ = "New App 12" . Purpose$ = "Archimedes world Error demo" Author$ = "Simon Anthony" Version$ = "1.00" % Contact$ = "simon@ecsltd.co.uk" wsend%=ws%+300 H ș "Wimp_Initialise",200,&4B534154,"Input/Output�b" � ,TaskHandle% �Templates �CreateSubMenu �CreateMenu �IconBarIcon !block%=input% �OpenWindow !block%=output% �OpenWindow � � �Error � ) ș "Wimp_Poll",0,block%,0 � Reason% Ȏ Reason% � $ �2:ș"Wimp_OpenWindow",,block% % �3:ș"Wimp_CloseWindow",,block% �6:�MouseClick �8 �ReadInput & �SetIcon_State(output%,0,0) �9:�MenuClick �17,18:�Message ! � " � N%=� #$ ș"Wimp_CloseDown",TaskHandle% $ � % & � �IconBarIcon ' $Text%="NewApp 12" (" $IconSprite%="s"+"!NewApp12" ) !block%=-1 * block%!4=0 + block%!8=-16 , block%!12=128 - block%!16=88 . block%!20=&1700310B / block%!24=Text% 0 block%!28=IconSprite% 1 block%!32=20 2! ș"Wimp_CreateIcon",,block% 3 � 4 5 � �Message 6 Ȏ block%!16 � 7 � 0:N%=� 8 � 9 � : ; � �OpenWindow <& ș "Wimp_GetWindowState",,block% =" ș "Wimp_OpenWindow",,block% > � ? @2 � �SetIcon_State(WindowHandle%,Icon%,State%) A !block%=WindowHandle% B block%!4=Icon%: C9 � State%=1 Clear%=&200000:Eor%=&200000:� BIT 21 SET D, � State%=0 Clear%=&200000:Eor%=&000000 E block%!8=Eor% F block%!12=Clear% G# ș"Wimp_SetIconState",,block% H � I J � �Templates K4 ș "Wimp_OpenTemplate",,"<Obey$Dir>.Templates" LD ș "Wimp_LoadTemplate",,block%,ws%,wsend%,-1,"Input",0 � ,,ws% M- ș "Wimp_CreateWindow",,block% � input% N! Input%=!(block%+88+32*0+20) OE ș "Wimp_LoadTemplate",,block%,ws%,wsend%,-1,"Output",0 � ,,ws% P. ș "Wimp_CreateWindow",,block% � output% Q" Output%=!(block%+88+32*0+20) RC ș "Wimp_LoadTemplate",,block%,ws%,wsend%,-1,"Info",0 � ,,ws% S Name%=!(block%+88+32*0+20) T# Purpose%=!(block%+88+32*1+20) U" Author%=!(block%+88+32*2+20) V# Version%=!(block%+88+32*3+20) W# Contact%=!(block%+88+32*4+20) X2 Date$=�ReadDateStamp("<obey$dir>.!Runimage") Y, ș "Wimp_CreateWindow",,block% � info% Z $Name%=Name$ [ $Purpose%=Purpose$ \ $Author%=Author$ ]. $Version%="Vr. "+Version$+" ("+Date$+")" ^ $Contact%=Contact$ _ �SetIcon_State(info%,0,0) ` �SetIcon_State(info%,1,0) a �SetIcon_State(info%,2,0) b �SetIcon_State(info%,3,0) c �SetIcon_State(info%,4,0) d ș "Wimp_CloseTemplate" e � f g � �MouseClick h% ș"Wimp_GetPointerInfo",,block% i< �------------Icon click actions----------------------- j Ȏ block%!12 � k � -2 l Ȏ block%!8 � l � 1 m !block%=input% n' ș"Wimp_CloseWindow",,block% o !block%=output% p' ș"Wimp_CloseWindow",,block% m3 � 2:�ShowMenu(MainMenu%,!block%-64,96+2*44) n � 4 o !block%=input% p7 ș"Wimp_GetWindowState",,block%:block%!28=-1 q& ș"Wimp_OpenWindow",,block% r !block%=output% s7 ș"Wimp_GetWindowState",,block%:block%!28=-1 t& ș"Wimp_OpenWindow",,block% o � p p � input%,output% q Ȏ block%!8 � r3 � 2:�ShowMenu(MainMenu%,!block%-64,block%!4) s � t t Ȏ block%!16 � u � 1:�MakeError v � w � x � y � z { � �CreateMenu | start%=menspc%:� } $(start%)="New App 12" ~, start%?12=7: � title forground colour * start%?13=2: � title background col �1 start%?14=7: � work area foreground colour �( start%?15=0: � work area back col �* start%!20=44: � height of menu items �' start%!24=0: � gap between items �# start%!16=96: � width of menu � menspc%+=28: �# � data for Info � !menspc%=0 : � menu flags �) menspc%!4=info%: � sub menu pointer �& menspc%!8=&07000021:� icon flags � $(menspc%+12)="Info" � menspc%+=24: �1 � data for Code Submenu entry � !menspc%=0 : � menu flags �, menspc%!4=submenu%: � sub menu pointer �& menspc%!8=&07000021:� icon flags � $(menspc%+12)="Code" � menspc%+=24: �* � data for Error entry � !menspc%=0 : � menu flags �& menspc%!4=-1: � sub menu pointer �& menspc%!8=&07000021:� icon flags � $(menspc%+12)="Error" � menspc%+=24: �# � data for quit �G !menspc%=&80: � menu flags with bit seven set to show end of list �& menspc%!4=-1: � sub menu pointer �- menspc%!8=&07000021: � icon flags again � $(menspc%+12)="Quit" � menspc%+=24: � MainMenu%=start% � � � � � �CreateSubMenu � start%=submenspc%:� � $(start%)="Code" �, start%?12=7: � title forground colour �* start%?13=2: � title background col �1 start%?14=7: � work area foreground colour �( start%?15=0: � work area back col �* start%!20=44: � height of menu items �' start%!24=0: � gap between items �# start%!16=96: � width of menu � submenspc%+=28: � � !submenspc%=0 : � submenspc%!4=-1: � submenspc%!8=&07000021 � $(submenspc%+12)="0" � submenspc%+=24: � � !submenspc%=0 : � submenspc%!4=-1: � submenspc%!8=&07000021 � $(submenspc%+12)="1" � submenspc%+=24: � � !submenspc%=0 : � submenspc%!4=-1: � submenspc%!8=&07000021 � $(submenspc%+12)="2" � submenspc%+=24: � � !submenspc%=0 : � submenspc%!4=-1: � submenspc%!8=&07000021 � $(submenspc%+12)="3" � submenspc%+=24: � � !submenspc%=0 : � submenspc%!4=-1: � submenspc%!8=&07000021 � $(submenspc%+12)="4" � submenspc%+=24: �7 � data for last entry in submenu �J !submenspc%=&80: � menu flags with bit seven set to show end of list �) submenspc%!4=-1: � sub menu pointer �0 submenspc%!8=&07000021: � icon flags again � $(submenspc%+12)="5" � submenspc%+=24: � submenu%=start% � � � � � �ShowMenu(Menu%,x%,y%) �& topmenu%=Menu%:topx%=x%:topy%=y% �& ș"Wimp_CreateMenu",,Menu%,x%,y% � � � � � �MenuClick � � MenuSelection% � MenuSelection%=block%+100 �: ș"Wimp_DecodeMenu",,MainMenu%,block%,MenuSelection% �H ș"Wimp_GetPointerInfo",,block%:XWinpos%=!block%:YWinpos%=block%!4 � adj%=(block%!8 � 1) � Ȏ $MenuSelection% � �) � "Info": !block%=info%:�OpenWindow � � "Code.0":�7:Code%=0 � � "Code.1":�7:Code%=1 � � "Code.2":�7:Code%=2 � � "Code.3":�7:Code%=3 � � "Code.4":�7:Code%=4 � � "Code.5":�7:Code%=5 � � "Error":�MakeError �G � "Help": �("Filer_Run <Helpdata$Dir>.Name-of-Stronghelp-manual") � � "Quit": N%=� � � �[ � adj% �ShowMenu(MainMenu%,!block%-64,96+2*44):� keeps menu displayed on Adjust click � � � �Y � �Error:ș"XDDEUtils_ThrowbackStart":� Moved here to stop window opening too soon. � !block%=� �\ ș"XDDEUtils_ThrowbackSend",1,,+"<Obey$dir>.!runimage",�,1,"Error "+�(�)+" "+�$+" "+�$ �. $(block%+4)=�$+" at line "+� �+" "+�$+�0 �/ ș "Wimp_ReportError",block%,2,"NewApp12" � � � � � �ReadDateStamp($stamp%) �D ș"OS_File",5,$stamp% � ObType,,FileType,Date,Length,Atributes � !stamp%=Date � stamp%!4=FileType �9 ș"OS_ConvertStandardDateAndTime",stamp%,time%,1000 � Stamp$=�ExtractName(time%) � =Stamp$ � � � �ExtractName(F%):Z$="": �# ȕ(?F%>31�?F%<256)��(Z$)<255: � Z$=Z$+�?F% � F%=F%+1:� =Z$ � �ReadInput � n%=0 � 14 Output%?n%=0 � n%=0 ȕ Input%?n%>32 Output%?n%=Code%+Input%?n% n%+=1 � Input%?n%=13 $Output%=$Output% � � �MakeError A=�(255) 1 Error$=� A+"#####-Demo Error "+� A+"-#####" �("ERROR "+Error$) � �
00000000 0d 00 01 1e 20 20 f4 3e 20 50 72 6f 67 31 32 20 |.... .> Prog12 | 00000010 66 6f 72 20 4a 75 73 74 34 57 69 6d 70 73 0d 00 |for Just4Wimps..| 00000020 02 18 20 20 ee 20 85 3a f6 3a f1 20 9e 3a f2 45 |.. . .:.:. .:.E| 00000030 72 72 6f 72 3a e0 0d 00 03 47 20 20 de 20 62 6c |rror:....G . bl| 00000040 6f 63 6b 25 36 30 30 2c 77 73 25 33 30 30 2c 54 |ock%600,ws%300,T| 00000050 65 78 74 25 31 32 2c 49 63 6f 6e 53 70 72 69 74 |ext%12,IconSprit| 00000060 65 25 31 32 2c 6d 65 6e 73 70 63 25 32 30 30 2c |e%12,menspc%200,| 00000070 73 75 62 6d 65 6e 73 70 63 25 32 30 30 0d 00 04 |submenspc%200...| 00000080 30 20 20 de 20 74 69 6d 65 25 31 30 30 2c 73 74 |0 . time%100,st| 00000090 61 6d 70 25 31 30 30 3a 49 6e 70 75 74 25 3d 30 |amp%100:Input%=0| 000000a0 3a 4e 25 3d a3 3a 43 6f 64 65 25 3d 31 0d 00 05 |:N%=.:Code%=1...| 000000b0 25 20 20 f4 20 53 59 53 22 58 44 44 45 55 74 69 |% . SYS"XDDEUti| 000000c0 6c 73 5f 54 68 72 6f 77 62 61 63 6b 53 74 61 72 |ls_ThrowbackStar| 000000d0 74 22 0d 00 06 1d 20 20 4e 61 6d 65 24 20 20 20 |t".... Name$ | 000000e0 20 3d 20 22 4e 65 77 20 41 70 70 20 31 32 22 0d | = "New App 12".| 000000f0 00 07 2e 20 20 50 75 72 70 6f 73 65 24 20 3d 20 |... Purpose$ = | 00000100 22 41 72 63 68 69 6d 65 64 65 73 20 77 6f 72 6c |"Archimedes worl| 00000110 64 20 45 72 72 6f 72 20 64 65 6d 6f 22 0d 00 08 |d Error demo"...| 00000120 20 20 20 41 75 74 68 6f 72 24 20 20 3d 20 22 53 | Author$ = "S| 00000130 69 6d 6f 6e 20 41 6e 74 68 6f 6e 79 22 0d 00 09 |imon Anthony"...| 00000140 17 20 20 56 65 72 73 69 6f 6e 24 20 3d 20 22 31 |. Version$ = "1| 00000150 2e 30 30 22 0d 00 0a 25 20 20 43 6f 6e 74 61 63 |.00"...% Contac| 00000160 74 24 20 3d 20 22 73 69 6d 6f 6e 40 65 63 73 6c |t$ = "simon@ecsl| 00000170 74 64 2e 63 6f 2e 75 6b 22 0d 00 0b 14 20 20 77 |td.co.uk".... w| 00000180 73 65 6e 64 25 3d 77 73 25 2b 33 30 30 0d 00 0c |send%=ws%+300...| 00000190 48 20 20 c8 99 20 22 57 69 6d 70 5f 49 6e 69 74 |H .. "Wimp_Init| 000001a0 69 61 6c 69 73 65 22 2c 32 30 30 2c 26 34 42 35 |ialise",200,&4B5| 000001b0 33 34 31 35 34 2c 22 49 6e 70 75 74 2f 4f 75 74 |34154,"Input/Out| 000001c0 70 75 74 a0 62 22 20 b8 20 2c 54 61 73 6b 48 61 |put.b" . ,TaskHa| 000001d0 6e 64 6c 65 25 0d 00 0d 10 20 20 f2 54 65 6d 70 |ndle%.... .Temp| 000001e0 6c 61 74 65 73 0d 00 0e 14 20 20 f2 43 72 65 61 |lates.... .Crea| 000001f0 74 65 53 75 62 4d 65 6e 75 0d 00 0f 11 20 20 f2 |teSubMenu.... .| 00000200 43 72 65 61 74 65 4d 65 6e 75 0d 00 10 12 20 20 |CreateMenu.... | 00000210 f2 49 63 6f 6e 42 61 72 49 63 6f 6e 0d 00 11 14 |.IconBarIcon....| 00000220 20 20 21 62 6c 6f 63 6b 25 3d 69 6e 70 75 74 25 | !block%=input%| 00000230 0d 00 12 11 20 20 f2 4f 70 65 6e 57 69 6e 64 6f |.... .OpenWindo| 00000240 77 0d 00 13 15 20 20 21 62 6c 6f 63 6b 25 3d 6f |w.... !block%=o| 00000250 75 74 70 75 74 25 0d 00 14 11 20 20 f2 4f 70 65 |utput%.... .Ope| 00000260 6e 57 69 6e 64 6f 77 0d 00 15 10 20 20 ee 20 85 |nWindow.... . .| 00000270 20 f2 45 72 72 6f 72 0d 00 16 07 20 20 f5 0d 00 | .Error.... ...| 00000280 17 29 20 20 c8 99 20 22 57 69 6d 70 5f 50 6f 6c |.) .. "Wimp_Pol| 00000290 6c 22 2c 30 2c 62 6c 6f 63 6b 25 2c 30 20 b8 20 |l",0,block%,0 . | 000002a0 52 65 61 73 6f 6e 25 0d 00 18 12 20 20 c8 8e 20 |Reason%.... .. | 000002b0 52 65 61 73 6f 6e 25 20 ca 0d 00 19 24 20 20 c9 |Reason% ....$ .| 000002c0 32 3a c8 99 22 57 69 6d 70 5f 4f 70 65 6e 57 69 |2:.."Wimp_OpenWi| 000002d0 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 00 1a |ndow",,block%...| 000002e0 25 20 20 c9 33 3a c8 99 22 57 69 6d 70 5f 43 6c |% .3:.."Wimp_Cl| 000002f0 6f 73 65 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 |oseWindow",,bloc| 00000300 6b 25 0d 00 1b 14 20 20 c9 36 3a f2 4d 6f 75 73 |k%.... .6:.Mous| 00000310 65 43 6c 69 63 6b 0d 00 1c 08 20 20 c9 38 0d 00 |eClick.... .8..| 00000320 1d 15 20 20 20 20 20 20 20 f2 52 65 61 64 49 6e |.. .ReadIn| 00000330 70 75 74 0d 00 1e 26 20 20 20 20 20 20 20 f2 53 |put...& .S| 00000340 65 74 49 63 6f 6e 5f 53 74 61 74 65 28 6f 75 74 |etIcon_State(out| 00000350 70 75 74 25 2c 30 2c 30 29 0d 00 1f 13 20 20 c9 |put%,0,0).... .| 00000360 39 3a f2 4d 65 6e 75 43 6c 69 63 6b 0d 00 20 15 |9:.MenuClick.. .| 00000370 20 20 c9 31 37 2c 31 38 3a f2 4d 65 73 73 61 67 | .17,18:.Messag| 00000380 65 0d 00 21 07 20 20 cb 0d 00 22 0c 20 20 fd 20 |e..!. ...". . | 00000390 4e 25 3d b9 0d 00 23 24 20 20 c8 99 22 57 69 6d |N%=...#$ .."Wim| 000003a0 70 5f 43 6c 6f 73 65 44 6f 77 6e 22 2c 54 61 73 |p_CloseDown",Tas| 000003b0 6b 48 61 6e 64 6c 65 25 0d 00 24 07 20 20 e0 0d |kHandle%..$. ..| 000003c0 00 25 05 20 0d 00 26 14 20 20 dd 20 f2 49 63 6f |.%. ..&. . .Ico| 000003d0 6e 42 61 72 49 63 6f 6e 0d 00 27 18 20 20 24 54 |nBarIcon..'. $T| 000003e0 65 78 74 25 3d 22 4e 65 77 41 70 70 20 31 32 22 |ext%="NewApp 12"| 000003f0 0d 00 28 22 20 20 24 49 63 6f 6e 53 70 72 69 74 |..(" $IconSprit| 00000400 65 25 3d 22 73 22 2b 22 21 4e 65 77 41 70 70 31 |e%="s"+"!NewApp1| 00000410 32 22 0d 00 29 10 20 20 21 62 6c 6f 63 6b 25 3d |2"..). !block%=| 00000420 2d 31 0d 00 2a 10 20 20 62 6c 6f 63 6b 25 21 34 |-1..*. block%!4| 00000430 3d 30 0d 00 2b 12 20 20 62 6c 6f 63 6b 25 21 38 |=0..+. block%!8| 00000440 3d 2d 31 36 0d 00 2c 13 20 20 62 6c 6f 63 6b 25 |=-16..,. block%| 00000450 21 31 32 3d 31 32 38 0d 00 2d 12 20 20 62 6c 6f |!12=128..-. blo| 00000460 63 6b 25 21 31 36 3d 38 38 0d 00 2e 19 20 20 62 |ck%!16=88.... b| 00000470 6c 6f 63 6b 25 21 32 30 3d 26 31 37 30 30 33 31 |lock%!20=&170031| 00000480 30 42 0d 00 2f 15 20 20 62 6c 6f 63 6b 25 21 32 |0B../. block%!2| 00000490 34 3d 54 65 78 74 25 0d 00 30 1b 20 20 62 6c 6f |4=Text%..0. blo| 000004a0 63 6b 25 21 32 38 3d 49 63 6f 6e 53 70 72 69 74 |ck%!28=IconSprit| 000004b0 65 25 0d 00 31 12 20 20 62 6c 6f 63 6b 25 21 33 |e%..1. block%!3| 000004c0 32 3d 32 30 0d 00 32 21 20 20 c8 99 22 57 69 6d |2=20..2! .."Wim| 000004d0 70 5f 43 72 65 61 74 65 49 63 6f 6e 22 2c 2c 62 |p_CreateIcon",,b| 000004e0 6c 6f 63 6b 25 0d 00 33 07 20 20 e1 0d 00 34 06 |lock%..3. ...4.| 000004f0 20 20 0d 00 35 10 20 20 dd 20 f2 4d 65 73 73 61 | ..5. . .Messa| 00000500 67 65 0d 00 36 14 20 20 c8 8e 20 62 6c 6f 63 6b |ge..6. .. block| 00000510 25 21 31 36 20 ca 0d 00 37 0e 20 20 c9 20 30 3a |%!16 ...7. . 0:| 00000520 4e 25 3d b9 0d 00 38 07 20 20 cb 0d 00 39 07 20 |N%=...8. ...9. | 00000530 20 e1 0d 00 3a 04 0d 00 3b 13 20 20 dd 20 f2 4f | ...:...;. . .O| 00000540 70 65 6e 57 69 6e 64 6f 77 0d 00 3c 26 20 20 c8 |penWindow..<& .| 00000550 99 20 22 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f |. "Wimp_GetWindo| 00000560 77 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d |wState",,block%.| 00000570 00 3d 22 20 20 c8 99 20 22 57 69 6d 70 5f 4f 70 |.=" .. "Wimp_Op| 00000580 65 6e 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b |enWindow",,block| 00000590 25 0d 00 3e 07 20 20 e1 0d 00 3f 04 0d 00 40 32 |%..>. ...?...@2| 000005a0 20 20 dd 20 f2 53 65 74 49 63 6f 6e 5f 53 74 61 | . .SetIcon_Sta| 000005b0 74 65 28 57 69 6e 64 6f 77 48 61 6e 64 6c 65 25 |te(WindowHandle%| 000005c0 2c 49 63 6f 6e 25 2c 53 74 61 74 65 25 29 0d 00 |,Icon%,State%)..| 000005d0 41 1b 20 20 21 62 6c 6f 63 6b 25 3d 57 69 6e 64 |A. !block%=Wind| 000005e0 6f 77 48 61 6e 64 6c 65 25 0d 00 42 15 20 20 62 |owHandle%..B. b| 000005f0 6c 6f 63 6b 25 21 34 3d 49 63 6f 6e 25 3a 0d 00 |lock%!4=Icon%:..| 00000600 43 39 20 20 e7 20 53 74 61 74 65 25 3d 31 20 43 |C9 . State%=1 C| 00000610 6c 65 61 72 25 3d 26 32 30 30 30 30 30 3a 45 6f |lear%=&200000:Eo| 00000620 72 25 3d 26 32 30 30 30 30 30 3a f4 20 42 49 54 |r%=&200000:. BIT| 00000630 20 32 31 20 53 45 54 0d 00 44 2c 20 20 e7 20 53 | 21 SET..D, . S| 00000640 74 61 74 65 25 3d 30 20 43 6c 65 61 72 25 3d 26 |tate%=0 Clear%=&| 00000650 32 30 30 30 30 30 3a 45 6f 72 25 3d 26 30 30 30 |200000:Eor%=&000| 00000660 30 30 30 0d 00 45 13 20 20 62 6c 6f 63 6b 25 21 |000..E. block%!| 00000670 38 3d 45 6f 72 25 0d 00 46 16 20 20 62 6c 6f 63 |8=Eor%..F. bloc| 00000680 6b 25 21 31 32 3d 43 6c 65 61 72 25 0d 00 47 23 |k%!12=Clear%..G#| 00000690 20 20 c8 99 22 57 69 6d 70 5f 53 65 74 49 63 6f | .."Wimp_SetIco| 000006a0 6e 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d |nState",,block%.| 000006b0 00 48 07 20 20 e1 0d 00 49 04 0d 00 4a 12 20 20 |.H. ...I...J. | 000006c0 dd 20 f2 54 65 6d 70 6c 61 74 65 73 0d 00 4b 34 |. .Templates..K4| 000006d0 20 20 c8 99 20 22 57 69 6d 70 5f 4f 70 65 6e 54 | .. "Wimp_OpenT| 000006e0 65 6d 70 6c 61 74 65 22 2c 2c 22 3c 4f 62 65 79 |emplate",,"<Obey| 000006f0 24 44 69 72 3e 2e 54 65 6d 70 6c 61 74 65 73 22 |$Dir>.Templates"| 00000700 0d 00 4c 44 20 20 c8 99 20 22 57 69 6d 70 5f 4c |..LD .. "Wimp_L| 00000710 6f 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c 62 6c |oadTemplate",,bl| 00000720 6f 63 6b 25 2c 77 73 25 2c 77 73 65 6e 64 25 2c |ock%,ws%,wsend%,| 00000730 2d 31 2c 22 49 6e 70 75 74 22 2c 30 20 b8 20 2c |-1,"Input",0 . ,| 00000740 2c 77 73 25 0d 00 4d 2d 20 20 c8 99 20 22 57 69 |,ws%..M- .. "Wi| 00000750 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 6f 77 22 |mp_CreateWindow"| 00000760 2c 2c 62 6c 6f 63 6b 25 20 b8 20 69 6e 70 75 74 |,,block% . input| 00000770 25 0d 00 4e 21 20 20 49 6e 70 75 74 25 3d 21 28 |%..N! Input%=!(| 00000780 62 6c 6f 63 6b 25 2b 38 38 2b 33 32 2a 30 2b 32 |block%+88+32*0+2| 00000790 30 29 0d 00 4f 45 20 20 c8 99 20 22 57 69 6d 70 |0)..OE .. "Wimp| 000007a0 5f 4c 6f 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c |_LoadTemplate",,| 000007b0 62 6c 6f 63 6b 25 2c 77 73 25 2c 77 73 65 6e 64 |block%,ws%,wsend| 000007c0 25 2c 2d 31 2c 22 4f 75 74 70 75 74 22 2c 30 20 |%,-1,"Output",0 | 000007d0 b8 20 2c 2c 77 73 25 0d 00 50 2e 20 20 c8 99 20 |. ,,ws%..P. .. | 000007e0 22 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 |"Wimp_CreateWind| 000007f0 6f 77 22 2c 2c 62 6c 6f 63 6b 25 20 b8 20 6f 75 |ow",,block% . ou| 00000800 74 70 75 74 25 0d 00 51 22 20 20 4f 75 74 70 75 |tput%..Q" Outpu| 00000810 74 25 3d 21 28 62 6c 6f 63 6b 25 2b 38 38 2b 33 |t%=!(block%+88+3| 00000820 32 2a 30 2b 32 30 29 0d 00 52 43 20 20 c8 99 20 |2*0+20)..RC .. | 00000830 22 57 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 6c 61 |"Wimp_LoadTempla| 00000840 74 65 22 2c 2c 62 6c 6f 63 6b 25 2c 77 73 25 2c |te",,block%,ws%,| 00000850 77 73 65 6e 64 25 2c 2d 31 2c 22 49 6e 66 6f 22 |wsend%,-1,"Info"| 00000860 2c 30 20 b8 20 2c 2c 77 73 25 0d 00 53 20 20 20 |,0 . ,,ws%..S | 00000870 4e 61 6d 65 25 3d 21 28 62 6c 6f 63 6b 25 2b 38 |Name%=!(block%+8| 00000880 38 2b 33 32 2a 30 2b 32 30 29 0d 00 54 23 20 20 |8+32*0+20)..T# | 00000890 50 75 72 70 6f 73 65 25 3d 21 28 62 6c 6f 63 6b |Purpose%=!(block| 000008a0 25 2b 38 38 2b 33 32 2a 31 2b 32 30 29 0d 00 55 |%+88+32*1+20)..U| 000008b0 22 20 20 41 75 74 68 6f 72 25 3d 21 28 62 6c 6f |" Author%=!(blo| 000008c0 63 6b 25 2b 38 38 2b 33 32 2a 32 2b 32 30 29 0d |ck%+88+32*2+20).| 000008d0 00 56 23 20 20 56 65 72 73 69 6f 6e 25 3d 21 28 |.V# Version%=!(| 000008e0 62 6c 6f 63 6b 25 2b 38 38 2b 33 32 2a 33 2b 32 |block%+88+32*3+2| 000008f0 30 29 0d 00 57 23 20 20 43 6f 6e 74 61 63 74 25 |0)..W# Contact%| 00000900 3d 21 28 62 6c 6f 63 6b 25 2b 38 38 2b 33 32 2a |=!(block%+88+32*| 00000910 34 2b 32 30 29 0d 00 58 32 20 20 44 61 74 65 24 |4+20)..X2 Date$| 00000920 3d a4 52 65 61 64 44 61 74 65 53 74 61 6d 70 28 |=.ReadDateStamp(| 00000930 22 3c 6f 62 65 79 24 64 69 72 3e 2e 21 52 75 6e |"<obey$dir>.!Run| 00000940 69 6d 61 67 65 22 29 0d 00 59 2c 20 20 c8 99 20 |image")..Y, .. | 00000950 22 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 |"Wimp_CreateWind| 00000960 6f 77 22 2c 2c 62 6c 6f 63 6b 25 20 b8 20 69 6e |ow",,block% . in| 00000970 66 6f 25 0d 00 5a 12 20 20 24 4e 61 6d 65 25 3d |fo%..Z. $Name%=| 00000980 4e 61 6d 65 24 0d 00 5b 18 20 20 24 50 75 72 70 |Name$..[. $Purp| 00000990 6f 73 65 25 3d 50 75 72 70 6f 73 65 24 0d 00 5c |ose%=Purpose$..\| 000009a0 16 20 20 24 41 75 74 68 6f 72 25 3d 41 75 74 68 |. $Author%=Auth| 000009b0 6f 72 24 0d 00 5d 2e 20 20 24 56 65 72 73 69 6f |or$..]. $Versio| 000009c0 6e 25 3d 22 56 72 2e 20 22 2b 56 65 72 73 69 6f |n%="Vr. "+Versio| 000009d0 6e 24 2b 22 20 28 22 2b 44 61 74 65 24 2b 22 29 |n$+" ("+Date$+")| 000009e0 22 0d 00 5e 18 20 20 24 43 6f 6e 74 61 63 74 25 |"..^. $Contact%| 000009f0 3d 43 6f 6e 74 61 63 74 24 0d 00 5f 1f 20 20 f2 |=Contact$.._. .| 00000a00 53 65 74 49 63 6f 6e 5f 53 74 61 74 65 28 69 6e |SetIcon_State(in| 00000a10 66 6f 25 2c 30 2c 30 29 0d 00 60 1f 20 20 f2 53 |fo%,0,0)..`. .S| 00000a20 65 74 49 63 6f 6e 5f 53 74 61 74 65 28 69 6e 66 |etIcon_State(inf| 00000a30 6f 25 2c 31 2c 30 29 0d 00 61 1f 20 20 f2 53 65 |o%,1,0)..a. .Se| 00000a40 74 49 63 6f 6e 5f 53 74 61 74 65 28 69 6e 66 6f |tIcon_State(info| 00000a50 25 2c 32 2c 30 29 0d 00 62 1f 20 20 f2 53 65 74 |%,2,0)..b. .Set| 00000a60 49 63 6f 6e 5f 53 74 61 74 65 28 69 6e 66 6f 25 |Icon_State(info%| 00000a70 2c 33 2c 30 29 0d 00 63 1f 20 20 f2 53 65 74 49 |,3,0)..c. .SetI| 00000a80 63 6f 6e 5f 53 74 61 74 65 28 69 6e 66 6f 25 2c |con_State(info%,| 00000a90 34 2c 30 29 0d 00 64 1d 20 20 c8 99 20 22 57 69 |4,0)..d. .. "Wi| 00000aa0 6d 70 5f 43 6c 6f 73 65 54 65 6d 70 6c 61 74 65 |mp_CloseTemplate| 00000ab0 22 0d 00 65 07 20 20 e1 0d 00 66 04 0d 00 67 13 |"..e. ...f...g.| 00000ac0 20 20 dd 20 f2 4d 6f 75 73 65 43 6c 69 63 6b 0d | . .MouseClick.| 00000ad0 00 68 25 20 20 c8 99 22 57 69 6d 70 5f 47 65 74 |.h% .."Wimp_Get| 00000ae0 50 6f 69 6e 74 65 72 49 6e 66 6f 22 2c 2c 62 6c |PointerInfo",,bl| 00000af0 6f 63 6b 25 0d 00 69 3c 20 20 f4 2d 2d 2d 2d 2d |ock%..i< .-----| 00000b00 2d 2d 2d 2d 2d 2d 2d 49 63 6f 6e 20 63 6c 69 63 |-------Icon clic| 00000b10 6b 20 61 63 74 69 6f 6e 73 2d 2d 2d 2d 2d 2d 2d |k actions-------| 00000b20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00000b30 0d 00 6a 13 20 c8 8e 20 62 6c 6f 63 6b 25 21 31 |..j. .. block%!1| 00000b40 32 20 ca 0d 00 6b 0a 20 20 c9 20 2d 32 0d 00 6c |2 ...k. . -2..l| 00000b50 19 20 20 20 20 20 20 20 20 c8 8e 20 62 6c 6f 63 |. .. bloc| 00000b60 6b 25 21 38 20 ca 0d 00 6c 0b 20 20 20 20 c9 20 |k%!8 ...l. . | 00000b70 31 0d 00 6d 19 20 20 20 20 20 20 20 21 62 6c 6f |1..m. !blo| 00000b80 63 6b 25 3d 69 6e 70 75 74 25 0d 00 6e 27 20 20 |ck%=input%..n' | 00000b90 20 20 20 20 20 c8 99 22 57 69 6d 70 5f 43 6c 6f | .."Wimp_Clo| 00000ba0 73 65 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b |seWindow",,block| 00000bb0 25 0d 00 6f 1a 20 20 20 20 20 20 20 21 62 6c 6f |%..o. !blo| 00000bc0 63 6b 25 3d 6f 75 74 70 75 74 25 0d 00 70 27 20 |ck%=output%..p' | 00000bd0 20 20 20 20 20 20 c8 99 22 57 69 6d 70 5f 43 6c | .."Wimp_Cl| 00000be0 6f 73 65 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 |oseWindow",,bloc| 00000bf0 6b 25 0d 00 6d 33 20 20 20 20 c9 20 32 3a f2 53 |k%..m3 . 2:.S| 00000c00 68 6f 77 4d 65 6e 75 28 4d 61 69 6e 4d 65 6e 75 |howMenu(MainMenu| 00000c10 25 2c 21 62 6c 6f 63 6b 25 2d 36 34 2c 39 36 2b |%,!block%-64,96+| 00000c20 32 2a 34 34 29 0d 00 6e 0b 20 20 20 20 c9 20 34 |2*44)..n. . 4| 00000c30 0d 00 6f 19 20 20 20 20 20 20 20 21 62 6c 6f 63 |..o. !bloc| 00000c40 6b 25 3d 69 6e 70 75 74 25 0d 00 70 37 20 20 20 |k%=input%..p7 | 00000c50 20 20 20 20 c8 99 22 57 69 6d 70 5f 47 65 74 57 | .."Wimp_GetW| 00000c60 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 6c 6f |indowState",,blo| 00000c70 63 6b 25 3a 62 6c 6f 63 6b 25 21 32 38 3d 2d 31 |ck%:block%!28=-1| 00000c80 0d 00 71 26 20 20 20 20 20 20 20 c8 99 22 57 69 |..q& .."Wi| 00000c90 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c 2c |mp_OpenWindow",,| 00000ca0 62 6c 6f 63 6b 25 0d 00 72 1a 20 20 20 20 20 20 |block%..r. | 00000cb0 20 21 62 6c 6f 63 6b 25 3d 6f 75 74 70 75 74 25 | !block%=output%| 00000cc0 0d 00 73 37 20 20 20 20 20 20 20 c8 99 22 57 69 |..s7 .."Wi| 00000cd0 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 |mp_GetWindowStat| 00000ce0 65 22 2c 2c 62 6c 6f 63 6b 25 3a 62 6c 6f 63 6b |e",,block%:block| 00000cf0 25 21 32 38 3d 2d 31 0d 00 74 26 20 20 20 20 20 |%!28=-1..t& | 00000d00 20 20 c8 99 22 57 69 6d 70 5f 4f 70 65 6e 57 69 | .."Wimp_OpenWi| 00000d10 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 00 6f |ndow",,block%..o| 00000d20 08 20 20 20 cb 0d 00 70 04 0d 00 70 16 20 20 c9 |. ...p...p. .| 00000d30 20 69 6e 70 75 74 25 2c 6f 75 74 70 75 74 25 0d | input%,output%.| 00000d40 00 71 14 20 20 20 c8 8e 20 62 6c 6f 63 6b 25 21 |.q. .. block%!| 00000d50 38 20 ca 0d 00 72 33 20 20 20 c9 20 32 3a f2 53 |8 ...r3 . 2:.S| 00000d60 68 6f 77 4d 65 6e 75 28 4d 61 69 6e 4d 65 6e 75 |howMenu(MainMenu| 00000d70 25 2c 21 62 6c 6f 63 6b 25 2d 36 34 2c 62 6c 6f |%,!block%-64,blo| 00000d80 63 6b 25 21 34 29 0d 00 73 08 20 20 20 cb 0d 00 |ck%!4)..s. ...| 00000d90 74 04 0d 00 74 15 20 20 20 c8 8e 20 62 6c 6f 63 |t...t. .. bloc| 00000da0 6b 25 21 31 36 20 ca 0d 00 75 15 20 20 20 c9 20 |k%!16 ...u. . | 00000db0 31 3a f2 4d 61 6b 65 45 72 72 6f 72 0d 00 76 08 |1:.MakeError..v.| 00000dc0 20 20 20 cb 0d 00 77 07 20 20 cb 0d 00 78 06 20 | ...w. ...x. | 00000dd0 cb 0d 00 79 06 20 e1 0d 00 7a 06 20 20 0d 00 7b |...y. ...z. ..{| 00000de0 13 20 20 dd 20 f2 43 72 65 61 74 65 4d 65 6e 75 |. . .CreateMenu| 00000df0 0d 00 7c 16 20 20 73 74 61 72 74 25 3d 6d 65 6e |..|. start%=men| 00000e00 73 70 63 25 3a f4 0d 00 7d 1c 20 20 24 28 73 74 |spc%:...}. $(st| 00000e10 61 72 74 25 29 3d 22 4e 65 77 20 41 70 70 20 31 |art%)="New App 1| 00000e20 32 22 0d 00 7e 2c 20 20 73 74 61 72 74 25 3f 31 |2"..~, start%?1| 00000e30 32 3d 37 3a 20 20 f4 20 74 69 74 6c 65 20 66 6f |2=7: . title fo| 00000e40 72 67 72 6f 75 6e 64 20 63 6f 6c 6f 75 72 0d 00 |rground colour..| 00000e50 7f 2a 20 20 73 74 61 72 74 25 3f 31 33 3d 32 3a |.* start%?13=2:| 00000e60 20 20 f4 20 74 69 74 6c 65 20 62 61 63 6b 67 72 | . title backgr| 00000e70 6f 75 6e 64 20 63 6f 6c 0d 00 80 31 20 20 73 74 |ound col...1 st| 00000e80 61 72 74 25 3f 31 34 3d 37 3a 20 20 f4 20 77 6f |art%?14=7: . wo| 00000e90 72 6b 20 61 72 65 61 20 66 6f 72 65 67 72 6f 75 |rk area foregrou| 00000ea0 6e 64 20 63 6f 6c 6f 75 72 0d 00 81 28 20 20 73 |nd colour...( s| 00000eb0 74 61 72 74 25 3f 31 35 3d 30 3a 20 20 f4 20 77 |tart%?15=0: . w| 00000ec0 6f 72 6b 20 61 72 65 61 20 62 61 63 6b 20 63 6f |ork area back co| 00000ed0 6c 0d 00 82 2a 20 20 73 74 61 72 74 25 21 32 30 |l...* start%!20| 00000ee0 3d 34 34 3a 20 f4 20 68 65 69 67 68 74 20 6f 66 |=44: . height of| 00000ef0 20 6d 65 6e 75 20 69 74 65 6d 73 0d 00 83 27 20 | menu items...' | 00000f00 20 73 74 61 72 74 25 21 32 34 3d 30 3a 20 20 f4 | start%!24=0: .| 00000f10 20 67 61 70 20 62 65 74 77 65 65 6e 20 69 74 65 | gap between ite| 00000f20 6d 73 0d 00 84 23 20 20 73 74 61 72 74 25 21 31 |ms...# start%!1| 00000f30 36 3d 39 36 3a 20 f4 20 77 69 64 74 68 20 6f 66 |6=96: . width of| 00000f40 20 6d 65 6e 75 0d 00 85 12 20 20 6d 65 6e 73 70 | menu.... mensp| 00000f50 63 25 2b 3d 32 38 3a 0d 00 86 23 20 20 20 20 20 |c%+=28:...# | 00000f60 20 20 20 20 20 20 20 20 20 20 20 f4 20 64 61 74 | . dat| 00000f70 61 20 66 6f 72 20 49 6e 66 6f 0d 00 87 20 20 20 |a for Info... | 00000f80 21 6d 65 6e 73 70 63 25 3d 30 20 3a 20 20 f4 20 |!menspc%=0 : . | 00000f90 6d 65 6e 75 20 66 6c 61 67 73 0d 00 88 29 20 20 |menu flags...) | 00000fa0 6d 65 6e 73 70 63 25 21 34 3d 69 6e 66 6f 25 3a |menspc%!4=info%:| 00000fb0 20 f4 20 73 75 62 20 6d 65 6e 75 20 70 6f 69 6e | . sub menu poin| 00000fc0 74 65 72 0d 00 89 26 20 20 6d 65 6e 73 70 63 25 |ter...& menspc%| 00000fd0 21 38 3d 26 30 37 30 30 30 30 32 31 3a f4 20 69 |!8=&07000021:. i| 00000fe0 63 6f 6e 20 66 6c 61 67 73 0d 00 8a 1a 20 20 24 |con flags.... $| 00000ff0 28 6d 65 6e 73 70 63 25 2b 31 32 29 3d 22 49 6e |(menspc%+12)="In| 00001000 66 6f 22 0d 00 8b 12 20 20 6d 65 6e 73 70 63 25 |fo".... menspc%| 00001010 2b 3d 32 34 3a 0d 00 8c 31 20 20 20 20 20 20 20 |+=24:...1 | 00001020 20 20 20 20 20 20 20 20 20 f4 20 64 61 74 61 20 | . data | 00001030 66 6f 72 20 43 6f 64 65 20 53 75 62 6d 65 6e 75 |for Code Submenu| 00001040 20 65 6e 74 72 79 0d 00 8d 20 20 20 21 6d 65 6e | entry... !men| 00001050 73 70 63 25 3d 30 20 3a 20 20 f4 20 6d 65 6e 75 |spc%=0 : . menu| 00001060 20 66 6c 61 67 73 0d 00 8e 2c 20 20 6d 65 6e 73 | flags..., mens| 00001070 70 63 25 21 34 3d 73 75 62 6d 65 6e 75 25 3a 20 |pc%!4=submenu%: | 00001080 f4 20 73 75 62 20 6d 65 6e 75 20 70 6f 69 6e 74 |. sub menu point| 00001090 65 72 0d 00 8f 26 20 20 6d 65 6e 73 70 63 25 21 |er...& menspc%!| 000010a0 38 3d 26 30 37 30 30 30 30 32 31 3a f4 20 69 63 |8=&07000021:. ic| 000010b0 6f 6e 20 66 6c 61 67 73 0d 00 90 1a 20 20 24 28 |on flags.... $(| 000010c0 6d 65 6e 73 70 63 25 2b 31 32 29 3d 22 43 6f 64 |menspc%+12)="Cod| 000010d0 65 22 0d 00 91 12 20 20 6d 65 6e 73 70 63 25 2b |e".... menspc%+| 000010e0 3d 32 34 3a 0d 00 92 2a 20 20 20 20 20 20 20 20 |=24:...* | 000010f0 20 20 20 20 20 20 20 20 f4 20 64 61 74 61 20 66 | . data f| 00001100 6f 72 20 45 72 72 6f 72 20 65 6e 74 72 79 0d 00 |or Error entry..| 00001110 93 20 20 20 21 6d 65 6e 73 70 63 25 3d 30 20 3a |. !menspc%=0 :| 00001120 20 20 f4 20 6d 65 6e 75 20 66 6c 61 67 73 0d 00 | . menu flags..| 00001130 94 26 20 20 6d 65 6e 73 70 63 25 21 34 3d 2d 31 |.& menspc%!4=-1| 00001140 3a 20 f4 20 73 75 62 20 6d 65 6e 75 20 70 6f 69 |: . sub menu poi| 00001150 6e 74 65 72 0d 00 95 26 20 20 6d 65 6e 73 70 63 |nter...& menspc| 00001160 25 21 38 3d 26 30 37 30 30 30 30 32 31 3a f4 20 |%!8=&07000021:. | 00001170 69 63 6f 6e 20 66 6c 61 67 73 0d 00 96 1b 20 20 |icon flags.... | 00001180 24 28 6d 65 6e 73 70 63 25 2b 31 32 29 3d 22 45 |$(menspc%+12)="E| 00001190 72 72 6f 72 22 0d 00 97 12 20 20 6d 65 6e 73 70 |rror".... mensp| 000011a0 63 25 2b 3d 32 34 3a 0d 00 98 23 20 20 20 20 20 |c%+=24:...# | 000011b0 20 20 20 20 20 20 20 20 20 20 20 f4 20 64 61 74 | . dat| 000011c0 61 20 66 6f 72 20 71 75 69 74 0d 00 99 47 20 20 |a for quit...G | 000011d0 21 6d 65 6e 73 70 63 25 3d 26 38 30 3a 20 f4 20 |!menspc%=&80: . | 000011e0 6d 65 6e 75 20 66 6c 61 67 73 20 77 69 74 68 20 |menu flags with | 000011f0 62 69 74 20 73 65 76 65 6e 20 73 65 74 20 74 6f |bit seven set to| 00001200 20 73 68 6f 77 20 65 6e 64 20 6f 66 20 6c 69 73 | show end of lis| 00001210 74 0d 00 9a 26 20 20 6d 65 6e 73 70 63 25 21 34 |t...& menspc%!4| 00001220 3d 2d 31 3a 20 f4 20 73 75 62 20 6d 65 6e 75 20 |=-1: . sub menu | 00001230 70 6f 69 6e 74 65 72 0d 00 9b 2d 20 20 6d 65 6e |pointer...- men| 00001240 73 70 63 25 21 38 3d 26 30 37 30 30 30 30 32 31 |spc%!8=&07000021| 00001250 3a 20 f4 20 69 63 6f 6e 20 66 6c 61 67 73 20 61 |: . icon flags a| 00001260 67 61 69 6e 0d 00 9c 1a 20 20 24 28 6d 65 6e 73 |gain.... $(mens| 00001270 70 63 25 2b 31 32 29 3d 22 51 75 69 74 22 0d 00 |pc%+12)="Quit"..| 00001280 9d 12 20 20 6d 65 6e 73 70 63 25 2b 3d 32 34 3a |.. menspc%+=24:| 00001290 0d 00 9e 16 20 20 4d 61 69 6e 4d 65 6e 75 25 3d |.... MainMenu%=| 000012a0 73 74 61 72 74 25 0d 00 9f 07 20 20 e1 0d 00 a0 |start%.... ....| 000012b0 04 0d 00 a1 16 20 20 dd 20 f2 43 72 65 61 74 65 |..... . .Create| 000012c0 53 75 62 4d 65 6e 75 0d 00 a2 19 20 20 73 74 61 |SubMenu.... sta| 000012d0 72 74 25 3d 73 75 62 6d 65 6e 73 70 63 25 3a f4 |rt%=submenspc%:.| 000012e0 0d 00 a3 16 20 20 24 28 73 74 61 72 74 25 29 3d |.... $(start%)=| 000012f0 22 43 6f 64 65 22 0d 00 a4 2c 20 20 73 74 61 72 |"Code"..., star| 00001300 74 25 3f 31 32 3d 37 3a 20 20 f4 20 74 69 74 6c |t%?12=7: . titl| 00001310 65 20 66 6f 72 67 72 6f 75 6e 64 20 63 6f 6c 6f |e forground colo| 00001320 75 72 0d 00 a5 2a 20 20 73 74 61 72 74 25 3f 31 |ur...* start%?1| 00001330 33 3d 32 3a 20 20 f4 20 74 69 74 6c 65 20 62 61 |3=2: . title ba| 00001340 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 0d 00 a6 31 |ckground col...1| 00001350 20 20 73 74 61 72 74 25 3f 31 34 3d 37 3a 20 20 | start%?14=7: | 00001360 f4 20 77 6f 72 6b 20 61 72 65 61 20 66 6f 72 65 |. work area fore| 00001370 67 72 6f 75 6e 64 20 63 6f 6c 6f 75 72 0d 00 a7 |ground colour...| 00001380 28 20 20 73 74 61 72 74 25 3f 31 35 3d 30 3a 20 |( start%?15=0: | 00001390 20 f4 20 77 6f 72 6b 20 61 72 65 61 20 62 61 63 | . work area bac| 000013a0 6b 20 63 6f 6c 0d 00 a8 2a 20 20 73 74 61 72 74 |k col...* start| 000013b0 25 21 32 30 3d 34 34 3a 20 f4 20 68 65 69 67 68 |%!20=44: . heigh| 000013c0 74 20 6f 66 20 6d 65 6e 75 20 69 74 65 6d 73 0d |t of menu items.| 000013d0 00 a9 27 20 20 73 74 61 72 74 25 21 32 34 3d 30 |..' start%!24=0| 000013e0 3a 20 20 f4 20 67 61 70 20 62 65 74 77 65 65 6e |: . gap between| 000013f0 20 69 74 65 6d 73 0d 00 aa 23 20 20 73 74 61 72 | items...# star| 00001400 74 25 21 31 36 3d 39 36 3a 20 f4 20 77 69 64 74 |t%!16=96: . widt| 00001410 68 20 6f 66 20 6d 65 6e 75 0d 00 ab 15 20 20 73 |h of menu.... s| 00001420 75 62 6d 65 6e 73 70 63 25 2b 3d 32 38 3a 0d 00 |ubmenspc%+=28:..| 00001430 ac 04 0d 00 ad 15 20 20 21 73 75 62 6d 65 6e 73 |...... !submens| 00001440 70 63 25 3d 30 20 3a 0d 00 ae 16 20 20 73 75 62 |pc%=0 :.... sub| 00001450 6d 65 6e 73 70 63 25 21 34 3d 2d 31 3a 0d 00 af |menspc%!4=-1:...| 00001460 1c 20 20 73 75 62 6d 65 6e 73 70 63 25 21 38 3d |. submenspc%!8=| 00001470 26 30 37 30 30 30 30 32 31 0d 00 b0 1a 20 20 24 |&07000021.... $| 00001480 28 73 75 62 6d 65 6e 73 70 63 25 2b 31 32 29 3d |(submenspc%+12)=| 00001490 22 30 22 0d 00 b1 15 20 20 73 75 62 6d 65 6e 73 |"0".... submens| 000014a0 70 63 25 2b 3d 32 34 3a 0d 00 b2 04 0d 00 b3 15 |pc%+=24:........| 000014b0 20 20 21 73 75 62 6d 65 6e 73 70 63 25 3d 30 20 | !submenspc%=0 | 000014c0 3a 0d 00 b4 16 20 20 73 75 62 6d 65 6e 73 70 63 |:.... submenspc| 000014d0 25 21 34 3d 2d 31 3a 0d 00 b5 1c 20 20 73 75 62 |%!4=-1:.... sub| 000014e0 6d 65 6e 73 70 63 25 21 38 3d 26 30 37 30 30 30 |menspc%!8=&07000| 000014f0 30 32 31 0d 00 b6 1a 20 20 24 28 73 75 62 6d 65 |021.... $(subme| 00001500 6e 73 70 63 25 2b 31 32 29 3d 22 31 22 0d 00 b7 |nspc%+12)="1"...| 00001510 15 20 20 73 75 62 6d 65 6e 73 70 63 25 2b 3d 32 |. submenspc%+=2| 00001520 34 3a 0d 00 b8 04 0d 00 b9 15 20 20 21 73 75 62 |4:........ !sub| 00001530 6d 65 6e 73 70 63 25 3d 30 20 3a 0d 00 ba 16 20 |menspc%=0 :.... | 00001540 20 73 75 62 6d 65 6e 73 70 63 25 21 34 3d 2d 31 | submenspc%!4=-1| 00001550 3a 0d 00 bb 1c 20 20 73 75 62 6d 65 6e 73 70 63 |:.... submenspc| 00001560 25 21 38 3d 26 30 37 30 30 30 30 32 31 0d 00 bc |%!8=&07000021...| 00001570 1a 20 20 24 28 73 75 62 6d 65 6e 73 70 63 25 2b |. $(submenspc%+| 00001580 31 32 29 3d 22 32 22 0d 00 bd 15 20 20 73 75 62 |12)="2".... sub| 00001590 6d 65 6e 73 70 63 25 2b 3d 32 34 3a 0d 00 be 04 |menspc%+=24:....| 000015a0 0d 00 bf 15 20 20 21 73 75 62 6d 65 6e 73 70 63 |.... !submenspc| 000015b0 25 3d 30 20 3a 0d 00 c0 16 20 20 73 75 62 6d 65 |%=0 :.... subme| 000015c0 6e 73 70 63 25 21 34 3d 2d 31 3a 0d 00 c1 1c 20 |nspc%!4=-1:.... | 000015d0 20 73 75 62 6d 65 6e 73 70 63 25 21 38 3d 26 30 | submenspc%!8=&0| 000015e0 37 30 30 30 30 32 31 0d 00 c2 1a 20 20 24 28 73 |7000021.... $(s| 000015f0 75 62 6d 65 6e 73 70 63 25 2b 31 32 29 3d 22 33 |ubmenspc%+12)="3| 00001600 22 0d 00 c3 15 20 20 73 75 62 6d 65 6e 73 70 63 |".... submenspc| 00001610 25 2b 3d 32 34 3a 0d 00 c4 04 0d 00 c5 15 20 20 |%+=24:........ | 00001620 21 73 75 62 6d 65 6e 73 70 63 25 3d 30 20 3a 0d |!submenspc%=0 :.| 00001630 00 c6 16 20 20 73 75 62 6d 65 6e 73 70 63 25 21 |... submenspc%!| 00001640 34 3d 2d 31 3a 0d 00 c7 1c 20 20 73 75 62 6d 65 |4=-1:.... subme| 00001650 6e 73 70 63 25 21 38 3d 26 30 37 30 30 30 30 32 |nspc%!8=&0700002| 00001660 31 0d 00 c8 1a 20 20 24 28 73 75 62 6d 65 6e 73 |1.... $(submens| 00001670 70 63 25 2b 31 32 29 3d 22 34 22 0d 00 c9 15 20 |pc%+12)="4".... | 00001680 20 73 75 62 6d 65 6e 73 70 63 25 2b 3d 32 34 3a | submenspc%+=24:| 00001690 0d 00 ca 37 20 20 20 20 20 20 20 20 20 20 20 20 |...7 | 000016a0 20 20 20 20 20 20 20 f4 20 64 61 74 61 20 66 6f | . data fo| 000016b0 72 20 6c 61 73 74 20 65 6e 74 72 79 20 69 6e 20 |r last entry in | 000016c0 73 75 62 6d 65 6e 75 0d 00 cb 4a 20 20 21 73 75 |submenu...J !su| 000016d0 62 6d 65 6e 73 70 63 25 3d 26 38 30 3a 20 f4 20 |bmenspc%=&80: . | 000016e0 6d 65 6e 75 20 66 6c 61 67 73 20 77 69 74 68 20 |menu flags with | 000016f0 62 69 74 20 73 65 76 65 6e 20 73 65 74 20 74 6f |bit seven set to| 00001700 20 73 68 6f 77 20 65 6e 64 20 6f 66 20 6c 69 73 | show end of lis| 00001710 74 0d 00 cc 29 20 20 73 75 62 6d 65 6e 73 70 63 |t...) submenspc| 00001720 25 21 34 3d 2d 31 3a 20 f4 20 73 75 62 20 6d 65 |%!4=-1: . sub me| 00001730 6e 75 20 70 6f 69 6e 74 65 72 0d 00 cd 30 20 20 |nu pointer...0 | 00001740 73 75 62 6d 65 6e 73 70 63 25 21 38 3d 26 30 37 |submenspc%!8=&07| 00001750 30 30 30 30 32 31 3a 20 f4 20 69 63 6f 6e 20 66 |000021: . icon f| 00001760 6c 61 67 73 20 61 67 61 69 6e 0d 00 ce 1a 20 20 |lags again.... | 00001770 24 28 73 75 62 6d 65 6e 73 70 63 25 2b 31 32 29 |$(submenspc%+12)| 00001780 3d 22 35 22 0d 00 cf 15 20 20 73 75 62 6d 65 6e |="5".... submen| 00001790 73 70 63 25 2b 3d 32 34 3a 0d 00 d0 15 20 20 73 |spc%+=24:.... s| 000017a0 75 62 6d 65 6e 75 25 3d 73 74 61 72 74 25 0d 00 |ubmenu%=start%..| 000017b0 d1 07 20 20 e1 0d 00 d2 04 0d 00 d3 1e 20 20 dd |.. ......... .| 000017c0 20 f2 53 68 6f 77 4d 65 6e 75 28 4d 65 6e 75 25 | .ShowMenu(Menu%| 000017d0 2c 78 25 2c 79 25 29 0d 00 d4 26 20 20 74 6f 70 |,x%,y%)...& top| 000017e0 6d 65 6e 75 25 3d 4d 65 6e 75 25 3a 74 6f 70 78 |menu%=Menu%:topx| 000017f0 25 3d 78 25 3a 74 6f 70 79 25 3d 79 25 0d 00 d5 |%=x%:topy%=y%...| 00001800 26 20 20 c8 99 22 57 69 6d 70 5f 43 72 65 61 74 |& .."Wimp_Creat| 00001810 65 4d 65 6e 75 22 2c 2c 4d 65 6e 75 25 2c 78 25 |eMenu",,Menu%,x%| 00001820 2c 79 25 0d 00 d6 07 20 20 e1 0d 00 d7 06 20 20 |,y%.... ..... | 00001830 0d 00 d8 12 20 20 dd 20 f2 4d 65 6e 75 43 6c 69 |.... . .MenuCli| 00001840 63 6b 0d 00 d9 16 20 20 ea 20 4d 65 6e 75 53 65 |ck.... . MenuSe| 00001850 6c 65 63 74 69 6f 6e 25 0d 00 da 1f 20 20 4d 65 |lection%.... Me| 00001860 6e 75 53 65 6c 65 63 74 69 6f 6e 25 3d 62 6c 6f |nuSelection%=blo| 00001870 63 6b 25 2b 31 30 30 0d 00 db 3a 20 20 c8 99 22 |ck%+100...: .."| 00001880 57 69 6d 70 5f 44 65 63 6f 64 65 4d 65 6e 75 22 |Wimp_DecodeMenu"| 00001890 2c 2c 4d 61 69 6e 4d 65 6e 75 25 2c 62 6c 6f 63 |,,MainMenu%,bloc| 000018a0 6b 25 2c 4d 65 6e 75 53 65 6c 65 63 74 69 6f 6e |k%,MenuSelection| 000018b0 25 0d 00 dc 48 20 20 c8 99 22 57 69 6d 70 5f 47 |%...H .."Wimp_G| 000018c0 65 74 50 6f 69 6e 74 65 72 49 6e 66 6f 22 2c 2c |etPointerInfo",,| 000018d0 62 6c 6f 63 6b 25 3a 58 57 69 6e 70 6f 73 25 3d |block%:XWinpos%=| 000018e0 21 62 6c 6f 63 6b 25 3a 59 57 69 6e 70 6f 73 25 |!block%:YWinpos%| 000018f0 3d 62 6c 6f 63 6b 25 21 34 0d 00 dd 19 20 20 61 |=block%!4.... a| 00001900 64 6a 25 3d 28 62 6c 6f 63 6b 25 21 38 20 80 20 |dj%=(block%!8 . | 00001910 31 29 0d 00 de 1b 20 20 c8 8e 20 24 4d 65 6e 75 |1).... .. $Menu| 00001920 53 65 6c 65 63 74 69 6f 6e 25 20 20 ca 0d 00 df |Selection% ....| 00001930 29 20 20 c9 20 22 49 6e 66 6f 22 3a 20 21 62 6c |) . "Info": !bl| 00001940 6f 63 6b 25 3d 69 6e 66 6f 25 3a f2 4f 70 65 6e |ock%=info%:.Open| 00001950 57 69 6e 64 6f 77 0d 00 e0 1b 20 20 c9 20 22 43 |Window.... . "C| 00001960 6f 64 65 2e 30 22 3a ef 37 3a 43 6f 64 65 25 3d |ode.0":.7:Code%=| 00001970 30 0d 00 e1 1b 20 20 c9 20 22 43 6f 64 65 2e 31 |0.... . "Code.1| 00001980 22 3a ef 37 3a 43 6f 64 65 25 3d 31 0d 00 e2 1b |":.7:Code%=1....| 00001990 20 20 c9 20 22 43 6f 64 65 2e 32 22 3a ef 37 3a | . "Code.2":.7:| 000019a0 43 6f 64 65 25 3d 32 0d 00 e3 1b 20 20 c9 20 22 |Code%=2.... . "| 000019b0 43 6f 64 65 2e 33 22 3a ef 37 3a 43 6f 64 65 25 |Code.3":.7:Code%| 000019c0 3d 33 0d 00 e4 1b 20 20 c9 20 22 43 6f 64 65 2e |=3.... . "Code.| 000019d0 34 22 3a ef 37 3a 43 6f 64 65 25 3d 34 0d 00 e5 |4":.7:Code%=4...| 000019e0 1b 20 20 c9 20 22 43 6f 64 65 2e 35 22 3a ef 37 |. . "Code.5":.7| 000019f0 3a 43 6f 64 65 25 3d 35 0d 00 e6 1a 20 20 c9 20 |:Code%=5.... . | 00001a00 22 45 72 72 6f 72 22 3a f2 4d 61 6b 65 45 72 72 |"Error":.MakeErr| 00001a10 6f 72 0d 00 e7 47 20 20 c9 20 22 48 65 6c 70 22 |or...G . "Help"| 00001a20 3a 20 ff 28 22 46 69 6c 65 72 5f 52 75 6e 20 3c |: .("Filer_Run <| 00001a30 48 65 6c 70 64 61 74 61 24 44 69 72 3e 2e 4e 61 |Helpdata$Dir>.Na| 00001a40 6d 65 2d 6f 66 2d 53 74 72 6f 6e 67 68 65 6c 70 |me-of-Stronghelp| 00001a50 2d 6d 61 6e 75 61 6c 22 29 0d 00 e8 14 20 20 c9 |-manual").... .| 00001a60 20 22 51 75 69 74 22 3a 20 4e 25 3d b9 0d 00 e9 | "Quit": N%=....| 00001a70 07 20 20 cb 0d 00 ea 5b 20 20 e7 20 61 64 6a 25 |. ....[ . adj%| 00001a80 20 f2 53 68 6f 77 4d 65 6e 75 28 4d 61 69 6e 4d | .ShowMenu(MainM| 00001a90 65 6e 75 25 2c 21 62 6c 6f 63 6b 25 2d 36 34 2c |enu%,!block%-64,| 00001aa0 39 36 2b 32 2a 34 34 29 3a f4 20 6b 65 65 70 73 |96+2*44):. keeps| 00001ab0 20 6d 65 6e 75 20 64 69 73 70 6c 61 79 65 64 20 | menu displayed | 00001ac0 6f 6e 20 41 64 6a 75 73 74 20 63 6c 69 63 6b 0d |on Adjust click.| 00001ad0 00 eb 07 20 20 e1 0d 00 ec 04 0d 00 ed 59 20 20 |... ........Y | 00001ae0 dd 20 f2 45 72 72 6f 72 3a c8 99 22 58 44 44 45 |. .Error:.."XDDE| 00001af0 55 74 69 6c 73 5f 54 68 72 6f 77 62 61 63 6b 53 |Utils_ThrowbackS| 00001b00 74 61 72 74 22 3a f4 20 4d 6f 76 65 64 20 68 65 |tart":. Moved he| 00001b10 72 65 20 74 6f 20 73 74 6f 70 20 77 69 6e 64 6f |re to stop windo| 00001b20 77 20 6f 70 65 6e 69 6e 67 20 74 6f 6f 20 73 6f |w opening too so| 00001b30 6f 6e 2e 0d 00 ee 0f 20 20 21 62 6c 6f 63 6b 25 |on..... !block%| 00001b40 3d 9f 0d 00 ef 5c 20 20 c8 99 22 58 44 44 45 55 |=....\ .."XDDEU| 00001b50 74 69 6c 73 5f 54 68 72 6f 77 62 61 63 6b 53 65 |tils_ThrowbackSe| 00001b60 6e 64 22 2c 31 2c 2c 2b 22 3c 4f 62 65 79 24 64 |nd",1,,+"<Obey$d| 00001b70 69 72 3e 2e 21 72 75 6e 69 6d 61 67 65 22 2c 9e |ir>.!runimage",.| 00001b80 2c 31 2c 22 45 72 72 6f 72 20 22 2b c3 28 9f 29 |,1,"Error "+.(.)| 00001b90 2b 22 20 22 2b f6 24 2b 22 20 22 2b 91 24 0d 00 |+" "+.$+" "+.$..| 00001ba0 f0 2e 20 20 24 28 62 6c 6f 63 6b 25 2b 34 29 3d |.. $(block%+4)=| 00001bb0 f6 24 2b 22 20 61 74 20 6c 69 6e 65 20 22 2b c3 |.$+" at line "+.| 00001bc0 20 9e 2b 22 20 22 2b 91 24 2b bd 30 0d 00 f1 2f | .+" "+.$+.0.../| 00001bd0 20 20 c8 99 20 22 57 69 6d 70 5f 52 65 70 6f 72 | .. "Wimp_Repor| 00001be0 74 45 72 72 6f 72 22 2c 62 6c 6f 63 6b 25 2c 32 |tError",block%,2| 00001bf0 2c 22 4e 65 77 41 70 70 31 32 22 0d 00 f2 07 20 |,"NewApp12".... | 00001c00 20 e1 0d 00 f3 04 0d 00 f4 1f 20 20 dd 20 a4 52 | ......... . .R| 00001c10 65 61 64 44 61 74 65 53 74 61 6d 70 28 24 73 74 |eadDateStamp($st| 00001c20 61 6d 70 25 29 0d 00 f5 44 20 20 c8 99 22 4f 53 |amp%)...D .."OS| 00001c30 5f 46 69 6c 65 22 2c 35 2c 24 73 74 61 6d 70 25 |_File",5,$stamp%| 00001c40 20 b8 20 4f 62 54 79 70 65 2c 2c 46 69 6c 65 54 | . ObType,,FileT| 00001c50 79 70 65 2c 44 61 74 65 2c 4c 65 6e 67 74 68 2c |ype,Date,Length,| 00001c60 41 74 72 69 62 75 74 65 73 0d 00 f6 12 20 20 21 |Atributes.... !| 00001c70 73 74 61 6d 70 25 3d 44 61 74 65 0d 00 f7 17 20 |stamp%=Date.... | 00001c80 20 73 74 61 6d 70 25 21 34 3d 46 69 6c 65 54 79 | stamp%!4=FileTy| 00001c90 70 65 0d 00 f8 39 20 20 c8 99 22 4f 53 5f 43 6f |pe...9 .."OS_Co| 00001ca0 6e 76 65 72 74 53 74 61 6e 64 61 72 64 44 61 74 |nvertStandardDat| 00001cb0 65 41 6e 64 54 69 6d 65 22 2c 73 74 61 6d 70 25 |eAndTime",stamp%| 00001cc0 2c 74 69 6d 65 25 2c 31 30 30 30 0d 00 f9 20 20 |,time%,1000... | 00001cd0 20 53 74 61 6d 70 24 3d a4 45 78 74 72 61 63 74 | Stamp$=.Extract| 00001ce0 4e 61 6d 65 28 74 69 6d 65 25 29 0d 00 fa 0d 20 |Name(time%).... | 00001cf0 20 3d 53 74 61 6d 70 24 0d 00 fb 04 0d 00 fc 1f | =Stamp$........| 00001d00 20 20 dd 20 a4 45 78 74 72 61 63 74 4e 61 6d 65 | . .ExtractName| 00001d10 28 46 25 29 3a 5a 24 3d 22 22 3a 0d 00 fd 23 20 |(F%):Z$="":...# | 00001d20 20 c8 95 28 3f 46 25 3e 33 31 80 3f 46 25 3c 32 | ..(?F%>31.?F%<2| 00001d30 35 36 29 80 a9 28 5a 24 29 3c 32 35 35 3a 0d 00 |56)..(Z$)<255:..| 00001d40 fe 10 20 20 5a 24 3d 5a 24 2b bd 3f 46 25 0d 00 |.. Z$=Z$+.?F%..| 00001d50 ff 0f 20 20 46 25 3d 46 25 2b 31 3a ce 0d 01 00 |.. F%=F%+1:....| 00001d60 09 20 20 3d 5a 24 0d 01 01 04 0d 01 02 12 20 20 |. =Z$........ | 00001d70 dd 20 f2 52 65 61 64 49 6e 70 75 74 0d 01 03 11 |. .ReadInput....| 00001d80 20 20 e3 20 6e 25 3d 30 20 b8 20 31 34 0d 01 04 | . n%=0 . 14...| 00001d90 12 20 20 4f 75 74 70 75 74 25 3f 6e 25 3d 30 0d |. Output%?n%=0.| 00001da0 01 05 07 20 20 ed 0d 01 06 0a 20 20 6e 25 3d 30 |... ..... n%=0| 00001db0 0d 01 07 15 20 20 c8 95 20 49 6e 70 75 74 25 3f |.... .. Input%?| 00001dc0 6e 25 3e 33 32 0d 01 08 20 20 20 4f 75 74 70 75 |n%>32... Outpu| 00001dd0 74 25 3f 6e 25 3d 43 6f 64 65 25 2b 49 6e 70 75 |t%?n%=Code%+Inpu| 00001de0 74 25 3f 6e 25 0d 01 09 0b 20 20 6e 25 2b 3d 31 |t%?n%.... n%+=1| 00001df0 0d 01 0a 07 20 20 ce 0d 01 0b 12 20 20 49 6e 70 |.... ..... Inp| 00001e00 75 74 25 3f 6e 25 3d 31 33 0d 01 0c 17 20 20 24 |ut%?n%=13.... $| 00001e10 4f 75 74 70 75 74 25 3d 24 4f 75 74 70 75 74 25 |Output%=$Output%| 00001e20 0d 01 0d 07 20 20 e1 0d 01 0e 06 20 20 0d 01 0f |.... ..... ...| 00001e30 12 20 20 dd 20 f2 4d 61 6b 65 45 72 72 6f 72 0d |. . .MakeError.| 00001e40 01 10 0e 20 20 41 3d b3 28 32 35 35 29 0d 01 11 |... A=.(255)...| 00001e50 31 20 20 45 72 72 6f 72 24 3d c3 20 41 2b 22 23 |1 Error$=. A+"#| 00001e60 23 23 23 23 2d 44 65 6d 6f 20 45 72 72 6f 72 20 |####-Demo Error | 00001e70 22 2b c3 20 41 2b 22 2d 23 23 23 23 23 22 0d 01 |"+. A+"-#####"..| 00001e80 13 18 20 20 ff 28 22 45 52 52 4f 52 20 22 2b 45 |.. .("ERROR "+E| 00001e90 72 72 6f 72 24 29 0d 01 14 07 20 20 e1 0d ff |rror$).... ...| 00001e9f