Home » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199312.adf » !ScribeOCR_ScribeOCR » !Scribe/!RunImage
!Scribe/!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 » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199312.adf » !ScribeOCR_ScribeOCR |
Filename: | !Scribe/!RunImage |
Read OK: | ✔ |
File size: | 9C9B bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10 REM > !RunImage 20 ver$="1.26" 30 REM Direct RAM Transfer at last ! 40 app$="Scribe" 50 heap%=HIMEM 60 pnt%=24 70 filetype%=&604 80 : 90 PROCsetup 100 $task%="TASK" 110 : 120 SYS "OS_GetEnv" TO env$ 130 : 140 SYS "Wimp_Initialise",200,!task%,app$ TO ,taskhandle% 150 SYS "OS_File",&FF,"<OCR$Dir>.code",code%,0 160 SYS "OS_SpriteOp",256+10,sprite%,"<OCR$Dir>.sprites",code%,0 170 ON ERROR PROCerror 180 : 190 PROCtemplate 200 PROCicons 210 PROCcode 220 PROCsetheap 230 PROCdefault 240 PROCpoll 250 END 260 : 270 DEF PROCdefault 280 file$="<OCR$Dir>.Default" 290 SYS "OS_File",&05,file$ TO ,,,,flesze% 300 PROCclaim(heap%+32,flesze%,claim%) 310 SYS "OS_File",&FF,file$,heap%!32 320 $(icontxt%(18))=LEFT$($(heap%!32+4),28) 330 ENDPROC 340 : 350 DEF PROCsetup 360 indirln%=8*1024 370 DIM code% 40*1024 380 DIM input% 256 390 DIM output% 256 400 DIM block% 8*1024 410 DIM bitmap% 256 420 DIM palette% 8 430 DIM scale% 40 440 DIM menu% 256 450 DIM indir% indirln% 460 DIM icontxt%(32) 470 DIM task% 4 480 DIM state% 4*(67+32*3) 490 DIM pattern% 4*32 500 DIM delta% 4*(3*32) 510 DIM sprite% 12*1024 520 : 530 !sprite%=12*1024:sprite%!4=0:sprite%!8=16:sprite%!12=16 540 input%!84=8:input%!88=8 550 input%!92=72:input%!96=72 560 input%!100=20:input%!104=72 570 input%!108=0.1*(1<<(pnt% DIV 2)) 580 input%!112=8:input%!116=8 590 input%!120=state% 600 input%!124=0 610 input%!180=delta% 620 input%!184=pattern% 630 : 640 !palette%=&FFFFFF00:palette%!4=0 650 wdt%=256:hgt%=256:txtwdt%=1280:txthgt%=256 660 scale%!16=1:scale%!20=2 670 SYS "OS_ReadModeVariable",MODE,4 TO ,,scale%!24 680 SYS "OS_ReadModeVariable",MODE,5 TO ,,scale%!28 690 scale%!32=scale%!24:scale%!36=scale%!28 700 input%!64=0 710 REM Internal flag 720 intflag%=112 730 menno%=0:xst%=0:yst%=0:xed%=0:yed%=0 740 ENDPROC 750 : 760 DEF PROCerror 770 ON ERROR OFF 780 SYS "Wimp_CloseDown",taskhandle%,task% 790 ERROR EXT ERR,REPORT$+" at line "+STR$(ERL) 800 END 810 : 820 DEF PROCtemplate 830 sticn%=indir%:enicn%=indir%+indirln% 840 SYS "Wimp_OpenTemplate",,"<OCR$Dir>.Templates" 850 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"sprite",0 TO ,,sticn% 860 block%!44=0:block%!48=-hgt% 870 block%!52=wdt%:block%!56=0 880 SYS "Wimp_CreateWindow",,block%+4 TO sprwin% 890 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"text",0 TO ,,sticn% 900 SYS "Wimp_CreateWindow",,block%+4 TO txtwin% 910 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"info",0 TO ,,sticn% 920 SYS "Wimp_CreateWindow",,block%+4 TO infwin% 930 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"magnifier",0 TO ,,sticn% 940 SYS "Wimp_CreateWindow",,block%+4 TO magwin% 950 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"tsave",0 TO ,,sticn% 960 SYS "Wimp_CreateWindow",,block%+4 TO tsvwin% 970 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"nsave",0 TO ,,sticn% 980 SYS "Wimp_CreateWindow",,block%+4 TO nsvwin% 990 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"control",0 TO ,,sticn% 1000 SYS "Wimp_CreateWindow",,block%+4 TO cntwin% 1010 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"limit",0 TO ,,sticn% 1020 SYS "Wimp_CreateWindow",,block%+4 TO limwin% 1030 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"train",0 TO ,,sticn% 1040 SYS "Wimp_CreateWindow",,block%+4 TO trnwin% 1050 SYS "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"network",0 TO ,,sticn% 1060 SYS "Wimp_CreateWindow",,block%+4 TO netwin% 1070 SYS "Wimp_CloseTemplate" 1080 ENDPROC 1090 : 1100 DEF PROCicons 1110 !block%=infwin%:block%!4=4 1120 SYS "Wimp_GetIconState",,block% 1130 icontxt%(0)=block%!28 1140 $(block%!28)=ver$+CHR$(0) 1150 !block%=magwin%:block%!4=0 1160 SYS "Wimp_GetIconState",,block% 1170 icontxt%(1)=block%!28 1180 $(block%!28)=STR$(scale%!16)+CHR$(0) 1190 block%!4=1 1200 SYS "Wimp_GetIconState",,block% 1210 icontxt%(2)=block%!28 1220 $(block%!28)=STR$(scale%!20)+CHR$(0) 1230 !block%=tsvwin%:block%!4=2 1240 SYS "Wimp_GetIconState",,block% 1250 icontxt%(3)=block%!28 1260 $(block%!28)="Textfile"+CHR$(0) 1270 !block%=limwin%:icnbse%=48 1280 FOR icn%=0 TO 13 1290 block%!4=icn%+icnbse%:SYS "Wimp_GetIconState",,block% 1300 icontxt%(4+icn%)=block%!28 1310 NEXT icn% 1320 $(icontxt%(16))="10"+CHR$(0) 1330 $(icontxt%(17))="400"+CHR$(0) 1340 !block%=cntwin%:block%!4=27 1350 SYS "Wimp_GetIconState",,block% 1360 icontxt%(18)=block%!28 1370 !block%=nsvwin%:block%!4=2 1380 SYS "Wimp_GetIconState",,block% 1390 icontxt%(19)=block%!28 1400 $(block%!28)="NetFile"+CHR$(0) 1410 !block%=netwin%:block%!20=&07000102:block%!28=sprite%:block%!32=12 1420 block%!4=88:block%!8=-48-44*4:block%!12=88+84*2:block%!16=-48 1430 block%!24=sticn%:$(sticn%)="character"+CHR$0 1440 SYS "Wimp_CreateIcon",,block% TO chricn% 1450 block%!4=308:block%!8=-48-34*4:block%!12=308+298*2:block%!16=-32 1460 block%!24=sticn%+13:$(sticn%+13)="response"+CHR$0 1470 SYS "Wimp_CreateIcon",,block% TO repicn% 1480 block%!4=10:SYS "Wimp_GetIconState",,block% 1490 icontxt%(20)=block%!28:FOR chr%=0 TO 31:?(block%!28+chr%)=33+chr%:NEXT chr% 1500 ENDPROC 1510 : 1520 DEF FNiconbar 1530 !block%=-1:block%!4=0 1540 block%!8=0:block%!12=68 1550 block%!16=68 1560 block%!12=68 1570 block%!20=&2002 1580 $(block%+24)="!scribe" 1590 SYS "Wimp_CreateIcon",,block% TO icon% 1600 =icon% 1610 : 1620 DEF PROCpoll 1630 iconbar%=FNiconbar 1640 REPEAT 1650 SYS "Wimp_Poll",&FFF9F000,block% TO reason% 1660 CASE reason% OF 1670 WHEN 1:SYS "Wimp_RedrawWindow",,block% TO flag% 1680 IF !block%=sprwin% THEN PROCredrawsprite 1690 IF !block%=txtwin% THEN PROCredrawtext 1700 WHEN 2:SYS "Wimp_OpenWindow",,block% 1710 ENDIF 1720 WHEN 3:SYS "Wimp_CloseWindow",,block% 1730 IF !block%=netwin% THEN intflag%=intflag% AND NOT 1024 1740 WHEN 4:IF !block%=sprwin% AND (intflag% AND 2048)=2048 THEN *POINTER 1 1750 WHEN 5:IF !block%=sprwin% AND (intflag% AND 2048)=2048 THEN SYS "OS_SpriteOp",256+36,sprite%,"ptr_cross",36,9,5:*POINTER 2 1760 WHEN 6:PROCclick 1770 WHEN 7:PROCdrag 1780 WHEN 8:PROCkeypress 1790 WHEN 9:PROCmenuselect 1800 WHEN 17,18:PROCmessage 1810 WHEN 19:PROCacknowledge 1820 OTHERWISE 1830 IF (intflag% AND 12)=4 THEN 1840 IF (intflag% AND 8192)=8192 THEN intflag%=intflag% OR 8 1850 CALL scanline 1860 PROCextract 1870 PROCidentify 1880 IF (intflag% AND 12)=0:PROCbuttons 1890 IF (intflag% AND 8192)=8192 THEN PROCbuttons 1900 ENDIF 1910 IF (intflag% AND 256)=256 THEN PROCtrain 1920 IF (intflag% AND 6144)=6144 THEN 1930 SYS "Wimp_GetPointerInfo",,block% 1940 xpnt%=!block%:ypnt%=block%!4:window%=block%!12 1950 !block%=sprwin%:SYS "Wimp_GetWindowState",,block% 1960 xpnt%=(xpnt%-block%!4+block%!20)*scale%!20/scale%!16 1970 ypnt%=(ypnt%-block%!16+block%!24+hgt%)*scale%!20/scale%!16 1980 IF (xpnt%<>xed% OR ypnt%<>yed%) AND window%=sprwin% THEN PROCrubber:xed%=xpnt%:yed%=ypnt%:PROCrubber 1990 ENDIF 2000 ENDCASE 2010 UNTIL FALSE 2020 ENDPROC 2030 : 2040 DEF PROCmenuselect 2050 IF menno%=0 AND !block%=1 THEN SYS "Wimp_CloseDown",taskhandle%,task%:END 2060 IF menno%=1 AND !block%=2 THEN CALL invert:SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 2070 IF menno%=1 AND !block%=3 THEN 2080 intflag%=intflag% OR 2048:PROCclaim(heap%+24,4,claim%):!(heap%!24)=0 2090 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 2100 ENDIF 2110 IF menno%=3 AND !block%=1 THEN PROCnew 2120 IF menno%=3 AND !block%=2 THEN 2130 intflag%=intflag% OR 1024:!block%=netwin%:SYS "Wimp_GetWindowState",,block% 2140 SYS "Wimp_OpenWindow",,block% 2150 ENDIF 2160 ENDPROC 2170 : 2180 DEF PROCclick 2190 xpnt%=!block% 2200 ypnt%=block%!4 2210 butn%=block%!8 2220 window%=block%!12 2230 icon%=block%!16 2240 : 2250 CASE window% OF 2260 WHEN -2 2270 IF butn%=2 AND icon%=iconbar% THEN PROCiconmenu 2280 IF butn%=4 AND icon%=iconbar% THEN 2290 !block%=sprwin%:SYS "Wimp_GetWindowState",,block% 2300 SYS "Wimp_OpenWindow",,block% 2310 !block%=txtwin%:SYS "Wimp_GetWindowState",,block% 2320 SYS "Wimp_OpenWindow",,block% 2330 !block%=cntwin%:SYS "Wimp_GetWindowState",,block% 2340 SYS "Wimp_OpenWindow",,block% 2350 ENDIF 2360 WHEN tsvwin% 2370 IF icon%=0 AND butn%=4 THEN 2380 CLG:GCOL 7:RECTANGLE FILL 0,0,state%!(4*64)/(1<<pnt%)*127 2390 IF save% THEN 2400 !block%=block%!12:SYS "Wimp_CloseWindow",,block% 2410 SYS "Wimp_CreateMenu",,-1 2420 ENDIF 2430 ENDIF 2440 IF icon%=3 AND (butn% AND 112)>0 THEN 2450 !block%=block%!12:block%!40=block%!12:block%!4=block%!16 2460 SYS "Wimp_GetIconState",,block% 2470 SYS "Wimp_GetWindowState",,block%+40 2480 block%!4=5:block%!8+=block%!44:block%!12+=block%!56 2490 block%!16+=block%!44:block%!20+=block%!56 2500 block%!24=0:block%!28=0:block%!32=&7FFFFFFF:block%!36=&7FFFFFFF 2510 SYS "Wimp_DragBox",,block% 2520 intflag%=intflag% OR 1 2530 ENDIF 2540 WHEN nsvwin% 2550 IF icon%=0 AND butn%=4 THEN 2560 PROCsave(filetype%,icontxt%(19),save%) 2570 IF save% THEN 2580 !block%=block%!12:SYS "Wimp_CloseWindow",,block% 2590 SYS "Wimp_CreateMenu",,-1 2600 ENDIF 2610 ENDIF 2620 IF icon%=3 AND (butn% AND 112)>0 THEN 2630 !block%=block%!12:block%!40=block%!12:block%!4=block%!16 2640 SYS "Wimp_GetIconState",,block% 2650 SYS "Wimp_GetWindowState",,block%+40 2660 block%!4=5:block%!8+=block%!44:block%!12+=block%!56 2670 block%!16+=block%!44:block%!20+=block%!56 2680 block%!24=0:block%!28=0:block%!32=&7FFFFFFF:block%!36=&7FFFFFFF 2690 SYS "Wimp_DragBox",,block% 2700 intflag%=intflag% OR 128 2710 ENDIF 2720 WHEN sprwin% 2730 IF butn%=4 AND (intflag% AND 6144)=6144 THEN 2740 *POINTER 1 2750 PROCrotate 2760 intflag%=intflag% AND NOT 6144 2770 !block%=sprwin%:SYS "Wimp_GetWindowState",,block% 2780 SYS "Wimp_OpenWindow",,block% 2790 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 2800 ENDIF 2810 IF butn%=4 AND (intflag% AND 6144)=2048 THEN 2820 !block%=block%!12:SYS "Wimp_GetWindowState",,block% 2830 xst%=(xpnt%-block%!4+block%!20)*scale%!20/scale%!16:yst%=(ypnt%-block%!16+block%!24+hgt%)*scale%!20/scale%!16 2840 xed%=xst%:yed%=yst% 2850 PROCrubber:intflag%=intflag% OR 4096 2860 ENDIF 2870 IF butn%=1 AND (intflag% AND 2048)=2048 THEN 2880 PROCrubber:intflag%=intflag% AND NOT 6144 2890 *POINTER 1 2900 ENDIF 2910 IF butn%=2 THEN PROCspritemenu 2920 IF butn%=64 AND !(4+heap%!8)>0 AND (intflag% AND 2052)=0 THEN 2930 block%!20=sprwin%:SYS "Wimp_GetWindowState",,block%+20 2940 block%!8=!block%:block%!12=block%!4 2950 block%!16=block%!8:block%!20=block%!12 2960 !block%=sprwin%:block%!4=6 2970 SYS "Wimp_DragBox",,block% 2980 intflag%=intflag% OR 2 2990 ENDIF 3000 WHEN magwin% 3010 IF icon%>1 AND (butn%=1 OR butn%=4) THEN 3020 scale%!(12+4*(icon% DIV 2))+=(1+2*(butn%=1))*(1-2*(icon% MOD 2)) 3030 IF scale%!(12+4*(icon% DIV 2))<1 THEN scale%!(12+4*(icon% DIV 2))=1 3040 IF scale%!(12+4*(icon% DIV 2))>999 THEN scale%!(12+4*(icon% DIV 2))=999 3050 $(icontxt%(icon% DIV 2))=STR$(scale%!(12+4*(icon% DIV 2)))+CHR$(0) 3060 PROCscalesprite 3070 !block%=sprwin%:SYS "Wimp_GetWindowState",,block% 3080 SYS "Wimp_OpenWindow",,block% 3090 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 3100 PROCspritemenu 3110 ENDIF 3120 WHEN limwin% 3130 IF icon%=65 THEN intflag%=intflag% EOR 16 3140 WHEN txtwin% 3150 IF butn%=2 THEN PROCtextmenu 3160 WHEN cntwin% 3170 IF butn%=2 THEN PROCcontmenu 3180 IF butn%=4 AND icon%=28 THEN intflag%=intflag% EOR 8192 3190 IF butn%=4 AND icon%=29 THEN intflag%=intflag% EOR 64 3200 IF butn%=4 AND icon%=30 THEN intflag%=intflag% AND NOT 32 3210 IF butn%=4 AND icon%=31 THEN intflag%=intflag% OR 32 3220 IF butn%=1 AND icon%=30 OR icon%=31 THEN 3230 !block%=cntwin%:block%!4=icon%:block%!8=1<<21:block%!12=1<<21 3240 SYS "Wimp_SetIconState",,block% 3250 ENDIF 3260 IF butn%=4 AND icon%=16 THEN intflag%=intflag% AND NOT 12:PROCbuttons 3270 IF butn%=4 AND icon%=17 AND (intflag% AND 4)=4 THEN intflag%=intflag% OR 8:PROCbuttons 3280 IF butn%=4 AND icon%=18 AND (intflag% AND 4)=0 AND !(heap%!24)>0 THEN 3290 input%!128=0 3300 input%!132=!(heap%!24+4+input%!128*20) 3310 input%!136=!(heap%!24+8+input%!128*20) 3320 input%!140=!(heap%!24+12+input%!128*20) 3330 input%!144=!(heap%!24+16+input%!128*20) 3340 input%!148=!(heap%!24+20+input%!128*20) 3350 intflag%=intflag% OR 4 3360 IF (intflag% AND 32)=32 THEN 3370 !(heap%!16)=0:PROCclaim(heap%+16,256,claim%) 3380 ENDIF 3390 PROCscaletext 3400 block%!64=txtwin%:SYS "Wimp_GetWindowState",,block%+64 3410 SYS "Wimp_OpenWindow",,block%+64 3420 SYS "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 3430 ENDIF 3440 IF butn%=4 AND icon%=18 AND (intflag% AND 4)=4 THEN intflag%=intflag% AND NOT 8:PROCbuttons 3450 IF butn%=4 AND icon%=19 AND (intflag% AND 4)=0 AND !(heap%!24)>0 AND !(heap%!16)>0 THEN 3460 input%!128=0 3470 input%!132=!(heap%!24+4+input%!128*20) 3480 input%!136=!(heap%!24+8+input%!128*20) 3490 input%!140=!(heap%!24+12+input%!128*20) 3500 input%!144=!(heap%!24+16+input%!128*20) 3510 input%!148=!(heap%!24+20+input%!128*20) 3520 !block%=trnwin%:SYS "Wimp_GetWindowState",,block% 3530 SYS "OS_ReadModeVariable",MODE,11 TO ,,block%!32 3540 SYS "OS_ReadModeVariable",MODE,12 TO ,,block%!36 3550 block%!32=(block%!32<<scale%!32)DIV 2:block%!36=(block%!36<<scale%!36)DIV 2 3560 block%!12-=block%!4:block%!16-=block%!8 3570 block%!4=block%!32-block%!12 DIV 2:block%!8=block%!36-block%!16 DIV 2 3580 block%!12+=block%!4:block%!16+=block%!8 3590 SYS "Wimp_OpenWindow",,block% 3600 intflag%=intflag% OR 256 3610 PROCbuttons 3620 ENDIF 3630 ENDCASE 3640 ENDPROC 3650 : 3660 DEF PROCbuttons 3670 !block%=cntwin%:block%!12=&F0000000 3680 block%!4=17:block%!8=&C0000000 OR (intflag% AND 8)<<26 3690 SYS "Wimp_SetIconState",,block% 3700 block%!4=18:block%!8=&C0000000 OR (intflag% AND 4)<<27 EOR (intflag% AND 8)<<26 3710 SYS "Wimp_SetIconState",,block% 3720 ENDPROC 3730 : 3740 DEF PROCspritemenu 3750 $(menu%)=app$ 3760 menu%!12=&70207 3770 menu%!16=120:menu%!20=40 3780 menu%!24=0 3790 $(block%)="Zoom":PROCmenentry(0,0,magwin%,&7000011,block%) 3800 $(block%)="Limits":PROCmenentry(1,8,limwin%,&7000011 OR (intflag% AND 4)<<20,block%) 3810 $(block%)="Invert":PROCmenentry(2,0,-1,&7000011 OR ABS(!(4+heap%!8)=0)<<22 OR (intflag% AND 4)<<20,block%) 3820 $(block%)="Align":PROCmenentry(3,128,-1,&7000011 OR ABS(!(4+heap%!8)=0)<<22 OR (intflag% AND 4)<<20,block%) 3830 SYS "Wimp_CreateMenu",,menu%,xpnt%,ypnt% 3840 menno%=1 3850 ENDPROC 3860 : 3870 DEF PROCtextmenu 3880 $(menu%)=app$ 3890 menu%!12=&70207 3900 menu%!16=120:menu%!20=40 3910 menu%!24=0 3920 $(block%)="Save":PROCmenentry(0,128,tsvwin%,&7000011,block%) 3930 SYS "Wimp_CreateMenu",,menu%,xpnt%,ypnt% 3940 menno%=2 3950 ENDPROC 3960 : 3970 DEF PROCcontmenu 3980 $(menu%)=app$ 3990 menu%!12=&70207 4000 menu%!16=120:menu%!20=40 4010 menu%!24=0 4020 $(block%)="Save":PROCmenentry(0,0,nsvwin%,&7000011,block%) 4030 $(block%)="New Net":PROCmenentry(1,0,-1,&7000011,block%) 4040 $(block%)="Show":PROCmenentry(2,128,-1,&7000011,block%) 4050 SYS "Wimp_CreateMenu",,menu%,xpnt%,ypnt% 4060 menno%=3 4070 ENDPROC 4080 : 4090 DEF PROCiconmenu 4100 $(menu%)=app$ 4110 menu%!12=&70207 4120 menu%!16=88:menu%!20=40 4130 menu%!24=0 4140 $(block%)="Info":PROCmenentry(0,0,infwin%,&7000011,block%) 4150 $(block%)="Quit":PROCmenentry(1,128,-1,&7000011,block%) 4160 SYS "Wimp_CreateMenu",,menu%,xpnt%-64,176 4170 menno%=0 4180 ENDPROC 4190 : 4200 DEF PROCmenentry(entry%,flag%,submenu%,iconflg%,icondat%) 4210 menu%!(28+24*entry%)=flag% 4220 menu%!(32+24*entry%)=submenu% 4230 menu%!(36+24*entry%)=iconflg% 4240 menu%!(40+24*entry%)=!icondat% 4250 menu%!(44+24*entry%)=icondat%!4 4260 menu%!(48+24*entry%)=icondat%!8 4270 ENDPROC 4280 : 4290 DEF PROCsetheap 4300 SYS "Wimp_SlotSize",-1,-1 TO extent% 4310 SYS "Wimp_SlotSize",extent%+128+320,-1 4320 !heap%=6:heap%!4=extent%+128+320 4330 heap%!8=heap%+128:heap%!12=32 4340 heap%!16=heap%+160:heap%!20=32 4350 heap%!24=heap%+192:heap%!28=32 4360 heap%!32=heap%+224:heap%!36=32 4370 heap%!40=heap%+256:heap%!44=32 4380 heap%!48=heap%+288:heap%!52=32 4390 !(heap%!8)=32:!(4+heap%!8)=0:!(8+heap%!8)=16:!(12+heap%!8)=16 4400 !(heap%!16)=0:!(heap%!24)=0:!(heap%!40)=0 4410 !input%=heap% 4420 ENDPROC 4430 : 4440 DEF PROCclaim(block%,size%,RETURN flag%) 4450 flag%=FALSE 4460 size%=(size%+3) AND -4 4470 delta%=size%-block%!4 4480 SYS "Wimp_SlotSize",-1,-1 TO ,,free% 4490 IF delta%<free% THEN 4500 flag%=TRUE 4510 IF delta%>0 THEN SYS "Wimp_SlotSize",heap%!4+delta%,-1 4520 input%!4=!block%:input%!8=size%:CALL heap 4530 IF delta%<0 THEN SYS "Wimp_SlotSize",heap%!4,-1 4540 ENDIF 4550 ENDPROC 4560 : 4570 DEF PROCfull 4580 !block%=0 4590 $(block%+4)="No Room - memory full"+CHR$(0) 4600 SYS "Wimp_ReportError",block%,1,"!OCR" 4610 ENDPROC 4620 : 4630 DEF PROCcode 4640 input=code% 4650 output=code%+4 4660 heap=code%+code%!8 4670 position=code%+code%!12 4680 print=code%+code%!16 4690 findline=code%+code%!20 4700 findlimit=code%+code%!24 4710 scanline=code%+code%!28 4720 alias=code%+code%!32 4730 copy=code%+code%!36 4740 invert=code%+code%!40 4750 sprextent=code%+code%!44 4760 distort=code%+code%!48 4770 trainchar=code%+code%!52 4780 pattern=code%+code%!56 4790 best=code%+code%!60 4800 error=code%+code%!64 4810 learn=code%+code%!68 4820 evaluate=code%+code%!72 4830 !input=input% 4840 !output=output% 4850 ENDPROC 4860 : 4870 DEF PROCtestload(RETURN load%) 4880 load%=FALSE 4890 IF block%!20=txtwin% AND block%!40=&FFF AND (intflag% AND 12)=0 THEN load%=TRUE 4900 IF block%!20=cntwin% AND block%!24=26 AND block%!40=filetype% THEN load%=TRUE 4910 IF block%!20=sprwin% AND block%!40=&FF9 AND (intflag% AND 12)=0 THEN load%=TRUE 4920 ENDPROC 4930 : 4940 DEF PROCload(RETURN load%) 4950 file$=FNstring(block%+44) 4960 load%=FALSE 4970 IF block%!40=&FFF THEN 4980 SYS "OS_File",&05,file$ TO ,,,,flesze% 4990 PROCclaim(heap%+16,flesze%+4,claim%) 5000 IF claim% THEN 5010 !(heap%!16)=flesze% 5020 SYS "OS_File",&FF,file$,heap%!16+4 5030 IF file$="<Wimp$Scrap>" THEN $(icontxt%(3))="Textfile"+CHR$0 ELSE $(icontxt%(3))=file$+CHR$0 5040 input%!32=heap%!16 5050 PROCscaletext 5060 block%!64=txtwin%:SYS "Wimp_GetWindowState",,block%+64 5070 SYS "Wimp_OpenWindow",,block%+64 5080 SYS "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 5090 load%=TRUE 5100 ELSE 5110 PROCfull 5120 ENDIF 5130 ENDIF 5140 : 5150 IF block%!40=filetype% THEN 5160 SYS "OS_File",&05,file$ TO ,,,,flesze% 5170 PROCclaim(heap%+32,flesze%,claim%) 5180 IF claim% THEN 5190 SYS "OS_File",&FF,file$,heap%!32 5200 $(icontxt%(18))=LEFT$($(heap%!32+4),28) 5210 IF file$="<Wimp$Scrap>" THEN $(icontxt%(19))="NetFile"+CHR$0 ELSE $(icontxt%(19))=file$+CHR$0 5220 block%!64=cntwin%:block%!68=27:block%!72=0:block%!76=0 5230 SYS "Wimp_SetIconState",,block%+64 5240 load%=TRUE 5250 ELSE 5260 PROCfull 5270 ENDIF 5280 ENDIF 5290 : 5300 IF block%!40=&FF9 THEN 5310 SYS "OS_File",&05,file$ TO ,,,,flesze% 5320 flesze%=(flesze%+&101F) AND NOT &1F 5330 PROCclaim(heap%+8,flesze%,claim%) 5340 IF claim% THEN 5350 !(heap%!8)=heap%!12 5360 SYS "OS_SpriteOp",256+10,heap%!8,file$ 5370 input%!12=heap%!8+16+!(heap%!8+48) 5380 input%!16=!(heap%!8+32)+1 5390 input%!20=!(heap%!8+36)+1 5400 input%!24=!(heap%!8+40) 5410 input%!28=!(heap%!8+44) 5420 CALL invert 5430 PROCclaim(heap%+24,4,claim%) 5440 !(heap%!24)=0 5450 PROCtranslate 5460 PROCscalesprite 5470 block%!64=sprwin%:SYS "Wimp_GetWindowState",,block%+64 5480 SYS "Wimp_OpenWindow",,block%+64 5490 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 5500 load%=TRUE 5510 ELSE 5520 PROCfull 5530 ENDIF 5540 ENDIF 5550 ENDPROC 5560 : 5570 DEF FNleaf(buffer%) 5580 bufoff%=0 5590 str$="" 5600 WHILE buffer%?bufoff%>=32 AND bufoff%<255 5610 str$=str$+CHR$(buffer%?bufoff%) 5620 IF buffer%?bufoff%=46 THEN str$="" 5630 bufoff%+=1 5640 ENDWHILE 5650 =str$ 5660 : 5670 DEF FNstring(buffer%) 5680 bufoff%=0 5690 str$="" 5700 WHILE buffer%?bufoff%>=32 AND bufoff%<255 5710 str$=str$+CHR$(buffer%?bufoff%) 5720 bufoff%+=1 5730 ENDWHILE 5740 =str$ 5750 : 5760 DEF FNnumber(number,rnd%) 5770 mid%=INSTR(STR$(number),CHR$46) 5780 IF mid%=0 THEN =STR$(number) ELSE =LEFT$(STR$(number),mid%+rnd%) 5790 : 5800 DEF PROCsave(type%,buffer%,RETURN save%) 5810 LOCAL ERROR 5820 ON ERROR LOCAL PROCerrfile:ENDPROC 5830 file$=FNstring(buffer%) 5840 save%=INSTR(file$,".") OR INSTR(file$,":") OR INSTR(file$,"<Wimp$Scrap>") 5850 IF save% THEN 5860 IF type%=&FFF THEN 5870 SYS "OS_File",&00,buffer%,0,0,(heap%!16)+4,(heap%!16)+4+!(heap%!16) 5880 SYS "OS_File",&12,buffer%,type% 5890 ELSE 5900 $(heap%!32+4)=$(icontxt%(18)) 5910 SYS "OS_File",&00,buffer%,0,0,heap%!32,(heap%!32)+(heap%!36) 5920 SYS "OS_File",&12,buffer%,type% 5930 ENDIF 5940 ELSE 5950 !block%=0 5960 $(block%+4)="To save, drag file icon to directory viewer"+CHR$(0) 5970 SYS "Wimp_ReportError",block%,1,"!Scribe" 5980 ENDIF 5990 RESTORE ERROR 6000 ENDPROC 6010 : 6020 DEF PROCerrfile 6030 !block%=0 6040 $(block%+4)=REPORT$+CHR$(0) 6050 SYS "Wimp_ReportError",block%,1,"!Scribe" 6060 save%=FALSE 6070 ENDPROC 6080 : 6090 DEF PROCmessage 6100 mess%=block%!16 6110 CASE mess% OF 6120 WHEN &00000:SYS "Wimp_CloseDown",taskhandle%,task% 6130 WHEN 1:PROCtestload(load%) 6140 IF load% THEN 6150 datype%=block%!40:datext%=block%!36:intflag%=intflag% AND NOT 512:claim%=FALSE 6160 IF datype%=&FFF THEN PROCclaim(heap%+16,datext%+4,claim%):data%=heap%!16+4 6170 IF datype%=filetype% THEN PROCclaim(heap%+32,datext%,claim%):data%=heap%!32 6180 IF datype%=&FF9 THEN PROCclaim(heap%+8,datext%,claim%):data%=heap%!8+4 6190 IF claim% THEN 6200 block%!12=block%!8 6210 block%!16=6 6220 block%!20=data% 6230 block%!24=datext% 6240 SYS "Wimp_SendMessage",18,block%,block%!4 6250 ELSE 6260 PROCfull 6270 ENDIF 6280 ENDIF 6290 : 6300 WHEN &00002:PROCsave(block%!40,block%+44,save%) 6310 IF save% THEN 6320 IF block%!40=&FFF THEN 6330 IF NOT(FNstring(block%+44)="<Wimp$Scrap>") THEN $(icontxt%(3))=FNstring(block%+44)+CHR$0 6340 ELSE 6350 IF NOT(FNstring(block%+44)="<Wimp$Scrap>") THEN $(icontxt%(19))=FNstring(block%+44)+CHR$0 6360 ENDIF 6370 block%!12=block%!8 6380 block%!16=3 6390 SYS "Wimp_SendMessage",17,block%,block%!4 6400 IF block%!40=&FFF THEN !block%=tsvwin% ELSE !block%=nsvwin% 6410 SYS "Wimp_CloseWindow",,block% 6420 SYS "Wimp_CreateMenu",,-1 6430 ENDIF 6440 : 6450 WHEN &00003 6460 PROCtestload(load%) 6470 IF load% THEN PROCload(load%) 6480 IF load% THEN 6490 block%!12=block%!8:block%!16=4 6500 SYS "Wimp_SendMessage",17,block%,block%!4 6510 ENDIF 6520 ENDIF 6530 WHEN &00006 6540 block%!12=block%!8:block%!16=7 6550 IF (block%!24-datext%)>0 THEN block%!24=datext% 6560 SYS "Wimp_TransferBlock",taskhandle%,data%,block%!4,block%!20,block%!24 6570 SYS "Wimp_SendMessage",18,block%,block%!4 6580 data%+=block%!24:datext%-=block%!24 6590 WHEN &00007 6600 intflag%=intflag% OR 512 6610 IF block%!24=datext% THEN 6620 data%+=block%!24:datext%=1024:claim%=FALSE 6630 IF datype%=&FFF THEN PROCclaim(heap%+16,heap%!20+datext%,claim%) 6640 IF datype%=filetype% THEN PROCclaim(heap%+32,heap%!36+datext%,claim%) 6650 IF datype%=&FF9 THEN PROCclaim(heap%+8,heap%!12+datext%,claim%) 6660 IF claim% THEN 6670 block%!12=block%!8:block%!16=6:block%!20=data%:block%!24=datext% 6680 SYS "Wimp_SendMessage",18,block%,block%!4 6690 ELSE 6700 PROCpipebreak:PROCfull 6710 ENDIF 6720 ELSE 6730 IF datype%=&FFF THEN 6740 PROCclaim(heap%+16,heap%!20+block%!24-datext%,claim%) 6750 !(heap%!16)=heap%!20-4:$(icontxt%(3))="Textfile"+CHR$0 6760 PROCscaletext 6770 block%!64=txtwin%:SYS "Wimp_GetWindowState",,block%+64 6780 SYS "Wimp_OpenWindow",,block%+64 6790 SYS "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 6800 ENDIF 6810 IF datype%=filetype% THEN 6820 PROCclaim(heap%+32,heap%!36+block%!24-datext%,claim%) 6830 $(icontxt%(18))=LEFT$($(heap%!32+4),28) 6840 $(icontxt%(19))="NetFile"+CHR$0 6850 block%!64=cntwin%:block%!68=27:block%!72=0:block%!76=0 6860 SYS "Wimp_SetIconState",,block%+64 6870 ENDIF 6880 IF datype%=&FF9 THEN 6890 PROCclaim(heap%+8,heap%!12+block%!24-datext%,claim%) 6900 !(heap%!8)=heap%!12 6910 input%!12=heap%!8+16+!(heap%!8+48) 6920 input%!16=!(heap%!8+32)+1 6930 input%!20=!(heap%!8+36)+1 6940 input%!24=!(heap%!8+40) 6950 input%!28=!(heap%!8+44) 6960 CALL invert 6970 PROCclaim(heap%+24,4,claim%) 6980 !(heap%!24)=0 6990 PROCtranslate 7000 PROCscalesprite 7010 block%!64=sprwin%:SYS "Wimp_GetWindowState",,block%+64 7020 SYS "Wimp_OpenWindow",,block%+64 7030 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 7040 ENDIF 7050 ENDIF 7060 WHEN &400C0 7070 IF block%!20=limwin% THEN PROCshowlimit 7080 SYS "Wimp_CreateSubMenu",,block%!20,block%!24,block%!28 7090 WHEN &400C1:PROCtranslate 7100 PROCscalesprite:PROCscaletext 7110 ENDCASE 7120 ENDPROC 7130 : 7140 DEF PROCacknowledge 7150 mess%=block%!16 7160 CASE mess% OF 7170 WHEN 6 7180 IF (intflag% AND 512)=0 THEN 7190 block%!36=-1 7200 $(block%+44)="<Wimp$Scrap>"+CHR$(0) 7210 block%!12=block%!8:block%!16=2 7220 !block%=60 7230 SYS "Wimp_SendMessage",17,block%,block%!4 7240 ELSE 7250 PROCpipebreak 7260 !block%=0 7270 $(block%+4)="Data transfer failed"+CHR$0 7280 SYS "Wimp_ReportError",block%,1,"!Scribe" 7290 ENDIF 7300 ENDCASE 7310 ENDPROC 7320 : 7330 DEF PROCpipebreak 7340 IF datype%=&FFF THEN 7350 PROCclaim(heap%!16,32,claim%):!(heap%!16)=0 7360 PROCscaletext 7370 block%!64=txtwin%:SYS "Wimp_GetWindowState",,block%+64 7380 SYS "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 7390 ENDIF 7400 IF datype%=&FF9 THEN 7410 PROCclaim(heap%+8,32,claim%) 7420 !(heap%!8)=32:!(heap%!8+4)=0:!(heap%!8+8)=16:!(heap%!8+12)=16 7430 PROCclaim(heap%+24,4,claim%):!(heap%!24)=0 7440 PROCtranslate:PROCscalesprite 7450 block%!64=sprwin%:SYS "Wimp_GetWindowState",,block%+64 7460 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 7470 ENDIF 7480 ENDPROC 7490 : 7500 DEF PROCkeypress 7510 window%=!block% 7520 icon%=block%!4 7530 chr%=block%!24 7540 CASE window% OF 7550 WHEN magwin% 7560 IF chr%=13 THEN 7570 scale%!(16+4*icon%)=VAL(FNstring(icontxt%(1+icon%))) 7580 IF scale%!(16+4*icon%)<1 THEN scale%!(16+4*icon%)=1 7590 $(icontxt%(1+icon%))=STR$(scale%!(16+4*icon%))+CHR$(0) 7600 block%!8=0:block%!12=0:SYS "Wimp_SetIconState",,block% 7610 PROCscalesprite 7620 !block%=sprwin%:SYS "Wimp_GetWindowState",,block% 7630 SYS "Wimp_OpenWindow",,block% 7640 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 7650 ENDIF 7660 IF chr%=399 OR chr%=398 OR chr%=13 THEN icon%=icon% EOR 1 7670 IF icon%=0 OR icon%=1 THEN SYS "Wimp_SetCaretPosition",window%,icon%,,,-1,0 7680 : 7690 WHEN tsvwin% 7700 IF icon%=2 AND chr%=13 THEN 7710 PROCsave(&FFF,icontxt%(3),save%) 7720 IF save% THEN SYS "Wimp_CloseWindow",,block%:SYS "Wimp_CreateMenu",,-1 7730 ENDIF 7740 : 7750 WHEN nsvwin% 7760 IF icon%=2 AND chr%=13 THEN 7770 PROCsave(filetype%,icontxt%(19),save%) 7780 IF save% THEN SYS "Wimp_CloseWindow",,block%:SYS "Wimp_CreateMenu",,-1 7790 ENDIF 7800 WHEN limwin% 7810 IF icon%-icnbse%=13 AND chr%=13 THEN 7820 PROCshowlimit 7830 block%!8=0:block%!12=0 7840 FOR icn%=4 TO 11 7850 block%!4=icnbse%+icn%:SYS "Wimp_SetIconState",,block% 7860 NEXT icn% 7870 ENDIF 7880 IF icon%-icnbse%=12 AND chr%=13 THEN 7890 input%!108=VAL($(icontxt%(16)))/100*(1<<(pnt% DIV 2)) 7900 IF input%!108>(1<<(pnt% DIV 2)) THEN input%!108=(1<<(pnt% DIV 2)):$(icontxt%(16))="100"+CHR$(0) 7910 block%!8=0:block%!12=0:SYS "Wimp_SetIconState",,block% 7920 ENDIF 7930 IF (icon%-icnbse%)>=0 AND (icon%-icnbse%)<12 AND chr%=13 THEN 7940 IF (icon%-icnbse%)<4 THEN 7950 input%!(92+4*(icon%-icnbse%))=VAL($(icontxt%(4+icon%-icnbse%))) 7960 ELSE 7970 dpi%=VAL$(icontxt%(17)):IF dpi%=0 THEN dpi%=1 7980 IF !(4+heap%!8)>0 THEN SYS "OS_ReadModeVariable",!(56+heap%!8),5 TO ,,asp% ELSE asp%=1 7990 IF (icon% AND 1)=0 THEN asp%=1 8000 IF (icon%-icnbse%)>7 THEN asp%=asp%*72 8010 input%!(92+4*((icon%-icnbse%)AND 3))=VAL($(icontxt%(4+icon%-icnbse%)))*dpi%/asp% 8020 ENDIF 8030 IF input%!92<input%!84 THEN input%!92=input%!84 8040 IF input%!96<input%!88 THEN input%!96=input%!88 8050 IF input%!100<input%!84 THEN input%!100=input%!84 8060 IF input%!104<input%!88 THEN input%!104=input%!88 8070 PROCshowlimit 8080 block%!8=0:block%!12=0:block%!4=icnbse%+((icon%-icnbse%) AND 3) 8090 SYS "Wimp_SetIconState",,block% 8100 block%!4=icnbse%+4+((icon%-icnbse%) AND 3) 8110 SYS "Wimp_SetIconState",,block% 8120 block%!4=icnbse%+8+((icon%-icnbse%) AND 3) 8130 SYS "Wimp_SetIconState",,block% 8140 ENDIF 8150 IF chr%=399 THEN icon%-=1 8160 IF chr%=398 OR chr%=13 THEN icon%+=1 8170 IF icon%>=icnbse% AND icon%<icnbse%+14 THEN SYS "Wimp_SetCaretPosition",window%,icon%,,,-1,0 8180 ENDCASE 8190 ENDPROC 8200 : 8210 DEF PROCdrag 8220 SYS "Wimp_GetPointerInfo",,block%+16 8230 window%=block%!28 8240 icon%=block%!32 8250 : 8260 CASE window% OF 8270 WHEN sprwin% 8280 IF (intflag% AND 2)>0 THEN 8290 block%!16=sprwin%:SYS "Wimp_GetWindowState",,block%+16 8300 !block%+=block%!36-block%!20 8310 block%!4+=block%!40-block%!32 8320 block%!8+=block%!36-block%!20 8330 block%!12+=block%!40-block%!32 8340 IF !block%>block%!8 THEN SWAP !block%,block%!8 8350 IF block%!4>block%!12 THEN SWAP block%!4,block%!12 8360 IF !block%<0 THEN !block%=0 8370 IF block%!12>0 THEN block%!12=0 8380 input%!68=(!block%>>scale%!24)*scale%!20/scale%!16 8390 input%!80=1-(block%!4>>scale%!28)*scale%!20/scale%!16 8400 input%!76=(block%!8>>scale%!24)*scale%!20/scale%!16-1 8410 input%!72=-(block%!12>>scale%!28)*scale%!20/scale%!16 8420 PROCcountline 8430 intflag%=intflag% EOR 2 8440 SYS "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 8450 ENDIF 8460 OTHERWISE 8470 : 8480 IF (intflag% AND 1)>0 AND window%<>txtwin% THEN 8490 block%!28=block%!16:block%!32=block%!20 8500 block%!20=window%:block%!24=icon% 8510 block%!36=!(heap%!16):block%!40=&FFF 8520 $(block%+44)=FNleaf(icontxt%(3))+CHR$(0) 8530 intflag%=intflag% AND NOT 1 8540 !block%=256:block%!12=0:block%!16=1 8550 SYS "Wimp_SendMessage",17,block%,block%!20,block%!24 8560 data%=heap%!16+4:datext%=!(heap%!16) 8570 ENDIF 8580 IF (intflag% AND 128)>0 THEN 8590 block%!28=block%!16:block%!32=block%!20 8600 block%!20=window%:block%!24=icon% 8610 block%!36=heap%!36:block%!40=filetype% 8620 $(block%+44)=FNleaf(icontxt%(19))+CHR$(0) 8630 intflag%=intflag% AND NOT 128 8640 !block%=256:block%!12=0:block%!16=1 8650 SYS "Wimp_SendMessage",17,block%,block%!20,block%!24 8660 data%=heap%!32:datext%=heap%!36 8670 ENDIF 8680 ENDCASE 8690 ENDPROC 8700 : 8710 DEF PROCredrawsprite 8720 WHILE flag% 8730 IF !(4+heap%!8)>0 THEN 8740 xsc%=block%!20-block%!4 8750 ysc%=block%!24-block%!16+hgt% 8760 !scale%=scale%!24*scale%!16:scale%!4=scale%!28*scale%!16 8770 scale%!8=scale%!32*scale%!20:scale%!12=scale%!36*scale%!20 8780 SYS "OS_SpriteOp",512+52,heap%!8,(heap%!8)+16,-xsc%,-ysc%,,scale%,bitmap% 8790 IF !(heap%!24)>0 THEN PROCdrawline 8800 IF (intflag% AND 6144)=6144 THEN 8810 SYS "Wimp_SetColour",48+11 8820 MOVE (xst%*scale%!16/scale%!20)-xsc%,(yst%*scale%!16/scale%!20)-ysc% 8830 DRAW (xed%*scale%!16/scale%!20)-xsc%,(yed%*scale%!16/scale%!20)-ysc% 8840 ENDIF 8850 ENDIF 8860 SYS "Wimp_GetRectangle",,block% TO flag% 8870 ENDWHILE 8880 ENDPROC 8890 : 8900 DEF PROCredrawtext 8910 input%!32=heap%!16:input%!36=0 8920 input%!40=block%!4-block%!20 8930 input%!44=block%!16-block%!24-4 8940 input%!48=input%!40+txtwdt% 8950 WHILE flag% 8960 IF !(heap%!16)>0 THEN 8970 SYS "Wimp_SetColour",7 8980 input%!52=block%!28-16:input%!56=block%!32 8990 input%!60=block%!36:input%!64=block%!40+32 9000 CALL print 9010 ENDIF 9020 SYS "Wimp_GetRectangle",,block% TO flag% 9030 ENDWHILE 9040 ENDPROC 9050 : 9060 DEF PROCtranslate 9070 IF !(4+heap%!8)>0 THEN 9080 SYS "OS_ReadModeVariable",!(56+heap%!8),4 TO ,,scale%!24 9090 SYS "OS_ReadModeVariable",!(56+heap%!8),5 TO ,,scale%!28 9100 SYS "OS_ReadModeVariable",MODE,4 TO ,,scale%!32 9110 SYS "OS_ReadModeVariable",MODE,5 TO ,,scale%!36 9120 SYS "ColourTrans_SelectTable",!(56+heap%!8),palette%,-1,-1,bitmap% 9130 ENDIF 9140 ENDPROC 9150 : 9160 DEF PROCscalesprite 9170 IF !(4+heap%!8)>0 THEN 9180 wdt%=!(heap%!8+32)*32+!(heap%!8+44)-!(heap%!8+40) 9190 hgt%=!(heap%!8+36) 9200 wdt%=(wdt%<<scale%!24)*scale%!16/scale%!20 9210 hgt%=(hgt%<<scale%!28)*scale%!16/scale%!20 9220 block%!64=0:block%!68=-hgt% 9230 block%!72=wdt%:block%!76=0 9240 SYS "Wimp_SetExtent",sprwin%,block%+64 9250 ENDIF 9260 ENDPROC 9270 : 9280 DEF PROCscaletext 9290 IF !(heap%!16)>0 THEN 9300 SYS "OS_ReadModeVariable",MODE,11 TO ,,txtwdt% 9310 txtwdt%=(txtwdt%<<scale%!32)-64 9320 input%!32=heap%!16 9330 input%!36=!(heap%!16) 9340 input%!40=0:input%!44=-256 9350 input%!48=txtwdt% 9360 CALL position 9370 txthgt%=-output%!4 9380 block%!64=0:block%!68=output%!4 9390 block%!72=txtwdt%:block%!76=0 9400 SYS "Wimp_SetExtent",txtwin%,block%+64 9410 ENDIF 9420 ENDPROC 9430 : 9440 DEF PROCshowlimit 9450 dpi%=VAL$(icontxt%(17)):IF dpi%=0 THEN dpi%=1 9460 IF !(4+heap%!8)>0 THEN SYS "OS_ReadModeVariable",!(56+heap%!8),5 TO ,,asp% ELSE asp%=1 9470 $(icontxt%(4))=STR$(input%!92)+CHR$(0) 9480 $(icontxt%(5))=STR$(input%!96)+CHR$(0) 9490 $(icontxt%(6))=STR$(input%!100)+CHR$(0) 9500 $(icontxt%(7))=STR$(input%!104)+CHR$(0) 9510 $(icontxt%(8))=FNnumber(input%!92/dpi%,4)+CHR$(0) 9520 $(icontxt%(9))=FNnumber(asp%*input%!96/dpi%,4)+CHR$(0) 9530 $(icontxt%(10))=FNnumber(input%!100/dpi%,4)+CHR$(0) 9540 $(icontxt%(11))=FNnumber(asp%*input%!104/dpi%,4)+CHR$(0) 9550 $(icontxt%(12))=FNnumber(input%!92/dpi%*72,4)+CHR$(0) 9560 $(icontxt%(13))=FNnumber(asp%*input%!96/dpi%*72,4)+CHR$(0) 9570 $(icontxt%(14))=FNnumber(input%!100/dpi%*72,4)+CHR$(0) 9580 $(icontxt%(15))=FNnumber(asp%*input%!104/dpi%*72,4)+CHR$(0) 9590 ENDPROC 9600 : 9610 DEF PROCcountline 9620 SYS "Hourglass_On" 9630 IF (intflag% AND 16)=16 THEN input%!104=input%!80-input%!72 9640 input%!128=input%!72 9650 !(heap%!24)=0:PROCclaim(heap%+24,256,claim%) 9660 CALL findline 9670 WHILE !output%>-1 AND claim% 9680 IF heap%!28-!(heap%!24)*20<40 THEN PROCclaim(heap%+24,heap%!28+256,claim%) 9690 !(heap%!24+4+!(heap%!24)*20)=!output% 9700 !(heap%!24+8+!(heap%!24)*20)=output%!4 9710 !(heap%!24+12+!(heap%!24)*20)=output%!8 9720 !(heap%!24+16+!(heap%!24)*20)=output%!12 9730 !(heap%!24+20+!(heap%!24)*20)=output%!16 9740 !(heap%!24)+=1 9750 input%!128=output%!12 9760 CALL findline 9770 ENDWHILE 9780 : 9790 IF (intflag% AND 16)=16 AND claim% THEN 9800 scan%=0:input%!92=0:input%!96=0:input%!104=0 9810 WHILE scan%<!(heap%!24) 9820 input%!132=!(heap%!24+4+scan%*20) 9830 input%!136=!(heap%!24+8+scan%*20) 9840 input%!140=!(heap%!24+12+scan%*20) 9850 input%!144=!(heap%!24+16+scan%*20) 9860 CALL findlimit 9870 IF !output%>input%!92 THEN input%!92=!output%:input%!100=!output% 9880 IF output%!4>input%!96 THEN input%!96=output%!4 9890 IF (1+input%!144-input%!136)>input%!104 THEN input%!104=1+input%!144-input%!136 9900 scan%+=1 9910 ENDWHILE 9920 ENDIF 9930 SYS "Hourglass_Off" 9940 : 9950 IF NOT claim% THEN PROCfull 9960 ENDPROC 9970 : 9980 DEF PROCdrawline 9990 SYS "Wimp_SetColour",11 10000 VDU 23,6,&F0,&F0,&F0,&F0,&F0,&F0,&F0,&F0 10010 xsc%=block%!20-block%!4 10020 ysc%=block%!24-block%!16 10030 plot%=0 10040 WHILE plot%<!(heap%!24) 10050 lft%=(!(heap%!24+4+plot%*20)<<scale%!24)*scale%!16/scale%!20 10060 top%=(!(heap%!24+8+plot%*20)<<scale%!28)*scale%!16/scale%!20 10070 rgt%=(!(heap%!24+12+plot%*20)<<scale%!24)*scale%!16/scale%!20 10080 btm%=(!(heap%!24+16+plot%*20)<<scale%!28)*scale%!16/scale%!20 10090 bse%=(!(heap%!24+20+plot%*20)<<scale%!28)*scale%!16/scale%!20 10100 MOVE lft%-xsc%,-btm%-ysc%:DRAW rgt%-xsc%,-btm%-ysc% 10110 DRAW rgt%-xsc%,-top%-ysc%:DRAW lft%-xsc%,-top%-ysc% 10120 DRAW lft%-xsc%,-btm%-ysc%:MOVE lft%-xsc%,-bse%-ysc% 10130 PLOT 21,rgt%-xsc%,-bse%-ysc% 10140 plot%+=1 10150 ENDWHILE 10160 ENDPROC 10170 : 10180 DEF PROCextract 10190 IF !output%>=0 THEN 10200 input%!152=output%!4 10210 input%!156=output%!8 10220 input%!160=output%!12 10230 input%!164=output%!16 10240 CALL alias 10250 state%!(64*4)=(input%!148-input%!156)/input%!96*(1<<pnt%) 10260 state%!(65*4)=(input%!148-input%!164)/input%!96*(1<<pnt%) 10270 state%!(66*4)=(input%!160-input%!152)/(input%!164-input%!156)*(1<<pnt%) 10280 input%!132=input%!160 10290 ELSE 10300 input%!128+=1 10310 IF input%!128>=!(heap%!24) THEN intflag%=intflag% AND NOT 12 10320 input%!132=!(heap%!24+4+input%!128*20) 10330 input%!136=!(heap%!24+8+input%!128*20) 10340 input%!140=!(heap%!24+12+input%!128*20) 10350 input%!144=!(heap%!24+16+input%!128*20) 10360 input%!148=!(heap%!24+20+input%!128*20) 10370 ENDIF 10380 ENDPROC 10390 : 10400 DEF PROCidentify 10410 IF !output%<0 THEN 10420 IF (intflag% AND 64)=64 THEN str$=CHR$10 ELSE str$="" 10430 ELSE 10440 str$=STRING$(!output%,CHR$32) 10450 input%!124=heap%!32+32+!(heap%!32+32) 10460 CALL evaluate 10470 CALL best 10480 group%=!output% 10490 input%!124=heap%!32+32+!(heap%!32+36+4*group%) 10500 IF (intflag% AND 1024)=1024 THEN PROCshowflt 10510 CALL evaluate 10520 CALL best 10530 IF (intflag% AND 1024)=1024 THEN PROCshownet 10540 str$=str$+CHR$(33+32*group%+!output%) 10550 ENDIF 10560 : 10570 claim%=TRUE 10580 IF heap%!20-!(heap%!16)-LEN(str$)<32 THEN 10590 PROCclaim(heap%+16,heap%!20+256,claim%) 10600 input%!32=heap%!16 10610 ENDIF 10620 : 10630 IF claim% THEN 10640 $(heap%!16+4+!(heap%!16))=str$ 10650 !(heap%!16)+=LEN(str$) 10660 PROCscaletext 10670 !block%=txtwin%:block%!4=0:block%!8=-txthgt%:block%!12=txtwdt%:block%!16=0 10680 SYS "Wimp_UpdateWindow",,block% TO flag% 10690 input%!32=heap%!16:input%!36=!(heap%!16)-1 10700 input%!40=block%!4-block%!20 10710 input%!44=block%!16-block%!24-4 10720 input%!48=input%!40+txtwdt% 10730 CALL position 10740 input%!40=!output% 10750 input%!44=output%!4 10760 WHILE flag% 10770 SYS "Wimp_SetColour",7 10780 input%!52=block%!28-16:input%!56=block%!32 10790 input%!60=block%!36:input%!64=block%!40+32 10800 CALL print 10810 SYS "Wimp_GetRectangle",,block% TO flag% 10820 ENDWHILE 10830 ELSE 10840 PROCfull 10850 intflag%=intflag% AND NOT 12 10860 ENDIF 10870 ENDPROC 10880 : 10890 DEF PROCpollstop 10900 SYS "Wimp_GetIconState",,block%+64 10910 MOUSE xps%,yps%,butn% 10920 block%!72=ABS(xps%>block%!8 AND xps%<block%!16 AND yps%>block%!12 AND yps%<block%!20)<<21 10930 block%!76=&200000 10940 IF block%!72<>(block%!88 AND &200000) THEN SYS "Wimp_SetIconState",,block%+64 10950 IF butn%=4 AND block%!72=&200000 THEN intflag%=intflag% AND NOT 260 10960 ENDPROC 10970 : 10980 DEF PROCtrain 10990 intflag%=intflag% OR 4 11000 PROCclaim(heap%+40,67*16,claim%) 11010 !(heap%!40)=0 11020 : 11030 !block%=trnwin%:block%!4=11:SYS "Wimp_GetIconState",,block% 11040 block%!64=trnwin%:SYS "Wimp_GetWindowState",,block%+64 11050 block%!8+=block%!68-block%!84:block%!12+=block%!80-block%!88 11060 block%!16+=block%!68-block%!84:block%!20+=block%!80-block%!88 11070 MOUSE RECTANGLE block%!68,block%!72,block%!76-block%!68,block%!80-block%!72 11080 block%!68=11 11090 WHILE (intflag% AND 4)=4 AND (intflag% AND 256)=256 AND claim% 11100 PROCpollstop 11110 IF heap%!44-!(heap%!40)*67*4<67*8 THEN PROCclaim(heap%+40,heap%!44+67*16,claim%) 11120 CALL scanline 11130 PROCextract 11140 IF !output%>=0 THEN 11150 input%!168=state%:input%!172=heap%!40+4+!(heap%!40)*67*4 11160 input%!176=67*4:CALL copy 11170 !(heap%!40)+=1 11180 ENDIF 11190 ENDWHILE 11200 : 11210 block%!24=trnwin%:block%!28=7:SYS "Wimp_GetIconState",,block%+24 11220 block%!64=trnwin%:SYS "Wimp_GetWindowState",,block%+64 11230 block%!32+=5+block%!68-block%!84:block%!36+=5+block%!80-block%!88 11240 block%!40+=block%!68-block%!84-5:block%!44+=block%!80-block%!88-5 11250 block%!68=11 11260 train%=0:input%!36=-1 11270 WHILE (intflag% AND 256)=256 AND claim% 11280 PROCpollstop 11290 input%!172=state%:input%!168=heap%!40+4+train%*67*4 11300 input%!176=67*4:CALL copy 11310 CALL trainchar:let%=!output%-33 11320 : 11330 IF let%>=0 THEN 11340 input%!124=heap%!32+32+!(heap%!32+32) 11350 input%!188=let% DIV 32:CALL pattern 11360 CALL evaluate 11370 CALL error:error%=!output% 11380 CALL learn 11390 input%!124=heap%!32+32+!(heap%!32+36+4*(let% DIV 32)) 11400 input%!188=let% MOD 32:CALL pattern 11410 CALL evaluate 11420 CALL error:error%+=!output% 11430 CALL learn 11440 ENDIF 11450 train%+=1 11460 VDU 24,block%!32;block%!36;block%!40;block%!44; 11470 SYS "Wimp_SetColour",5 11480 POINT block%!40-4,block%!36+(block%!44-block%!36)*error%/(1<<pnt%) 11490 IF train%>=!(heap%!40) THEN 11500 RECTANGLE block%!32,block%!36,block%!40-block%!32,block%!44-block%!36 TO block%!32-2,block%!36 11510 train%=0:input%!36=-1 11520 ENDIF 11530 IF train%>=!(heap%!40) THEN train%=0:input%!36=-1 11540 ENDWHILE 11550 : 11560 SYS "OS_ReadModeVariable",MODE,11 TO ,,!block% 11570 SYS "OS_ReadModeVariable",MODE,12 TO ,,block%!4 11580 MOUSE RECTANGLE 0,0,!block%<<scale%!32,block%!4<<scale%!36 11590 intflag%=intflag% AND NOT 256 11600 !block%=trnwin%:SYS "Wimp_CloseWindow",,block% 11610 IF NOT claim% THEN PROCfull 11620 PROCclaim(heap%+40,32,claim%) 11630 ENDPROC 11640 : 11650 DEF PROCnew 11660 PROCclaim(heap%+32,64880,claim%) 11670 IF claim% THEN 11680 SYS "Hourglass_On" 11690 $(icontxt%(19))="NetFile"+CHR$(0) 11700 !(heap%!32)=1 11710 $(heap%!32+4)="Blank Network" 11720 $(icontxt%(18))=$(heap%!32+4) 11730 !(heap%!32+32)=20 11740 !(heap%!32+36)=!(heap%!32+32)+4*(32*(2+67+32+3)+3+3) 11750 !(heap%!32+40)=!(heap%!32+36)+4*(32*(2+67+32+32)+32+3) 11760 !(heap%!32+44)=!(heap%!32+40)+4*(32*(2+67+32+32)+32+3) 11770 !(heap%!32+48)=!(heap%!32+44)+4*(32*(2+67+32+32)+32+3) 11780 !(heap%!32+32+!(heap%!32+32))=67:!(heap%!32+36+!(heap%!32+32))=32:!(heap%!32+40+!(heap%!32+32))=3 11790 !(heap%!32+32+!(heap%!32+36))=67:!(heap%!32+36+!(heap%!32+36))=32:!(heap%!32+40+!(heap%!32+36))=32 11800 !(heap%!32+32+!(heap%!32+40))=67:!(heap%!32+36+!(heap%!32+40))=32:!(heap%!32+40+!(heap%!32+40))=32 11810 !(heap%!32+32+!(heap%!32+44))=67:!(heap%!32+36+!(heap%!32+44))=32:!(heap%!32+40+!(heap%!32+44))=32 11820 PROCdisorder(heap%!32+32+!(heap%!32+32),TRUE) 11830 PROCdisorder(heap%!32+32+!(heap%!32+36),FALSE) 11840 PROCdisorder(heap%!32+32+!(heap%!32+40),FALSE) 11850 PROCdisorder(heap%!32+32+!(heap%!32+44),FALSE) 11860 !block%=cntwin%:block%!4=27:block%!8=0:block%!12=0 11870 SYS "Wimp_SetIconState",,block% 11880 SYS "Hourglass_Off" 11890 ELSE 11900 PROCfull 11910 ENDIF 11920 ENDPROC 11930 : 11940 DEF PROCdisorder(netadr%,top%) 11950 inpnode%=!netadr%:hidnode%=netadr%!4:outnode%=netadr%!8 11960 rand%=RND(-1):netadr%+=12 11970 FOR rand%=0 TO 2*hidnode%+outnode%-1 11980 NEXT rand% 11990 netadr%+=4*(2*hidnode%+outnode%) 12000 FOR rand%=0 TO hidnode%*(inpnode%+hidnode%+outnode%)-1 12010 netadr%!(4*rand%)=RND>>(32+top%-pnt%) 12020 NEXT rand% 12030 ENDPROC 12040 : 12050 DEF PROCrotate 12060 IF (xed%-xst%)<>0 THEN angle=ATN( (yed%-yst%)/(xed%-xst%) ) ELSE angle=PI/2 12070 IF (xed%-xst%)<0 THEN angle=angle+PI 12080 IF angle=0 THEN ENDPROC 12090 PROCclaim(heap%+48,heap%!12,claim%) 12100 IF claim% THEN 12110 input%!168=heap%!8:input%!172=heap%!48:input%!176=heap%!12 12120 CALL copy 12130 input%!192=heap%!48+16+!(heap%!48+48) 12140 input%!196=!(heap%!48+32)+1 12150 input%!200=!(heap%!48+36)+1 12160 input%!204=!(heap%!48+40) 12170 input%!208=!(heap%!48+44) 12180 input%!212=scale%!24 12190 input%!216=scale%!28 12200 input%!220=COS(angle)*(1<<16) 12210 input%!224=-SIN(angle)*(1<<16) 12220 input%!228=SIN(angle)*(1<<16) 12230 input%!232=COS(angle)*(1<<16) 12240 CALL sprextent 12250 input%!236=-!output% 12260 input%!240=-output%!4 12270 extent%=(32+output%!8-!output%)*(output%!12-output%!4) DIV 8 12280 PROCclaim(heap%+8,extent%,claim%) 12290 ENDIF 12300 IF claim% THEN 12310 !(heap%!8)=heap%!12:!(heap%!8+4)=0:!(heap%!8+8)=16:!(heap%!8+12)=16 12320 SYS "OS_SpriteOp",256+15,heap%!8,"dump",0,output%!8-!output%,output%!12-output%!4,!(56+heap%!48) 12330 input%!192=heap%!48+16+!(heap%!48+48):input%!12=heap%!8+16+!(heap%!8+48) 12340 input%!196=!(heap%!48+32)+1:input%!16=!(heap%!8+32)+1 12350 input%!200=!(heap%!48+36)+1:input%!20=!(heap%!8+36)+1 12360 input%!204=!(heap%!48+40):input%!24=!(heap%!8+40) 12370 input%!208=!(heap%!48+44):input%!28=!(heap%!8+44) 12380 input%!32=heap%!16 12390 CALL distort 12400 PROCscalesprite 12410 PROCclaim(heap%+48,32,claim%) 12420 ENDIF 12430 IF NOT claim% THEN PROCfull 12440 ENDPROC 12450 : 12460 DEF PROCshownet 12470 SYS "OS_SpriteOp",256+60,sprite%,"character" 12480 GCOL 128 12490 FOR yps%=0 TO 7 12500 FOR xps%=0 TO 7 12510 GCOL state%!(32*yps%+4*xps%)/(1<<pnt%)*7 12520 RECTANGLE FILL 38+xps%*16,44+(7-yps%)*16,15,15 12530 NEXT xps%,yps% 12540 GCOL 4 12550 VDU 24,2;44;17;171;:CLG:RECTANGLE FILL 2,76+state%!(4*65)/(1<<pnt%)*31,15,(state%!(4*64)*63-state%!(4*65)*31)/(1<<pnt%) 12560 VDU 24,38;4;165;19;:CLG:RECTANGLE FILL 38,4,state%!(4*66)/(1<<pnt%)*127,15 12570 SYS "OS_SpriteOp",256+60,sprite%,"response" 12580 GCOL 128:VDU 24,70;4;593;131;:CLG:GCOL 4 12590 FOR rep%=0 TO 31 12600 RECTANGLE FILL 76+rep%*16,4,15,state%!(4*rep%+524)/(1<<pnt%)*127 12610 NEXT rep% 12620 SYS "OS_SpriteOp",256+60,0,0,1 12630 !block%=netwin%:block%!8=0:block%!12=0 12640 block%!4=chricn%:SYS "Wimp_SetIconState",,block% 12650 block%!4=repicn%:SYS "Wimp_SetIconState",,block% 12660 block%!4=10:SYS "Wimp_SetIconState",,block% 12670 ENDPROC 12680 : 12690 DEF PROCshowflt 12700 SYS "OS_SpriteOp",256+60,sprite%,"response" 12710 GCOL 128:VDU 24,2;4;49;131;:CLG:GCOL 4 12720 FOR rep%=0 TO 2 12730 RECTANGLE FILL 2+rep%*16,4,15,state%!(4*rep%+524)/(1<<pnt%)*127 12740 NEXT rep% 12750 SYS "OS_SpriteOp",256+60,0,0,1 12760 FOR chr%=0 TO 31 12770 ?(icontxt%(20)+chr%)=33+group%*32+chr% 12780 NEXT chr% 12790 ENDPROC 12800 : 12810 DEF PROCrubber 12820 !block%=sprwin%:block%!4=0:block%!8=-hgt%:block%!12=wdt%:block%!16=0 12830 SYS "Wimp_UpdateWindow",,block% TO flag% 12840 xsc%=block%!20-block%!4:ysc%=block%!24-block%!16+hgt% 12850 WHILE flag% 12860 SYS "Wimp_SetColour",48+11 12870 MOVE (xst%*scale%!16/scale%!20)-xsc%,(yst%*scale%!16/scale%!20)-ysc% 12880 DRAW (xed%*scale%!16/scale%!20)-xsc%,(yed%*scale%!16/scale%!20)-ysc% 12890 SYS "Wimp_GetRectangle",,block% TO flag% 12900 ENDWHILE 12910 ENDPROC
� > !RunImage ver$="1.26" $ � Direct RAM Transfer at last ! ( app$="Scribe" 2 heap%=� < pnt%=24 F filetype%=&604 P : Z �setup d $task%="TASK" n : x ș "OS_GetEnv" � env$ � : �8 ș "Wimp_Initialise",200,!task%,app$ � ,taskhandle% �. ș "OS_File",&FF,"<OCR$Dir>.code",code%,0 �@ ș "OS_SpriteOp",256+10,sprite%,"<OCR$Dir>.sprites",code%,0 � � � �error � : � �template � �icons � �code � �setheap � �default � �poll � � : � �default file$="<OCR$Dir>.Default" ") ș "OS_File",&05,file$ � ,,,,flesze% ,$ �claim(heap%+32,flesze%,claim%) 6$ ș "OS_File",&FF,file$,heap%!32 @' $(icontxt%(18))=�$(heap%!32+4),28) J � T : ^ � �setup h indirln%=8*1024 r � code% 40*1024 | � input% 256 � � output% 256 � � block% 8*1024 � � bitmap% 256 � � palette% 8 � � scale% 40 � � menu% 256 � � indir% indirln% � � icontxt%(32) � � task% 4 � � state% 4*(67+32*3) � � pattern% 4*32 � � delta% 4*(3*32) � � sprite% 12*1024 : < !sprite%=12*1024:sprite%!4=0:sprite%!8=16:sprite%!12=16 input%!84=8:input%!88=8 & input%!92=72:input%!96=72 0 input%!100=20:input%!104=72 :# input%!108=0.1*(1<<(pnt% � 2)) D input%!112=8:input%!116=8 N input%!120=state% X input%!124=0 b input%!180=delta% l input%!184=pattern% v : �% !palette%=&FFFFFF00:palette%!4=0 �/ wdt%=256:hgt%=256:txtwdt%=1280:txthgt%=256 � scale%!16=1:scale%!20=2 �/ ș "OS_ReadModeVariable",�,4 � ,,scale%!24 �/ ș "OS_ReadModeVariable",�,5 � ,,scale%!28 �, scale%!32=scale%!24:scale%!36=scale%!28 � input%!64=0 � � Internal flag � intflag%=112 �) menno%=0:xst%=0:yst%=0:xed%=0:yed%=0 � � � : � � �error � � � * ș "Wimp_CloseDown",taskhandle%,task% � � �,�$+" at line "+�(�) � * : 4 � �template >) sticn%=indir%:enicn%=indir%+indirln% H2 ș "Wimp_OpenTemplate",,"<OCR$Dir>.Templates" RL ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"sprite",0 � ,,sticn% \ block%!44=0:block%!48=-hgt% f block%!52=wdt%:block%!56=0 p/ ș "Wimp_CreateWindow",,block%+4 � sprwin% zJ ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"text",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � txtwin% �J ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"info",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � infwin% �O ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"magnifier",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � magwin% �K ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"tsave",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � tsvwin% �K ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"nsave",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � nsvwin% �M ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"control",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � cntwin% �K ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"limit",0 � ,,sticn% �/ ș "Wimp_CreateWindow",,block%+4 � limwin% K ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"train",0 � ,,sticn% / ș "Wimp_CreateWindow",,block%+4 � trnwin% M ș "Wimp_LoadTemplate",,block%+4,sticn%,enicn%,-1,"network",0 � ,,sticn% $/ ș "Wimp_CreateWindow",,block%+4 � netwin% . ș "Wimp_CloseTemplate" 8 � B : L � �icons V !block%=infwin%:block%!4=4 `# ș "Wimp_GetIconState",,block% j icontxt%(0)=block%!28 t $(block%!28)=ver$+�(0) ~ !block%=magwin%:block%!4=0 �# ș "Wimp_GetIconState",,block% � icontxt%(1)=block%!28 �# $(block%!28)=�(scale%!16)+�(0) � block%!4=1 �# ș "Wimp_GetIconState",,block% � icontxt%(2)=block%!28 �# $(block%!28)=�(scale%!20)+�(0) � !block%=tsvwin%:block%!4=2 �# ș "Wimp_GetIconState",,block% � icontxt%(3)=block%!28 �! $(block%!28)="Textfile"+�(0) � !block%=limwin%:icnbse%=48 � icn%=0 � 13 9 block%!4=icn%+icnbse%:ș "Wimp_GetIconState",,block% icontxt%(4+icn%)=block%!28 � icn% ( $(icontxt%(16))="10"+�(0) 2 $(icontxt%(17))="400"+�(0) < !block%=cntwin%:block%!4=27 F# ș "Wimp_GetIconState",,block% P icontxt%(18)=block%!28 Z !block%=nsvwin%:block%!4=2 d# ș "Wimp_GetIconState",,block% n icontxt%(19)=block%!28 x $(block%!28)="NetFile"+�(0) �G !block%=netwin%:block%!20=&07000102:block%!28=sprite%:block%!32=12 �B block%!4=88:block%!8=-48-44*4:block%!12=88+84*2:block%!16=-48 �. block%!24=sticn%:$(sticn%)="character"+�0 �+ ș "Wimp_CreateIcon",,block% � chricn% �E block%!4=308:block%!8=-48-34*4:block%!12=308+298*2:block%!16=-32 �3 block%!24=sticn%+13:$(sticn%+13)="response"+�0 �+ ș "Wimp_CreateIcon",,block% � repicn% �/ block%!4=10:ș "Wimp_GetIconState",,block% �J icontxt%(20)=block%!28:� chr%=0 � 31:?(block%!28+chr%)=33+chr%:� chr% � � � : � � �iconbar � !block%=-1:block%!4=0 block%!8=0:block%!12=68 block%!16=68 block%!12=68 " block%!20=&2002 , $(block%+24)="!scribe" 6) ș "Wimp_CreateIcon",,block% � icon% @ =icon% J : T � �poll ^ iconbar%=�iconbar h � r. ș "Wimp_Poll",&FFF9F000,block% � reason% | Ȏ reason% � �/ � 1:ș "Wimp_RedrawWindow",,block% � flag% �& � !block%=sprwin% � �redrawsprite �$ � !block%=txtwin% � �redrawtext �% � 2:ș "Wimp_OpenWindow",,block% � � �& � 3:ș "Wimp_CloseWindow",,block% �3 � !block%=netwin% � intflag%=intflag% � � 1024 �@ � 4:� !block%=sprwin% � (intflag% � 2048)=2048 � *POINTER 1 �s � 5:� !block%=sprwin% � (intflag% � 2048)=2048 � ș "OS_SpriteOp",256+36,sprite%,"ptr_cross",36,9,5:*POINTER 2 � � 6:�click � � 7:�drag � � 8:�keypress � � 9:�menuselect � 17,18:�message � 19:�acknowledge & � (intflag% � 12)=4 � 05 � (intflag% � 8192)=8192 � intflag%=intflag% � 8 : � scanline D �extract N �identify X! � (intflag% � 12)=0:�buttons b( � (intflag% � 8192)=8192 � �buttons l � v$ � (intflag% � 256)=256 � �train � � (intflag% � 6144)=6144 � �% ș "Wimp_GetPointerInfo",,block% �3 xpnt%=!block%:ypnt%=block%!4:window%=block%!12 �5 !block%=sprwin%:ș "Wimp_GetWindowState",,block% �9 xpnt%=(xpnt%-block%!4+block%!20)*scale%!20/scale%!16 �? ypnt%=(ypnt%-block%!16+block%!24+hgt%)*scale%!20/scale%!16 �\ � (xpnt%<>xed% � ypnt%<>yed%) � window%=sprwin% � �rubber:xed%=xpnt%:yed%=ypnt%:�rubber � � � � � � � � � � : � � �menuselect E � menno%=0 � !block%=1 � ș "Wimp_CloseDown",taskhandle%,task%:� S � menno%=1 � !block%=2 � � invert:ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 � menno%=1 � !block%=3 � E intflag%=intflag% � 2048:�claim(heap%+24,4,claim%):!(heap%!24)=0 *1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 4 � >" � menno%=3 � !block%=1 � �new H � menno%=3 � !block%=2 � RN intflag%=intflag% � 1024:!block%=netwin%:ș "Wimp_GetWindowState",,block% \! ș "Wimp_OpenWindow",,block% f � p � z : � � �click � xpnt%=!block% � ypnt%=block%!4 � butn%=block%!8 � window%=block%!12 � icon%=block%!16 � : � Ȏ window% � � � -2 �, � butn%=2 � icon%=iconbar% � �iconmenu �" � butn%=4 � icon%=iconbar% � �5 !block%=sprwin%:ș "Wimp_GetWindowState",,block% �! ș "Wimp_OpenWindow",,block% 5 !block%=txtwin%:ș "Wimp_GetWindowState",,block% ! ș "Wimp_OpenWindow",,block% 5 !block%=cntwin%:ș "Wimp_GetWindowState",,block% $! ș "Wimp_OpenWindow",,block% . � 8 � tsvwin% B � icon%=0 � butn%=4 � L0 �:� 7:ȓ Ȑ 0,0,state%!(4*64)/(1<<pnt%)*127 V � save% � `4 !block%=block%!12:ș "Wimp_CloseWindow",,block% j ș "Wimp_CreateMenu",,-1 t � ~ � �" � icon%=3 � (butn% � 112)>0 � �= !block%=block%!12:block%!40=block%!12:block%!4=block%!16 �# ș "Wimp_GetIconState",,block% �( ș "Wimp_GetWindowState",,block%+40 �8 block%!4=5:block%!8+=block%!44:block%!12+=block%!56 �. block%!16+=block%!44:block%!20+=block%!56 �D block%!24=0:block%!28=0:block%!32=&7FFFFFFF:block%!36=&7FFFFFFF � ș "Wimp_DragBox",,block% � intflag%=intflag% � 1 � � � � nsvwin% � � icon%=0 � butn%=4 � ( �save(filetype%,icontxt%(19),save%) � save% � 4 !block%=block%!12:ș "Wimp_CloseWindow",,block% ș "Wimp_CreateMenu",,-1 ( � 2 � <" � icon%=3 � (butn% � 112)>0 � F= !block%=block%!12:block%!40=block%!12:block%!4=block%!16 P# ș "Wimp_GetIconState",,block% Z( ș "Wimp_GetWindowState",,block%+40 d8 block%!4=5:block%!8+=block%!44:block%!12+=block%!56 n. block%!16+=block%!44:block%!20+=block%!56 xD block%!24=0:block%!28=0:block%!32=&7FFFFFFF:block%!36=&7FFFFFFF � ș "Wimp_DragBox",,block% � intflag%=intflag% � 128 � � � � sprwin% �) � butn%=4 � (intflag% � 6144)=6144 � � *POINTER 1 � �rotate � intflag%=intflag% � � 6144 �5 !block%=sprwin%:ș "Wimp_GetWindowState",,block% �! ș "Wimp_OpenWindow",,block% �1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 � � �) � butn%=4 � (intflag% � 6144)=2048 � 7 !block%=block%!12:ș "Wimp_GetWindowState",,block% r xst%=(xpnt%-block%!4+block%!20)*scale%!20/scale%!16:yst%=(ypnt%-block%!16+block%!24+hgt%)*scale%!20/scale%!16 xed%=xst%:yed%=yst% "% �rubber:intflag%=intflag% � 4096 , � 6) � butn%=1 � (intflag% � 2048)=2048 � @' �rubber:intflag%=intflag% � � 6144 J *POINTER 1 T � ^ � butn%=2 � �spritemenu h8 � butn%=64 � !(4+heap%!8)>0 � (intflag% � 2052)=0 � r: block%!20=sprwin%:ș "Wimp_GetWindowState",,block%+20 |( block%!8=!block%:block%!12=block%!4 �+ block%!16=block%!8:block%!20=block%!12 � !block%=sprwin%:block%!4=6 � ș "Wimp_DragBox",,block% � intflag%=intflag% � 2 � � � � magwin% �& � icon%>1 � (butn%=1 � butn%=4) � �A scale%!(12+4*(icon% � 2))+=(1+2*(butn%=1))*(1-2*(icon% � 2)) �@ � scale%!(12+4*(icon% � 2))<1 � scale%!(12+4*(icon% � 2))=1 �D � scale%!(12+4*(icon% � 2))>999 � scale%!(12+4*(icon% � 2))=999 �= $(icontxt%(icon% � 2))=�(scale%!(12+4*(icon% � 2)))+�(0) � �scalesprite �5 !block%=sprwin%:ș "Wimp_GetWindowState",,block% ! ș "Wimp_OpenWindow",,block% 1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 �spritemenu & � 0 � limwin% :( � icon%=65 � intflag%=intflag% � 16 D � txtwin% N � butn%=2 � �textmenu X � cntwin% b � butn%=2 � �contmenu l4 � butn%=4 � icon%=28 � intflag%=intflag% � 8192 v2 � butn%=4 � icon%=29 � intflag%=intflag% � 64 �4 � butn%=4 � icon%=30 � intflag%=intflag% � � 32 �2 � butn%=4 � icon%=31 � intflag%=intflag% � 32 �& � butn%=1 � icon%=30 � icon%=31 � �B !block%=cntwin%:block%!4=icon%:block%!8=1<<21:block%!12=1<<21 �# ș "Wimp_SetIconState",,block% � � �= � butn%=4 � icon%=16 � intflag%=intflag% � � 12:�buttons �M � butn%=4 � icon%=17 � (intflag% � 4)=4 � intflag%=intflag% � 8:�buttons �> � butn%=4 � icon%=18 � (intflag% � 4)=0 � !(heap%!24)>0 � � input%!128=0 �+ input%!132=!(heap%!24+4+input%!128*20) �+ input%!136=!(heap%!24+8+input%!128*20) �, input%!140=!(heap%!24+12+input%!128*20) , input%!144=!(heap%!24+16+input%!128*20) , input%!148=!(heap%!24+20+input%!128*20) intflag%=intflag% � 4 � (intflag% � 32)=32 � *. !(heap%!16)=0:�claim(heap%+16,256,claim%) 4 � > �scaletext H: block%!64=txtwin%:ș "Wimp_GetWindowState",,block%+64 R$ ș "Wimp_OpenWindow",,block%+64 \7 ș "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 f � pO � butn%=4 � icon%=18 � (intflag% � 4)=4 � intflag%=intflag% � � 8:�buttons zN � butn%=4 � icon%=19 � (intflag% � 4)=0 � !(heap%!24)>0 � !(heap%!16)>0 � � input%!128=0 �+ input%!132=!(heap%!24+4+input%!128*20) �+ input%!136=!(heap%!24+8+input%!128*20) �, input%!140=!(heap%!24+12+input%!128*20) �, input%!144=!(heap%!24+16+input%!128*20) �, input%!148=!(heap%!24+20+input%!128*20) �5 !block%=trnwin%:ș "Wimp_GetWindowState",,block% �0 ș "OS_ReadModeVariable",�,11 � ,,block%!32 �0 ș "OS_ReadModeVariable",�,12 � ,,block%!36 �L block%!32=(block%!32<<scale%!32)� 2:block%!36=(block%!36<<scale%!36)� 2 �, block%!12-=block%!4:block%!16-=block%!8 �F block%!4=block%!32-block%!12 � 2:block%!8=block%!36-block%!16 � 2 �, block%!12+=block%!4:block%!16+=block%!8 ! ș "Wimp_OpenWindow",,block% intflag%=intflag% � 256 �buttons $ � . � 8 � B : L � �buttons V( !block%=cntwin%:block%!12=&F0000000 `8 block%!4=17:block%!8=&C0000000 � (intflag% � 8)<<26 j# ș "Wimp_SetIconState",,block% tM block%!4=18:block%!8=&C0000000 � (intflag% � 4)<<27 � (intflag% � 8)<<26 ~# ș "Wimp_SetIconState",,block% � � � : � � �spritemenu � $(menu%)=app$ � menu%!12=&70207 � menu%!16=120:menu%!20=40 � menu%!24=0 �< $(block%)="Zoom":�menentry(0,0,magwin%,&7000011,block%) �S $(block%)="Limits":�menentry(1,8,limwin%,&7000011 � (intflag% � 4)<<20,block%) �g $(block%)="Invert":�menentry(2,0,-1,&7000011 � �(!(4+heap%!8)=0)<<22 � (intflag% � 4)<<20,block%) �g $(block%)="Align":�menentry(3,128,-1,&7000011 � �(!(4+heap%!8)=0)<<22 � (intflag% � 4)<<20,block%) �, ș "Wimp_CreateMenu",,menu%,xpnt%,ypnt% menno%=1 � : � �textmenu ( $(menu%)=app$ 2 menu%!12=&70207 < menu%!16=120:menu%!20=40 F menu%!24=0 P> $(block%)="Save":�menentry(0,128,tsvwin%,&7000011,block%) Z, ș "Wimp_CreateMenu",,menu%,xpnt%,ypnt% d menno%=2 n � x : � � �contmenu � $(menu%)=app$ � menu%!12=&70207 � menu%!16=120:menu%!20=40 � menu%!24=0 �< $(block%)="Save":�menentry(0,0,nsvwin%,&7000011,block%) �: $(block%)="New Net":�menentry(1,0,-1,&7000011,block%) �9 $(block%)="Show":�menentry(2,128,-1,&7000011,block%) �, ș "Wimp_CreateMenu",,menu%,xpnt%,ypnt% � menno%=3 � � � : � � �iconmenu $(menu%)=app$ menu%!12=&70207 menu%!16=88:menu%!20=40 " menu%!24=0 ,< $(block%)="Info":�menentry(0,0,infwin%,&7000011,block%) 69 $(block%)="Quit":�menentry(1,128,-1,&7000011,block%) @- ș "Wimp_CreateMenu",,menu%,xpnt%-64,176 J menno%=0 T � ^ : h9 � �menentry(entry%,flag%,submenu%,iconflg%,icondat%) r menu%!(28+24*entry%)=flag% |" menu%!(32+24*entry%)=submenu% �" menu%!(36+24*entry%)=iconflg% �# menu%!(40+24*entry%)=!icondat% �$ menu%!(44+24*entry%)=icondat%!4 �$ menu%!(48+24*entry%)=icondat%!8 � � � : � � �setheap �' ș "Wimp_SlotSize",-1,-1 � extent% �* ș "Wimp_SlotSize",extent%+128+320,-1 �% !heap%=6:heap%!4=extent%+128+320 �" heap%!8=heap%+128:heap%!12=32 �# heap%!16=heap%+160:heap%!20=32 �# heap%!24=heap%+192:heap%!28=32 # heap%!32=heap%+224:heap%!36=32 # heap%!40=heap%+256:heap%!44=32 # heap%!48=heap%+288:heap%!52=32 &B !(heap%!8)=32:!(4+heap%!8)=0:!(8+heap%!8)=16:!(12+heap%!8)=16 0. !(heap%!16)=0:!(heap%!24)=0:!(heap%!40)=0 : !input%=heap% D � N : X# � �claim(block%,size%,� flag%) b flag%=� l size%=(size%+3) � -4 v delta%=size%-block%!4 �' ș "Wimp_SlotSize",-1,-1 � ,,free% � � delta%<free% � � flag%=� �6 � delta%>0 � ș "Wimp_SlotSize",heap%!4+delta%,-1 �+ input%!4=!block%:input%!8=size%:� heap �/ � delta%<0 � ș "Wimp_SlotSize",heap%!4,-1 � � � � � : � � �full � !block%=0 �- $(block%+4)="No Room - memory full"+�(0) �* ș "Wimp_ReportError",block%,1,"!OCR" � : � �code input=code% * output=code%+4 4 heap=code%+code%!8 > position=code%+code%!12 H print=code%+code%!16 R findline=code%+code%!20 \ findlimit=code%+code%!24 f scanline=code%+code%!28 p alias=code%+code%!32 z copy=code%+code%!36 � invert=code%+code%!40 � sprextent=code%+code%!44 � distort=code%+code%!48 � trainchar=code%+code%!52 � pattern=code%+code%!56 � best=code%+code%!60 � error=code%+code%!64 � learn=code%+code%!68 � evaluate=code%+code%!72 � !input=input% � !output=output% � � � : � �testload(� load%) load%=� G � block%!20=txtwin% � block%!40=&FFF � (intflag% � 12)=0 � load%=� $G � block%!20=cntwin% � block%!24=26 � block%!40=filetype% � load%=� .G � block%!20=sprwin% � block%!40=&FF9 � (intflag% � 12)=0 � load%=� 8 � B : L � �load(� load%) V file$=�string(block%+44) ` load%=� j � block%!40=&FFF � t) ș "OS_File",&05,file$ � ,,,,flesze% ~& �claim(heap%+16,flesze%+4,claim%) � � claim% � � !(heap%!16)=flesze% �& ș "OS_File",&FF,file$,heap%!16+4 �U � file$="<Wimp$Scrap>" � $(icontxt%(3))="Textfile"+�0 � $(icontxt%(3))=file$+�0 � input%!32=heap%!16 � �scaletext �: block%!64=txtwin%:ș "Wimp_GetWindowState",,block%+64 �$ ș "Wimp_OpenWindow",,block%+64 �7 ș "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 � load%=� � � � �full � � : � block%!40=filetype% � () ș "OS_File",&05,file$ � ,,,,flesze% 2$ �claim(heap%+32,flesze%,claim%) < � claim% � F$ ș "OS_File",&FF,file$,heap%!32 P' $(icontxt%(18))=�$(heap%!32+4),28) ZU � file$="<Wimp$Scrap>" � $(icontxt%(19))="NetFile"+�0 � $(icontxt%(19))=file$+�0 d; block%!64=cntwin%:block%!68=27:block%!72=0:block%!76=0 n& ș "Wimp_SetIconState",,block%+64 x load%=� � � � �full � � � � � : � � block%!40=&FF9 � �) ș "OS_File",&05,file$ � ,,,,flesze% �$ flesze%=(flesze%+&101F) � � &1F �# �claim(heap%+8,flesze%,claim%) � � claim% � � !(heap%!8)=heap%!12 �* ș "OS_SpriteOp",256+10,heap%!8,file$ �' input%!12=heap%!8+16+!(heap%!8+48) input%!16=!(heap%!8+32)+1 input%!20=!(heap%!8+36)+1 input%!24=!(heap%!8+40) " input%!28=!(heap%!8+44) , � invert 6 �claim(heap%+24,4,claim%) @ !(heap%!24)=0 J �translate T �scalesprite ^: block%!64=sprwin%:ș "Wimp_GetWindowState",,block%+64 h$ ș "Wimp_OpenWindow",,block%+64 r1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 | load%=� � � � �full � � � � � � � : � � �leaf(buffer%) � bufoff%=0 � str$="" �) ȕ buffer%?bufoff%>=32 � bufoff%<255 �! str$=str$+�(buffer%?bufoff%) �# � buffer%?bufoff%=46 � str$="" � bufoff%+=1 � =str$ : & � �string(buffer%) 0 bufoff%=0 : str$="" D) ȕ buffer%?bufoff%>=32 � bufoff%<255 N! str$=str$+�(buffer%?bufoff%) X bufoff%+=1 b � l =str$ v : � � �number(number,rnd%) � mid%=��(number),�46) �3 � mid%=0 � =�(number) � =��(number),mid%+rnd%) � : �# � �save(type%,buffer%,� save%) � � � � � � � �errfile:� � file$=�string(buffer%) �= save%=�file$,".") � �file$,":") � �file$,"<Wimp$Scrap>") � � save% � � � type%=&FFF � �G ș "OS_File",&00,buffer%,0,0,(heap%!16)+4,(heap%!16)+4+!(heap%!16) �# ș "OS_File",&12,buffer%,type% � " $(heap%!32+4)=$(icontxt%(18)) @ ș "OS_File",&00,buffer%,0,0,heap%!32,(heap%!32)+(heap%!36) # ș "OS_File",&12,buffer%,type% * � 4 � > !block%=0 HC $(block%+4)="To save, drag file icon to directory viewer"+�(0) R- ș "Wimp_ReportError",block%,1,"!Scribe" \ � f � � p � z : � � �errfile � !block%=0 � $(block%+4)=�$+�(0) �- ș "Wimp_ReportError",block%,1,"!Scribe" � save%=� � � � : � � �message � mess%=block%!16 � Ȏ mess% � �3 � &00000:ș "Wimp_CloseDown",taskhandle%,task% � � 1:�testload(load%) � � load% � K datype%=block%!40:datext%=block%!36:intflag%=intflag% � � 512:claim%=� H � datype%=&FFF � �claim(heap%+16,datext%+4,claim%):data%=heap%!16+4 I � datype%=filetype% � �claim(heap%+32,datext%,claim%):data%=heap%!32 $D � datype%=&FF9 � �claim(heap%+8,datext%,claim%):data%=heap%!8+4 . � claim% � 8 block%!12=block%!8 B block%!16=6 L block%!20=data% V block%!24=datext% `- ș "Wimp_SendMessage",18,block%,block%!4 j � t �full ~ � � � � : �. � &00002:�save(block%!40,block%+44,save%) � � save% � � � block%!40=&FFF � �R � �(�string(block%+44)="<Wimp$Scrap>") � $(icontxt%(3))=�string(block%+44)+�0 � � �S � �(�string(block%+44)="<Wimp$Scrap>") � $(icontxt%(19))=�string(block%+44)+�0 � � � block%!12=block%!8 � block%!16=3 �- ș "Wimp_SendMessage",17,block%,block%!4 9 � block%!40=&FFF � !block%=tsvwin% � !block%=nsvwin% " ș "Wimp_CloseWindow",,block% ș "Wimp_CreateMenu",,-1 � ( : 2 � &00003 < �testload(load%) F � load% � �load(load%) P � load% � Z# block%!12=block%!8:block%!16=4 d- ș "Wimp_SendMessage",17,block%,block%!4 n � x � � � &00006 �# block%!12=block%!8:block%!16=7 �0 � (block%!24-datext%)>0 � block%!24=datext% �K ș "Wimp_TransferBlock",taskhandle%,data%,block%!4,block%!20,block%!24 �- ș "Wimp_SendMessage",18,block%,block%!4 �( data%+=block%!24:datext%-=block%!24 � � &00007 � intflag%=intflag% � 512 � � block%!24=datext% � �+ data%+=block%!24:datext%=1024:claim%=� �> � datype%=&FFF � �claim(heap%+16,heap%!20+datext%,claim%) �C � datype%=filetype% � �claim(heap%+32,heap%!36+datext%,claim%) �= � datype%=&FF9 � �claim(heap%+8,heap%!12+datext%,claim%) � claim% � E block%!12=block%!8:block%!16=6:block%!20=data%:block%!24=datext% - ș "Wimp_SendMessage",18,block%,block%!4 " � , �pipebreak:�full 6 � @ � J � datype%=&FFF � T7 �claim(heap%+16,heap%!20+block%!24-datext%,claim%) ^8 !(heap%!16)=heap%!20-4:$(icontxt%(3))="Textfile"+�0 h �scaletext r: block%!64=txtwin%:ș "Wimp_GetWindowState",,block%+64 |$ ș "Wimp_OpenWindow",,block%+64 �7 ș "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 � � � � datype%=filetype% � �7 �claim(heap%+32,heap%!36+block%!24-datext%,claim%) �' $(icontxt%(18))=�$(heap%!32+4),28) �! $(icontxt%(19))="NetFile"+�0 �; block%!64=cntwin%:block%!68=27:block%!72=0:block%!76=0 �& ș "Wimp_SetIconState",,block%+64 � � � � datype%=&FF9 � �6 �claim(heap%+8,heap%!12+block%!24-datext%,claim%) � !(heap%!8)=heap%!12 �' input%!12=heap%!8+16+!(heap%!8+48) input%!16=!(heap%!8+32)+1 input%!20=!(heap%!8+36)+1 input%!24=!(heap%!8+40) & input%!28=!(heap%!8+44) 0 � invert : �claim(heap%+24,4,claim%) D !(heap%!24)=0 N �translate X �scalesprite b: block%!64=sprwin%:ș "Wimp_GetWindowState",,block%+64 l$ ș "Wimp_OpenWindow",,block%+64 v1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 � � � � � � &400C0 �% � block%!20=limwin% � �showlimit �; ș "Wimp_CreateSubMenu",,block%!20,block%!24,block%!28 � � &400C1:�translate � �scalesprite:�scaletext � � � � � : � � �acknowledge � mess%=block%!16 � Ȏ mess% � � 6 � (intflag% � 512)=0 � block%!36=-1 % $(block%+44)="<Wimp$Scrap>"+�(0) *# block%!12=block%!8:block%!16=2 4 !block%=60 >- ș "Wimp_SendMessage",17,block%,block%!4 H � R �pipebreak \ !block%=0 f* $(block%+4)="Data transfer failed"+�0 p- ș "Wimp_ReportError",block%,1,"!Scribe" z � � � � � � : � � �pipebreak � � datype%=&FFF � �- �claim(heap%!16,32,claim%):!(heap%!16)=0 � �scaletext �: block%!64=txtwin%:ș "Wimp_GetWindowState",,block%+64 �7 ș "Wimp_ForceRedraw",txtwin%,0,-txthgt%,txtwdt%,0 � � � � datype%=&FF9 � � �claim(heap%+8,32,claim%) �B !(heap%!8)=32:!(heap%!8+4)=0:!(heap%!8+8)=16:!(heap%!8+12)=16 , �claim(heap%+24,4,claim%):!(heap%!24)=0 �translate:�scalesprite : block%!64=sprwin%:ș "Wimp_GetWindowState",,block%+64 $1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 . � 8 � B : L � �keypress V window%=!block% ` icon%=block%!4 j chr%=block%!24 t Ȏ window% � ~ � magwin% � � chr%=13 � �6 scale%!(16+4*icon%)=�(�string(icontxt%(1+icon%))) �4 � scale%!(16+4*icon%)<1 � scale%!(16+4*icon%)=1 �5 $(icontxt%(1+icon%))=�(scale%!(16+4*icon%))+�(0) �: block%!8=0:block%!12=0:ș "Wimp_SetIconState",,block% � �scalesprite �5 !block%=sprwin%:ș "Wimp_GetWindowState",,block% �! ș "Wimp_OpenWindow",,block% �1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 � � �6 � chr%=399 � chr%=398 � chr%=13 � icon%=icon% � 1 �J � icon%=0 � icon%=1 � ș "Wimp_SetCaretPosition",window%,icon%,,,-1,0 : � tsvwin% � icon%=2 � chr%=13 � " �save(&FFF,icontxt%(3),save%) (E � save% � ș "Wimp_CloseWindow",,block%:ș "Wimp_CreateMenu",,-1 2 � < : F � nsvwin% P � icon%=2 � chr%=13 � Z( �save(filetype%,icontxt%(19),save%) dE � save% � ș "Wimp_CloseWindow",,block%:ș "Wimp_CreateMenu",,-1 n � x � limwin% �# � icon%-icnbse%=13 � chr%=13 � � �showlimit � block%!8=0:block%!12=0 � � icn%=4 � 11 �9 block%!4=icnbse%+icn%:ș "Wimp_SetIconState",,block% � � icn% � � �# � icon%-icnbse%=12 � chr%=13 � �6 input%!108=�($(icontxt%(16)))/100*(1<<(pnt% � 2)) �Y � input%!108>(1<<(pnt% � 2)) � input%!108=(1<<(pnt% � 2)):$(icontxt%(16))="100"+�(0) �: block%!8=0:block%!12=0:ș "Wimp_SetIconState",,block% � � �: � (icon%-icnbse%)>=0 � (icon%-icnbse%)<12 � chr%=13 � � (icon%-icnbse%)<4 � B input%!(92+4*(icon%-icnbse%))=�($(icontxt%(4+icon%-icnbse%))) � ", dpi%=�$(icontxt%(17)):� dpi%=0 � dpi%=1 ,R � !(4+heap%!8)>0 � ș "OS_ReadModeVariable",!(56+heap%!8),5 � ,,asp% � asp%=1 6 � (icon% � 1)=0 � asp%=1 @' � (icon%-icnbse%)>7 � asp%=asp%*72 JQ input%!(92+4*((icon%-icnbse%)� 3))=�($(icontxt%(4+icon%-icnbse%)))*dpi%/asp% T � ^0 � input%!92<input%!84 � input%!92=input%!84 h0 � input%!96<input%!88 � input%!96=input%!88 r2 � input%!100<input%!84 � input%!100=input%!84 |2 � input%!104<input%!88 � input%!104=input%!88 � �showlimit �B block%!8=0:block%!12=0:block%!4=icnbse%+((icon%-icnbse%) � 3) �# ș "Wimp_SetIconState",,block% �- block%!4=icnbse%+4+((icon%-icnbse%) � 3) �# ș "Wimp_SetIconState",,block% �- block%!4=icnbse%+8+((icon%-icnbse%) � 3) �# ș "Wimp_SetIconState",,block% � � � � chr%=399 � icon%-=1 �$ � chr%=398 � chr%=13 � icon%+=1 �Z � icon%>=icnbse% � icon%<icnbse%+14 � ș "Wimp_SetCaretPosition",window%,icon%,,,-1,0 � � � � : � �drag ( ș "Wimp_GetPointerInfo",,block%+16 & window%=block%!28 0 icon%=block%!32 : : D Ȏ window% � N � sprwin% X � (intflag% � 2)>0 � b: block%!16=sprwin%:ș "Wimp_GetWindowState",,block%+16 l! !block%+=block%!36-block%!20 v" block%!4+=block%!40-block%!32 �" block%!8+=block%!36-block%!20 �# block%!12+=block%!40-block%!32 �- � !block%>block%!8 � Ȕ !block%,block%!8 �1 � block%!4>block%!12 � Ȕ block%!4,block%!12 � � !block%<0 � !block%=0 � � block%!12>0 � block%!12=0 �7 input%!68=(!block%>>scale%!24)*scale%!20/scale%!16 �: input%!80=1-(block%!4>>scale%!28)*scale%!20/scale%!16 �: input%!76=(block%!8>>scale%!24)*scale%!20/scale%!16-1 �: input%!72=-(block%!12>>scale%!28)*scale%!20/scale%!16 � �countline � intflag%=intflag% � 2 �1 ș "Wimp_ForceRedraw",sprwin%,0,-hgt%,wdt%,0 ! � ! ! : ! - � (intflag% � 1)>0 � window%<>txtwin% � !*, block%!28=block%!16:block%!32=block%!20 !4& block%!20=window%:block%!24=icon% !>) block%!36=!(heap%!16):block%!40=&FFF !H) $(block%+44)=�leaf(icontxt%(3))+�(0) !R intflag%=intflag% � � 1 !\( !block%=256:block%!12=0:block%!16=1 !f8 ș "Wimp_SendMessage",17,block%,block%!20,block%!24 !p) data%=heap%!16+4:datext%=!(heap%!16) !z � !� � (intflag% � 128)>0 � !�, block%!28=block%!16:block%!32=block%!20 !�& block%!20=window%:block%!24=icon% !�+ block%!36=heap%!36:block%!40=filetype% !�* $(block%+44)=�leaf(icontxt%(19))+�(0) !� intflag%=intflag% � � 128 !�( !block%=256:block%!12=0:block%!16=1 !�8 ș "Wimp_SendMessage",17,block%,block%!20,block%!24 !�$ data%=heap%!32:datext%=heap%!36 !� � !� � !� � !� : " � �redrawsprite " ȕ flag% " � !(4+heap%!8)>0 � "$ xsc%=block%!20-block%!4 "." ysc%=block%!24-block%!16+hgt% "8= !scale%=scale%!24*scale%!16:scale%!4=scale%!28*scale%!16 "B? scale%!8=scale%!32*scale%!20:scale%!12=scale%!36*scale%!20 "LM ș "OS_SpriteOp",512+52,heap%!8,(heap%!8)+16,-xsc%,-ysc%,,scale%,bitmap% "V � !(heap%!24)>0 � �drawline "` � (intflag% � 6144)=6144 � "j ș "Wimp_SetColour",48+11 "tF � (xst%*scale%!16/scale%!20)-xsc%,(yst%*scale%!16/scale%!20)-ysc% "~F � (xed%*scale%!16/scale%!20)-xsc%,(yed%*scale%!16/scale%!20)-ysc% "� � "� � "�+ ș "Wimp_GetRectangle",,block% � flag% "� � "� � "� : "� � �redrawtext "�# input%!32=heap%!16:input%!36=0 "�! input%!40=block%!4-block%!20 "�$ input%!44=block%!16-block%!24-4 "� input%!48=input%!40+txtwdt% "� ȕ flag% # � !(heap%!16)>0 � # ș "Wimp_SetColour",7 #/ input%!52=block%!28-16:input%!56=block%!32 #/ input%!60=block%!36:input%!64=block%!40+32 #( � print #2 � #<+ ș "Wimp_GetRectangle",,block% � flag% #F � #P � #Z : #d � �translate #n � !(4+heap%!8)>0 � #x; ș "OS_ReadModeVariable",!(56+heap%!8),4 � ,,scale%!24 #�; ș "OS_ReadModeVariable",!(56+heap%!8),5 � ,,scale%!28 #�/ ș "OS_ReadModeVariable",�,4 � ,,scale%!32 #�/ ș "OS_ReadModeVariable",�,5 � ,,scale%!36 #�F ș "ColourTrans_SelectTable",!(56+heap%!8),palette%,-1,-1,bitmap% #� � #� � #� : #� � �scalesprite #� � !(4+heap%!8)>0 � #�6 wdt%=!(heap%!8+32)*32+!(heap%!8+44)-!(heap%!8+40) #� hgt%=!(heap%!8+36) #�/ wdt%=(wdt%<<scale%!24)*scale%!16/scale%!20 #�/ hgt%=(hgt%<<scale%!28)*scale%!16/scale%!20 $ block%!64=0:block%!68=-hgt% $ block%!72=wdt%:block%!76=0 $* ș "Wimp_SetExtent",sprwin%,block%+64 $" � $, � $6 : $@ � �scaletext $J � !(heap%!16)>0 � $T. ș "OS_ReadModeVariable",�,11 � ,,txtwdt% $^$ txtwdt%=(txtwdt%<<scale%!32)-64 $h input%!32=heap%!16 $r input%!36=!(heap%!16) $| input%!40=0:input%!44=-256 $� input%!48=txtwdt% $� � position $� txthgt%=-output%!4 $�$ block%!64=0:block%!68=output%!4 $�" block%!72=txtwdt%:block%!76=0 $�* ș "Wimp_SetExtent",txtwin%,block%+64 $� � $� � $� : $� � �showlimit $�, dpi%=�$(icontxt%(17)):� dpi%=0 � dpi%=1 $�R � !(4+heap%!8)>0 � ș "OS_ReadModeVariable",!(56+heap%!8),5 � ,,asp% � asp%=1 $�% $(icontxt%(4))=�(input%!92)+�(0) %% $(icontxt%(5))=�(input%!96)+�(0) %& $(icontxt%(6))=�(input%!100)+�(0) %& $(icontxt%(7))=�(input%!104)+�(0) %&2 $(icontxt%(8))=�number(input%!92/dpi%,4)+�(0) %07 $(icontxt%(9))=�number(asp%*input%!96/dpi%,4)+�(0) %:4 $(icontxt%(10))=�number(input%!100/dpi%,4)+�(0) %D9 $(icontxt%(11))=�number(asp%*input%!104/dpi%,4)+�(0) %N6 $(icontxt%(12))=�number(input%!92/dpi%*72,4)+�(0) %X; $(icontxt%(13))=�number(asp%*input%!96/dpi%*72,4)+�(0) %b7 $(icontxt%(14))=�number(input%!100/dpi%*72,4)+�(0) %l< $(icontxt%(15))=�number(asp%*input%!104/dpi%*72,4)+�(0) %v � %� : %� � �countline %� ș "Hourglass_On" %�: � (intflag% � 16)=16 � input%!104=input%!80-input%!72 %� input%!128=input%!72 %�. !(heap%!24)=0:�claim(heap%+24,256,claim%) %� � findline %� ȕ !output%>-1 � claim% %�H � heap%!28-!(heap%!24)*20<40 � �claim(heap%+24,heap%!28+256,claim%) %�* !(heap%!24+4+!(heap%!24)*20)=!output% %�+ !(heap%!24+8+!(heap%!24)*20)=output%!4 %�, !(heap%!24+12+!(heap%!24)*20)=output%!8 %�- !(heap%!24+16+!(heap%!24)*20)=output%!12 &- !(heap%!24+20+!(heap%!24)*20)=output%!16 & !(heap%!24)+=1 & input%!128=output%!12 & � findline &* � &4 : &>$ � (intflag% � 16)=16 � claim% � &H1 scan%=0:input%!92=0:input%!96=0:input%!104=0 &R ȕ scan%<!(heap%!24) &\& input%!132=!(heap%!24+4+scan%*20) &f& input%!136=!(heap%!24+8+scan%*20) &p' input%!140=!(heap%!24+12+scan%*20) &z' input%!144=!(heap%!24+16+scan%*20) &� � findlimit &�B � !output%>input%!92 � input%!92=!output%:input%!100=!output% &�0 � output%!4>input%!96 � input%!96=output%!4 &�P � (1+input%!144-input%!136)>input%!104 � input%!104=1+input%!144-input%!136 &� scan%+=1 &� � &� � &� ș "Hourglass_Off" &� : &� � � claim% � �full &� � &� : &� � �drawline ' ș "Wimp_SetColour",11 '+ � 23,6,&F0,&F0,&F0,&F0,&F0,&F0,&F0,&F0 ' xsc%=block%!20-block%!4 '$ ysc%=block%!24-block%!16 '. plot%=0 '8 ȕ plot%<!(heap%!24) 'BA lft%=(!(heap%!24+4+plot%*20)<<scale%!24)*scale%!16/scale%!20 'LA top%=(!(heap%!24+8+plot%*20)<<scale%!28)*scale%!16/scale%!20 'VB rgt%=(!(heap%!24+12+plot%*20)<<scale%!24)*scale%!16/scale%!20 '`B btm%=(!(heap%!24+16+plot%*20)<<scale%!28)*scale%!16/scale%!20 'jB bse%=(!(heap%!24+20+plot%*20)<<scale%!28)*scale%!16/scale%!20 't2 � lft%-xsc%,-btm%-ysc%:� rgt%-xsc%,-btm%-ysc% '~2 � rgt%-xsc%,-top%-ysc%:� lft%-xsc%,-top%-ysc% '�2 � lft%-xsc%,-btm%-ysc%:� lft%-xsc%,-bse%-ysc% '� � 21,rgt%-xsc%,-bse%-ysc% '� plot%+=1 '� � '� � '� : '� � �extract '� � !output%>=0 � '� input%!152=output%!4 '� input%!156=output%!8 '� input%!160=output%!12 '� input%!164=output%!16 ( � alias ( > state%!(64*4)=(input%!148-input%!156)/input%!96*(1<<pnt%) (> state%!(65*4)=(input%!148-input%!164)/input%!96*(1<<pnt%) (L state%!(66*4)=(input%!160-input%!152)/(input%!164-input%!156)*(1<<pnt%) (( input%!132=input%!160 (2 � (< input%!128+=1 (F9 � input%!128>=!(heap%!24) � intflag%=intflag% � � 12 (P+ input%!132=!(heap%!24+4+input%!128*20) (Z+ input%!136=!(heap%!24+8+input%!128*20) (d, input%!140=!(heap%!24+12+input%!128*20) (n, input%!144=!(heap%!24+16+input%!128*20) (x, input%!148=!(heap%!24+20+input%!128*20) (� � (� � (� : (� � �identify (� � !output%<0 � (�. � (intflag% � 64)=64 � str$=�10 � str$="" (� � (� str$=�!output%,�32) (�* input%!124=heap%!32+32+!(heap%!32+32) (� � evaluate (� � best (� group%=!output% (�3 input%!124=heap%!32+32+!(heap%!32+36+4*group%) )( � (intflag% � 1024)=1024 � �showflt ) � evaluate ) � best )"( � (intflag% � 1024)=1024 � �shownet ),' str$=str$+�(33+32*group%+!output%) )6 � )@ : )J claim%=� )T( � heap%!20-!(heap%!16)-�(str$)<32 � )^) �claim(heap%+16,heap%!20+256,claim%) )h input%!32=heap%!16 )r � )| : )� � claim% � )�# $(heap%!16+4+!(heap%!16))=str$ )� !(heap%!16)+=�(str$) )� �scaletext )�O !block%=txtwin%:block%!4=0:block%!8=-txthgt%:block%!12=txtwdt%:block%!16=0 )�+ ș "Wimp_UpdateWindow",,block% � flag% )�/ input%!32=heap%!16:input%!36=!(heap%!16)-1 )�! input%!40=block%!4-block%!20 )�$ input%!44=block%!16-block%!24-4 )� input%!48=input%!40+txtwdt% )� � position )� input%!40=!output% )� input%!44=output%!4 * ȕ flag% * ș "Wimp_SetColour",7 */ input%!52=block%!28-16:input%!56=block%!32 *&/ input%!60=block%!36:input%!64=block%!40+32 *0 � print *:+ ș "Wimp_GetRectangle",,block% � flag% *D � *N � *X �full *b intflag%=intflag% � � 12 *l � *v � *� : *� � �pollstop *�& ș "Wimp_GetIconState",,block%+64 *� ȗ xps%,yps%,butn% *�V block%!72=�(xps%>block%!8 � xps%<block%!16 � yps%>block%!12 � yps%<block%!20)<<21 *� block%!76=&200000 *�K � block%!72<>(block%!88 � &200000) � ș "Wimp_SetIconState",,block%+64 *�> � butn%=4 � block%!72=&200000 � intflag%=intflag% � � 260 *� � *� : *� � �train *� intflag%=intflag% � 4 *�" �claim(heap%+40,67*16,claim%) + !(heap%!40)=0 + : +? !block%=trnwin%:block%!4=11:ș "Wimp_GetIconState",,block% + : block%!64=trnwin%:ș "Wimp_GetWindowState",,block%+64 +*A block%!8+=block%!68-block%!84:block%!12+=block%!80-block%!88 +4B block%!16+=block%!68-block%!84:block%!20+=block%!80-block%!88 +>F ȗ ȓ block%!68,block%!72,block%!76-block%!68,block%!80-block%!72 +H block%!68=11 +R8 ȕ (intflag% � 4)=4 � (intflag% � 256)=256 � claim% +\ �pollstop +fN � heap%!44-!(heap%!40)*67*4<67*8 � �claim(heap%+40,heap%!44+67*16,claim%) +p � scanline +z �extract +� � !output%>=0 � +�= input%!168=state%:input%!172=heap%!40+4+!(heap%!40)*67*4 +� input%!176=67*4:� copy +� !(heap%!40)+=1 +� � +� � +� : +�D block%!24=trnwin%:block%!28=7:ș "Wimp_GetIconState",,block%+24 +�: block%!64=trnwin%:ș "Wimp_GetWindowState",,block%+64 +�F block%!32+=5+block%!68-block%!84:block%!36+=5+block%!80-block%!88 +�F block%!40+=block%!68-block%!84-5:block%!44+=block%!80-block%!88-5 +� block%!68=11 +� train%=0:input%!36=-1 ,% ȕ (intflag% � 256)=256 � claim% , �pollstop ,8 input%!172=state%:input%!168=heap%!40+4+train%*67*4 ,$ input%!176=67*4:� copy ,.! � trainchar:let%=!output%-33 ,8 : ,B � let%>=0 � ,L* input%!124=heap%!32+32+!(heap%!32+32) ,V# input%!188=let% � 32:� pattern ,` � evaluate ,j � error:error%=!output% ,t � learn ,~8 input%!124=heap%!32+32+!(heap%!32+36+4*(let% � 32)) ,�# input%!188=let% � 32:� pattern ,� � evaluate ,� � error:error%+=!output% ,� � learn ,� � ,� train%+=1 ,�2 � 24,block%!32;block%!36;block%!40;block%!44; ,� ș "Wimp_SetColour",5 ,�D Ȓ block%!40-4,block%!36+(block%!44-block%!36)*error%/(1<<pnt%) ,� � train%>=!(heap%!40) � ,�[ ȓ block%!32,block%!36,block%!40-block%!32,block%!44-block%!36 � block%!32-2,block%!36 ,� train%=0:input%!36=-1 - � - 2 � train%>=!(heap%!40) � train%=0:input%!36=-1 - � - : -(. ș "OS_ReadModeVariable",�,11 � ,,!block% -2/ ș "OS_ReadModeVariable",�,12 � ,,block%!4 -<5 ȗ ȓ 0,0,!block%<<scale%!32,block%!4<<scale%!36 -F intflag%=intflag% � � 256 -P2 !block%=trnwin%:ș "Wimp_CloseWindow",,block% -Z � � claim% � �full -d �claim(heap%+40,32,claim%) -n � -x : -� � �new -�" �claim(heap%+32,64880,claim%) -� � claim% � -� ș "Hourglass_On" -�# $(icontxt%(19))="NetFile"+�(0) -� !(heap%!32)=1 -�" $(heap%!32+4)="Blank Network" -�" $(icontxt%(18))=$(heap%!32+4) -� !(heap%!32+32)=20 -�9 !(heap%!32+36)=!(heap%!32+32)+4*(32*(2+67+32+3)+3+3) -�; !(heap%!32+40)=!(heap%!32+36)+4*(32*(2+67+32+32)+32+3) -�; !(heap%!32+44)=!(heap%!32+40)+4*(32*(2+67+32+32)+32+3) -�; !(heap%!32+48)=!(heap%!32+44)+4*(32*(2+67+32+32)+32+3) .f !(heap%!32+32+!(heap%!32+32))=67:!(heap%!32+36+!(heap%!32+32))=32:!(heap%!32+40+!(heap%!32+32))=3 .g !(heap%!32+32+!(heap%!32+36))=67:!(heap%!32+36+!(heap%!32+36))=32:!(heap%!32+40+!(heap%!32+36))=32 .g !(heap%!32+32+!(heap%!32+40))=67:!(heap%!32+36+!(heap%!32+40))=32:!(heap%!32+40+!(heap%!32+40))=32 ."g !(heap%!32+32+!(heap%!32+44))=67:!(heap%!32+36+!(heap%!32+44))=32:!(heap%!32+40+!(heap%!32+44))=32 .,, �disorder(heap%!32+32+!(heap%!32+32),�) .6, �disorder(heap%!32+32+!(heap%!32+36),�) .@, �disorder(heap%!32+32+!(heap%!32+40),�) .J, �disorder(heap%!32+32+!(heap%!32+44),�) .T7 !block%=cntwin%:block%!4=27:block%!8=0:block%!12=0 .^# ș "Wimp_SetIconState",,block% .h ș "Hourglass_Off" .r � .| �full .� � .� � .� : .� � �disorder(netadr%,top%) .�< inpnode%=!netadr%:hidnode%=netadr%!4:outnode%=netadr%!8 .� rand%=�(-1):netadr%+=12 .�& � rand%=0 � 2*hidnode%+outnode%-1 .� � rand% .�% netadr%+=4*(2*hidnode%+outnode%) .�8 � rand%=0 � hidnode%*(inpnode%+hidnode%+outnode%)-1 .�( netadr%!(4*rand%)=�>>(32+top%-pnt%) .� � rand% .� � / : / � �rotate /F � (xed%-xst%)<>0 � angle=�( (yed%-yst%)/(xed%-xst%) ) � angle=�/2 /&$ � (xed%-xst%)<0 � angle=angle+� /0 � angle=0 � � /:% �claim(heap%+48,heap%!12,claim%) /D � claim% � /N? input%!168=heap%!8:input%!172=heap%!48:input%!176=heap%!12 /X � copy /b* input%!192=heap%!48+16+!(heap%!48+48) /l input%!196=!(heap%!48+32)+1 /v input%!200=!(heap%!48+36)+1 /� input%!204=!(heap%!48+40) /� input%!208=!(heap%!48+44) /� input%!212=scale%!24 /� input%!216=scale%!28 /� input%!220=�(angle)*(1<<16) /�! input%!224=-�(angle)*(1<<16) /� input%!228=�(angle)*(1<<16) /� input%!232=�(angle)*(1<<16) /� � sprextent /� input%!236=-!output% /� input%!240=-output%!4 /�? extent%=(32+output%!8-!output%)*(output%!12-output%!4) � 8 /�# �claim(heap%+8,extent%,claim%) 0 � 0 � claim% � 0H !(heap%!8)=heap%!12:!(heap%!8+4)=0:!(heap%!8+8)=16:!(heap%!8+12)=16 0 d ș "OS_SpriteOp",256+15,heap%!8,"dump",0,output%!8-!output%,output%!12-output%!4,!(56+heap%!48) 0*M input%!192=heap%!48+16+!(heap%!48+48):input%!12=heap%!8+16+!(heap%!8+48) 04: input%!196=!(heap%!48+32)+1:input%!16=!(heap%!8+32)+1 0>: input%!200=!(heap%!48+36)+1:input%!20=!(heap%!8+36)+1 0H6 input%!204=!(heap%!48+40):input%!24=!(heap%!8+40) 0R6 input%!208=!(heap%!48+44):input%!28=!(heap%!8+44) 0\ input%!32=heap%!16 0f � distort 0p �scalesprite 0z �claim(heap%+48,32,claim%) 0� � 0� � � claim% � �full 0� � 0� : 0� � �shownet 0�0 ș "OS_SpriteOp",256+60,sprite%,"character" 0� � 128 0� � yps%=0 � 7 0� � xps%=0 � 7 0�* � state%!(32*yps%+4*xps%)/(1<<pnt%)*7 0�* ȓ Ȑ 38+xps%*16,44+(7-yps%)*16,15,15 0� � xps%,yps% 0� � 4 1o � 24,2;44;17;171;:�:ȓ Ȑ 2,76+state%!(4*65)/(1<<pnt%)*31,15,(state%!(4*64)*63-state%!(4*65)*31)/(1<<pnt%) 1B � 24,38;4;165;19;:�:ȓ Ȑ 38,4,state%!(4*66)/(1<<pnt%)*127,15 1/ ș "OS_SpriteOp",256+60,sprite%,"response" 1$# � 128:� 24,70;4;593;131;:�:� 4 1. � rep%=0 � 31 18< ȓ Ȑ 76+rep%*16,4,15,state%!(4*rep%+524)/(1<<pnt%)*127 1B � rep% 1L" ș "OS_SpriteOp",256+60,0,0,1 1V+ !block%=netwin%:block%!8=0:block%!12=0 1`4 block%!4=chricn%:ș "Wimp_SetIconState",,block% 1j4 block%!4=repicn%:ș "Wimp_SetIconState",,block% 1t/ block%!4=10:ș "Wimp_SetIconState",,block% 1~ � 1� : 1� � �showflt 1�/ ș "OS_SpriteOp",256+60,sprite%,"response" 1�! � 128:� 24,2;4;49;131;:�:� 4 1� � rep%=0 � 2 1�; ȓ Ȑ 2+rep%*16,4,15,state%!(4*rep%+524)/(1<<pnt%)*127 1� � rep% 1�" ș "OS_SpriteOp",256+60,0,0,1 1� � chr%=0 � 31 1�+ ?(icontxt%(20)+chr%)=33+group%*32+chr% 1� � chr% 1� � 2 : 2 � �rubber 2I !block%=sprwin%:block%!4=0:block%!8=-hgt%:block%!12=wdt%:block%!16=0 2+ ș "Wimp_UpdateWindow",,block% � flag% 2(: xsc%=block%!20-block%!4:ysc%=block%!24-block%!16+hgt% 22 ȕ flag% 2< ș "Wimp_SetColour",48+11 2FF � (xst%*scale%!16/scale%!20)-xsc%,(yst%*scale%!16/scale%!20)-ysc% 2PF � (xed%*scale%!16/scale%!20)-xsc%,(yed%*scale%!16/scale%!20)-ysc% 2Z+ ș "Wimp_GetRectangle",,block% � flag% 2d � 2n � �
00000000 0d 00 0a 12 20 f4 20 3e 20 21 52 75 6e 49 6d 61 |.... . > !RunIma| 00000010 67 65 0d 00 14 10 20 76 65 72 24 3d 22 31 2e 32 |ge.... ver$="1.2| 00000020 36 22 0d 00 1e 24 20 f4 20 44 69 72 65 63 74 20 |6"...$ . Direct | 00000030 52 41 4d 20 54 72 61 6e 73 66 65 72 20 61 74 20 |RAM Transfer at | 00000040 6c 61 73 74 20 21 0d 00 28 12 20 61 70 70 24 3d |last !..(. app$=| 00000050 22 53 63 72 69 62 65 22 0d 00 32 0c 20 68 65 61 |"Scribe"..2. hea| 00000060 70 25 3d 93 0d 00 3c 0c 20 70 6e 74 25 3d 32 34 |p%=...<. pnt%=24| 00000070 0d 00 46 13 20 66 69 6c 65 74 79 70 65 25 3d 26 |..F. filetype%=&| 00000080 36 30 34 0d 00 50 06 20 3a 0d 00 5a 0b 20 f2 73 |604..P. :..Z. .s| 00000090 65 74 75 70 0d 00 64 12 20 24 74 61 73 6b 25 3d |etup..d. $task%=| 000000a0 22 54 41 53 4b 22 0d 00 6e 06 20 3a 0d 00 78 1a |"TASK"..n. :..x.| 000000b0 20 c8 99 20 22 4f 53 5f 47 65 74 45 6e 76 22 20 | .. "OS_GetEnv" | 000000c0 b8 20 65 6e 76 24 0d 00 82 06 20 3a 0d 00 8c 38 |. env$.... :...8| 000000d0 20 c8 99 20 22 57 69 6d 70 5f 49 6e 69 74 69 61 | .. "Wimp_Initia| 000000e0 6c 69 73 65 22 2c 32 30 30 2c 21 74 61 73 6b 25 |lise",200,!task%| 000000f0 2c 61 70 70 24 20 b8 20 2c 74 61 73 6b 68 61 6e |,app$ . ,taskhan| 00000100 64 6c 65 25 0d 00 96 2e 20 c8 99 20 22 4f 53 5f |dle%.... .. "OS_| 00000110 46 69 6c 65 22 2c 26 46 46 2c 22 3c 4f 43 52 24 |File",&FF,"<OCR$| 00000120 44 69 72 3e 2e 63 6f 64 65 22 2c 63 6f 64 65 25 |Dir>.code",code%| 00000130 2c 30 0d 00 a0 40 20 c8 99 20 22 4f 53 5f 53 70 |,0...@ .. "OS_Sp| 00000140 72 69 74 65 4f 70 22 2c 32 35 36 2b 31 30 2c 73 |riteOp",256+10,s| 00000150 70 72 69 74 65 25 2c 22 3c 4f 43 52 24 44 69 72 |prite%,"<OCR$Dir| 00000160 3e 2e 73 70 72 69 74 65 73 22 2c 63 6f 64 65 25 |>.sprites",code%| 00000170 2c 30 0d 00 aa 0f 20 ee 20 85 20 f2 65 72 72 6f |,0.... . . .erro| 00000180 72 0d 00 b4 06 20 3a 0d 00 be 0e 20 f2 74 65 6d |r.... :.... .tem| 00000190 70 6c 61 74 65 0d 00 c8 0b 20 f2 69 63 6f 6e 73 |plate.... .icons| 000001a0 0d 00 d2 0a 20 f2 63 6f 64 65 0d 00 dc 0d 20 f2 |.... .code.... .| 000001b0 73 65 74 68 65 61 70 0d 00 e6 0d 20 f2 64 65 66 |setheap.... .def| 000001c0 61 75 6c 74 0d 00 f0 0a 20 f2 70 6f 6c 6c 0d 00 |ault.... .poll..| 000001d0 fa 06 20 e0 0d 01 04 06 20 3a 0d 01 0e 0f 20 dd |.. ..... :.... .| 000001e0 20 f2 64 65 66 61 75 6c 74 0d 01 18 1e 20 66 69 | .default.... fi| 000001f0 6c 65 24 3d 22 3c 4f 43 52 24 44 69 72 3e 2e 44 |le$="<OCR$Dir>.D| 00000200 65 66 61 75 6c 74 22 0d 01 22 29 20 c8 99 20 22 |efault"..") .. "| 00000210 4f 53 5f 46 69 6c 65 22 2c 26 30 35 2c 66 69 6c |OS_File",&05,fil| 00000220 65 24 20 b8 20 2c 2c 2c 2c 66 6c 65 73 7a 65 25 |e$ . ,,,,flesze%| 00000230 0d 01 2c 24 20 f2 63 6c 61 69 6d 28 68 65 61 70 |..,$ .claim(heap| 00000240 25 2b 33 32 2c 66 6c 65 73 7a 65 25 2c 63 6c 61 |%+32,flesze%,cla| 00000250 69 6d 25 29 0d 01 36 24 20 c8 99 20 22 4f 53 5f |im%)..6$ .. "OS_| 00000260 46 69 6c 65 22 2c 26 46 46 2c 66 69 6c 65 24 2c |File",&FF,file$,| 00000270 68 65 61 70 25 21 33 32 0d 01 40 27 20 24 28 69 |heap%!32..@' $(i| 00000280 63 6f 6e 74 78 74 25 28 31 38 29 29 3d c0 24 28 |contxt%(18))=.$(| 00000290 68 65 61 70 25 21 33 32 2b 34 29 2c 32 38 29 0d |heap%!32+4),28).| 000002a0 01 4a 06 20 e1 0d 01 54 06 20 3a 0d 01 5e 0d 20 |.J. ...T. :..^. | 000002b0 dd 20 f2 73 65 74 75 70 0d 01 68 14 20 69 6e 64 |. .setup..h. ind| 000002c0 69 72 6c 6e 25 3d 38 2a 31 30 32 34 0d 01 72 14 |irln%=8*1024..r.| 000002d0 20 de 20 63 6f 64 65 25 20 34 30 2a 31 30 32 34 | . code% 40*1024| 000002e0 0d 01 7c 11 20 de 20 69 6e 70 75 74 25 20 32 35 |..|. . input% 25| 000002f0 36 0d 01 86 12 20 de 20 6f 75 74 70 75 74 25 20 |6.... . output% | 00000300 32 35 36 0d 01 90 14 20 de 20 62 6c 6f 63 6b 25 |256.... . block%| 00000310 20 38 2a 31 30 32 34 0d 01 9a 12 20 de 20 62 69 | 8*1024.... . bi| 00000320 74 6d 61 70 25 20 32 35 36 0d 01 a4 11 20 de 20 |tmap% 256.... . | 00000330 70 61 6c 65 74 74 65 25 20 38 0d 01 ae 10 20 de |palette% 8.... .| 00000340 20 73 63 61 6c 65 25 20 34 30 0d 01 b8 10 20 de | scale% 40.... .| 00000350 20 6d 65 6e 75 25 20 32 35 36 0d 01 c2 16 20 de | menu% 256.... .| 00000360 20 69 6e 64 69 72 25 20 69 6e 64 69 72 6c 6e 25 | indir% indirln%| 00000370 0d 01 cc 13 20 de 20 69 63 6f 6e 74 78 74 25 28 |.... . icontxt%(| 00000380 33 32 29 0d 01 d6 0e 20 de 20 74 61 73 6b 25 20 |32).... . task% | 00000390 34 0d 01 e0 19 20 de 20 73 74 61 74 65 25 20 34 |4.... . state% 4| 000003a0 2a 28 36 37 2b 33 32 2a 33 29 0d 01 ea 14 20 de |*(67+32*3).... .| 000003b0 20 70 61 74 74 65 72 6e 25 20 34 2a 33 32 0d 01 | pattern% 4*32..| 000003c0 f4 16 20 de 20 64 65 6c 74 61 25 20 34 2a 28 33 |.. . delta% 4*(3| 000003d0 2a 33 32 29 0d 01 fe 16 20 de 20 73 70 72 69 74 |*32).... . sprit| 000003e0 65 25 20 31 32 2a 31 30 32 34 0d 02 08 06 20 3a |e% 12*1024.... :| 000003f0 0d 02 12 3c 20 21 73 70 72 69 74 65 25 3d 31 32 |...< !sprite%=12| 00000400 2a 31 30 32 34 3a 73 70 72 69 74 65 25 21 34 3d |*1024:sprite%!4=| 00000410 30 3a 73 70 72 69 74 65 25 21 38 3d 31 36 3a 73 |0:sprite%!8=16:s| 00000420 70 72 69 74 65 25 21 31 32 3d 31 36 0d 02 1c 1c |prite%!12=16....| 00000430 20 69 6e 70 75 74 25 21 38 34 3d 38 3a 69 6e 70 | input%!84=8:inp| 00000440 75 74 25 21 38 38 3d 38 0d 02 26 1e 20 69 6e 70 |ut%!88=8..&. inp| 00000450 75 74 25 21 39 32 3d 37 32 3a 69 6e 70 75 74 25 |ut%!92=72:input%| 00000460 21 39 36 3d 37 32 0d 02 30 20 20 69 6e 70 75 74 |!96=72..0 input| 00000470 25 21 31 30 30 3d 32 30 3a 69 6e 70 75 74 25 21 |%!100=20:input%!| 00000480 31 30 34 3d 37 32 0d 02 3a 23 20 69 6e 70 75 74 |104=72..:# input| 00000490 25 21 31 30 38 3d 30 2e 31 2a 28 31 3c 3c 28 70 |%!108=0.1*(1<<(p| 000004a0 6e 74 25 20 81 20 32 29 29 0d 02 44 1e 20 69 6e |nt% . 2))..D. in| 000004b0 70 75 74 25 21 31 31 32 3d 38 3a 69 6e 70 75 74 |put%!112=8:input| 000004c0 25 21 31 31 36 3d 38 0d 02 4e 16 20 69 6e 70 75 |%!116=8..N. inpu| 000004d0 74 25 21 31 32 30 3d 73 74 61 74 65 25 0d 02 58 |t%!120=state%..X| 000004e0 11 20 69 6e 70 75 74 25 21 31 32 34 3d 30 0d 02 |. input%!124=0..| 000004f0 62 16 20 69 6e 70 75 74 25 21 31 38 30 3d 64 65 |b. input%!180=de| 00000500 6c 74 61 25 0d 02 6c 18 20 69 6e 70 75 74 25 21 |lta%..l. input%!| 00000510 31 38 34 3d 70 61 74 74 65 72 6e 25 0d 02 76 06 |184=pattern%..v.| 00000520 20 3a 0d 02 80 25 20 21 70 61 6c 65 74 74 65 25 | :...% !palette%| 00000530 3d 26 46 46 46 46 46 46 30 30 3a 70 61 6c 65 74 |=&FFFFFF00:palet| 00000540 74 65 25 21 34 3d 30 0d 02 8a 2f 20 77 64 74 25 |te%!4=0.../ wdt%| 00000550 3d 32 35 36 3a 68 67 74 25 3d 32 35 36 3a 74 78 |=256:hgt%=256:tx| 00000560 74 77 64 74 25 3d 31 32 38 30 3a 74 78 74 68 67 |twdt%=1280:txthg| 00000570 74 25 3d 32 35 36 0d 02 94 1c 20 73 63 61 6c 65 |t%=256.... scale| 00000580 25 21 31 36 3d 31 3a 73 63 61 6c 65 25 21 32 30 |%!16=1:scale%!20| 00000590 3d 32 0d 02 9e 2f 20 c8 99 20 22 4f 53 5f 52 65 |=2.../ .. "OS_Re| 000005a0 61 64 4d 6f 64 65 56 61 72 69 61 62 6c 65 22 2c |adModeVariable",| 000005b0 eb 2c 34 20 b8 20 2c 2c 73 63 61 6c 65 25 21 32 |.,4 . ,,scale%!2| 000005c0 34 0d 02 a8 2f 20 c8 99 20 22 4f 53 5f 52 65 61 |4.../ .. "OS_Rea| 000005d0 64 4d 6f 64 65 56 61 72 69 61 62 6c 65 22 2c eb |dModeVariable",.| 000005e0 2c 35 20 b8 20 2c 2c 73 63 61 6c 65 25 21 32 38 |,5 . ,,scale%!28| 000005f0 0d 02 b2 2c 20 73 63 61 6c 65 25 21 33 32 3d 73 |..., scale%!32=s| 00000600 63 61 6c 65 25 21 32 34 3a 73 63 61 6c 65 25 21 |cale%!24:scale%!| 00000610 33 36 3d 73 63 61 6c 65 25 21 32 38 0d 02 bc 10 |36=scale%!28....| 00000620 20 69 6e 70 75 74 25 21 36 34 3d 30 0d 02 c6 14 | input%!64=0....| 00000630 20 f4 20 49 6e 74 65 72 6e 61 6c 20 66 6c 61 67 | . Internal flag| 00000640 0d 02 d0 11 20 69 6e 74 66 6c 61 67 25 3d 31 31 |.... intflag%=11| 00000650 32 0d 02 da 29 20 6d 65 6e 6e 6f 25 3d 30 3a 78 |2...) menno%=0:x| 00000660 73 74 25 3d 30 3a 79 73 74 25 3d 30 3a 78 65 64 |st%=0:yst%=0:xed| 00000670 25 3d 30 3a 79 65 64 25 3d 30 0d 02 e4 06 20 e1 |%=0:yed%=0.... .| 00000680 0d 02 ee 06 20 3a 0d 02 f8 0d 20 dd 20 f2 65 72 |.... :.... . .er| 00000690 72 6f 72 0d 03 02 0a 20 ee 20 85 20 87 0d 03 0c |ror.... . . ....| 000006a0 2a 20 c8 99 20 22 57 69 6d 70 5f 43 6c 6f 73 65 |* .. "Wimp_Close| 000006b0 44 6f 77 6e 22 2c 74 61 73 6b 68 61 6e 64 6c 65 |Down",taskhandle| 000006c0 25 2c 74 61 73 6b 25 0d 03 16 1e 20 85 20 a2 20 |%,task%.... . . | 000006d0 9f 2c f6 24 2b 22 20 61 74 20 6c 69 6e 65 20 22 |.,.$+" at line "| 000006e0 2b c3 28 9e 29 0d 03 20 06 20 e0 0d 03 2a 06 20 |+.(.).. . ...*. | 000006f0 3a 0d 03 34 10 20 dd 20 f2 74 65 6d 70 6c 61 74 |:..4. . .templat| 00000700 65 0d 03 3e 29 20 73 74 69 63 6e 25 3d 69 6e 64 |e..>) sticn%=ind| 00000710 69 72 25 3a 65 6e 69 63 6e 25 3d 69 6e 64 69 72 |ir%:enicn%=indir| 00000720 25 2b 69 6e 64 69 72 6c 6e 25 0d 03 48 32 20 c8 |%+indirln%..H2 .| 00000730 99 20 22 57 69 6d 70 5f 4f 70 65 6e 54 65 6d 70 |. "Wimp_OpenTemp| 00000740 6c 61 74 65 22 2c 2c 22 3c 4f 43 52 24 44 69 72 |late",,"<OCR$Dir| 00000750 3e 2e 54 65 6d 70 6c 61 74 65 73 22 0d 03 52 4c |>.Templates"..RL| 00000760 20 c8 99 20 22 57 69 6d 70 5f 4c 6f 61 64 54 65 | .. "Wimp_LoadTe| 00000770 6d 70 6c 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b |mplate",,block%+| 00000780 34 2c 73 74 69 63 6e 25 2c 65 6e 69 63 6e 25 2c |4,sticn%,enicn%,| 00000790 2d 31 2c 22 73 70 72 69 74 65 22 2c 30 20 b8 20 |-1,"sprite",0 . | 000007a0 2c 2c 73 74 69 63 6e 25 0d 03 5c 20 20 62 6c 6f |,,sticn%..\ blo| 000007b0 63 6b 25 21 34 34 3d 30 3a 62 6c 6f 63 6b 25 21 |ck%!44=0:block%!| 000007c0 34 38 3d 2d 68 67 74 25 0d 03 66 1f 20 62 6c 6f |48=-hgt%..f. blo| 000007d0 63 6b 25 21 35 32 3d 77 64 74 25 3a 62 6c 6f 63 |ck%!52=wdt%:bloc| 000007e0 6b 25 21 35 36 3d 30 0d 03 70 2f 20 c8 99 20 22 |k%!56=0..p/ .. "| 000007f0 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 6f |Wimp_CreateWindo| 00000800 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 20 b8 20 73 |w",,block%+4 . s| 00000810 70 72 77 69 6e 25 0d 03 7a 4a 20 c8 99 20 22 57 |prwin%..zJ .. "W| 00000820 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 6c 61 74 65 |imp_LoadTemplate| 00000830 22 2c 2c 62 6c 6f 63 6b 25 2b 34 2c 73 74 69 63 |",,block%+4,stic| 00000840 6e 25 2c 65 6e 69 63 6e 25 2c 2d 31 2c 22 74 65 |n%,enicn%,-1,"te| 00000850 78 74 22 2c 30 20 b8 20 2c 2c 73 74 69 63 6e 25 |xt",0 . ,,sticn%| 00000860 0d 03 84 2f 20 c8 99 20 22 57 69 6d 70 5f 43 72 |.../ .. "Wimp_Cr| 00000870 65 61 74 65 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f |eateWindow",,blo| 00000880 63 6b 25 2b 34 20 b8 20 74 78 74 77 69 6e 25 0d |ck%+4 . txtwin%.| 00000890 03 8e 4a 20 c8 99 20 22 57 69 6d 70 5f 4c 6f 61 |..J .. "Wimp_Loa| 000008a0 64 54 65 6d 70 6c 61 74 65 22 2c 2c 62 6c 6f 63 |dTemplate",,bloc| 000008b0 6b 25 2b 34 2c 73 74 69 63 6e 25 2c 65 6e 69 63 |k%+4,sticn%,enic| 000008c0 6e 25 2c 2d 31 2c 22 69 6e 66 6f 22 2c 30 20 b8 |n%,-1,"info",0 .| 000008d0 20 2c 2c 73 74 69 63 6e 25 0d 03 98 2f 20 c8 99 | ,,sticn%.../ ..| 000008e0 20 22 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e | "Wimp_CreateWin| 000008f0 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 20 b8 |dow",,block%+4 .| 00000900 20 69 6e 66 77 69 6e 25 0d 03 a2 4f 20 c8 99 20 | infwin%...O .. | 00000910 22 57 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 6c 61 |"Wimp_LoadTempla| 00000920 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 34 2c 73 74 |te",,block%+4,st| 00000930 69 63 6e 25 2c 65 6e 69 63 6e 25 2c 2d 31 2c 22 |icn%,enicn%,-1,"| 00000940 6d 61 67 6e 69 66 69 65 72 22 2c 30 20 b8 20 2c |magnifier",0 . ,| 00000950 2c 73 74 69 63 6e 25 0d 03 ac 2f 20 c8 99 20 22 |,sticn%.../ .. "| 00000960 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 6f |Wimp_CreateWindo| 00000970 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 20 b8 20 6d |w",,block%+4 . m| 00000980 61 67 77 69 6e 25 0d 03 b6 4b 20 c8 99 20 22 57 |agwin%...K .. "W| 00000990 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 6c 61 74 65 |imp_LoadTemplate| 000009a0 22 2c 2c 62 6c 6f 63 6b 25 2b 34 2c 73 74 69 63 |",,block%+4,stic| 000009b0 6e 25 2c 65 6e 69 63 6e 25 2c 2d 31 2c 22 74 73 |n%,enicn%,-1,"ts| 000009c0 61 76 65 22 2c 30 20 b8 20 2c 2c 73 74 69 63 6e |ave",0 . ,,sticn| 000009d0 25 0d 03 c0 2f 20 c8 99 20 22 57 69 6d 70 5f 43 |%.../ .. "Wimp_C| 000009e0 72 65 61 74 65 57 69 6e 64 6f 77 22 2c 2c 62 6c |reateWindow",,bl| 000009f0 6f 63 6b 25 2b 34 20 b8 20 74 73 76 77 69 6e 25 |ock%+4 . tsvwin%| 00000a00 0d 03 ca 4b 20 c8 99 20 22 57 69 6d 70 5f 4c 6f |...K .. "Wimp_Lo| 00000a10 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c 62 6c 6f |adTemplate",,blo| 00000a20 63 6b 25 2b 34 2c 73 74 69 63 6e 25 2c 65 6e 69 |ck%+4,sticn%,eni| 00000a30 63 6e 25 2c 2d 31 2c 22 6e 73 61 76 65 22 2c 30 |cn%,-1,"nsave",0| 00000a40 20 b8 20 2c 2c 73 74 69 63 6e 25 0d 03 d4 2f 20 | . ,,sticn%.../ | 00000a50 c8 99 20 22 57 69 6d 70 5f 43 72 65 61 74 65 57 |.. "Wimp_CreateW| 00000a60 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 |indow",,block%+4| 00000a70 20 b8 20 6e 73 76 77 69 6e 25 0d 03 de 4d 20 c8 | . nsvwin%...M .| 00000a80 99 20 22 57 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 |. "Wimp_LoadTemp| 00000a90 6c 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 34 2c |late",,block%+4,| 00000aa0 73 74 69 63 6e 25 2c 65 6e 69 63 6e 25 2c 2d 31 |sticn%,enicn%,-1| 00000ab0 2c 22 63 6f 6e 74 72 6f 6c 22 2c 30 20 b8 20 2c |,"control",0 . ,| 00000ac0 2c 73 74 69 63 6e 25 0d 03 e8 2f 20 c8 99 20 22 |,sticn%.../ .. "| 00000ad0 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 6f |Wimp_CreateWindo| 00000ae0 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 20 b8 20 63 |w",,block%+4 . c| 00000af0 6e 74 77 69 6e 25 0d 03 f2 4b 20 c8 99 20 22 57 |ntwin%...K .. "W| 00000b00 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 6c 61 74 65 |imp_LoadTemplate| 00000b10 22 2c 2c 62 6c 6f 63 6b 25 2b 34 2c 73 74 69 63 |",,block%+4,stic| 00000b20 6e 25 2c 65 6e 69 63 6e 25 2c 2d 31 2c 22 6c 69 |n%,enicn%,-1,"li| 00000b30 6d 69 74 22 2c 30 20 b8 20 2c 2c 73 74 69 63 6e |mit",0 . ,,sticn| 00000b40 25 0d 03 fc 2f 20 c8 99 20 22 57 69 6d 70 5f 43 |%.../ .. "Wimp_C| 00000b50 72 65 61 74 65 57 69 6e 64 6f 77 22 2c 2c 62 6c |reateWindow",,bl| 00000b60 6f 63 6b 25 2b 34 20 b8 20 6c 69 6d 77 69 6e 25 |ock%+4 . limwin%| 00000b70 0d 04 06 4b 20 c8 99 20 22 57 69 6d 70 5f 4c 6f |...K .. "Wimp_Lo| 00000b80 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c 62 6c 6f |adTemplate",,blo| 00000b90 63 6b 25 2b 34 2c 73 74 69 63 6e 25 2c 65 6e 69 |ck%+4,sticn%,eni| 00000ba0 63 6e 25 2c 2d 31 2c 22 74 72 61 69 6e 22 2c 30 |cn%,-1,"train",0| 00000bb0 20 b8 20 2c 2c 73 74 69 63 6e 25 0d 04 10 2f 20 | . ,,sticn%.../ | 00000bc0 c8 99 20 22 57 69 6d 70 5f 43 72 65 61 74 65 57 |.. "Wimp_CreateW| 00000bd0 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 |indow",,block%+4| 00000be0 20 b8 20 74 72 6e 77 69 6e 25 0d 04 1a 4d 20 c8 | . trnwin%...M .| 00000bf0 99 20 22 57 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 |. "Wimp_LoadTemp| 00000c00 6c 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 34 2c |late",,block%+4,| 00000c10 73 74 69 63 6e 25 2c 65 6e 69 63 6e 25 2c 2d 31 |sticn%,enicn%,-1| 00000c20 2c 22 6e 65 74 77 6f 72 6b 22 2c 30 20 b8 20 2c |,"network",0 . ,| 00000c30 2c 73 74 69 63 6e 25 0d 04 24 2f 20 c8 99 20 22 |,sticn%..$/ .. "| 00000c40 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 6f |Wimp_CreateWindo| 00000c50 77 22 2c 2c 62 6c 6f 63 6b 25 2b 34 20 b8 20 6e |w",,block%+4 . n| 00000c60 65 74 77 69 6e 25 0d 04 2e 1c 20 c8 99 20 22 57 |etwin%.... .. "W| 00000c70 69 6d 70 5f 43 6c 6f 73 65 54 65 6d 70 6c 61 74 |imp_CloseTemplat| 00000c80 65 22 0d 04 38 06 20 e1 0d 04 42 06 20 3a 0d 04 |e"..8. ...B. :..| 00000c90 4c 0d 20 dd 20 f2 69 63 6f 6e 73 0d 04 56 1f 20 |L. . .icons..V. | 00000ca0 21 62 6c 6f 63 6b 25 3d 69 6e 66 77 69 6e 25 3a |!block%=infwin%:| 00000cb0 62 6c 6f 63 6b 25 21 34 3d 34 0d 04 60 23 20 c8 |block%!4=4..`# .| 00000cc0 99 20 22 57 69 6d 70 5f 47 65 74 49 63 6f 6e 53 |. "Wimp_GetIconS| 00000cd0 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 04 6a |tate",,block%..j| 00000ce0 1a 20 69 63 6f 6e 74 78 74 25 28 30 29 3d 62 6c |. icontxt%(0)=bl| 00000cf0 6f 63 6b 25 21 32 38 0d 04 74 1b 20 24 28 62 6c |ock%!28..t. $(bl| 00000d00 6f 63 6b 25 21 32 38 29 3d 76 65 72 24 2b bd 28 |ock%!28)=ver$+.(| 00000d10 30 29 0d 04 7e 1f 20 21 62 6c 6f 63 6b 25 3d 6d |0)..~. !block%=m| 00000d20 61 67 77 69 6e 25 3a 62 6c 6f 63 6b 25 21 34 3d |agwin%:block%!4=| 00000d30 30 0d 04 88 23 20 c8 99 20 22 57 69 6d 70 5f 47 |0...# .. "Wimp_G| 00000d40 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c |etIconState",,bl| 00000d50 6f 63 6b 25 0d 04 92 1a 20 69 63 6f 6e 74 78 74 |ock%.... icontxt| 00000d60 25 28 31 29 3d 62 6c 6f 63 6b 25 21 32 38 0d 04 |%(1)=block%!28..| 00000d70 9c 23 20 24 28 62 6c 6f 63 6b 25 21 32 38 29 3d |.# $(block%!28)=| 00000d80 c3 28 73 63 61 6c 65 25 21 31 36 29 2b bd 28 30 |.(scale%!16)+.(0| 00000d90 29 0d 04 a6 0f 20 62 6c 6f 63 6b 25 21 34 3d 31 |).... block%!4=1| 00000da0 0d 04 b0 23 20 c8 99 20 22 57 69 6d 70 5f 47 65 |...# .. "Wimp_Ge| 00000db0 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c 6f |tIconState",,blo| 00000dc0 63 6b 25 0d 04 ba 1a 20 69 63 6f 6e 74 78 74 25 |ck%.... icontxt%| 00000dd0 28 32 29 3d 62 6c 6f 63 6b 25 21 32 38 0d 04 c4 |(2)=block%!28...| 00000de0 23 20 24 28 62 6c 6f 63 6b 25 21 32 38 29 3d c3 |# $(block%!28)=.| 00000df0 28 73 63 61 6c 65 25 21 32 30 29 2b bd 28 30 29 |(scale%!20)+.(0)| 00000e00 0d 04 ce 1f 20 21 62 6c 6f 63 6b 25 3d 74 73 76 |.... !block%=tsv| 00000e10 77 69 6e 25 3a 62 6c 6f 63 6b 25 21 34 3d 32 0d |win%:block%!4=2.| 00000e20 04 d8 23 20 c8 99 20 22 57 69 6d 70 5f 47 65 74 |..# .. "Wimp_Get| 00000e30 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c 6f 63 |IconState",,bloc| 00000e40 6b 25 0d 04 e2 1a 20 69 63 6f 6e 74 78 74 25 28 |k%.... icontxt%(| 00000e50 33 29 3d 62 6c 6f 63 6b 25 21 32 38 0d 04 ec 21 |3)=block%!28...!| 00000e60 20 24 28 62 6c 6f 63 6b 25 21 32 38 29 3d 22 54 | $(block%!28)="T| 00000e70 65 78 74 66 69 6c 65 22 2b bd 28 30 29 0d 04 f6 |extfile"+.(0)...| 00000e80 1f 20 21 62 6c 6f 63 6b 25 3d 6c 69 6d 77 69 6e |. !block%=limwin| 00000e90 25 3a 69 63 6e 62 73 65 25 3d 34 38 0d 05 00 12 |%:icnbse%=48....| 00000ea0 20 e3 20 69 63 6e 25 3d 30 20 b8 20 31 33 0d 05 | . icn%=0 . 13..| 00000eb0 0a 39 20 62 6c 6f 63 6b 25 21 34 3d 69 63 6e 25 |.9 block%!4=icn%| 00000ec0 2b 69 63 6e 62 73 65 25 3a c8 99 20 22 57 69 6d |+icnbse%:.. "Wim| 00000ed0 70 5f 47 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_GetIconState",| 00000ee0 2c 62 6c 6f 63 6b 25 0d 05 14 1f 20 69 63 6f 6e |,block%.... icon| 00000ef0 74 78 74 25 28 34 2b 69 63 6e 25 29 3d 62 6c 6f |txt%(4+icn%)=blo| 00000f00 63 6b 25 21 32 38 0d 05 1e 0b 20 ed 20 69 63 6e |ck%!28.... . icn| 00000f10 25 0d 05 28 1e 20 24 28 69 63 6f 6e 74 78 74 25 |%..(. $(icontxt%| 00000f20 28 31 36 29 29 3d 22 31 30 22 2b bd 28 30 29 0d |(16))="10"+.(0).| 00000f30 05 32 1f 20 24 28 69 63 6f 6e 74 78 74 25 28 31 |.2. $(icontxt%(1| 00000f40 37 29 29 3d 22 34 30 30 22 2b bd 28 30 29 0d 05 |7))="400"+.(0)..| 00000f50 3c 20 20 21 62 6c 6f 63 6b 25 3d 63 6e 74 77 69 |< !block%=cntwi| 00000f60 6e 25 3a 62 6c 6f 63 6b 25 21 34 3d 32 37 0d 05 |n%:block%!4=27..| 00000f70 46 23 20 c8 99 20 22 57 69 6d 70 5f 47 65 74 49 |F# .. "Wimp_GetI| 00000f80 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b |conState",,block| 00000f90 25 0d 05 50 1b 20 69 63 6f 6e 74 78 74 25 28 31 |%..P. icontxt%(1| 00000fa0 38 29 3d 62 6c 6f 63 6b 25 21 32 38 0d 05 5a 1f |8)=block%!28..Z.| 00000fb0 20 21 62 6c 6f 63 6b 25 3d 6e 73 76 77 69 6e 25 | !block%=nsvwin%| 00000fc0 3a 62 6c 6f 63 6b 25 21 34 3d 32 0d 05 64 23 20 |:block%!4=2..d# | 00000fd0 c8 99 20 22 57 69 6d 70 5f 47 65 74 49 63 6f 6e |.. "Wimp_GetIcon| 00000fe0 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 05 |State",,block%..| 00000ff0 6e 1b 20 69 63 6f 6e 74 78 74 25 28 31 39 29 3d |n. icontxt%(19)=| 00001000 62 6c 6f 63 6b 25 21 32 38 0d 05 78 20 20 24 28 |block%!28..x $(| 00001010 62 6c 6f 63 6b 25 21 32 38 29 3d 22 4e 65 74 46 |block%!28)="NetF| 00001020 69 6c 65 22 2b bd 28 30 29 0d 05 82 47 20 21 62 |ile"+.(0)...G !b| 00001030 6c 6f 63 6b 25 3d 6e 65 74 77 69 6e 25 3a 62 6c |lock%=netwin%:bl| 00001040 6f 63 6b 25 21 32 30 3d 26 30 37 30 30 30 31 30 |ock%!20=&0700010| 00001050 32 3a 62 6c 6f 63 6b 25 21 32 38 3d 73 70 72 69 |2:block%!28=spri| 00001060 74 65 25 3a 62 6c 6f 63 6b 25 21 33 32 3d 31 32 |te%:block%!32=12| 00001070 0d 05 8c 42 20 62 6c 6f 63 6b 25 21 34 3d 38 38 |...B block%!4=88| 00001080 3a 62 6c 6f 63 6b 25 21 38 3d 2d 34 38 2d 34 34 |:block%!8=-48-44| 00001090 2a 34 3a 62 6c 6f 63 6b 25 21 31 32 3d 38 38 2b |*4:block%!12=88+| 000010a0 38 34 2a 32 3a 62 6c 6f 63 6b 25 21 31 36 3d 2d |84*2:block%!16=-| 000010b0 34 38 0d 05 96 2e 20 62 6c 6f 63 6b 25 21 32 34 |48.... block%!24| 000010c0 3d 73 74 69 63 6e 25 3a 24 28 73 74 69 63 6e 25 |=sticn%:$(sticn%| 000010d0 29 3d 22 63 68 61 72 61 63 74 65 72 22 2b bd 30 |)="character"+.0| 000010e0 0d 05 a0 2b 20 c8 99 20 22 57 69 6d 70 5f 43 72 |...+ .. "Wimp_Cr| 000010f0 65 61 74 65 49 63 6f 6e 22 2c 2c 62 6c 6f 63 6b |eateIcon",,block| 00001100 25 20 b8 20 63 68 72 69 63 6e 25 0d 05 aa 45 20 |% . chricn%...E | 00001110 62 6c 6f 63 6b 25 21 34 3d 33 30 38 3a 62 6c 6f |block%!4=308:blo| 00001120 63 6b 25 21 38 3d 2d 34 38 2d 33 34 2a 34 3a 62 |ck%!8=-48-34*4:b| 00001130 6c 6f 63 6b 25 21 31 32 3d 33 30 38 2b 32 39 38 |lock%!12=308+298| 00001140 2a 32 3a 62 6c 6f 63 6b 25 21 31 36 3d 2d 33 32 |*2:block%!16=-32| 00001150 0d 05 b4 33 20 62 6c 6f 63 6b 25 21 32 34 3d 73 |...3 block%!24=s| 00001160 74 69 63 6e 25 2b 31 33 3a 24 28 73 74 69 63 6e |ticn%+13:$(sticn| 00001170 25 2b 31 33 29 3d 22 72 65 73 70 6f 6e 73 65 22 |%+13)="response"| 00001180 2b bd 30 0d 05 be 2b 20 c8 99 20 22 57 69 6d 70 |+.0...+ .. "Wimp| 00001190 5f 43 72 65 61 74 65 49 63 6f 6e 22 2c 2c 62 6c |_CreateIcon",,bl| 000011a0 6f 63 6b 25 20 b8 20 72 65 70 69 63 6e 25 0d 05 |ock% . repicn%..| 000011b0 c8 2f 20 62 6c 6f 63 6b 25 21 34 3d 31 30 3a c8 |./ block%!4=10:.| 000011c0 99 20 22 57 69 6d 70 5f 47 65 74 49 63 6f 6e 53 |. "Wimp_GetIconS| 000011d0 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 05 d2 |tate",,block%...| 000011e0 4a 20 69 63 6f 6e 74 78 74 25 28 32 30 29 3d 62 |J icontxt%(20)=b| 000011f0 6c 6f 63 6b 25 21 32 38 3a e3 20 63 68 72 25 3d |lock%!28:. chr%=| 00001200 30 20 b8 20 33 31 3a 3f 28 62 6c 6f 63 6b 25 21 |0 . 31:?(block%!| 00001210 32 38 2b 63 68 72 25 29 3d 33 33 2b 63 68 72 25 |28+chr%)=33+chr%| 00001220 3a ed 20 63 68 72 25 0d 05 dc 06 20 e1 0d 05 e6 |:. chr%.... ....| 00001230 06 20 3a 0d 05 f0 0f 20 dd 20 a4 69 63 6f 6e 62 |. :.... . .iconb| 00001240 61 72 0d 05 fa 1a 20 21 62 6c 6f 63 6b 25 3d 2d |ar.... !block%=-| 00001250 31 3a 62 6c 6f 63 6b 25 21 34 3d 30 0d 06 04 1c |1:block%!4=0....| 00001260 20 62 6c 6f 63 6b 25 21 38 3d 30 3a 62 6c 6f 63 | block%!8=0:bloc| 00001270 6b 25 21 31 32 3d 36 38 0d 06 0e 11 20 62 6c 6f |k%!12=68.... blo| 00001280 63 6b 25 21 31 36 3d 36 38 0d 06 18 11 20 62 6c |ck%!16=68.... bl| 00001290 6f 63 6b 25 21 31 32 3d 36 38 0d 06 22 14 20 62 |ock%!12=68..". b| 000012a0 6c 6f 63 6b 25 21 32 30 3d 26 32 30 30 32 0d 06 |lock%!20=&2002..| 000012b0 2c 1b 20 24 28 62 6c 6f 63 6b 25 2b 32 34 29 3d |,. $(block%+24)=| 000012c0 22 21 73 63 72 69 62 65 22 0d 06 36 29 20 c8 99 |"!scribe"..6) ..| 000012d0 20 22 57 69 6d 70 5f 43 72 65 61 74 65 49 63 6f | "Wimp_CreateIco| 000012e0 6e 22 2c 2c 62 6c 6f 63 6b 25 20 b8 20 69 63 6f |n",,block% . ico| 000012f0 6e 25 0d 06 40 0b 20 3d 69 63 6f 6e 25 0d 06 4a |n%..@. =icon%..J| 00001300 06 20 3a 0d 06 54 0c 20 dd 20 f2 70 6f 6c 6c 0d |. :..T. . .poll.| 00001310 06 5e 16 20 69 63 6f 6e 62 61 72 25 3d a4 69 63 |.^. iconbar%=.ic| 00001320 6f 6e 62 61 72 0d 06 68 06 20 f5 0d 06 72 2e 20 |onbar..h. ...r. | 00001330 c8 99 20 22 57 69 6d 70 5f 50 6f 6c 6c 22 2c 26 |.. "Wimp_Poll",&| 00001340 46 46 46 39 46 30 30 30 2c 62 6c 6f 63 6b 25 20 |FFF9F000,block% | 00001350 b8 20 72 65 61 73 6f 6e 25 0d 06 7c 11 20 c8 8e |. reason%..|. ..| 00001360 20 72 65 61 73 6f 6e 25 20 ca 0d 06 86 2f 20 c9 | reason% ..../ .| 00001370 20 31 3a c8 99 20 22 57 69 6d 70 5f 52 65 64 72 | 1:.. "Wimp_Redr| 00001380 61 77 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b |awWindow",,block| 00001390 25 20 b8 20 66 6c 61 67 25 0d 06 90 26 20 e7 20 |% . flag%...& . | 000013a0 21 62 6c 6f 63 6b 25 3d 73 70 72 77 69 6e 25 20 |!block%=sprwin% | 000013b0 8c 20 f2 72 65 64 72 61 77 73 70 72 69 74 65 0d |. .redrawsprite.| 000013c0 06 9a 24 20 e7 20 21 62 6c 6f 63 6b 25 3d 74 78 |..$ . !block%=tx| 000013d0 74 77 69 6e 25 20 8c 20 f2 72 65 64 72 61 77 74 |twin% . .redrawt| 000013e0 65 78 74 0d 06 a4 25 20 c9 20 32 3a c8 99 20 22 |ext...% . 2:.. "| 000013f0 57 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 |Wimp_OpenWindow"| 00001400 2c 2c 62 6c 6f 63 6b 25 0d 06 ae 06 20 cd 0d 06 |,,block%.... ...| 00001410 b8 26 20 c9 20 33 3a c8 99 20 22 57 69 6d 70 5f |.& . 3:.. "Wimp_| 00001420 43 6c 6f 73 65 57 69 6e 64 6f 77 22 2c 2c 62 6c |CloseWindow",,bl| 00001430 6f 63 6b 25 0d 06 c2 33 20 e7 20 21 62 6c 6f 63 |ock%...3 . !bloc| 00001440 6b 25 3d 6e 65 74 77 69 6e 25 20 8c 20 69 6e 74 |k%=netwin% . int| 00001450 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 80 |flag%=intflag% .| 00001460 20 ac 20 31 30 32 34 0d 06 cc 40 20 c9 20 34 3a | . 1024...@ . 4:| 00001470 e7 20 21 62 6c 6f 63 6b 25 3d 73 70 72 77 69 6e |. !block%=sprwin| 00001480 25 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 20 |% . (intflag% . | 00001490 32 30 34 38 29 3d 32 30 34 38 20 8c 20 2a 50 4f |2048)=2048 . *PO| 000014a0 49 4e 54 45 52 20 31 0d 06 d6 73 20 c9 20 35 3a |INTER 1...s . 5:| 000014b0 e7 20 21 62 6c 6f 63 6b 25 3d 73 70 72 77 69 6e |. !block%=sprwin| 000014c0 25 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 20 |% . (intflag% . | 000014d0 32 30 34 38 29 3d 32 30 34 38 20 8c 20 c8 99 20 |2048)=2048 . .. | 000014e0 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c 32 35 |"OS_SpriteOp",25| 000014f0 36 2b 33 36 2c 73 70 72 69 74 65 25 2c 22 70 74 |6+36,sprite%,"pt| 00001500 72 5f 63 72 6f 73 73 22 2c 33 36 2c 39 2c 35 3a |r_cross",36,9,5:| 00001510 2a 50 4f 49 4e 54 45 52 20 32 0d 06 e0 0f 20 c9 |*POINTER 2.... .| 00001520 20 36 3a f2 63 6c 69 63 6b 0d 06 ea 0e 20 c9 20 | 6:.click.... . | 00001530 37 3a f2 64 72 61 67 0d 06 f4 12 20 c9 20 38 3a |7:.drag.... . 8:| 00001540 f2 6b 65 79 70 72 65 73 73 0d 06 fe 14 20 c9 20 |.keypress.... . | 00001550 39 3a f2 6d 65 6e 75 73 65 6c 65 63 74 0d 07 08 |9:.menuselect...| 00001560 15 20 c9 20 31 37 2c 31 38 3a f2 6d 65 73 73 61 |. . 17,18:.messa| 00001570 67 65 0d 07 12 16 20 c9 20 31 39 3a f2 61 63 6b |ge.... . 19:.ack| 00001580 6e 6f 77 6c 65 64 67 65 0d 07 1c 06 20 7f 0d 07 |nowledge.... ...| 00001590 26 1a 20 e7 20 28 69 6e 74 66 6c 61 67 25 20 80 |&. . (intflag% .| 000015a0 20 31 32 29 3d 34 20 8c 0d 07 30 35 20 e7 20 28 | 12)=4 ...05 . (| 000015b0 69 6e 74 66 6c 61 67 25 20 80 20 38 31 39 32 29 |intflag% . 8192)| 000015c0 3d 38 31 39 32 20 8c 20 69 6e 74 66 6c 61 67 25 |=8192 . intflag%| 000015d0 3d 69 6e 74 66 6c 61 67 25 20 84 20 38 0d 07 3a |=intflag% . 8..:| 000015e0 0f 20 d6 20 73 63 61 6e 6c 69 6e 65 0d 07 44 0d |. . scanline..D.| 000015f0 20 f2 65 78 74 72 61 63 74 0d 07 4e 0e 20 f2 69 | .extract..N. .i| 00001600 64 65 6e 74 69 66 79 0d 07 58 21 20 e7 20 28 69 |dentify..X! . (i| 00001610 6e 74 66 6c 61 67 25 20 80 20 31 32 29 3d 30 3a |ntflag% . 12)=0:| 00001620 f2 62 75 74 74 6f 6e 73 0d 07 62 28 20 e7 20 28 |.buttons..b( . (| 00001630 69 6e 74 66 6c 61 67 25 20 80 20 38 31 39 32 29 |intflag% . 8192)| 00001640 3d 38 31 39 32 20 8c 20 f2 62 75 74 74 6f 6e 73 |=8192 . .buttons| 00001650 0d 07 6c 06 20 cd 0d 07 76 24 20 e7 20 28 69 6e |..l. ...v$ . (in| 00001660 74 66 6c 61 67 25 20 80 20 32 35 36 29 3d 32 35 |tflag% . 256)=25| 00001670 36 20 8c 20 f2 74 72 61 69 6e 0d 07 80 1f 20 e7 |6 . .train.... .| 00001680 20 28 69 6e 74 66 6c 61 67 25 20 80 20 36 31 34 | (intflag% . 614| 00001690 34 29 3d 36 31 34 34 20 8c 0d 07 8a 25 20 c8 99 |4)=6144 ....% ..| 000016a0 20 22 57 69 6d 70 5f 47 65 74 50 6f 69 6e 74 65 | "Wimp_GetPointe| 000016b0 72 49 6e 66 6f 22 2c 2c 62 6c 6f 63 6b 25 0d 07 |rInfo",,block%..| 000016c0 94 33 20 78 70 6e 74 25 3d 21 62 6c 6f 63 6b 25 |.3 xpnt%=!block%| 000016d0 3a 79 70 6e 74 25 3d 62 6c 6f 63 6b 25 21 34 3a |:ypnt%=block%!4:| 000016e0 77 69 6e 64 6f 77 25 3d 62 6c 6f 63 6b 25 21 31 |window%=block%!1| 000016f0 32 0d 07 9e 35 20 21 62 6c 6f 63 6b 25 3d 73 70 |2...5 !block%=sp| 00001700 72 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 |rwin%:.. "Wimp_G| 00001710 65 74 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c |etWindowState",,| 00001720 62 6c 6f 63 6b 25 0d 07 a8 39 20 78 70 6e 74 25 |block%...9 xpnt%| 00001730 3d 28 78 70 6e 74 25 2d 62 6c 6f 63 6b 25 21 34 |=(xpnt%-block%!4| 00001740 2b 62 6c 6f 63 6b 25 21 32 30 29 2a 73 63 61 6c |+block%!20)*scal| 00001750 65 25 21 32 30 2f 73 63 61 6c 65 25 21 31 36 0d |e%!20/scale%!16.| 00001760 07 b2 3f 20 79 70 6e 74 25 3d 28 79 70 6e 74 25 |..? ypnt%=(ypnt%| 00001770 2d 62 6c 6f 63 6b 25 21 31 36 2b 62 6c 6f 63 6b |-block%!16+block| 00001780 25 21 32 34 2b 68 67 74 25 29 2a 73 63 61 6c 65 |%!24+hgt%)*scale| 00001790 25 21 32 30 2f 73 63 61 6c 65 25 21 31 36 0d 07 |%!20/scale%!16..| 000017a0 bc 5c 20 e7 20 28 78 70 6e 74 25 3c 3e 78 65 64 |.\ . (xpnt%<>xed| 000017b0 25 20 84 20 79 70 6e 74 25 3c 3e 79 65 64 25 29 |% . ypnt%<>yed%)| 000017c0 20 80 20 77 69 6e 64 6f 77 25 3d 73 70 72 77 69 | . window%=sprwi| 000017d0 6e 25 20 8c 20 f2 72 75 62 62 65 72 3a 78 65 64 |n% . .rubber:xed| 000017e0 25 3d 78 70 6e 74 25 3a 79 65 64 25 3d 79 70 6e |%=xpnt%:yed%=ypn| 000017f0 74 25 3a f2 72 75 62 62 65 72 0d 07 c6 06 20 cd |t%:.rubber.... .| 00001800 0d 07 d0 06 20 cb 0d 07 da 08 20 fd 20 a3 0d 07 |.... ..... . ...| 00001810 e4 06 20 e1 0d 07 ee 06 20 3a 0d 07 f8 12 20 dd |.. ..... :.... .| 00001820 20 f2 6d 65 6e 75 73 65 6c 65 63 74 0d 08 02 45 | .menuselect...E| 00001830 20 e7 20 6d 65 6e 6e 6f 25 3d 30 20 80 20 21 62 | . menno%=0 . !b| 00001840 6c 6f 63 6b 25 3d 31 20 8c 20 c8 99 20 22 57 69 |lock%=1 . .. "Wi| 00001850 6d 70 5f 43 6c 6f 73 65 44 6f 77 6e 22 2c 74 61 |mp_CloseDown",ta| 00001860 73 6b 68 61 6e 64 6c 65 25 2c 74 61 73 6b 25 3a |skhandle%,task%:| 00001870 e0 0d 08 0c 53 20 e7 20 6d 65 6e 6e 6f 25 3d 31 |....S . menno%=1| 00001880 20 80 20 21 62 6c 6f 63 6b 25 3d 32 20 8c 20 d6 | . !block%=2 . .| 00001890 20 69 6e 76 65 72 74 3a c8 99 20 22 57 69 6d 70 | invert:.. "Wimp| 000018a0 5f 46 6f 72 63 65 52 65 64 72 61 77 22 2c 73 70 |_ForceRedraw",sp| 000018b0 72 77 69 6e 25 2c 30 2c 2d 68 67 74 25 2c 77 64 |rwin%,0,-hgt%,wd| 000018c0 74 25 2c 30 0d 08 16 1d 20 e7 20 6d 65 6e 6e 6f |t%,0.... . menno| 000018d0 25 3d 31 20 80 20 21 62 6c 6f 63 6b 25 3d 33 20 |%=1 . !block%=3 | 000018e0 8c 0d 08 20 45 20 69 6e 74 66 6c 61 67 25 3d 69 |... E intflag%=i| 000018f0 6e 74 66 6c 61 67 25 20 84 20 32 30 34 38 3a f2 |ntflag% . 2048:.| 00001900 63 6c 61 69 6d 28 68 65 61 70 25 2b 32 34 2c 34 |claim(heap%+24,4| 00001910 2c 63 6c 61 69 6d 25 29 3a 21 28 68 65 61 70 25 |,claim%):!(heap%| 00001920 21 32 34 29 3d 30 0d 08 2a 31 20 c8 99 20 22 57 |!24)=0..*1 .. "W| 00001930 69 6d 70 5f 46 6f 72 63 65 52 65 64 72 61 77 22 |imp_ForceRedraw"| 00001940 2c 73 70 72 77 69 6e 25 2c 30 2c 2d 68 67 74 25 |,sprwin%,0,-hgt%| 00001950 2c 77 64 74 25 2c 30 0d 08 34 06 20 cd 0d 08 3e |,wdt%,0..4. ...>| 00001960 22 20 e7 20 6d 65 6e 6e 6f 25 3d 33 20 80 20 21 |" . menno%=3 . !| 00001970 62 6c 6f 63 6b 25 3d 31 20 8c 20 f2 6e 65 77 0d |block%=1 . .new.| 00001980 08 48 1d 20 e7 20 6d 65 6e 6e 6f 25 3d 33 20 80 |.H. . menno%=3 .| 00001990 20 21 62 6c 6f 63 6b 25 3d 32 20 8c 0d 08 52 4e | !block%=2 ...RN| 000019a0 20 69 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 | intflag%=intfla| 000019b0 67 25 20 84 20 31 30 32 34 3a 21 62 6c 6f 63 6b |g% . 1024:!block| 000019c0 25 3d 6e 65 74 77 69 6e 25 3a c8 99 20 22 57 69 |%=netwin%:.. "Wi| 000019d0 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 |mp_GetWindowStat| 000019e0 65 22 2c 2c 62 6c 6f 63 6b 25 0d 08 5c 21 20 c8 |e",,block%..\! .| 000019f0 99 20 22 57 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 |. "Wimp_OpenWind| 00001a00 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 08 66 06 20 |ow",,block%..f. | 00001a10 cd 0d 08 70 06 20 e1 0d 08 7a 06 20 3a 0d 08 84 |...p. ...z. :...| 00001a20 0d 20 dd 20 f2 63 6c 69 63 6b 0d 08 8e 12 20 78 |. . .click.... x| 00001a30 70 6e 74 25 3d 21 62 6c 6f 63 6b 25 0d 08 98 13 |pnt%=!block%....| 00001a40 20 79 70 6e 74 25 3d 62 6c 6f 63 6b 25 21 34 0d | ypnt%=block%!4.| 00001a50 08 a2 13 20 62 75 74 6e 25 3d 62 6c 6f 63 6b 25 |... butn%=block%| 00001a60 21 38 0d 08 ac 16 20 77 69 6e 64 6f 77 25 3d 62 |!8.... window%=b| 00001a70 6c 6f 63 6b 25 21 31 32 0d 08 b6 14 20 69 63 6f |lock%!12.... ico| 00001a80 6e 25 3d 62 6c 6f 63 6b 25 21 31 36 0d 08 c0 06 |n%=block%!16....| 00001a90 20 3a 0d 08 ca 11 20 c8 8e 20 77 69 6e 64 6f 77 | :.... .. window| 00001aa0 25 20 ca 0d 08 d4 09 20 c9 20 2d 32 0d 08 de 2c |% ..... . -2...,| 00001ab0 20 e7 20 20 62 75 74 6e 25 3d 32 20 80 20 69 63 | . butn%=2 . ic| 00001ac0 6f 6e 25 3d 69 63 6f 6e 62 61 72 25 20 8c 20 f2 |on%=iconbar% . .| 00001ad0 69 63 6f 6e 6d 65 6e 75 0d 08 e8 22 20 e7 20 20 |iconmenu..." . | 00001ae0 62 75 74 6e 25 3d 34 20 80 20 69 63 6f 6e 25 3d |butn%=4 . icon%=| 00001af0 69 63 6f 6e 62 61 72 25 20 8c 0d 08 f2 35 20 21 |iconbar% ....5 !| 00001b00 62 6c 6f 63 6b 25 3d 73 70 72 77 69 6e 25 3a c8 |block%=sprwin%:.| 00001b10 99 20 22 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f |. "Wimp_GetWindo| 00001b20 77 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d |wState",,block%.| 00001b30 08 fc 21 20 c8 99 20 22 57 69 6d 70 5f 4f 70 65 |..! .. "Wimp_Ope| 00001b40 6e 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 |nWindow",,block%| 00001b50 0d 09 06 35 20 21 62 6c 6f 63 6b 25 3d 74 78 74 |...5 !block%=txt| 00001b60 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 65 |win%:.. "Wimp_Ge| 00001b70 74 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 |tWindowState",,b| 00001b80 6c 6f 63 6b 25 0d 09 10 21 20 c8 99 20 22 57 69 |lock%...! .. "Wi| 00001b90 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c 2c |mp_OpenWindow",,| 00001ba0 62 6c 6f 63 6b 25 0d 09 1a 35 20 21 62 6c 6f 63 |block%...5 !bloc| 00001bb0 6b 25 3d 63 6e 74 77 69 6e 25 3a c8 99 20 22 57 |k%=cntwin%:.. "W| 00001bc0 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 |imp_GetWindowSta| 00001bd0 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 09 24 21 20 |te",,block%..$! | 00001be0 c8 99 20 22 57 69 6d 70 5f 4f 70 65 6e 57 69 6e |.. "Wimp_OpenWin| 00001bf0 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 09 2e 06 |dow",,block%....| 00001c00 20 cd 0d 09 38 0e 20 c9 20 74 73 76 77 69 6e 25 | ...8. . tsvwin%| 00001c10 0d 09 42 1a 20 e7 20 69 63 6f 6e 25 3d 30 20 80 |..B. . icon%=0 .| 00001c20 20 62 75 74 6e 25 3d 34 20 8c 0d 09 4c 30 20 da | butn%=4 ...L0 .| 00001c30 3a e6 20 37 3a c8 93 20 c8 90 20 30 2c 30 2c 73 |:. 7:.. .. 0,0,s| 00001c40 74 61 74 65 25 21 28 34 2a 36 34 29 2f 28 31 3c |tate%!(4*64)/(1<| 00001c50 3c 70 6e 74 25 29 2a 31 32 37 0d 09 56 0e 20 e7 |<pnt%)*127..V. .| 00001c60 20 73 61 76 65 25 20 8c 0d 09 60 34 20 21 62 6c | save% ...`4 !bl| 00001c70 6f 63 6b 25 3d 62 6c 6f 63 6b 25 21 31 32 3a c8 |ock%=block%!12:.| 00001c80 99 20 22 57 69 6d 70 5f 43 6c 6f 73 65 57 69 6e |. "Wimp_CloseWin| 00001c90 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 09 6a 1d |dow",,block%..j.| 00001ca0 20 c8 99 20 22 57 69 6d 70 5f 43 72 65 61 74 65 | .. "Wimp_Create| 00001cb0 4d 65 6e 75 22 2c 2c 2d 31 0d 09 74 06 20 cd 0d |Menu",,-1..t. ..| 00001cc0 09 7e 06 20 cd 0d 09 88 22 20 e7 20 69 63 6f 6e |.~. ...." . icon| 00001cd0 25 3d 33 20 80 20 28 62 75 74 6e 25 20 80 20 31 |%=3 . (butn% . 1| 00001ce0 31 32 29 3e 30 20 8c 0d 09 92 3d 20 21 62 6c 6f |12)>0 ....= !blo| 00001cf0 63 6b 25 3d 62 6c 6f 63 6b 25 21 31 32 3a 62 6c |ck%=block%!12:bl| 00001d00 6f 63 6b 25 21 34 30 3d 62 6c 6f 63 6b 25 21 31 |ock%!40=block%!1| 00001d10 32 3a 62 6c 6f 63 6b 25 21 34 3d 62 6c 6f 63 6b |2:block%!4=block| 00001d20 25 21 31 36 0d 09 9c 23 20 c8 99 20 22 57 69 6d |%!16...# .. "Wim| 00001d30 70 5f 47 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_GetIconState",| 00001d40 2c 62 6c 6f 63 6b 25 0d 09 a6 28 20 c8 99 20 22 |,block%...( .. "| 00001d50 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 |Wimp_GetWindowSt| 00001d60 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 34 30 0d |ate",,block%+40.| 00001d70 09 b0 38 20 62 6c 6f 63 6b 25 21 34 3d 35 3a 62 |..8 block%!4=5:b| 00001d80 6c 6f 63 6b 25 21 38 2b 3d 62 6c 6f 63 6b 25 21 |lock%!8+=block%!| 00001d90 34 34 3a 62 6c 6f 63 6b 25 21 31 32 2b 3d 62 6c |44:block%!12+=bl| 00001da0 6f 63 6b 25 21 35 36 0d 09 ba 2e 20 62 6c 6f 63 |ock%!56.... bloc| 00001db0 6b 25 21 31 36 2b 3d 62 6c 6f 63 6b 25 21 34 34 |k%!16+=block%!44| 00001dc0 3a 62 6c 6f 63 6b 25 21 32 30 2b 3d 62 6c 6f 63 |:block%!20+=bloc| 00001dd0 6b 25 21 35 36 0d 09 c4 44 20 62 6c 6f 63 6b 25 |k%!56...D block%| 00001de0 21 32 34 3d 30 3a 62 6c 6f 63 6b 25 21 32 38 3d |!24=0:block%!28=| 00001df0 30 3a 62 6c 6f 63 6b 25 21 33 32 3d 26 37 46 46 |0:block%!32=&7FF| 00001e00 46 46 46 46 46 3a 62 6c 6f 63 6b 25 21 33 36 3d |FFFFF:block%!36=| 00001e10 26 37 46 46 46 46 46 46 46 0d 09 ce 1e 20 c8 99 |&7FFFFFFF.... ..| 00001e20 20 22 57 69 6d 70 5f 44 72 61 67 42 6f 78 22 2c | "Wimp_DragBox",| 00001e30 2c 62 6c 6f 63 6b 25 0d 09 d8 1a 20 69 6e 74 66 |,block%.... intf| 00001e40 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 84 20 |lag%=intflag% . | 00001e50 31 0d 09 e2 06 20 cd 0d 09 ec 0e 20 c9 20 6e 73 |1.... ..... . ns| 00001e60 76 77 69 6e 25 0d 09 f6 1a 20 e7 20 69 63 6f 6e |vwin%.... . icon| 00001e70 25 3d 30 20 80 20 62 75 74 6e 25 3d 34 20 8c 0d |%=0 . butn%=4 ..| 00001e80 0a 00 28 20 f2 73 61 76 65 28 66 69 6c 65 74 79 |..( .save(filety| 00001e90 70 65 25 2c 69 63 6f 6e 74 78 74 25 28 31 39 29 |pe%,icontxt%(19)| 00001ea0 2c 73 61 76 65 25 29 0d 0a 0a 0e 20 e7 20 73 61 |,save%).... . sa| 00001eb0 76 65 25 20 8c 0d 0a 14 34 20 21 62 6c 6f 63 6b |ve% ....4 !block| 00001ec0 25 3d 62 6c 6f 63 6b 25 21 31 32 3a c8 99 20 22 |%=block%!12:.. "| 00001ed0 57 69 6d 70 5f 43 6c 6f 73 65 57 69 6e 64 6f 77 |Wimp_CloseWindow| 00001ee0 22 2c 2c 62 6c 6f 63 6b 25 0d 0a 1e 1d 20 c8 99 |",,block%.... ..| 00001ef0 20 22 57 69 6d 70 5f 43 72 65 61 74 65 4d 65 6e | "Wimp_CreateMen| 00001f00 75 22 2c 2c 2d 31 0d 0a 28 06 20 cd 0d 0a 32 06 |u",,-1..(. ...2.| 00001f10 20 cd 0d 0a 3c 22 20 e7 20 69 63 6f 6e 25 3d 33 | ...<" . icon%=3| 00001f20 20 80 20 28 62 75 74 6e 25 20 80 20 31 31 32 29 | . (butn% . 112)| 00001f30 3e 30 20 8c 0d 0a 46 3d 20 21 62 6c 6f 63 6b 25 |>0 ...F= !block%| 00001f40 3d 62 6c 6f 63 6b 25 21 31 32 3a 62 6c 6f 63 6b |=block%!12:block| 00001f50 25 21 34 30 3d 62 6c 6f 63 6b 25 21 31 32 3a 62 |%!40=block%!12:b| 00001f60 6c 6f 63 6b 25 21 34 3d 62 6c 6f 63 6b 25 21 31 |lock%!4=block%!1| 00001f70 36 0d 0a 50 23 20 c8 99 20 22 57 69 6d 70 5f 47 |6..P# .. "Wimp_G| 00001f80 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c |etIconState",,bl| 00001f90 6f 63 6b 25 0d 0a 5a 28 20 c8 99 20 22 57 69 6d |ock%..Z( .. "Wim| 00001fa0 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 65 |p_GetWindowState| 00001fb0 22 2c 2c 62 6c 6f 63 6b 25 2b 34 30 0d 0a 64 38 |",,block%+40..d8| 00001fc0 20 62 6c 6f 63 6b 25 21 34 3d 35 3a 62 6c 6f 63 | block%!4=5:bloc| 00001fd0 6b 25 21 38 2b 3d 62 6c 6f 63 6b 25 21 34 34 3a |k%!8+=block%!44:| 00001fe0 62 6c 6f 63 6b 25 21 31 32 2b 3d 62 6c 6f 63 6b |block%!12+=block| 00001ff0 25 21 35 36 0d 0a 6e 2e 20 62 6c 6f 63 6b 25 21 |%!56..n. block%!| 00002000 31 36 2b 3d 62 6c 6f 63 6b 25 21 34 34 3a 62 6c |16+=block%!44:bl| 00002010 6f 63 6b 25 21 32 30 2b 3d 62 6c 6f 63 6b 25 21 |ock%!20+=block%!| 00002020 35 36 0d 0a 78 44 20 62 6c 6f 63 6b 25 21 32 34 |56..xD block%!24| 00002030 3d 30 3a 62 6c 6f 63 6b 25 21 32 38 3d 30 3a 62 |=0:block%!28=0:b| 00002040 6c 6f 63 6b 25 21 33 32 3d 26 37 46 46 46 46 46 |lock%!32=&7FFFFF| 00002050 46 46 3a 62 6c 6f 63 6b 25 21 33 36 3d 26 37 46 |FF:block%!36=&7F| 00002060 46 46 46 46 46 46 0d 0a 82 1e 20 c8 99 20 22 57 |FFFFFF.... .. "W| 00002070 69 6d 70 5f 44 72 61 67 42 6f 78 22 2c 2c 62 6c |imp_DragBox",,bl| 00002080 6f 63 6b 25 0d 0a 8c 1c 20 69 6e 74 66 6c 61 67 |ock%.... intflag| 00002090 25 3d 69 6e 74 66 6c 61 67 25 20 84 20 31 32 38 |%=intflag% . 128| 000020a0 0d 0a 96 06 20 cd 0d 0a a0 0e 20 c9 20 73 70 72 |.... ..... . spr| 000020b0 77 69 6e 25 0d 0a aa 29 20 e7 20 62 75 74 6e 25 |win%...) . butn%| 000020c0 3d 34 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 |=4 . (intflag% .| 000020d0 20 36 31 34 34 29 3d 36 31 34 34 20 8c 0d 0a b4 | 6144)=6144 ....| 000020e0 0f 20 2a 50 4f 49 4e 54 45 52 20 31 0d 0a be 0c |. *POINTER 1....| 000020f0 20 f2 72 6f 74 61 74 65 0d 0a c8 1f 20 69 6e 74 | .rotate.... int| 00002100 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 80 |flag%=intflag% .| 00002110 20 ac 20 36 31 34 34 0d 0a d2 35 20 21 62 6c 6f | . 6144...5 !blo| 00002120 63 6b 25 3d 73 70 72 77 69 6e 25 3a c8 99 20 22 |ck%=sprwin%:.. "| 00002130 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 |Wimp_GetWindowSt| 00002140 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 0a dc 21 |ate",,block%...!| 00002150 20 c8 99 20 22 57 69 6d 70 5f 4f 70 65 6e 57 69 | .. "Wimp_OpenWi| 00002160 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 0a e6 |ndow",,block%...| 00002170 31 20 c8 99 20 22 57 69 6d 70 5f 46 6f 72 63 65 |1 .. "Wimp_Force| 00002180 52 65 64 72 61 77 22 2c 73 70 72 77 69 6e 25 2c |Redraw",sprwin%,| 00002190 30 2c 2d 68 67 74 25 2c 77 64 74 25 2c 30 0d 0a |0,-hgt%,wdt%,0..| 000021a0 f0 06 20 cd 0d 0a fa 29 20 e7 20 62 75 74 6e 25 |.. ....) . butn%| 000021b0 3d 34 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 |=4 . (intflag% .| 000021c0 20 36 31 34 34 29 3d 32 30 34 38 20 8c 0d 0b 04 | 6144)=2048 ....| 000021d0 37 20 21 62 6c 6f 63 6b 25 3d 62 6c 6f 63 6b 25 |7 !block%=block%| 000021e0 21 31 32 3a c8 99 20 22 57 69 6d 70 5f 47 65 74 |!12:.. "Wimp_Get| 000021f0 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 6c |WindowState",,bl| 00002200 6f 63 6b 25 0d 0b 0e 72 20 78 73 74 25 3d 28 78 |ock%...r xst%=(x| 00002210 70 6e 74 25 2d 62 6c 6f 63 6b 25 21 34 2b 62 6c |pnt%-block%!4+bl| 00002220 6f 63 6b 25 21 32 30 29 2a 73 63 61 6c 65 25 21 |ock%!20)*scale%!| 00002230 32 30 2f 73 63 61 6c 65 25 21 31 36 3a 79 73 74 |20/scale%!16:yst| 00002240 25 3d 28 79 70 6e 74 25 2d 62 6c 6f 63 6b 25 21 |%=(ypnt%-block%!| 00002250 31 36 2b 62 6c 6f 63 6b 25 21 32 34 2b 68 67 74 |16+block%!24+hgt| 00002260 25 29 2a 73 63 61 6c 65 25 21 32 30 2f 73 63 61 |%)*scale%!20/sca| 00002270 6c 65 25 21 31 36 0d 0b 18 18 20 78 65 64 25 3d |le%!16.... xed%=| 00002280 78 73 74 25 3a 79 65 64 25 3d 79 73 74 25 0d 0b |xst%:yed%=yst%..| 00002290 22 25 20 f2 72 75 62 62 65 72 3a 69 6e 74 66 6c |"% .rubber:intfl| 000022a0 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 84 20 34 |ag%=intflag% . 4| 000022b0 30 39 36 0d 0b 2c 06 20 cd 0d 0b 36 29 20 e7 20 |096..,. ...6) . | 000022c0 62 75 74 6e 25 3d 31 20 80 20 28 69 6e 74 66 6c |butn%=1 . (intfl| 000022d0 61 67 25 20 80 20 32 30 34 38 29 3d 32 30 34 38 |ag% . 2048)=2048| 000022e0 20 8c 0d 0b 40 27 20 f2 72 75 62 62 65 72 3a 69 | ...@' .rubber:i| 000022f0 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 |ntflag%=intflag%| 00002300 20 80 20 ac 20 36 31 34 34 0d 0b 4a 0f 20 2a 50 | . . 6144..J. *P| 00002310 4f 49 4e 54 45 52 20 31 0d 0b 54 06 20 cd 0d 0b |OINTER 1..T. ...| 00002320 5e 1c 20 e7 20 62 75 74 6e 25 3d 32 20 8c 20 f2 |^. . butn%=2 . .| 00002330 73 70 72 69 74 65 6d 65 6e 75 0d 0b 68 38 20 e7 |spritemenu..h8 .| 00002340 20 62 75 74 6e 25 3d 36 34 20 80 20 21 28 34 2b | butn%=64 . !(4+| 00002350 68 65 61 70 25 21 38 29 3e 30 20 80 20 28 69 6e |heap%!8)>0 . (in| 00002360 74 66 6c 61 67 25 20 80 20 32 30 35 32 29 3d 30 |tflag% . 2052)=0| 00002370 20 8c 0d 0b 72 3a 20 62 6c 6f 63 6b 25 21 32 30 | ...r: block%!20| 00002380 3d 73 70 72 77 69 6e 25 3a c8 99 20 22 57 69 6d |=sprwin%:.. "Wim| 00002390 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 65 |p_GetWindowState| 000023a0 22 2c 2c 62 6c 6f 63 6b 25 2b 32 30 0d 0b 7c 28 |",,block%+20..|(| 000023b0 20 62 6c 6f 63 6b 25 21 38 3d 21 62 6c 6f 63 6b | block%!8=!block| 000023c0 25 3a 62 6c 6f 63 6b 25 21 31 32 3d 62 6c 6f 63 |%:block%!12=bloc| 000023d0 6b 25 21 34 0d 0b 86 2b 20 62 6c 6f 63 6b 25 21 |k%!4...+ block%!| 000023e0 31 36 3d 62 6c 6f 63 6b 25 21 38 3a 62 6c 6f 63 |16=block%!8:bloc| 000023f0 6b 25 21 32 30 3d 62 6c 6f 63 6b 25 21 31 32 0d |k%!20=block%!12.| 00002400 0b 90 1f 20 21 62 6c 6f 63 6b 25 3d 73 70 72 77 |... !block%=sprw| 00002410 69 6e 25 3a 62 6c 6f 63 6b 25 21 34 3d 36 0d 0b |in%:block%!4=6..| 00002420 9a 1e 20 c8 99 20 22 57 69 6d 70 5f 44 72 61 67 |.. .. "Wimp_Drag| 00002430 42 6f 78 22 2c 2c 62 6c 6f 63 6b 25 0d 0b a4 1a |Box",,block%....| 00002440 20 69 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 | intflag%=intfla| 00002450 67 25 20 84 20 32 0d 0b ae 06 20 cd 0d 0b b8 0e |g% . 2.... .....| 00002460 20 c9 20 6d 61 67 77 69 6e 25 0d 0b c2 26 20 e7 | . magwin%...& .| 00002470 20 69 63 6f 6e 25 3e 31 20 80 20 28 62 75 74 6e | icon%>1 . (butn| 00002480 25 3d 31 20 84 20 62 75 74 6e 25 3d 34 29 20 8c |%=1 . butn%=4) .| 00002490 0d 0b cc 41 20 73 63 61 6c 65 25 21 28 31 32 2b |...A scale%!(12+| 000024a0 34 2a 28 69 63 6f 6e 25 20 81 20 32 29 29 2b 3d |4*(icon% . 2))+=| 000024b0 28 31 2b 32 2a 28 62 75 74 6e 25 3d 31 29 29 2a |(1+2*(butn%=1))*| 000024c0 28 31 2d 32 2a 28 69 63 6f 6e 25 20 83 20 32 29 |(1-2*(icon% . 2)| 000024d0 29 0d 0b d6 40 20 e7 20 73 63 61 6c 65 25 21 28 |)...@ . scale%!(| 000024e0 31 32 2b 34 2a 28 69 63 6f 6e 25 20 81 20 32 29 |12+4*(icon% . 2)| 000024f0 29 3c 31 20 8c 20 73 63 61 6c 65 25 21 28 31 32 |)<1 . scale%!(12| 00002500 2b 34 2a 28 69 63 6f 6e 25 20 81 20 32 29 29 3d |+4*(icon% . 2))=| 00002510 31 0d 0b e0 44 20 e7 20 73 63 61 6c 65 25 21 28 |1...D . scale%!(| 00002520 31 32 2b 34 2a 28 69 63 6f 6e 25 20 81 20 32 29 |12+4*(icon% . 2)| 00002530 29 3e 39 39 39 20 8c 20 73 63 61 6c 65 25 21 28 |)>999 . scale%!(| 00002540 31 32 2b 34 2a 28 69 63 6f 6e 25 20 81 20 32 29 |12+4*(icon% . 2)| 00002550 29 3d 39 39 39 0d 0b ea 3d 20 24 28 69 63 6f 6e |)=999...= $(icon| 00002560 74 78 74 25 28 69 63 6f 6e 25 20 81 20 32 29 29 |txt%(icon% . 2))| 00002570 3d c3 28 73 63 61 6c 65 25 21 28 31 32 2b 34 2a |=.(scale%!(12+4*| 00002580 28 69 63 6f 6e 25 20 81 20 32 29 29 29 2b bd 28 |(icon% . 2)))+.(| 00002590 30 29 0d 0b f4 11 20 f2 73 63 61 6c 65 73 70 72 |0).... .scalespr| 000025a0 69 74 65 0d 0b fe 35 20 21 62 6c 6f 63 6b 25 3d |ite...5 !block%=| 000025b0 73 70 72 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 |sprwin%:.. "Wimp| 000025c0 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 65 22 |_GetWindowState"| 000025d0 2c 2c 62 6c 6f 63 6b 25 0d 0c 08 21 20 c8 99 20 |,,block%...! .. | 000025e0 22 57 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 |"Wimp_OpenWindow| 000025f0 22 2c 2c 62 6c 6f 63 6b 25 0d 0c 12 31 20 c8 99 |",,block%...1 ..| 00002600 20 22 57 69 6d 70 5f 46 6f 72 63 65 52 65 64 72 | "Wimp_ForceRedr| 00002610 61 77 22 2c 73 70 72 77 69 6e 25 2c 30 2c 2d 68 |aw",sprwin%,0,-h| 00002620 67 74 25 2c 77 64 74 25 2c 30 0d 0c 1c 10 20 f2 |gt%,wdt%,0.... .| 00002630 73 70 72 69 74 65 6d 65 6e 75 0d 0c 26 06 20 cd |spritemenu..&. .| 00002640 0d 0c 30 0e 20 c9 20 6c 69 6d 77 69 6e 25 0d 0c |..0. . limwin%..| 00002650 3a 28 20 e7 20 69 63 6f 6e 25 3d 36 35 20 8c 20 |:( . icon%=65 . | 00002660 69 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 |intflag%=intflag| 00002670 25 20 82 20 31 36 0d 0c 44 0e 20 c9 20 74 78 74 |% . 16..D. . txt| 00002680 77 69 6e 25 0d 0c 4e 1a 20 e7 20 62 75 74 6e 25 |win%..N. . butn%| 00002690 3d 32 20 8c 20 f2 74 65 78 74 6d 65 6e 75 0d 0c |=2 . .textmenu..| 000026a0 58 0e 20 c9 20 63 6e 74 77 69 6e 25 0d 0c 62 1a |X. . cntwin%..b.| 000026b0 20 e7 20 62 75 74 6e 25 3d 32 20 8c 20 f2 63 6f | . butn%=2 . .co| 000026c0 6e 74 6d 65 6e 75 0d 0c 6c 34 20 e7 20 62 75 74 |ntmenu..l4 . but| 000026d0 6e 25 3d 34 20 80 20 69 63 6f 6e 25 3d 32 38 20 |n%=4 . icon%=28 | 000026e0 8c 20 69 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c |. intflag%=intfl| 000026f0 61 67 25 20 82 20 38 31 39 32 0d 0c 76 32 20 e7 |ag% . 8192..v2 .| 00002700 20 62 75 74 6e 25 3d 34 20 80 20 69 63 6f 6e 25 | butn%=4 . icon%| 00002710 3d 32 39 20 8c 20 69 6e 74 66 6c 61 67 25 3d 69 |=29 . intflag%=i| 00002720 6e 74 66 6c 61 67 25 20 82 20 36 34 0d 0c 80 34 |ntflag% . 64...4| 00002730 20 e7 20 62 75 74 6e 25 3d 34 20 80 20 69 63 6f | . butn%=4 . ico| 00002740 6e 25 3d 33 30 20 8c 20 69 6e 74 66 6c 61 67 25 |n%=30 . intflag%| 00002750 3d 69 6e 74 66 6c 61 67 25 20 80 20 ac 20 33 32 |=intflag% . . 32| 00002760 0d 0c 8a 32 20 e7 20 62 75 74 6e 25 3d 34 20 80 |...2 . butn%=4 .| 00002770 20 69 63 6f 6e 25 3d 33 31 20 8c 20 69 6e 74 66 | icon%=31 . intf| 00002780 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 84 20 |lag%=intflag% . | 00002790 33 32 0d 0c 94 26 20 e7 20 62 75 74 6e 25 3d 31 |32...& . butn%=1| 000027a0 20 80 20 69 63 6f 6e 25 3d 33 30 20 84 20 69 63 | . icon%=30 . ic| 000027b0 6f 6e 25 3d 33 31 20 8c 0d 0c 9e 42 20 21 62 6c |on%=31 ....B !bl| 000027c0 6f 63 6b 25 3d 63 6e 74 77 69 6e 25 3a 62 6c 6f |ock%=cntwin%:blo| 000027d0 63 6b 25 21 34 3d 69 63 6f 6e 25 3a 62 6c 6f 63 |ck%!4=icon%:bloc| 000027e0 6b 25 21 38 3d 31 3c 3c 32 31 3a 62 6c 6f 63 6b |k%!8=1<<21:block| 000027f0 25 21 31 32 3d 31 3c 3c 32 31 0d 0c a8 23 20 c8 |%!12=1<<21...# .| 00002800 99 20 22 57 69 6d 70 5f 53 65 74 49 63 6f 6e 53 |. "Wimp_SetIconS| 00002810 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 0c b2 |tate",,block%...| 00002820 06 20 cd 0d 0c bc 3d 20 e7 20 62 75 74 6e 25 3d |. ....= . butn%=| 00002830 34 20 80 20 69 63 6f 6e 25 3d 31 36 20 8c 20 69 |4 . icon%=16 . i| 00002840 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 |ntflag%=intflag%| 00002850 20 80 20 ac 20 31 32 3a f2 62 75 74 74 6f 6e 73 | . . 12:.buttons| 00002860 0d 0c c6 4d 20 e7 20 62 75 74 6e 25 3d 34 20 80 |...M . butn%=4 .| 00002870 20 69 63 6f 6e 25 3d 31 37 20 80 20 28 69 6e 74 | icon%=17 . (int| 00002880 66 6c 61 67 25 20 80 20 34 29 3d 34 20 8c 20 69 |flag% . 4)=4 . i| 00002890 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 |ntflag%=intflag%| 000028a0 20 84 20 38 3a f2 62 75 74 74 6f 6e 73 0d 0c d0 | . 8:.buttons...| 000028b0 3e 20 e7 20 62 75 74 6e 25 3d 34 20 80 20 69 63 |> . butn%=4 . ic| 000028c0 6f 6e 25 3d 31 38 20 80 20 28 69 6e 74 66 6c 61 |on%=18 . (intfla| 000028d0 67 25 20 80 20 34 29 3d 30 20 80 20 21 28 68 65 |g% . 4)=0 . !(he| 000028e0 61 70 25 21 32 34 29 3e 30 20 8c 0d 0c da 11 20 |ap%!24)>0 ..... | 000028f0 69 6e 70 75 74 25 21 31 32 38 3d 30 0d 0c e4 2b |input%!128=0...+| 00002900 20 69 6e 70 75 74 25 21 31 33 32 3d 21 28 68 65 | input%!132=!(he| 00002910 61 70 25 21 32 34 2b 34 2b 69 6e 70 75 74 25 21 |ap%!24+4+input%!| 00002920 31 32 38 2a 32 30 29 0d 0c ee 2b 20 69 6e 70 75 |128*20)...+ inpu| 00002930 74 25 21 31 33 36 3d 21 28 68 65 61 70 25 21 32 |t%!136=!(heap%!2| 00002940 34 2b 38 2b 69 6e 70 75 74 25 21 31 32 38 2a 32 |4+8+input%!128*2| 00002950 30 29 0d 0c f8 2c 20 69 6e 70 75 74 25 21 31 34 |0)..., input%!14| 00002960 30 3d 21 28 68 65 61 70 25 21 32 34 2b 31 32 2b |0=!(heap%!24+12+| 00002970 69 6e 70 75 74 25 21 31 32 38 2a 32 30 29 0d 0d |input%!128*20)..| 00002980 02 2c 20 69 6e 70 75 74 25 21 31 34 34 3d 21 28 |., input%!144=!(| 00002990 68 65 61 70 25 21 32 34 2b 31 36 2b 69 6e 70 75 |heap%!24+16+inpu| 000029a0 74 25 21 31 32 38 2a 32 30 29 0d 0d 0c 2c 20 69 |t%!128*20)..., i| 000029b0 6e 70 75 74 25 21 31 34 38 3d 21 28 68 65 61 70 |nput%!148=!(heap| 000029c0 25 21 32 34 2b 32 30 2b 69 6e 70 75 74 25 21 31 |%!24+20+input%!1| 000029d0 32 38 2a 32 30 29 0d 0d 16 1a 20 69 6e 74 66 6c |28*20).... intfl| 000029e0 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 84 20 34 |ag%=intflag% . 4| 000029f0 0d 0d 20 1b 20 e7 20 28 69 6e 74 66 6c 61 67 25 |.. . . (intflag%| 00002a00 20 80 20 33 32 29 3d 33 32 20 8c 0d 0d 2a 2e 20 | . 32)=32 ...*. | 00002a10 21 28 68 65 61 70 25 21 31 36 29 3d 30 3a f2 63 |!(heap%!16)=0:.c| 00002a20 6c 61 69 6d 28 68 65 61 70 25 2b 31 36 2c 32 35 |laim(heap%+16,25| 00002a30 36 2c 63 6c 61 69 6d 25 29 0d 0d 34 06 20 cd 0d |6,claim%)..4. ..| 00002a40 0d 3e 0f 20 f2 73 63 61 6c 65 74 65 78 74 0d 0d |.>. .scaletext..| 00002a50 48 3a 20 62 6c 6f 63 6b 25 21 36 34 3d 74 78 74 |H: block%!64=txt| 00002a60 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 65 |win%:.. "Wimp_Ge| 00002a70 74 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 |tWindowState",,b| 00002a80 6c 6f 63 6b 25 2b 36 34 0d 0d 52 24 20 c8 99 20 |lock%+64..R$ .. | 00002a90 22 57 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 |"Wimp_OpenWindow| 00002aa0 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 0d 5c 37 |",,block%+64..\7| 00002ab0 20 c8 99 20 22 57 69 6d 70 5f 46 6f 72 63 65 52 | .. "Wimp_ForceR| 00002ac0 65 64 72 61 77 22 2c 74 78 74 77 69 6e 25 2c 30 |edraw",txtwin%,0| 00002ad0 2c 2d 74 78 74 68 67 74 25 2c 74 78 74 77 64 74 |,-txthgt%,txtwdt| 00002ae0 25 2c 30 0d 0d 66 06 20 cd 0d 0d 70 4f 20 e7 20 |%,0..f. ...pO . | 00002af0 62 75 74 6e 25 3d 34 20 80 20 69 63 6f 6e 25 3d |butn%=4 . icon%=| 00002b00 31 38 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 |18 . (intflag% .| 00002b10 20 34 29 3d 34 20 8c 20 69 6e 74 66 6c 61 67 25 | 4)=4 . intflag%| 00002b20 3d 69 6e 74 66 6c 61 67 25 20 80 20 ac 20 38 3a |=intflag% . . 8:| 00002b30 f2 62 75 74 74 6f 6e 73 0d 0d 7a 4e 20 e7 20 62 |.buttons..zN . b| 00002b40 75 74 6e 25 3d 34 20 80 20 69 63 6f 6e 25 3d 31 |utn%=4 . icon%=1| 00002b50 39 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 20 |9 . (intflag% . | 00002b60 34 29 3d 30 20 80 20 21 28 68 65 61 70 25 21 32 |4)=0 . !(heap%!2| 00002b70 34 29 3e 30 20 80 20 21 28 68 65 61 70 25 21 31 |4)>0 . !(heap%!1| 00002b80 36 29 3e 30 20 8c 0d 0d 84 11 20 69 6e 70 75 74 |6)>0 ..... input| 00002b90 25 21 31 32 38 3d 30 0d 0d 8e 2b 20 69 6e 70 75 |%!128=0...+ inpu| 00002ba0 74 25 21 31 33 32 3d 21 28 68 65 61 70 25 21 32 |t%!132=!(heap%!2| 00002bb0 34 2b 34 2b 69 6e 70 75 74 25 21 31 32 38 2a 32 |4+4+input%!128*2| 00002bc0 30 29 0d 0d 98 2b 20 69 6e 70 75 74 25 21 31 33 |0)...+ input%!13| 00002bd0 36 3d 21 28 68 65 61 70 25 21 32 34 2b 38 2b 69 |6=!(heap%!24+8+i| 00002be0 6e 70 75 74 25 21 31 32 38 2a 32 30 29 0d 0d a2 |nput%!128*20)...| 00002bf0 2c 20 69 6e 70 75 74 25 21 31 34 30 3d 21 28 68 |, input%!140=!(h| 00002c00 65 61 70 25 21 32 34 2b 31 32 2b 69 6e 70 75 74 |eap%!24+12+input| 00002c10 25 21 31 32 38 2a 32 30 29 0d 0d ac 2c 20 69 6e |%!128*20)..., in| 00002c20 70 75 74 25 21 31 34 34 3d 21 28 68 65 61 70 25 |put%!144=!(heap%| 00002c30 21 32 34 2b 31 36 2b 69 6e 70 75 74 25 21 31 32 |!24+16+input%!12| 00002c40 38 2a 32 30 29 0d 0d b6 2c 20 69 6e 70 75 74 25 |8*20)..., input%| 00002c50 21 31 34 38 3d 21 28 68 65 61 70 25 21 32 34 2b |!148=!(heap%!24+| 00002c60 32 30 2b 69 6e 70 75 74 25 21 31 32 38 2a 32 30 |20+input%!128*20| 00002c70 29 0d 0d c0 35 20 21 62 6c 6f 63 6b 25 3d 74 72 |)...5 !block%=tr| 00002c80 6e 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 |nwin%:.. "Wimp_G| 00002c90 65 74 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c |etWindowState",,| 00002ca0 62 6c 6f 63 6b 25 0d 0d ca 30 20 c8 99 20 22 4f |block%...0 .. "O| 00002cb0 53 5f 52 65 61 64 4d 6f 64 65 56 61 72 69 61 62 |S_ReadModeVariab| 00002cc0 6c 65 22 2c eb 2c 31 31 20 b8 20 2c 2c 62 6c 6f |le",.,11 . ,,blo| 00002cd0 63 6b 25 21 33 32 0d 0d d4 30 20 c8 99 20 22 4f |ck%!32...0 .. "O| 00002ce0 53 5f 52 65 61 64 4d 6f 64 65 56 61 72 69 61 62 |S_ReadModeVariab| 00002cf0 6c 65 22 2c eb 2c 31 32 20 b8 20 2c 2c 62 6c 6f |le",.,12 . ,,blo| 00002d00 63 6b 25 21 33 36 0d 0d de 4c 20 62 6c 6f 63 6b |ck%!36...L block| 00002d10 25 21 33 32 3d 28 62 6c 6f 63 6b 25 21 33 32 3c |%!32=(block%!32<| 00002d20 3c 73 63 61 6c 65 25 21 33 32 29 81 20 32 3a 62 |<scale%!32). 2:b| 00002d30 6c 6f 63 6b 25 21 33 36 3d 28 62 6c 6f 63 6b 25 |lock%!36=(block%| 00002d40 21 33 36 3c 3c 73 63 61 6c 65 25 21 33 36 29 81 |!36<<scale%!36).| 00002d50 20 32 0d 0d e8 2c 20 62 6c 6f 63 6b 25 21 31 32 | 2..., block%!12| 00002d60 2d 3d 62 6c 6f 63 6b 25 21 34 3a 62 6c 6f 63 6b |-=block%!4:block| 00002d70 25 21 31 36 2d 3d 62 6c 6f 63 6b 25 21 38 0d 0d |%!16-=block%!8..| 00002d80 f2 46 20 62 6c 6f 63 6b 25 21 34 3d 62 6c 6f 63 |.F block%!4=bloc| 00002d90 6b 25 21 33 32 2d 62 6c 6f 63 6b 25 21 31 32 20 |k%!32-block%!12 | 00002da0 81 20 32 3a 62 6c 6f 63 6b 25 21 38 3d 62 6c 6f |. 2:block%!8=blo| 00002db0 63 6b 25 21 33 36 2d 62 6c 6f 63 6b 25 21 31 36 |ck%!36-block%!16| 00002dc0 20 81 20 32 0d 0d fc 2c 20 62 6c 6f 63 6b 25 21 | . 2..., block%!| 00002dd0 31 32 2b 3d 62 6c 6f 63 6b 25 21 34 3a 62 6c 6f |12+=block%!4:blo| 00002de0 63 6b 25 21 31 36 2b 3d 62 6c 6f 63 6b 25 21 38 |ck%!16+=block%!8| 00002df0 0d 0e 06 21 20 c8 99 20 22 57 69 6d 70 5f 4f 70 |...! .. "Wimp_Op| 00002e00 65 6e 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b |enWindow",,block| 00002e10 25 0d 0e 10 1c 20 69 6e 74 66 6c 61 67 25 3d 69 |%.... intflag%=i| 00002e20 6e 74 66 6c 61 67 25 20 84 20 32 35 36 0d 0e 1a |ntflag% . 256...| 00002e30 0d 20 f2 62 75 74 74 6f 6e 73 0d 0e 24 06 20 cd |. .buttons..$. .| 00002e40 0d 0e 2e 06 20 cb 0d 0e 38 06 20 e1 0d 0e 42 06 |.... ...8. ...B.| 00002e50 20 3a 0d 0e 4c 0f 20 dd 20 f2 62 75 74 74 6f 6e | :..L. . .button| 00002e60 73 0d 0e 56 28 20 21 62 6c 6f 63 6b 25 3d 63 6e |s..V( !block%=cn| 00002e70 74 77 69 6e 25 3a 62 6c 6f 63 6b 25 21 31 32 3d |twin%:block%!12=| 00002e80 26 46 30 30 30 30 30 30 30 0d 0e 60 38 20 62 6c |&F0000000..`8 bl| 00002e90 6f 63 6b 25 21 34 3d 31 37 3a 62 6c 6f 63 6b 25 |ock%!4=17:block%| 00002ea0 21 38 3d 26 43 30 30 30 30 30 30 30 20 84 20 28 |!8=&C0000000 . (| 00002eb0 69 6e 74 66 6c 61 67 25 20 80 20 38 29 3c 3c 32 |intflag% . 8)<<2| 00002ec0 36 0d 0e 6a 23 20 c8 99 20 22 57 69 6d 70 5f 53 |6..j# .. "Wimp_S| 00002ed0 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c |etIconState",,bl| 00002ee0 6f 63 6b 25 0d 0e 74 4d 20 62 6c 6f 63 6b 25 21 |ock%..tM block%!| 00002ef0 34 3d 31 38 3a 62 6c 6f 63 6b 25 21 38 3d 26 43 |4=18:block%!8=&C| 00002f00 30 30 30 30 30 30 30 20 84 20 28 69 6e 74 66 6c |0000000 . (intfl| 00002f10 61 67 25 20 80 20 34 29 3c 3c 32 37 20 82 20 28 |ag% . 4)<<27 . (| 00002f20 69 6e 74 66 6c 61 67 25 20 80 20 38 29 3c 3c 32 |intflag% . 8)<<2| 00002f30 36 0d 0e 7e 23 20 c8 99 20 22 57 69 6d 70 5f 53 |6..~# .. "Wimp_S| 00002f40 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c |etIconState",,bl| 00002f50 6f 63 6b 25 0d 0e 88 06 20 e1 0d 0e 92 06 20 3a |ock%.... ..... :| 00002f60 0d 0e 9c 12 20 dd 20 f2 73 70 72 69 74 65 6d 65 |.... . .spriteme| 00002f70 6e 75 0d 0e a6 12 20 24 28 6d 65 6e 75 25 29 3d |nu.... $(menu%)=| 00002f80 61 70 70 24 0d 0e b0 14 20 6d 65 6e 75 25 21 31 |app$.... menu%!1| 00002f90 32 3d 26 37 30 32 30 37 0d 0e ba 1d 20 6d 65 6e |2=&70207.... men| 00002fa0 75 25 21 31 36 3d 31 32 30 3a 6d 65 6e 75 25 21 |u%!16=120:menu%!| 00002fb0 32 30 3d 34 30 0d 0e c4 0f 20 6d 65 6e 75 25 21 |20=40.... menu%!| 00002fc0 32 34 3d 30 0d 0e ce 3c 20 24 28 62 6c 6f 63 6b |24=0...< $(block| 00002fd0 25 29 3d 22 5a 6f 6f 6d 22 3a f2 6d 65 6e 65 6e |%)="Zoom":.menen| 00002fe0 74 72 79 28 30 2c 30 2c 6d 61 67 77 69 6e 25 2c |try(0,0,magwin%,| 00002ff0 26 37 30 30 30 30 31 31 2c 62 6c 6f 63 6b 25 29 |&7000011,block%)| 00003000 0d 0e d8 53 20 24 28 62 6c 6f 63 6b 25 29 3d 22 |...S $(block%)="| 00003010 4c 69 6d 69 74 73 22 3a f2 6d 65 6e 65 6e 74 72 |Limits":.menentr| 00003020 79 28 31 2c 38 2c 6c 69 6d 77 69 6e 25 2c 26 37 |y(1,8,limwin%,&7| 00003030 30 30 30 30 31 31 20 84 20 28 69 6e 74 66 6c 61 |000011 . (intfla| 00003040 67 25 20 80 20 34 29 3c 3c 32 30 2c 62 6c 6f 63 |g% . 4)<<20,bloc| 00003050 6b 25 29 0d 0e e2 67 20 24 28 62 6c 6f 63 6b 25 |k%)...g $(block%| 00003060 29 3d 22 49 6e 76 65 72 74 22 3a f2 6d 65 6e 65 |)="Invert":.mene| 00003070 6e 74 72 79 28 32 2c 30 2c 2d 31 2c 26 37 30 30 |ntry(2,0,-1,&700| 00003080 30 30 31 31 20 84 20 94 28 21 28 34 2b 68 65 61 |0011 . .(!(4+hea| 00003090 70 25 21 38 29 3d 30 29 3c 3c 32 32 20 20 84 20 |p%!8)=0)<<22 . | 000030a0 28 69 6e 74 66 6c 61 67 25 20 80 20 34 29 3c 3c |(intflag% . 4)<<| 000030b0 32 30 2c 62 6c 6f 63 6b 25 29 0d 0e ec 67 20 24 |20,block%)...g $| 000030c0 28 62 6c 6f 63 6b 25 29 3d 22 41 6c 69 67 6e 22 |(block%)="Align"| 000030d0 3a f2 6d 65 6e 65 6e 74 72 79 28 33 2c 31 32 38 |:.menentry(3,128| 000030e0 2c 2d 31 2c 26 37 30 30 30 30 31 31 20 84 20 94 |,-1,&7000011 . .| 000030f0 28 21 28 34 2b 68 65 61 70 25 21 38 29 3d 30 29 |(!(4+heap%!8)=0)| 00003100 3c 3c 32 32 20 84 20 28 69 6e 74 66 6c 61 67 25 |<<22 . (intflag%| 00003110 20 80 20 34 29 3c 3c 32 30 2c 62 6c 6f 63 6b 25 | . 4)<<20,block%| 00003120 29 0d 0e f6 2c 20 c8 99 20 22 57 69 6d 70 5f 43 |)..., .. "Wimp_C| 00003130 72 65 61 74 65 4d 65 6e 75 22 2c 2c 6d 65 6e 75 |reateMenu",,menu| 00003140 25 2c 78 70 6e 74 25 2c 79 70 6e 74 25 0d 0f 00 |%,xpnt%,ypnt%...| 00003150 0d 20 6d 65 6e 6e 6f 25 3d 31 0d 0f 0a 06 20 e1 |. menno%=1.... .| 00003160 0d 0f 14 06 20 3a 0d 0f 1e 10 20 dd 20 f2 74 65 |.... :.... . .te| 00003170 78 74 6d 65 6e 75 0d 0f 28 12 20 24 28 6d 65 6e |xtmenu..(. $(men| 00003180 75 25 29 3d 61 70 70 24 0d 0f 32 14 20 6d 65 6e |u%)=app$..2. men| 00003190 75 25 21 31 32 3d 26 37 30 32 30 37 0d 0f 3c 1d |u%!12=&70207..<.| 000031a0 20 6d 65 6e 75 25 21 31 36 3d 31 32 30 3a 6d 65 | menu%!16=120:me| 000031b0 6e 75 25 21 32 30 3d 34 30 0d 0f 46 0f 20 6d 65 |nu%!20=40..F. me| 000031c0 6e 75 25 21 32 34 3d 30 0d 0f 50 3e 20 24 28 62 |nu%!24=0..P> $(b| 000031d0 6c 6f 63 6b 25 29 3d 22 53 61 76 65 22 3a f2 6d |lock%)="Save":.m| 000031e0 65 6e 65 6e 74 72 79 28 30 2c 31 32 38 2c 74 73 |enentry(0,128,ts| 000031f0 76 77 69 6e 25 2c 26 37 30 30 30 30 31 31 2c 62 |vwin%,&7000011,b| 00003200 6c 6f 63 6b 25 29 0d 0f 5a 2c 20 c8 99 20 22 57 |lock%)..Z, .. "W| 00003210 69 6d 70 5f 43 72 65 61 74 65 4d 65 6e 75 22 2c |imp_CreateMenu",| 00003220 2c 6d 65 6e 75 25 2c 78 70 6e 74 25 2c 79 70 6e |,menu%,xpnt%,ypn| 00003230 74 25 0d 0f 64 0d 20 6d 65 6e 6e 6f 25 3d 32 0d |t%..d. menno%=2.| 00003240 0f 6e 06 20 e1 0d 0f 78 06 20 3a 0d 0f 82 10 20 |.n. ...x. :.... | 00003250 dd 20 f2 63 6f 6e 74 6d 65 6e 75 0d 0f 8c 12 20 |. .contmenu.... | 00003260 24 28 6d 65 6e 75 25 29 3d 61 70 70 24 0d 0f 96 |$(menu%)=app$...| 00003270 14 20 6d 65 6e 75 25 21 31 32 3d 26 37 30 32 30 |. menu%!12=&7020| 00003280 37 0d 0f a0 1d 20 6d 65 6e 75 25 21 31 36 3d 31 |7.... menu%!16=1| 00003290 32 30 3a 6d 65 6e 75 25 21 32 30 3d 34 30 0d 0f |20:menu%!20=40..| 000032a0 aa 0f 20 6d 65 6e 75 25 21 32 34 3d 30 0d 0f b4 |.. menu%!24=0...| 000032b0 3c 20 24 28 62 6c 6f 63 6b 25 29 3d 22 53 61 76 |< $(block%)="Sav| 000032c0 65 22 3a f2 6d 65 6e 65 6e 74 72 79 28 30 2c 30 |e":.menentry(0,0| 000032d0 2c 6e 73 76 77 69 6e 25 2c 26 37 30 30 30 30 31 |,nsvwin%,&700001| 000032e0 31 2c 62 6c 6f 63 6b 25 29 0d 0f be 3a 20 24 28 |1,block%)...: $(| 000032f0 62 6c 6f 63 6b 25 29 3d 22 4e 65 77 20 4e 65 74 |block%)="New Net| 00003300 22 3a f2 6d 65 6e 65 6e 74 72 79 28 31 2c 30 2c |":.menentry(1,0,| 00003310 2d 31 2c 26 37 30 30 30 30 31 31 2c 62 6c 6f 63 |-1,&7000011,bloc| 00003320 6b 25 29 0d 0f c8 39 20 24 28 62 6c 6f 63 6b 25 |k%)...9 $(block%| 00003330 29 3d 22 53 68 6f 77 22 3a f2 6d 65 6e 65 6e 74 |)="Show":.menent| 00003340 72 79 28 32 2c 31 32 38 2c 2d 31 2c 26 37 30 30 |ry(2,128,-1,&700| 00003350 30 30 31 31 2c 62 6c 6f 63 6b 25 29 0d 0f d2 2c |0011,block%)...,| 00003360 20 c8 99 20 22 57 69 6d 70 5f 43 72 65 61 74 65 | .. "Wimp_Create| 00003370 4d 65 6e 75 22 2c 2c 6d 65 6e 75 25 2c 78 70 6e |Menu",,menu%,xpn| 00003380 74 25 2c 79 70 6e 74 25 0d 0f dc 0d 20 6d 65 6e |t%,ypnt%.... men| 00003390 6e 6f 25 3d 33 0d 0f e6 06 20 e1 0d 0f f0 06 20 |no%=3.... ..... | 000033a0 3a 0d 0f fa 10 20 dd 20 f2 69 63 6f 6e 6d 65 6e |:.... . .iconmen| 000033b0 75 0d 10 04 12 20 24 28 6d 65 6e 75 25 29 3d 61 |u.... $(menu%)=a| 000033c0 70 70 24 0d 10 0e 14 20 6d 65 6e 75 25 21 31 32 |pp$.... menu%!12| 000033d0 3d 26 37 30 32 30 37 0d 10 18 1c 20 6d 65 6e 75 |=&70207.... menu| 000033e0 25 21 31 36 3d 38 38 3a 6d 65 6e 75 25 21 32 30 |%!16=88:menu%!20| 000033f0 3d 34 30 0d 10 22 0f 20 6d 65 6e 75 25 21 32 34 |=40..". menu%!24| 00003400 3d 30 0d 10 2c 3c 20 24 28 62 6c 6f 63 6b 25 29 |=0..,< $(block%)| 00003410 3d 22 49 6e 66 6f 22 3a f2 6d 65 6e 65 6e 74 72 |="Info":.menentr| 00003420 79 28 30 2c 30 2c 69 6e 66 77 69 6e 25 2c 26 37 |y(0,0,infwin%,&7| 00003430 30 30 30 30 31 31 2c 62 6c 6f 63 6b 25 29 0d 10 |000011,block%)..| 00003440 36 39 20 24 28 62 6c 6f 63 6b 25 29 3d 22 51 75 |69 $(block%)="Qu| 00003450 69 74 22 3a f2 6d 65 6e 65 6e 74 72 79 28 31 2c |it":.menentry(1,| 00003460 31 32 38 2c 2d 31 2c 26 37 30 30 30 30 31 31 2c |128,-1,&7000011,| 00003470 62 6c 6f 63 6b 25 29 0d 10 40 2d 20 c8 99 20 22 |block%)..@- .. "| 00003480 57 69 6d 70 5f 43 72 65 61 74 65 4d 65 6e 75 22 |Wimp_CreateMenu"| 00003490 2c 2c 6d 65 6e 75 25 2c 78 70 6e 74 25 2d 36 34 |,,menu%,xpnt%-64| 000034a0 2c 31 37 36 0d 10 4a 0d 20 6d 65 6e 6e 6f 25 3d |,176..J. menno%=| 000034b0 30 0d 10 54 06 20 e1 0d 10 5e 06 20 3a 0d 10 68 |0..T. ...^. :..h| 000034c0 39 20 dd 20 f2 6d 65 6e 65 6e 74 72 79 28 65 6e |9 . .menentry(en| 000034d0 74 72 79 25 2c 66 6c 61 67 25 2c 73 75 62 6d 65 |try%,flag%,subme| 000034e0 6e 75 25 2c 69 63 6f 6e 66 6c 67 25 2c 69 63 6f |nu%,iconflg%,ico| 000034f0 6e 64 61 74 25 29 0d 10 72 1f 20 6d 65 6e 75 25 |ndat%)..r. menu%| 00003500 21 28 32 38 2b 32 34 2a 65 6e 74 72 79 25 29 3d |!(28+24*entry%)=| 00003510 66 6c 61 67 25 0d 10 7c 22 20 6d 65 6e 75 25 21 |flag%..|" menu%!| 00003520 28 33 32 2b 32 34 2a 65 6e 74 72 79 25 29 3d 73 |(32+24*entry%)=s| 00003530 75 62 6d 65 6e 75 25 0d 10 86 22 20 6d 65 6e 75 |ubmenu%..." menu| 00003540 25 21 28 33 36 2b 32 34 2a 65 6e 74 72 79 25 29 |%!(36+24*entry%)| 00003550 3d 69 63 6f 6e 66 6c 67 25 0d 10 90 23 20 6d 65 |=iconflg%...# me| 00003560 6e 75 25 21 28 34 30 2b 32 34 2a 65 6e 74 72 79 |nu%!(40+24*entry| 00003570 25 29 3d 21 69 63 6f 6e 64 61 74 25 0d 10 9a 24 |%)=!icondat%...$| 00003580 20 6d 65 6e 75 25 21 28 34 34 2b 32 34 2a 65 6e | menu%!(44+24*en| 00003590 74 72 79 25 29 3d 69 63 6f 6e 64 61 74 25 21 34 |try%)=icondat%!4| 000035a0 0d 10 a4 24 20 6d 65 6e 75 25 21 28 34 38 2b 32 |...$ menu%!(48+2| 000035b0 34 2a 65 6e 74 72 79 25 29 3d 69 63 6f 6e 64 61 |4*entry%)=iconda| 000035c0 74 25 21 38 0d 10 ae 06 20 e1 0d 10 b8 06 20 3a |t%!8.... ..... :| 000035d0 0d 10 c2 0f 20 dd 20 f2 73 65 74 68 65 61 70 0d |.... . .setheap.| 000035e0 10 cc 27 20 c8 99 20 22 57 69 6d 70 5f 53 6c 6f |..' .. "Wimp_Slo| 000035f0 74 53 69 7a 65 22 2c 2d 31 2c 2d 31 20 b8 20 65 |tSize",-1,-1 . e| 00003600 78 74 65 6e 74 25 0d 10 d6 2a 20 c8 99 20 22 57 |xtent%...* .. "W| 00003610 69 6d 70 5f 53 6c 6f 74 53 69 7a 65 22 2c 65 78 |imp_SlotSize",ex| 00003620 74 65 6e 74 25 2b 31 32 38 2b 33 32 30 2c 2d 31 |tent%+128+320,-1| 00003630 0d 10 e0 25 20 21 68 65 61 70 25 3d 36 3a 68 65 |...% !heap%=6:he| 00003640 61 70 25 21 34 3d 65 78 74 65 6e 74 25 2b 31 32 |ap%!4=extent%+12| 00003650 38 2b 33 32 30 0d 10 ea 22 20 68 65 61 70 25 21 |8+320..." heap%!| 00003660 38 3d 68 65 61 70 25 2b 31 32 38 3a 68 65 61 70 |8=heap%+128:heap| 00003670 25 21 31 32 3d 33 32 0d 10 f4 23 20 68 65 61 70 |%!12=32...# heap| 00003680 25 21 31 36 3d 68 65 61 70 25 2b 31 36 30 3a 68 |%!16=heap%+160:h| 00003690 65 61 70 25 21 32 30 3d 33 32 0d 10 fe 23 20 68 |eap%!20=32...# h| 000036a0 65 61 70 25 21 32 34 3d 68 65 61 70 25 2b 31 39 |eap%!24=heap%+19| 000036b0 32 3a 68 65 61 70 25 21 32 38 3d 33 32 0d 11 08 |2:heap%!28=32...| 000036c0 23 20 68 65 61 70 25 21 33 32 3d 68 65 61 70 25 |# heap%!32=heap%| 000036d0 2b 32 32 34 3a 68 65 61 70 25 21 33 36 3d 33 32 |+224:heap%!36=32| 000036e0 0d 11 12 23 20 68 65 61 70 25 21 34 30 3d 68 65 |...# heap%!40=he| 000036f0 61 70 25 2b 32 35 36 3a 68 65 61 70 25 21 34 34 |ap%+256:heap%!44| 00003700 3d 33 32 0d 11 1c 23 20 68 65 61 70 25 21 34 38 |=32...# heap%!48| 00003710 3d 68 65 61 70 25 2b 32 38 38 3a 68 65 61 70 25 |=heap%+288:heap%| 00003720 21 35 32 3d 33 32 0d 11 26 42 20 21 28 68 65 61 |!52=32..&B !(hea| 00003730 70 25 21 38 29 3d 33 32 3a 21 28 34 2b 68 65 61 |p%!8)=32:!(4+hea| 00003740 70 25 21 38 29 3d 30 3a 21 28 38 2b 68 65 61 70 |p%!8)=0:!(8+heap| 00003750 25 21 38 29 3d 31 36 3a 21 28 31 32 2b 68 65 61 |%!8)=16:!(12+hea| 00003760 70 25 21 38 29 3d 31 36 0d 11 30 2e 20 21 28 68 |p%!8)=16..0. !(h| 00003770 65 61 70 25 21 31 36 29 3d 30 3a 21 28 68 65 61 |eap%!16)=0:!(hea| 00003780 70 25 21 32 34 29 3d 30 3a 21 28 68 65 61 70 25 |p%!24)=0:!(heap%| 00003790 21 34 30 29 3d 30 0d 11 3a 12 20 21 69 6e 70 75 |!40)=0..:. !inpu| 000037a0 74 25 3d 68 65 61 70 25 0d 11 44 06 20 e1 0d 11 |t%=heap%..D. ...| 000037b0 4e 06 20 3a 0d 11 58 23 20 dd 20 f2 63 6c 61 69 |N. :..X# . .clai| 000037c0 6d 28 62 6c 6f 63 6b 25 2c 73 69 7a 65 25 2c f8 |m(block%,size%,.| 000037d0 20 66 6c 61 67 25 29 0d 11 62 0c 20 66 6c 61 67 | flag%)..b. flag| 000037e0 25 3d a3 0d 11 6c 19 20 73 69 7a 65 25 3d 28 73 |%=...l. size%=(s| 000037f0 69 7a 65 25 2b 33 29 20 80 20 2d 34 0d 11 76 1a |ize%+3) . -4..v.| 00003800 20 64 65 6c 74 61 25 3d 73 69 7a 65 25 2d 62 6c | delta%=size%-bl| 00003810 6f 63 6b 25 21 34 0d 11 80 27 20 c8 99 20 22 57 |ock%!4...' .. "W| 00003820 69 6d 70 5f 53 6c 6f 74 53 69 7a 65 22 2c 2d 31 |imp_SlotSize",-1| 00003830 2c 2d 31 20 b8 20 2c 2c 66 72 65 65 25 0d 11 8a |,-1 . ,,free%...| 00003840 15 20 e7 20 64 65 6c 74 61 25 3c 66 72 65 65 25 |. . delta%<free%| 00003850 20 8c 0d 11 94 0c 20 66 6c 61 67 25 3d b9 0d 11 | ..... flag%=...| 00003860 9e 36 20 e7 20 64 65 6c 74 61 25 3e 30 20 8c 20 |.6 . delta%>0 . | 00003870 c8 99 20 22 57 69 6d 70 5f 53 6c 6f 74 53 69 7a |.. "Wimp_SlotSiz| 00003880 65 22 2c 68 65 61 70 25 21 34 2b 64 65 6c 74 61 |e",heap%!4+delta| 00003890 25 2c 2d 31 0d 11 a8 2b 20 69 6e 70 75 74 25 21 |%,-1...+ input%!| 000038a0 34 3d 21 62 6c 6f 63 6b 25 3a 69 6e 70 75 74 25 |4=!block%:input%| 000038b0 21 38 3d 73 69 7a 65 25 3a d6 20 68 65 61 70 0d |!8=size%:. heap.| 000038c0 11 b2 2f 20 e7 20 64 65 6c 74 61 25 3c 30 20 8c |../ . delta%<0 .| 000038d0 20 c8 99 20 22 57 69 6d 70 5f 53 6c 6f 74 53 69 | .. "Wimp_SlotSi| 000038e0 7a 65 22 2c 68 65 61 70 25 21 34 2c 2d 31 0d 11 |ze",heap%!4,-1..| 000038f0 bc 06 20 cd 0d 11 c6 06 20 e1 0d 11 d0 06 20 3a |.. ..... ..... :| 00003900 0d 11 da 0c 20 dd 20 f2 66 75 6c 6c 0d 11 e4 0e |.... . .full....| 00003910 20 21 62 6c 6f 63 6b 25 3d 30 0d 11 ee 2d 20 24 | !block%=0...- $| 00003920 28 62 6c 6f 63 6b 25 2b 34 29 3d 22 4e 6f 20 52 |(block%+4)="No R| 00003930 6f 6f 6d 20 2d 20 6d 65 6d 6f 72 79 20 66 75 6c |oom - memory ful| 00003940 6c 22 2b bd 28 30 29 0d 11 f8 2a 20 c8 99 20 22 |l"+.(0)...* .. "| 00003950 57 69 6d 70 5f 52 65 70 6f 72 74 45 72 72 6f 72 |Wimp_ReportError| 00003960 22 2c 62 6c 6f 63 6b 25 2c 31 2c 22 21 4f 43 52 |",block%,1,"!OCR| 00003970 22 0d 12 02 06 20 e1 0d 12 0c 06 20 3a 0d 12 16 |".... ..... :...| 00003980 0c 20 dd 20 f2 63 6f 64 65 0d 12 20 10 20 69 6e |. . .code.. . in| 00003990 70 75 74 3d 63 6f 64 65 25 0d 12 2a 13 20 6f 75 |put=code%..*. ou| 000039a0 74 70 75 74 3d 63 6f 64 65 25 2b 34 0d 12 34 17 |tput=code%+4..4.| 000039b0 20 68 65 61 70 3d 63 6f 64 65 25 2b 63 6f 64 65 | heap=code%+code| 000039c0 25 21 38 0d 12 3e 1c 20 70 6f 73 69 74 69 6f 6e |%!8..>. position| 000039d0 3d 63 6f 64 65 25 2b 63 6f 64 65 25 21 31 32 0d |=code%+code%!12.| 000039e0 12 48 19 20 70 72 69 6e 74 3d 63 6f 64 65 25 2b |.H. print=code%+| 000039f0 63 6f 64 65 25 21 31 36 0d 12 52 1c 20 66 69 6e |code%!16..R. fin| 00003a00 64 6c 69 6e 65 3d 63 6f 64 65 25 2b 63 6f 64 65 |dline=code%+code| 00003a10 25 21 32 30 0d 12 5c 1d 20 66 69 6e 64 6c 69 6d |%!20..\. findlim| 00003a20 69 74 3d 63 6f 64 65 25 2b 63 6f 64 65 25 21 32 |it=code%+code%!2| 00003a30 34 0d 12 66 1c 20 73 63 61 6e 6c 69 6e 65 3d 63 |4..f. scanline=c| 00003a40 6f 64 65 25 2b 63 6f 64 65 25 21 32 38 0d 12 70 |ode%+code%!28..p| 00003a50 19 20 61 6c 69 61 73 3d 63 6f 64 65 25 2b 63 6f |. alias=code%+co| 00003a60 64 65 25 21 33 32 0d 12 7a 18 20 63 6f 70 79 3d |de%!32..z. copy=| 00003a70 63 6f 64 65 25 2b 63 6f 64 65 25 21 33 36 0d 12 |code%+code%!36..| 00003a80 84 1a 20 69 6e 76 65 72 74 3d 63 6f 64 65 25 2b |.. invert=code%+| 00003a90 63 6f 64 65 25 21 34 30 0d 12 8e 1d 20 73 70 72 |code%!40.... spr| 00003aa0 65 78 74 65 6e 74 3d 63 6f 64 65 25 2b 63 6f 64 |extent=code%+cod| 00003ab0 65 25 21 34 34 0d 12 98 1b 20 64 69 73 74 6f 72 |e%!44.... distor| 00003ac0 74 3d 63 6f 64 65 25 2b 63 6f 64 65 25 21 34 38 |t=code%+code%!48| 00003ad0 0d 12 a2 1d 20 74 72 61 69 6e 63 68 61 72 3d 63 |.... trainchar=c| 00003ae0 6f 64 65 25 2b 63 6f 64 65 25 21 35 32 0d 12 ac |ode%+code%!52...| 00003af0 1b 20 70 61 74 74 65 72 6e 3d 63 6f 64 65 25 2b |. pattern=code%+| 00003b00 63 6f 64 65 25 21 35 36 0d 12 b6 18 20 62 65 73 |code%!56.... bes| 00003b10 74 3d 63 6f 64 65 25 2b 63 6f 64 65 25 21 36 30 |t=code%+code%!60| 00003b20 0d 12 c0 19 20 65 72 72 6f 72 3d 63 6f 64 65 25 |.... error=code%| 00003b30 2b 63 6f 64 65 25 21 36 34 0d 12 ca 19 20 6c 65 |+code%!64.... le| 00003b40 61 72 6e 3d 63 6f 64 65 25 2b 63 6f 64 65 25 21 |arn=code%+code%!| 00003b50 36 38 0d 12 d4 1c 20 65 76 61 6c 75 61 74 65 3d |68.... evaluate=| 00003b60 63 6f 64 65 25 2b 63 6f 64 65 25 21 37 32 0d 12 |code%+code%!72..| 00003b70 de 12 20 21 69 6e 70 75 74 3d 69 6e 70 75 74 25 |.. !input=input%| 00003b80 0d 12 e8 14 20 21 6f 75 74 70 75 74 3d 6f 75 74 |.... !output=out| 00003b90 70 75 74 25 0d 12 f2 06 20 e1 0d 12 fc 06 20 3a |put%.... ..... :| 00003ba0 0d 13 06 19 20 dd 20 f2 74 65 73 74 6c 6f 61 64 |.... . .testload| 00003bb0 28 f8 20 6c 6f 61 64 25 29 0d 13 10 0c 20 6c 6f |(. load%).... lo| 00003bc0 61 64 25 3d a3 0d 13 1a 47 20 e7 20 62 6c 6f 63 |ad%=....G . bloc| 00003bd0 6b 25 21 32 30 3d 74 78 74 77 69 6e 25 20 80 20 |k%!20=txtwin% . | 00003be0 62 6c 6f 63 6b 25 21 34 30 3d 26 46 46 46 20 80 |block%!40=&FFF .| 00003bf0 20 28 69 6e 74 66 6c 61 67 25 20 80 20 31 32 29 | (intflag% . 12)| 00003c00 3d 30 20 8c 20 6c 6f 61 64 25 3d b9 0d 13 24 47 |=0 . load%=...$G| 00003c10 20 e7 20 62 6c 6f 63 6b 25 21 32 30 3d 63 6e 74 | . block%!20=cnt| 00003c20 77 69 6e 25 20 80 20 62 6c 6f 63 6b 25 21 32 34 |win% . block%!24| 00003c30 3d 32 36 20 80 20 62 6c 6f 63 6b 25 21 34 30 3d |=26 . block%!40=| 00003c40 66 69 6c 65 74 79 70 65 25 20 8c 20 6c 6f 61 64 |filetype% . load| 00003c50 25 3d b9 0d 13 2e 47 20 e7 20 62 6c 6f 63 6b 25 |%=....G . block%| 00003c60 21 32 30 3d 73 70 72 77 69 6e 25 20 80 20 62 6c |!20=sprwin% . bl| 00003c70 6f 63 6b 25 21 34 30 3d 26 46 46 39 20 80 20 28 |ock%!40=&FF9 . (| 00003c80 69 6e 74 66 6c 61 67 25 20 80 20 31 32 29 3d 30 |intflag% . 12)=0| 00003c90 20 8c 20 6c 6f 61 64 25 3d b9 0d 13 38 06 20 e1 | . load%=...8. .| 00003ca0 0d 13 42 06 20 3a 0d 13 4c 15 20 dd 20 f2 6c 6f |..B. :..L. . .lo| 00003cb0 61 64 28 f8 20 6c 6f 61 64 25 29 0d 13 56 1d 20 |ad(. load%)..V. | 00003cc0 66 69 6c 65 24 3d a4 73 74 72 69 6e 67 28 62 6c |file$=.string(bl| 00003cd0 6f 63 6b 25 2b 34 34 29 0d 13 60 0c 20 6c 6f 61 |ock%+44)..`. loa| 00003ce0 64 25 3d a3 0d 13 6a 17 20 e7 20 62 6c 6f 63 6b |d%=...j. . block| 00003cf0 25 21 34 30 3d 26 46 46 46 20 8c 0d 13 74 29 20 |%!40=&FFF ...t) | 00003d00 c8 99 20 22 4f 53 5f 46 69 6c 65 22 2c 26 30 35 |.. "OS_File",&05| 00003d10 2c 66 69 6c 65 24 20 b8 20 2c 2c 2c 2c 66 6c 65 |,file$ . ,,,,fle| 00003d20 73 7a 65 25 0d 13 7e 26 20 f2 63 6c 61 69 6d 28 |sze%..~& .claim(| 00003d30 68 65 61 70 25 2b 31 36 2c 66 6c 65 73 7a 65 25 |heap%+16,flesze%| 00003d40 2b 34 2c 63 6c 61 69 6d 25 29 0d 13 88 0f 20 e7 |+4,claim%).... .| 00003d50 20 63 6c 61 69 6d 25 20 8c 0d 13 92 18 20 21 28 | claim% ..... !(| 00003d60 68 65 61 70 25 21 31 36 29 3d 66 6c 65 73 7a 65 |heap%!16)=flesze| 00003d70 25 0d 13 9c 26 20 c8 99 20 22 4f 53 5f 46 69 6c |%...& .. "OS_Fil| 00003d80 65 22 2c 26 46 46 2c 66 69 6c 65 24 2c 68 65 61 |e",&FF,file$,hea| 00003d90 70 25 21 31 36 2b 34 0d 13 a6 55 20 e7 20 66 69 |p%!16+4...U . fi| 00003da0 6c 65 24 3d 22 3c 57 69 6d 70 24 53 63 72 61 70 |le$="<Wimp$Scrap| 00003db0 3e 22 20 8c 20 24 28 69 63 6f 6e 74 78 74 25 28 |>" . $(icontxt%(| 00003dc0 33 29 29 3d 22 54 65 78 74 66 69 6c 65 22 2b bd |3))="Textfile"+.| 00003dd0 30 20 8b 20 20 24 28 69 63 6f 6e 74 78 74 25 28 |0 . $(icontxt%(| 00003de0 33 29 29 3d 66 69 6c 65 24 2b bd 30 0d 13 b0 17 |3))=file$+.0....| 00003df0 20 69 6e 70 75 74 25 21 33 32 3d 68 65 61 70 25 | input%!32=heap%| 00003e00 21 31 36 0d 13 ba 0f 20 f2 73 63 61 6c 65 74 65 |!16.... .scalete| 00003e10 78 74 0d 13 c4 3a 20 62 6c 6f 63 6b 25 21 36 34 |xt...: block%!64| 00003e20 3d 74 78 74 77 69 6e 25 3a c8 99 20 22 57 69 6d |=txtwin%:.. "Wim| 00003e30 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 65 |p_GetWindowState| 00003e40 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 13 ce 24 |",,block%+64...$| 00003e50 20 c8 99 20 22 57 69 6d 70 5f 4f 70 65 6e 57 69 | .. "Wimp_OpenWi| 00003e60 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 |ndow",,block%+64| 00003e70 0d 13 d8 37 20 c8 99 20 22 57 69 6d 70 5f 46 6f |...7 .. "Wimp_Fo| 00003e80 72 63 65 52 65 64 72 61 77 22 2c 74 78 74 77 69 |rceRedraw",txtwi| 00003e90 6e 25 2c 30 2c 2d 74 78 74 68 67 74 25 2c 74 78 |n%,0,-txthgt%,tx| 00003ea0 74 77 64 74 25 2c 30 0d 13 e2 0c 20 6c 6f 61 64 |twdt%,0.... load| 00003eb0 25 3d b9 0d 13 ec 06 20 cc 0d 13 f6 0a 20 f2 66 |%=..... ..... .f| 00003ec0 75 6c 6c 0d 14 00 06 20 cd 0d 14 0a 06 20 cd 0d |ull.... ..... ..| 00003ed0 14 14 06 20 3a 0d 14 1e 1c 20 e7 20 62 6c 6f 63 |... :.... . bloc| 00003ee0 6b 25 21 34 30 3d 66 69 6c 65 74 79 70 65 25 20 |k%!40=filetype% | 00003ef0 8c 0d 14 28 29 20 c8 99 20 22 4f 53 5f 46 69 6c |...() .. "OS_Fil| 00003f00 65 22 2c 26 30 35 2c 66 69 6c 65 24 20 b8 20 2c |e",&05,file$ . ,| 00003f10 2c 2c 2c 66 6c 65 73 7a 65 25 0d 14 32 24 20 f2 |,,,flesze%..2$ .| 00003f20 63 6c 61 69 6d 28 68 65 61 70 25 2b 33 32 2c 66 |claim(heap%+32,f| 00003f30 6c 65 73 7a 65 25 2c 63 6c 61 69 6d 25 29 0d 14 |lesze%,claim%)..| 00003f40 3c 0f 20 e7 20 63 6c 61 69 6d 25 20 8c 0d 14 46 |<. . claim% ...F| 00003f50 24 20 c8 99 20 22 4f 53 5f 46 69 6c 65 22 2c 26 |$ .. "OS_File",&| 00003f60 46 46 2c 66 69 6c 65 24 2c 68 65 61 70 25 21 33 |FF,file$,heap%!3| 00003f70 32 0d 14 50 27 20 24 28 69 63 6f 6e 74 78 74 25 |2..P' $(icontxt%| 00003f80 28 31 38 29 29 3d c0 24 28 68 65 61 70 25 21 33 |(18))=.$(heap%!3| 00003f90 32 2b 34 29 2c 32 38 29 0d 14 5a 55 20 e7 20 66 |2+4),28)..ZU . f| 00003fa0 69 6c 65 24 3d 22 3c 57 69 6d 70 24 53 63 72 61 |ile$="<Wimp$Scra| 00003fb0 70 3e 22 20 8c 20 24 28 69 63 6f 6e 74 78 74 25 |p>" . $(icontxt%| 00003fc0 28 31 39 29 29 3d 22 4e 65 74 46 69 6c 65 22 2b |(19))="NetFile"+| 00003fd0 bd 30 20 8b 20 24 28 69 63 6f 6e 74 78 74 25 28 |.0 . $(icontxt%(| 00003fe0 31 39 29 29 3d 66 69 6c 65 24 2b bd 30 0d 14 64 |19))=file$+.0..d| 00003ff0 3b 20 62 6c 6f 63 6b 25 21 36 34 3d 63 6e 74 77 |; block%!64=cntw| 00004000 69 6e 25 3a 62 6c 6f 63 6b 25 21 36 38 3d 32 37 |in%:block%!68=27| 00004010 3a 62 6c 6f 63 6b 25 21 37 32 3d 30 3a 62 6c 6f |:block%!72=0:blo| 00004020 63 6b 25 21 37 36 3d 30 0d 14 6e 26 20 c8 99 20 |ck%!76=0..n& .. | 00004030 22 57 69 6d 70 5f 53 65 74 49 63 6f 6e 53 74 61 |"Wimp_SetIconSta| 00004040 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 14 |te",,block%+64..| 00004050 78 0c 20 6c 6f 61 64 25 3d b9 0d 14 82 06 20 cc |x. load%=..... .| 00004060 0d 14 8c 0a 20 f2 66 75 6c 6c 0d 14 96 06 20 cd |.... .full.... .| 00004070 0d 14 a0 06 20 cd 0d 14 aa 06 20 3a 0d 14 b4 17 |.... ..... :....| 00004080 20 e7 20 62 6c 6f 63 6b 25 21 34 30 3d 26 46 46 | . block%!40=&FF| 00004090 39 20 8c 0d 14 be 29 20 c8 99 20 22 4f 53 5f 46 |9 ....) .. "OS_F| 000040a0 69 6c 65 22 2c 26 30 35 2c 66 69 6c 65 24 20 b8 |ile",&05,file$ .| 000040b0 20 2c 2c 2c 2c 66 6c 65 73 7a 65 25 0d 14 c8 24 | ,,,,flesze%...$| 000040c0 20 66 6c 65 73 7a 65 25 3d 28 66 6c 65 73 7a 65 | flesze%=(flesze| 000040d0 25 2b 26 31 30 31 46 29 20 80 20 ac 20 26 31 46 |%+&101F) . . &1F| 000040e0 0d 14 d2 23 20 f2 63 6c 61 69 6d 28 68 65 61 70 |...# .claim(heap| 000040f0 25 2b 38 2c 66 6c 65 73 7a 65 25 2c 63 6c 61 69 |%+8,flesze%,clai| 00004100 6d 25 29 0d 14 dc 0f 20 e7 20 63 6c 61 69 6d 25 |m%).... . claim%| 00004110 20 8c 0d 14 e6 18 20 21 28 68 65 61 70 25 21 38 | ..... !(heap%!8| 00004120 29 3d 68 65 61 70 25 21 31 32 0d 14 f0 2a 20 c8 |)=heap%!12...* .| 00004130 99 20 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c |. "OS_SpriteOp",| 00004140 32 35 36 2b 31 30 2c 68 65 61 70 25 21 38 2c 66 |256+10,heap%!8,f| 00004150 69 6c 65 24 0d 14 fa 27 20 69 6e 70 75 74 25 21 |ile$...' input%!| 00004160 31 32 3d 68 65 61 70 25 21 38 2b 31 36 2b 21 28 |12=heap%!8+16+!(| 00004170 68 65 61 70 25 21 38 2b 34 38 29 0d 15 04 1e 20 |heap%!8+48).... | 00004180 69 6e 70 75 74 25 21 31 36 3d 21 28 68 65 61 70 |input%!16=!(heap| 00004190 25 21 38 2b 33 32 29 2b 31 0d 15 0e 1e 20 69 6e |%!8+32)+1.... in| 000041a0 70 75 74 25 21 32 30 3d 21 28 68 65 61 70 25 21 |put%!20=!(heap%!| 000041b0 38 2b 33 36 29 2b 31 0d 15 18 1c 20 69 6e 70 75 |8+36)+1.... inpu| 000041c0 74 25 21 32 34 3d 21 28 68 65 61 70 25 21 38 2b |t%!24=!(heap%!8+| 000041d0 34 30 29 0d 15 22 1c 20 69 6e 70 75 74 25 21 32 |40)..". input%!2| 000041e0 38 3d 21 28 68 65 61 70 25 21 38 2b 34 34 29 0d |8=!(heap%!8+44).| 000041f0 15 2c 0d 20 d6 20 69 6e 76 65 72 74 0d 15 36 1e |.,. . invert..6.| 00004200 20 f2 63 6c 61 69 6d 28 68 65 61 70 25 2b 32 34 | .claim(heap%+24| 00004210 2c 34 2c 63 6c 61 69 6d 25 29 0d 15 40 12 20 21 |,4,claim%)..@. !| 00004220 28 68 65 61 70 25 21 32 34 29 3d 30 0d 15 4a 0f |(heap%!24)=0..J.| 00004230 20 f2 74 72 61 6e 73 6c 61 74 65 0d 15 54 11 20 | .translate..T. | 00004240 f2 73 63 61 6c 65 73 70 72 69 74 65 0d 15 5e 3a |.scalesprite..^:| 00004250 20 62 6c 6f 63 6b 25 21 36 34 3d 73 70 72 77 69 | block%!64=sprwi| 00004260 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 65 74 57 |n%:.. "Wimp_GetW| 00004270 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 6c 6f |indowState",,blo| 00004280 63 6b 25 2b 36 34 0d 15 68 24 20 c8 99 20 22 57 |ck%+64..h$ .. "W| 00004290 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c |imp_OpenWindow",| 000042a0 2c 62 6c 6f 63 6b 25 2b 36 34 0d 15 72 31 20 c8 |,block%+64..r1 .| 000042b0 99 20 22 57 69 6d 70 5f 46 6f 72 63 65 52 65 64 |. "Wimp_ForceRed| 000042c0 72 61 77 22 2c 73 70 72 77 69 6e 25 2c 30 2c 2d |raw",sprwin%,0,-| 000042d0 68 67 74 25 2c 77 64 74 25 2c 30 0d 15 7c 0c 20 |hgt%,wdt%,0..|. | 000042e0 6c 6f 61 64 25 3d b9 0d 15 86 06 20 cc 0d 15 90 |load%=..... ....| 000042f0 0a 20 f2 66 75 6c 6c 0d 15 9a 06 20 cd 0d 15 a4 |. .full.... ....| 00004300 06 20 cd 0d 15 ae 06 20 e1 0d 15 b8 06 20 3a 0d |. ..... ..... :.| 00004310 15 c2 15 20 dd 20 a4 6c 65 61 66 28 62 75 66 66 |... . .leaf(buff| 00004320 65 72 25 29 0d 15 cc 0e 20 62 75 66 6f 66 66 25 |er%).... bufoff%| 00004330 3d 30 0d 15 d6 0c 20 73 74 72 24 3d 22 22 0d 15 |=0.... str$=""..| 00004340 e0 29 20 c8 95 20 62 75 66 66 65 72 25 3f 62 75 |.) .. buffer%?bu| 00004350 66 6f 66 66 25 3e 3d 33 32 20 80 20 62 75 66 6f |foff%>=32 . bufo| 00004360 66 66 25 3c 32 35 35 0d 15 ea 21 20 73 74 72 24 |ff%<255...! str$| 00004370 3d 73 74 72 24 2b bd 28 62 75 66 66 65 72 25 3f |=str$+.(buffer%?| 00004380 62 75 66 6f 66 66 25 29 0d 15 f4 23 20 e7 20 62 |bufoff%)...# . b| 00004390 75 66 66 65 72 25 3f 62 75 66 6f 66 66 25 3d 34 |uffer%?bufoff%=4| 000043a0 36 20 8c 20 73 74 72 24 3d 22 22 0d 15 fe 0f 20 |6 . str$="".... | 000043b0 62 75 66 6f 66 66 25 2b 3d 31 0d 16 08 06 20 ce |bufoff%+=1.... .| 000043c0 0d 16 12 0a 20 3d 73 74 72 24 0d 16 1c 06 20 3a |.... =str$.... :| 000043d0 0d 16 26 17 20 dd 20 a4 73 74 72 69 6e 67 28 62 |..&. . .string(b| 000043e0 75 66 66 65 72 25 29 0d 16 30 0e 20 62 75 66 6f |uffer%)..0. bufo| 000043f0 66 66 25 3d 30 0d 16 3a 0c 20 73 74 72 24 3d 22 |ff%=0..:. str$="| 00004400 22 0d 16 44 29 20 c8 95 20 62 75 66 66 65 72 25 |"..D) .. buffer%| 00004410 3f 62 75 66 6f 66 66 25 3e 3d 33 32 20 80 20 62 |?bufoff%>=32 . b| 00004420 75 66 6f 66 66 25 3c 32 35 35 0d 16 4e 21 20 73 |ufoff%<255..N! s| 00004430 74 72 24 3d 73 74 72 24 2b bd 28 62 75 66 66 65 |tr$=str$+.(buffe| 00004440 72 25 3f 62 75 66 6f 66 66 25 29 0d 16 58 0f 20 |r%?bufoff%)..X. | 00004450 62 75 66 6f 66 66 25 2b 3d 31 0d 16 62 06 20 ce |bufoff%+=1..b. .| 00004460 0d 16 6c 0a 20 3d 73 74 72 24 0d 16 76 06 20 3a |..l. =str$..v. :| 00004470 0d 16 80 1b 20 dd 20 a4 6e 75 6d 62 65 72 28 6e |.... . .number(n| 00004480 75 6d 62 65 72 2c 72 6e 64 25 29 0d 16 8a 19 20 |umber,rnd%).... | 00004490 6d 69 64 25 3d a7 c3 28 6e 75 6d 62 65 72 29 2c |mid%=..(number),| 000044a0 bd 34 36 29 0d 16 94 33 20 e7 20 6d 69 64 25 3d |.46)...3 . mid%=| 000044b0 30 20 8c 20 3d c3 28 6e 75 6d 62 65 72 29 20 8b |0 . =.(number) .| 000044c0 20 3d c0 c3 28 6e 75 6d 62 65 72 29 2c 6d 69 64 | =..(number),mid| 000044d0 25 2b 72 6e 64 25 29 0d 16 9e 06 20 3a 0d 16 a8 |%+rnd%).... :...| 000044e0 23 20 dd 20 f2 73 61 76 65 28 74 79 70 65 25 2c |# . .save(type%,| 000044f0 62 75 66 66 65 72 25 2c f8 20 73 61 76 65 25 29 |buffer%,. save%)| 00004500 0d 16 b2 08 20 ea 20 85 0d 16 bc 15 20 ee 20 85 |.... . ..... . .| 00004510 20 ea 20 f2 65 72 72 66 69 6c 65 3a e1 0d 16 c6 | . .errfile:....| 00004520 1b 20 66 69 6c 65 24 3d a4 73 74 72 69 6e 67 28 |. file$=.string(| 00004530 62 75 66 66 65 72 25 29 0d 16 d0 3d 20 73 61 76 |buffer%)...= sav| 00004540 65 25 3d a7 66 69 6c 65 24 2c 22 2e 22 29 20 84 |e%=.file$,".") .| 00004550 20 a7 66 69 6c 65 24 2c 22 3a 22 29 20 84 20 a7 | .file$,":") . .| 00004560 66 69 6c 65 24 2c 22 3c 57 69 6d 70 24 53 63 72 |file$,"<Wimp$Scr| 00004570 61 70 3e 22 29 0d 16 da 0e 20 e7 20 73 61 76 65 |ap>").... . save| 00004580 25 20 8c 0d 16 e4 13 20 e7 20 74 79 70 65 25 3d |% ..... . type%=| 00004590 26 46 46 46 20 8c 0d 16 ee 47 20 c8 99 20 22 4f |&FFF ....G .. "O| 000045a0 53 5f 46 69 6c 65 22 2c 26 30 30 2c 62 75 66 66 |S_File",&00,buff| 000045b0 65 72 25 2c 30 2c 30 2c 28 68 65 61 70 25 21 31 |er%,0,0,(heap%!1| 000045c0 36 29 2b 34 2c 28 68 65 61 70 25 21 31 36 29 2b |6)+4,(heap%!16)+| 000045d0 34 2b 21 28 68 65 61 70 25 21 31 36 29 0d 16 f8 |4+!(heap%!16)...| 000045e0 23 20 c8 99 20 22 4f 53 5f 46 69 6c 65 22 2c 26 |# .. "OS_File",&| 000045f0 31 32 2c 62 75 66 66 65 72 25 2c 74 79 70 65 25 |12,buffer%,type%| 00004600 0d 17 02 06 20 cc 0d 17 0c 22 20 24 28 68 65 61 |.... ...." $(hea| 00004610 70 25 21 33 32 2b 34 29 3d 24 28 69 63 6f 6e 74 |p%!32+4)=$(icont| 00004620 78 74 25 28 31 38 29 29 0d 17 16 40 20 c8 99 20 |xt%(18))...@ .. | 00004630 22 4f 53 5f 46 69 6c 65 22 2c 26 30 30 2c 62 75 |"OS_File",&00,bu| 00004640 66 66 65 72 25 2c 30 2c 30 2c 68 65 61 70 25 21 |ffer%,0,0,heap%!| 00004650 33 32 2c 28 68 65 61 70 25 21 33 32 29 2b 28 68 |32,(heap%!32)+(h| 00004660 65 61 70 25 21 33 36 29 0d 17 20 23 20 c8 99 20 |eap%!36).. # .. | 00004670 22 4f 53 5f 46 69 6c 65 22 2c 26 31 32 2c 62 75 |"OS_File",&12,bu| 00004680 66 66 65 72 25 2c 74 79 70 65 25 0d 17 2a 06 20 |ffer%,type%..*. | 00004690 cd 0d 17 34 06 20 cc 0d 17 3e 0e 20 21 62 6c 6f |...4. ...>. !blo| 000046a0 63 6b 25 3d 30 0d 17 48 43 20 24 28 62 6c 6f 63 |ck%=0..HC $(bloc| 000046b0 6b 25 2b 34 29 3d 22 54 6f 20 73 61 76 65 2c 20 |k%+4)="To save, | 000046c0 64 72 61 67 20 66 69 6c 65 20 69 63 6f 6e 20 74 |drag file icon t| 000046d0 6f 20 64 69 72 65 63 74 6f 72 79 20 76 69 65 77 |o directory view| 000046e0 65 72 22 2b bd 28 30 29 0d 17 52 2d 20 c8 99 20 |er"+.(0)..R- .. | 000046f0 22 57 69 6d 70 5f 52 65 70 6f 72 74 45 72 72 6f |"Wimp_ReportErro| 00004700 72 22 2c 62 6c 6f 63 6b 25 2c 31 2c 22 21 53 63 |r",block%,1,"!Sc| 00004710 72 69 62 65 22 0d 17 5c 06 20 cd 0d 17 66 08 20 |ribe"..\. ...f. | 00004720 f7 20 85 0d 17 70 06 20 e1 0d 17 7a 06 20 3a 0d |. ...p. ...z. :.| 00004730 17 84 0f 20 dd 20 f2 65 72 72 66 69 6c 65 0d 17 |... . .errfile..| 00004740 8e 0e 20 21 62 6c 6f 63 6b 25 3d 30 0d 17 98 18 |.. !block%=0....| 00004750 20 24 28 62 6c 6f 63 6b 25 2b 34 29 3d f6 24 2b | $(block%+4)=.$+| 00004760 bd 28 30 29 0d 17 a2 2d 20 c8 99 20 22 57 69 6d |.(0)...- .. "Wim| 00004770 70 5f 52 65 70 6f 72 74 45 72 72 6f 72 22 2c 62 |p_ReportError",b| 00004780 6c 6f 63 6b 25 2c 31 2c 22 21 53 63 72 69 62 65 |lock%,1,"!Scribe| 00004790 22 0d 17 ac 0c 20 73 61 76 65 25 3d a3 0d 17 b6 |".... save%=....| 000047a0 06 20 e1 0d 17 c0 06 20 3a 0d 17 ca 0f 20 dd 20 |. ..... :.... . | 000047b0 f2 6d 65 73 73 61 67 65 0d 17 d4 14 20 6d 65 73 |.message.... mes| 000047c0 73 25 3d 62 6c 6f 63 6b 25 21 31 36 0d 17 de 0f |s%=block%!16....| 000047d0 20 c8 8e 20 6d 65 73 73 25 20 ca 0d 17 e8 33 20 | .. mess% ....3 | 000047e0 c9 20 26 30 30 30 30 30 3a c8 99 20 22 57 69 6d |. &00000:.. "Wim| 000047f0 70 5f 43 6c 6f 73 65 44 6f 77 6e 22 2c 74 61 73 |p_CloseDown",tas| 00004800 6b 68 61 6e 64 6c 65 25 2c 74 61 73 6b 25 0d 17 |khandle%,task%..| 00004810 f2 19 20 c9 20 31 3a f2 74 65 73 74 6c 6f 61 64 |.. . 1:.testload| 00004820 28 6c 6f 61 64 25 29 0d 17 fc 0e 20 e7 20 6c 6f |(load%).... . lo| 00004830 61 64 25 20 8c 0d 18 06 4b 20 64 61 74 79 70 65 |ad% ....K datype| 00004840 25 3d 62 6c 6f 63 6b 25 21 34 30 3a 64 61 74 65 |%=block%!40:date| 00004850 78 74 25 3d 62 6c 6f 63 6b 25 21 33 36 3a 69 6e |xt%=block%!36:in| 00004860 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 |tflag%=intflag% | 00004870 80 20 ac 20 35 31 32 3a 63 6c 61 69 6d 25 3d a3 |. . 512:claim%=.| 00004880 0d 18 10 48 20 e7 20 64 61 74 79 70 65 25 3d 26 |...H . datype%=&| 00004890 46 46 46 20 8c 20 f2 63 6c 61 69 6d 28 68 65 61 |FFF . .claim(hea| 000048a0 70 25 2b 31 36 2c 64 61 74 65 78 74 25 2b 34 2c |p%+16,datext%+4,| 000048b0 63 6c 61 69 6d 25 29 3a 64 61 74 61 25 3d 68 65 |claim%):data%=he| 000048c0 61 70 25 21 31 36 2b 34 0d 18 1a 49 20 e7 20 64 |ap%!16+4...I . d| 000048d0 61 74 79 70 65 25 3d 66 69 6c 65 74 79 70 65 25 |atype%=filetype%| 000048e0 20 8c 20 f2 63 6c 61 69 6d 28 68 65 61 70 25 2b | . .claim(heap%+| 000048f0 33 32 2c 64 61 74 65 78 74 25 2c 63 6c 61 69 6d |32,datext%,claim| 00004900 25 29 3a 64 61 74 61 25 3d 68 65 61 70 25 21 33 |%):data%=heap%!3| 00004910 32 0d 18 24 44 20 e7 20 64 61 74 79 70 65 25 3d |2..$D . datype%=| 00004920 26 46 46 39 20 8c 20 f2 63 6c 61 69 6d 28 68 65 |&FF9 . .claim(he| 00004930 61 70 25 2b 38 2c 64 61 74 65 78 74 25 2c 63 6c |ap%+8,datext%,cl| 00004940 61 69 6d 25 29 3a 64 61 74 61 25 3d 68 65 61 70 |aim%):data%=heap| 00004950 25 21 38 2b 34 0d 18 2e 0f 20 e7 20 63 6c 61 69 |%!8+4.... . clai| 00004960 6d 25 20 8c 0d 18 38 17 20 62 6c 6f 63 6b 25 21 |m% ...8. block%!| 00004970 31 32 3d 62 6c 6f 63 6b 25 21 38 0d 18 42 10 20 |12=block%!8..B. | 00004980 62 6c 6f 63 6b 25 21 31 36 3d 36 0d 18 4c 14 20 |block%!16=6..L. | 00004990 62 6c 6f 63 6b 25 21 32 30 3d 64 61 74 61 25 0d |block%!20=data%.| 000049a0 18 56 16 20 62 6c 6f 63 6b 25 21 32 34 3d 64 61 |.V. block%!24=da| 000049b0 74 65 78 74 25 0d 18 60 2d 20 c8 99 20 22 57 69 |text%..`- .. "Wi| 000049c0 6d 70 5f 53 65 6e 64 4d 65 73 73 61 67 65 22 2c |mp_SendMessage",| 000049d0 31 38 2c 62 6c 6f 63 6b 25 2c 62 6c 6f 63 6b 25 |18,block%,block%| 000049e0 21 34 0d 18 6a 06 20 cc 0d 18 74 0a 20 f2 66 75 |!4..j. ...t. .fu| 000049f0 6c 6c 0d 18 7e 06 20 cd 0d 18 88 06 20 cd 0d 18 |ll..~. ..... ...| 00004a00 92 06 20 3a 0d 18 9c 2e 20 c9 20 26 30 30 30 30 |.. :.... . &0000| 00004a10 32 3a f2 73 61 76 65 28 62 6c 6f 63 6b 25 21 34 |2:.save(block%!4| 00004a20 30 2c 62 6c 6f 63 6b 25 2b 34 34 2c 73 61 76 65 |0,block%+44,save| 00004a30 25 29 0d 18 a6 0e 20 e7 20 73 61 76 65 25 20 8c |%).... . save% .| 00004a40 0d 18 b0 17 20 e7 20 62 6c 6f 63 6b 25 21 34 30 |.... . block%!40| 00004a50 3d 26 46 46 46 20 8c 0d 18 ba 52 20 e7 20 ac 28 |=&FFF ....R . .(| 00004a60 a4 73 74 72 69 6e 67 28 62 6c 6f 63 6b 25 2b 34 |.string(block%+4| 00004a70 34 29 3d 22 3c 57 69 6d 70 24 53 63 72 61 70 3e |4)="<Wimp$Scrap>| 00004a80 22 29 20 8c 20 24 28 69 63 6f 6e 74 78 74 25 28 |") . $(icontxt%(| 00004a90 33 29 29 3d a4 73 74 72 69 6e 67 28 62 6c 6f 63 |3))=.string(bloc| 00004aa0 6b 25 2b 34 34 29 2b bd 30 0d 18 c4 06 20 cc 0d |k%+44)+.0.... ..| 00004ab0 18 ce 53 20 e7 20 ac 28 a4 73 74 72 69 6e 67 28 |..S . .(.string(| 00004ac0 62 6c 6f 63 6b 25 2b 34 34 29 3d 22 3c 57 69 6d |block%+44)="<Wim| 00004ad0 70 24 53 63 72 61 70 3e 22 29 20 8c 20 24 28 69 |p$Scrap>") . $(i| 00004ae0 63 6f 6e 74 78 74 25 28 31 39 29 29 3d a4 73 74 |contxt%(19))=.st| 00004af0 72 69 6e 67 28 62 6c 6f 63 6b 25 2b 34 34 29 2b |ring(block%+44)+| 00004b00 bd 30 0d 18 d8 06 20 cd 0d 18 e2 17 20 62 6c 6f |.0.... ..... blo| 00004b10 63 6b 25 21 31 32 3d 62 6c 6f 63 6b 25 21 38 0d |ck%!12=block%!8.| 00004b20 18 ec 10 20 62 6c 6f 63 6b 25 21 31 36 3d 33 0d |... block%!16=3.| 00004b30 18 f6 2d 20 c8 99 20 22 57 69 6d 70 5f 53 65 6e |..- .. "Wimp_Sen| 00004b40 64 4d 65 73 73 61 67 65 22 2c 31 37 2c 62 6c 6f |dMessage",17,blo| 00004b50 63 6b 25 2c 62 6c 6f 63 6b 25 21 34 0d 19 00 39 |ck%,block%!4...9| 00004b60 20 e7 20 62 6c 6f 63 6b 25 21 34 30 3d 26 46 46 | . block%!40=&FF| 00004b70 46 20 8c 20 21 62 6c 6f 63 6b 25 3d 74 73 76 77 |F . !block%=tsvw| 00004b80 69 6e 25 20 8b 20 21 62 6c 6f 63 6b 25 3d 6e 73 |in% . !block%=ns| 00004b90 76 77 69 6e 25 0d 19 0a 22 20 c8 99 20 22 57 69 |vwin%..." .. "Wi| 00004ba0 6d 70 5f 43 6c 6f 73 65 57 69 6e 64 6f 77 22 2c |mp_CloseWindow",| 00004bb0 2c 62 6c 6f 63 6b 25 0d 19 14 1d 20 c8 99 20 22 |,block%.... .. "| 00004bc0 57 69 6d 70 5f 43 72 65 61 74 65 4d 65 6e 75 22 |Wimp_CreateMenu"| 00004bd0 2c 2c 2d 31 0d 19 1e 06 20 cd 0d 19 28 06 20 3a |,,-1.... ...(. :| 00004be0 0d 19 32 0d 20 c9 20 26 30 30 30 30 33 0d 19 3c |..2. . &00003..<| 00004bf0 15 20 f2 74 65 73 74 6c 6f 61 64 28 6c 6f 61 64 |. .testload(load| 00004c00 25 29 0d 19 46 1b 20 e7 20 6c 6f 61 64 25 20 8c |%)..F. . load% .| 00004c10 20 f2 6c 6f 61 64 28 6c 6f 61 64 25 29 0d 19 50 | .load(load%)..P| 00004c20 0e 20 e7 20 6c 6f 61 64 25 20 8c 0d 19 5a 23 20 |. . load% ...Z# | 00004c30 62 6c 6f 63 6b 25 21 31 32 3d 62 6c 6f 63 6b 25 |block%!12=block%| 00004c40 21 38 3a 62 6c 6f 63 6b 25 21 31 36 3d 34 0d 19 |!8:block%!16=4..| 00004c50 64 2d 20 c8 99 20 22 57 69 6d 70 5f 53 65 6e 64 |d- .. "Wimp_Send| 00004c60 4d 65 73 73 61 67 65 22 2c 31 37 2c 62 6c 6f 63 |Message",17,bloc| 00004c70 6b 25 2c 62 6c 6f 63 6b 25 21 34 0d 19 6e 06 20 |k%,block%!4..n. | 00004c80 cd 0d 19 78 06 20 cd 0d 19 82 0d 20 c9 20 26 30 |...x. ..... . &0| 00004c90 30 30 30 36 0d 19 8c 23 20 62 6c 6f 63 6b 25 21 |0006...# block%!| 00004ca0 31 32 3d 62 6c 6f 63 6b 25 21 38 3a 62 6c 6f 63 |12=block%!8:bloc| 00004cb0 6b 25 21 31 36 3d 37 0d 19 96 30 20 e7 20 28 62 |k%!16=7...0 . (b| 00004cc0 6c 6f 63 6b 25 21 32 34 2d 64 61 74 65 78 74 25 |lock%!24-datext%| 00004cd0 29 3e 30 20 8c 20 62 6c 6f 63 6b 25 21 32 34 3d |)>0 . block%!24=| 00004ce0 64 61 74 65 78 74 25 0d 19 a0 4b 20 c8 99 20 22 |datext%...K .. "| 00004cf0 57 69 6d 70 5f 54 72 61 6e 73 66 65 72 42 6c 6f |Wimp_TransferBlo| 00004d00 63 6b 22 2c 74 61 73 6b 68 61 6e 64 6c 65 25 2c |ck",taskhandle%,| 00004d10 64 61 74 61 25 2c 62 6c 6f 63 6b 25 21 34 2c 62 |data%,block%!4,b| 00004d20 6c 6f 63 6b 25 21 32 30 2c 62 6c 6f 63 6b 25 21 |lock%!20,block%!| 00004d30 32 34 0d 19 aa 2d 20 c8 99 20 22 57 69 6d 70 5f |24...- .. "Wimp_| 00004d40 53 65 6e 64 4d 65 73 73 61 67 65 22 2c 31 38 2c |SendMessage",18,| 00004d50 62 6c 6f 63 6b 25 2c 62 6c 6f 63 6b 25 21 34 0d |block%,block%!4.| 00004d60 19 b4 28 20 64 61 74 61 25 2b 3d 62 6c 6f 63 6b |..( data%+=block| 00004d70 25 21 32 34 3a 64 61 74 65 78 74 25 2d 3d 62 6c |%!24:datext%-=bl| 00004d80 6f 63 6b 25 21 32 34 0d 19 be 0d 20 c9 20 26 30 |ock%!24.... . &0| 00004d90 30 30 30 37 0d 19 c8 1c 20 69 6e 74 66 6c 61 67 |0007.... intflag| 00004da0 25 3d 69 6e 74 66 6c 61 67 25 20 84 20 35 31 32 |%=intflag% . 512| 00004db0 0d 19 d2 1a 20 e7 20 62 6c 6f 63 6b 25 21 32 34 |.... . block%!24| 00004dc0 3d 64 61 74 65 78 74 25 20 8c 0d 19 dc 2b 20 64 |=datext% ....+ d| 00004dd0 61 74 61 25 2b 3d 62 6c 6f 63 6b 25 21 32 34 3a |ata%+=block%!24:| 00004de0 64 61 74 65 78 74 25 3d 31 30 32 34 3a 63 6c 61 |datext%=1024:cla| 00004df0 69 6d 25 3d a3 0d 19 e6 3e 20 e7 20 64 61 74 79 |im%=....> . daty| 00004e00 70 65 25 3d 26 46 46 46 20 8c 20 f2 63 6c 61 69 |pe%=&FFF . .clai| 00004e10 6d 28 68 65 61 70 25 2b 31 36 2c 68 65 61 70 25 |m(heap%+16,heap%| 00004e20 21 32 30 2b 64 61 74 65 78 74 25 2c 63 6c 61 69 |!20+datext%,clai| 00004e30 6d 25 29 0d 19 f0 43 20 e7 20 64 61 74 79 70 65 |m%)...C . datype| 00004e40 25 3d 66 69 6c 65 74 79 70 65 25 20 8c 20 f2 63 |%=filetype% . .c| 00004e50 6c 61 69 6d 28 68 65 61 70 25 2b 33 32 2c 68 65 |laim(heap%+32,he| 00004e60 61 70 25 21 33 36 2b 64 61 74 65 78 74 25 2c 63 |ap%!36+datext%,c| 00004e70 6c 61 69 6d 25 29 0d 19 fa 3d 20 e7 20 64 61 74 |laim%)...= . dat| 00004e80 79 70 65 25 3d 26 46 46 39 20 8c 20 f2 63 6c 61 |ype%=&FF9 . .cla| 00004e90 69 6d 28 68 65 61 70 25 2b 38 2c 68 65 61 70 25 |im(heap%+8,heap%| 00004ea0 21 31 32 2b 64 61 74 65 78 74 25 2c 63 6c 61 69 |!12+datext%,clai| 00004eb0 6d 25 29 0d 1a 04 0f 20 e7 20 63 6c 61 69 6d 25 |m%).... . claim%| 00004ec0 20 8c 0d 1a 0e 45 20 62 6c 6f 63 6b 25 21 31 32 | ....E block%!12| 00004ed0 3d 62 6c 6f 63 6b 25 21 38 3a 62 6c 6f 63 6b 25 |=block%!8:block%| 00004ee0 21 31 36 3d 36 3a 62 6c 6f 63 6b 25 21 32 30 3d |!16=6:block%!20=| 00004ef0 64 61 74 61 25 3a 62 6c 6f 63 6b 25 21 32 34 3d |data%:block%!24=| 00004f00 64 61 74 65 78 74 25 0d 1a 18 2d 20 c8 99 20 22 |datext%...- .. "| 00004f10 57 69 6d 70 5f 53 65 6e 64 4d 65 73 73 61 67 65 |Wimp_SendMessage| 00004f20 22 2c 31 38 2c 62 6c 6f 63 6b 25 2c 62 6c 6f 63 |",18,block%,bloc| 00004f30 6b 25 21 34 0d 1a 22 06 20 cc 0d 1a 2c 15 20 f2 |k%!4..". ...,. .| 00004f40 70 69 70 65 62 72 65 61 6b 3a f2 66 75 6c 6c 0d |pipebreak:.full.| 00004f50 1a 36 06 20 cd 0d 1a 40 06 20 cc 0d 1a 4a 15 20 |.6. ...@. ...J. | 00004f60 e7 20 64 61 74 79 70 65 25 3d 26 46 46 46 20 8c |. datype%=&FFF .| 00004f70 0d 1a 54 37 20 f2 63 6c 61 69 6d 28 68 65 61 70 |..T7 .claim(heap| 00004f80 25 2b 31 36 2c 68 65 61 70 25 21 32 30 2b 62 6c |%+16,heap%!20+bl| 00004f90 6f 63 6b 25 21 32 34 2d 64 61 74 65 78 74 25 2c |ock%!24-datext%,| 00004fa0 63 6c 61 69 6d 25 29 0d 1a 5e 38 20 21 28 68 65 |claim%)..^8 !(he| 00004fb0 61 70 25 21 31 36 29 3d 68 65 61 70 25 21 32 30 |ap%!16)=heap%!20| 00004fc0 2d 34 3a 24 28 69 63 6f 6e 74 78 74 25 28 33 29 |-4:$(icontxt%(3)| 00004fd0 29 3d 22 54 65 78 74 66 69 6c 65 22 2b bd 30 0d |)="Textfile"+.0.| 00004fe0 1a 68 0f 20 f2 73 63 61 6c 65 74 65 78 74 0d 1a |.h. .scaletext..| 00004ff0 72 3a 20 62 6c 6f 63 6b 25 21 36 34 3d 74 78 74 |r: block%!64=txt| 00005000 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 65 |win%:.. "Wimp_Ge| 00005010 74 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 |tWindowState",,b| 00005020 6c 6f 63 6b 25 2b 36 34 0d 1a 7c 24 20 c8 99 20 |lock%+64..|$ .. | 00005030 22 57 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 |"Wimp_OpenWindow| 00005040 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 1a 86 37 |",,block%+64...7| 00005050 20 c8 99 20 22 57 69 6d 70 5f 46 6f 72 63 65 52 | .. "Wimp_ForceR| 00005060 65 64 72 61 77 22 2c 74 78 74 77 69 6e 25 2c 30 |edraw",txtwin%,0| 00005070 2c 2d 74 78 74 68 67 74 25 2c 74 78 74 77 64 74 |,-txthgt%,txtwdt| 00005080 25 2c 30 0d 1a 90 06 20 cd 0d 1a 9a 1a 20 e7 20 |%,0.... ..... . | 00005090 64 61 74 79 70 65 25 3d 66 69 6c 65 74 79 70 65 |datype%=filetype| 000050a0 25 20 8c 0d 1a a4 37 20 f2 63 6c 61 69 6d 28 68 |% ....7 .claim(h| 000050b0 65 61 70 25 2b 33 32 2c 68 65 61 70 25 21 33 36 |eap%+32,heap%!36| 000050c0 2b 62 6c 6f 63 6b 25 21 32 34 2d 64 61 74 65 78 |+block%!24-datex| 000050d0 74 25 2c 63 6c 61 69 6d 25 29 0d 1a ae 27 20 24 |t%,claim%)...' $| 000050e0 28 69 63 6f 6e 74 78 74 25 28 31 38 29 29 3d c0 |(icontxt%(18))=.| 000050f0 24 28 68 65 61 70 25 21 33 32 2b 34 29 2c 32 38 |$(heap%!32+4),28| 00005100 29 0d 1a b8 21 20 24 28 69 63 6f 6e 74 78 74 25 |)...! $(icontxt%| 00005110 28 31 39 29 29 3d 22 4e 65 74 46 69 6c 65 22 2b |(19))="NetFile"+| 00005120 bd 30 0d 1a c2 3b 20 62 6c 6f 63 6b 25 21 36 34 |.0...; block%!64| 00005130 3d 63 6e 74 77 69 6e 25 3a 62 6c 6f 63 6b 25 21 |=cntwin%:block%!| 00005140 36 38 3d 32 37 3a 62 6c 6f 63 6b 25 21 37 32 3d |68=27:block%!72=| 00005150 30 3a 62 6c 6f 63 6b 25 21 37 36 3d 30 0d 1a cc |0:block%!76=0...| 00005160 26 20 c8 99 20 22 57 69 6d 70 5f 53 65 74 49 63 |& .. "Wimp_SetIc| 00005170 6f 6e 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 |onState",,block%| 00005180 2b 36 34 0d 1a d6 06 20 cd 0d 1a e0 15 20 e7 20 |+64.... ..... . | 00005190 64 61 74 79 70 65 25 3d 26 46 46 39 20 8c 0d 1a |datype%=&FF9 ...| 000051a0 ea 36 20 f2 63 6c 61 69 6d 28 68 65 61 70 25 2b |.6 .claim(heap%+| 000051b0 38 2c 68 65 61 70 25 21 31 32 2b 62 6c 6f 63 6b |8,heap%!12+block| 000051c0 25 21 32 34 2d 64 61 74 65 78 74 25 2c 63 6c 61 |%!24-datext%,cla| 000051d0 69 6d 25 29 0d 1a f4 18 20 21 28 68 65 61 70 25 |im%).... !(heap%| 000051e0 21 38 29 3d 68 65 61 70 25 21 31 32 0d 1a fe 27 |!8)=heap%!12...'| 000051f0 20 69 6e 70 75 74 25 21 31 32 3d 68 65 61 70 25 | input%!12=heap%| 00005200 21 38 2b 31 36 2b 21 28 68 65 61 70 25 21 38 2b |!8+16+!(heap%!8+| 00005210 34 38 29 0d 1b 08 1e 20 69 6e 70 75 74 25 21 31 |48).... input%!1| 00005220 36 3d 21 28 68 65 61 70 25 21 38 2b 33 32 29 2b |6=!(heap%!8+32)+| 00005230 31 0d 1b 12 1e 20 69 6e 70 75 74 25 21 32 30 3d |1.... input%!20=| 00005240 21 28 68 65 61 70 25 21 38 2b 33 36 29 2b 31 0d |!(heap%!8+36)+1.| 00005250 1b 1c 1c 20 69 6e 70 75 74 25 21 32 34 3d 21 28 |... input%!24=!(| 00005260 68 65 61 70 25 21 38 2b 34 30 29 0d 1b 26 1c 20 |heap%!8+40)..&. | 00005270 69 6e 70 75 74 25 21 32 38 3d 21 28 68 65 61 70 |input%!28=!(heap| 00005280 25 21 38 2b 34 34 29 0d 1b 30 0d 20 d6 20 69 6e |%!8+44)..0. . in| 00005290 76 65 72 74 0d 1b 3a 1e 20 f2 63 6c 61 69 6d 28 |vert..:. .claim(| 000052a0 68 65 61 70 25 2b 32 34 2c 34 2c 63 6c 61 69 6d |heap%+24,4,claim| 000052b0 25 29 0d 1b 44 12 20 21 28 68 65 61 70 25 21 32 |%)..D. !(heap%!2| 000052c0 34 29 3d 30 0d 1b 4e 0f 20 f2 74 72 61 6e 73 6c |4)=0..N. .transl| 000052d0 61 74 65 0d 1b 58 11 20 f2 73 63 61 6c 65 73 70 |ate..X. .scalesp| 000052e0 72 69 74 65 0d 1b 62 3a 20 62 6c 6f 63 6b 25 21 |rite..b: block%!| 000052f0 36 34 3d 73 70 72 77 69 6e 25 3a c8 99 20 22 57 |64=sprwin%:.. "W| 00005300 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 |imp_GetWindowSta| 00005310 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 1b |te",,block%+64..| 00005320 6c 24 20 c8 99 20 22 57 69 6d 70 5f 4f 70 65 6e |l$ .. "Wimp_Open| 00005330 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 2b |Window",,block%+| 00005340 36 34 0d 1b 76 31 20 c8 99 20 22 57 69 6d 70 5f |64..v1 .. "Wimp_| 00005350 46 6f 72 63 65 52 65 64 72 61 77 22 2c 73 70 72 |ForceRedraw",spr| 00005360 77 69 6e 25 2c 30 2c 2d 68 67 74 25 2c 77 64 74 |win%,0,-hgt%,wdt| 00005370 25 2c 30 0d 1b 80 06 20 cd 0d 1b 8a 06 20 cd 0d |%,0.... ..... ..| 00005380 1b 94 0d 20 c9 20 26 34 30 30 43 30 0d 1b 9e 25 |... . &400C0...%| 00005390 20 e7 20 62 6c 6f 63 6b 25 21 32 30 3d 6c 69 6d | . block%!20=lim| 000053a0 77 69 6e 25 20 8c 20 f2 73 68 6f 77 6c 69 6d 69 |win% . .showlimi| 000053b0 74 0d 1b a8 3b 20 c8 99 20 22 57 69 6d 70 5f 43 |t...; .. "Wimp_C| 000053c0 72 65 61 74 65 53 75 62 4d 65 6e 75 22 2c 2c 62 |reateSubMenu",,b| 000053d0 6c 6f 63 6b 25 21 32 30 2c 62 6c 6f 63 6b 25 21 |lock%!20,block%!| 000053e0 32 34 2c 62 6c 6f 63 6b 25 21 32 38 0d 1b b2 18 |24,block%!28....| 000053f0 20 c9 20 26 34 30 30 43 31 3a f2 74 72 61 6e 73 | . &400C1:.trans| 00005400 6c 61 74 65 0d 1b bc 1c 20 f2 73 63 61 6c 65 73 |late.... .scales| 00005410 70 72 69 74 65 3a f2 73 63 61 6c 65 74 65 78 74 |prite:.scaletext| 00005420 0d 1b c6 06 20 cb 0d 1b d0 06 20 e1 0d 1b da 06 |.... ..... .....| 00005430 20 3a 0d 1b e4 13 20 dd 20 f2 61 63 6b 6e 6f 77 | :.... . .acknow| 00005440 6c 65 64 67 65 0d 1b ee 14 20 6d 65 73 73 25 3d |ledge.... mess%=| 00005450 62 6c 6f 63 6b 25 21 31 36 0d 1b f8 0f 20 c8 8e |block%!16.... ..| 00005460 20 6d 65 73 73 25 20 ca 0d 1c 02 08 20 c9 20 36 | mess% ..... . 6| 00005470 0d 1c 0c 1b 20 e7 20 28 69 6e 74 66 6c 61 67 25 |.... . (intflag%| 00005480 20 80 20 35 31 32 29 3d 30 20 8c 0d 1c 16 11 20 | . 512)=0 ..... | 00005490 62 6c 6f 63 6b 25 21 33 36 3d 2d 31 0d 1c 20 25 |block%!36=-1.. %| 000054a0 20 24 28 62 6c 6f 63 6b 25 2b 34 34 29 3d 22 3c | $(block%+44)="<| 000054b0 57 69 6d 70 24 53 63 72 61 70 3e 22 2b bd 28 30 |Wimp$Scrap>"+.(0| 000054c0 29 0d 1c 2a 23 20 62 6c 6f 63 6b 25 21 31 32 3d |)..*# block%!12=| 000054d0 62 6c 6f 63 6b 25 21 38 3a 62 6c 6f 63 6b 25 21 |block%!8:block%!| 000054e0 31 36 3d 32 0d 1c 34 0f 20 21 62 6c 6f 63 6b 25 |16=2..4. !block%| 000054f0 3d 36 30 0d 1c 3e 2d 20 c8 99 20 22 57 69 6d 70 |=60..>- .. "Wimp| 00005500 5f 53 65 6e 64 4d 65 73 73 61 67 65 22 2c 31 37 |_SendMessage",17| 00005510 2c 62 6c 6f 63 6b 25 2c 62 6c 6f 63 6b 25 21 34 |,block%,block%!4| 00005520 0d 1c 48 06 20 cc 0d 1c 52 0f 20 f2 70 69 70 65 |..H. ...R. .pipe| 00005530 62 72 65 61 6b 0d 1c 5c 0e 20 21 62 6c 6f 63 6b |break..\. !block| 00005540 25 3d 30 0d 1c 66 2a 20 24 28 62 6c 6f 63 6b 25 |%=0..f* $(block%| 00005550 2b 34 29 3d 22 44 61 74 61 20 74 72 61 6e 73 66 |+4)="Data transf| 00005560 65 72 20 66 61 69 6c 65 64 22 2b bd 30 0d 1c 70 |er failed"+.0..p| 00005570 2d 20 c8 99 20 22 57 69 6d 70 5f 52 65 70 6f 72 |- .. "Wimp_Repor| 00005580 74 45 72 72 6f 72 22 2c 62 6c 6f 63 6b 25 2c 31 |tError",block%,1| 00005590 2c 22 21 53 63 72 69 62 65 22 0d 1c 7a 06 20 cd |,"!Scribe"..z. .| 000055a0 0d 1c 84 06 20 cb 0d 1c 8e 06 20 e1 0d 1c 98 06 |.... ..... .....| 000055b0 20 3a 0d 1c a2 11 20 dd 20 f2 70 69 70 65 62 72 | :.... . .pipebr| 000055c0 65 61 6b 0d 1c ac 15 20 e7 20 64 61 74 79 70 65 |eak.... . datype| 000055d0 25 3d 26 46 46 46 20 8c 0d 1c b6 2d 20 f2 63 6c |%=&FFF ....- .cl| 000055e0 61 69 6d 28 68 65 61 70 25 21 31 36 2c 33 32 2c |aim(heap%!16,32,| 000055f0 63 6c 61 69 6d 25 29 3a 21 28 68 65 61 70 25 21 |claim%):!(heap%!| 00005600 31 36 29 3d 30 0d 1c c0 0f 20 f2 73 63 61 6c 65 |16)=0.... .scale| 00005610 74 65 78 74 0d 1c ca 3a 20 62 6c 6f 63 6b 25 21 |text...: block%!| 00005620 36 34 3d 74 78 74 77 69 6e 25 3a c8 99 20 22 57 |64=txtwin%:.. "W| 00005630 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 |imp_GetWindowSta| 00005640 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 1c |te",,block%+64..| 00005650 d4 37 20 c8 99 20 22 57 69 6d 70 5f 46 6f 72 63 |.7 .. "Wimp_Forc| 00005660 65 52 65 64 72 61 77 22 2c 74 78 74 77 69 6e 25 |eRedraw",txtwin%| 00005670 2c 30 2c 2d 74 78 74 68 67 74 25 2c 74 78 74 77 |,0,-txthgt%,txtw| 00005680 64 74 25 2c 30 0d 1c de 06 20 cd 0d 1c e8 15 20 |dt%,0.... ..... | 00005690 e7 20 64 61 74 79 70 65 25 3d 26 46 46 39 20 8c |. datype%=&FF9 .| 000056a0 0d 1c f2 1e 20 f2 63 6c 61 69 6d 28 68 65 61 70 |.... .claim(heap| 000056b0 25 2b 38 2c 33 32 2c 63 6c 61 69 6d 25 29 0d 1c |%+8,32,claim%)..| 000056c0 fc 42 20 21 28 68 65 61 70 25 21 38 29 3d 33 32 |.B !(heap%!8)=32| 000056d0 3a 21 28 68 65 61 70 25 21 38 2b 34 29 3d 30 3a |:!(heap%!8+4)=0:| 000056e0 21 28 68 65 61 70 25 21 38 2b 38 29 3d 31 36 3a |!(heap%!8+8)=16:| 000056f0 21 28 68 65 61 70 25 21 38 2b 31 32 29 3d 31 36 |!(heap%!8+12)=16| 00005700 0d 1d 06 2c 20 f2 63 6c 61 69 6d 28 68 65 61 70 |..., .claim(heap| 00005710 25 2b 32 34 2c 34 2c 63 6c 61 69 6d 25 29 3a 21 |%+24,4,claim%):!| 00005720 28 68 65 61 70 25 21 32 34 29 3d 30 0d 1d 10 1c |(heap%!24)=0....| 00005730 20 f2 74 72 61 6e 73 6c 61 74 65 3a f2 73 63 61 | .translate:.sca| 00005740 6c 65 73 70 72 69 74 65 0d 1d 1a 3a 20 62 6c 6f |lesprite...: blo| 00005750 63 6b 25 21 36 34 3d 73 70 72 77 69 6e 25 3a c8 |ck%!64=sprwin%:.| 00005760 99 20 22 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f |. "Wimp_GetWindo| 00005770 77 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b |wState",,block%+| 00005780 36 34 0d 1d 24 31 20 c8 99 20 22 57 69 6d 70 5f |64..$1 .. "Wimp_| 00005790 46 6f 72 63 65 52 65 64 72 61 77 22 2c 73 70 72 |ForceRedraw",spr| 000057a0 77 69 6e 25 2c 30 2c 2d 68 67 74 25 2c 77 64 74 |win%,0,-hgt%,wdt| 000057b0 25 2c 30 0d 1d 2e 06 20 cd 0d 1d 38 06 20 e1 0d |%,0.... ...8. ..| 000057c0 1d 42 06 20 3a 0d 1d 4c 10 20 dd 20 f2 6b 65 79 |.B. :..L. . .key| 000057d0 70 72 65 73 73 0d 1d 56 14 20 77 69 6e 64 6f 77 |press..V. window| 000057e0 25 3d 21 62 6c 6f 63 6b 25 0d 1d 60 13 20 69 63 |%=!block%..`. ic| 000057f0 6f 6e 25 3d 62 6c 6f 63 6b 25 21 34 0d 1d 6a 13 |on%=block%!4..j.| 00005800 20 63 68 72 25 3d 62 6c 6f 63 6b 25 21 32 34 0d | chr%=block%!24.| 00005810 1d 74 11 20 c8 8e 20 77 69 6e 64 6f 77 25 20 ca |.t. .. window% .| 00005820 0d 1d 7e 0e 20 c9 20 6d 61 67 77 69 6e 25 0d 1d |..~. . magwin%..| 00005830 88 10 20 e7 20 63 68 72 25 3d 31 33 20 8c 0d 1d |.. . chr%=13 ...| 00005840 92 36 20 73 63 61 6c 65 25 21 28 31 36 2b 34 2a |.6 scale%!(16+4*| 00005850 69 63 6f 6e 25 29 3d bb 28 a4 73 74 72 69 6e 67 |icon%)=.(.string| 00005860 28 69 63 6f 6e 74 78 74 25 28 31 2b 69 63 6f 6e |(icontxt%(1+icon| 00005870 25 29 29 29 0d 1d 9c 34 20 e7 20 73 63 61 6c 65 |%)))...4 . scale| 00005880 25 21 28 31 36 2b 34 2a 69 63 6f 6e 25 29 3c 31 |%!(16+4*icon%)<1| 00005890 20 8c 20 73 63 61 6c 65 25 21 28 31 36 2b 34 2a | . scale%!(16+4*| 000058a0 69 63 6f 6e 25 29 3d 31 0d 1d a6 35 20 24 28 69 |icon%)=1...5 $(i| 000058b0 63 6f 6e 74 78 74 25 28 31 2b 69 63 6f 6e 25 29 |contxt%(1+icon%)| 000058c0 29 3d c3 28 73 63 61 6c 65 25 21 28 31 36 2b 34 |)=.(scale%!(16+4| 000058d0 2a 69 63 6f 6e 25 29 29 2b bd 28 30 29 0d 1d b0 |*icon%))+.(0)...| 000058e0 3a 20 62 6c 6f 63 6b 25 21 38 3d 30 3a 62 6c 6f |: block%!8=0:blo| 000058f0 63 6b 25 21 31 32 3d 30 3a c8 99 20 22 57 69 6d |ck%!12=0:.. "Wim| 00005900 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_SetIconState",| 00005910 2c 62 6c 6f 63 6b 25 0d 1d ba 11 20 f2 73 63 61 |,block%.... .sca| 00005920 6c 65 73 70 72 69 74 65 0d 1d c4 35 20 21 62 6c |lesprite...5 !bl| 00005930 6f 63 6b 25 3d 73 70 72 77 69 6e 25 3a c8 99 20 |ock%=sprwin%:.. | 00005940 22 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 |"Wimp_GetWindowS| 00005950 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 0d 1d ce |tate",,block%...| 00005960 21 20 c8 99 20 22 57 69 6d 70 5f 4f 70 65 6e 57 |! .. "Wimp_OpenW| 00005970 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 1d |indow",,block%..| 00005980 d8 31 20 c8 99 20 22 57 69 6d 70 5f 46 6f 72 63 |.1 .. "Wimp_Forc| 00005990 65 52 65 64 72 61 77 22 2c 73 70 72 77 69 6e 25 |eRedraw",sprwin%| 000059a0 2c 30 2c 2d 68 67 74 25 2c 77 64 74 25 2c 30 0d |,0,-hgt%,wdt%,0.| 000059b0 1d e2 06 20 cd 0d 1d ec 36 20 e7 20 63 68 72 25 |... ....6 . chr%| 000059c0 3d 33 39 39 20 84 20 63 68 72 25 3d 33 39 38 20 |=399 . chr%=398 | 000059d0 84 20 63 68 72 25 3d 31 33 20 8c 20 69 63 6f 6e |. chr%=13 . icon| 000059e0 25 3d 69 63 6f 6e 25 20 82 20 31 0d 1d f6 4a 20 |%=icon% . 1...J | 000059f0 e7 20 69 63 6f 6e 25 3d 30 20 84 20 69 63 6f 6e |. icon%=0 . icon| 00005a00 25 3d 31 20 8c 20 c8 99 20 22 57 69 6d 70 5f 53 |%=1 . .. "Wimp_S| 00005a10 65 74 43 61 72 65 74 50 6f 73 69 74 69 6f 6e 22 |etCaretPosition"| 00005a20 2c 77 69 6e 64 6f 77 25 2c 69 63 6f 6e 25 2c 2c |,window%,icon%,,| 00005a30 2c 2d 31 2c 30 0d 1e 00 06 20 3a 0d 1e 0a 0e 20 |,-1,0.... :.... | 00005a40 c9 20 74 73 76 77 69 6e 25 0d 1e 14 1a 20 e7 20 |. tsvwin%.... . | 00005a50 69 63 6f 6e 25 3d 32 20 80 20 63 68 72 25 3d 31 |icon%=2 . chr%=1| 00005a60 33 20 8c 0d 1e 1e 22 20 f2 73 61 76 65 28 26 46 |3 ...." .save(&F| 00005a70 46 46 2c 69 63 6f 6e 74 78 74 25 28 33 29 2c 73 |FF,icontxt%(3),s| 00005a80 61 76 65 25 29 0d 1e 28 45 20 e7 20 73 61 76 65 |ave%)..(E . save| 00005a90 25 20 8c 20 c8 99 20 22 57 69 6d 70 5f 43 6c 6f |% . .. "Wimp_Clo| 00005aa0 73 65 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b |seWindow",,block| 00005ab0 25 3a c8 99 20 22 57 69 6d 70 5f 43 72 65 61 74 |%:.. "Wimp_Creat| 00005ac0 65 4d 65 6e 75 22 2c 2c 2d 31 0d 1e 32 06 20 cd |eMenu",,-1..2. .| 00005ad0 0d 1e 3c 06 20 3a 0d 1e 46 0e 20 c9 20 6e 73 76 |..<. :..F. . nsv| 00005ae0 77 69 6e 25 0d 1e 50 1a 20 e7 20 69 63 6f 6e 25 |win%..P. . icon%| 00005af0 3d 32 20 80 20 63 68 72 25 3d 31 33 20 8c 0d 1e |=2 . chr%=13 ...| 00005b00 5a 28 20 f2 73 61 76 65 28 66 69 6c 65 74 79 70 |Z( .save(filetyp| 00005b10 65 25 2c 69 63 6f 6e 74 78 74 25 28 31 39 29 2c |e%,icontxt%(19),| 00005b20 73 61 76 65 25 29 0d 1e 64 45 20 e7 20 73 61 76 |save%)..dE . sav| 00005b30 65 25 20 8c 20 c8 99 20 22 57 69 6d 70 5f 43 6c |e% . .. "Wimp_Cl| 00005b40 6f 73 65 57 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 |oseWindow",,bloc| 00005b50 6b 25 3a c8 99 20 22 57 69 6d 70 5f 43 72 65 61 |k%:.. "Wimp_Crea| 00005b60 74 65 4d 65 6e 75 22 2c 2c 2d 31 0d 1e 6e 06 20 |teMenu",,-1..n. | 00005b70 cd 0d 1e 78 0e 20 c9 20 6c 69 6d 77 69 6e 25 0d |...x. . limwin%.| 00005b80 1e 82 23 20 e7 20 69 63 6f 6e 25 2d 69 63 6e 62 |..# . icon%-icnb| 00005b90 73 65 25 3d 31 33 20 80 20 63 68 72 25 3d 31 33 |se%=13 . chr%=13| 00005ba0 20 8c 0d 1e 8c 0f 20 f2 73 68 6f 77 6c 69 6d 69 | ..... .showlimi| 00005bb0 74 0d 1e 96 1b 20 62 6c 6f 63 6b 25 21 38 3d 30 |t.... block%!8=0| 00005bc0 3a 62 6c 6f 63 6b 25 21 31 32 3d 30 0d 1e a0 12 |:block%!12=0....| 00005bd0 20 e3 20 69 63 6e 25 3d 34 20 b8 20 31 31 0d 1e | . icn%=4 . 11..| 00005be0 aa 39 20 62 6c 6f 63 6b 25 21 34 3d 69 63 6e 62 |.9 block%!4=icnb| 00005bf0 73 65 25 2b 69 63 6e 25 3a c8 99 20 22 57 69 6d |se%+icn%:.. "Wim| 00005c00 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_SetIconState",| 00005c10 2c 62 6c 6f 63 6b 25 0d 1e b4 0b 20 ed 20 69 63 |,block%.... . ic| 00005c20 6e 25 0d 1e be 06 20 cd 0d 1e c8 23 20 e7 20 69 |n%.... ....# . i| 00005c30 63 6f 6e 25 2d 69 63 6e 62 73 65 25 3d 31 32 20 |con%-icnbse%=12 | 00005c40 80 20 63 68 72 25 3d 31 33 20 8c 0d 1e d2 36 20 |. chr%=13 ....6 | 00005c50 69 6e 70 75 74 25 21 31 30 38 3d bb 28 24 28 69 |input%!108=.($(i| 00005c60 63 6f 6e 74 78 74 25 28 31 36 29 29 29 2f 31 30 |contxt%(16)))/10| 00005c70 30 2a 28 31 3c 3c 28 70 6e 74 25 20 81 20 32 29 |0*(1<<(pnt% . 2)| 00005c80 29 0d 1e dc 59 20 e7 20 69 6e 70 75 74 25 21 31 |)...Y . input%!1| 00005c90 30 38 3e 28 31 3c 3c 28 70 6e 74 25 20 81 20 32 |08>(1<<(pnt% . 2| 00005ca0 29 29 20 8c 20 69 6e 70 75 74 25 21 31 30 38 3d |)) . input%!108=| 00005cb0 28 31 3c 3c 28 70 6e 74 25 20 81 20 32 29 29 3a |(1<<(pnt% . 2)):| 00005cc0 24 28 69 63 6f 6e 74 78 74 25 28 31 36 29 29 3d |$(icontxt%(16))=| 00005cd0 22 31 30 30 22 2b bd 28 30 29 0d 1e e6 3a 20 62 |"100"+.(0)...: b| 00005ce0 6c 6f 63 6b 25 21 38 3d 30 3a 62 6c 6f 63 6b 25 |lock%!8=0:block%| 00005cf0 21 31 32 3d 30 3a c8 99 20 22 57 69 6d 70 5f 53 |!12=0:.. "Wimp_S| 00005d00 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c |etIconState",,bl| 00005d10 6f 63 6b 25 0d 1e f0 06 20 cd 0d 1e fa 3a 20 e7 |ock%.... ....: .| 00005d20 20 28 69 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 | (icon%-icnbse%)| 00005d30 3e 3d 30 20 80 20 28 69 63 6f 6e 25 2d 69 63 6e |>=0 . (icon%-icn| 00005d40 62 73 65 25 29 3c 31 32 20 80 20 63 68 72 25 3d |bse%)<12 . chr%=| 00005d50 31 33 20 8c 0d 1f 04 1a 20 e7 20 28 69 63 6f 6e |13 ..... . (icon| 00005d60 25 2d 69 63 6e 62 73 65 25 29 3c 34 20 8c 0d 1f |%-icnbse%)<4 ...| 00005d70 0e 42 20 69 6e 70 75 74 25 21 28 39 32 2b 34 2a |.B input%!(92+4*| 00005d80 28 69 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 29 |(icon%-icnbse%))| 00005d90 3d bb 28 24 28 69 63 6f 6e 74 78 74 25 28 34 2b |=.($(icontxt%(4+| 00005da0 69 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 29 29 |icon%-icnbse%)))| 00005db0 0d 1f 18 06 20 cc 0d 1f 22 2c 20 64 70 69 25 3d |.... ...", dpi%=| 00005dc0 bb 24 28 69 63 6f 6e 74 78 74 25 28 31 37 29 29 |.$(icontxt%(17))| 00005dd0 3a e7 20 64 70 69 25 3d 30 20 8c 20 64 70 69 25 |:. dpi%=0 . dpi%| 00005de0 3d 31 0d 1f 2c 52 20 e7 20 21 28 34 2b 68 65 61 |=1..,R . !(4+hea| 00005df0 70 25 21 38 29 3e 30 20 8c 20 c8 99 20 22 4f 53 |p%!8)>0 . .. "OS| 00005e00 5f 52 65 61 64 4d 6f 64 65 56 61 72 69 61 62 6c |_ReadModeVariabl| 00005e10 65 22 2c 21 28 35 36 2b 68 65 61 70 25 21 38 29 |e",!(56+heap%!8)| 00005e20 2c 35 20 b8 20 2c 2c 61 73 70 25 20 8b 20 61 73 |,5 . ,,asp% . as| 00005e30 70 25 3d 31 0d 1f 36 1d 20 e7 20 28 69 63 6f 6e |p%=1..6. . (icon| 00005e40 25 20 80 20 31 29 3d 30 20 8c 20 61 73 70 25 3d |% . 1)=0 . asp%=| 00005e50 31 0d 1f 40 27 20 e7 20 28 69 63 6f 6e 25 2d 69 |1..@' . (icon%-i| 00005e60 63 6e 62 73 65 25 29 3e 37 20 8c 20 61 73 70 25 |cnbse%)>7 . asp%| 00005e70 3d 61 73 70 25 2a 37 32 0d 1f 4a 51 20 69 6e 70 |=asp%*72..JQ inp| 00005e80 75 74 25 21 28 39 32 2b 34 2a 28 28 69 63 6f 6e |ut%!(92+4*((icon| 00005e90 25 2d 69 63 6e 62 73 65 25 29 80 20 33 29 29 3d |%-icnbse%). 3))=| 00005ea0 bb 28 24 28 69 63 6f 6e 74 78 74 25 28 34 2b 69 |.($(icontxt%(4+i| 00005eb0 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 29 29 2a |con%-icnbse%)))*| 00005ec0 64 70 69 25 2f 61 73 70 25 0d 1f 54 06 20 cd 0d |dpi%/asp%..T. ..| 00005ed0 1f 5e 30 20 e7 20 69 6e 70 75 74 25 21 39 32 3c |.^0 . input%!92<| 00005ee0 69 6e 70 75 74 25 21 38 34 20 8c 20 69 6e 70 75 |input%!84 . inpu| 00005ef0 74 25 21 39 32 3d 69 6e 70 75 74 25 21 38 34 0d |t%!92=input%!84.| 00005f00 1f 68 30 20 e7 20 69 6e 70 75 74 25 21 39 36 3c |.h0 . input%!96<| 00005f10 69 6e 70 75 74 25 21 38 38 20 8c 20 69 6e 70 75 |input%!88 . inpu| 00005f20 74 25 21 39 36 3d 69 6e 70 75 74 25 21 38 38 0d |t%!96=input%!88.| 00005f30 1f 72 32 20 e7 20 69 6e 70 75 74 25 21 31 30 30 |.r2 . input%!100| 00005f40 3c 69 6e 70 75 74 25 21 38 34 20 8c 20 69 6e 70 |<input%!84 . inp| 00005f50 75 74 25 21 31 30 30 3d 69 6e 70 75 74 25 21 38 |ut%!100=input%!8| 00005f60 34 0d 1f 7c 32 20 e7 20 69 6e 70 75 74 25 21 31 |4..|2 . input%!1| 00005f70 30 34 3c 69 6e 70 75 74 25 21 38 38 20 8c 20 69 |04<input%!88 . i| 00005f80 6e 70 75 74 25 21 31 30 34 3d 69 6e 70 75 74 25 |nput%!104=input%| 00005f90 21 38 38 0d 1f 86 0f 20 f2 73 68 6f 77 6c 69 6d |!88.... .showlim| 00005fa0 69 74 0d 1f 90 42 20 62 6c 6f 63 6b 25 21 38 3d |it...B block%!8=| 00005fb0 30 3a 62 6c 6f 63 6b 25 21 31 32 3d 30 3a 62 6c |0:block%!12=0:bl| 00005fc0 6f 63 6b 25 21 34 3d 69 63 6e 62 73 65 25 2b 28 |ock%!4=icnbse%+(| 00005fd0 28 69 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 20 |(icon%-icnbse%) | 00005fe0 80 20 33 29 0d 1f 9a 23 20 c8 99 20 22 57 69 6d |. 3)...# .. "Wim| 00005ff0 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_SetIconState",| 00006000 2c 62 6c 6f 63 6b 25 0d 1f a4 2d 20 62 6c 6f 63 |,block%...- bloc| 00006010 6b 25 21 34 3d 69 63 6e 62 73 65 25 2b 34 2b 28 |k%!4=icnbse%+4+(| 00006020 28 69 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 20 |(icon%-icnbse%) | 00006030 80 20 33 29 0d 1f ae 23 20 c8 99 20 22 57 69 6d |. 3)...# .. "Wim| 00006040 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_SetIconState",| 00006050 2c 62 6c 6f 63 6b 25 0d 1f b8 2d 20 62 6c 6f 63 |,block%...- bloc| 00006060 6b 25 21 34 3d 69 63 6e 62 73 65 25 2b 38 2b 28 |k%!4=icnbse%+8+(| 00006070 28 69 63 6f 6e 25 2d 69 63 6e 62 73 65 25 29 20 |(icon%-icnbse%) | 00006080 80 20 33 29 0d 1f c2 23 20 c8 99 20 22 57 69 6d |. 3)...# .. "Wim| 00006090 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_SetIconState",| 000060a0 2c 62 6c 6f 63 6b 25 0d 1f cc 06 20 cd 0d 1f d6 |,block%.... ....| 000060b0 1a 20 e7 20 63 68 72 25 3d 33 39 39 20 8c 20 69 |. . chr%=399 . i| 000060c0 63 6f 6e 25 2d 3d 31 0d 1f e0 24 20 e7 20 63 68 |con%-=1...$ . ch| 000060d0 72 25 3d 33 39 38 20 84 20 63 68 72 25 3d 31 33 |r%=398 . chr%=13| 000060e0 20 8c 20 69 63 6f 6e 25 2b 3d 31 0d 1f ea 5a 20 | . icon%+=1...Z | 000060f0 e7 20 69 63 6f 6e 25 3e 3d 69 63 6e 62 73 65 25 |. icon%>=icnbse%| 00006100 20 80 20 69 63 6f 6e 25 3c 69 63 6e 62 73 65 25 | . icon%<icnbse%| 00006110 2b 31 34 20 8c 20 c8 99 20 22 57 69 6d 70 5f 53 |+14 . .. "Wimp_S| 00006120 65 74 43 61 72 65 74 50 6f 73 69 74 69 6f 6e 22 |etCaretPosition"| 00006130 2c 77 69 6e 64 6f 77 25 2c 69 63 6f 6e 25 2c 2c |,window%,icon%,,| 00006140 2c 2d 31 2c 30 0d 1f f4 06 20 cb 0d 1f fe 06 20 |,-1,0.... ..... | 00006150 e1 0d 20 08 06 20 3a 0d 20 12 0c 20 dd 20 f2 64 |.. .. :. .. . .d| 00006160 72 61 67 0d 20 1c 28 20 c8 99 20 22 57 69 6d 70 |rag. .( .. "Wimp| 00006170 5f 47 65 74 50 6f 69 6e 74 65 72 49 6e 66 6f 22 |_GetPointerInfo"| 00006180 2c 2c 62 6c 6f 63 6b 25 2b 31 36 0d 20 26 16 20 |,,block%+16. &. | 00006190 77 69 6e 64 6f 77 25 3d 62 6c 6f 63 6b 25 21 32 |window%=block%!2| 000061a0 38 0d 20 30 14 20 69 63 6f 6e 25 3d 62 6c 6f 63 |8. 0. icon%=bloc| 000061b0 6b 25 21 33 32 0d 20 3a 06 20 3a 0d 20 44 11 20 |k%!32. :. :. D. | 000061c0 c8 8e 20 77 69 6e 64 6f 77 25 20 ca 0d 20 4e 0e |.. window% .. N.| 000061d0 20 c9 20 73 70 72 77 69 6e 25 0d 20 58 19 20 e7 | . sprwin%. X. .| 000061e0 20 28 69 6e 74 66 6c 61 67 25 20 80 20 32 29 3e | (intflag% . 2)>| 000061f0 30 20 8c 0d 20 62 3a 20 62 6c 6f 63 6b 25 21 31 |0 .. b: block%!1| 00006200 36 3d 73 70 72 77 69 6e 25 3a c8 99 20 22 57 69 |6=sprwin%:.. "Wi| 00006210 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 74 |mp_GetWindowStat| 00006220 65 22 2c 2c 62 6c 6f 63 6b 25 2b 31 36 0d 20 6c |e",,block%+16. l| 00006230 21 20 21 62 6c 6f 63 6b 25 2b 3d 62 6c 6f 63 6b |! !block%+=block| 00006240 25 21 33 36 2d 62 6c 6f 63 6b 25 21 32 30 0d 20 |%!36-block%!20. | 00006250 76 22 20 62 6c 6f 63 6b 25 21 34 2b 3d 62 6c 6f |v" block%!4+=blo| 00006260 63 6b 25 21 34 30 2d 62 6c 6f 63 6b 25 21 33 32 |ck%!40-block%!32| 00006270 0d 20 80 22 20 62 6c 6f 63 6b 25 21 38 2b 3d 62 |. ." block%!8+=b| 00006280 6c 6f 63 6b 25 21 33 36 2d 62 6c 6f 63 6b 25 21 |lock%!36-block%!| 00006290 32 30 0d 20 8a 23 20 62 6c 6f 63 6b 25 21 31 32 |20. .# block%!12| 000062a0 2b 3d 62 6c 6f 63 6b 25 21 34 30 2d 62 6c 6f 63 |+=block%!40-bloc| 000062b0 6b 25 21 33 32 0d 20 94 2d 20 e7 20 21 62 6c 6f |k%!32. .- . !blo| 000062c0 63 6b 25 3e 62 6c 6f 63 6b 25 21 38 20 8c 20 c8 |ck%>block%!8 . .| 000062d0 94 20 21 62 6c 6f 63 6b 25 2c 62 6c 6f 63 6b 25 |. !block%,block%| 000062e0 21 38 0d 20 9e 31 20 e7 20 62 6c 6f 63 6b 25 21 |!8. .1 . block%!| 000062f0 34 3e 62 6c 6f 63 6b 25 21 31 32 20 8c 20 c8 94 |4>block%!12 . ..| 00006300 20 62 6c 6f 63 6b 25 21 34 2c 62 6c 6f 63 6b 25 | block%!4,block%| 00006310 21 31 32 0d 20 a8 1c 20 e7 20 21 62 6c 6f 63 6b |!12. .. . !block| 00006320 25 3c 30 20 8c 20 21 62 6c 6f 63 6b 25 3d 30 0d |%<0 . !block%=0.| 00006330 20 b2 20 20 e7 20 62 6c 6f 63 6b 25 21 31 32 3e | . . block%!12>| 00006340 30 20 8c 20 62 6c 6f 63 6b 25 21 31 32 3d 30 0d |0 . block%!12=0.| 00006350 20 bc 37 20 69 6e 70 75 74 25 21 36 38 3d 28 21 | .7 input%!68=(!| 00006360 62 6c 6f 63 6b 25 3e 3e 73 63 61 6c 65 25 21 32 |block%>>scale%!2| 00006370 34 29 2a 73 63 61 6c 65 25 21 32 30 2f 73 63 61 |4)*scale%!20/sca| 00006380 6c 65 25 21 31 36 0d 20 c6 3a 20 69 6e 70 75 74 |le%!16. .: input| 00006390 25 21 38 30 3d 31 2d 28 62 6c 6f 63 6b 25 21 34 |%!80=1-(block%!4| 000063a0 3e 3e 73 63 61 6c 65 25 21 32 38 29 2a 73 63 61 |>>scale%!28)*sca| 000063b0 6c 65 25 21 32 30 2f 73 63 61 6c 65 25 21 31 36 |le%!20/scale%!16| 000063c0 0d 20 d0 3a 20 69 6e 70 75 74 25 21 37 36 3d 28 |. .: input%!76=(| 000063d0 62 6c 6f 63 6b 25 21 38 3e 3e 73 63 61 6c 65 25 |block%!8>>scale%| 000063e0 21 32 34 29 2a 73 63 61 6c 65 25 21 32 30 2f 73 |!24)*scale%!20/s| 000063f0 63 61 6c 65 25 21 31 36 2d 31 0d 20 da 3a 20 69 |cale%!16-1. .: i| 00006400 6e 70 75 74 25 21 37 32 3d 2d 28 62 6c 6f 63 6b |nput%!72=-(block| 00006410 25 21 31 32 3e 3e 73 63 61 6c 65 25 21 32 38 29 |%!12>>scale%!28)| 00006420 2a 73 63 61 6c 65 25 21 32 30 2f 73 63 61 6c 65 |*scale%!20/scale| 00006430 25 21 31 36 0d 20 e4 0f 20 f2 63 6f 75 6e 74 6c |%!16. .. .countl| 00006440 69 6e 65 0d 20 ee 1a 20 69 6e 74 66 6c 61 67 25 |ine. .. intflag%| 00006450 3d 69 6e 74 66 6c 61 67 25 20 82 20 32 0d 20 f8 |=intflag% . 2. .| 00006460 31 20 c8 99 20 22 57 69 6d 70 5f 46 6f 72 63 65 |1 .. "Wimp_Force| 00006470 52 65 64 72 61 77 22 2c 73 70 72 77 69 6e 25 2c |Redraw",sprwin%,| 00006480 30 2c 2d 68 67 74 25 2c 77 64 74 25 2c 30 0d 21 |0,-hgt%,wdt%,0.!| 00006490 02 06 20 cd 0d 21 0c 06 20 7f 0d 21 16 06 20 3a |.. ..!.. ..!.. :| 000064a0 0d 21 20 2d 20 e7 20 28 69 6e 74 66 6c 61 67 25 |.! - . (intflag%| 000064b0 20 20 80 20 31 29 3e 30 20 80 20 77 69 6e 64 6f | . 1)>0 . windo| 000064c0 77 25 3c 3e 74 78 74 77 69 6e 25 20 8c 0d 21 2a |w%<>txtwin% ..!*| 000064d0 2c 20 62 6c 6f 63 6b 25 21 32 38 3d 62 6c 6f 63 |, block%!28=bloc| 000064e0 6b 25 21 31 36 3a 62 6c 6f 63 6b 25 21 33 32 3d |k%!16:block%!32=| 000064f0 62 6c 6f 63 6b 25 21 32 30 0d 21 34 26 20 62 6c |block%!20.!4& bl| 00006500 6f 63 6b 25 21 32 30 3d 77 69 6e 64 6f 77 25 3a |ock%!20=window%:| 00006510 62 6c 6f 63 6b 25 21 32 34 3d 69 63 6f 6e 25 0d |block%!24=icon%.| 00006520 21 3e 29 20 62 6c 6f 63 6b 25 21 33 36 3d 21 28 |!>) block%!36=!(| 00006530 68 65 61 70 25 21 31 36 29 3a 62 6c 6f 63 6b 25 |heap%!16):block%| 00006540 21 34 30 3d 26 46 46 46 0d 21 48 29 20 24 28 62 |!40=&FFF.!H) $(b| 00006550 6c 6f 63 6b 25 2b 34 34 29 3d a4 6c 65 61 66 28 |lock%+44)=.leaf(| 00006560 69 63 6f 6e 74 78 74 25 28 33 29 29 2b bd 28 30 |icontxt%(3))+.(0| 00006570 29 0d 21 52 1c 20 69 6e 74 66 6c 61 67 25 3d 69 |).!R. intflag%=i| 00006580 6e 74 66 6c 61 67 25 20 80 20 ac 20 31 0d 21 5c |ntflag% . . 1.!\| 00006590 28 20 21 62 6c 6f 63 6b 25 3d 32 35 36 3a 62 6c |( !block%=256:bl| 000065a0 6f 63 6b 25 21 31 32 3d 30 3a 62 6c 6f 63 6b 25 |ock%!12=0:block%| 000065b0 21 31 36 3d 31 0d 21 66 38 20 c8 99 20 22 57 69 |!16=1.!f8 .. "Wi| 000065c0 6d 70 5f 53 65 6e 64 4d 65 73 73 61 67 65 22 2c |mp_SendMessage",| 000065d0 31 37 2c 62 6c 6f 63 6b 25 2c 62 6c 6f 63 6b 25 |17,block%,block%| 000065e0 21 32 30 2c 62 6c 6f 63 6b 25 21 32 34 0d 21 70 |!20,block%!24.!p| 000065f0 29 20 64 61 74 61 25 3d 68 65 61 70 25 21 31 36 |) data%=heap%!16| 00006600 2b 34 3a 64 61 74 65 78 74 25 3d 21 28 68 65 61 |+4:datext%=!(hea| 00006610 70 25 21 31 36 29 0d 21 7a 06 20 cd 0d 21 84 1c |p%!16).!z. ..!..| 00006620 20 e7 20 28 69 6e 74 66 6c 61 67 25 20 20 80 20 | . (intflag% . | 00006630 31 32 38 29 3e 30 20 8c 0d 21 8e 2c 20 62 6c 6f |128)>0 ..!., blo| 00006640 63 6b 25 21 32 38 3d 62 6c 6f 63 6b 25 21 31 36 |ck%!28=block%!16| 00006650 3a 62 6c 6f 63 6b 25 21 33 32 3d 62 6c 6f 63 6b |:block%!32=block| 00006660 25 21 32 30 0d 21 98 26 20 62 6c 6f 63 6b 25 21 |%!20.!.& block%!| 00006670 32 30 3d 77 69 6e 64 6f 77 25 3a 62 6c 6f 63 6b |20=window%:block| 00006680 25 21 32 34 3d 69 63 6f 6e 25 0d 21 a2 2b 20 62 |%!24=icon%.!.+ b| 00006690 6c 6f 63 6b 25 21 33 36 3d 68 65 61 70 25 21 33 |lock%!36=heap%!3| 000066a0 36 3a 62 6c 6f 63 6b 25 21 34 30 3d 66 69 6c 65 |6:block%!40=file| 000066b0 74 79 70 65 25 0d 21 ac 2a 20 24 28 62 6c 6f 63 |type%.!.* $(bloc| 000066c0 6b 25 2b 34 34 29 3d a4 6c 65 61 66 28 69 63 6f |k%+44)=.leaf(ico| 000066d0 6e 74 78 74 25 28 31 39 29 29 2b bd 28 30 29 0d |ntxt%(19))+.(0).| 000066e0 21 b6 1e 20 69 6e 74 66 6c 61 67 25 3d 69 6e 74 |!.. intflag%=int| 000066f0 66 6c 61 67 25 20 80 20 ac 20 31 32 38 0d 21 c0 |flag% . . 128.!.| 00006700 28 20 21 62 6c 6f 63 6b 25 3d 32 35 36 3a 62 6c |( !block%=256:bl| 00006710 6f 63 6b 25 21 31 32 3d 30 3a 62 6c 6f 63 6b 25 |ock%!12=0:block%| 00006720 21 31 36 3d 31 0d 21 ca 38 20 c8 99 20 22 57 69 |!16=1.!.8 .. "Wi| 00006730 6d 70 5f 53 65 6e 64 4d 65 73 73 61 67 65 22 2c |mp_SendMessage",| 00006740 31 37 2c 62 6c 6f 63 6b 25 2c 62 6c 6f 63 6b 25 |17,block%,block%| 00006750 21 32 30 2c 62 6c 6f 63 6b 25 21 32 34 0d 21 d4 |!20,block%!24.!.| 00006760 24 20 64 61 74 61 25 3d 68 65 61 70 25 21 33 32 |$ data%=heap%!32| 00006770 3a 64 61 74 65 78 74 25 3d 68 65 61 70 25 21 33 |:datext%=heap%!3| 00006780 36 0d 21 de 06 20 cd 0d 21 e8 06 20 cb 0d 21 f2 |6.!.. ..!.. ..!.| 00006790 06 20 e1 0d 21 fc 06 20 3a 0d 22 06 14 20 dd 20 |. ..!.. :.".. . | 000067a0 f2 72 65 64 72 61 77 73 70 72 69 74 65 0d 22 10 |.redrawsprite.".| 000067b0 0d 20 c8 95 20 66 6c 61 67 25 0d 22 1a 17 20 e7 |. .. flag%.".. .| 000067c0 20 21 28 34 2b 68 65 61 70 25 21 38 29 3e 30 20 | !(4+heap%!8)>0 | 000067d0 8c 0d 22 24 1c 20 78 73 63 25 3d 62 6c 6f 63 6b |.."$. xsc%=block| 000067e0 25 21 32 30 2d 62 6c 6f 63 6b 25 21 34 0d 22 2e |%!20-block%!4.".| 000067f0 22 20 79 73 63 25 3d 62 6c 6f 63 6b 25 21 32 34 |" ysc%=block%!24| 00006800 2d 62 6c 6f 63 6b 25 21 31 36 2b 68 67 74 25 0d |-block%!16+hgt%.| 00006810 22 38 3d 20 21 73 63 61 6c 65 25 3d 73 63 61 6c |"8= !scale%=scal| 00006820 65 25 21 32 34 2a 73 63 61 6c 65 25 21 31 36 3a |e%!24*scale%!16:| 00006830 73 63 61 6c 65 25 21 34 3d 73 63 61 6c 65 25 21 |scale%!4=scale%!| 00006840 32 38 2a 73 63 61 6c 65 25 21 31 36 0d 22 42 3f |28*scale%!16."B?| 00006850 20 73 63 61 6c 65 25 21 38 3d 73 63 61 6c 65 25 | scale%!8=scale%| 00006860 21 33 32 2a 73 63 61 6c 65 25 21 32 30 3a 73 63 |!32*scale%!20:sc| 00006870 61 6c 65 25 21 31 32 3d 73 63 61 6c 65 25 21 33 |ale%!12=scale%!3| 00006880 36 2a 73 63 61 6c 65 25 21 32 30 0d 22 4c 4d 20 |6*scale%!20."LM | 00006890 c8 99 20 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 |.. "OS_SpriteOp"| 000068a0 2c 35 31 32 2b 35 32 2c 68 65 61 70 25 21 38 2c |,512+52,heap%!8,| 000068b0 28 68 65 61 70 25 21 38 29 2b 31 36 2c 2d 78 73 |(heap%!8)+16,-xs| 000068c0 63 25 2c 2d 79 73 63 25 2c 2c 73 63 61 6c 65 25 |c%,-ysc%,,scale%| 000068d0 2c 62 69 74 6d 61 70 25 0d 22 56 20 20 e7 20 21 |,bitmap%."V . !| 000068e0 28 68 65 61 70 25 21 32 34 29 3e 30 20 8c 20 f2 |(heap%!24)>0 . .| 000068f0 64 72 61 77 6c 69 6e 65 0d 22 60 1f 20 e7 20 28 |drawline."`. . (| 00006900 69 6e 74 66 6c 61 67 25 20 80 20 36 31 34 34 29 |intflag% . 6144)| 00006910 3d 36 31 34 34 20 8c 0d 22 6a 1e 20 c8 99 20 22 |=6144 .."j. .. "| 00006920 57 69 6d 70 5f 53 65 74 43 6f 6c 6f 75 72 22 2c |Wimp_SetColour",| 00006930 34 38 2b 31 31 0d 22 74 46 20 ec 20 28 78 73 74 |48+11."tF . (xst| 00006940 25 2a 73 63 61 6c 65 25 21 31 36 2f 73 63 61 6c |%*scale%!16/scal| 00006950 65 25 21 32 30 29 2d 78 73 63 25 2c 28 79 73 74 |e%!20)-xsc%,(yst| 00006960 25 2a 73 63 61 6c 65 25 21 31 36 2f 73 63 61 6c |%*scale%!16/scal| 00006970 65 25 21 32 30 29 2d 79 73 63 25 0d 22 7e 46 20 |e%!20)-ysc%."~F | 00006980 df 20 28 78 65 64 25 2a 73 63 61 6c 65 25 21 31 |. (xed%*scale%!1| 00006990 36 2f 73 63 61 6c 65 25 21 32 30 29 2d 78 73 63 |6/scale%!20)-xsc| 000069a0 25 2c 28 79 65 64 25 2a 73 63 61 6c 65 25 21 31 |%,(yed%*scale%!1| 000069b0 36 2f 73 63 61 6c 65 25 21 32 30 29 2d 79 73 63 |6/scale%!20)-ysc| 000069c0 25 0d 22 88 06 20 cd 0d 22 92 06 20 cd 0d 22 9c |%.".. ..".. ..".| 000069d0 2b 20 c8 99 20 22 57 69 6d 70 5f 47 65 74 52 65 |+ .. "Wimp_GetRe| 000069e0 63 74 61 6e 67 6c 65 22 2c 2c 62 6c 6f 63 6b 25 |ctangle",,block%| 000069f0 20 b8 20 66 6c 61 67 25 0d 22 a6 06 20 ce 0d 22 | . flag%.".. .."| 00006a00 b0 06 20 e1 0d 22 ba 06 20 3a 0d 22 c4 12 20 dd |.. ..".. :.".. .| 00006a10 20 f2 72 65 64 72 61 77 74 65 78 74 0d 22 ce 23 | .redrawtext.".#| 00006a20 20 69 6e 70 75 74 25 21 33 32 3d 68 65 61 70 25 | input%!32=heap%| 00006a30 21 31 36 3a 69 6e 70 75 74 25 21 33 36 3d 30 0d |!16:input%!36=0.| 00006a40 22 d8 21 20 69 6e 70 75 74 25 21 34 30 3d 62 6c |".! input%!40=bl| 00006a50 6f 63 6b 25 21 34 2d 62 6c 6f 63 6b 25 21 32 30 |ock%!4-block%!20| 00006a60 0d 22 e2 24 20 69 6e 70 75 74 25 21 34 34 3d 62 |.".$ input%!44=b| 00006a70 6c 6f 63 6b 25 21 31 36 2d 62 6c 6f 63 6b 25 21 |lock%!16-block%!| 00006a80 32 34 2d 34 0d 22 ec 20 20 69 6e 70 75 74 25 21 |24-4.". input%!| 00006a90 34 38 3d 69 6e 70 75 74 25 21 34 30 2b 74 78 74 |48=input%!40+txt| 00006aa0 77 64 74 25 0d 22 f6 0d 20 c8 95 20 66 6c 61 67 |wdt%.".. .. flag| 00006ab0 25 0d 23 00 16 20 e7 20 21 28 68 65 61 70 25 21 |%.#.. . !(heap%!| 00006ac0 31 36 29 3e 30 20 8c 0d 23 0a 1a 20 c8 99 20 22 |16)>0 ..#.. .. "| 00006ad0 57 69 6d 70 5f 53 65 74 43 6f 6c 6f 75 72 22 2c |Wimp_SetColour",| 00006ae0 37 0d 23 14 2f 20 69 6e 70 75 74 25 21 35 32 3d |7.#./ input%!52=| 00006af0 62 6c 6f 63 6b 25 21 32 38 2d 31 36 3a 69 6e 70 |block%!28-16:inp| 00006b00 75 74 25 21 35 36 3d 62 6c 6f 63 6b 25 21 33 32 |ut%!56=block%!32| 00006b10 0d 23 1e 2f 20 69 6e 70 75 74 25 21 36 30 3d 62 |.#./ input%!60=b| 00006b20 6c 6f 63 6b 25 21 33 36 3a 69 6e 70 75 74 25 21 |lock%!36:input%!| 00006b30 36 34 3d 62 6c 6f 63 6b 25 21 34 30 2b 33 32 0d |64=block%!40+32.| 00006b40 23 28 0c 20 d6 20 70 72 69 6e 74 0d 23 32 06 20 |#(. . print.#2. | 00006b50 cd 0d 23 3c 2b 20 c8 99 20 22 57 69 6d 70 5f 47 |..#<+ .. "Wimp_G| 00006b60 65 74 52 65 63 74 61 6e 67 6c 65 22 2c 2c 62 6c |etRectangle",,bl| 00006b70 6f 63 6b 25 20 b8 20 66 6c 61 67 25 0d 23 46 06 |ock% . flag%.#F.| 00006b80 20 ce 0d 23 50 06 20 e1 0d 23 5a 06 20 3a 0d 23 | ..#P. ..#Z. :.#| 00006b90 64 11 20 dd 20 f2 74 72 61 6e 73 6c 61 74 65 0d |d. . .translate.| 00006ba0 23 6e 17 20 e7 20 21 28 34 2b 68 65 61 70 25 21 |#n. . !(4+heap%!| 00006bb0 38 29 3e 30 20 8c 0d 23 78 3b 20 c8 99 20 22 4f |8)>0 ..#x; .. "O| 00006bc0 53 5f 52 65 61 64 4d 6f 64 65 56 61 72 69 61 62 |S_ReadModeVariab| 00006bd0 6c 65 22 2c 21 28 35 36 2b 68 65 61 70 25 21 38 |le",!(56+heap%!8| 00006be0 29 2c 34 20 b8 20 2c 2c 73 63 61 6c 65 25 21 32 |),4 . ,,scale%!2| 00006bf0 34 0d 23 82 3b 20 c8 99 20 22 4f 53 5f 52 65 61 |4.#.; .. "OS_Rea| 00006c00 64 4d 6f 64 65 56 61 72 69 61 62 6c 65 22 2c 21 |dModeVariable",!| 00006c10 28 35 36 2b 68 65 61 70 25 21 38 29 2c 35 20 b8 |(56+heap%!8),5 .| 00006c20 20 2c 2c 73 63 61 6c 65 25 21 32 38 0d 23 8c 2f | ,,scale%!28.#./| 00006c30 20 c8 99 20 22 4f 53 5f 52 65 61 64 4d 6f 64 65 | .. "OS_ReadMode| 00006c40 56 61 72 69 61 62 6c 65 22 2c eb 2c 34 20 b8 20 |Variable",.,4 . | 00006c50 2c 2c 73 63 61 6c 65 25 21 33 32 0d 23 96 2f 20 |,,scale%!32.#./ | 00006c60 c8 99 20 22 4f 53 5f 52 65 61 64 4d 6f 64 65 56 |.. "OS_ReadModeV| 00006c70 61 72 69 61 62 6c 65 22 2c eb 2c 35 20 b8 20 2c |ariable",.,5 . ,| 00006c80 2c 73 63 61 6c 65 25 21 33 36 0d 23 a0 46 20 c8 |,scale%!36.#.F .| 00006c90 99 20 22 43 6f 6c 6f 75 72 54 72 61 6e 73 5f 53 |. "ColourTrans_S| 00006ca0 65 6c 65 63 74 54 61 62 6c 65 22 2c 21 28 35 36 |electTable",!(56| 00006cb0 2b 68 65 61 70 25 21 38 29 2c 70 61 6c 65 74 74 |+heap%!8),palett| 00006cc0 65 25 2c 2d 31 2c 2d 31 2c 62 69 74 6d 61 70 25 |e%,-1,-1,bitmap%| 00006cd0 0d 23 aa 06 20 cd 0d 23 b4 06 20 e1 0d 23 be 06 |.#.. ..#.. ..#..| 00006ce0 20 3a 0d 23 c8 13 20 dd 20 f2 73 63 61 6c 65 73 | :.#.. . .scales| 00006cf0 70 72 69 74 65 0d 23 d2 17 20 e7 20 21 28 34 2b |prite.#.. . !(4+| 00006d00 68 65 61 70 25 21 38 29 3e 30 20 8c 0d 23 dc 36 |heap%!8)>0 ..#.6| 00006d10 20 77 64 74 25 3d 21 28 68 65 61 70 25 21 38 2b | wdt%=!(heap%!8+| 00006d20 33 32 29 2a 33 32 2b 21 28 68 65 61 70 25 21 38 |32)*32+!(heap%!8| 00006d30 2b 34 34 29 2d 21 28 68 65 61 70 25 21 38 2b 34 |+44)-!(heap%!8+4| 00006d40 30 29 0d 23 e6 17 20 68 67 74 25 3d 21 28 68 65 |0).#.. hgt%=!(he| 00006d50 61 70 25 21 38 2b 33 36 29 0d 23 f0 2f 20 77 64 |ap%!8+36).#./ wd| 00006d60 74 25 3d 28 77 64 74 25 3c 3c 73 63 61 6c 65 25 |t%=(wdt%<<scale%| 00006d70 21 32 34 29 2a 73 63 61 6c 65 25 21 31 36 2f 73 |!24)*scale%!16/s| 00006d80 63 61 6c 65 25 21 32 30 0d 23 fa 2f 20 68 67 74 |cale%!20.#./ hgt| 00006d90 25 3d 28 68 67 74 25 3c 3c 73 63 61 6c 65 25 21 |%=(hgt%<<scale%!| 00006da0 32 38 29 2a 73 63 61 6c 65 25 21 31 36 2f 73 63 |28)*scale%!16/sc| 00006db0 61 6c 65 25 21 32 30 0d 24 04 20 20 62 6c 6f 63 |ale%!20.$. bloc| 00006dc0 6b 25 21 36 34 3d 30 3a 62 6c 6f 63 6b 25 21 36 |k%!64=0:block%!6| 00006dd0 38 3d 2d 68 67 74 25 0d 24 0e 1f 20 62 6c 6f 63 |8=-hgt%.$.. bloc| 00006de0 6b 25 21 37 32 3d 77 64 74 25 3a 62 6c 6f 63 6b |k%!72=wdt%:block| 00006df0 25 21 37 36 3d 30 0d 24 18 2a 20 c8 99 20 22 57 |%!76=0.$.* .. "W| 00006e00 69 6d 70 5f 53 65 74 45 78 74 65 6e 74 22 2c 73 |imp_SetExtent",s| 00006e10 70 72 77 69 6e 25 2c 62 6c 6f 63 6b 25 2b 36 34 |prwin%,block%+64| 00006e20 0d 24 22 06 20 cd 0d 24 2c 06 20 e1 0d 24 36 06 |.$". ..$,. ..$6.| 00006e30 20 3a 0d 24 40 11 20 dd 20 f2 73 63 61 6c 65 74 | :.$@. . .scalet| 00006e40 65 78 74 0d 24 4a 16 20 e7 20 21 28 68 65 61 70 |ext.$J. . !(heap| 00006e50 25 21 31 36 29 3e 30 20 8c 0d 24 54 2e 20 c8 99 |%!16)>0 ..$T. ..| 00006e60 20 22 4f 53 5f 52 65 61 64 4d 6f 64 65 56 61 72 | "OS_ReadModeVar| 00006e70 69 61 62 6c 65 22 2c eb 2c 31 31 20 b8 20 2c 2c |iable",.,11 . ,,| 00006e80 74 78 74 77 64 74 25 0d 24 5e 24 20 74 78 74 77 |txtwdt%.$^$ txtw| 00006e90 64 74 25 3d 28 74 78 74 77 64 74 25 3c 3c 73 63 |dt%=(txtwdt%<<sc| 00006ea0 61 6c 65 25 21 33 32 29 2d 36 34 0d 24 68 17 20 |ale%!32)-64.$h. | 00006eb0 69 6e 70 75 74 25 21 33 32 3d 68 65 61 70 25 21 |input%!32=heap%!| 00006ec0 31 36 0d 24 72 1a 20 69 6e 70 75 74 25 21 33 36 |16.$r. input%!36| 00006ed0 3d 21 28 68 65 61 70 25 21 31 36 29 0d 24 7c 1f |=!(heap%!16).$|.| 00006ee0 20 69 6e 70 75 74 25 21 34 30 3d 30 3a 69 6e 70 | input%!40=0:inp| 00006ef0 75 74 25 21 34 34 3d 2d 32 35 36 0d 24 86 16 20 |ut%!44=-256.$.. | 00006f00 69 6e 70 75 74 25 21 34 38 3d 74 78 74 77 64 74 |input%!48=txtwdt| 00006f10 25 0d 24 90 0f 20 d6 20 70 6f 73 69 74 69 6f 6e |%.$.. . position| 00006f20 0d 24 9a 17 20 74 78 74 68 67 74 25 3d 2d 6f 75 |.$.. txthgt%=-ou| 00006f30 74 70 75 74 25 21 34 0d 24 a4 24 20 62 6c 6f 63 |tput%!4.$.$ bloc| 00006f40 6b 25 21 36 34 3d 30 3a 62 6c 6f 63 6b 25 21 36 |k%!64=0:block%!6| 00006f50 38 3d 6f 75 74 70 75 74 25 21 34 0d 24 ae 22 20 |8=output%!4.$." | 00006f60 62 6c 6f 63 6b 25 21 37 32 3d 74 78 74 77 64 74 |block%!72=txtwdt| 00006f70 25 3a 62 6c 6f 63 6b 25 21 37 36 3d 30 0d 24 b8 |%:block%!76=0.$.| 00006f80 2a 20 c8 99 20 22 57 69 6d 70 5f 53 65 74 45 78 |* .. "Wimp_SetEx| 00006f90 74 65 6e 74 22 2c 74 78 74 77 69 6e 25 2c 62 6c |tent",txtwin%,bl| 00006fa0 6f 63 6b 25 2b 36 34 0d 24 c2 06 20 cd 0d 24 cc |ock%+64.$.. ..$.| 00006fb0 06 20 e1 0d 24 d6 06 20 3a 0d 24 e0 11 20 dd 20 |. ..$.. :.$.. . | 00006fc0 f2 73 68 6f 77 6c 69 6d 69 74 0d 24 ea 2c 20 64 |.showlimit.$., d| 00006fd0 70 69 25 3d bb 24 28 69 63 6f 6e 74 78 74 25 28 |pi%=.$(icontxt%(| 00006fe0 31 37 29 29 3a e7 20 64 70 69 25 3d 30 20 8c 20 |17)):. dpi%=0 . | 00006ff0 64 70 69 25 3d 31 0d 24 f4 52 20 e7 20 21 28 34 |dpi%=1.$.R . !(4| 00007000 2b 68 65 61 70 25 21 38 29 3e 30 20 8c 20 c8 99 |+heap%!8)>0 . ..| 00007010 20 22 4f 53 5f 52 65 61 64 4d 6f 64 65 56 61 72 | "OS_ReadModeVar| 00007020 69 61 62 6c 65 22 2c 21 28 35 36 2b 68 65 61 70 |iable",!(56+heap| 00007030 25 21 38 29 2c 35 20 b8 20 2c 2c 61 73 70 25 20 |%!8),5 . ,,asp% | 00007040 8b 20 61 73 70 25 3d 31 0d 24 fe 25 20 24 28 69 |. asp%=1.$.% $(i| 00007050 63 6f 6e 74 78 74 25 28 34 29 29 3d c3 28 69 6e |contxt%(4))=.(in| 00007060 70 75 74 25 21 39 32 29 2b bd 28 30 29 0d 25 08 |put%!92)+.(0).%.| 00007070 25 20 24 28 69 63 6f 6e 74 78 74 25 28 35 29 29 |% $(icontxt%(5))| 00007080 3d c3 28 69 6e 70 75 74 25 21 39 36 29 2b bd 28 |=.(input%!96)+.(| 00007090 30 29 0d 25 12 26 20 24 28 69 63 6f 6e 74 78 74 |0).%.& $(icontxt| 000070a0 25 28 36 29 29 3d c3 28 69 6e 70 75 74 25 21 31 |%(6))=.(input%!1| 000070b0 30 30 29 2b bd 28 30 29 0d 25 1c 26 20 24 28 69 |00)+.(0).%.& $(i| 000070c0 63 6f 6e 74 78 74 25 28 37 29 29 3d c3 28 69 6e |contxt%(7))=.(in| 000070d0 70 75 74 25 21 31 30 34 29 2b bd 28 30 29 0d 25 |put%!104)+.(0).%| 000070e0 26 32 20 24 28 69 63 6f 6e 74 78 74 25 28 38 29 |&2 $(icontxt%(8)| 000070f0 29 3d a4 6e 75 6d 62 65 72 28 69 6e 70 75 74 25 |)=.number(input%| 00007100 21 39 32 2f 64 70 69 25 2c 34 29 2b bd 28 30 29 |!92/dpi%,4)+.(0)| 00007110 0d 25 30 37 20 24 28 69 63 6f 6e 74 78 74 25 28 |.%07 $(icontxt%(| 00007120 39 29 29 3d a4 6e 75 6d 62 65 72 28 61 73 70 25 |9))=.number(asp%| 00007130 2a 69 6e 70 75 74 25 21 39 36 2f 64 70 69 25 2c |*input%!96/dpi%,| 00007140 34 29 2b bd 28 30 29 0d 25 3a 34 20 24 28 69 63 |4)+.(0).%:4 $(ic| 00007150 6f 6e 74 78 74 25 28 31 30 29 29 3d a4 6e 75 6d |ontxt%(10))=.num| 00007160 62 65 72 28 69 6e 70 75 74 25 21 31 30 30 2f 64 |ber(input%!100/d| 00007170 70 69 25 2c 34 29 2b bd 28 30 29 0d 25 44 39 20 |pi%,4)+.(0).%D9 | 00007180 24 28 69 63 6f 6e 74 78 74 25 28 31 31 29 29 3d |$(icontxt%(11))=| 00007190 a4 6e 75 6d 62 65 72 28 61 73 70 25 2a 69 6e 70 |.number(asp%*inp| 000071a0 75 74 25 21 31 30 34 2f 64 70 69 25 2c 34 29 2b |ut%!104/dpi%,4)+| 000071b0 bd 28 30 29 0d 25 4e 36 20 24 28 69 63 6f 6e 74 |.(0).%N6 $(icont| 000071c0 78 74 25 28 31 32 29 29 3d a4 6e 75 6d 62 65 72 |xt%(12))=.number| 000071d0 28 69 6e 70 75 74 25 21 39 32 2f 64 70 69 25 2a |(input%!92/dpi%*| 000071e0 37 32 2c 34 29 2b bd 28 30 29 0d 25 58 3b 20 24 |72,4)+.(0).%X; $| 000071f0 28 69 63 6f 6e 74 78 74 25 28 31 33 29 29 3d a4 |(icontxt%(13))=.| 00007200 6e 75 6d 62 65 72 28 61 73 70 25 2a 69 6e 70 75 |number(asp%*inpu| 00007210 74 25 21 39 36 2f 64 70 69 25 2a 37 32 2c 34 29 |t%!96/dpi%*72,4)| 00007220 2b bd 28 30 29 0d 25 62 37 20 24 28 69 63 6f 6e |+.(0).%b7 $(icon| 00007230 74 78 74 25 28 31 34 29 29 3d a4 6e 75 6d 62 65 |txt%(14))=.numbe| 00007240 72 28 69 6e 70 75 74 25 21 31 30 30 2f 64 70 69 |r(input%!100/dpi| 00007250 25 2a 37 32 2c 34 29 2b bd 28 30 29 0d 25 6c 3c |%*72,4)+.(0).%l<| 00007260 20 24 28 69 63 6f 6e 74 78 74 25 28 31 35 29 29 | $(icontxt%(15))| 00007270 3d a4 6e 75 6d 62 65 72 28 61 73 70 25 2a 69 6e |=.number(asp%*in| 00007280 70 75 74 25 21 31 30 34 2f 64 70 69 25 2a 37 32 |put%!104/dpi%*72| 00007290 2c 34 29 2b bd 28 30 29 0d 25 76 06 20 e1 0d 25 |,4)+.(0).%v. ..%| 000072a0 80 06 20 3a 0d 25 8a 11 20 dd 20 f2 63 6f 75 6e |.. :.%.. . .coun| 000072b0 74 6c 69 6e 65 0d 25 94 16 20 c8 99 20 22 48 6f |tline.%.. .. "Ho| 000072c0 75 72 67 6c 61 73 73 5f 4f 6e 22 0d 25 9e 3a 20 |urglass_On".%.: | 000072d0 e7 20 28 69 6e 74 66 6c 61 67 25 20 80 20 31 36 |. (intflag% . 16| 000072e0 29 3d 31 36 20 8c 20 69 6e 70 75 74 25 21 31 30 |)=16 . input%!10| 000072f0 34 3d 69 6e 70 75 74 25 21 38 30 2d 69 6e 70 75 |4=input%!80-inpu| 00007300 74 25 21 37 32 0d 25 a8 19 20 69 6e 70 75 74 25 |t%!72.%.. input%| 00007310 21 31 32 38 3d 69 6e 70 75 74 25 21 37 32 0d 25 |!128=input%!72.%| 00007320 b2 2e 20 21 28 68 65 61 70 25 21 32 34 29 3d 30 |.. !(heap%!24)=0| 00007330 3a f2 63 6c 61 69 6d 28 68 65 61 70 25 2b 32 34 |:.claim(heap%+24| 00007340 2c 32 35 36 2c 63 6c 61 69 6d 25 29 0d 25 bc 0f |,256,claim%).%..| 00007350 20 d6 20 66 69 6e 64 6c 69 6e 65 0d 25 c6 1c 20 | . findline.%.. | 00007360 c8 95 20 21 6f 75 74 70 75 74 25 3e 2d 31 20 80 |.. !output%>-1 .| 00007370 20 63 6c 61 69 6d 25 0d 25 d0 48 20 e7 20 68 65 | claim%.%.H . he| 00007380 61 70 25 21 32 38 2d 21 28 68 65 61 70 25 21 32 |ap%!28-!(heap%!2| 00007390 34 29 2a 32 30 3c 34 30 20 8c 20 f2 63 6c 61 69 |4)*20<40 . .clai| 000073a0 6d 28 68 65 61 70 25 2b 32 34 2c 68 65 61 70 25 |m(heap%+24,heap%| 000073b0 21 32 38 2b 32 35 36 2c 63 6c 61 69 6d 25 29 0d |!28+256,claim%).| 000073c0 25 da 2a 20 21 28 68 65 61 70 25 21 32 34 2b 34 |%.* !(heap%!24+4| 000073d0 2b 21 28 68 65 61 70 25 21 32 34 29 2a 32 30 29 |+!(heap%!24)*20)| 000073e0 3d 21 6f 75 74 70 75 74 25 0d 25 e4 2b 20 21 28 |=!output%.%.+ !(| 000073f0 68 65 61 70 25 21 32 34 2b 38 2b 21 28 68 65 61 |heap%!24+8+!(hea| 00007400 70 25 21 32 34 29 2a 32 30 29 3d 6f 75 74 70 75 |p%!24)*20)=outpu| 00007410 74 25 21 34 0d 25 ee 2c 20 21 28 68 65 61 70 25 |t%!4.%., !(heap%| 00007420 21 32 34 2b 31 32 2b 21 28 68 65 61 70 25 21 32 |!24+12+!(heap%!2| 00007430 34 29 2a 32 30 29 3d 6f 75 74 70 75 74 25 21 38 |4)*20)=output%!8| 00007440 0d 25 f8 2d 20 21 28 68 65 61 70 25 21 32 34 2b |.%.- !(heap%!24+| 00007450 31 36 2b 21 28 68 65 61 70 25 21 32 34 29 2a 32 |16+!(heap%!24)*2| 00007460 30 29 3d 6f 75 74 70 75 74 25 21 31 32 0d 26 02 |0)=output%!12.&.| 00007470 2d 20 21 28 68 65 61 70 25 21 32 34 2b 32 30 2b |- !(heap%!24+20+| 00007480 21 28 68 65 61 70 25 21 32 34 29 2a 32 30 29 3d |!(heap%!24)*20)=| 00007490 6f 75 74 70 75 74 25 21 31 36 0d 26 0c 13 20 21 |output%!16.&.. !| 000074a0 28 68 65 61 70 25 21 32 34 29 2b 3d 31 0d 26 16 |(heap%!24)+=1.&.| 000074b0 1a 20 69 6e 70 75 74 25 21 31 32 38 3d 6f 75 74 |. input%!128=out| 000074c0 70 75 74 25 21 31 32 0d 26 20 0f 20 d6 20 66 69 |put%!12.& . . fi| 000074d0 6e 64 6c 69 6e 65 0d 26 2a 06 20 ce 0d 26 34 06 |ndline.&*. ..&4.| 000074e0 20 3a 0d 26 3e 24 20 e7 20 28 69 6e 74 66 6c 61 | :.&>$ . (intfla| 000074f0 67 25 20 80 20 31 36 29 3d 31 36 20 80 20 63 6c |g% . 16)=16 . cl| 00007500 61 69 6d 25 20 8c 0d 26 48 31 20 73 63 61 6e 25 |aim% ..&H1 scan%| 00007510 3d 30 3a 69 6e 70 75 74 25 21 39 32 3d 30 3a 69 |=0:input%!92=0:i| 00007520 6e 70 75 74 25 21 39 36 3d 30 3a 69 6e 70 75 74 |nput%!96=0:input| 00007530 25 21 31 30 34 3d 30 0d 26 52 19 20 c8 95 20 73 |%!104=0.&R. .. s| 00007540 63 61 6e 25 3c 21 28 68 65 61 70 25 21 32 34 29 |can%<!(heap%!24)| 00007550 0d 26 5c 26 20 69 6e 70 75 74 25 21 31 33 32 3d |.&\& input%!132=| 00007560 21 28 68 65 61 70 25 21 32 34 2b 34 2b 73 63 61 |!(heap%!24+4+sca| 00007570 6e 25 2a 32 30 29 0d 26 66 26 20 69 6e 70 75 74 |n%*20).&f& input| 00007580 25 21 31 33 36 3d 21 28 68 65 61 70 25 21 32 34 |%!136=!(heap%!24| 00007590 2b 38 2b 73 63 61 6e 25 2a 32 30 29 0d 26 70 27 |+8+scan%*20).&p'| 000075a0 20 69 6e 70 75 74 25 21 31 34 30 3d 21 28 68 65 | input%!140=!(he| 000075b0 61 70 25 21 32 34 2b 31 32 2b 73 63 61 6e 25 2a |ap%!24+12+scan%*| 000075c0 32 30 29 0d 26 7a 27 20 69 6e 70 75 74 25 21 31 |20).&z' input%!1| 000075d0 34 34 3d 21 28 68 65 61 70 25 21 32 34 2b 31 36 |44=!(heap%!24+16| 000075e0 2b 73 63 61 6e 25 2a 32 30 29 0d 26 84 10 20 d6 |+scan%*20).&.. .| 000075f0 20 66 69 6e 64 6c 69 6d 69 74 0d 26 8e 42 20 e7 | findlimit.&.B .| 00007600 20 21 6f 75 74 70 75 74 25 3e 69 6e 70 75 74 25 | !output%>input%| 00007610 21 39 32 20 8c 20 69 6e 70 75 74 25 21 39 32 3d |!92 . input%!92=| 00007620 21 6f 75 74 70 75 74 25 3a 69 6e 70 75 74 25 21 |!output%:input%!| 00007630 31 30 30 3d 21 6f 75 74 70 75 74 25 0d 26 98 30 |100=!output%.&.0| 00007640 20 e7 20 6f 75 74 70 75 74 25 21 34 3e 69 6e 70 | . output%!4>inp| 00007650 75 74 25 21 39 36 20 8c 20 69 6e 70 75 74 25 21 |ut%!96 . input%!| 00007660 39 36 3d 6f 75 74 70 75 74 25 21 34 0d 26 a2 50 |96=output%!4.&.P| 00007670 20 e7 20 28 31 2b 69 6e 70 75 74 25 21 31 34 34 | . (1+input%!144| 00007680 2d 69 6e 70 75 74 25 21 31 33 36 29 3e 69 6e 70 |-input%!136)>inp| 00007690 75 74 25 21 31 30 34 20 8c 20 69 6e 70 75 74 25 |ut%!104 . input%| 000076a0 21 31 30 34 3d 31 2b 69 6e 70 75 74 25 21 31 34 |!104=1+input%!14| 000076b0 34 2d 69 6e 70 75 74 25 21 31 33 36 0d 26 ac 0d |4-input%!136.&..| 000076c0 20 73 63 61 6e 25 2b 3d 31 0d 26 b6 06 20 ce 0d | scan%+=1.&.. ..| 000076d0 26 c0 06 20 cd 0d 26 ca 17 20 c8 99 20 22 48 6f |&.. ..&.. .. "Ho| 000076e0 75 72 67 6c 61 73 73 5f 4f 66 66 22 0d 26 d4 06 |urglass_Off".&..| 000076f0 20 3a 0d 26 de 17 20 e7 20 ac 20 63 6c 61 69 6d | :.&.. . . claim| 00007700 25 20 8c 20 f2 66 75 6c 6c 0d 26 e8 06 20 e1 0d |% . .full.&.. ..| 00007710 26 f2 06 20 3a 0d 26 fc 10 20 dd 20 f2 64 72 61 |&.. :.&.. . .dra| 00007720 77 6c 69 6e 65 0d 27 06 1b 20 c8 99 20 22 57 69 |wline.'.. .. "Wi| 00007730 6d 70 5f 53 65 74 43 6f 6c 6f 75 72 22 2c 31 31 |mp_SetColour",11| 00007740 0d 27 10 2b 20 ef 20 32 33 2c 36 2c 26 46 30 2c |.'.+ . 23,6,&F0,| 00007750 26 46 30 2c 26 46 30 2c 26 46 30 2c 26 46 30 2c |&F0,&F0,&F0,&F0,| 00007760 26 46 30 2c 26 46 30 2c 26 46 30 0d 27 1a 1c 20 |&F0,&F0,&F0.'.. | 00007770 78 73 63 25 3d 62 6c 6f 63 6b 25 21 32 30 2d 62 |xsc%=block%!20-b| 00007780 6c 6f 63 6b 25 21 34 0d 27 24 1d 20 79 73 63 25 |lock%!4.'$. ysc%| 00007790 3d 62 6c 6f 63 6b 25 21 32 34 2d 62 6c 6f 63 6b |=block%!24-block| 000077a0 25 21 31 36 0d 27 2e 0c 20 70 6c 6f 74 25 3d 30 |%!16.'.. plot%=0| 000077b0 0d 27 38 19 20 c8 95 20 70 6c 6f 74 25 3c 21 28 |.'8. .. plot%<!(| 000077c0 68 65 61 70 25 21 32 34 29 0d 27 42 41 20 6c 66 |heap%!24).'BA lf| 000077d0 74 25 3d 28 21 28 68 65 61 70 25 21 32 34 2b 34 |t%=(!(heap%!24+4| 000077e0 2b 70 6c 6f 74 25 2a 32 30 29 3c 3c 73 63 61 6c |+plot%*20)<<scal| 000077f0 65 25 21 32 34 29 2a 73 63 61 6c 65 25 21 31 36 |e%!24)*scale%!16| 00007800 2f 73 63 61 6c 65 25 21 32 30 0d 27 4c 41 20 74 |/scale%!20.'LA t| 00007810 6f 70 25 3d 28 21 28 68 65 61 70 25 21 32 34 2b |op%=(!(heap%!24+| 00007820 38 2b 70 6c 6f 74 25 2a 32 30 29 3c 3c 73 63 61 |8+plot%*20)<<sca| 00007830 6c 65 25 21 32 38 29 2a 73 63 61 6c 65 25 21 31 |le%!28)*scale%!1| 00007840 36 2f 73 63 61 6c 65 25 21 32 30 0d 27 56 42 20 |6/scale%!20.'VB | 00007850 72 67 74 25 3d 28 21 28 68 65 61 70 25 21 32 34 |rgt%=(!(heap%!24| 00007860 2b 31 32 2b 70 6c 6f 74 25 2a 32 30 29 3c 3c 73 |+12+plot%*20)<<s| 00007870 63 61 6c 65 25 21 32 34 29 2a 73 63 61 6c 65 25 |cale%!24)*scale%| 00007880 21 31 36 2f 73 63 61 6c 65 25 21 32 30 0d 27 60 |!16/scale%!20.'`| 00007890 42 20 62 74 6d 25 3d 28 21 28 68 65 61 70 25 21 |B btm%=(!(heap%!| 000078a0 32 34 2b 31 36 2b 70 6c 6f 74 25 2a 32 30 29 3c |24+16+plot%*20)<| 000078b0 3c 73 63 61 6c 65 25 21 32 38 29 2a 73 63 61 6c |<scale%!28)*scal| 000078c0 65 25 21 31 36 2f 73 63 61 6c 65 25 21 32 30 0d |e%!16/scale%!20.| 000078d0 27 6a 42 20 62 73 65 25 3d 28 21 28 68 65 61 70 |'jB bse%=(!(heap| 000078e0 25 21 32 34 2b 32 30 2b 70 6c 6f 74 25 2a 32 30 |%!24+20+plot%*20| 000078f0 29 3c 3c 73 63 61 6c 65 25 21 32 38 29 2a 73 63 |)<<scale%!28)*sc| 00007900 61 6c 65 25 21 31 36 2f 73 63 61 6c 65 25 21 32 |ale%!16/scale%!2| 00007910 30 0d 27 74 32 20 ec 20 6c 66 74 25 2d 78 73 63 |0.'t2 . lft%-xsc| 00007920 25 2c 2d 62 74 6d 25 2d 79 73 63 25 3a df 20 72 |%,-btm%-ysc%:. r| 00007930 67 74 25 2d 78 73 63 25 2c 2d 62 74 6d 25 2d 79 |gt%-xsc%,-btm%-y| 00007940 73 63 25 0d 27 7e 32 20 df 20 72 67 74 25 2d 78 |sc%.'~2 . rgt%-x| 00007950 73 63 25 2c 2d 74 6f 70 25 2d 79 73 63 25 3a df |sc%,-top%-ysc%:.| 00007960 20 6c 66 74 25 2d 78 73 63 25 2c 2d 74 6f 70 25 | lft%-xsc%,-top%| 00007970 2d 79 73 63 25 0d 27 88 32 20 df 20 6c 66 74 25 |-ysc%.'.2 . lft%| 00007980 2d 78 73 63 25 2c 2d 62 74 6d 25 2d 79 73 63 25 |-xsc%,-btm%-ysc%| 00007990 3a ec 20 6c 66 74 25 2d 78 73 63 25 2c 2d 62 73 |:. lft%-xsc%,-bs| 000079a0 65 25 2d 79 73 63 25 0d 27 92 1e 20 f0 20 32 31 |e%-ysc%.'.. . 21| 000079b0 2c 72 67 74 25 2d 78 73 63 25 2c 2d 62 73 65 25 |,rgt%-xsc%,-bse%| 000079c0 2d 79 73 63 25 0d 27 9c 0d 20 70 6c 6f 74 25 2b |-ysc%.'.. plot%+| 000079d0 3d 31 0d 27 a6 06 20 ce 0d 27 b0 06 20 e1 0d 27 |=1.'.. ..'.. ..'| 000079e0 ba 06 20 3a 0d 27 c4 0f 20 dd 20 f2 65 78 74 72 |.. :.'.. . .extr| 000079f0 61 63 74 0d 27 ce 14 20 e7 20 21 6f 75 74 70 75 |act.'.. . !outpu| 00007a00 74 25 3e 3d 30 20 8c 0d 27 d8 19 20 69 6e 70 75 |t%>=0 ..'.. inpu| 00007a10 74 25 21 31 35 32 3d 6f 75 74 70 75 74 25 21 34 |t%!152=output%!4| 00007a20 0d 27 e2 19 20 69 6e 70 75 74 25 21 31 35 36 3d |.'.. input%!156=| 00007a30 6f 75 74 70 75 74 25 21 38 0d 27 ec 1a 20 69 6e |output%!8.'.. in| 00007a40 70 75 74 25 21 31 36 30 3d 6f 75 74 70 75 74 25 |put%!160=output%| 00007a50 21 31 32 0d 27 f6 1a 20 69 6e 70 75 74 25 21 31 |!12.'.. input%!1| 00007a60 36 34 3d 6f 75 74 70 75 74 25 21 31 36 0d 28 00 |64=output%!16.(.| 00007a70 0c 20 d6 20 61 6c 69 61 73 0d 28 0a 3e 20 73 74 |. . alias.(.> st| 00007a80 61 74 65 25 21 28 36 34 2a 34 29 3d 28 69 6e 70 |ate%!(64*4)=(inp| 00007a90 75 74 25 21 31 34 38 2d 69 6e 70 75 74 25 21 31 |ut%!148-input%!1| 00007aa0 35 36 29 2f 69 6e 70 75 74 25 21 39 36 2a 28 31 |56)/input%!96*(1| 00007ab0 3c 3c 70 6e 74 25 29 0d 28 14 3e 20 73 74 61 74 |<<pnt%).(.> stat| 00007ac0 65 25 21 28 36 35 2a 34 29 3d 28 69 6e 70 75 74 |e%!(65*4)=(input| 00007ad0 25 21 31 34 38 2d 69 6e 70 75 74 25 21 31 36 34 |%!148-input%!164| 00007ae0 29 2f 69 6e 70 75 74 25 21 39 36 2a 28 31 3c 3c |)/input%!96*(1<<| 00007af0 70 6e 74 25 29 0d 28 1e 4c 20 73 74 61 74 65 25 |pnt%).(.L state%| 00007b00 21 28 36 36 2a 34 29 3d 28 69 6e 70 75 74 25 21 |!(66*4)=(input%!| 00007b10 31 36 30 2d 69 6e 70 75 74 25 21 31 35 32 29 2f |160-input%!152)/| 00007b20 28 69 6e 70 75 74 25 21 31 36 34 2d 69 6e 70 75 |(input%!164-inpu| 00007b30 74 25 21 31 35 36 29 2a 28 31 3c 3c 70 6e 74 25 |t%!156)*(1<<pnt%| 00007b40 29 0d 28 28 1a 20 69 6e 70 75 74 25 21 31 33 32 |).((. input%!132| 00007b50 3d 69 6e 70 75 74 25 21 31 36 30 0d 28 32 06 20 |=input%!160.(2. | 00007b60 cc 0d 28 3c 12 20 69 6e 70 75 74 25 21 31 32 38 |..(<. input%!128| 00007b70 2b 3d 31 0d 28 46 39 20 e7 20 69 6e 70 75 74 25 |+=1.(F9 . input%| 00007b80 21 31 32 38 3e 3d 21 28 68 65 61 70 25 21 32 34 |!128>=!(heap%!24| 00007b90 29 20 8c 20 69 6e 74 66 6c 61 67 25 3d 69 6e 74 |) . intflag%=int| 00007ba0 66 6c 61 67 25 20 80 20 ac 20 31 32 0d 28 50 2b |flag% . . 12.(P+| 00007bb0 20 69 6e 70 75 74 25 21 31 33 32 3d 21 28 68 65 | input%!132=!(he| 00007bc0 61 70 25 21 32 34 2b 34 2b 69 6e 70 75 74 25 21 |ap%!24+4+input%!| 00007bd0 31 32 38 2a 32 30 29 0d 28 5a 2b 20 69 6e 70 75 |128*20).(Z+ inpu| 00007be0 74 25 21 31 33 36 3d 21 28 68 65 61 70 25 21 32 |t%!136=!(heap%!2| 00007bf0 34 2b 38 2b 69 6e 70 75 74 25 21 31 32 38 2a 32 |4+8+input%!128*2| 00007c00 30 29 0d 28 64 2c 20 69 6e 70 75 74 25 21 31 34 |0).(d, input%!14| 00007c10 30 3d 21 28 68 65 61 70 25 21 32 34 2b 31 32 2b |0=!(heap%!24+12+| 00007c20 69 6e 70 75 74 25 21 31 32 38 2a 32 30 29 0d 28 |input%!128*20).(| 00007c30 6e 2c 20 69 6e 70 75 74 25 21 31 34 34 3d 21 28 |n, input%!144=!(| 00007c40 68 65 61 70 25 21 32 34 2b 31 36 2b 69 6e 70 75 |heap%!24+16+inpu| 00007c50 74 25 21 31 32 38 2a 32 30 29 0d 28 78 2c 20 69 |t%!128*20).(x, i| 00007c60 6e 70 75 74 25 21 31 34 38 3d 21 28 68 65 61 70 |nput%!148=!(heap| 00007c70 25 21 32 34 2b 32 30 2b 69 6e 70 75 74 25 21 31 |%!24+20+input%!1| 00007c80 32 38 2a 32 30 29 0d 28 82 06 20 cd 0d 28 8c 06 |28*20).(.. ..(..| 00007c90 20 e1 0d 28 96 06 20 3a 0d 28 a0 10 20 dd 20 f2 | ..(.. :.(.. . .| 00007ca0 69 64 65 6e 74 69 66 79 0d 28 aa 13 20 e7 20 21 |identify.(.. . !| 00007cb0 6f 75 74 70 75 74 25 3c 30 20 8c 0d 28 b4 2e 20 |output%<0 ..(.. | 00007cc0 e7 20 28 69 6e 74 66 6c 61 67 25 20 80 20 36 34 |. (intflag% . 64| 00007cd0 29 3d 36 34 20 8c 20 73 74 72 24 3d bd 31 30 20 |)=64 . str$=.10 | 00007ce0 8b 20 73 74 72 24 3d 22 22 0d 28 be 06 20 cc 0d |. str$="".(.. ..| 00007cf0 28 c8 18 20 73 74 72 24 3d c4 21 6f 75 74 70 75 |(.. str$=.!outpu| 00007d00 74 25 2c bd 33 32 29 0d 28 d2 2a 20 69 6e 70 75 |t%,.32).(.* inpu| 00007d10 74 25 21 31 32 34 3d 68 65 61 70 25 21 33 32 2b |t%!124=heap%!32+| 00007d20 33 32 2b 21 28 68 65 61 70 25 21 33 32 2b 33 32 |32+!(heap%!32+32| 00007d30 29 0d 28 dc 0f 20 d6 20 65 76 61 6c 75 61 74 65 |).(.. . evaluate| 00007d40 0d 28 e6 0b 20 d6 20 62 65 73 74 0d 28 f0 14 20 |.(.. . best.(.. | 00007d50 67 72 6f 75 70 25 3d 21 6f 75 74 70 75 74 25 0d |group%=!output%.| 00007d60 28 fa 33 20 69 6e 70 75 74 25 21 31 32 34 3d 68 |(.3 input%!124=h| 00007d70 65 61 70 25 21 33 32 2b 33 32 2b 21 28 68 65 61 |eap%!32+32+!(hea| 00007d80 70 25 21 33 32 2b 33 36 2b 34 2a 67 72 6f 75 70 |p%!32+36+4*group| 00007d90 25 29 0d 29 04 28 20 e7 20 28 69 6e 74 66 6c 61 |%).).( . (intfla| 00007da0 67 25 20 80 20 31 30 32 34 29 3d 31 30 32 34 20 |g% . 1024)=1024 | 00007db0 8c 20 f2 73 68 6f 77 66 6c 74 0d 29 0e 0f 20 d6 |. .showflt.).. .| 00007dc0 20 65 76 61 6c 75 61 74 65 0d 29 18 0b 20 d6 20 | evaluate.).. . | 00007dd0 62 65 73 74 0d 29 22 28 20 e7 20 28 69 6e 74 66 |best.)"( . (intf| 00007de0 6c 61 67 25 20 80 20 31 30 32 34 29 3d 31 30 32 |lag% . 1024)=102| 00007df0 34 20 8c 20 f2 73 68 6f 77 6e 65 74 0d 29 2c 27 |4 . .shownet.),'| 00007e00 20 73 74 72 24 3d 73 74 72 24 2b bd 28 33 33 2b | str$=str$+.(33+| 00007e10 33 32 2a 67 72 6f 75 70 25 2b 21 6f 75 74 70 75 |32*group%+!outpu| 00007e20 74 25 29 0d 29 36 06 20 cd 0d 29 40 06 20 3a 0d |t%).)6. ..)@. :.| 00007e30 29 4a 0d 20 63 6c 61 69 6d 25 3d b9 0d 29 54 28 |)J. claim%=..)T(| 00007e40 20 e7 20 68 65 61 70 25 21 32 30 2d 21 28 68 65 | . heap%!20-!(he| 00007e50 61 70 25 21 31 36 29 2d a9 28 73 74 72 24 29 3c |ap%!16)-.(str$)<| 00007e60 33 32 20 8c 0d 29 5e 29 20 f2 63 6c 61 69 6d 28 |32 ..)^) .claim(| 00007e70 68 65 61 70 25 2b 31 36 2c 68 65 61 70 25 21 32 |heap%+16,heap%!2| 00007e80 30 2b 32 35 36 2c 63 6c 61 69 6d 25 29 0d 29 68 |0+256,claim%).)h| 00007e90 17 20 69 6e 70 75 74 25 21 33 32 3d 68 65 61 70 |. input%!32=heap| 00007ea0 25 21 31 36 0d 29 72 06 20 cd 0d 29 7c 06 20 3a |%!16.)r. ..)|. :| 00007eb0 0d 29 86 0f 20 e7 20 63 6c 61 69 6d 25 20 8c 0d |.).. . claim% ..| 00007ec0 29 90 23 20 24 28 68 65 61 70 25 21 31 36 2b 34 |).# $(heap%!16+4| 00007ed0 2b 21 28 68 65 61 70 25 21 31 36 29 29 3d 73 74 |+!(heap%!16))=st| 00007ee0 72 24 0d 29 9a 19 20 21 28 68 65 61 70 25 21 31 |r$.).. !(heap%!1| 00007ef0 36 29 2b 3d a9 28 73 74 72 24 29 0d 29 a4 0f 20 |6)+=.(str$).).. | 00007f00 f2 73 63 61 6c 65 74 65 78 74 0d 29 ae 4f 20 21 |.scaletext.).O !| 00007f10 62 6c 6f 63 6b 25 3d 74 78 74 77 69 6e 25 3a 62 |block%=txtwin%:b| 00007f20 6c 6f 63 6b 25 21 34 3d 30 3a 62 6c 6f 63 6b 25 |lock%!4=0:block%| 00007f30 21 38 3d 2d 74 78 74 68 67 74 25 3a 62 6c 6f 63 |!8=-txthgt%:bloc| 00007f40 6b 25 21 31 32 3d 74 78 74 77 64 74 25 3a 62 6c |k%!12=txtwdt%:bl| 00007f50 6f 63 6b 25 21 31 36 3d 30 0d 29 b8 2b 20 c8 99 |ock%!16=0.).+ ..| 00007f60 20 22 57 69 6d 70 5f 55 70 64 61 74 65 57 69 6e | "Wimp_UpdateWin| 00007f70 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 20 b8 20 66 |dow",,block% . f| 00007f80 6c 61 67 25 0d 29 c2 2f 20 69 6e 70 75 74 25 21 |lag%.)./ input%!| 00007f90 33 32 3d 68 65 61 70 25 21 31 36 3a 69 6e 70 75 |32=heap%!16:inpu| 00007fa0 74 25 21 33 36 3d 21 28 68 65 61 70 25 21 31 36 |t%!36=!(heap%!16| 00007fb0 29 2d 31 0d 29 cc 21 20 69 6e 70 75 74 25 21 34 |)-1.).! input%!4| 00007fc0 30 3d 62 6c 6f 63 6b 25 21 34 2d 62 6c 6f 63 6b |0=block%!4-block| 00007fd0 25 21 32 30 0d 29 d6 24 20 69 6e 70 75 74 25 21 |%!20.).$ input%!| 00007fe0 34 34 3d 62 6c 6f 63 6b 25 21 31 36 2d 62 6c 6f |44=block%!16-blo| 00007ff0 63 6b 25 21 32 34 2d 34 0d 29 e0 20 20 69 6e 70 |ck%!24-4.). inp| 00008000 75 74 25 21 34 38 3d 69 6e 70 75 74 25 21 34 30 |ut%!48=input%!40| 00008010 2b 74 78 74 77 64 74 25 0d 29 ea 0f 20 d6 20 70 |+txtwdt%.).. . p| 00008020 6f 73 69 74 69 6f 6e 0d 29 f4 17 20 69 6e 70 75 |osition.).. inpu| 00008030 74 25 21 34 30 3d 21 6f 75 74 70 75 74 25 0d 29 |t%!40=!output%.)| 00008040 fe 18 20 69 6e 70 75 74 25 21 34 34 3d 6f 75 74 |.. input%!44=out| 00008050 70 75 74 25 21 34 0d 2a 08 0d 20 c8 95 20 66 6c |put%!4.*.. .. fl| 00008060 61 67 25 0d 2a 12 1a 20 c8 99 20 22 57 69 6d 70 |ag%.*.. .. "Wimp| 00008070 5f 53 65 74 43 6f 6c 6f 75 72 22 2c 37 0d 2a 1c |_SetColour",7.*.| 00008080 2f 20 69 6e 70 75 74 25 21 35 32 3d 62 6c 6f 63 |/ input%!52=bloc| 00008090 6b 25 21 32 38 2d 31 36 3a 69 6e 70 75 74 25 21 |k%!28-16:input%!| 000080a0 35 36 3d 62 6c 6f 63 6b 25 21 33 32 0d 2a 26 2f |56=block%!32.*&/| 000080b0 20 69 6e 70 75 74 25 21 36 30 3d 62 6c 6f 63 6b | input%!60=block| 000080c0 25 21 33 36 3a 69 6e 70 75 74 25 21 36 34 3d 62 |%!36:input%!64=b| 000080d0 6c 6f 63 6b 25 21 34 30 2b 33 32 0d 2a 30 0c 20 |lock%!40+32.*0. | 000080e0 d6 20 70 72 69 6e 74 0d 2a 3a 2b 20 c8 99 20 22 |. print.*:+ .. "| 000080f0 57 69 6d 70 5f 47 65 74 52 65 63 74 61 6e 67 6c |Wimp_GetRectangl| 00008100 65 22 2c 2c 62 6c 6f 63 6b 25 20 b8 20 66 6c 61 |e",,block% . fla| 00008110 67 25 0d 2a 44 06 20 ce 0d 2a 4e 06 20 cc 0d 2a |g%.*D. ..*N. ..*| 00008120 58 0a 20 f2 66 75 6c 6c 0d 2a 62 1d 20 69 6e 74 |X. .full.*b. int| 00008130 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 25 20 80 |flag%=intflag% .| 00008140 20 ac 20 31 32 0d 2a 6c 06 20 cd 0d 2a 76 06 20 | . 12.*l. ..*v. | 00008150 e1 0d 2a 80 06 20 3a 0d 2a 8a 10 20 dd 20 f2 70 |..*.. :.*.. . .p| 00008160 6f 6c 6c 73 74 6f 70 0d 2a 94 26 20 c8 99 20 22 |ollstop.*.& .. "| 00008170 57 69 6d 70 5f 47 65 74 49 63 6f 6e 53 74 61 74 |Wimp_GetIconStat| 00008180 65 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 2a 9e |e",,block%+64.*.| 00008190 17 20 c8 97 20 78 70 73 25 2c 79 70 73 25 2c 62 |. .. xps%,yps%,b| 000081a0 75 74 6e 25 0d 2a a8 56 20 62 6c 6f 63 6b 25 21 |utn%.*.V block%!| 000081b0 37 32 3d 94 28 78 70 73 25 3e 62 6c 6f 63 6b 25 |72=.(xps%>block%| 000081c0 21 38 20 80 20 78 70 73 25 3c 62 6c 6f 63 6b 25 |!8 . xps%<block%| 000081d0 21 31 36 20 80 20 79 70 73 25 3e 62 6c 6f 63 6b |!16 . yps%>block| 000081e0 25 21 31 32 20 80 20 79 70 73 25 3c 62 6c 6f 63 |%!12 . yps%<bloc| 000081f0 6b 25 21 32 30 29 3c 3c 32 31 0d 2a b2 16 20 62 |k%!20)<<21.*.. b| 00008200 6c 6f 63 6b 25 21 37 36 3d 26 32 30 30 30 30 30 |lock%!76=&200000| 00008210 0d 2a bc 4b 20 e7 20 62 6c 6f 63 6b 25 21 37 32 |.*.K . block%!72| 00008220 3c 3e 28 62 6c 6f 63 6b 25 21 38 38 20 80 20 26 |<>(block%!88 . &| 00008230 32 30 30 30 30 30 29 20 8c 20 c8 99 20 22 57 69 |200000) . .. "Wi| 00008240 6d 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 |mp_SetIconState"| 00008250 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d 2a c6 3e 20 |,,block%+64.*.> | 00008260 e7 20 62 75 74 6e 25 3d 34 20 80 20 62 6c 6f 63 |. butn%=4 . bloc| 00008270 6b 25 21 37 32 3d 26 32 30 30 30 30 30 20 8c 20 |k%!72=&200000 . | 00008280 69 6e 74 66 6c 61 67 25 3d 69 6e 74 66 6c 61 67 |intflag%=intflag| 00008290 25 20 80 20 ac 20 32 36 30 0d 2a d0 06 20 e1 0d |% . . 260.*.. ..| 000082a0 2a da 06 20 3a 0d 2a e4 0d 20 dd 20 f2 74 72 61 |*.. :.*.. . .tra| 000082b0 69 6e 0d 2a ee 1a 20 69 6e 74 66 6c 61 67 25 3d |in.*.. intflag%=| 000082c0 69 6e 74 66 6c 61 67 25 20 84 20 34 0d 2a f8 22 |intflag% . 4.*."| 000082d0 20 f2 63 6c 61 69 6d 28 68 65 61 70 25 2b 34 30 | .claim(heap%+40| 000082e0 2c 36 37 2a 31 36 2c 63 6c 61 69 6d 25 29 0d 2b |,67*16,claim%).+| 000082f0 02 12 20 21 28 68 65 61 70 25 21 34 30 29 3d 30 |.. !(heap%!40)=0| 00008300 0d 2b 0c 06 20 3a 0d 2b 16 3f 20 21 62 6c 6f 63 |.+.. :.+.? !bloc| 00008310 6b 25 3d 74 72 6e 77 69 6e 25 3a 62 6c 6f 63 6b |k%=trnwin%:block| 00008320 25 21 34 3d 31 31 3a c8 99 20 22 57 69 6d 70 5f |%!4=11:.. "Wimp_| 00008330 47 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 |GetIconState",,b| 00008340 6c 6f 63 6b 25 0d 2b 20 3a 20 62 6c 6f 63 6b 25 |lock%.+ : block%| 00008350 21 36 34 3d 74 72 6e 77 69 6e 25 3a c8 99 20 22 |!64=trnwin%:.. "| 00008360 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 |Wimp_GetWindowSt| 00008370 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 36 34 0d |ate",,block%+64.| 00008380 2b 2a 41 20 62 6c 6f 63 6b 25 21 38 2b 3d 62 6c |+*A block%!8+=bl| 00008390 6f 63 6b 25 21 36 38 2d 62 6c 6f 63 6b 25 21 38 |ock%!68-block%!8| 000083a0 34 3a 62 6c 6f 63 6b 25 21 31 32 2b 3d 62 6c 6f |4:block%!12+=blo| 000083b0 63 6b 25 21 38 30 2d 62 6c 6f 63 6b 25 21 38 38 |ck%!80-block%!88| 000083c0 0d 2b 34 42 20 62 6c 6f 63 6b 25 21 31 36 2b 3d |.+4B block%!16+=| 000083d0 62 6c 6f 63 6b 25 21 36 38 2d 62 6c 6f 63 6b 25 |block%!68-block%| 000083e0 21 38 34 3a 62 6c 6f 63 6b 25 21 32 30 2b 3d 62 |!84:block%!20+=b| 000083f0 6c 6f 63 6b 25 21 38 30 2d 62 6c 6f 63 6b 25 21 |lock%!80-block%!| 00008400 38 38 0d 2b 3e 46 20 c8 97 20 c8 93 20 62 6c 6f |88.+>F .. .. blo| 00008410 63 6b 25 21 36 38 2c 62 6c 6f 63 6b 25 21 37 32 |ck%!68,block%!72| 00008420 2c 62 6c 6f 63 6b 25 21 37 36 2d 62 6c 6f 63 6b |,block%!76-block| 00008430 25 21 36 38 2c 62 6c 6f 63 6b 25 21 38 30 2d 62 |%!68,block%!80-b| 00008440 6c 6f 63 6b 25 21 37 32 0d 2b 48 11 20 62 6c 6f |lock%!72.+H. blo| 00008450 63 6b 25 21 36 38 3d 31 31 0d 2b 52 38 20 c8 95 |ck%!68=11.+R8 ..| 00008460 20 28 69 6e 74 66 6c 61 67 25 20 80 20 34 29 3d | (intflag% . 4)=| 00008470 34 20 80 20 28 69 6e 74 66 6c 61 67 25 20 80 20 |4 . (intflag% . | 00008480 32 35 36 29 3d 32 35 36 20 80 20 63 6c 61 69 6d |256)=256 . claim| 00008490 25 0d 2b 5c 0e 20 f2 70 6f 6c 6c 73 74 6f 70 0d |%.+\. .pollstop.| 000084a0 2b 66 4e 20 e7 20 68 65 61 70 25 21 34 34 2d 21 |+fN . heap%!44-!| 000084b0 28 68 65 61 70 25 21 34 30 29 2a 36 37 2a 34 3c |(heap%!40)*67*4<| 000084c0 36 37 2a 38 20 8c 20 f2 63 6c 61 69 6d 28 68 65 |67*8 . .claim(he| 000084d0 61 70 25 2b 34 30 2c 68 65 61 70 25 21 34 34 2b |ap%+40,heap%!44+| 000084e0 36 37 2a 31 36 2c 63 6c 61 69 6d 25 29 0d 2b 70 |67*16,claim%).+p| 000084f0 0f 20 d6 20 73 63 61 6e 6c 69 6e 65 0d 2b 7a 0d |. . scanline.+z.| 00008500 20 f2 65 78 74 72 61 63 74 0d 2b 84 14 20 e7 20 | .extract.+.. . | 00008510 21 6f 75 74 70 75 74 25 3e 3d 30 20 8c 0d 2b 8e |!output%>=0 ..+.| 00008520 3d 20 69 6e 70 75 74 25 21 31 36 38 3d 73 74 61 |= input%!168=sta| 00008530 74 65 25 3a 69 6e 70 75 74 25 21 31 37 32 3d 68 |te%:input%!172=h| 00008540 65 61 70 25 21 34 30 2b 34 2b 21 28 68 65 61 70 |eap%!40+4+!(heap| 00008550 25 21 34 30 29 2a 36 37 2a 34 0d 2b 98 1b 20 69 |%!40)*67*4.+.. i| 00008560 6e 70 75 74 25 21 31 37 36 3d 36 37 2a 34 3a d6 |nput%!176=67*4:.| 00008570 20 63 6f 70 79 0d 2b a2 13 20 21 28 68 65 61 70 | copy.+.. !(heap| 00008580 25 21 34 30 29 2b 3d 31 0d 2b ac 06 20 cd 0d 2b |%!40)+=1.+.. ..+| 00008590 b6 06 20 ce 0d 2b c0 06 20 3a 0d 2b ca 44 20 62 |.. ..+.. :.+.D b| 000085a0 6c 6f 63 6b 25 21 32 34 3d 74 72 6e 77 69 6e 25 |lock%!24=trnwin%| 000085b0 3a 62 6c 6f 63 6b 25 21 32 38 3d 37 3a c8 99 20 |:block%!28=7:.. | 000085c0 22 57 69 6d 70 5f 47 65 74 49 63 6f 6e 53 74 61 |"Wimp_GetIconSta| 000085d0 74 65 22 2c 2c 62 6c 6f 63 6b 25 2b 32 34 0d 2b |te",,block%+24.+| 000085e0 d4 3a 20 62 6c 6f 63 6b 25 21 36 34 3d 74 72 6e |.: block%!64=trn| 000085f0 77 69 6e 25 3a c8 99 20 22 57 69 6d 70 5f 47 65 |win%:.. "Wimp_Ge| 00008600 74 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 62 |tWindowState",,b| 00008610 6c 6f 63 6b 25 2b 36 34 0d 2b de 46 20 62 6c 6f |lock%+64.+.F blo| 00008620 63 6b 25 21 33 32 2b 3d 35 2b 62 6c 6f 63 6b 25 |ck%!32+=5+block%| 00008630 21 36 38 2d 62 6c 6f 63 6b 25 21 38 34 3a 62 6c |!68-block%!84:bl| 00008640 6f 63 6b 25 21 33 36 2b 3d 35 2b 62 6c 6f 63 6b |ock%!36+=5+block| 00008650 25 21 38 30 2d 62 6c 6f 63 6b 25 21 38 38 0d 2b |%!80-block%!88.+| 00008660 e8 46 20 62 6c 6f 63 6b 25 21 34 30 2b 3d 62 6c |.F block%!40+=bl| 00008670 6f 63 6b 25 21 36 38 2d 62 6c 6f 63 6b 25 21 38 |ock%!68-block%!8| 00008680 34 2d 35 3a 62 6c 6f 63 6b 25 21 34 34 2b 3d 62 |4-5:block%!44+=b| 00008690 6c 6f 63 6b 25 21 38 30 2d 62 6c 6f 63 6b 25 21 |lock%!80-block%!| 000086a0 38 38 2d 35 0d 2b f2 11 20 62 6c 6f 63 6b 25 21 |88-5.+.. block%!| 000086b0 36 38 3d 31 31 0d 2b fc 1a 20 74 72 61 69 6e 25 |68=11.+.. train%| 000086c0 3d 30 3a 69 6e 70 75 74 25 21 33 36 3d 2d 31 0d |=0:input%!36=-1.| 000086d0 2c 06 25 20 c8 95 20 28 69 6e 74 66 6c 61 67 25 |,.% .. (intflag%| 000086e0 20 80 20 32 35 36 29 3d 32 35 36 20 80 20 63 6c | . 256)=256 . cl| 000086f0 61 69 6d 25 0d 2c 10 0e 20 f2 70 6f 6c 6c 73 74 |aim%.,.. .pollst| 00008700 6f 70 0d 2c 1a 38 20 69 6e 70 75 74 25 21 31 37 |op.,.8 input%!17| 00008710 32 3d 73 74 61 74 65 25 3a 69 6e 70 75 74 25 21 |2=state%:input%!| 00008720 31 36 38 3d 68 65 61 70 25 21 34 30 2b 34 2b 74 |168=heap%!40+4+t| 00008730 72 61 69 6e 25 2a 36 37 2a 34 0d 2c 24 1b 20 69 |rain%*67*4.,$. i| 00008740 6e 70 75 74 25 21 31 37 36 3d 36 37 2a 34 3a d6 |nput%!176=67*4:.| 00008750 20 63 6f 70 79 0d 2c 2e 21 20 d6 20 74 72 61 69 | copy.,.! . trai| 00008760 6e 63 68 61 72 3a 6c 65 74 25 3d 21 6f 75 74 70 |nchar:let%=!outp| 00008770 75 74 25 2d 33 33 0d 2c 38 06 20 3a 0d 2c 42 10 |ut%-33.,8. :.,B.| 00008780 20 e7 20 6c 65 74 25 3e 3d 30 20 8c 0d 2c 4c 2a | . let%>=0 ..,L*| 00008790 20 69 6e 70 75 74 25 21 31 32 34 3d 68 65 61 70 | input%!124=heap| 000087a0 25 21 33 32 2b 33 32 2b 21 28 68 65 61 70 25 21 |%!32+32+!(heap%!| 000087b0 33 32 2b 33 32 29 0d 2c 56 23 20 69 6e 70 75 74 |32+32).,V# input| 000087c0 25 21 31 38 38 3d 6c 65 74 25 20 81 20 33 32 3a |%!188=let% . 32:| 000087d0 d6 20 70 61 74 74 65 72 6e 0d 2c 60 0f 20 d6 20 |. pattern.,`. . | 000087e0 65 76 61 6c 75 61 74 65 0d 2c 6a 1c 20 d6 20 65 |evaluate.,j. . e| 000087f0 72 72 6f 72 3a 65 72 72 6f 72 25 3d 21 6f 75 74 |rror:error%=!out| 00008800 70 75 74 25 0d 2c 74 0c 20 d6 20 6c 65 61 72 6e |put%.,t. . learn| 00008810 0d 2c 7e 38 20 69 6e 70 75 74 25 21 31 32 34 3d |.,~8 input%!124=| 00008820 68 65 61 70 25 21 33 32 2b 33 32 2b 21 28 68 65 |heap%!32+32+!(he| 00008830 61 70 25 21 33 32 2b 33 36 2b 34 2a 28 6c 65 74 |ap%!32+36+4*(let| 00008840 25 20 81 20 33 32 29 29 0d 2c 88 23 20 69 6e 70 |% . 32)).,.# inp| 00008850 75 74 25 21 31 38 38 3d 6c 65 74 25 20 83 20 33 |ut%!188=let% . 3| 00008860 32 3a d6 20 70 61 74 74 65 72 6e 0d 2c 92 0f 20 |2:. pattern.,.. | 00008870 d6 20 65 76 61 6c 75 61 74 65 0d 2c 9c 1d 20 d6 |. evaluate.,.. .| 00008880 20 65 72 72 6f 72 3a 65 72 72 6f 72 25 2b 3d 21 | error:error%+=!| 00008890 6f 75 74 70 75 74 25 0d 2c a6 0c 20 d6 20 6c 65 |output%.,.. . le| 000088a0 61 72 6e 0d 2c b0 06 20 cd 0d 2c ba 0e 20 74 72 |arn.,.. ..,.. tr| 000088b0 61 69 6e 25 2b 3d 31 0d 2c c4 32 20 ef 20 32 34 |ain%+=1.,.2 . 24| 000088c0 2c 62 6c 6f 63 6b 25 21 33 32 3b 62 6c 6f 63 6b |,block%!32;block| 000088d0 25 21 33 36 3b 62 6c 6f 63 6b 25 21 34 30 3b 62 |%!36;block%!40;b| 000088e0 6c 6f 63 6b 25 21 34 34 3b 0d 2c ce 1a 20 c8 99 |lock%!44;.,.. ..| 000088f0 20 22 57 69 6d 70 5f 53 65 74 43 6f 6c 6f 75 72 | "Wimp_SetColour| 00008900 22 2c 35 0d 2c d8 44 20 c8 92 20 62 6c 6f 63 6b |",5.,.D .. block| 00008910 25 21 34 30 2d 34 2c 62 6c 6f 63 6b 25 21 33 36 |%!40-4,block%!36| 00008920 2b 28 62 6c 6f 63 6b 25 21 34 34 2d 62 6c 6f 63 |+(block%!44-bloc| 00008930 6b 25 21 33 36 29 2a 65 72 72 6f 72 25 2f 28 31 |k%!36)*error%/(1| 00008940 3c 3c 70 6e 74 25 29 0d 2c e2 1c 20 e7 20 74 72 |<<pnt%).,.. . tr| 00008950 61 69 6e 25 3e 3d 21 28 68 65 61 70 25 21 34 30 |ain%>=!(heap%!40| 00008960 29 20 8c 0d 2c ec 5b 20 c8 93 20 62 6c 6f 63 6b |) ..,.[ .. block| 00008970 25 21 33 32 2c 62 6c 6f 63 6b 25 21 33 36 2c 62 |%!32,block%!36,b| 00008980 6c 6f 63 6b 25 21 34 30 2d 62 6c 6f 63 6b 25 21 |lock%!40-block%!| 00008990 33 32 2c 62 6c 6f 63 6b 25 21 34 34 2d 62 6c 6f |32,block%!44-blo| 000089a0 63 6b 25 21 33 36 20 b8 20 62 6c 6f 63 6b 25 21 |ck%!36 . block%!| 000089b0 33 32 2d 32 2c 62 6c 6f 63 6b 25 21 33 36 0d 2c |32-2,block%!36.,| 000089c0 f6 1a 20 74 72 61 69 6e 25 3d 30 3a 69 6e 70 75 |.. train%=0:inpu| 000089d0 74 25 21 33 36 3d 2d 31 0d 2d 00 06 20 cd 0d 2d |t%!36=-1.-.. ..-| 000089e0 0a 32 20 e7 20 74 72 61 69 6e 25 3e 3d 21 28 68 |.2 . train%>=!(h| 000089f0 65 61 70 25 21 34 30 29 20 8c 20 74 72 61 69 6e |eap%!40) . train| 00008a00 25 3d 30 3a 69 6e 70 75 74 25 21 33 36 3d 2d 31 |%=0:input%!36=-1| 00008a10 0d 2d 14 06 20 ce 0d 2d 1e 06 20 3a 0d 2d 28 2e |.-.. ..-.. :.-(.| 00008a20 20 c8 99 20 22 4f 53 5f 52 65 61 64 4d 6f 64 65 | .. "OS_ReadMode| 00008a30 56 61 72 69 61 62 6c 65 22 2c eb 2c 31 31 20 b8 |Variable",.,11 .| 00008a40 20 2c 2c 21 62 6c 6f 63 6b 25 0d 2d 32 2f 20 c8 | ,,!block%.-2/ .| 00008a50 99 20 22 4f 53 5f 52 65 61 64 4d 6f 64 65 56 61 |. "OS_ReadModeVa| 00008a60 72 69 61 62 6c 65 22 2c eb 2c 31 32 20 b8 20 2c |riable",.,12 . ,| 00008a70 2c 62 6c 6f 63 6b 25 21 34 0d 2d 3c 35 20 c8 97 |,block%!4.-<5 ..| 00008a80 20 c8 93 20 30 2c 30 2c 21 62 6c 6f 63 6b 25 3c | .. 0,0,!block%<| 00008a90 3c 73 63 61 6c 65 25 21 33 32 2c 62 6c 6f 63 6b |<scale%!32,block| 00008aa0 25 21 34 3c 3c 73 63 61 6c 65 25 21 33 36 0d 2d |%!4<<scale%!36.-| 00008ab0 46 1e 20 69 6e 74 66 6c 61 67 25 3d 69 6e 74 66 |F. intflag%=intf| 00008ac0 6c 61 67 25 20 80 20 ac 20 32 35 36 0d 2d 50 32 |lag% . . 256.-P2| 00008ad0 20 21 62 6c 6f 63 6b 25 3d 74 72 6e 77 69 6e 25 | !block%=trnwin%| 00008ae0 3a c8 99 20 22 57 69 6d 70 5f 43 6c 6f 73 65 57 |:.. "Wimp_CloseW| 00008af0 69 6e 64 6f 77 22 2c 2c 62 6c 6f 63 6b 25 0d 2d |indow",,block%.-| 00008b00 5a 17 20 e7 20 ac 20 63 6c 61 69 6d 25 20 8c 20 |Z. . . claim% . | 00008b10 f2 66 75 6c 6c 0d 2d 64 1f 20 f2 63 6c 61 69 6d |.full.-d. .claim| 00008b20 28 68 65 61 70 25 2b 34 30 2c 33 32 2c 63 6c 61 |(heap%+40,32,cla| 00008b30 69 6d 25 29 0d 2d 6e 06 20 e1 0d 2d 78 06 20 3a |im%).-n. ..-x. :| 00008b40 0d 2d 82 0b 20 dd 20 f2 6e 65 77 0d 2d 8c 22 20 |.-.. . .new.-." | 00008b50 f2 63 6c 61 69 6d 28 68 65 61 70 25 2b 33 32 2c |.claim(heap%+32,| 00008b60 36 34 38 38 30 2c 63 6c 61 69 6d 25 29 0d 2d 96 |64880,claim%).-.| 00008b70 0f 20 e7 20 63 6c 61 69 6d 25 20 8c 0d 2d a0 16 |. . claim% ..-..| 00008b80 20 c8 99 20 22 48 6f 75 72 67 6c 61 73 73 5f 4f | .. "Hourglass_O| 00008b90 6e 22 0d 2d aa 23 20 24 28 69 63 6f 6e 74 78 74 |n".-.# $(icontxt| 00008ba0 25 28 31 39 29 29 3d 22 4e 65 74 46 69 6c 65 22 |%(19))="NetFile"| 00008bb0 2b bd 28 30 29 0d 2d b4 12 20 21 28 68 65 61 70 |+.(0).-.. !(heap| 00008bc0 25 21 33 32 29 3d 31 0d 2d be 22 20 24 28 68 65 |%!32)=1.-." $(he| 00008bd0 61 70 25 21 33 32 2b 34 29 3d 22 42 6c 61 6e 6b |ap%!32+4)="Blank| 00008be0 20 4e 65 74 77 6f 72 6b 22 0d 2d c8 22 20 24 28 | Network".-." $(| 00008bf0 69 63 6f 6e 74 78 74 25 28 31 38 29 29 3d 24 28 |icontxt%(18))=$(| 00008c00 68 65 61 70 25 21 33 32 2b 34 29 0d 2d d2 16 20 |heap%!32+4).-.. | 00008c10 21 28 68 65 61 70 25 21 33 32 2b 33 32 29 3d 32 |!(heap%!32+32)=2| 00008c20 30 0d 2d dc 39 20 21 28 68 65 61 70 25 21 33 32 |0.-.9 !(heap%!32| 00008c30 2b 33 36 29 3d 21 28 68 65 61 70 25 21 33 32 2b |+36)=!(heap%!32+| 00008c40 33 32 29 2b 34 2a 28 33 32 2a 28 32 2b 36 37 2b |32)+4*(32*(2+67+| 00008c50 33 32 2b 33 29 2b 33 2b 33 29 0d 2d e6 3b 20 21 |32+3)+3+3).-.; !| 00008c60 28 68 65 61 70 25 21 33 32 2b 34 30 29 3d 21 28 |(heap%!32+40)=!(| 00008c70 68 65 61 70 25 21 33 32 2b 33 36 29 2b 34 2a 28 |heap%!32+36)+4*(| 00008c80 33 32 2a 28 32 2b 36 37 2b 33 32 2b 33 32 29 2b |32*(2+67+32+32)+| 00008c90 33 32 2b 33 29 0d 2d f0 3b 20 21 28 68 65 61 70 |32+3).-.; !(heap| 00008ca0 25 21 33 32 2b 34 34 29 3d 21 28 68 65 61 70 25 |%!32+44)=!(heap%| 00008cb0 21 33 32 2b 34 30 29 2b 34 2a 28 33 32 2a 28 32 |!32+40)+4*(32*(2| 00008cc0 2b 36 37 2b 33 32 2b 33 32 29 2b 33 32 2b 33 29 |+67+32+32)+32+3)| 00008cd0 0d 2d fa 3b 20 21 28 68 65 61 70 25 21 33 32 2b |.-.; !(heap%!32+| 00008ce0 34 38 29 3d 21 28 68 65 61 70 25 21 33 32 2b 34 |48)=!(heap%!32+4| 00008cf0 34 29 2b 34 2a 28 33 32 2a 28 32 2b 36 37 2b 33 |4)+4*(32*(2+67+3| 00008d00 32 2b 33 32 29 2b 33 32 2b 33 29 0d 2e 04 66 20 |2+32)+32+3)...f | 00008d10 21 28 68 65 61 70 25 21 33 32 2b 33 32 2b 21 28 |!(heap%!32+32+!(| 00008d20 68 65 61 70 25 21 33 32 2b 33 32 29 29 3d 36 37 |heap%!32+32))=67| 00008d30 3a 21 28 68 65 61 70 25 21 33 32 2b 33 36 2b 21 |:!(heap%!32+36+!| 00008d40 28 68 65 61 70 25 21 33 32 2b 33 32 29 29 3d 33 |(heap%!32+32))=3| 00008d50 32 3a 21 28 68 65 61 70 25 21 33 32 2b 34 30 2b |2:!(heap%!32+40+| 00008d60 21 28 68 65 61 70 25 21 33 32 2b 33 32 29 29 3d |!(heap%!32+32))=| 00008d70 33 0d 2e 0e 67 20 21 28 68 65 61 70 25 21 33 32 |3...g !(heap%!32| 00008d80 2b 33 32 2b 21 28 68 65 61 70 25 21 33 32 2b 33 |+32+!(heap%!32+3| 00008d90 36 29 29 3d 36 37 3a 21 28 68 65 61 70 25 21 33 |6))=67:!(heap%!3| 00008da0 32 2b 33 36 2b 21 28 68 65 61 70 25 21 33 32 2b |2+36+!(heap%!32+| 00008db0 33 36 29 29 3d 33 32 3a 21 28 68 65 61 70 25 21 |36))=32:!(heap%!| 00008dc0 33 32 2b 34 30 2b 21 28 68 65 61 70 25 21 33 32 |32+40+!(heap%!32| 00008dd0 2b 33 36 29 29 3d 33 32 0d 2e 18 67 20 21 28 68 |+36))=32...g !(h| 00008de0 65 61 70 25 21 33 32 2b 33 32 2b 21 28 68 65 61 |eap%!32+32+!(hea| 00008df0 70 25 21 33 32 2b 34 30 29 29 3d 36 37 3a 21 28 |p%!32+40))=67:!(| 00008e00 68 65 61 70 25 21 33 32 2b 33 36 2b 21 28 68 65 |heap%!32+36+!(he| 00008e10 61 70 25 21 33 32 2b 34 30 29 29 3d 33 32 3a 21 |ap%!32+40))=32:!| 00008e20 28 68 65 61 70 25 21 33 32 2b 34 30 2b 21 28 68 |(heap%!32+40+!(h| 00008e30 65 61 70 25 21 33 32 2b 34 30 29 29 3d 33 32 0d |eap%!32+40))=32.| 00008e40 2e 22 67 20 21 28 68 65 61 70 25 21 33 32 2b 33 |."g !(heap%!32+3| 00008e50 32 2b 21 28 68 65 61 70 25 21 33 32 2b 34 34 29 |2+!(heap%!32+44)| 00008e60 29 3d 36 37 3a 21 28 68 65 61 70 25 21 33 32 2b |)=67:!(heap%!32+| 00008e70 33 36 2b 21 28 68 65 61 70 25 21 33 32 2b 34 34 |36+!(heap%!32+44| 00008e80 29 29 3d 33 32 3a 21 28 68 65 61 70 25 21 33 32 |))=32:!(heap%!32| 00008e90 2b 34 30 2b 21 28 68 65 61 70 25 21 33 32 2b 34 |+40+!(heap%!32+4| 00008ea0 34 29 29 3d 33 32 0d 2e 2c 2c 20 f2 64 69 73 6f |4))=32..,, .diso| 00008eb0 72 64 65 72 28 68 65 61 70 25 21 33 32 2b 33 32 |rder(heap%!32+32| 00008ec0 2b 21 28 68 65 61 70 25 21 33 32 2b 33 32 29 2c |+!(heap%!32+32),| 00008ed0 b9 29 0d 2e 36 2c 20 f2 64 69 73 6f 72 64 65 72 |.)..6, .disorder| 00008ee0 28 68 65 61 70 25 21 33 32 2b 33 32 2b 21 28 68 |(heap%!32+32+!(h| 00008ef0 65 61 70 25 21 33 32 2b 33 36 29 2c a3 29 0d 2e |eap%!32+36),.)..| 00008f00 40 2c 20 f2 64 69 73 6f 72 64 65 72 28 68 65 61 |@, .disorder(hea| 00008f10 70 25 21 33 32 2b 33 32 2b 21 28 68 65 61 70 25 |p%!32+32+!(heap%| 00008f20 21 33 32 2b 34 30 29 2c a3 29 0d 2e 4a 2c 20 f2 |!32+40),.)..J, .| 00008f30 64 69 73 6f 72 64 65 72 28 68 65 61 70 25 21 33 |disorder(heap%!3| 00008f40 32 2b 33 32 2b 21 28 68 65 61 70 25 21 33 32 2b |2+32+!(heap%!32+| 00008f50 34 34 29 2c a3 29 0d 2e 54 37 20 21 62 6c 6f 63 |44),.)..T7 !bloc| 00008f60 6b 25 3d 63 6e 74 77 69 6e 25 3a 62 6c 6f 63 6b |k%=cntwin%:block| 00008f70 25 21 34 3d 32 37 3a 62 6c 6f 63 6b 25 21 38 3d |%!4=27:block%!8=| 00008f80 30 3a 62 6c 6f 63 6b 25 21 31 32 3d 30 0d 2e 5e |0:block%!12=0..^| 00008f90 23 20 c8 99 20 22 57 69 6d 70 5f 53 65 74 49 63 |# .. "Wimp_SetIc| 00008fa0 6f 6e 53 74 61 74 65 22 2c 2c 62 6c 6f 63 6b 25 |onState",,block%| 00008fb0 0d 2e 68 17 20 c8 99 20 22 48 6f 75 72 67 6c 61 |..h. .. "Hourgla| 00008fc0 73 73 5f 4f 66 66 22 0d 2e 72 06 20 cc 0d 2e 7c |ss_Off"..r. ...|| 00008fd0 0a 20 f2 66 75 6c 6c 0d 2e 86 06 20 cd 0d 2e 90 |. .full.... ....| 00008fe0 06 20 e1 0d 2e 9a 06 20 3a 0d 2e a4 1e 20 dd 20 |. ..... :.... . | 00008ff0 f2 64 69 73 6f 72 64 65 72 28 6e 65 74 61 64 72 |.disorder(netadr| 00009000 25 2c 74 6f 70 25 29 0d 2e ae 3c 20 69 6e 70 6e |%,top%)...< inpn| 00009010 6f 64 65 25 3d 21 6e 65 74 61 64 72 25 3a 68 69 |ode%=!netadr%:hi| 00009020 64 6e 6f 64 65 25 3d 6e 65 74 61 64 72 25 21 34 |dnode%=netadr%!4| 00009030 3a 6f 75 74 6e 6f 64 65 25 3d 6e 65 74 61 64 72 |:outnode%=netadr| 00009040 25 21 38 0d 2e b8 1c 20 72 61 6e 64 25 3d b3 28 |%!8.... rand%=.(| 00009050 2d 31 29 3a 6e 65 74 61 64 72 25 2b 3d 31 32 0d |-1):netadr%+=12.| 00009060 2e c2 26 20 e3 20 72 61 6e 64 25 3d 30 20 b8 20 |..& . rand%=0 . | 00009070 32 2a 68 69 64 6e 6f 64 65 25 2b 6f 75 74 6e 6f |2*hidnode%+outno| 00009080 64 65 25 2d 31 0d 2e cc 0c 20 ed 20 72 61 6e 64 |de%-1.... . rand| 00009090 25 0d 2e d6 25 20 6e 65 74 61 64 72 25 2b 3d 34 |%...% netadr%+=4| 000090a0 2a 28 32 2a 68 69 64 6e 6f 64 65 25 2b 6f 75 74 |*(2*hidnode%+out| 000090b0 6e 6f 64 65 25 29 0d 2e e0 38 20 e3 20 72 61 6e |node%)...8 . ran| 000090c0 64 25 3d 30 20 b8 20 68 69 64 6e 6f 64 65 25 2a |d%=0 . hidnode%*| 000090d0 28 69 6e 70 6e 6f 64 65 25 2b 68 69 64 6e 6f 64 |(inpnode%+hidnod| 000090e0 65 25 2b 6f 75 74 6e 6f 64 65 25 29 2d 31 0d 2e |e%+outnode%)-1..| 000090f0 ea 28 20 6e 65 74 61 64 72 25 21 28 34 2a 72 61 |.( netadr%!(4*ra| 00009100 6e 64 25 29 3d b3 3e 3e 28 33 32 2b 74 6f 70 25 |nd%)=.>>(32+top%| 00009110 2d 70 6e 74 25 29 0d 2e f4 0c 20 ed 20 72 61 6e |-pnt%).... . ran| 00009120 64 25 0d 2e fe 06 20 e1 0d 2f 08 06 20 3a 0d 2f |d%.... ../.. :./| 00009130 12 0e 20 dd 20 f2 72 6f 74 61 74 65 0d 2f 1c 46 |.. . .rotate./.F| 00009140 20 e7 20 28 78 65 64 25 2d 78 73 74 25 29 3c 3e | . (xed%-xst%)<>| 00009150 30 20 8c 20 61 6e 67 6c 65 3d 99 28 20 28 79 65 |0 . angle=.( (ye| 00009160 64 25 2d 79 73 74 25 29 2f 28 78 65 64 25 2d 78 |d%-yst%)/(xed%-x| 00009170 73 74 25 29 20 29 20 8b 20 61 6e 67 6c 65 3d af |st%) ) . angle=.| 00009180 2f 32 0d 2f 26 24 20 e7 20 28 78 65 64 25 2d 78 |/2./&$ . (xed%-x| 00009190 73 74 25 29 3c 30 20 8c 20 61 6e 67 6c 65 3d 61 |st%)<0 . angle=a| 000091a0 6e 67 6c 65 2b af 0d 2f 30 12 20 e7 20 61 6e 67 |ngle+../0. . ang| 000091b0 6c 65 3d 30 20 8c 20 e1 0d 2f 3a 25 20 f2 63 6c |le=0 . ../:% .cl| 000091c0 61 69 6d 28 68 65 61 70 25 2b 34 38 2c 68 65 61 |aim(heap%+48,hea| 000091d0 70 25 21 31 32 2c 63 6c 61 69 6d 25 29 0d 2f 44 |p%!12,claim%)./D| 000091e0 0f 20 e7 20 63 6c 61 69 6d 25 20 8c 0d 2f 4e 3f |. . claim% ../N?| 000091f0 20 69 6e 70 75 74 25 21 31 36 38 3d 68 65 61 70 | input%!168=heap| 00009200 25 21 38 3a 69 6e 70 75 74 25 21 31 37 32 3d 68 |%!8:input%!172=h| 00009210 65 61 70 25 21 34 38 3a 69 6e 70 75 74 25 21 31 |eap%!48:input%!1| 00009220 37 36 3d 68 65 61 70 25 21 31 32 0d 2f 58 0b 20 |76=heap%!12./X. | 00009230 d6 20 63 6f 70 79 0d 2f 62 2a 20 69 6e 70 75 74 |. copy./b* input| 00009240 25 21 31 39 32 3d 68 65 61 70 25 21 34 38 2b 31 |%!192=heap%!48+1| 00009250 36 2b 21 28 68 65 61 70 25 21 34 38 2b 34 38 29 |6+!(heap%!48+48)| 00009260 0d 2f 6c 20 20 69 6e 70 75 74 25 21 31 39 36 3d |./l input%!196=| 00009270 21 28 68 65 61 70 25 21 34 38 2b 33 32 29 2b 31 |!(heap%!48+32)+1| 00009280 0d 2f 76 20 20 69 6e 70 75 74 25 21 32 30 30 3d |./v input%!200=| 00009290 21 28 68 65 61 70 25 21 34 38 2b 33 36 29 2b 31 |!(heap%!48+36)+1| 000092a0 0d 2f 80 1e 20 69 6e 70 75 74 25 21 32 30 34 3d |./.. input%!204=| 000092b0 21 28 68 65 61 70 25 21 34 38 2b 34 30 29 0d 2f |!(heap%!48+40)./| 000092c0 8a 1e 20 69 6e 70 75 74 25 21 32 30 38 3d 21 28 |.. input%!208=!(| 000092d0 68 65 61 70 25 21 34 38 2b 34 34 29 0d 2f 94 19 |heap%!48+44)./..| 000092e0 20 69 6e 70 75 74 25 21 32 31 32 3d 73 63 61 6c | input%!212=scal| 000092f0 65 25 21 32 34 0d 2f 9e 19 20 69 6e 70 75 74 25 |e%!24./.. input%| 00009300 21 32 31 36 3d 73 63 61 6c 65 25 21 32 38 0d 2f |!216=scale%!28./| 00009310 a8 20 20 69 6e 70 75 74 25 21 32 32 30 3d 9b 28 |. input%!220=.(| 00009320 61 6e 67 6c 65 29 2a 28 31 3c 3c 31 36 29 0d 2f |angle)*(1<<16)./| 00009330 b2 21 20 69 6e 70 75 74 25 21 32 32 34 3d 2d b5 |.! input%!224=-.| 00009340 28 61 6e 67 6c 65 29 2a 28 31 3c 3c 31 36 29 0d |(angle)*(1<<16).| 00009350 2f bc 20 20 69 6e 70 75 74 25 21 32 32 38 3d b5 |/. input%!228=.| 00009360 28 61 6e 67 6c 65 29 2a 28 31 3c 3c 31 36 29 0d |(angle)*(1<<16).| 00009370 2f c6 20 20 69 6e 70 75 74 25 21 32 33 32 3d 9b |/. input%!232=.| 00009380 28 61 6e 67 6c 65 29 2a 28 31 3c 3c 31 36 29 0d |(angle)*(1<<16).| 00009390 2f d0 10 20 d6 20 73 70 72 65 78 74 65 6e 74 0d |/.. . sprextent.| 000093a0 2f da 19 20 69 6e 70 75 74 25 21 32 33 36 3d 2d |/.. input%!236=-| 000093b0 21 6f 75 74 70 75 74 25 0d 2f e4 1a 20 69 6e 70 |!output%./.. inp| 000093c0 75 74 25 21 32 34 30 3d 2d 6f 75 74 70 75 74 25 |ut%!240=-output%| 000093d0 21 34 0d 2f ee 3f 20 65 78 74 65 6e 74 25 3d 28 |!4./.? extent%=(| 000093e0 33 32 2b 6f 75 74 70 75 74 25 21 38 2d 21 6f 75 |32+output%!8-!ou| 000093f0 74 70 75 74 25 29 2a 28 6f 75 74 70 75 74 25 21 |tput%)*(output%!| 00009400 31 32 2d 6f 75 74 70 75 74 25 21 34 29 20 81 20 |12-output%!4) . | 00009410 38 0d 2f f8 23 20 f2 63 6c 61 69 6d 28 68 65 61 |8./.# .claim(hea| 00009420 70 25 2b 38 2c 65 78 74 65 6e 74 25 2c 63 6c 61 |p%+8,extent%,cla| 00009430 69 6d 25 29 0d 30 02 06 20 cd 0d 30 0c 0f 20 e7 |im%).0.. ..0.. .| 00009440 20 63 6c 61 69 6d 25 20 8c 0d 30 16 48 20 21 28 | claim% ..0.H !(| 00009450 68 65 61 70 25 21 38 29 3d 68 65 61 70 25 21 31 |heap%!8)=heap%!1| 00009460 32 3a 21 28 68 65 61 70 25 21 38 2b 34 29 3d 30 |2:!(heap%!8+4)=0| 00009470 3a 21 28 68 65 61 70 25 21 38 2b 38 29 3d 31 36 |:!(heap%!8+8)=16| 00009480 3a 21 28 68 65 61 70 25 21 38 2b 31 32 29 3d 31 |:!(heap%!8+12)=1| 00009490 36 0d 30 20 64 20 c8 99 20 22 4f 53 5f 53 70 72 |6.0 d .. "OS_Spr| 000094a0 69 74 65 4f 70 22 2c 32 35 36 2b 31 35 2c 68 65 |iteOp",256+15,he| 000094b0 61 70 25 21 38 2c 22 64 75 6d 70 22 2c 30 2c 6f |ap%!8,"dump",0,o| 000094c0 75 74 70 75 74 25 21 38 2d 21 6f 75 74 70 75 74 |utput%!8-!output| 000094d0 25 2c 6f 75 74 70 75 74 25 21 31 32 2d 6f 75 74 |%,output%!12-out| 000094e0 70 75 74 25 21 34 2c 21 28 35 36 2b 68 65 61 70 |put%!4,!(56+heap| 000094f0 25 21 34 38 29 0d 30 2a 4d 20 69 6e 70 75 74 25 |%!48).0*M input%| 00009500 21 31 39 32 3d 68 65 61 70 25 21 34 38 2b 31 36 |!192=heap%!48+16| 00009510 2b 21 28 68 65 61 70 25 21 34 38 2b 34 38 29 3a |+!(heap%!48+48):| 00009520 69 6e 70 75 74 25 21 31 32 3d 68 65 61 70 25 21 |input%!12=heap%!| 00009530 38 2b 31 36 2b 21 28 68 65 61 70 25 21 38 2b 34 |8+16+!(heap%!8+4| 00009540 38 29 0d 30 34 3a 20 69 6e 70 75 74 25 21 31 39 |8).04: input%!19| 00009550 36 3d 21 28 68 65 61 70 25 21 34 38 2b 33 32 29 |6=!(heap%!48+32)| 00009560 2b 31 3a 69 6e 70 75 74 25 21 31 36 3d 21 28 68 |+1:input%!16=!(h| 00009570 65 61 70 25 21 38 2b 33 32 29 2b 31 0d 30 3e 3a |eap%!8+32)+1.0>:| 00009580 20 69 6e 70 75 74 25 21 32 30 30 3d 21 28 68 65 | input%!200=!(he| 00009590 61 70 25 21 34 38 2b 33 36 29 2b 31 3a 69 6e 70 |ap%!48+36)+1:inp| 000095a0 75 74 25 21 32 30 3d 21 28 68 65 61 70 25 21 38 |ut%!20=!(heap%!8| 000095b0 2b 33 36 29 2b 31 0d 30 48 36 20 69 6e 70 75 74 |+36)+1.0H6 input| 000095c0 25 21 32 30 34 3d 21 28 68 65 61 70 25 21 34 38 |%!204=!(heap%!48| 000095d0 2b 34 30 29 3a 69 6e 70 75 74 25 21 32 34 3d 21 |+40):input%!24=!| 000095e0 28 68 65 61 70 25 21 38 2b 34 30 29 0d 30 52 36 |(heap%!8+40).0R6| 000095f0 20 69 6e 70 75 74 25 21 32 30 38 3d 21 28 68 65 | input%!208=!(he| 00009600 61 70 25 21 34 38 2b 34 34 29 3a 69 6e 70 75 74 |ap%!48+44):input| 00009610 25 21 32 38 3d 21 28 68 65 61 70 25 21 38 2b 34 |%!28=!(heap%!8+4| 00009620 34 29 0d 30 5c 17 20 69 6e 70 75 74 25 21 33 32 |4).0\. input%!32| 00009630 3d 68 65 61 70 25 21 31 36 0d 30 66 0e 20 d6 20 |=heap%!16.0f. . | 00009640 64 69 73 74 6f 72 74 0d 30 70 11 20 f2 73 63 61 |distort.0p. .sca| 00009650 6c 65 73 70 72 69 74 65 0d 30 7a 1f 20 f2 63 6c |lesprite.0z. .cl| 00009660 61 69 6d 28 68 65 61 70 25 2b 34 38 2c 33 32 2c |aim(heap%+48,32,| 00009670 63 6c 61 69 6d 25 29 0d 30 84 06 20 cd 0d 30 8e |claim%).0.. ..0.| 00009680 17 20 e7 20 ac 20 63 6c 61 69 6d 25 20 8c 20 f2 |. . . claim% . .| 00009690 66 75 6c 6c 0d 30 98 06 20 e1 0d 30 a2 06 20 3a |full.0.. ..0.. :| 000096a0 0d 30 ac 0f 20 dd 20 f2 73 68 6f 77 6e 65 74 0d |.0.. . .shownet.| 000096b0 30 b6 30 20 c8 99 20 22 4f 53 5f 53 70 72 69 74 |0.0 .. "OS_Sprit| 000096c0 65 4f 70 22 2c 32 35 36 2b 36 30 2c 73 70 72 69 |eOp",256+60,spri| 000096d0 74 65 25 2c 22 63 68 61 72 61 63 74 65 72 22 0d |te%,"character".| 000096e0 30 c0 0a 20 e6 20 31 32 38 0d 30 ca 11 20 e3 20 |0.. . 128.0.. . | 000096f0 79 70 73 25 3d 30 20 b8 20 37 0d 30 d4 11 20 e3 |yps%=0 . 7.0.. .| 00009700 20 78 70 73 25 3d 30 20 b8 20 37 0d 30 de 2a 20 | xps%=0 . 7.0.* | 00009710 e6 20 73 74 61 74 65 25 21 28 33 32 2a 79 70 73 |. state%!(32*yps| 00009720 25 2b 34 2a 78 70 73 25 29 2f 28 31 3c 3c 70 6e |%+4*xps%)/(1<<pn| 00009730 74 25 29 2a 37 0d 30 e8 2a 20 c8 93 20 c8 90 20 |t%)*7.0.* .. .. | 00009740 33 38 2b 78 70 73 25 2a 31 36 2c 34 34 2b 28 37 |38+xps%*16,44+(7| 00009750 2d 79 70 73 25 29 2a 31 36 2c 31 35 2c 31 35 0d |-yps%)*16,15,15.| 00009760 30 f2 10 20 ed 20 78 70 73 25 2c 79 70 73 25 0d |0.. . xps%,yps%.| 00009770 30 fc 08 20 e6 20 34 0d 31 06 6f 20 ef 20 32 34 |0.. . 4.1.o . 24| 00009780 2c 32 3b 34 34 3b 31 37 3b 31 37 31 3b 3a da 3a |,2;44;17;171;:.:| 00009790 c8 93 20 c8 90 20 32 2c 37 36 2b 73 74 61 74 65 |.. .. 2,76+state| 000097a0 25 21 28 34 2a 36 35 29 2f 28 31 3c 3c 70 6e 74 |%!(4*65)/(1<<pnt| 000097b0 25 29 2a 33 31 2c 31 35 2c 28 73 74 61 74 65 25 |%)*31,15,(state%| 000097c0 21 28 34 2a 36 34 29 2a 36 33 2d 73 74 61 74 65 |!(4*64)*63-state| 000097d0 25 21 28 34 2a 36 35 29 2a 33 31 29 2f 28 31 3c |%!(4*65)*31)/(1<| 000097e0 3c 70 6e 74 25 29 0d 31 10 42 20 ef 20 32 34 2c |<pnt%).1.B . 24,| 000097f0 33 38 3b 34 3b 31 36 35 3b 31 39 3b 3a da 3a c8 |38;4;165;19;:.:.| 00009800 93 20 c8 90 20 33 38 2c 34 2c 73 74 61 74 65 25 |. .. 38,4,state%| 00009810 21 28 34 2a 36 36 29 2f 28 31 3c 3c 70 6e 74 25 |!(4*66)/(1<<pnt%| 00009820 29 2a 31 32 37 2c 31 35 0d 31 1a 2f 20 c8 99 20 |)*127,15.1./ .. | 00009830 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c 32 35 |"OS_SpriteOp",25| 00009840 36 2b 36 30 2c 73 70 72 69 74 65 25 2c 22 72 65 |6+60,sprite%,"re| 00009850 73 70 6f 6e 73 65 22 0d 31 24 23 20 e6 20 31 32 |sponse".1$# . 12| 00009860 38 3a ef 20 32 34 2c 37 30 3b 34 3b 35 39 33 3b |8:. 24,70;4;593;| 00009870 31 33 31 3b 3a da 3a e6 20 34 0d 31 2e 12 20 e3 |131;:.:. 4.1.. .| 00009880 20 72 65 70 25 3d 30 20 b8 20 33 31 0d 31 38 3c | rep%=0 . 31.18<| 00009890 20 c8 93 20 c8 90 20 37 36 2b 72 65 70 25 2a 31 | .. .. 76+rep%*1| 000098a0 36 2c 34 2c 31 35 2c 73 74 61 74 65 25 21 28 34 |6,4,15,state%!(4| 000098b0 2a 72 65 70 25 2b 35 32 34 29 2f 28 31 3c 3c 70 |*rep%+524)/(1<<p| 000098c0 6e 74 25 29 2a 31 32 37 0d 31 42 0b 20 ed 20 72 |nt%)*127.1B. . r| 000098d0 65 70 25 0d 31 4c 22 20 c8 99 20 22 4f 53 5f 53 |ep%.1L" .. "OS_S| 000098e0 70 72 69 74 65 4f 70 22 2c 32 35 36 2b 36 30 2c |priteOp",256+60,| 000098f0 30 2c 30 2c 31 0d 31 56 2b 20 21 62 6c 6f 63 6b |0,0,1.1V+ !block| 00009900 25 3d 6e 65 74 77 69 6e 25 3a 62 6c 6f 63 6b 25 |%=netwin%:block%| 00009910 21 38 3d 30 3a 62 6c 6f 63 6b 25 21 31 32 3d 30 |!8=0:block%!12=0| 00009920 0d 31 60 34 20 62 6c 6f 63 6b 25 21 34 3d 63 68 |.1`4 block%!4=ch| 00009930 72 69 63 6e 25 3a c8 99 20 22 57 69 6d 70 5f 53 |ricn%:.. "Wimp_S| 00009940 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c 62 6c |etIconState",,bl| 00009950 6f 63 6b 25 0d 31 6a 34 20 62 6c 6f 63 6b 25 21 |ock%.1j4 block%!| 00009960 34 3d 72 65 70 69 63 6e 25 3a c8 99 20 22 57 69 |4=repicn%:.. "Wi| 00009970 6d 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 |mp_SetIconState"| 00009980 2c 2c 62 6c 6f 63 6b 25 0d 31 74 2f 20 62 6c 6f |,,block%.1t/ blo| 00009990 63 6b 25 21 34 3d 31 30 3a c8 99 20 22 57 69 6d |ck%!4=10:.. "Wim| 000099a0 70 5f 53 65 74 49 63 6f 6e 53 74 61 74 65 22 2c |p_SetIconState",| 000099b0 2c 62 6c 6f 63 6b 25 0d 31 7e 06 20 e1 0d 31 88 |,block%.1~. ..1.| 000099c0 06 20 3a 0d 31 92 0f 20 dd 20 f2 73 68 6f 77 66 |. :.1.. . .showf| 000099d0 6c 74 0d 31 9c 2f 20 c8 99 20 22 4f 53 5f 53 70 |lt.1./ .. "OS_Sp| 000099e0 72 69 74 65 4f 70 22 2c 32 35 36 2b 36 30 2c 73 |riteOp",256+60,s| 000099f0 70 72 69 74 65 25 2c 22 72 65 73 70 6f 6e 73 65 |prite%,"response| 00009a00 22 0d 31 a6 21 20 e6 20 31 32 38 3a ef 20 32 34 |".1.! . 128:. 24| 00009a10 2c 32 3b 34 3b 34 39 3b 31 33 31 3b 3a da 3a e6 |,2;4;49;131;:.:.| 00009a20 20 34 0d 31 b0 11 20 e3 20 72 65 70 25 3d 30 20 | 4.1.. . rep%=0 | 00009a30 b8 20 32 0d 31 ba 3b 20 c8 93 20 c8 90 20 32 2b |. 2.1.; .. .. 2+| 00009a40 72 65 70 25 2a 31 36 2c 34 2c 31 35 2c 73 74 61 |rep%*16,4,15,sta| 00009a50 74 65 25 21 28 34 2a 72 65 70 25 2b 35 32 34 29 |te%!(4*rep%+524)| 00009a60 2f 28 31 3c 3c 70 6e 74 25 29 2a 31 32 37 0d 31 |/(1<<pnt%)*127.1| 00009a70 c4 0b 20 ed 20 72 65 70 25 0d 31 ce 22 20 c8 99 |.. . rep%.1." ..| 00009a80 20 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c 32 | "OS_SpriteOp",2| 00009a90 35 36 2b 36 30 2c 30 2c 30 2c 31 0d 31 d8 12 20 |56+60,0,0,1.1.. | 00009aa0 e3 20 63 68 72 25 3d 30 20 b8 20 33 31 0d 31 e2 |. chr%=0 . 31.1.| 00009ab0 2b 20 3f 28 69 63 6f 6e 74 78 74 25 28 32 30 29 |+ ?(icontxt%(20)| 00009ac0 2b 63 68 72 25 29 3d 33 33 2b 67 72 6f 75 70 25 |+chr%)=33+group%| 00009ad0 2a 33 32 2b 63 68 72 25 0d 31 ec 0b 20 ed 20 63 |*32+chr%.1.. . c| 00009ae0 68 72 25 0d 31 f6 06 20 e1 0d 32 00 06 20 3a 0d |hr%.1.. ..2.. :.| 00009af0 32 0a 0e 20 dd 20 f2 72 75 62 62 65 72 0d 32 14 |2.. . .rubber.2.| 00009b00 49 20 21 62 6c 6f 63 6b 25 3d 73 70 72 77 69 6e |I !block%=sprwin| 00009b10 25 3a 62 6c 6f 63 6b 25 21 34 3d 30 3a 62 6c 6f |%:block%!4=0:blo| 00009b20 63 6b 25 21 38 3d 2d 68 67 74 25 3a 62 6c 6f 63 |ck%!8=-hgt%:bloc| 00009b30 6b 25 21 31 32 3d 77 64 74 25 3a 62 6c 6f 63 6b |k%!12=wdt%:block| 00009b40 25 21 31 36 3d 30 0d 32 1e 2b 20 c8 99 20 22 57 |%!16=0.2.+ .. "W| 00009b50 69 6d 70 5f 55 70 64 61 74 65 57 69 6e 64 6f 77 |imp_UpdateWindow| 00009b60 22 2c 2c 62 6c 6f 63 6b 25 20 b8 20 66 6c 61 67 |",,block% . flag| 00009b70 25 0d 32 28 3a 20 78 73 63 25 3d 62 6c 6f 63 6b |%.2(: xsc%=block| 00009b80 25 21 32 30 2d 62 6c 6f 63 6b 25 21 34 3a 79 73 |%!20-block%!4:ys| 00009b90 63 25 3d 62 6c 6f 63 6b 25 21 32 34 2d 62 6c 6f |c%=block%!24-blo| 00009ba0 63 6b 25 21 31 36 2b 68 67 74 25 0d 32 32 0d 20 |ck%!16+hgt%.22. | 00009bb0 c8 95 20 66 6c 61 67 25 0d 32 3c 1e 20 c8 99 20 |.. flag%.2<. .. | 00009bc0 22 57 69 6d 70 5f 53 65 74 43 6f 6c 6f 75 72 22 |"Wimp_SetColour"| 00009bd0 2c 34 38 2b 31 31 0d 32 46 46 20 ec 20 28 78 73 |,48+11.2FF . (xs| 00009be0 74 25 2a 73 63 61 6c 65 25 21 31 36 2f 73 63 61 |t%*scale%!16/sca| 00009bf0 6c 65 25 21 32 30 29 2d 78 73 63 25 2c 28 79 73 |le%!20)-xsc%,(ys| 00009c00 74 25 2a 73 63 61 6c 65 25 21 31 36 2f 73 63 61 |t%*scale%!16/sca| 00009c10 6c 65 25 21 32 30 29 2d 79 73 63 25 0d 32 50 46 |le%!20)-ysc%.2PF| 00009c20 20 df 20 28 78 65 64 25 2a 73 63 61 6c 65 25 21 | . (xed%*scale%!| 00009c30 31 36 2f 73 63 61 6c 65 25 21 32 30 29 2d 78 73 |16/scale%!20)-xs| 00009c40 63 25 2c 28 79 65 64 25 2a 73 63 61 6c 65 25 21 |c%,(yed%*scale%!| 00009c50 31 36 2f 73 63 61 6c 65 25 21 32 30 29 2d 79 73 |16/scale%!20)-ys| 00009c60 63 25 0d 32 5a 2b 20 c8 99 20 22 57 69 6d 70 5f |c%.2Z+ .. "Wimp_| 00009c70 47 65 74 52 65 63 74 61 6e 67 6c 65 22 2c 2c 62 |GetRectangle",,b| 00009c80 6c 6f 63 6b 25 20 b8 20 66 6c 61 67 25 0d 32 64 |lock% . flag%.2d| 00009c90 06 20 ce 0d 32 6e 06 20 e1 0d ff |. ..2n. ...| 00009c9b