Home » Archimedes archive » Acorn User » AU 1996-05.adf » Regulars » StarInfo/Berry/anymode/!Slicker/!RunImage
StarInfo/Berry/anymode/!Slicker/!RunImage
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Acorn User » AU 1996-05.adf » Regulars |
Filename: | StarInfo/Berry/anymode/!Slicker/!RunImage |
Read OK: | ✔ |
File size: | 468A bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM >$.!Slicker.!RunImage 20Version$="1.01AU Mar96":REM (c) G.BERRY 21REM mods to work in any mode by DCA 30 40PROCpreinit 50PROCsprites 60PROCwindows 70PROCmenus 80PROCiconbar 90PROCpostinit 100PROCautoload 110 120ON ERROR PROCerror(3) 130 140WHILE NOT Quit:PROCpoll:ENDWHILE 150SYS"Wimp_CloseDown":END 160 170DEFPROCpreinit 180App$="!Slicker":SYS"Wimp_Initialise",200,&4B534154,App$ 190ON ERROR PROCerror(1) 200DIM B% 500,E% 255 210DIM Iind% 70,Eind% 80,Sind% 270 220DIM W44ind% 60,W54ind% 60,W55ind% 60,W65ind% 60 230DIM Iname% 11,Ename% 11,Sname% 11 240DIM W44name% 11,W54name% 11,W55name% 11,W65name% 11 250DIM Imenu% 99,Smenu% 51 260DIM scale% 16, coltab% 16 270DIMGW%(4),S%(7),C%(29),C1%(29),Demo% 511:C%()=7:!Demo%=0 280Quit=0:IconB%=-2:M0%=6192:M1%=6193:Mask%=M1%:Wopen%=0:Shape%=0 290Opmode%=1:Learn%=0:Move%=0:ExtD%=0:Ptr%=0:Bytemax%=255:A$="":L$="" 300Son%=1:OSCLI"ChannelVoice 1 WaveSynth-Beep" 310switched%=FALSE 320ENDPROC 330 340DEFPROCsprites 350F%=OPENIN"<Obey$Dir>.Sprites" 360IFF%=0 ERROR 1,"file !Slicker.Sprites not found" 370size%=EXT#F%+4:CLOSE#F% 380DIM Sarea% size%:!Sarea%=size%:Sarea%!8=16 390SYS"OS_SpriteOp",&10A,Sarea%,"<Obey$Dir>.Sprites" 400FORn%=1TO7:SYS"OS_SpriteOp",24+256,Sarea%,STR$n%TO,,S%(n%):NEXT 410SYS &2E,&100+24,Sarea%,"screen" TO ,,screen% 420DIM wicon% 32 430ENDPROC 440 450DEFPROCwindows 460$Iname%="Info":$Ename%="Edit":$Sname%="Save" 470$W44name%="w44":$W54name%="w54":$W55name%="w55":$W65name%="w65" 480SYS"Wimp_OpenTemplate",,"<Obey$Dir>.Templates" 490SYS"Wimp_LoadTemplate",,B%,Iind%,Iind%+70,-1,Iname%,0 500B%!368=Sarea% 510SYS"Wimp_CreateWindow",,B% TO InfoW% 520SYS"Wimp_LoadTemplate",,B%,W44ind%,W44ind%+60,-1,W44name%,0 530B%!64=Sarea% 540SYS"Wimp_CreateWindow",,B% TO GW%(1) 550SYS"Wimp_LoadTemplate",,B%,W54ind%,W54ind%+60,-1,W54name%,0 560B%!64=Sarea% 570SYS"Wimp_CreateWindow",,B% TO GW%(2) 580SYS"Wimp_LoadTemplate",,B%,W55ind%,W55ind%+60,-1,W55name%,0 590B%!64=Sarea% 600SYS"Wimp_CreateWindow",,B% TO GW%(3) 610SYS"Wimp_LoadTemplate",,B%,W65ind%,W65ind%+60,-1,W65name%,0 620B%!64=Sarea% 630SYS"Wimp_CreateWindow",,B% TO GW%(4) 640SYS"Wimp_LoadTemplate",,B%,Eind%,Eind%+80,-1,Ename%,0 650B%!64=Sarea%:B%!4=B%!12-250 660SYS"Wimp_CreateWindow",,B% TO EditW% 670SYS"Wimp_LoadTemplate",,B%,Sind%,Sind%+270,-1,Sname%,0 680SYS"Wimp_CreateWindow",,B% TO SaveW% 690SYS"Wimp_CloseTemplate" 700ENDPROC 710 720DEFPROCmenus 730RESTORE1100:PROCSetUpMenu(Imenu%):PROCSetUpMenu(Smenu%) 740ENDPROC 750 760DEFPROCiconbar 770!B%=-1:B%!4=0:B%!8=0:B%!12=68:B%!16=68:B%!20=&3002:$(B%+24)="!Slicker" 780SYS"Wimp_CreateIcon",,B% TO Ib% 790ENDPROC 800 810DEFPROCpostinit 820PROCUi(InfoW%,7,LEFT$(Version$,13)):PROCHi(EditW%,14):PROCSi(EditW%,15) 830FORn%=1TO4:FORi%=11TO12:PROCSi(GW%(n%),i%):NEXT:NEXT 840PROCDm(Smenu%,0):PROCmode 850ENDPROC 860 870DEFPROCmode 880ModeOk%=TRUE 890ENDPROC 900 910DEFPROCautoload 920SYS"OS_GetEnv" TO path$ 930IF RIGHT$(path$,1)<>" " PROCload(MID$(path$,INSTR(path$,""" ")+2)) 940ENDPROC 950 960DEFPROCSetUpMenu(menu%) 970READtitle$,num%:$menu%=title$:width%=(LENtitle$-2)*16 980menu%!12=&70207:menu%!20=44:menu%!24=0:ptr%=menu%+28 990FORn%=1 TO num% 1000 READmflags%,subptr%,item$ 1010 !ptr%=mflags%:ptr%!4=subptr%:ptr%!8=&7000021:$(ptr%+12)=item$ 1020 l%=(LENitem$+1)*16:IFl%>width% width%=l% 1030 ptr%+=24 1040NEXT:menu%!16=width% 1050ENDPROC 1060 1070REM---Menu data--- 1080 1090REM icon bar menu 1100DATASlicker,3,0,InfoW%,Info,0,-1,Open Edit,&80,-1,Quit 1110 1120REM Save menu 1130DATASlicker,1,&80,SaveW%,Save 1140 1150REM---Wimp procs--- 1160 1170DEFPROCpoll 1180SYS&400C7,Mask%,B% TO r% 1190CASEr%OF 1200 WHEN0:PROCdemo 1210 WHEN1:PROCredraw 1220 WHEN2:IFModeOk%SYS"Wimp_OpenWindow",,B% 1230 IF!B%=GW%(Wopen%)Ox%=B%!4-B%!20:Oy%=B%!16-B%!24 1240 WHEN3:SYS"Wimp_CloseWindow",,B%:IF!B%=GW%(Wopen%)PROCCloseW(EditW%) 1250 WHEN6:PROCclick(B%!8,B%!12,B%!16) 1260 WHEN7:PROCDragFinished 1270 WHEN8:PROCkey(!B%,B%!24) 1280 WHEN9:PROCmenuselect(!B%) 1290 WHEN17,18:PROCreceive(B%!16) 1300ENDCASE 1310ENDPROC 1320 1330DEFPROCredraw 1340PROCto_sprite 1350GCOL 10 1360RECTANGLE FILL 0,0,Wx%*80,Wy%*80 1370FOR n%=0 TO 29 1380 x%=(n% MOD 6)*80 1390 y%=(Wy%-1-(n% DIV 6))*80 1400 IF C%(n%)<8:IF C%(n%) SYS &2E,34+512,Sarea%,S%(C%(n%)),x%,y%,3,scale%,0 1410NEXT 1420PROCto_screen 1430SYS&400C8,,B% TO m% 1440WHILE m% 1450 SYS "Wimp_PlotIcon",,wicon% 1460 SYS&400CA,,B% TO m% 1470ENDWHILE 1480ENDPROC 1490 1500DEF PROCupdate 1501PROCto_screen 1510!B%=GW%(Wopen%) 1530B%!4=ch_x0%+80 1540B%!8=ch_y0%-80*(Wy%+1) 1550B%!12=ch_x1%+80 1560B%!16=ch_y1%-80*(Wy%+1) 1570SYS "Wimp_UpdateWindow",,B% TO m% 1580WHILE m% 1590 SYS "Wimp_PlotIcon",,wicon% 1600 SYS&400CA,,B% TO m% 1610ENDWHILE 1620ENDPROC 1630: 1640DEFPROCto_sprite 1650IF NOT switched% THEN 1660 SYS&2E,&200+60,Sarea%,screen%,0 1680 SYS&5A,2 1681 SYS&5A,1 1690 switched%=TRUE 1700ENDIF 1710ENDPROC 1720: 1730DEFPROCto_screen 1740IF switched% THEN 1741 SYS &5A,-1 TO ,ch% 1742 ch_x0%=2*ch%!4-8 1743 ch_y0%=4*ch%!8-8 1744 ch_x1%=2*ch%!12+8 1745 ch_y1%=4*ch%!16+8 1750 SYS &5A,0 1760 SYS&2E,&200+60,Sarea%,0,0 1770 switched%=FALSE 1771ENDIF 1780ENDPROC 1790: 1800DEFPROCclick(b%,w%,i%) 1810CASEw%OF 1820 WHENIconB%:CASEb%OF 1830 WHEN1:Son%=Son%EOR1 1840 WHEN2:PROCshowmenu(Imenu%,!B%-64,228) 1850 WHEN4:IFModeOk%THEN 1860 IFWopen%PROCOpenW(GW%(Wopen%)) 1870 IFOpmode%=1PROCOpenW(EditW%) 1880 ELSE:PROCreport("Switch to a sixteen colour mode",16) 1890 ENDIF 1900 ENDCASE 1910 WHENEditW%:CASEOpmode%OF 1920 WHEN1:CASEb%OF 1930 WHEN4:CASEi%OF 1940 WHEN1,2,3,4,5,6,7:PROCshape(i%) 1950 WHEN8,9,10,11:PROCopenGW(i%-7) 1960 WHEN13:IFWopen%PROCclear 1970 WHEN15:PROCtransfer(2) 1980 ENDCASE 1990 ENDCASE 2000 WHEN2:CASEb%OF 2010 WHEN1:IFi%=13ANDLearn%=0THEN 2020 IFPtr%>0ANDPtr%DIV2<Bytemax%PROClearn(1) 2030 ENDIF 2040 WHEN4:CASEi%OF 2050 WHEN8,9,10,11: 2060 IFi%-7=Wopen%PROCOpenW(GW%(Wopen%)) 2070 WHEN13:IFLearn%=0PROClearn(4) 2080 WHEN14:PROCtransfer(1) 2090 WHEN15:IFLearn%PROClearn(2) 2100 ENDCASE 2110 ENDCASE 2120 ENDCASE 2130 WHENGW%(1),GW%(2),GW%(3),GW%(4): 2140 B%!20=B%!12 2150 SYS"Wimp_GetWindowState",,B%+20 2160 Ox%=B%!24-B%!40 2170 Oy%=B%!36-B%!44 2180 CASEOpmode%OF 2190 WHEN1:CASEb%OF 2200 WHEN1,4:IFi%=8PROCplot(b%,!B%,B%!4) 2210 WHEN2:IFi%<8PROCshowmenu(Smenu%,!B%-64,B%!4) 2220 ENDCASE 2230 WHEN2:CASEb%OF 2240 WHEN1,4:CASEi%OF 2250 WHEN8:PROCselect(b%,!B%,B%!4) 2260 WHEN11:PROCreset 2270 WHEN12:PROCreset:Mask%=M0%:Ptr%=0:Opmode%=3 2280 ENDCASE 2290 WHEN2:IFi%<8PROCshowmenu(Smenu%,!B%-64,B%!4) 2300 ENDCASE 2310 WHEN3:IFi%=11PROCreset:Mask%=M1% 2320 ENDCASE 2330 WHENSaveW%:CASEb%OF 2340 WHEN1,4:IFi%=2PROCQuickSave 2350 WHEN16,64:PROCdrag 2360 ENDCASE 2370ENDCASE 2380ENDPROC 2390 2400DEFPROCkey(w%,k%) 2410CASEk%OF 2420 WHEN13:CASEw%OF 2430 WHENEditW%:PROCUi(GW%(Wopen%),0,FNGetString(EditW%,12)) 2440 IFA$=""PROCa(-1) 2450 WHENSaveW%:PROCQuickSave 2460 OTHERWISE:SYS"Wimp_ProcessKey",k% 2470 ENDCASE 2480 OTHERWISE:SYS"Wimp_ProcessKey",k% 2490ENDCASE 2500ENDPROC 2510 2520DEFPROCmenuselect(menu%) 2530CASEMenuopen%OF 2540 WHENImenu%:CASEmenu%OF 2550 WHEN1:IFModeOk%THEN 2560 PROCOpenW(EditW%):IFWopen%PROCOpenW(GW%(Wopen%)) 2570 ENDIF 2580 WHEN2:IFFNok(1) Quit=TRUE 2590 ENDCASE 2600 WHENSmenu%:IFmenu%=0PROCQuickSave 2610ENDCASE 2620ENDPROC 2630 2640DEFPROCshowmenu(menu%,x%,y%) 2650SYS"Wimp_CreateMenu",,menu%,x%,y% 2660Menuopen%=menu% 2670ENDPROC 2680 2690DEFPROCreceive(m%) 2700CASEm%OF 2710 WHEN0:Quit=TRUE 2720 WHEN2:PROCDataSave 2730 WHEN3:IFB%!40=&004IFFNok(2) PROCload(FNstring(B%+44)) 2740 WHEN5:IFB%!40=&004PROCloadack:IFFNok(2) PROCload(FNstring(B%+44)) 2750 WHEN&400C1:PROCmode 2760ENDCASE 2770ENDPROC 2780 2790DEFPROCloadack 2800B%!12=B%!8:B%!16=4:!B%=64 2810SYS"Wimp_SendMessage",17,B%,B%!4 2820ENDPROC 2830 2840DEFPROCreport(err$,bit%) 2850name$=App$:IF bit% AND 16 name$="Message from "+name$ 2860!E%=255:$(E%+4)=err$+CHR$(0) 2870SYS"Wimp_ReportError",E%,bit%,name$ TO,Select% 2880ENDPROC 2890 2900DEFPROCerror(bit%) 2901PROCto_screen 2910e$=";internal error code "+STR$ERL:IFbit%=3e$+=";press [CANCEL] to quit." 2920PROCreport(REPORT$+e$,bit%):IFbit%=3:IFSelect%=1ENDPROC 2930SYS"Wimp_CloseDown":END 2940ENDPROC 2950 2960DEFPROCOpenW(!B%) 2970SYS"Wimp_GetWindowState",,B% 2980B%!28=-1:SYS"Wimp_OpenWindow",,B% 2990ENDPROC 3000 3010DEFPROCCloseW(!B%) 3020SYS"Wimp_CloseWindow",,B% 3030ENDPROC 3040 3050DEFPROCUi(!B%,B%!4,t$) 3060SYS&400CE,,B%:$(B%!28)=t$:B%!8=0:B%!12=0:SYS&400CD,,B% 3070ENDPROC 3080 3090DEFPROCHi(!B%,B%!4) 3100B%!8=1<<21:B%!12=1<<21:SYS&400CD,,B% 3110ENDPROC 3120 3130DEFPROCLi(!B%,B%!4) 3140B%!8=0:B%!12=1<<21:SYS&400CD,,B% 3150ENDPROC 3160 3170DEFPROCAi 3180!B%=EditW%:B%!4=13 3190CASELearn%OF 3200 WHEN0 :B%!8=%11100111000000001001000000000000 3210 WHEN-1:B%!8=%01111110000000000011000000000000 3220ENDCASE 3230B%!12=%11111111000000001111000000000000 3240SYS"Wimp_SetIconState",,B% 3250ENDPROC 3260 3270DEFPROCSi(!B%,B%!4) 3280B%!8=1<<22:B%!12=1<<22:SYS&400CD,,B% 3290ENDPROC 3300 3310DEFPROCUsi(!B%,B%!4) 3320B%!8=0:B%!12=1<<22:SYS&400CD,,B% 3330ENDPROC 3340 3350DEFFNGetString(!B%,B%!4) 3360SYS"Wimp_GetIconState",,B% 3370IF ((B%!24) AND &100)=0 THEN=$(B%+28) ELSE=$(B%!28) 3380 3390DEFPROCDm(menu%,item%) 3400menu%!(36+item%*24)=menu%!(36+item%*24)OR(1<<22) 3410ENDPROC 3420 3430DEFPROCEm(menu%,item%) 3440PROCDm(menu%,item%) 3450menu%!(36+item%*24)=menu%!(36+item%*24)EOR(1<<22) 3460ENDPROC 3470 3480DEFPROCSetCaret(w%,i%) 3490SYS"Wimp_SetCaretPosition",w%,i%,,,-1,LENFNGetString(w%,i%) 3500ENDPROC 3510 3520DEFPROCtitle(!B%,t$) 3530SYS"Wimp_GetWindowInfo",,B% 3540ptr%=!(B%+76):$ptr%=t$ 3550IF!B%=GW%(Wopen%)SYS"Wimp_ForceRedraw",-1,B%!4,B%!16,B%!12,B%!16+36 3560ENDPROC 3570 3580DEFPROCdrag 3590!B%=SaveW%:SYS"Wimp_GetWindowState",,B% 3600ox%=B%!4-B%!20:oy%=B%!16-B%!24:B%!4=0 3610SYS"Wimp_GetIconState",,B% 3620B%!4=5:B%!8=ox%+B%!8:B%!12=oy%+B%!12 3630B%!16=ox%+B%!16:B%!20=oy%+B%!20 3640B%!24=0:B%!28=0:B%!32=&7FFFFFF:B%!36=&7FFFFFF 3650SYS"Wimp_DragBox",,B% 3660ENDPROC 3670 3680DEFPROCDragFinished 3690path$=FNGetString(SaveW%,1):SYS"Wimp_GetPointerInfo",,B% 3700B%!20=B%!12:B%!24=B%!16:B%!28=!B%:B%!32=B%!4 3710B%!36=71+ExtD%:!B%=64:B%!12=0:B%!16=1:B%!40=&004 3720$(B%+44)=FNGetLeaf(path$,0) 3730SYS"Wimp_SendMessage",17,B%,B%!20,B%!24 3740ENDPROC 3750 3760DEFFNGetLeaf(a$,c%) 3770WHILE INSTR(a$,"."):a$=MID$(a$,INSTR(a$,".")+1):ENDWHILE 3780=a$+CHR$c% 3790 3800DEFPROCDataSave 3810PROCUi(SaveW%,1,FNstring(B%+44)) 3820PROCsave:B%!12=B%!8:B%!16=3:!B%=256 3830SYS"Wimp_SendMessage",17,B%,B%!20,B%!24 3840SYS"Wimp_CreateMenu",-1 3850ENDPROC 3860 3870DEFFNstring(ptr%) 3880LOCALa$ 3890WHILE ?ptr%<>0:a$+=CHR$(?ptr%):ptr%+=1:ENDWHILE 3900=a$ 3910 3920DEFPROCQuickSave 3930IF INSTR(FNGetString(SaveW%,1),".") THEN 3940 PROCsave 3950ELSE:PROCreport("To save, drag the icon to a directory viewer",16) 3960ENDIF:SYS"Wimp_CreateMenu",-1 3970ENDPROC 3980 3990REM---Editor procs--- 4000 4010DEFPROCload(path$) 4020LOCALt$,w%,d% 4030PROCUi(SaveW%,1,"Slickfile") 4040Mask%=M1%:IFLearn%PROClearn(0) 4050FORn%=1TO4:PROCUi(GW%(n%),0,""):NEXT 4060F%=OPENIN(path$) 4070FORn%=0TO29:C%(n%)=BGET#F%:NEXT:w%=BGET#F% 4080INPUT#F%,t$:ExtD%=BGET#F%:ExtD%=ExtD%*2 4090IFExtD%THEN 4100 FORb%=0TOExtD%-1:Demo%?b%=BGET#F%:NEXT 4110ENDIF 4120CLOSE#F%:PROCUi(GW%(w%),0,t$) 4130PROCopenGW(w%):PROCtransfer(2):L$=FNGetLeaf(path$,32):PROCa(0) 4140ENDPROC 4150 4160DEFPROCtransfer(m%) 4170CASEm%OF 4180 WHEN1:FORn%=0TO29:IFC1%(n%)=0C1%(n%)=7 4190 NEXT:C%()=C1%() 4200 FORn%=11TO12:PROCSi(GW%(Wopen%),n%):NEXT 4210 PROCDm(Smenu%,0):PROCUi(EditW%,13,"Clear") 4220 PROCHi(EditW%,14):PROCLi(EditW%,15) 4230 WHEN2:FORn%=0TO29:IFC%(n%)=7C%(n%)=0 4240 NEXT:C1%()=C%() 4250 IFShape%=7PROCexW(250):SYS"Wimp_SetCaretPosition",-1 4260 IFShape%PROCLi(EditW%,Shape%):Shape%=0 4270 PROCUsi(GW%(Wopen%),11) 4280 IFExtD%PROCUsi(GW%(Wopen%),12)ELSEPROCSi(GW%(Wopen%),12) 4290 PROCEm(Smenu%,0):PROCUi(EditW%,13,"Learn") 4300 PROCHi(EditW%,15):PROCLi(EditW%,14) 4310ENDCASE 4320PROCmoves(0):PROCfr:Opmode%=m%:Ptr%=0 4330ENDPROC 4340 4350DEFPROCopenGW(i%) 4360PROCUi(EditW%,12,FNGetString(GW%(i%),0)) 4370SYS"Wimp_GetCaretPosition",,B%:IF!B%=EditW%PROCSetCaret(EditW%,12) 4380Space%=22-(i%*5):IFSpace%=17Space%=16 4390PROCmeter:IFModeOk%PROCOpenW(GW%(i%)) 4400IFi%=Wopen%ENDPROC 4410PROCHi(EditW%,i%+7) 4420IFWopen%THEN 4430 PROCCloseW(GW%(Wopen%)):PROCLi(EditW%,Wopen%+7) 4440 FORn%=11TO12:PROCSi(GW%(Wopen%),n%):NEXT 4450ENDIF 4460Wopen%=i% 4470CASEWopen%OF 4480 WHEN1:Wx%=4:Wy%=4:Yb%=-400:Xr%=400 4490 WHEN2:Wx%=5:Wy%=4:Yb%=-400:Xr%=480 4500 WHEN3:Wx%=5:Wy%=5:Yb%=-480:Xr%=480 4510 WHEN4:Wx%=6:Wy%=5:Yb%=-480:Xr%=560 4520ENDCASE 4530wicon%!0=80 4540wicon%!4=-80*(1+Wy%) 4550wicon%!8=80*(1+Wx%) 4560wicon%!12=-80 4570wicon%!16=%100000010 4580wicon%!20=screen% 4590wicon%!24=Sarea% 4600wicon%!28=0 4610ENDPROC 4620 4630DEFPROCshape(s%) 4640CASEs%OF 4650 WHEN7:IFWopen%PROCexW(360) 4660 OTHERWISE:IFShape%=7PROCexW(250):SYS"Wimp_SetCaretPosition",-1 4670ENDCASE 4680IFShape%PROCLi(EditW%,Shape%) 4690PROCHi(EditW%,s%):Shape%=s% 4700ENDPROC 4710 4720DEFPROCexW(h%) 4730!B%=EditW%:SYS"Wimp_GetWindowState",,B% 4740B%!8=B%!16-h%:B%!28=-1:SYS"Wimp_OpenWindow",,B% 4750ENDPROC 4760 4770DEFPROClearn(b%) 4780ExtD%=0:PROCUsi(EditW%,14) 4790CASEb%OF 4800 WHEN0:Learn%=0:!Demo%=0 4810 WHEN1,4:PROCSi(GW%(Wopen%),12):PROCDm(Smenu%,0) 4820 PROCSi(EditW%,14):PROCLi(EditW%,15):Learn%=-1 4830 IFb%=4!Demo%=0:PROCreset:IFA$=""PROCa(-1) 4840 WHEN2:PROCEm(Smenu%,0):PROCHi(EditW%,15):Learn%=0 4850 IF!Demo%>0PROCUsi(GW%(Wopen%),12):ExtD%=Move%*2 4860ENDCASE 4870PROCAi 4880ENDPROC 4890 4900DEFPROCplot(b%,x%,y%) 4910LOCALcell%,s%,l%,h%:l%=160:h%=160 4920x%=(x%-Ox%)DIV80:y%=(Oy%-y%)DIV80:cell%=x%-1+((y%-1)*6) 4930CASEb%OF 4940 WHEN1:IFC%(cell%)=7ENDPROC 4950 IFC%(cell%)>7cell%=C%(cell%)-10:x%=cell%MOD6+1:y%=cell%DIV6+1 4960 s%=C%(cell%):PROCc(7,cell%) 4970 WHEN4:IFNOTFNedge(x%,y%,cell%)SOUND1,-15,40,2:ENDPROC 4980 s%=Shape%:PROCc(s%,cell%) 4990ENDCASE:x%=x%*80:y%=(y%+1)*80 5000IFs%=2l%=80 5010IFs%=3h%=80 5020IFs%=4l%=80:h%=80 5030SYS&400D1,GW%(Wopen%),x%,-y%,x%+l%,-y%+h% 5040PROCmeter:ExtD%=0:IFA$=""PROCa(-1) 5050ENDPROC 5060 5070DEFFNedge(x%,y%,c%) 5080LOCALok% 5090CASEShape%OF 5100 WHEN1,5,6:IFx%>0IFx%<Wx%IFy%>1IFy%<=Wy%ok%=-1 5110 WHEN2:IFx%>0IFx%<=Wx%IFy%>1IFy%<=Wy%ok%=-1 5120 WHEN3:IFx%>0IFx%<Wx%IFy%>=1IFy%<=Wy%ok%=-1 5130 WHEN4:IFx%>0IFx%<=Wx%IFy%>=1IFy%<=Wy%ok%=-1 5140ENDCASE 5150IFok%THEN=FNfit(c%) ELSE=0 5160 5170DEFFNfit(c%) 5180LOCALok% 5190CASEShape%OF 5200 WHEN1:IFC%(c%)=7IFC%(c%-6)=7IFC%(c%-5)=7IFC%(c%+1)=7ok%=-1 5210 WHEN2:IFC%(c%)=7IFC%(c%-6)=7ok%=-1 5220 WHEN3:IFC%(c%)=7IFC%(c%+1)=7ok%=-1 5230 WHEN4:IFC%(c%)=7ok%=-1 5240 WHEN5:IFC%(c%)=7IFC%(c%-6)=7IFC%(c%-5)=7ok%=-1 5250 WHEN6:IFC%(c%)=7IFC%(c%-5)=7IFC%(c%+1)=7ok%=-1 5260ENDCASE 5270=ok% 5280 5290DEFPROCmeter 5300LOCALn%,c%,x1%,x2%,x3% 5310FORn%=0TO29:IFC%(n%)=7c%+=1 5320NEXT:IFc%=Space%PROCUsi(EditW%,15)ELSEPROCSi(EditW%,15) 5330FORn%=5TO29STEP6:IFC%(n%)<>7x1%=-1:x2%=-1:x3%=-1 5340NEXT:FORn%=4TO22STEP6:IFC%(n%)<>7x1%=-1 5350NEXT:FORn%=24TO28:IFC%(n%)<>7x1%=-1:x2%=-1 5360NEXT:IFx1%PROCSi(EditW%,8)ELSEPROCUsi(EditW%,8) 5370IFx2%PROCSi(EditW%,9)ELSEPROCUsi(EditW%,9) 5380IFx3%PROCSi(EditW%,10)ELSEPROCUsi(EditW%,10) 5390ENDPROC 5400 5410DEFPROCc(s%,c%) 5420CASEs%OF 5430 WHEN0:s%=C%(c%):C%(c%)=0:n%=0 5440 WHEN7:s%=C%(c%):C%(c%)=7:n%=7 5450 OTHERWISE:C%(c%)=s%:n%=c%+10 5460ENDCASE 5470CASEs%OF 5480 WHEN1:C%(c%-6)=n%:C%(c%-5)=n%:C%(c%+1)=n% 5490 WHEN2:C%(c%-6)=n% 5500 WHEN3:C%(c%+1)=n% 5510 WHEN5:C%(c%-6)=n%:C%(c%-5)=n% 5520 WHEN6:C%(c%-5)=n%:C%(c%+1)=n% 5530ENDCASE 5540ENDPROC 5550 5560DEFPROCclear 5570C%()=7:PROCmeter:PROCfr 5580FORn%=1TO4:PROCUi(GW%(n%),0,""):NEXT 5590PROCUi(EditW%,12,""):PROCUi(SaveW%,1,"Slickfile"):L$="":PROCa(0) 5600ENDPROC 5610 5620DEFPROCfr 5630SYS&400D1,GW%(Wopen%),80,Yb%,Xr%,-80 5640ENDPROC 5650 5660DEFPROCa(data%) 5670LOCALn% 5680CASEdata%OF 5690 WHEN TRUE :A$="*" 5700 WHEN FALSE:A$="" 5710ENDCASE 5720CASEL$OF 5730 WHEN"":FORn%=1TO4:PROCtitle(GW%(n%),FNdefault(n%)):NEXT 5740 OTHERWISE:FORn%=1TO4:PROCtitle(GW%(n%),L$+A$):NEXT 5750ENDCASE 5760ENDPROC 5770 5780DEFFNdefault(n%) 5790CASEn%OF 5800 WHEN1:t$="4x4 " 5810 WHEN2:t$="5x4 " 5820 WHEN3:t$="5x5 " 5830 WHEN4:t$="6x5 " 5840ENDCASE 5850=t$+A$ 5860 5870DEFFNok(from%) 5880LOCALok%,m$:m$="You have unsaved data, " 5890CASELENA$OF 5900 WHEN0:ok%=TRUE 5910 WHEN1:CASEfrom%OF 5920 WHEN1:PROCreport(m$+"do you still want to Quit?",19) 5930 IFSelect%=1ok%=TRUE 5940 WHEN2:PROCreport(m$+"proceed with load?",19) 5950 IFSelect%=1ok%=TRUE 5960 ENDCASE 5970ENDCASE 5980=ok% 5990 6000REM---Game procs--- 6010 6020DEFPROCselect(b%,x%,y%) 6030LOCALs$,x1%,y1% 6040M%=0:x1%=(x%-Ox%)DIV80:y1%=(Oy%-y%)DIV80 6050cell%=x1%-1+((y1%-1)*6):IFC%(cell%)>7cell%=C%(cell%)-10 6060Piece%=C%(cell%):x%=cell%MOD6+1:y%=cell%DIV6+1:X%=x%*80:Y%=(y%+1)*80 6070CASEPiece%OF 6080 WHEN1:s$="EKLJ" 6090 WHEN2:IFy1%<y%s$="EFGD"ELSEs$="EFDG" 6100 WHEN3:IFx1%>x%s$="HAIJ"ELSEs$="AHIJ" 6110 WHEN4:IFb%=1s$="ABCD"ELSEs$="CDAB" 6120 WHEN5:s$="EMLN" 6130 WHEN6:s$="OKPJ" 6140ENDCASE 6150Cell%=cell%:PROCseq(s$,cell%,x%,y%) 6160Ptr%=0:IFLearn%:IFA$=""PROCa(-1) 6170ENDPROC 6180 6190DEFPROCseq(s$,c%,x%,y%) 6200LOCALs%,n%,m% 6210FORs%=1TO4:n%=0:IFNOTM%THEN 6220 CASEMID$(s$,s%,1)OF 6230 WHEN"A":IFx%>1n%=1:IFx%>2n%=2 6240 IFn%IFC%(c%-1)=0m%=1:IFn%=2IFC%(c%-2)=0m%=2 6250 IFm%PROCmove(2,-m%) 6260 WHEN"B":IFx%<Wx%n%=1:IFx%<Wx%-1n%=2 6270 IFn%IFC%(c%+1)=0m%=1:IFn%=2IFC%(c%+2)=0m%=2 6280 IFm%PROCmove(2,m%) 6290 WHEN"C":IFy%>1n%=1:IFy%>2n%=2 6300 IFn%IFC%(c%-6)=0m%=1:IFn%=2IFC%(c%-12)=0m%=2 6310 IFm%PROCmove(1,-m%) 6320 WHEN"D":IFy%<Wy%n%=1:IFy%<Wy%-1n%=2 6330 IFn%IFC%(c%+6)=0m%=1:IFn%=2IFC%(c%+12)=0m%=2 6340 IFm%PROCmove(1,m%) 6350 WHEN"E":IFx%>1IFC%(c%-1)=0IFC%(c%-7)=0PROCmove(2,-1) 6360 WHEN"F":IFx%<Wx%IFC%(c%+1)=0IFC%(c%-5)=0PROCmove(2,1) 6370 WHEN"G":IFy%>2n%=y%DIV2:IFn%IFC%(c%-12)=0m%=1:IFn%=2IFC%(c%-18)=0m%=2 6380 IFm%PROCmove(1,-m%) 6390 WHEN"H":IFx%<Wx%-1n%=1:IFx%<Wx%-2n%=2 6400 IFn%IFC%(c%+2)=0m%=1:IFn%=2IFC%(c%+3)=0m%=2 6410 IFm%PROCmove(2,m%) 6420 WHEN"I":IFy%>1IFC%(c%-6)=0IFC%(c%-5)=0PROCmove(1,-1) 6430 WHEN"J":IFy%<Wy%IFC%(c%+6)=0IFC%(c%+7)=0PROCmove(1,1) 6440 WHEN"K":IFx%<Wx%-1IFC%(c%+2)=0IFC%(c%-4)=0PROCmove(2,1) 6450 WHEN"L":IFy%>2IFC%(c%-12)=0IFC%(c%-11)=0PROCmove(1,-1) 6460 WHEN"M":IFx%<Wx%-1IFC%(c%+1)=0IFC%(c%-4)=0PROCmove(2,1) 6470 WHEN"N":IFy%<Wy%IFC%(c%+6)=0IFC%(c%+1)=0PROCmove(1,1) 6480 WHEN"O":IFx%>1IFC%(c%-1)=0IFC%(c%-6)=0PROCmove(2,-1) 6490 WHEN"P":IFy%>2IFC%(c%-6)=0IFC%(c%-11)=0PROCmove(1,-1) 6500 ENDCASE 6510ENDIF:NEXT 6520ENDPROC 6530 6540DEFPROCmove(a%,d%) 6550LOCALs%,i% 6560s%=SGN(d%)*10:IF Mask%=M0% s%=s%*2 6570 6580Ox%=-80 6590Oy%=(Wy%+1)*80 6600 6610PROCto_sprite 6620SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-Y%,3,scale%,0 6650CASEa%OF 6660 WHEN1:i%=Y%+(d%*80-4*SGN(d%)) 6670 FORz%=Y%TOi%STEPs% 6690 SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-z%,3,scale%,0 6710 WAIT 6720 PROCupdate 6730 PROCto_sprite 6740 SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-z%,3,scale%,0 6760 NEXT 6780 SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-z%,3,scale%,0 6800 PROCupdate 6810 WHEN2:i%=X%+(d%*80-4*SGN(d%)) 6820 FORz%=X%TOi%STEPs% 6840 SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+z%,Oy%-Y%,3,scale%,0 6860 WAIT 6870 PROCupdate 6871 PROCto_sprite 6890 SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+z%,Oy%-Y%,3,scale%,0 6910 NEXT 6930 SYS&2E,34+512,Sarea%,S%(Piece%),Ox%+z%,Oy%-Y%,3,scale%,0 6950 PROCupdate 6960ENDCASE 6970 6980IFSon%:SOUND1,-10,55,1 6990IFLearn% Demo%?(Move%*2)=Cell%:Demo%?(Move%*2+1)=(a%*16)+(d%+2) 7000PROCc(0,Cell%):IFa%=1PROCc(Piece%,Cell%+d%*6)ELSEPROCc(Piece%,Cell%+d%) 7010M%=TRUE:IFMove%<9999PROCmoves(Move%+1) 7020ENDPROC 7030 7040DEFPROCdemo 7050Cell%=Demo%?Ptr%:Piece%=C%(Cell%):X%=(Cell%MOD6+1)*80:Y%=(Cell%DIV6+2)*80 7060PROCmove((Demo%?(Ptr%+1)AND240)DIV16,(Demo%?(Ptr%+1)AND15)-2) 7070Ptr%+=2:IFPtr%=ExtD%Mask%=M1%:Opmode%=2 7080ENDPROC 7090 7100DEFPROCreset 7110C%()=C1%():PROCmoves(0):PROCfr:Opmode%=2:Ptr%=0:IFLearn% !Demo%=0 7120ENDPROC 7130 7140DEFPROCmoves(m%) 7150PROCUi(GW%(Wopen%),10,STR$m%):Move%=m%:IFLearn%=0ENDPROC 7160IFMove%=Bytemax%THEN 7170 PROCreport("Can't accept more moves-aborting Learn!",16):PROClearn(2) 7180ENDIF 7190ENDPROC 7200 7210DEFPROCsave 7220path$=FNGetString(SaveW%,1) 7230F%=OPENOUT(path$) 7240FORn%=0TO29:b%=C1%(n%):IFb%=0b%=7 7250BPUT#F%,b%:NEXT:BPUT#F%,Wopen% 7260PRINT#F%,FNGetString(GW%(Wopen%),0) 7270IFExtD%THEN 7280 BPUT#F%,ExtD%DIV2:FORb%=0TOExtD%-1:BPUT#F%,Demo%?b%:NEXT 7290ELSE:BPUT#F%,0 7300ENDIF 7310CLOSE#F% 7320OSCLI("SetType "+path$+" 004") 7330L$=FNGetLeaf(path$,32):PROCa(0) 7340ENDPROC 7350
� >$.!Slicker.!RunImage )Version$="1.01AU Mar96":� (c) G.BERRY %� mods to work in any mode by DCA (�preinit 2�sprites <�windows F �menus P�iconbar Z �postinit d �autoload n x� � �error(3) � �ȕ � Quit:�poll:� �ș"Wimp_CloseDown":� � � ��preinit �:App$="!Slicker":ș"Wimp_Initialise",200,&4B534154,App$ �� � �error(1) �� B% 500,E% 255 �!� Iind% 70,Eind% 80,Sind% 270 �1� W44ind% 60,W54ind% 60,W55ind% 60,W65ind% 60 �#� Iname% 11,Ename% 11,Sname% 11 �5� W44name% 11,W54name% 11,W55name% 11,W65name% 11 �� Imenu% 99,Smenu% 51 � scale% 16, coltab% 16 :�GW%(4),S%(7),C%(29),C1%(29),Demo% 511:C%()=7:!Demo%=0 BQuit=0:IconB%=-2:M0%=6192:M1%=6193:Mask%=M1%:Wopen%=0:Shape%=0 "FOpmode%=1:Learn%=0:Move%=0:ExtD%=0:Ptr%=0:Bytemax%=255:A$="":L$="" ,+Son%=1:�"ChannelVoice 1 WaveSynth-Beep" 6switched%=� @� J T ��sprites ^F%=�"<Obey$Dir>.Sprites" h/�F%=0 � 1,"file !Slicker.Sprites not found" rsize%=�#F%+4:�#F% |,� Sarea% size%:!Sarea%=size%:Sarea%!8=16 �4ș"OS_SpriteOp",&10A,Sarea%,"<Obey$Dir>.Sprites" �8�n%=1�7:ș"OS_SpriteOp",24+256,Sarea%,�n%�,,S%(n%):� �.ș &2E,&100+24,Sarea%,"screen" � ,,screen% �� wicon% 32 �� � � ��windows �0$Iname%="Info":$Ename%="Edit":$Sname%="Save" �C$W44name%="w44":$W54name%="w54":$W55name%="w55":$W65name%="w65" �1ș"Wimp_OpenTemplate",,"<Obey$Dir>.Templates" �8ș"Wimp_LoadTemplate",,B%,Iind%,Iind%+70,-1,Iname%,0 �B%!368=Sarea% �&ș"Wimp_CreateWindow",,B% � InfoW% >ș"Wimp_LoadTemplate",,B%,W44ind%,W44ind%+60,-1,W44name%,0 B%!64=Sarea% &ș"Wimp_CreateWindow",,B% � GW%(1) &>ș"Wimp_LoadTemplate",,B%,W54ind%,W54ind%+60,-1,W54name%,0 0B%!64=Sarea% :&ș"Wimp_CreateWindow",,B% � GW%(2) D>ș"Wimp_LoadTemplate",,B%,W55ind%,W55ind%+60,-1,W55name%,0 NB%!64=Sarea% X&ș"Wimp_CreateWindow",,B% � GW%(3) b>ș"Wimp_LoadTemplate",,B%,W65ind%,W65ind%+60,-1,W65name%,0 lB%!64=Sarea% v&ș"Wimp_CreateWindow",,B% � GW%(4) �8ș"Wimp_LoadTemplate",,B%,Eind%,Eind%+80,-1,Ename%,0 �B%!64=Sarea%:B%!4=B%!12-250 �&ș"Wimp_CreateWindow",,B% � EditW% �9ș"Wimp_LoadTemplate",,B%,Sind%,Sind%+270,-1,Sname%,0 �&ș"Wimp_CreateWindow",,B% � SaveW% �ș"Wimp_CloseTemplate" �� � ���menus �/��DLD:�SetUpMenu(Imenu%):�SetUpMenu(Smenu%) �� � � ��iconbar J!B%=-1:B%!4=0:B%!8=0:B%!12=68:B%!16=68:B%!20=&3002:$(B%+24)="!Slicker" !ș"Wimp_CreateIcon",,B% � Ib% � *��postinit 4=�Ui(InfoW%,7,�Version$,13)):�Hi(EditW%,14):�Si(EditW%,15) >)�n%=1�4:�i%=11�12:�Si(GW%(n%),i%):�:� H�Dm(Smenu%,0):�mode R� \ f ��mode p ModeOk%=� z� � ���autoload �ș"OS_GetEnv" � path$ �3� �path$,1)<>" " �load(�path$,�path$,""" ")+2)) �� � ���SetUpMenu(menu%) �4�title$,num%:$menu%=title$:width%=(�title$-2)*16 �8menu%!12=&70207:menu%!20=44:menu%!24=0:ptr%=menu%+28 ��n%=1 � num% � �mflags%,subptr%,item$ �B !ptr%=mflags%:ptr%!4=subptr%:ptr%!8=&7000021:$(ptr%+12)=item$ �* l%=(�item$+1)*16:�l%>width% width%=l% ptr%+=24 �:menu%!16=width% � $ .�---Menu data--- 8 B� icon bar menu L7�Slicker,3,0,InfoW%,Info,0,-1,Open Edit,&80,-1,Quit V `� Save menu j�Slicker,1,&80,SaveW%,Save t ~�---Wimp procs--- � � ��poll �ș&400C7,Mask%,B% � r% � Ȏr%� � �0:�demo � �1:�redraw �' �2:�ModeOk%ș"Wimp_OpenWindow",,B% �9 �!B%=GW%(Wopen%)Ox%=B%!4-B%!20:Oy%=B%!16-B%!24 �@ �3:ș"Wimp_CloseWindow",,B%:�!B%=GW%(Wopen%)�CloseW(EditW%) � �6:�click(B%!8,B%!12,B%!16) � �7:�DragFinished � �8:�key(!B%,B%!24) �9:�menuselect(!B%) �17,18:�receive(B%!16) � � ( 2��redraw <�to_sprite F� 10 Pȓ Ȑ 0,0,Wx%*80,Wy%*80 Z� n%=0 � 29 d x%=(n% � 6)*80 n y%=(Wy%-1-(n% � 6))*80 xI � C%(n%)<8:� C%(n%) ș &2E,34+512,Sarea%,S%(C%(n%)),x%,y%,3,scale%,0 �� ��to_screen �ș&400C8,,B% � m% � ȕ m% � ș "Wimp_PlotIcon",,wicon% � ș&400CA,,B% � m% �� �� � � � �update ��to_screen �!B%=GW%(Wopen%) �B%!4=ch_x0%+80 B%!8=ch_y0%-80*(Wy%+1) B%!12=ch_x1%+80 B%!16=ch_y1%-80*(Wy%+1) "#ș "Wimp_UpdateWindow",,B% � m% , ȕ m% 6 ș "Wimp_PlotIcon",,wicon% @ ș&400CA,,B% � m% J� T� ^: h��to_sprite r� � switched% � |# ș&2E,&200+60,Sarea%,screen%,0 � ș&5A,2 � ș&5A,1 � switched%=� �� �� �: ���to_screen �� switched% � � ș &5A,-1 � ,ch% � ch_x0%=2*ch%!4-8 � ch_y0%=4*ch%!8-8 � ch_x1%=2*ch%!12+8 � ch_y1%=4*ch%!16+8 � ș &5A,0 � ș&2E,&200+60,Sarea%,0,0 � switched%=� �� �� �: ��click(b%,w%,i%) Ȏw%� �IconB%:Ȏb%� & �1:Son%=Son%�1 00 �2:�showmenu(Imenu%,!B%-64,228) : �4:�ModeOk%� D2 �Wopen%�OpenW(GW%(Wopen%)) N0 �Opmode%=1�OpenW(EditW%) XF �:�report("Switch to a sixteen colour mode",16) b � l � v �EditW%:ȎOpmode%� � �1:Ȏb%� � �4:Ȏi%� �8 �1,2,3,4,5,6,7:�shape(i%) �7 �8,9,10,11:�openGW(i%-7) �0 �13:�Wopen%�clear �/ �15:�transfer(2) � � � � � �2:Ȏb%� �+ �1:�i%=13�Learn%=0� �? �Ptr%>0�Ptr%�2<Bytemax%�learn(1) � � � �4:Ȏi%� * �8,9,10,11: ? �i%-7=Wopen%�OpenW(GW%(Wopen%)) 5 �13:�Learn%=0�learn(4) / �14:�transfer(1) *3 �15:�Learn%�learn(2) 4 � > � H � R" �GW%(1),GW%(2),GW%(3),GW%(4): \ B%!20=B%!12 f$ ș"Wimp_GetWindowState",,B%+20 p Ox%=B%!24-B%!40 z Oy%=B%!36-B%!44 � ȎOpmode%� � �1:Ȏb%� �* �1,4:�i%=8�plot(b%,!B%,B%!4) �3 �2:�i%<8�showmenu(Smenu%,!B%-64,B%!4) � � � �2:Ȏb%� � �1,4:Ȏi%� �. �8:�select(b%,!B%,B%!4) �! �11:�reset �< �12:�reset:Mask%=M0%:Ptr%=0:Opmode%=3 � � �3 �2:�i%<8�showmenu(Smenu%,!B%-64,B%!4) � � �3:�i%=11�reset:Mask%=M1% � �SaveW%:Ȏb%� $% �1,4:�i%=2�QuickSave . �16,64:�drag 8 � B� L� V `��key(w%,k%) j Ȏk%� t �13:Ȏw%� ~= �EditW%:�Ui(GW%(Wopen%),0,�GetString(EditW%,12)) �$ �A$=""�a(-1) � �SaveW%:�QuickSave �% :ș"Wimp_ProcessKey",k% � � � :ș"Wimp_ProcessKey",k% �� �� � ���menuselect(menu%) �ȎMenuopen%� � �Imenu%:Ȏmenu%� � �1:�ModeOk%� A �OpenW(EditW%):�Wopen%�OpenW(GW%(Wopen%)) � " �2:�ok(1) Quit=� � ( �Smenu%:�menu%=0�QuickSave 2� <� F P��showmenu(menu%,x%,y%) Z$ș"Wimp_CreateMenu",,menu%,x%,y% dMenuopen%=menu% n� x ���receive(m%) � Ȏm%� � �0:Quit=� � �2:�DataSave �0 �3:�B%!40=&004�ok(2) �load(�string(B%+44)) �9 �5:�B%!40=&004�loadack:�ok(2) �load(�string(B%+44)) � �&400C1:�mode �� �� � � ��loadack �B%!12=B%!8:B%!16=4:!B%=64 �#ș"Wimp_SendMessage",17,B%,B%!4 � ��report(err$,bit%) "6name$=App$:� bit% � 16 name$="Message from "+name$ ,!E%=255:$(E%+4)=err$+�(0) 60ș"Wimp_ReportError",E%,bit%,name$ �,Select% @� J T��error(bit%) U�to_screen ^Ge$=";internal error code "+Þ:�bit%=3e$+=";press [CANCEL] to quit." h+�report(�$+e$,bit%):�bit%=3:�Select%=1� rș"Wimp_CloseDown":� |� � ���OpenW(!B%) �ș"Wimp_GetWindowState",,B% �$B%!28=-1:ș"Wimp_OpenWindow",,B% �� � ���CloseW(!B%) �ș"Wimp_CloseWindow",,B% �� � ���Ui(!B%,B%!4,t$) �8ș&400CE,,B%:$(B%!28)=t$:B%!8=0:B%!12=0:ș&400CD,,B% �� ��Hi(!B%,B%!4) 'B%!8=1<<21:B%!12=1<<21:ș&400CD,,B% &� 0 :��Li(!B%,B%!4) D#B%!8=0:B%!12=1<<21:ș&400CD,,B% N� X b��Ai l!B%=EditW%:B%!4=13 v ȎLearn%� �/ �0 :B%!8=%11100111000000001001000000000000 �/ �-1:B%!8=%01111110000000000011000000000000 �� �+B%!12=%11111111000000001111000000000000 �ș"Wimp_SetIconState",,B% �� � ���Si(!B%,B%!4) �'B%!8=1<<22:B%!12=1<<22:ș&400CD,,B% �� � ���Usi(!B%,B%!4) �#B%!8=0:B%!12=1<<22:ș&400CD,,B% � ݤGetString(!B%,B%!4) ș"Wimp_GetIconState",,B% *.� ((B%!24) � &100)=0 �=$(B%+28) �=$(B%!28) 4 >��Dm(menu%,item%) H3menu%!(36+item%*24)=menu%!(36+item%*24)�(1<<22) R� \ f��Em(menu%,item%) p�Dm(menu%,item%) z3menu%!(36+item%*24)=menu%!(36+item%*24)�(1<<22) �� � ���SetCaret(w%,i%) �;ș"Wimp_SetCaretPosition",w%,i%,,,-1,��GetString(w%,i%) �� � ���title(!B%,t$) �ș"Wimp_GetWindowInfo",,B% �ptr%=!(B%+76):$ptr%=t$ �E�!B%=GW%(Wopen%)ș"Wimp_ForceRedraw",-1,B%!4,B%!16,B%!12,B%!16+36 �� � � ��drag *!B%=SaveW%:ș"Wimp_GetWindowState",,B% )ox%=B%!4-B%!20:oy%=B%!16-B%!24:B%!4=0 ș"Wimp_GetIconState",,B% $(B%!4=5:B%!8=ox%+B%!8:B%!12=oy%+B%!12 .#B%!16=ox%+B%!16:B%!20=oy%+B%!20 81B%!24=0:B%!28=0:B%!32=&7FFFFFF:B%!36=&7FFFFFF Bș"Wimp_DragBox",,B% L� V `��DragFinished j:path$=�GetString(SaveW%,1):ș"Wimp_GetPointerInfo",,B% t0B%!20=B%!12:B%!24=B%!16:B%!28=!B%:B%!32=B%!4 ~4B%!36=71+ExtD%:!B%=64:B%!12=0:B%!16=1:B%!40=&004 �$(B%+44)=�GetLeaf(path$,0) �*ș"Wimp_SendMessage",17,B%,B%!20,B%!24 �� � �ݤGetLeaf(a$,c%) �$ȕ �a$,"."):a$=�a$,�a$,".")+1):� �=a$+�c% � ���DataSave � �Ui(SaveW%,1,�string(B%+44)) �$�save:B%!12=B%!8:B%!16=3:!B%=256 �*ș"Wimp_SendMessage",17,B%,B%!20,B%!24 ș"Wimp_CreateMenu",-1 � ݤstring(ptr%) (�a$ 2&ȕ ?ptr%<>0:a$+=�(?ptr%):ptr%+=1:� <=a$ F P��QuickSave Z"� ��GetString(SaveW%,1),".") � d �save n@�:�report("To save, drag the icon to a directory viewer",16) x�:ș"Wimp_CreateMenu",-1 �� � ��---Editor procs--- � ���load(path$) � �t$,w%,d% ��Ui(SaveW%,1,"Slickfile") �Mask%=M1%:�Learn%�learn(0) ��n%=1�4:�Ui(GW%(n%),0,""):� �F%=�(path$) �"�n%=0�29:C%(n%)=�#F%:�:w%=�#F% �$�#F%,t$:ExtD%=�#F%:ExtD%=ExtD%*2 ��ExtD%� " �b%=0�ExtD%-1:Demo%?b%=�#F%:� � �#F%:�Ui(GW%(w%),0,t$) "8�openGW(w%):�transfer(2):L$=�GetLeaf(path$,32):�a(0) ,� 6 @��transfer(m%) J Ȏm%� T$ �1:�n%=0�29:�C1%(n%)=0C1%(n%)=7 ^ �:C%()=C1%() h* �n%=11�12:�Si(GW%(Wopen%),n%):� r/ �Dm(Smenu%,0):�Ui(EditW%,13,"Clear") |( �Hi(EditW%,14):�Li(EditW%,15) �" �2:�n%=0�29:�C%(n%)=7C%(n%)=0 � �:C1%()=C%() �: �Shape%=7�exW(250):ș"Wimp_SetCaretPosition",-1 �- �Shape%�Li(EditW%,Shape%):Shape%=0 � �Usi(GW%(Wopen%),11) �9 �ExtD%�Usi(GW%(Wopen%),12)��Si(GW%(Wopen%),12) �/ �Em(Smenu%,0):�Ui(EditW%,13,"Learn") �( �Hi(EditW%,15):�Li(EditW%,14) �� �#�moves(0):�fr:Opmode%=m%:Ptr%=0 �� � ���openGW(i%) (�Ui(EditW%,12,�GetString(GW%(i%),0)) Aș"Wimp_GetCaretPosition",,B%:�!B%=EditW%�SetCaret(EditW%,12) (Space%=22-(i%*5):�Space%=17Space%=16 &"�meter:�ModeOk%�OpenW(GW%(i%)) 0�i%=Wopen%� :�Hi(EditW%,i%+7) D�Wopen%� N. �CloseW(GW%(Wopen%)):�Li(EditW%,Wopen%+7) X$ �n%=11�12:�Si(GW%(Wopen%),n%):� b� l Wopen%=i% v ȎWopen%� �$ �1:Wx%=4:Wy%=4:Yb%=-400:Xr%=400 �$ �2:Wx%=5:Wy%=4:Yb%=-400:Xr%=480 �$ �3:Wx%=5:Wy%=5:Yb%=-480:Xr%=480 �$ �4:Wx%=6:Wy%=5:Yb%=-480:Xr%=560 �� �wicon%!0=80 �wicon%!4=-80*(1+Wy%) �wicon%!8=80*(1+Wx%) �wicon%!12=-80 �wicon%!16=%100000010 �wicon%!20=screen% �wicon%!24=Sarea% �wicon%!28=0 � ��shape(s%) Ȏs%� * �7:�Wopen%�exW(360) 46 :�Shape%=7�exW(250):ș"Wimp_SetCaretPosition",-1 >� H�Shape%�Li(EditW%,Shape%) R�Hi(EditW%,s%):Shape%=s% \� f p ��exW(h%) z*!B%=EditW%:ș"Wimp_GetWindowState",,B% �2B%!8=B%!16-h%:B%!28=-1:ș"Wimp_OpenWindow",,B% �� � ���learn(b%) �ExtD%=0:�Usi(EditW%,14) � Ȏb%� � �0:Learn%=0:!Demo%=0 �+ �1,4:�Si(GW%(Wopen%),12):�Dm(Smenu%,0) �4 �Si(EditW%,14):�Li(EditW%,15):Learn%=-1 �. �b%=4!Demo%=0:�reset:�A$=""�a(-1) �- �2:�Em(Smenu%,0):�Hi(EditW%,15):Learn%=0 �6 �!Demo%>0�Usi(GW%(Wopen%),12):ExtD%=Move%*2 �� �Ai � $��plot(b%,x%,y%) .!�cell%,s%,l%,h%:l%=160:h%=160 87x%=(x%-Ox%)�80:y%=(Oy%-y%)�80:cell%=x%-1+((y%-1)*6) B Ȏb%� L �1:�C%(cell%)=7� VC �C%(cell%)>7cell%=C%(cell%)-10:x%=cell%�6+1:y%=cell%�6+1 `# s%=C%(cell%):�c(7,cell%) j) �4:笤edge(x%,y%,cell%)�1,-15,40,2:� t! s%=Shape%:�c(s%,cell%) ~�:x%=x%*80:y%=(y%+1)*80 ��s%=2l%=80 ��s%=3h%=80 ��s%=4l%=80:h%=80 �,ș&400D1,GW%(Wopen%),x%,-y%,x%+l%,-y%+h% ��meter:ExtD%=0:�A$=""�a(-1) �� � �ݤedge(x%,y%,c%) ��ok% � ȎShape%� �+ �1,5,6:�x%>0�x%<Wx%�y%>1�y%<=Wy%ok%=-1 �( �2:�x%>0�x%<=Wx%�y%>1�y%<=Wy%ok%=-1 ( �3:�x%>0�x%<Wx%�y%>=1�y%<=Wy%ok%=-1 ) �4:�x%>0�x%<=Wx%�y%>=1�y%<=Wy%ok%=-1 � �ok%�=�fit(c%) �=0 ( 2 ݤfit(c%) <�ok% F ȎShape%� P8 �1:�C%(c%)=7�C%(c%-6)=7�C%(c%-5)=7�C%(c%+1)=7ok%=-1 Z" �2:�C%(c%)=7�C%(c%-6)=7ok%=-1 d" �3:�C%(c%)=7�C%(c%+1)=7ok%=-1 n �4:�C%(c%)=7ok%=-1 x- �5:�C%(c%)=7�C%(c%-6)=7�C%(c%-5)=7ok%=-1 �- �6:�C%(c%)=7�C%(c%-5)=7�C%(c%+1)=7ok%=-1 �� �=ok% � ���meter ��n%,c%,x1%,x2%,x3% ��n%=0�29:�C%(n%)=7c%+=1 �.�:�c%=Space%�Usi(EditW%,15)��Si(EditW%,15) �-�n%=5�29�6:�C%(n%)<>7x1%=-1:x2%=-1:x3%=-1 �!�:�n%=4�22�6:�C%(n%)<>7x1%=-1 �'�:�n%=24�28:�C%(n%)<>7x1%=-1:x2%=-1 �&�:�x1%�Si(EditW%,8)��Usi(EditW%,8) �$�x2%�Si(EditW%,9)��Usi(EditW%,9) &�x3%�Si(EditW%,10)��Usi(EditW%,10) � "��c(s%,c%) , Ȏs%� 6 �0:s%=C%(c%):C%(c%)=0:n%=0 @ �7:s%=C%(c%):C%(c%)=7:n%=7 J :C%(c%)=s%:n%=c%+10 T� ^ Ȏs%� h+ �1:C%(c%-6)=n%:C%(c%-5)=n%:C%(c%+1)=n% r �2:C%(c%-6)=n% | �3:C%(c%+1)=n% � �5:C%(c%-6)=n%:C%(c%-5)=n% � �6:C%(c%-5)=n%:C%(c%+1)=n% �� �� � ���clear �C%()=7:�meter:�fr ��n%=1�4:�Ui(GW%(n%),0,""):� �;�Ui(EditW%,12,""):�Ui(SaveW%,1,"Slickfile"):L$="":�a(0) �� � ���fr �'ș&400D1,GW%(Wopen%),80,Yb%,Xr%,-80 � ��a(data%) &�n% 0Ȏdata%� : � � :A$="*" D � �:A$="" N� X ȎL$� b/ �"":�n%=1�4:�title(GW%(n%),�default(n%)):� l& :�n%=1�4:�title(GW%(n%),L$+A$):� v� �� � �ݤdefault(n%) � Ȏn%� � �1:t$="4x4 " � �2:t$="5x4 " � �3:t$="5x5 " � �4:t$="6x5 " �� � =t$+A$ � �ݤok(from%) �(�ok%,m$:m$="You have unsaved data, " Ȏ�A$� �0:ok%=� �1:Ȏfrom%� 9 �1:�report(m$+"do you still want to Quit?",19) * �Select%=1ok%=� 41 �2:�report(m$+"proceed with load?",19) > �Select%=1ok%=� H � R� \=ok% f p�---Game procs--- z ���select(b%,x%,y%) ��s$,x1%,y1% �(M%=0:x1%=(x%-Ox%)�80:y1%=(Oy%-y%)�80 �:cell%=x1%-1+((y1%-1)*6):�C%(cell%)>7cell%=C%(cell%)-10 �DPiece%=C%(cell%):x%=cell%�6+1:y%=cell%�6+1:X%=x%*80:Y%=(y%+1)*80 � ȎPiece%� � �1:s$="EKLJ" �" �2:�y1%<y%s$="EFGD"�s$="EFDG" �" �3:�x1%>x%s$="HAIJ"�s$="AHIJ" � �4:�b%=1s$="ABCD"�s$="CDAB" � �5:s$="EMLN" � �6:s$="OKPJ" �� $Cell%=cell%:�seq(s$,cell%,x%,y%) Ptr%=0:�Learn%:�A$=""�a(-1) � $ .��seq(s$,c%,x%,y%) 8 �s%,n%,m% B�s%=1�4:n%=0:�M%� L Ȏ�s$,s%,1)� V �"A":�x%>1n%=1:�x%>2n%=2 `5 �n%�C%(c%-1)=0m%=1:�n%=2�C%(c%-2)=0m%=2 j �m%�move(2,-m%) t$ �"B":�x%<Wx%n%=1:�x%<Wx%-1n%=2 ~5 �n%�C%(c%+1)=0m%=1:�n%=2�C%(c%+2)=0m%=2 � �m%�move(2,m%) � �"C":�y%>1n%=1:�y%>2n%=2 �6 �n%�C%(c%-6)=0m%=1:�n%=2�C%(c%-12)=0m%=2 � �m%�move(1,-m%) �$ �"D":�y%<Wy%n%=1:�y%<Wy%-1n%=2 �6 �n%�C%(c%+6)=0m%=1:�n%=2�C%(c%+12)=0m%=2 � �m%�move(1,m%) �1 �"E":�x%>1�C%(c%-1)=0�C%(c%-7)=0�move(2,-1) �2 �"F":�x%<Wx%�C%(c%+1)=0�C%(c%-5)=0�move(2,1) �A �"G":�y%>2n%=y%�2:�n%�C%(c%-12)=0m%=1:�n%=2�C%(c%-18)=0m%=2 � �m%�move(1,-m%) �& �"H":�x%<Wx%-1n%=1:�x%<Wx%-2n%=2 5 �n%�C%(c%+2)=0m%=1:�n%=2�C%(c%+3)=0m%=2 �m%�move(2,m%) 1 �"I":�y%>1�C%(c%-6)=0�C%(c%-5)=0�move(1,-1) 2 �"J":�y%<Wy%�C%(c%+6)=0�C%(c%+7)=0�move(1,1) (4 �"K":�x%<Wx%-1�C%(c%+2)=0�C%(c%-4)=0�move(2,1) 23 �"L":�y%>2�C%(c%-12)=0�C%(c%-11)=0�move(1,-1) <4 �"M":�x%<Wx%-1�C%(c%+1)=0�C%(c%-4)=0�move(2,1) F2 �"N":�y%<Wy%�C%(c%+6)=0�C%(c%+1)=0�move(1,1) P1 �"O":�x%>1�C%(c%-1)=0�C%(c%-6)=0�move(2,-1) Z2 �"P":�y%>2�C%(c%-6)=0�C%(c%-11)=0�move(1,-1) d � n�:� x� � ���move(a%,d%) � �s%,i% �#s%=�(d%)*10:� Mask%=M0% s%=s%*2 � �Ox%=-80 �Oy%=(Wy%+1)*80 � ��to_sprite �;ș&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-Y%,3,scale%,0 � Ȏa%� �1:i%=Y%+(d%*80-4*�(d%)) �z%=Y%�i%�s% "D ș&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-z%,3,scale%,0 6 Ȗ @ �update J �to_sprite TD ș&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-z%,3,scale%,0 h � |C ș&2E,34+512,Sarea%,S%(Piece%),Ox%+X%,Oy%-z%,3,scale%,0 � �update � �2:i%=X%+(d%*80-4*�(d%)) � �z%=X%�i%�s% �D ș&2E,34+512,Sarea%,S%(Piece%),Ox%+z%,Oy%-Y%,3,scale%,0 � Ȗ � �update � �to_sprite �D ș&2E,34+512,Sarea%,S%(Piece%),Ox%+z%,Oy%-Y%,3,scale%,0 � � C ș&2E,34+512,Sarea%,S%(Piece%),Ox%+z%,Oy%-Y%,3,scale%,0 & �update 0� : D�Son%:�1,-10,55,1 NB�Learn% Demo%?(Move%*2)=Cell%:Demo%?(Move%*2+1)=(a%*16)+(d%+2) X>�c(0,Cell%):�a%=1�c(Piece%,Cell%+d%*6)��c(Piece%,Cell%+d%) b#M%=�:�Move%<9999�moves(Move%+1) l� v � ��demo �ICell%=Demo%?Ptr%:Piece%=C%(Cell%):X%=(Cell%�6+1)*80:Y%=(Cell%�6+2)*80 �8�move((Demo%?(Ptr%+1)�240)�16,(Demo%?(Ptr%+1)�15)-2) �*Ptr%+=2:�Ptr%=ExtD%Mask%=M1%:Opmode%=2 �� � ���reset �>C%()=C1%():�moves(0):�fr:Opmode%=2:Ptr%=0:�Learn% !Demo%=0 �� � ���moves(m%) �/�Ui(GW%(Wopen%),10,�m%):Move%=m%:�Learn%=0� ��Move%=Bytemax%� D �report("Can't accept more moves-aborting Learn!",16):�learn(2) � � * ��save 4path$=�GetString(SaveW%,1) >F%=�(path$) H!�n%=0�29:b%=C1%(n%):�b%=0b%=7 R�#F%,b%:�:�#F%,Wopen% \"�#F%,�GetString(GW%(Wopen%),0) f�ExtD%� p/ �#F%,ExtD%�2:�b%=0�ExtD%-1:�#F%,Demo%?b%:� z�:�#F%,0 �� ��#F% ��("SetType "+path$+" 004") �L$=�GetLeaf(path$,32):�a(0) �� � �
00000000 0d 00 0a 1b f4 20 3e 24 2e 21 53 6c 69 63 6b 65 |..... >$.!Slicke| 00000010 72 2e 21 52 75 6e 49 6d 61 67 65 0d 00 14 29 56 |r.!RunImage...)V| 00000020 65 72 73 69 6f 6e 24 3d 22 31 2e 30 31 41 55 20 |ersion$="1.01AU | 00000030 4d 61 72 39 36 22 3a f4 20 28 63 29 20 47 2e 42 |Mar96":. (c) G.B| 00000040 45 52 52 59 0d 00 15 25 f4 20 6d 6f 64 73 20 74 |ERRY...%. mods t| 00000050 6f 20 77 6f 72 6b 20 69 6e 20 61 6e 79 20 6d 6f |o work in any mo| 00000060 64 65 20 62 79 20 44 43 41 0d 00 1e 04 0d 00 28 |de by DCA......(| 00000070 0c f2 70 72 65 69 6e 69 74 0d 00 32 0c f2 73 70 |..preinit..2..sp| 00000080 72 69 74 65 73 0d 00 3c 0c f2 77 69 6e 64 6f 77 |rites..<..window| 00000090 73 0d 00 46 0a f2 6d 65 6e 75 73 0d 00 50 0c f2 |s..F..menus..P..| 000000a0 69 63 6f 6e 62 61 72 0d 00 5a 0d f2 70 6f 73 74 |iconbar..Z..post| 000000b0 69 6e 69 74 0d 00 64 0d f2 61 75 74 6f 6c 6f 61 |init..d..autoloa| 000000c0 64 0d 00 6e 04 0d 00 78 11 ee 20 85 20 f2 65 72 |d..n...x.. . .er| 000000d0 72 6f 72 28 33 29 0d 00 82 04 0d 00 8c 15 c8 95 |ror(3)..........| 000000e0 20 ac 20 51 75 69 74 3a f2 70 6f 6c 6c 3a ce 0d | . Quit:.poll:..| 000000f0 00 96 18 c8 99 22 57 69 6d 70 5f 43 6c 6f 73 65 |....."Wimp_Close| 00000100 44 6f 77 6e 22 3a e0 0d 00 a0 04 0d 00 aa 0d dd |Down":..........| 00000110 f2 70 72 65 69 6e 69 74 0d 00 b4 3a 41 70 70 24 |.preinit...:App$| 00000120 3d 22 21 53 6c 69 63 6b 65 72 22 3a c8 99 22 57 |="!Slicker":.."W| 00000130 69 6d 70 5f 49 6e 69 74 69 61 6c 69 73 65 22 2c |imp_Initialise",| 00000140 32 30 30 2c 26 34 42 35 33 34 31 35 34 2c 41 70 |200,&4B534154,Ap| 00000150 70 24 0d 00 be 11 ee 20 85 20 f2 65 72 72 6f 72 |p$..... . .error| 00000160 28 31 29 0d 00 c8 13 de 20 42 25 20 35 30 30 2c |(1)..... B% 500,| 00000170 45 25 20 32 35 35 0d 00 d2 21 de 20 49 69 6e 64 |E% 255...!. Iind| 00000180 25 20 37 30 2c 45 69 6e 64 25 20 38 30 2c 53 69 |% 70,Eind% 80,Si| 00000190 6e 64 25 20 32 37 30 0d 00 dc 31 de 20 57 34 34 |nd% 270...1. W44| 000001a0 69 6e 64 25 20 36 30 2c 57 35 34 69 6e 64 25 20 |ind% 60,W54ind% | 000001b0 36 30 2c 57 35 35 69 6e 64 25 20 36 30 2c 57 36 |60,W55ind% 60,W6| 000001c0 35 69 6e 64 25 20 36 30 0d 00 e6 23 de 20 49 6e |5ind% 60...#. In| 000001d0 61 6d 65 25 20 31 31 2c 45 6e 61 6d 65 25 20 31 |ame% 11,Ename% 1| 000001e0 31 2c 53 6e 61 6d 65 25 20 31 31 0d 00 f0 35 de |1,Sname% 11...5.| 000001f0 20 57 34 34 6e 61 6d 65 25 20 31 31 2c 57 35 34 | W44name% 11,W54| 00000200 6e 61 6d 65 25 20 31 31 2c 57 35 35 6e 61 6d 65 |name% 11,W55name| 00000210 25 20 31 31 2c 57 36 35 6e 61 6d 65 25 20 31 31 |% 11,W65name% 11| 00000220 0d 00 fa 19 de 20 49 6d 65 6e 75 25 20 39 39 2c |..... Imenu% 99,| 00000230 53 6d 65 6e 75 25 20 35 31 0d 01 04 1b de 20 73 |Smenu% 51..... s| 00000240 63 61 6c 65 25 20 31 36 2c 20 63 6f 6c 74 61 62 |cale% 16, coltab| 00000250 25 20 31 36 0d 01 0e 3a de 47 57 25 28 34 29 2c |% 16...:.GW%(4),| 00000260 53 25 28 37 29 2c 43 25 28 32 39 29 2c 43 31 25 |S%(7),C%(29),C1%| 00000270 28 32 39 29 2c 44 65 6d 6f 25 20 35 31 31 3a 43 |(29),Demo% 511:C| 00000280 25 28 29 3d 37 3a 21 44 65 6d 6f 25 3d 30 0d 01 |%()=7:!Demo%=0..| 00000290 18 42 51 75 69 74 3d 30 3a 49 63 6f 6e 42 25 3d |.BQuit=0:IconB%=| 000002a0 2d 32 3a 4d 30 25 3d 36 31 39 32 3a 4d 31 25 3d |-2:M0%=6192:M1%=| 000002b0 36 31 39 33 3a 4d 61 73 6b 25 3d 4d 31 25 3a 57 |6193:Mask%=M1%:W| 000002c0 6f 70 65 6e 25 3d 30 3a 53 68 61 70 65 25 3d 30 |open%=0:Shape%=0| 000002d0 0d 01 22 46 4f 70 6d 6f 64 65 25 3d 31 3a 4c 65 |.."FOpmode%=1:Le| 000002e0 61 72 6e 25 3d 30 3a 4d 6f 76 65 25 3d 30 3a 45 |arn%=0:Move%=0:E| 000002f0 78 74 44 25 3d 30 3a 50 74 72 25 3d 30 3a 42 79 |xtD%=0:Ptr%=0:By| 00000300 74 65 6d 61 78 25 3d 32 35 35 3a 41 24 3d 22 22 |temax%=255:A$=""| 00000310 3a 4c 24 3d 22 22 0d 01 2c 2b 53 6f 6e 25 3d 31 |:L$=""..,+Son%=1| 00000320 3a ff 22 43 68 61 6e 6e 65 6c 56 6f 69 63 65 20 |:."ChannelVoice | 00000330 31 20 57 61 76 65 53 79 6e 74 68 2d 42 65 65 70 |1 WaveSynth-Beep| 00000340 22 0d 01 36 0f 73 77 69 74 63 68 65 64 25 3d a3 |"..6.switched%=.| 00000350 0d 01 40 05 e1 0d 01 4a 04 0d 01 54 0d dd f2 73 |..@....J...T...s| 00000360 70 72 69 74 65 73 0d 01 5e 1c 46 25 3d 8e 22 3c |prites..^.F%=."<| 00000370 4f 62 65 79 24 44 69 72 3e 2e 53 70 72 69 74 65 |Obey$Dir>.Sprite| 00000380 73 22 0d 01 68 2f e7 46 25 3d 30 20 85 20 31 2c |s"..h/.F%=0 . 1,| 00000390 22 66 69 6c 65 20 21 53 6c 69 63 6b 65 72 2e 53 |"file !Slicker.S| 000003a0 70 72 69 74 65 73 20 6e 6f 74 20 66 6f 75 6e 64 |prites not found| 000003b0 22 0d 01 72 15 73 69 7a 65 25 3d a2 23 46 25 2b |"..r.size%=.#F%+| 000003c0 34 3a d9 23 46 25 0d 01 7c 2c de 20 53 61 72 65 |4:.#F%..|,. Sare| 000003d0 61 25 20 73 69 7a 65 25 3a 21 53 61 72 65 61 25 |a% size%:!Sarea%| 000003e0 3d 73 69 7a 65 25 3a 53 61 72 65 61 25 21 38 3d |=size%:Sarea%!8=| 000003f0 31 36 0d 01 86 34 c8 99 22 4f 53 5f 53 70 72 69 |16...4.."OS_Spri| 00000400 74 65 4f 70 22 2c 26 31 30 41 2c 53 61 72 65 61 |teOp",&10A,Sarea| 00000410 25 2c 22 3c 4f 62 65 79 24 44 69 72 3e 2e 53 70 |%,"<Obey$Dir>.Sp| 00000420 72 69 74 65 73 22 0d 01 90 38 e3 6e 25 3d 31 b8 |rites"...8.n%=1.| 00000430 37 3a c8 99 22 4f 53 5f 53 70 72 69 74 65 4f 70 |7:.."OS_SpriteOp| 00000440 22 2c 32 34 2b 32 35 36 2c 53 61 72 65 61 25 2c |",24+256,Sarea%,| 00000450 c3 6e 25 b8 2c 2c 53 25 28 6e 25 29 3a ed 0d 01 |.n%.,,S%(n%):...| 00000460 9a 2e c8 99 20 26 32 45 2c 26 31 30 30 2b 32 34 |.... &2E,&100+24| 00000470 2c 53 61 72 65 61 25 2c 22 73 63 72 65 65 6e 22 |,Sarea%,"screen"| 00000480 20 b8 20 2c 2c 73 63 72 65 65 6e 25 0d 01 a4 0f | . ,,screen%....| 00000490 de 20 77 69 63 6f 6e 25 20 33 32 0d 01 ae 05 e1 |. wicon% 32.....| 000004a0 0d 01 b8 04 0d 01 c2 0d dd f2 77 69 6e 64 6f 77 |..........window| 000004b0 73 0d 01 cc 30 24 49 6e 61 6d 65 25 3d 22 49 6e |s...0$Iname%="In| 000004c0 66 6f 22 3a 24 45 6e 61 6d 65 25 3d 22 45 64 69 |fo":$Ename%="Edi| 000004d0 74 22 3a 24 53 6e 61 6d 65 25 3d 22 53 61 76 65 |t":$Sname%="Save| 000004e0 22 0d 01 d6 43 24 57 34 34 6e 61 6d 65 25 3d 22 |"...C$W44name%="| 000004f0 77 34 34 22 3a 24 57 35 34 6e 61 6d 65 25 3d 22 |w44":$W54name%="| 00000500 77 35 34 22 3a 24 57 35 35 6e 61 6d 65 25 3d 22 |w54":$W55name%="| 00000510 77 35 35 22 3a 24 57 36 35 6e 61 6d 65 25 3d 22 |w55":$W65name%="| 00000520 77 36 35 22 0d 01 e0 31 c8 99 22 57 69 6d 70 5f |w65"...1.."Wimp_| 00000530 4f 70 65 6e 54 65 6d 70 6c 61 74 65 22 2c 2c 22 |OpenTemplate",,"| 00000540 3c 4f 62 65 79 24 44 69 72 3e 2e 54 65 6d 70 6c |<Obey$Dir>.Templ| 00000550 61 74 65 73 22 0d 01 ea 38 c8 99 22 57 69 6d 70 |ates"...8.."Wimp| 00000560 5f 4c 6f 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c |_LoadTemplate",,| 00000570 42 25 2c 49 69 6e 64 25 2c 49 69 6e 64 25 2b 37 |B%,Iind%,Iind%+7| 00000580 30 2c 2d 31 2c 49 6e 61 6d 65 25 2c 30 0d 01 f4 |0,-1,Iname%,0...| 00000590 11 42 25 21 33 36 38 3d 53 61 72 65 61 25 0d 01 |.B%!368=Sarea%..| 000005a0 fe 26 c8 99 22 57 69 6d 70 5f 43 72 65 61 74 65 |.&.."Wimp_Create| 000005b0 57 69 6e 64 6f 77 22 2c 2c 42 25 20 b8 20 49 6e |Window",,B% . In| 000005c0 66 6f 57 25 0d 02 08 3e c8 99 22 57 69 6d 70 5f |foW%...>.."Wimp_| 000005d0 4c 6f 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c 42 |LoadTemplate",,B| 000005e0 25 2c 57 34 34 69 6e 64 25 2c 57 34 34 69 6e 64 |%,W44ind%,W44ind| 000005f0 25 2b 36 30 2c 2d 31 2c 57 34 34 6e 61 6d 65 25 |%+60,-1,W44name%| 00000600 2c 30 0d 02 12 10 42 25 21 36 34 3d 53 61 72 65 |,0....B%!64=Sare| 00000610 61 25 0d 02 1c 26 c8 99 22 57 69 6d 70 5f 43 72 |a%...&.."Wimp_Cr| 00000620 65 61 74 65 57 69 6e 64 6f 77 22 2c 2c 42 25 20 |eateWindow",,B% | 00000630 b8 20 47 57 25 28 31 29 0d 02 26 3e c8 99 22 57 |. GW%(1)..&>.."W| 00000640 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 6c 61 74 65 |imp_LoadTemplate| 00000650 22 2c 2c 42 25 2c 57 35 34 69 6e 64 25 2c 57 35 |",,B%,W54ind%,W5| 00000660 34 69 6e 64 25 2b 36 30 2c 2d 31 2c 57 35 34 6e |4ind%+60,-1,W54n| 00000670 61 6d 65 25 2c 30 0d 02 30 10 42 25 21 36 34 3d |ame%,0..0.B%!64=| 00000680 53 61 72 65 61 25 0d 02 3a 26 c8 99 22 57 69 6d |Sarea%..:&.."Wim| 00000690 70 5f 43 72 65 61 74 65 57 69 6e 64 6f 77 22 2c |p_CreateWindow",| 000006a0 2c 42 25 20 b8 20 47 57 25 28 32 29 0d 02 44 3e |,B% . GW%(2)..D>| 000006b0 c8 99 22 57 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 |.."Wimp_LoadTemp| 000006c0 6c 61 74 65 22 2c 2c 42 25 2c 57 35 35 69 6e 64 |late",,B%,W55ind| 000006d0 25 2c 57 35 35 69 6e 64 25 2b 36 30 2c 2d 31 2c |%,W55ind%+60,-1,| 000006e0 57 35 35 6e 61 6d 65 25 2c 30 0d 02 4e 10 42 25 |W55name%,0..N.B%| 000006f0 21 36 34 3d 53 61 72 65 61 25 0d 02 58 26 c8 99 |!64=Sarea%..X&..| 00000700 22 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 |"Wimp_CreateWind| 00000710 6f 77 22 2c 2c 42 25 20 b8 20 47 57 25 28 33 29 |ow",,B% . GW%(3)| 00000720 0d 02 62 3e c8 99 22 57 69 6d 70 5f 4c 6f 61 64 |..b>.."Wimp_Load| 00000730 54 65 6d 70 6c 61 74 65 22 2c 2c 42 25 2c 57 36 |Template",,B%,W6| 00000740 35 69 6e 64 25 2c 57 36 35 69 6e 64 25 2b 36 30 |5ind%,W65ind%+60| 00000750 2c 2d 31 2c 57 36 35 6e 61 6d 65 25 2c 30 0d 02 |,-1,W65name%,0..| 00000760 6c 10 42 25 21 36 34 3d 53 61 72 65 61 25 0d 02 |l.B%!64=Sarea%..| 00000770 76 26 c8 99 22 57 69 6d 70 5f 43 72 65 61 74 65 |v&.."Wimp_Create| 00000780 57 69 6e 64 6f 77 22 2c 2c 42 25 20 b8 20 47 57 |Window",,B% . GW| 00000790 25 28 34 29 0d 02 80 38 c8 99 22 57 69 6d 70 5f |%(4)...8.."Wimp_| 000007a0 4c 6f 61 64 54 65 6d 70 6c 61 74 65 22 2c 2c 42 |LoadTemplate",,B| 000007b0 25 2c 45 69 6e 64 25 2c 45 69 6e 64 25 2b 38 30 |%,Eind%,Eind%+80| 000007c0 2c 2d 31 2c 45 6e 61 6d 65 25 2c 30 0d 02 8a 1f |,-1,Ename%,0....| 000007d0 42 25 21 36 34 3d 53 61 72 65 61 25 3a 42 25 21 |B%!64=Sarea%:B%!| 000007e0 34 3d 42 25 21 31 32 2d 32 35 30 0d 02 94 26 c8 |4=B%!12-250...&.| 000007f0 99 22 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e |."Wimp_CreateWin| 00000800 64 6f 77 22 2c 2c 42 25 20 b8 20 45 64 69 74 57 |dow",,B% . EditW| 00000810 25 0d 02 9e 39 c8 99 22 57 69 6d 70 5f 4c 6f 61 |%...9.."Wimp_Loa| 00000820 64 54 65 6d 70 6c 61 74 65 22 2c 2c 42 25 2c 53 |dTemplate",,B%,S| 00000830 69 6e 64 25 2c 53 69 6e 64 25 2b 32 37 30 2c 2d |ind%,Sind%+270,-| 00000840 31 2c 53 6e 61 6d 65 25 2c 30 0d 02 a8 26 c8 99 |1,Sname%,0...&..| 00000850 22 57 69 6d 70 5f 43 72 65 61 74 65 57 69 6e 64 |"Wimp_CreateWind| 00000860 6f 77 22 2c 2c 42 25 20 b8 20 53 61 76 65 57 25 |ow",,B% . SaveW%| 00000870 0d 02 b2 1a c8 99 22 57 69 6d 70 5f 43 6c 6f 73 |......"Wimp_Clos| 00000880 65 54 65 6d 70 6c 61 74 65 22 0d 02 bc 05 e1 0d |eTemplate"......| 00000890 02 c6 04 0d 02 d0 0b dd f2 6d 65 6e 75 73 0d 02 |.........menus..| 000008a0 da 2f f7 8d 44 4c 44 3a f2 53 65 74 55 70 4d 65 |./..DLD:.SetUpMe| 000008b0 6e 75 28 49 6d 65 6e 75 25 29 3a f2 53 65 74 55 |nu(Imenu%):.SetU| 000008c0 70 4d 65 6e 75 28 53 6d 65 6e 75 25 29 0d 02 e4 |pMenu(Smenu%)...| 000008d0 05 e1 0d 02 ee 04 0d 02 f8 0d dd f2 69 63 6f 6e |............icon| 000008e0 62 61 72 0d 03 02 4a 21 42 25 3d 2d 31 3a 42 25 |bar...J!B%=-1:B%| 000008f0 21 34 3d 30 3a 42 25 21 38 3d 30 3a 42 25 21 31 |!4=0:B%!8=0:B%!1| 00000900 32 3d 36 38 3a 42 25 21 31 36 3d 36 38 3a 42 25 |2=68:B%!16=68:B%| 00000910 21 32 30 3d 26 33 30 30 32 3a 24 28 42 25 2b 32 |!20=&3002:$(B%+2| 00000920 34 29 3d 22 21 53 6c 69 63 6b 65 72 22 0d 03 0c |4)="!Slicker"...| 00000930 21 c8 99 22 57 69 6d 70 5f 43 72 65 61 74 65 49 |!.."Wimp_CreateI| 00000940 63 6f 6e 22 2c 2c 42 25 20 b8 20 49 62 25 0d 03 |con",,B% . Ib%..| 00000950 16 05 e1 0d 03 20 04 0d 03 2a 0e dd f2 70 6f 73 |..... ...*...pos| 00000960 74 69 6e 69 74 0d 03 34 3d f2 55 69 28 49 6e 66 |tinit..4=.Ui(Inf| 00000970 6f 57 25 2c 37 2c c0 56 65 72 73 69 6f 6e 24 2c |oW%,7,.Version$,| 00000980 31 33 29 29 3a f2 48 69 28 45 64 69 74 57 25 2c |13)):.Hi(EditW%,| 00000990 31 34 29 3a f2 53 69 28 45 64 69 74 57 25 2c 31 |14):.Si(EditW%,1| 000009a0 35 29 0d 03 3e 29 e3 6e 25 3d 31 b8 34 3a e3 69 |5)..>).n%=1.4:.i| 000009b0 25 3d 31 31 b8 31 32 3a f2 53 69 28 47 57 25 28 |%=11.12:.Si(GW%(| 000009c0 6e 25 29 2c 69 25 29 3a ed 3a ed 0d 03 48 17 f2 |n%),i%):.:...H..| 000009d0 44 6d 28 53 6d 65 6e 75 25 2c 30 29 3a f2 6d 6f |Dm(Smenu%,0):.mo| 000009e0 64 65 0d 03 52 05 e1 0d 03 5c 04 0d 03 66 0a dd |de..R....\...f..| 000009f0 f2 6d 6f 64 65 0d 03 70 0d 4d 6f 64 65 4f 6b 25 |.mode..p.ModeOk%| 00000a00 3d b9 0d 03 7a 05 e1 0d 03 84 04 0d 03 8e 0e dd |=...z...........| 00000a10 f2 61 75 74 6f 6c 6f 61 64 0d 03 98 19 c8 99 22 |.autoload......"| 00000a20 4f 53 5f 47 65 74 45 6e 76 22 20 b8 20 70 61 74 |OS_GetEnv" . pat| 00000a30 68 24 0d 03 a2 33 e7 20 c2 70 61 74 68 24 2c 31 |h$...3. .path$,1| 00000a40 29 3c 3e 22 20 22 20 f2 6c 6f 61 64 28 c1 70 61 |)<>" " .load(.pa| 00000a50 74 68 24 2c a7 70 61 74 68 24 2c 22 22 22 20 22 |th$,.path$,""" "| 00000a60 29 2b 32 29 29 0d 03 ac 05 e1 0d 03 b6 04 0d 03 |)+2))...........| 00000a70 c0 16 dd f2 53 65 74 55 70 4d 65 6e 75 28 6d 65 |....SetUpMenu(me| 00000a80 6e 75 25 29 0d 03 ca 34 f3 74 69 74 6c 65 24 2c |nu%)...4.title$,| 00000a90 6e 75 6d 25 3a 24 6d 65 6e 75 25 3d 74 69 74 6c |num%:$menu%=titl| 00000aa0 65 24 3a 77 69 64 74 68 25 3d 28 a9 74 69 74 6c |e$:width%=(.titl| 00000ab0 65 24 2d 32 29 2a 31 36 0d 03 d4 38 6d 65 6e 75 |e$-2)*16...8menu| 00000ac0 25 21 31 32 3d 26 37 30 32 30 37 3a 6d 65 6e 75 |%!12=&70207:menu| 00000ad0 25 21 32 30 3d 34 34 3a 6d 65 6e 75 25 21 32 34 |%!20=44:menu%!24| 00000ae0 3d 30 3a 70 74 72 25 3d 6d 65 6e 75 25 2b 32 38 |=0:ptr%=menu%+28| 00000af0 0d 03 de 10 e3 6e 25 3d 31 20 b8 20 6e 75 6d 25 |.....n%=1 . num%| 00000b00 0d 03 e8 1b 20 f3 6d 66 6c 61 67 73 25 2c 73 75 |.... .mflags%,su| 00000b10 62 70 74 72 25 2c 69 74 65 6d 24 0d 03 f2 42 20 |bptr%,item$...B | 00000b20 21 70 74 72 25 3d 6d 66 6c 61 67 73 25 3a 70 74 |!ptr%=mflags%:pt| 00000b30 72 25 21 34 3d 73 75 62 70 74 72 25 3a 70 74 72 |r%!4=subptr%:ptr| 00000b40 25 21 38 3d 26 37 30 30 30 30 32 31 3a 24 28 70 |%!8=&7000021:$(p| 00000b50 74 72 25 2b 31 32 29 3d 69 74 65 6d 24 0d 03 fc |tr%+12)=item$...| 00000b60 2a 20 6c 25 3d 28 a9 69 74 65 6d 24 2b 31 29 2a |* l%=(.item$+1)*| 00000b70 31 36 3a e7 6c 25 3e 77 69 64 74 68 25 20 77 69 |16:.l%>width% wi| 00000b80 64 74 68 25 3d 6c 25 0d 04 06 0d 20 70 74 72 25 |dth%=l%.... ptr%| 00000b90 2b 3d 32 34 0d 04 10 15 ed 3a 6d 65 6e 75 25 21 |+=24.....:menu%!| 00000ba0 31 36 3d 77 69 64 74 68 25 0d 04 1a 05 e1 0d 04 |16=width%.......| 00000bb0 24 04 0d 04 2e 14 f4 2d 2d 2d 4d 65 6e 75 20 64 |$......---Menu d| 00000bc0 61 74 61 2d 2d 2d 0d 04 38 04 0d 04 42 13 f4 20 |ata---..8...B.. | 00000bd0 69 63 6f 6e 20 62 61 72 20 6d 65 6e 75 0d 04 4c |icon bar menu..L| 00000be0 37 dc 53 6c 69 63 6b 65 72 2c 33 2c 30 2c 49 6e |7.Slicker,3,0,In| 00000bf0 66 6f 57 25 2c 49 6e 66 6f 2c 30 2c 2d 31 2c 4f |foW%,Info,0,-1,O| 00000c00 70 65 6e 20 45 64 69 74 2c 26 38 30 2c 2d 31 2c |pen Edit,&80,-1,| 00000c10 51 75 69 74 0d 04 56 04 0d 04 60 0f f4 20 53 61 |Quit..V...`.. Sa| 00000c20 76 65 20 6d 65 6e 75 0d 04 6a 1e dc 53 6c 69 63 |ve menu..j..Slic| 00000c30 6b 65 72 2c 31 2c 26 38 30 2c 53 61 76 65 57 25 |ker,1,&80,SaveW%| 00000c40 2c 53 61 76 65 0d 04 74 04 0d 04 7e 15 f4 2d 2d |,Save..t...~..--| 00000c50 2d 57 69 6d 70 20 70 72 6f 63 73 2d 2d 2d 0d 04 |-Wimp procs---..| 00000c60 88 04 0d 04 92 0a dd f2 70 6f 6c 6c 0d 04 9c 1a |........poll....| 00000c70 c8 99 26 34 30 30 43 37 2c 4d 61 73 6b 25 2c 42 |..&400C7,Mask%,B| 00000c80 25 20 b8 20 72 25 0d 04 a6 09 c8 8e 72 25 ca 0d |% . r%......r%..| 00000c90 04 b0 0d 20 c9 30 3a f2 64 65 6d 6f 0d 04 ba 0f |... .0:.demo....| 00000ca0 20 c9 31 3a f2 72 65 64 72 61 77 0d 04 c4 27 20 | .1:.redraw...' | 00000cb0 c9 32 3a e7 4d 6f 64 65 4f 6b 25 c8 99 22 57 69 |.2:.ModeOk%.."Wi| 00000cc0 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c 2c |mp_OpenWindow",,| 00000cd0 42 25 0d 04 ce 39 20 20 20 20 20 20 20 e7 21 42 |B%...9 .!B| 00000ce0 25 3d 47 57 25 28 57 6f 70 65 6e 25 29 4f 78 25 |%=GW%(Wopen%)Ox%| 00000cf0 3d 42 25 21 34 2d 42 25 21 32 30 3a 4f 79 25 3d |=B%!4-B%!20:Oy%=| 00000d00 42 25 21 31 36 2d 42 25 21 32 34 0d 04 d8 40 20 |B%!16-B%!24...@ | 00000d10 c9 33 3a c8 99 22 57 69 6d 70 5f 43 6c 6f 73 65 |.3:.."Wimp_Close| 00000d20 57 69 6e 64 6f 77 22 2c 2c 42 25 3a e7 21 42 25 |Window",,B%:.!B%| 00000d30 3d 47 57 25 28 57 6f 70 65 6e 25 29 f2 43 6c 6f |=GW%(Wopen%).Clo| 00000d40 73 65 57 28 45 64 69 74 57 25 29 0d 04 e2 20 20 |seW(EditW%)... | 00000d50 c9 36 3a f2 63 6c 69 63 6b 28 42 25 21 38 2c 42 |.6:.click(B%!8,B| 00000d60 25 21 31 32 2c 42 25 21 31 36 29 0d 04 ec 15 20 |%!12,B%!16).... | 00000d70 c9 37 3a f2 44 72 61 67 46 69 6e 69 73 68 65 64 |.7:.DragFinished| 00000d80 0d 04 f6 17 20 c9 38 3a f2 6b 65 79 28 21 42 25 |.... .8:.key(!B%| 00000d90 2c 42 25 21 32 34 29 0d 05 00 18 20 c9 39 3a f2 |,B%!24).... .9:.| 00000da0 6d 65 6e 75 73 65 6c 65 63 74 28 21 42 25 29 0d |menuselect(!B%).| 00000db0 05 0a 1b 20 c9 31 37 2c 31 38 3a f2 72 65 63 65 |... .17,18:.rece| 00000dc0 69 76 65 28 42 25 21 31 36 29 0d 05 14 05 cb 0d |ive(B%!16)......| 00000dd0 05 1e 05 e1 0d 05 28 04 0d 05 32 0c dd f2 72 65 |......(...2...re| 00000de0 64 72 61 77 0d 05 3c 0e f2 74 6f 5f 73 70 72 69 |draw..<..to_spri| 00000df0 74 65 0d 05 46 08 e6 20 31 30 0d 05 50 1b c8 93 |te..F.. 10..P...| 00000e00 20 c8 90 20 30 2c 30 2c 57 78 25 2a 38 30 2c 57 | .. 0,0,Wx%*80,W| 00000e10 79 25 2a 38 30 0d 05 5a 0f e3 20 6e 25 3d 30 20 |y%*80..Z.. n%=0 | 00000e20 b8 20 32 39 0d 05 64 13 20 78 25 3d 28 6e 25 20 |. 29..d. x%=(n% | 00000e30 83 20 36 29 2a 38 30 0d 05 6e 1b 20 79 25 3d 28 |. 6)*80..n. y%=(| 00000e40 57 79 25 2d 31 2d 28 6e 25 20 81 20 36 29 29 2a |Wy%-1-(n% . 6))*| 00000e50 38 30 0d 05 78 49 20 e7 20 43 25 28 6e 25 29 3c |80..xI . C%(n%)<| 00000e60 38 3a e7 20 43 25 28 6e 25 29 20 c8 99 20 26 32 |8:. C%(n%) .. &2| 00000e70 45 2c 33 34 2b 35 31 32 2c 53 61 72 65 61 25 2c |E,34+512,Sarea%,| 00000e80 53 25 28 43 25 28 6e 25 29 29 2c 78 25 2c 79 25 |S%(C%(n%)),x%,y%| 00000e90 2c 33 2c 73 63 61 6c 65 25 2c 30 0d 05 82 05 ed |,3,scale%,0.....| 00000ea0 0d 05 8c 0e f2 74 6f 5f 73 63 72 65 65 6e 0d 05 |.....to_screen..| 00000eb0 96 15 c8 99 26 34 30 30 43 38 2c 2c 42 25 20 b8 |....&400C8,,B% .| 00000ec0 20 6d 25 0d 05 a0 09 c8 95 20 6d 25 0d 05 aa 1f | m%...... m%....| 00000ed0 20 c8 99 20 22 57 69 6d 70 5f 50 6c 6f 74 49 63 | .. "Wimp_PlotIc| 00000ee0 6f 6e 22 2c 2c 77 69 63 6f 6e 25 0d 05 b4 16 20 |on",,wicon%.... | 00000ef0 c8 99 26 34 30 30 43 41 2c 2c 42 25 20 b8 20 6d |..&400CA,,B% . m| 00000f00 25 0d 05 be 05 ce 0d 05 c8 05 e1 0d 05 d2 04 0d |%...............| 00000f10 05 dc 0d dd 20 f2 75 70 64 61 74 65 0d 05 dd 0e |.... .update....| 00000f20 f2 74 6f 5f 73 63 72 65 65 6e 0d 05 e6 13 21 42 |.to_screen....!B| 00000f30 25 3d 47 57 25 28 57 6f 70 65 6e 25 29 0d 05 fa |%=GW%(Wopen%)...| 00000f40 12 42 25 21 34 3d 63 68 5f 78 30 25 2b 38 30 0d |.B%!4=ch_x0%+80.| 00000f50 06 04 1a 42 25 21 38 3d 63 68 5f 79 30 25 2d 38 |...B%!8=ch_y0%-8| 00000f60 30 2a 28 57 79 25 2b 31 29 0d 06 0e 13 42 25 21 |0*(Wy%+1)....B%!| 00000f70 31 32 3d 63 68 5f 78 31 25 2b 38 30 0d 06 18 1b |12=ch_x1%+80....| 00000f80 42 25 21 31 36 3d 63 68 5f 79 31 25 2d 38 30 2a |B%!16=ch_y1%-80*| 00000f90 28 57 79 25 2b 31 29 0d 06 22 23 c8 99 20 22 57 |(Wy%+1).."#.. "W| 00000fa0 69 6d 70 5f 55 70 64 61 74 65 57 69 6e 64 6f 77 |imp_UpdateWindow| 00000fb0 22 2c 2c 42 25 20 b8 20 6d 25 0d 06 2c 09 c8 95 |",,B% . m%..,...| 00000fc0 20 6d 25 0d 06 36 1f 20 c8 99 20 22 57 69 6d 70 | m%..6. .. "Wimp| 00000fd0 5f 50 6c 6f 74 49 63 6f 6e 22 2c 2c 77 69 63 6f |_PlotIcon",,wico| 00000fe0 6e 25 0d 06 40 16 20 c8 99 26 34 30 30 43 41 2c |n%..@. ..&400CA,| 00000ff0 2c 42 25 20 b8 20 6d 25 0d 06 4a 05 ce 0d 06 54 |,B% . m%..J....T| 00001000 05 e1 0d 06 5e 05 3a 0d 06 68 0f dd f2 74 6f 5f |....^.:..h...to_| 00001010 73 70 72 69 74 65 0d 06 72 13 e7 20 ac 20 73 77 |sprite..r.. . sw| 00001020 69 74 63 68 65 64 25 20 8c 0d 06 7c 23 20 c8 99 |itched% ...|# ..| 00001030 26 32 45 2c 26 32 30 30 2b 36 30 2c 53 61 72 65 |&2E,&200+60,Sare| 00001040 61 25 2c 73 63 72 65 65 6e 25 2c 30 0d 06 90 0c |a%,screen%,0....| 00001050 20 c8 99 26 35 41 2c 32 0d 06 91 0c 20 c8 99 26 | ..&5A,2.... ..&| 00001060 35 41 2c 31 0d 06 9a 10 20 73 77 69 74 63 68 65 |5A,1.... switche| 00001070 64 25 3d b9 0d 06 a4 05 cd 0d 06 ae 05 e1 0d 06 |d%=.............| 00001080 b8 05 3a 0d 06 c2 0f dd f2 74 6f 5f 73 63 72 65 |..:......to_scre| 00001090 65 6e 0d 06 cc 11 e7 20 73 77 69 74 63 68 65 64 |en..... switched| 000010a0 25 20 8c 0d 06 cd 15 20 c8 99 20 26 35 41 2c 2d |% ..... .. &5A,-| 000010b0 31 20 b8 20 2c 63 68 25 0d 06 ce 15 20 63 68 5f |1 . ,ch%.... ch_| 000010c0 78 30 25 3d 32 2a 63 68 25 21 34 2d 38 0d 06 cf |x0%=2*ch%!4-8...| 000010d0 15 20 63 68 5f 79 30 25 3d 34 2a 63 68 25 21 38 |. ch_y0%=4*ch%!8| 000010e0 2d 38 0d 06 d0 16 20 63 68 5f 78 31 25 3d 32 2a |-8.... ch_x1%=2*| 000010f0 63 68 25 21 31 32 2b 38 0d 06 d1 16 20 63 68 5f |ch%!12+8.... ch_| 00001100 79 31 25 3d 34 2a 63 68 25 21 31 36 2b 38 0d 06 |y1%=4*ch%!16+8..| 00001110 d6 0d 20 c8 99 20 26 35 41 2c 30 0d 06 e0 1d 20 |.. .. &5A,0.... | 00001120 c8 99 26 32 45 2c 26 32 30 30 2b 36 30 2c 53 61 |..&2E,&200+60,Sa| 00001130 72 65 61 25 2c 30 2c 30 0d 06 ea 10 20 73 77 69 |rea%,0,0.... swi| 00001140 74 63 68 65 64 25 3d a3 0d 06 eb 05 cd 0d 06 f4 |tched%=.........| 00001150 05 e1 0d 06 fe 05 3a 0d 07 08 15 dd f2 63 6c 69 |......:......cli| 00001160 63 6b 28 62 25 2c 77 25 2c 69 25 29 0d 07 12 09 |ck(b%,w%,i%)....| 00001170 c8 8e 77 25 ca 0d 07 1c 12 20 c9 49 63 6f 6e 42 |..w%..... .IconB| 00001180 25 3a c8 8e 62 25 ca 0d 07 26 1f 20 20 20 20 20 |%:..b%...&. | 00001190 20 20 20 20 20 20 20 20 c9 31 3a 53 6f 6e 25 3d | .1:Son%=| 000011a0 53 6f 6e 25 82 31 0d 07 30 30 20 20 20 20 20 20 |Son%.1..00 | 000011b0 20 20 20 20 20 20 20 c9 32 3a f2 73 68 6f 77 6d | .2:.showm| 000011c0 65 6e 75 28 49 6d 65 6e 75 25 2c 21 42 25 2d 36 |enu(Imenu%,!B%-6| 000011d0 34 2c 32 32 38 29 0d 07 3a 1d 20 20 20 20 20 20 |4,228)..:. | 000011e0 20 20 20 20 20 20 20 c9 34 3a e7 4d 6f 64 65 4f | .4:.ModeO| 000011f0 6b 25 8c 0d 07 44 32 20 20 20 20 20 20 20 20 20 |k%...D2 | 00001200 20 20 20 20 20 20 20 20 20 20 20 e7 57 6f 70 65 | .Wope| 00001210 6e 25 f2 4f 70 65 6e 57 28 47 57 25 28 57 6f 70 |n%.OpenW(GW%(Wop| 00001220 65 6e 25 29 29 0d 07 4e 30 20 20 20 20 20 20 20 |en%))..N0 | 00001230 20 20 20 20 20 20 20 20 20 20 20 20 20 e7 4f 70 | .Op| 00001240 6d 6f 64 65 25 3d 31 f2 4f 70 65 6e 57 28 45 64 |mode%=1.OpenW(Ed| 00001250 69 74 57 25 29 0d 07 58 46 20 20 20 20 20 20 20 |itW%)..XF | 00001260 20 20 20 20 20 20 20 20 20 20 20 20 cc 3a f2 72 | .:.r| 00001270 65 70 6f 72 74 28 22 53 77 69 74 63 68 20 74 6f |eport("Switch to| 00001280 20 61 20 73 69 78 74 65 65 6e 20 63 6f 6c 6f 75 | a sixteen colou| 00001290 72 20 6d 6f 64 65 22 2c 31 36 29 0d 07 62 18 20 |r mode",16)..b. | 000012a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000012b0 20 20 cd 0d 07 6c 11 20 20 20 20 20 20 20 20 20 | ...l. | 000012c0 20 20 20 cb 0d 07 76 17 20 c9 45 64 69 74 57 25 | ...v. .EditW%| 000012d0 3a c8 8e 4f 70 6d 6f 64 65 25 ca 0d 07 80 19 20 |:..Opmode%..... | 000012e0 20 20 20 20 20 20 20 20 20 20 20 20 c9 31 3a c8 | .1:.| 000012f0 8e 62 25 ca 0d 07 8a 20 20 20 20 20 20 20 20 20 |.b%.... | 00001300 20 20 20 20 20 20 20 20 20 20 20 20 c9 34 3a c8 | .4:.| 00001310 8e 69 25 ca 0d 07 94 38 20 20 20 20 20 20 20 20 |.i%....8 | 00001320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001330 20 20 20 c9 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c | .1,2,3,4,5,6,| 00001340 37 3a f2 73 68 61 70 65 28 69 25 29 0d 07 9e 37 |7:.shape(i%)...7| 00001350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001360 20 20 20 20 20 20 20 20 20 20 20 c9 38 2c 39 2c | .8,9,| 00001370 31 30 2c 31 31 3a f2 6f 70 65 6e 47 57 28 69 25 |10,11:.openGW(i%| 00001380 2d 37 29 0d 07 a8 30 20 20 20 20 20 20 20 20 20 |-7)...0 | 00001390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000013a0 20 20 c9 31 33 3a e7 57 6f 70 65 6e 25 f2 63 6c | .13:.Wopen%.cl| 000013b0 65 61 72 0d 07 b2 2f 20 20 20 20 20 20 20 20 20 |ear.../ | 000013c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000013d0 20 20 c9 31 35 3a f2 74 72 61 6e 73 66 65 72 28 | .15:.transfer(| 000013e0 32 29 0d 07 bc 1f 20 20 20 20 20 20 20 20 20 20 |2).... | 000013f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001400 cb 0d 07 c6 18 20 20 20 20 20 20 20 20 20 20 20 |..... | 00001410 20 20 20 20 20 20 20 20 cb 0d 07 d0 19 20 20 20 | ..... | 00001420 20 20 20 20 20 20 20 20 20 20 c9 32 3a c8 8e 62 | .2:..b| 00001430 25 ca 0d 07 da 2b 20 20 20 20 20 20 20 20 20 20 |%....+ | 00001440 20 20 20 20 20 20 20 20 20 20 c9 31 3a e7 69 25 | .1:.i%| 00001450 3d 31 33 80 4c 65 61 72 6e 25 3d 30 8c 0d 07 e4 |=13.Learn%=0....| 00001460 3f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |? | 00001470 20 20 20 20 20 20 20 20 20 20 20 20 e7 50 74 72 | .Ptr| 00001480 25 3e 30 80 50 74 72 25 81 32 3c 42 79 74 65 6d |%>0.Ptr%.2<Bytem| 00001490 61 78 25 f2 6c 65 61 72 6e 28 31 29 0d 07 ee 1f |ax%.learn(1)....| 000014a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000014b0 20 20 20 20 20 20 20 20 20 20 cd 0d 07 f8 20 20 | .... | 000014c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000014d0 20 20 20 c9 34 3a c8 8e 69 25 ca 0d 08 02 2a 20 | .4:..i%....* | 000014e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000014f0 20 20 20 20 20 20 20 20 20 20 c9 38 2c 39 2c 31 | .8,9,1| 00001500 30 2c 31 31 3a 0d 08 0c 3f 20 20 20 20 20 20 20 |0,11:...? | 00001510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001520 20 20 20 20 20 e7 69 25 2d 37 3d 57 6f 70 65 6e | .i%-7=Wopen| 00001530 25 f2 4f 70 65 6e 57 28 47 57 25 28 57 6f 70 65 |%.OpenW(GW%(Wope| 00001540 6e 25 29 29 0d 08 16 35 20 20 20 20 20 20 20 20 |n%))...5 | 00001550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001560 20 20 20 c9 31 33 3a e7 4c 65 61 72 6e 25 3d 30 | .13:.Learn%=0| 00001570 f2 6c 65 61 72 6e 28 34 29 0d 08 20 2f 20 20 20 |.learn(4).. / | 00001580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001590 20 20 20 20 20 20 20 20 c9 31 34 3a f2 74 72 61 | .14:.tra| 000015a0 6e 73 66 65 72 28 31 29 0d 08 2a 33 20 20 20 20 |nsfer(1)..*3 | 000015b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000015c0 20 20 20 20 20 20 20 c9 31 35 3a e7 4c 65 61 72 | .15:.Lear| 000015d0 6e 25 f2 6c 65 61 72 6e 28 32 29 0d 08 34 1f 20 |n%.learn(2)..4. | 000015e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000015f0 20 20 20 20 20 20 20 20 20 cb 0d 08 3e 18 20 20 | ...>. | 00001600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001610 20 cb 0d 08 48 11 20 20 20 20 20 20 20 20 20 20 | ...H. | 00001620 20 20 cb 0d 08 52 22 20 c9 47 57 25 28 31 29 2c | ...R" .GW%(1),| 00001630 47 57 25 28 32 29 2c 47 57 25 28 33 29 2c 47 57 |GW%(2),GW%(3),GW| 00001640 25 28 34 29 3a 0d 08 5c 11 20 20 42 25 21 32 30 |%(4):..\. B%!20| 00001650 3d 42 25 21 31 32 0d 08 66 24 20 20 c8 99 22 57 |=B%!12..f$ .."W| 00001660 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 53 74 61 |imp_GetWindowSta| 00001670 74 65 22 2c 2c 42 25 2b 32 30 0d 08 70 15 20 20 |te",,B%+20..p. | 00001680 4f 78 25 3d 42 25 21 32 34 2d 42 25 21 34 30 0d |Ox%=B%!24-B%!40.| 00001690 08 7a 15 20 20 4f 79 25 3d 42 25 21 33 36 2d 42 |.z. Oy%=B%!36-B| 000016a0 25 21 34 34 0d 08 84 10 20 20 c8 8e 4f 70 6d 6f |%!44.... ..Opmo| 000016b0 64 65 25 ca 0d 08 8e 0f 20 20 20 c9 31 3a c8 8e |de%..... .1:..| 000016c0 62 25 ca 0d 08 98 2a 20 20 20 20 20 20 20 20 20 |b%....* | 000016d0 20 c9 31 2c 34 3a e7 69 25 3d 38 f2 70 6c 6f 74 | .1,4:.i%=8.plot| 000016e0 28 62 25 2c 21 42 25 2c 42 25 21 34 29 0d 08 a2 |(b%,!B%,B%!4)...| 000016f0 33 20 20 20 20 20 20 20 20 20 20 c9 32 3a e7 69 |3 .2:.i| 00001700 25 3c 38 f2 73 68 6f 77 6d 65 6e 75 28 53 6d 65 |%<8.showmenu(Sme| 00001710 6e 75 25 2c 21 42 25 2d 36 34 2c 42 25 21 34 29 |nu%,!B%-64,B%!4)| 00001720 0d 08 ac 0e 20 20 20 20 20 20 20 20 20 cb 0d 08 |.... ...| 00001730 b6 0f 20 20 20 c9 32 3a c8 8e 62 25 ca 0d 08 c0 |.. .2:..b%....| 00001740 18 20 20 20 20 20 20 20 20 20 20 c9 31 2c 34 3a |. .1,4:| 00001750 c8 8e 69 25 ca 0d 08 ca 2e 20 20 20 20 20 20 20 |..i%..... | 00001760 20 20 20 20 20 20 20 20 20 20 20 20 c9 38 3a f2 | .8:.| 00001770 73 65 6c 65 63 74 28 62 25 2c 21 42 25 2c 42 25 |select(b%,!B%,B%| 00001780 21 34 29 0d 08 d4 21 20 20 20 20 20 20 20 20 20 |!4)...! | 00001790 20 20 20 20 20 20 20 20 20 20 c9 31 31 3a f2 72 | .11:.r| 000017a0 65 73 65 74 0d 08 de 3c 20 20 20 20 20 20 20 20 |eset...< | 000017b0 20 20 20 20 20 20 20 20 20 20 20 c9 31 32 3a f2 | .12:.| 000017c0 72 65 73 65 74 3a 4d 61 73 6b 25 3d 4d 30 25 3a |reset:Mask%=M0%:| 000017d0 50 74 72 25 3d 30 3a 4f 70 6d 6f 64 65 25 3d 33 |Ptr%=0:Opmode%=3| 000017e0 0d 08 e8 17 20 20 20 20 20 20 20 20 20 20 20 20 |.... | 000017f0 20 20 20 20 20 20 cb 0d 08 f2 33 20 20 20 20 20 | ....3 | 00001800 20 20 20 20 20 c9 32 3a e7 69 25 3c 38 f2 73 68 | .2:.i%<8.sh| 00001810 6f 77 6d 65 6e 75 28 53 6d 65 6e 75 25 2c 21 42 |owmenu(Smenu%,!B| 00001820 25 2d 36 34 2c 42 25 21 34 29 0d 08 fc 0e 20 20 |%-64,B%!4).... | 00001830 20 20 20 20 20 20 20 cb 0d 09 06 20 20 20 20 c9 | .... .| 00001840 33 3a e7 69 25 3d 31 31 f2 72 65 73 65 74 3a 4d |3:.i%=11.reset:M| 00001850 61 73 6b 25 3d 4d 31 25 0d 09 10 07 20 20 cb 0d |ask%=M1%.... ..| 00001860 09 1a 12 20 c9 53 61 76 65 57 25 3a c8 8e 62 25 |... .SaveW%:..b%| 00001870 ca 0d 09 24 25 20 20 20 20 20 20 20 20 20 20 20 |...$% | 00001880 20 20 c9 31 2c 34 3a e7 69 25 3d 32 f2 51 75 69 | .1,4:.i%=2.Qui| 00001890 63 6b 53 61 76 65 0d 09 2e 1d 20 20 20 20 20 20 |ckSave.... | 000018a0 20 20 20 20 20 20 20 c9 31 36 2c 36 34 3a f2 64 | .16,64:.d| 000018b0 72 61 67 0d 09 38 11 20 20 20 20 20 20 20 20 20 |rag..8. | 000018c0 20 20 20 cb 0d 09 42 05 cb 0d 09 4c 05 e1 0d 09 | ...B....L....| 000018d0 56 04 0d 09 60 10 dd f2 6b 65 79 28 77 25 2c 6b |V...`...key(w%,k| 000018e0 25 29 0d 09 6a 09 c8 8e 6b 25 ca 0d 09 74 0e 20 |%)..j...k%...t. | 000018f0 c9 31 33 3a c8 8e 77 25 ca 0d 09 7e 3d 20 20 20 |.13:..w%...~= | 00001900 20 20 20 20 20 20 c9 45 64 69 74 57 25 3a f2 55 | .EditW%:.U| 00001910 69 28 47 57 25 28 57 6f 70 65 6e 25 29 2c 30 2c |i(GW%(Wopen%),0,| 00001920 a4 47 65 74 53 74 72 69 6e 67 28 45 64 69 74 57 |.GetString(EditW| 00001930 25 2c 31 32 29 29 0d 09 88 24 20 20 20 20 20 20 |%,12))...$ | 00001940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e7 41 | .A| 00001950 24 3d 22 22 f2 61 28 2d 31 29 0d 09 92 1f 20 20 |$="".a(-1).... | 00001960 20 20 20 20 20 20 20 c9 53 61 76 65 57 25 3a f2 | .SaveW%:.| 00001970 51 75 69 63 6b 53 61 76 65 0d 09 9c 25 20 20 20 |QuickSave...% | 00001980 20 20 20 20 20 20 7f 3a c8 99 22 57 69 6d 70 5f | .:.."Wimp_| 00001990 50 72 6f 63 65 73 73 4b 65 79 22 2c 6b 25 0d 09 |ProcessKey",k%..| 000019a0 a6 0d 20 20 20 20 20 20 20 20 cb 0d 09 b0 1d 20 |.. ..... | 000019b0 7f 3a c8 99 22 57 69 6d 70 5f 50 72 6f 63 65 73 |.:.."Wimp_Proces| 000019c0 73 4b 65 79 22 2c 6b 25 0d 09 ba 05 cb 0d 09 c4 |sKey",k%........| 000019d0 05 e1 0d 09 ce 04 0d 09 d8 17 dd f2 6d 65 6e 75 |............menu| 000019e0 73 65 6c 65 63 74 28 6d 65 6e 75 25 29 0d 09 e2 |select(menu%)...| 000019f0 10 c8 8e 4d 65 6e 75 6f 70 65 6e 25 ca 0d 09 ec |...Menuopen%....| 00001a00 15 20 c9 49 6d 65 6e 75 25 3a c8 8e 6d 65 6e 75 |. .Imenu%:..menu| 00001a10 25 ca 0d 09 f6 1d 20 20 20 20 20 20 20 20 20 20 |%..... | 00001a20 20 20 20 c9 31 3a e7 4d 6f 64 65 4f 6b 25 8c 0d | .1:.ModeOk%..| 00001a30 0a 00 41 20 20 20 20 20 20 20 20 20 20 20 20 20 |..A | 00001a40 20 20 20 20 20 20 20 f2 4f 70 65 6e 57 28 45 64 | .OpenW(Ed| 00001a50 69 74 57 25 29 3a e7 57 6f 70 65 6e 25 f2 4f 70 |itW%):.Wopen%.Op| 00001a60 65 6e 57 28 47 57 25 28 57 6f 70 65 6e 25 29 29 |enW(GW%(Wopen%))| 00001a70 0d 0a 0a 18 20 20 20 20 20 20 20 20 20 20 20 20 |.... | 00001a80 20 20 20 20 20 20 20 cd 0d 0a 14 22 20 20 20 20 | ...." | 00001a90 20 20 20 20 20 20 20 20 20 c9 32 3a e7 a4 6f 6b | .2:..ok| 00001aa0 28 31 29 20 51 75 69 74 3d b9 0d 0a 1e 11 20 20 |(1) Quit=..... | 00001ab0 20 20 20 20 20 20 20 20 20 20 cb 0d 0a 28 1f 20 | ...(. | 00001ac0 c9 53 6d 65 6e 75 25 3a e7 6d 65 6e 75 25 3d 30 |.Smenu%:.menu%=0| 00001ad0 f2 51 75 69 63 6b 53 61 76 65 0d 0a 32 05 cb 0d |.QuickSave..2...| 00001ae0 0a 3c 05 e1 0d 0a 46 04 0d 0a 50 1b dd f2 73 68 |.<....F...P...sh| 00001af0 6f 77 6d 65 6e 75 28 6d 65 6e 75 25 2c 78 25 2c |owmenu(menu%,x%,| 00001b00 79 25 29 0d 0a 5a 24 c8 99 22 57 69 6d 70 5f 43 |y%)..Z$.."Wimp_C| 00001b10 72 65 61 74 65 4d 65 6e 75 22 2c 2c 6d 65 6e 75 |reateMenu",,menu| 00001b20 25 2c 78 25 2c 79 25 0d 0a 64 13 4d 65 6e 75 6f |%,x%,y%..d.Menuo| 00001b30 70 65 6e 25 3d 6d 65 6e 75 25 0d 0a 6e 05 e1 0d |pen%=menu%..n...| 00001b40 0a 78 04 0d 0a 82 11 dd f2 72 65 63 65 69 76 65 |.x.......receive| 00001b50 28 6d 25 29 0d 0a 8c 09 c8 8e 6d 25 ca 0d 0a 96 |(m%)......m%....| 00001b60 0e 20 c9 30 3a 51 75 69 74 3d b9 0d 0a a0 11 20 |. .0:Quit=..... | 00001b70 c9 32 3a f2 44 61 74 61 53 61 76 65 0d 0a aa 30 |.2:.DataSave...0| 00001b80 20 c9 33 3a e7 42 25 21 34 30 3d 26 30 30 34 e7 | .3:.B%!40=&004.| 00001b90 a4 6f 6b 28 32 29 20 f2 6c 6f 61 64 28 a4 73 74 |.ok(2) .load(.st| 00001ba0 72 69 6e 67 28 42 25 2b 34 34 29 29 0d 0a b4 39 |ring(B%+44))...9| 00001bb0 20 c9 35 3a e7 42 25 21 34 30 3d 26 30 30 34 f2 | .5:.B%!40=&004.| 00001bc0 6c 6f 61 64 61 63 6b 3a e7 a4 6f 6b 28 32 29 20 |loadack:..ok(2) | 00001bd0 f2 6c 6f 61 64 28 a4 73 74 72 69 6e 67 28 42 25 |.load(.string(B%| 00001be0 2b 34 34 29 29 0d 0a be 12 20 c9 26 34 30 30 43 |+44)).... .&400C| 00001bf0 31 3a f2 6d 6f 64 65 0d 0a c8 05 cb 0d 0a d2 05 |1:.mode.........| 00001c00 e1 0d 0a dc 04 0d 0a e6 0d dd f2 6c 6f 61 64 61 |...........loada| 00001c10 63 6b 0d 0a f0 1d 42 25 21 31 32 3d 42 25 21 38 |ck....B%!12=B%!8| 00001c20 3a 42 25 21 31 36 3d 34 3a 21 42 25 3d 36 34 0d |:B%!16=4:!B%=64.| 00001c30 0a fa 23 c8 99 22 57 69 6d 70 5f 53 65 6e 64 4d |..#.."Wimp_SendM| 00001c40 65 73 73 61 67 65 22 2c 31 37 2c 42 25 2c 42 25 |essage",17,B%,B%| 00001c50 21 34 0d 0b 04 05 e1 0d 0b 0e 04 0d 0b 18 17 dd |!4..............| 00001c60 f2 72 65 70 6f 72 74 28 65 72 72 24 2c 62 69 74 |.report(err$,bit| 00001c70 25 29 0d 0b 22 36 6e 61 6d 65 24 3d 41 70 70 24 |%).."6name$=App$| 00001c80 3a e7 20 62 69 74 25 20 80 20 31 36 20 6e 61 6d |:. bit% . 16 nam| 00001c90 65 24 3d 22 4d 65 73 73 61 67 65 20 66 72 6f 6d |e$="Message from| 00001ca0 20 22 2b 6e 61 6d 65 24 0d 0b 2c 1d 21 45 25 3d | "+name$..,.!E%=| 00001cb0 32 35 35 3a 24 28 45 25 2b 34 29 3d 65 72 72 24 |255:$(E%+4)=err$| 00001cc0 2b bd 28 30 29 0d 0b 36 30 c8 99 22 57 69 6d 70 |+.(0)..60.."Wimp| 00001cd0 5f 52 65 70 6f 72 74 45 72 72 6f 72 22 2c 45 25 |_ReportError",E%| 00001ce0 2c 62 69 74 25 2c 6e 61 6d 65 24 20 b8 2c 53 65 |,bit%,name$ .,Se| 00001cf0 6c 65 63 74 25 0d 0b 40 05 e1 0d 0b 4a 04 0d 0b |lect%..@....J...| 00001d00 54 11 dd f2 65 72 72 6f 72 28 62 69 74 25 29 0d |T...error(bit%).| 00001d10 0b 55 0e f2 74 6f 5f 73 63 72 65 65 6e 0d 0b 5e |.U..to_screen..^| 00001d20 47 65 24 3d 22 3b 69 6e 74 65 72 6e 61 6c 20 65 |Ge$=";internal e| 00001d30 72 72 6f 72 20 63 6f 64 65 20 22 2b c3 9e 3a e7 |rror code "+..:.| 00001d40 62 69 74 25 3d 33 65 24 2b 3d 22 3b 70 72 65 73 |bit%=3e$+=";pres| 00001d50 73 20 5b 43 41 4e 43 45 4c 5d 20 74 6f 20 71 75 |s [CANCEL] to qu| 00001d60 69 74 2e 22 0d 0b 68 2b f2 72 65 70 6f 72 74 28 |it."..h+.report(| 00001d70 f6 24 2b 65 24 2c 62 69 74 25 29 3a e7 62 69 74 |.$+e$,bit%):.bit| 00001d80 25 3d 33 3a e7 53 65 6c 65 63 74 25 3d 31 e1 0d |%=3:.Select%=1..| 00001d90 0b 72 18 c8 99 22 57 69 6d 70 5f 43 6c 6f 73 65 |.r..."Wimp_Close| 00001da0 44 6f 77 6e 22 3a e0 0d 0b 7c 05 e1 0d 0b 86 04 |Down":...|......| 00001db0 0d 0b 90 10 dd f2 4f 70 65 6e 57 28 21 42 25 29 |......OpenW(!B%)| 00001dc0 0d 0b 9a 1f c8 99 22 57 69 6d 70 5f 47 65 74 57 |......"Wimp_GetW| 00001dd0 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 42 25 0d |indowState",,B%.| 00001de0 0b a4 24 42 25 21 32 38 3d 2d 31 3a c8 99 22 57 |..$B%!28=-1:.."W| 00001df0 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c |imp_OpenWindow",| 00001e00 2c 42 25 0d 0b ae 05 e1 0d 0b b8 04 0d 0b c2 11 |,B%.............| 00001e10 dd f2 43 6c 6f 73 65 57 28 21 42 25 29 0d 0b cc |..CloseW(!B%)...| 00001e20 1c c8 99 22 57 69 6d 70 5f 43 6c 6f 73 65 57 69 |..."Wimp_CloseWi| 00001e30 6e 64 6f 77 22 2c 2c 42 25 0d 0b d6 05 e1 0d 0b |ndow",,B%.......| 00001e40 e0 04 0d 0b ea 15 dd f2 55 69 28 21 42 25 2c 42 |........Ui(!B%,B| 00001e50 25 21 34 2c 74 24 29 0d 0b f4 38 c8 99 26 34 30 |%!4,t$)...8..&40| 00001e60 30 43 45 2c 2c 42 25 3a 24 28 42 25 21 32 38 29 |0CE,,B%:$(B%!28)| 00001e70 3d 74 24 3a 42 25 21 38 3d 30 3a 42 25 21 31 32 |=t$:B%!8=0:B%!12| 00001e80 3d 30 3a c8 99 26 34 30 30 43 44 2c 2c 42 25 0d |=0:..&400CD,,B%.| 00001e90 0b fe 05 e1 0d 0c 08 04 0d 0c 12 12 dd f2 48 69 |..............Hi| 00001ea0 28 21 42 25 2c 42 25 21 34 29 0d 0c 1c 27 42 25 |(!B%,B%!4)...'B%| 00001eb0 21 38 3d 31 3c 3c 32 31 3a 42 25 21 31 32 3d 31 |!8=1<<21:B%!12=1| 00001ec0 3c 3c 32 31 3a c8 99 26 34 30 30 43 44 2c 2c 42 |<<21:..&400CD,,B| 00001ed0 25 0d 0c 26 05 e1 0d 0c 30 04 0d 0c 3a 12 dd f2 |%..&....0...:...| 00001ee0 4c 69 28 21 42 25 2c 42 25 21 34 29 0d 0c 44 23 |Li(!B%,B%!4)..D#| 00001ef0 42 25 21 38 3d 30 3a 42 25 21 31 32 3d 31 3c 3c |B%!8=0:B%!12=1<<| 00001f00 32 31 3a c8 99 26 34 30 30 43 44 2c 2c 42 25 0d |21:..&400CD,,B%.| 00001f10 0c 4e 05 e1 0d 0c 58 04 0d 0c 62 08 dd f2 41 69 |.N....X...b...Ai| 00001f20 0d 0c 6c 16 21 42 25 3d 45 64 69 74 57 25 3a 42 |..l.!B%=EditW%:B| 00001f30 25 21 34 3d 31 33 0d 0c 76 0d c8 8e 4c 65 61 72 |%!4=13..v...Lear| 00001f40 6e 25 ca 0d 0c 80 2f 20 c9 30 20 3a 42 25 21 38 |n%..../ .0 :B%!8| 00001f50 3d 25 31 31 31 30 30 31 31 31 30 30 30 30 30 30 |=%11100111000000| 00001f60 30 30 31 30 30 31 30 30 30 30 30 30 30 30 30 30 |0010010000000000| 00001f70 30 30 0d 0c 8a 2f 20 c9 2d 31 3a 42 25 21 38 3d |00.../ .-1:B%!8=| 00001f80 25 30 31 31 31 31 31 31 30 30 30 30 30 30 30 30 |%011111100000000| 00001f90 30 30 30 31 31 30 30 30 30 30 30 30 30 30 30 30 |0001100000000000| 00001fa0 30 0d 0c 94 05 cb 0d 0c 9e 2b 42 25 21 31 32 3d |0........+B%!12=| 00001fb0 25 31 31 31 31 31 31 31 31 30 30 30 30 30 30 30 |%111111110000000| 00001fc0 30 31 31 31 31 30 30 30 30 30 30 30 30 30 30 30 |0111100000000000| 00001fd0 30 0d 0c a8 1d c8 99 22 57 69 6d 70 5f 53 65 74 |0......"Wimp_Set| 00001fe0 49 63 6f 6e 53 74 61 74 65 22 2c 2c 42 25 0d 0c |IconState",,B%..| 00001ff0 b2 05 e1 0d 0c bc 04 0d 0c c6 12 dd f2 53 69 28 |.............Si(| 00002000 21 42 25 2c 42 25 21 34 29 0d 0c d0 27 42 25 21 |!B%,B%!4)...'B%!| 00002010 38 3d 31 3c 3c 32 32 3a 42 25 21 31 32 3d 31 3c |8=1<<22:B%!12=1<| 00002020 3c 32 32 3a c8 99 26 34 30 30 43 44 2c 2c 42 25 |<22:..&400CD,,B%| 00002030 0d 0c da 05 e1 0d 0c e4 04 0d 0c ee 13 dd f2 55 |...............U| 00002040 73 69 28 21 42 25 2c 42 25 21 34 29 0d 0c f8 23 |si(!B%,B%!4)...#| 00002050 42 25 21 38 3d 30 3a 42 25 21 31 32 3d 31 3c 3c |B%!8=0:B%!12=1<<| 00002060 32 32 3a c8 99 26 34 30 30 43 44 2c 2c 42 25 0d |22:..&400CD,,B%.| 00002070 0d 02 05 e1 0d 0d 0c 04 0d 0d 16 19 dd a4 47 65 |..............Ge| 00002080 74 53 74 72 69 6e 67 28 21 42 25 2c 42 25 21 34 |tString(!B%,B%!4| 00002090 29 0d 0d 20 1d c8 99 22 57 69 6d 70 5f 47 65 74 |).. ..."Wimp_Get| 000020a0 49 63 6f 6e 53 74 61 74 65 22 2c 2c 42 25 0d 0d |IconState",,B%..| 000020b0 2a 2e e7 20 28 28 42 25 21 32 34 29 20 80 20 26 |*.. ((B%!24) . &| 000020c0 31 30 30 29 3d 30 20 8c 3d 24 28 42 25 2b 32 38 |100)=0 .=$(B%+28| 000020d0 29 20 8b 3d 24 28 42 25 21 32 38 29 0d 0d 34 04 |) .=$(B%!28)..4.| 000020e0 0d 0d 3e 15 dd f2 44 6d 28 6d 65 6e 75 25 2c 69 |..>...Dm(menu%,i| 000020f0 74 65 6d 25 29 0d 0d 48 33 6d 65 6e 75 25 21 28 |tem%)..H3menu%!(| 00002100 33 36 2b 69 74 65 6d 25 2a 32 34 29 3d 6d 65 6e |36+item%*24)=men| 00002110 75 25 21 28 33 36 2b 69 74 65 6d 25 2a 32 34 29 |u%!(36+item%*24)| 00002120 84 28 31 3c 3c 32 32 29 0d 0d 52 05 e1 0d 0d 5c |.(1<<22)..R....\| 00002130 04 0d 0d 66 15 dd f2 45 6d 28 6d 65 6e 75 25 2c |...f...Em(menu%,| 00002140 69 74 65 6d 25 29 0d 0d 70 14 f2 44 6d 28 6d 65 |item%)..p..Dm(me| 00002150 6e 75 25 2c 69 74 65 6d 25 29 0d 0d 7a 33 6d 65 |nu%,item%)..z3me| 00002160 6e 75 25 21 28 33 36 2b 69 74 65 6d 25 2a 32 34 |nu%!(36+item%*24| 00002170 29 3d 6d 65 6e 75 25 21 28 33 36 2b 69 74 65 6d |)=menu%!(36+item| 00002180 25 2a 32 34 29 82 28 31 3c 3c 32 32 29 0d 0d 84 |%*24).(1<<22)...| 00002190 05 e1 0d 0d 8e 04 0d 0d 98 15 dd f2 53 65 74 43 |............SetC| 000021a0 61 72 65 74 28 77 25 2c 69 25 29 0d 0d a2 3b c8 |aret(w%,i%)...;.| 000021b0 99 22 57 69 6d 70 5f 53 65 74 43 61 72 65 74 50 |."Wimp_SetCaretP| 000021c0 6f 73 69 74 69 6f 6e 22 2c 77 25 2c 69 25 2c 2c |osition",w%,i%,,| 000021d0 2c 2d 31 2c a9 a4 47 65 74 53 74 72 69 6e 67 28 |,-1,..GetString(| 000021e0 77 25 2c 69 25 29 0d 0d ac 05 e1 0d 0d b6 04 0d |w%,i%)..........| 000021f0 0d c0 13 dd f2 74 69 74 6c 65 28 21 42 25 2c 74 |.....title(!B%,t| 00002200 24 29 0d 0d ca 1e c8 99 22 57 69 6d 70 5f 47 65 |$)......"Wimp_Ge| 00002210 74 57 69 6e 64 6f 77 49 6e 66 6f 22 2c 2c 42 25 |tWindowInfo",,B%| 00002220 0d 0d d4 1a 70 74 72 25 3d 21 28 42 25 2b 37 36 |....ptr%=!(B%+76| 00002230 29 3a 24 70 74 72 25 3d 74 24 0d 0d de 45 e7 21 |):$ptr%=t$...E.!| 00002240 42 25 3d 47 57 25 28 57 6f 70 65 6e 25 29 c8 99 |B%=GW%(Wopen%)..| 00002250 22 57 69 6d 70 5f 46 6f 72 63 65 52 65 64 72 61 |"Wimp_ForceRedra| 00002260 77 22 2c 2d 31 2c 42 25 21 34 2c 42 25 21 31 36 |w",-1,B%!4,B%!16| 00002270 2c 42 25 21 31 32 2c 42 25 21 31 36 2b 33 36 0d |,B%!12,B%!16+36.| 00002280 0d e8 05 e1 0d 0d f2 04 0d 0d fc 0a dd f2 64 72 |..............dr| 00002290 61 67 0d 0e 06 2a 21 42 25 3d 53 61 76 65 57 25 |ag...*!B%=SaveW%| 000022a0 3a c8 99 22 57 69 6d 70 5f 47 65 74 57 69 6e 64 |:.."Wimp_GetWind| 000022b0 6f 77 53 74 61 74 65 22 2c 2c 42 25 0d 0e 10 29 |owState",,B%...)| 000022c0 6f 78 25 3d 42 25 21 34 2d 42 25 21 32 30 3a 6f |ox%=B%!4-B%!20:o| 000022d0 79 25 3d 42 25 21 31 36 2d 42 25 21 32 34 3a 42 |y%=B%!16-B%!24:B| 000022e0 25 21 34 3d 30 0d 0e 1a 1d c8 99 22 57 69 6d 70 |%!4=0......"Wimp| 000022f0 5f 47 65 74 49 63 6f 6e 53 74 61 74 65 22 2c 2c |_GetIconState",,| 00002300 42 25 0d 0e 24 28 42 25 21 34 3d 35 3a 42 25 21 |B%..$(B%!4=5:B%!| 00002310 38 3d 6f 78 25 2b 42 25 21 38 3a 42 25 21 31 32 |8=ox%+B%!8:B%!12| 00002320 3d 6f 79 25 2b 42 25 21 31 32 0d 0e 2e 23 42 25 |=oy%+B%!12...#B%| 00002330 21 31 36 3d 6f 78 25 2b 42 25 21 31 36 3a 42 25 |!16=ox%+B%!16:B%| 00002340 21 32 30 3d 6f 79 25 2b 42 25 21 32 30 0d 0e 38 |!20=oy%+B%!20..8| 00002350 31 42 25 21 32 34 3d 30 3a 42 25 21 32 38 3d 30 |1B%!24=0:B%!28=0| 00002360 3a 42 25 21 33 32 3d 26 37 46 46 46 46 46 46 3a |:B%!32=&7FFFFFF:| 00002370 42 25 21 33 36 3d 26 37 46 46 46 46 46 46 0d 0e |B%!36=&7FFFFFF..| 00002380 42 18 c8 99 22 57 69 6d 70 5f 44 72 61 67 42 6f |B..."Wimp_DragBo| 00002390 78 22 2c 2c 42 25 0d 0e 4c 05 e1 0d 0e 56 04 0d |x",,B%..L....V..| 000023a0 0e 60 12 dd f2 44 72 61 67 46 69 6e 69 73 68 65 |.`...DragFinishe| 000023b0 64 0d 0e 6a 3a 70 61 74 68 24 3d a4 47 65 74 53 |d..j:path$=.GetS| 000023c0 74 72 69 6e 67 28 53 61 76 65 57 25 2c 31 29 3a |tring(SaveW%,1):| 000023d0 c8 99 22 57 69 6d 70 5f 47 65 74 50 6f 69 6e 74 |.."Wimp_GetPoint| 000023e0 65 72 49 6e 66 6f 22 2c 2c 42 25 0d 0e 74 30 42 |erInfo",,B%..t0B| 000023f0 25 21 32 30 3d 42 25 21 31 32 3a 42 25 21 32 34 |%!20=B%!12:B%!24| 00002400 3d 42 25 21 31 36 3a 42 25 21 32 38 3d 21 42 25 |=B%!16:B%!28=!B%| 00002410 3a 42 25 21 33 32 3d 42 25 21 34 0d 0e 7e 34 42 |:B%!32=B%!4..~4B| 00002420 25 21 33 36 3d 37 31 2b 45 78 74 44 25 3a 21 42 |%!36=71+ExtD%:!B| 00002430 25 3d 36 34 3a 42 25 21 31 32 3d 30 3a 42 25 21 |%=64:B%!12=0:B%!| 00002440 31 36 3d 31 3a 42 25 21 34 30 3d 26 30 30 34 0d |16=1:B%!40=&004.| 00002450 0e 88 1e 24 28 42 25 2b 34 34 29 3d a4 47 65 74 |...$(B%+44)=.Get| 00002460 4c 65 61 66 28 70 61 74 68 24 2c 30 29 0d 0e 92 |Leaf(path$,0)...| 00002470 2a c8 99 22 57 69 6d 70 5f 53 65 6e 64 4d 65 73 |*.."Wimp_SendMes| 00002480 73 61 67 65 22 2c 31 37 2c 42 25 2c 42 25 21 32 |sage",17,B%,B%!2| 00002490 30 2c 42 25 21 32 34 0d 0e 9c 05 e1 0d 0e a6 04 |0,B%!24.........| 000024a0 0d 0e b0 14 dd a4 47 65 74 4c 65 61 66 28 61 24 |......GetLeaf(a$| 000024b0 2c 63 25 29 0d 0e ba 24 c8 95 20 a7 61 24 2c 22 |,c%)...$.. .a$,"| 000024c0 2e 22 29 3a 61 24 3d c1 61 24 2c a7 61 24 2c 22 |."):a$=.a$,.a$,"| 000024d0 2e 22 29 2b 31 29 3a ce 0d 0e c4 0b 3d 61 24 2b |.")+1):.....=a$+| 000024e0 bd 63 25 0d 0e ce 04 0d 0e d8 0e dd f2 44 61 74 |.c%..........Dat| 000024f0 61 53 61 76 65 0d 0e e2 20 f2 55 69 28 53 61 76 |aSave... .Ui(Sav| 00002500 65 57 25 2c 31 2c a4 73 74 72 69 6e 67 28 42 25 |eW%,1,.string(B%| 00002510 2b 34 34 29 29 0d 0e ec 24 f2 73 61 76 65 3a 42 |+44))...$.save:B| 00002520 25 21 31 32 3d 42 25 21 38 3a 42 25 21 31 36 3d |%!12=B%!8:B%!16=| 00002530 33 3a 21 42 25 3d 32 35 36 0d 0e f6 2a c8 99 22 |3:!B%=256...*.."| 00002540 57 69 6d 70 5f 53 65 6e 64 4d 65 73 73 61 67 65 |Wimp_SendMessage| 00002550 22 2c 31 37 2c 42 25 2c 42 25 21 32 30 2c 42 25 |",17,B%,B%!20,B%| 00002560 21 32 34 0d 0f 00 1a c8 99 22 57 69 6d 70 5f 43 |!24......"Wimp_C| 00002570 72 65 61 74 65 4d 65 6e 75 22 2c 2d 31 0d 0f 0a |reateMenu",-1...| 00002580 05 e1 0d 0f 14 04 0d 0f 1e 12 dd a4 73 74 72 69 |............stri| 00002590 6e 67 28 70 74 72 25 29 0d 0f 28 07 ea 61 24 0d |ng(ptr%)..(..a$.| 000025a0 0f 32 26 c8 95 20 3f 70 74 72 25 3c 3e 30 3a 61 |.2&.. ?ptr%<>0:a| 000025b0 24 2b 3d bd 28 3f 70 74 72 25 29 3a 70 74 72 25 |$+=.(?ptr%):ptr%| 000025c0 2b 3d 31 3a ce 0d 0f 3c 07 3d 61 24 0d 0f 46 04 |+=1:...<.=a$..F.| 000025d0 0d 0f 50 0f dd f2 51 75 69 63 6b 53 61 76 65 0d |..P...QuickSave.| 000025e0 0f 5a 22 e7 20 a7 a4 47 65 74 53 74 72 69 6e 67 |.Z". ..GetString| 000025f0 28 53 61 76 65 57 25 2c 31 29 2c 22 2e 22 29 20 |(SaveW%,1),".") | 00002600 8c 0d 0f 64 0a 20 f2 73 61 76 65 0d 0f 6e 40 cc |...d. .save..n@.| 00002610 3a f2 72 65 70 6f 72 74 28 22 54 6f 20 73 61 76 |:.report("To sav| 00002620 65 2c 20 64 72 61 67 20 74 68 65 20 69 63 6f 6e |e, drag the icon| 00002630 20 74 6f 20 61 20 64 69 72 65 63 74 6f 72 79 20 | to a directory | 00002640 76 69 65 77 65 72 22 2c 31 36 29 0d 0f 78 1c cd |viewer",16)..x..| 00002650 3a c8 99 22 57 69 6d 70 5f 43 72 65 61 74 65 4d |:.."Wimp_CreateM| 00002660 65 6e 75 22 2c 2d 31 0d 0f 82 05 e1 0d 0f 8c 04 |enu",-1.........| 00002670 0d 0f 96 17 f4 2d 2d 2d 45 64 69 74 6f 72 20 70 |.....---Editor p| 00002680 72 6f 63 73 2d 2d 2d 0d 0f a0 04 0d 0f aa 11 dd |rocs---.........| 00002690 f2 6c 6f 61 64 28 70 61 74 68 24 29 0d 0f b4 0d |.load(path$)....| 000026a0 ea 74 24 2c 77 25 2c 64 25 0d 0f be 1d f2 55 69 |.t$,w%,d%.....Ui| 000026b0 28 53 61 76 65 57 25 2c 31 2c 22 53 6c 69 63 6b |(SaveW%,1,"Slick| 000026c0 66 69 6c 65 22 29 0d 0f c8 1e 4d 61 73 6b 25 3d |file")....Mask%=| 000026d0 4d 31 25 3a e7 4c 65 61 72 6e 25 f2 6c 65 61 72 |M1%:.Learn%.lear| 000026e0 6e 28 30 29 0d 0f d2 1f e3 6e 25 3d 31 b8 34 3a |n(0).....n%=1.4:| 000026f0 f2 55 69 28 47 57 25 28 6e 25 29 2c 30 2c 22 22 |.Ui(GW%(n%),0,""| 00002700 29 3a ed 0d 0f dc 0f 46 25 3d 8e 28 70 61 74 68 |):.....F%=.(path| 00002710 24 29 0d 0f e6 22 e3 6e 25 3d 30 b8 32 39 3a 43 |$)...".n%=0.29:C| 00002720 25 28 6e 25 29 3d 9a 23 46 25 3a ed 3a 77 25 3d |%(n%)=.#F%:.:w%=| 00002730 9a 23 46 25 0d 0f f0 24 e8 23 46 25 2c 74 24 3a |.#F%...$.#F%,t$:| 00002740 45 78 74 44 25 3d 9a 23 46 25 3a 45 78 74 44 25 |ExtD%=.#F%:ExtD%| 00002750 3d 45 78 74 44 25 2a 32 0d 0f fa 0b e7 45 78 74 |=ExtD%*2.....Ext| 00002760 44 25 8c 0d 10 04 22 20 e3 62 25 3d 30 b8 45 78 |D%...." .b%=0.Ex| 00002770 74 44 25 2d 31 3a 44 65 6d 6f 25 3f 62 25 3d 9a |tD%-1:Demo%?b%=.| 00002780 23 46 25 3a ed 0d 10 0e 05 cd 0d 10 18 1a d9 23 |#F%:...........#| 00002790 46 25 3a f2 55 69 28 47 57 25 28 77 25 29 2c 30 |F%:.Ui(GW%(w%),0| 000027a0 2c 74 24 29 0d 10 22 38 f2 6f 70 65 6e 47 57 28 |,t$).."8.openGW(| 000027b0 77 25 29 3a f2 74 72 61 6e 73 66 65 72 28 32 29 |w%):.transfer(2)| 000027c0 3a 4c 24 3d a4 47 65 74 4c 65 61 66 28 70 61 74 |:L$=.GetLeaf(pat| 000027d0 68 24 2c 33 32 29 3a f2 61 28 30 29 0d 10 2c 05 |h$,32):.a(0)..,.| 000027e0 e1 0d 10 36 04 0d 10 40 12 dd f2 74 72 61 6e 73 |...6...@...trans| 000027f0 66 65 72 28 6d 25 29 0d 10 4a 09 c8 8e 6d 25 ca |fer(m%)..J...m%.| 00002800 0d 10 54 24 20 c9 31 3a e3 6e 25 3d 30 b8 32 39 |..T$ .1:.n%=0.29| 00002810 3a e7 43 31 25 28 6e 25 29 3d 30 43 31 25 28 6e |:.C1%(n%)=0C1%(n| 00002820 25 29 3d 37 0d 10 5e 17 20 20 20 20 20 20 20 ed |%)=7..^. .| 00002830 3a 43 25 28 29 3d 43 31 25 28 29 0d 10 68 2a 20 |:C%()=C1%()..h* | 00002840 20 20 20 20 20 20 e3 6e 25 3d 31 31 b8 31 32 3a | .n%=11.12:| 00002850 f2 53 69 28 47 57 25 28 57 6f 70 65 6e 25 29 2c |.Si(GW%(Wopen%),| 00002860 6e 25 29 3a ed 0d 10 72 2f 20 20 20 20 20 20 20 |n%):...r/ | 00002870 f2 44 6d 28 53 6d 65 6e 75 25 2c 30 29 3a f2 55 |.Dm(Smenu%,0):.U| 00002880 69 28 45 64 69 74 57 25 2c 31 33 2c 22 43 6c 65 |i(EditW%,13,"Cle| 00002890 61 72 22 29 0d 10 7c 28 20 20 20 20 20 20 20 f2 |ar")..|( .| 000028a0 48 69 28 45 64 69 74 57 25 2c 31 34 29 3a f2 4c |Hi(EditW%,14):.L| 000028b0 69 28 45 64 69 74 57 25 2c 31 35 29 0d 10 86 22 |i(EditW%,15)..."| 000028c0 20 c9 32 3a e3 6e 25 3d 30 b8 32 39 3a e7 43 25 | .2:.n%=0.29:.C%| 000028d0 28 6e 25 29 3d 37 43 25 28 6e 25 29 3d 30 0d 10 |(n%)=7C%(n%)=0..| 000028e0 90 17 20 20 20 20 20 20 20 ed 3a 43 31 25 28 29 |.. .:C1%()| 000028f0 3d 43 25 28 29 0d 10 9a 3a 20 20 20 20 20 20 20 |=C%()...: | 00002900 e7 53 68 61 70 65 25 3d 37 f2 65 78 57 28 32 35 |.Shape%=7.exW(25| 00002910 30 29 3a c8 99 22 57 69 6d 70 5f 53 65 74 43 61 |0):.."Wimp_SetCa| 00002920 72 65 74 50 6f 73 69 74 69 6f 6e 22 2c 2d 31 0d |retPosition",-1.| 00002930 10 a4 2d 20 20 20 20 20 20 20 e7 53 68 61 70 65 |..- .Shape| 00002940 25 f2 4c 69 28 45 64 69 74 57 25 2c 53 68 61 70 |%.Li(EditW%,Shap| 00002950 65 25 29 3a 53 68 61 70 65 25 3d 30 0d 10 ae 1f |e%):Shape%=0....| 00002960 20 20 20 20 20 20 20 f2 55 73 69 28 47 57 25 28 | .Usi(GW%(| 00002970 57 6f 70 65 6e 25 29 2c 31 31 29 0d 10 b8 39 20 |Wopen%),11)...9 | 00002980 20 20 20 20 20 20 e7 45 78 74 44 25 f2 55 73 69 | .ExtD%.Usi| 00002990 28 47 57 25 28 57 6f 70 65 6e 25 29 2c 31 32 29 |(GW%(Wopen%),12)| 000029a0 8b f2 53 69 28 47 57 25 28 57 6f 70 65 6e 25 29 |..Si(GW%(Wopen%)| 000029b0 2c 31 32 29 0d 10 c2 2f 20 20 20 20 20 20 20 f2 |,12).../ .| 000029c0 45 6d 28 53 6d 65 6e 75 25 2c 30 29 3a f2 55 69 |Em(Smenu%,0):.Ui| 000029d0 28 45 64 69 74 57 25 2c 31 33 2c 22 4c 65 61 72 |(EditW%,13,"Lear| 000029e0 6e 22 29 0d 10 cc 28 20 20 20 20 20 20 20 f2 48 |n")...( .H| 000029f0 69 28 45 64 69 74 57 25 2c 31 35 29 3a f2 4c 69 |i(EditW%,15):.Li| 00002a00 28 45 64 69 74 57 25 2c 31 34 29 0d 10 d6 05 cb |(EditW%,14).....| 00002a10 0d 10 e0 23 f2 6d 6f 76 65 73 28 30 29 3a f2 66 |...#.moves(0):.f| 00002a20 72 3a 4f 70 6d 6f 64 65 25 3d 6d 25 3a 50 74 72 |r:Opmode%=m%:Ptr| 00002a30 25 3d 30 0d 10 ea 05 e1 0d 10 f4 04 0d 10 fe 10 |%=0.............| 00002a40 dd f2 6f 70 65 6e 47 57 28 69 25 29 0d 11 08 28 |..openGW(i%)...(| 00002a50 f2 55 69 28 45 64 69 74 57 25 2c 31 32 2c a4 47 |.Ui(EditW%,12,.G| 00002a60 65 74 53 74 72 69 6e 67 28 47 57 25 28 69 25 29 |etString(GW%(i%)| 00002a70 2c 30 29 29 0d 11 12 41 c8 99 22 57 69 6d 70 5f |,0))...A.."Wimp_| 00002a80 47 65 74 43 61 72 65 74 50 6f 73 69 74 69 6f 6e |GetCaretPosition| 00002a90 22 2c 2c 42 25 3a e7 21 42 25 3d 45 64 69 74 57 |",,B%:.!B%=EditW| 00002aa0 25 f2 53 65 74 43 61 72 65 74 28 45 64 69 74 57 |%.SetCaret(EditW| 00002ab0 25 2c 31 32 29 0d 11 1c 28 53 70 61 63 65 25 3d |%,12)...(Space%=| 00002ac0 32 32 2d 28 69 25 2a 35 29 3a e7 53 70 61 63 65 |22-(i%*5):.Space| 00002ad0 25 3d 31 37 53 70 61 63 65 25 3d 31 36 0d 11 26 |%=17Space%=16..&| 00002ae0 22 f2 6d 65 74 65 72 3a e7 4d 6f 64 65 4f 6b 25 |".meter:.ModeOk%| 00002af0 f2 4f 70 65 6e 57 28 47 57 25 28 69 25 29 29 0d |.OpenW(GW%(i%)).| 00002b00 11 30 0f e7 69 25 3d 57 6f 70 65 6e 25 e1 0d 11 |.0..i%=Wopen%...| 00002b10 3a 14 f2 48 69 28 45 64 69 74 57 25 2c 69 25 2b |:..Hi(EditW%,i%+| 00002b20 37 29 0d 11 44 0c e7 57 6f 70 65 6e 25 8c 0d 11 |7)..D..Wopen%...| 00002b30 4e 2e 20 f2 43 6c 6f 73 65 57 28 47 57 25 28 57 |N. .CloseW(GW%(W| 00002b40 6f 70 65 6e 25 29 29 3a f2 4c 69 28 45 64 69 74 |open%)):.Li(Edit| 00002b50 57 25 2c 57 6f 70 65 6e 25 2b 37 29 0d 11 58 24 |W%,Wopen%+7)..X$| 00002b60 20 e3 6e 25 3d 31 31 b8 31 32 3a f2 53 69 28 47 | .n%=11.12:.Si(G| 00002b70 57 25 28 57 6f 70 65 6e 25 29 2c 6e 25 29 3a ed |W%(Wopen%),n%):.| 00002b80 0d 11 62 05 cd 0d 11 6c 0d 57 6f 70 65 6e 25 3d |..b....l.Wopen%=| 00002b90 69 25 0d 11 76 0d c8 8e 57 6f 70 65 6e 25 ca 0d |i%..v...Wopen%..| 00002ba0 11 80 24 20 c9 31 3a 57 78 25 3d 34 3a 57 79 25 |..$ .1:Wx%=4:Wy%| 00002bb0 3d 34 3a 59 62 25 3d 2d 34 30 30 3a 58 72 25 3d |=4:Yb%=-400:Xr%=| 00002bc0 34 30 30 0d 11 8a 24 20 c9 32 3a 57 78 25 3d 35 |400...$ .2:Wx%=5| 00002bd0 3a 57 79 25 3d 34 3a 59 62 25 3d 2d 34 30 30 3a |:Wy%=4:Yb%=-400:| 00002be0 58 72 25 3d 34 38 30 0d 11 94 24 20 c9 33 3a 57 |Xr%=480...$ .3:W| 00002bf0 78 25 3d 35 3a 57 79 25 3d 35 3a 59 62 25 3d 2d |x%=5:Wy%=5:Yb%=-| 00002c00 34 38 30 3a 58 72 25 3d 34 38 30 0d 11 9e 24 20 |480:Xr%=480...$ | 00002c10 c9 34 3a 57 78 25 3d 36 3a 57 79 25 3d 35 3a 59 |.4:Wx%=6:Wy%=5:Y| 00002c20 62 25 3d 2d 34 38 30 3a 58 72 25 3d 35 36 30 0d |b%=-480:Xr%=560.| 00002c30 11 a8 05 cb 0d 11 b2 0f 77 69 63 6f 6e 25 21 30 |........wicon%!0| 00002c40 3d 38 30 0d 11 bc 18 77 69 63 6f 6e 25 21 34 3d |=80....wicon%!4=| 00002c50 2d 38 30 2a 28 31 2b 57 79 25 29 0d 11 c6 17 77 |-80*(1+Wy%)....w| 00002c60 69 63 6f 6e 25 21 38 3d 38 30 2a 28 31 2b 57 78 |icon%!8=80*(1+Wx| 00002c70 25 29 0d 11 d0 11 77 69 63 6f 6e 25 21 31 32 3d |%)....wicon%!12=| 00002c80 2d 38 30 0d 11 da 18 77 69 63 6f 6e 25 21 31 36 |-80....wicon%!16| 00002c90 3d 25 31 30 30 30 30 30 30 31 30 0d 11 e4 15 77 |=%100000010....w| 00002ca0 69 63 6f 6e 25 21 32 30 3d 73 63 72 65 65 6e 25 |icon%!20=screen%| 00002cb0 0d 11 ee 14 77 69 63 6f 6e 25 21 32 34 3d 53 61 |....wicon%!24=Sa| 00002cc0 72 65 61 25 0d 11 f8 0f 77 69 63 6f 6e 25 21 32 |rea%....wicon%!2| 00002cd0 38 3d 30 0d 12 02 05 e1 0d 12 0c 04 0d 12 16 0f |8=0.............| 00002ce0 dd f2 73 68 61 70 65 28 73 25 29 0d 12 20 09 c8 |..shape(s%).. ..| 00002cf0 8e 73 25 ca 0d 12 2a 18 20 c9 37 3a e7 57 6f 70 |.s%...*. .7:.Wop| 00002d00 65 6e 25 f2 65 78 57 28 33 36 30 29 0d 12 34 36 |en%.exW(360)..46| 00002d10 20 7f 3a e7 53 68 61 70 65 25 3d 37 f2 65 78 57 | .:.Shape%=7.exW| 00002d20 28 32 35 30 29 3a c8 99 22 57 69 6d 70 5f 53 65 |(250):.."Wimp_Se| 00002d30 74 43 61 72 65 74 50 6f 73 69 74 69 6f 6e 22 2c |tCaretPosition",| 00002d40 2d 31 0d 12 3e 05 cb 0d 12 48 1d e7 53 68 61 70 |-1..>....H..Shap| 00002d50 65 25 f2 4c 69 28 45 64 69 74 57 25 2c 53 68 61 |e%.Li(EditW%,Sha| 00002d60 70 65 25 29 0d 12 52 1c f2 48 69 28 45 64 69 74 |pe%)..R..Hi(Edit| 00002d70 57 25 2c 73 25 29 3a 53 68 61 70 65 25 3d 73 25 |W%,s%):Shape%=s%| 00002d80 0d 12 5c 05 e1 0d 12 66 04 0d 12 70 0d dd f2 65 |..\....f...p...e| 00002d90 78 57 28 68 25 29 0d 12 7a 2a 21 42 25 3d 45 64 |xW(h%)..z*!B%=Ed| 00002da0 69 74 57 25 3a c8 99 22 57 69 6d 70 5f 47 65 74 |itW%:.."Wimp_Get| 00002db0 57 69 6e 64 6f 77 53 74 61 74 65 22 2c 2c 42 25 |WindowState",,B%| 00002dc0 0d 12 84 32 42 25 21 38 3d 42 25 21 31 36 2d 68 |...2B%!8=B%!16-h| 00002dd0 25 3a 42 25 21 32 38 3d 2d 31 3a c8 99 22 57 69 |%:B%!28=-1:.."Wi| 00002de0 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c 2c |mp_OpenWindow",,| 00002df0 42 25 0d 12 8e 05 e1 0d 12 98 04 0d 12 a2 0f dd |B%..............| 00002e00 f2 6c 65 61 72 6e 28 62 25 29 0d 12 ac 1b 45 78 |.learn(b%)....Ex| 00002e10 74 44 25 3d 30 3a f2 55 73 69 28 45 64 69 74 57 |tD%=0:.Usi(EditW| 00002e20 25 2c 31 34 29 0d 12 b6 09 c8 8e 62 25 ca 0d 12 |%,14)......b%...| 00002e30 c0 19 20 c9 30 3a 4c 65 61 72 6e 25 3d 30 3a 21 |.. .0:Learn%=0:!| 00002e40 44 65 6d 6f 25 3d 30 0d 12 ca 2b 20 c9 31 2c 34 |Demo%=0...+ .1,4| 00002e50 3a f2 53 69 28 47 57 25 28 57 6f 70 65 6e 25 29 |:.Si(GW%(Wopen%)| 00002e60 2c 31 32 29 3a f2 44 6d 28 53 6d 65 6e 75 25 2c |,12):.Dm(Smenu%,| 00002e70 30 29 0d 12 d4 34 20 20 20 20 20 20 20 20 20 f2 |0)...4 .| 00002e80 53 69 28 45 64 69 74 57 25 2c 31 34 29 3a f2 4c |Si(EditW%,14):.L| 00002e90 69 28 45 64 69 74 57 25 2c 31 35 29 3a 4c 65 61 |i(EditW%,15):Lea| 00002ea0 72 6e 25 3d 2d 31 0d 12 de 2e 20 20 20 20 20 20 |rn%=-1.... | 00002eb0 20 20 20 e7 62 25 3d 34 21 44 65 6d 6f 25 3d 30 | .b%=4!Demo%=0| 00002ec0 3a f2 72 65 73 65 74 3a e7 41 24 3d 22 22 f2 61 |:.reset:.A$="".a| 00002ed0 28 2d 31 29 0d 12 e8 2d 20 c9 32 3a f2 45 6d 28 |(-1)...- .2:.Em(| 00002ee0 53 6d 65 6e 75 25 2c 30 29 3a f2 48 69 28 45 64 |Smenu%,0):.Hi(Ed| 00002ef0 69 74 57 25 2c 31 35 29 3a 4c 65 61 72 6e 25 3d |itW%,15):Learn%=| 00002f00 30 0d 12 f2 36 20 20 20 20 20 20 20 e7 21 44 65 |0...6 .!De| 00002f10 6d 6f 25 3e 30 f2 55 73 69 28 47 57 25 28 57 6f |mo%>0.Usi(GW%(Wo| 00002f20 70 65 6e 25 29 2c 31 32 29 3a 45 78 74 44 25 3d |pen%),12):ExtD%=| 00002f30 4d 6f 76 65 25 2a 32 0d 12 fc 05 cb 0d 13 06 07 |Move%*2.........| 00002f40 f2 41 69 0d 13 10 05 e1 0d 13 1a 04 0d 13 24 14 |.Ai...........$.| 00002f50 dd f2 70 6c 6f 74 28 62 25 2c 78 25 2c 79 25 29 |..plot(b%,x%,y%)| 00002f60 0d 13 2e 21 ea 63 65 6c 6c 25 2c 73 25 2c 6c 25 |...!.cell%,s%,l%| 00002f70 2c 68 25 3a 6c 25 3d 31 36 30 3a 68 25 3d 31 36 |,h%:l%=160:h%=16| 00002f80 30 0d 13 38 37 78 25 3d 28 78 25 2d 4f 78 25 29 |0..87x%=(x%-Ox%)| 00002f90 81 38 30 3a 79 25 3d 28 4f 79 25 2d 79 25 29 81 |.80:y%=(Oy%-y%).| 00002fa0 38 30 3a 63 65 6c 6c 25 3d 78 25 2d 31 2b 28 28 |80:cell%=x%-1+((| 00002fb0 79 25 2d 31 29 2a 36 29 0d 13 42 09 c8 8e 62 25 |y%-1)*6)..B...b%| 00002fc0 ca 0d 13 4c 15 20 c9 31 3a e7 43 25 28 63 65 6c |...L. .1:.C%(cel| 00002fd0 6c 25 29 3d 37 e1 0d 13 56 43 20 20 20 20 20 20 |l%)=7...VC | 00002fe0 20 e7 43 25 28 63 65 6c 6c 25 29 3e 37 63 65 6c | .C%(cell%)>7cel| 00002ff0 6c 25 3d 43 25 28 63 65 6c 6c 25 29 2d 31 30 3a |l%=C%(cell%)-10:| 00003000 78 25 3d 63 65 6c 6c 25 83 36 2b 31 3a 79 25 3d |x%=cell%.6+1:y%=| 00003010 63 65 6c 6c 25 81 36 2b 31 0d 13 60 23 20 20 20 |cell%.6+1..`# | 00003020 20 20 20 20 73 25 3d 43 25 28 63 65 6c 6c 25 29 | s%=C%(cell%)| 00003030 3a f2 63 28 37 2c 63 65 6c 6c 25 29 0d 13 6a 29 |:.c(7,cell%)..j)| 00003040 20 c9 34 3a e7 ac a4 65 64 67 65 28 78 25 2c 79 | .4:...edge(x%,y| 00003050 25 2c 63 65 6c 6c 25 29 d4 31 2c 2d 31 35 2c 34 |%,cell%).1,-15,4| 00003060 30 2c 32 3a e1 0d 13 74 21 20 20 20 20 20 20 20 |0,2:...t! | 00003070 73 25 3d 53 68 61 70 65 25 3a f2 63 28 73 25 2c |s%=Shape%:.c(s%,| 00003080 63 65 6c 6c 25 29 0d 13 7e 1b cb 3a 78 25 3d 78 |cell%)..~..:x%=x| 00003090 25 2a 38 30 3a 79 25 3d 28 79 25 2b 31 29 2a 38 |%*80:y%=(y%+1)*8| 000030a0 30 0d 13 88 0e e7 73 25 3d 32 6c 25 3d 38 30 0d |0.....s%=2l%=80.| 000030b0 13 92 0e e7 73 25 3d 33 68 25 3d 38 30 0d 13 9c |....s%=3h%=80...| 000030c0 14 e7 73 25 3d 34 6c 25 3d 38 30 3a 68 25 3d 38 |..s%=4l%=80:h%=8| 000030d0 30 0d 13 a6 2c c8 99 26 34 30 30 44 31 2c 47 57 |0...,..&400D1,GW| 000030e0 25 28 57 6f 70 65 6e 25 29 2c 78 25 2c 2d 79 25 |%(Wopen%),x%,-y%| 000030f0 2c 78 25 2b 6c 25 2c 2d 79 25 2b 68 25 0d 13 b0 |,x%+l%,-y%+h%...| 00003100 1f f2 6d 65 74 65 72 3a 45 78 74 44 25 3d 30 3a |..meter:ExtD%=0:| 00003110 e7 41 24 3d 22 22 f2 61 28 2d 31 29 0d 13 ba 05 |.A$="".a(-1)....| 00003120 e1 0d 13 c4 04 0d 13 ce 14 dd a4 65 64 67 65 28 |...........edge(| 00003130 78 25 2c 79 25 2c 63 25 29 0d 13 d8 08 ea 6f 6b |x%,y%,c%).....ok| 00003140 25 0d 13 e2 0d c8 8e 53 68 61 70 65 25 ca 0d 13 |%......Shape%...| 00003150 ec 2b 20 c9 31 2c 35 2c 36 3a e7 78 25 3e 30 e7 |.+ .1,5,6:.x%>0.| 00003160 78 25 3c 57 78 25 e7 79 25 3e 31 e7 79 25 3c 3d |x%<Wx%.y%>1.y%<=| 00003170 57 79 25 6f 6b 25 3d 2d 31 0d 13 f6 28 20 c9 32 |Wy%ok%=-1...( .2| 00003180 3a e7 78 25 3e 30 e7 78 25 3c 3d 57 78 25 e7 79 |:.x%>0.x%<=Wx%.y| 00003190 25 3e 31 e7 79 25 3c 3d 57 79 25 6f 6b 25 3d 2d |%>1.y%<=Wy%ok%=-| 000031a0 31 0d 14 00 28 20 c9 33 3a e7 78 25 3e 30 e7 78 |1...( .3:.x%>0.x| 000031b0 25 3c 57 78 25 e7 79 25 3e 3d 31 e7 79 25 3c 3d |%<Wx%.y%>=1.y%<=| 000031c0 57 79 25 6f 6b 25 3d 2d 31 0d 14 0a 29 20 c9 34 |Wy%ok%=-1...) .4| 000031d0 3a e7 78 25 3e 30 e7 78 25 3c 3d 57 78 25 e7 79 |:.x%>0.x%<=Wx%.y| 000031e0 25 3e 3d 31 e7 79 25 3c 3d 57 79 25 6f 6b 25 3d |%>=1.y%<=Wy%ok%=| 000031f0 2d 31 0d 14 14 05 cb 0d 14 1e 16 e7 6f 6b 25 8c |-1..........ok%.| 00003200 3d a4 66 69 74 28 63 25 29 20 8b 3d 30 0d 14 28 |=.fit(c%) .=0..(| 00003210 04 0d 14 32 0d dd a4 66 69 74 28 63 25 29 0d 14 |...2...fit(c%)..| 00003220 3c 08 ea 6f 6b 25 0d 14 46 0d c8 8e 53 68 61 70 |<..ok%..F...Shap| 00003230 65 25 ca 0d 14 50 38 20 c9 31 3a e7 43 25 28 63 |e%...P8 .1:.C%(c| 00003240 25 29 3d 37 e7 43 25 28 63 25 2d 36 29 3d 37 e7 |%)=7.C%(c%-6)=7.| 00003250 43 25 28 63 25 2d 35 29 3d 37 e7 43 25 28 63 25 |C%(c%-5)=7.C%(c%| 00003260 2b 31 29 3d 37 6f 6b 25 3d 2d 31 0d 14 5a 22 20 |+1)=7ok%=-1..Z" | 00003270 c9 32 3a e7 43 25 28 63 25 29 3d 37 e7 43 25 28 |.2:.C%(c%)=7.C%(| 00003280 63 25 2d 36 29 3d 37 6f 6b 25 3d 2d 31 0d 14 64 |c%-6)=7ok%=-1..d| 00003290 22 20 c9 33 3a e7 43 25 28 63 25 29 3d 37 e7 43 |" .3:.C%(c%)=7.C| 000032a0 25 28 63 25 2b 31 29 3d 37 6f 6b 25 3d 2d 31 0d |%(c%+1)=7ok%=-1.| 000032b0 14 6e 17 20 c9 34 3a e7 43 25 28 63 25 29 3d 37 |.n. .4:.C%(c%)=7| 000032c0 6f 6b 25 3d 2d 31 0d 14 78 2d 20 c9 35 3a e7 43 |ok%=-1..x- .5:.C| 000032d0 25 28 63 25 29 3d 37 e7 43 25 28 63 25 2d 36 29 |%(c%)=7.C%(c%-6)| 000032e0 3d 37 e7 43 25 28 63 25 2d 35 29 3d 37 6f 6b 25 |=7.C%(c%-5)=7ok%| 000032f0 3d 2d 31 0d 14 82 2d 20 c9 36 3a e7 43 25 28 63 |=-1...- .6:.C%(c| 00003300 25 29 3d 37 e7 43 25 28 63 25 2d 35 29 3d 37 e7 |%)=7.C%(c%-5)=7.| 00003310 43 25 28 63 25 2b 31 29 3d 37 6f 6b 25 3d 2d 31 |C%(c%+1)=7ok%=-1| 00003320 0d 14 8c 05 cb 0d 14 96 08 3d 6f 6b 25 0d 14 a0 |.........=ok%...| 00003330 04 0d 14 aa 0b dd f2 6d 65 74 65 72 0d 14 b4 16 |.......meter....| 00003340 ea 6e 25 2c 63 25 2c 78 31 25 2c 78 32 25 2c 78 |.n%,c%,x1%,x2%,x| 00003350 33 25 0d 14 be 1b e3 6e 25 3d 30 b8 32 39 3a e7 |3%.....n%=0.29:.| 00003360 43 25 28 6e 25 29 3d 37 63 25 2b 3d 31 0d 14 c8 |C%(n%)=7c%+=1...| 00003370 2e ed 3a e7 63 25 3d 53 70 61 63 65 25 f2 55 73 |..:.c%=Space%.Us| 00003380 69 28 45 64 69 74 57 25 2c 31 35 29 8b f2 53 69 |i(EditW%,15)..Si| 00003390 28 45 64 69 74 57 25 2c 31 35 29 0d 14 d2 2d e3 |(EditW%,15)...-.| 000033a0 6e 25 3d 35 b8 32 39 88 36 3a e7 43 25 28 6e 25 |n%=5.29.6:.C%(n%| 000033b0 29 3c 3e 37 78 31 25 3d 2d 31 3a 78 32 25 3d 2d |)<>7x1%=-1:x2%=-| 000033c0 31 3a 78 33 25 3d 2d 31 0d 14 dc 21 ed 3a e3 6e |1:x3%=-1...!.:.n| 000033d0 25 3d 34 b8 32 32 88 36 3a e7 43 25 28 6e 25 29 |%=4.22.6:.C%(n%)| 000033e0 3c 3e 37 78 31 25 3d 2d 31 0d 14 e6 27 ed 3a e3 |<>7x1%=-1...'.:.| 000033f0 6e 25 3d 32 34 b8 32 38 3a e7 43 25 28 6e 25 29 |n%=24.28:.C%(n%)| 00003400 3c 3e 37 78 31 25 3d 2d 31 3a 78 32 25 3d 2d 31 |<>7x1%=-1:x2%=-1| 00003410 0d 14 f0 26 ed 3a e7 78 31 25 f2 53 69 28 45 64 |...&.:.x1%.Si(Ed| 00003420 69 74 57 25 2c 38 29 8b f2 55 73 69 28 45 64 69 |itW%,8)..Usi(Edi| 00003430 74 57 25 2c 38 29 0d 14 fa 24 e7 78 32 25 f2 53 |tW%,8)...$.x2%.S| 00003440 69 28 45 64 69 74 57 25 2c 39 29 8b f2 55 73 69 |i(EditW%,9)..Usi| 00003450 28 45 64 69 74 57 25 2c 39 29 0d 15 04 26 e7 78 |(EditW%,9)...&.x| 00003460 33 25 f2 53 69 28 45 64 69 74 57 25 2c 31 30 29 |3%.Si(EditW%,10)| 00003470 8b f2 55 73 69 28 45 64 69 74 57 25 2c 31 30 29 |..Usi(EditW%,10)| 00003480 0d 15 0e 05 e1 0d 15 18 04 0d 15 22 0e dd f2 63 |..........."...c| 00003490 28 73 25 2c 63 25 29 0d 15 2c 09 c8 8e 73 25 ca |(s%,c%)..,...s%.| 000034a0 0d 15 36 1f 20 c9 30 3a 73 25 3d 43 25 28 63 25 |..6. .0:s%=C%(c%| 000034b0 29 3a 43 25 28 63 25 29 3d 30 3a 6e 25 3d 30 0d |):C%(c%)=0:n%=0.| 000034c0 15 40 1f 20 c9 37 3a 73 25 3d 43 25 28 63 25 29 |.@. .7:s%=C%(c%)| 000034d0 3a 43 25 28 63 25 29 3d 37 3a 6e 25 3d 37 0d 15 |:C%(c%)=7:n%=7..| 000034e0 4a 19 20 7f 3a 43 25 28 63 25 29 3d 73 25 3a 6e |J. .:C%(c%)=s%:n| 000034f0 25 3d 63 25 2b 31 30 0d 15 54 05 cb 0d 15 5e 09 |%=c%+10..T....^.| 00003500 c8 8e 73 25 ca 0d 15 68 2b 20 c9 31 3a 43 25 28 |..s%...h+ .1:C%(| 00003510 63 25 2d 36 29 3d 6e 25 3a 43 25 28 63 25 2d 35 |c%-6)=n%:C%(c%-5| 00003520 29 3d 6e 25 3a 43 25 28 63 25 2b 31 29 3d 6e 25 |)=n%:C%(c%+1)=n%| 00003530 0d 15 72 13 20 c9 32 3a 43 25 28 63 25 2d 36 29 |..r. .2:C%(c%-6)| 00003540 3d 6e 25 0d 15 7c 13 20 c9 33 3a 43 25 28 63 25 |=n%..|. .3:C%(c%| 00003550 2b 31 29 3d 6e 25 0d 15 86 1f 20 c9 35 3a 43 25 |+1)=n%.... .5:C%| 00003560 28 63 25 2d 36 29 3d 6e 25 3a 43 25 28 63 25 2d |(c%-6)=n%:C%(c%-| 00003570 35 29 3d 6e 25 0d 15 90 1f 20 c9 36 3a 43 25 28 |5)=n%.... .6:C%(| 00003580 63 25 2d 35 29 3d 6e 25 3a 43 25 28 63 25 2b 31 |c%-5)=n%:C%(c%+1| 00003590 29 3d 6e 25 0d 15 9a 05 cb 0d 15 a4 05 e1 0d 15 |)=n%............| 000035a0 ae 04 0d 15 b8 0b dd f2 63 6c 65 61 72 0d 15 c2 |........clear...| 000035b0 15 43 25 28 29 3d 37 3a f2 6d 65 74 65 72 3a f2 |.C%()=7:.meter:.| 000035c0 66 72 0d 15 cc 1f e3 6e 25 3d 31 b8 34 3a f2 55 |fr.....n%=1.4:.U| 000035d0 69 28 47 57 25 28 6e 25 29 2c 30 2c 22 22 29 3a |i(GW%(n%),0,""):| 000035e0 ed 0d 15 d6 3b f2 55 69 28 45 64 69 74 57 25 2c |....;.Ui(EditW%,| 000035f0 31 32 2c 22 22 29 3a f2 55 69 28 53 61 76 65 57 |12,""):.Ui(SaveW| 00003600 25 2c 31 2c 22 53 6c 69 63 6b 66 69 6c 65 22 29 |%,1,"Slickfile")| 00003610 3a 4c 24 3d 22 22 3a f2 61 28 30 29 0d 15 e0 05 |:L$="":.a(0)....| 00003620 e1 0d 15 ea 04 0d 15 f4 08 dd f2 66 72 0d 15 fe |...........fr...| 00003630 27 c8 99 26 34 30 30 44 31 2c 47 57 25 28 57 6f |'..&400D1,GW%(Wo| 00003640 70 65 6e 25 29 2c 38 30 2c 59 62 25 2c 58 72 25 |pen%),80,Yb%,Xr%| 00003650 2c 2d 38 30 0d 16 08 05 e1 0d 16 12 04 0d 16 1c |,-80............| 00003660 0e dd f2 61 28 64 61 74 61 25 29 0d 16 26 07 ea |...a(data%)..&..| 00003670 6e 25 0d 16 30 0c c8 8e 64 61 74 61 25 ca 0d 16 |n%..0...data%...| 00003680 3a 10 20 c9 20 b9 20 3a 41 24 3d 22 2a 22 0d 16 |:. . . :A$="*"..| 00003690 44 0e 20 c9 20 a3 3a 41 24 3d 22 22 0d 16 4e 05 |D. . .:A$=""..N.| 000036a0 cb 0d 16 58 09 c8 8e 4c 24 ca 0d 16 62 2f 20 c9 |...X...L$...b/ .| 000036b0 22 22 3a e3 6e 25 3d 31 b8 34 3a f2 74 69 74 6c |"":.n%=1.4:.titl| 000036c0 65 28 47 57 25 28 6e 25 29 2c a4 64 65 66 61 75 |e(GW%(n%),.defau| 000036d0 6c 74 28 6e 25 29 29 3a ed 0d 16 6c 26 20 7f 3a |lt(n%)):...l& .:| 000036e0 e3 6e 25 3d 31 b8 34 3a f2 74 69 74 6c 65 28 47 |.n%=1.4:.title(G| 000036f0 57 25 28 6e 25 29 2c 4c 24 2b 41 24 29 3a ed 0d |W%(n%),L$+A$):..| 00003700 16 76 05 cb 0d 16 80 05 e1 0d 16 8a 04 0d 16 94 |.v..............| 00003710 11 dd a4 64 65 66 61 75 6c 74 28 6e 25 29 0d 16 |...default(n%)..| 00003720 9e 09 c8 8e 6e 25 ca 0d 16 a8 11 20 c9 31 3a 74 |....n%..... .1:t| 00003730 24 3d 22 34 78 34 20 22 0d 16 b2 11 20 c9 32 3a |$="4x4 ".... .2:| 00003740 74 24 3d 22 35 78 34 20 22 0d 16 bc 11 20 c9 33 |t$="5x4 ".... .3| 00003750 3a 74 24 3d 22 35 78 35 20 22 0d 16 c6 11 20 c9 |:t$="5x5 ".... .| 00003760 34 3a 74 24 3d 22 36 78 35 20 22 0d 16 d0 05 cb |4:t$="6x5 ".....| 00003770 0d 16 da 0a 3d 74 24 2b 41 24 0d 16 e4 04 0d 16 |....=t$+A$......| 00003780 ee 0f dd a4 6f 6b 28 66 72 6f 6d 25 29 0d 16 f8 |....ok(from%)...| 00003790 28 ea 6f 6b 25 2c 6d 24 3a 6d 24 3d 22 59 6f 75 |(.ok%,m$:m$="You| 000037a0 20 68 61 76 65 20 75 6e 73 61 76 65 64 20 64 61 | have unsaved da| 000037b0 74 61 2c 20 22 0d 17 02 0a c8 8e a9 41 24 ca 0d |ta, ".......A$..| 000037c0 17 0c 0d 20 c9 30 3a 6f 6b 25 3d b9 0d 17 16 10 |... .0:ok%=.....| 000037d0 20 c9 31 3a c8 8e 66 72 6f 6d 25 ca 0d 17 20 39 | .1:..from%... 9| 000037e0 20 20 20 20 20 20 20 c9 31 3a f2 72 65 70 6f 72 | .1:.repor| 000037f0 74 28 6d 24 2b 22 64 6f 20 79 6f 75 20 73 74 69 |t(m$+"do you sti| 00003800 6c 6c 20 77 61 6e 74 20 74 6f 20 51 75 69 74 3f |ll want to Quit?| 00003810 22 2c 31 39 29 0d 17 2a 20 20 20 20 20 20 20 20 |",19)..* | 00003820 20 20 20 20 20 20 e7 53 65 6c 65 63 74 25 3d 31 | .Select%=1| 00003830 6f 6b 25 3d b9 0d 17 34 31 20 20 20 20 20 20 20 |ok%=...41 | 00003840 c9 32 3a f2 72 65 70 6f 72 74 28 6d 24 2b 22 70 |.2:.report(m$+"p| 00003850 72 6f 63 65 65 64 20 77 69 74 68 20 6c 6f 61 64 |roceed with load| 00003860 3f 22 2c 31 39 29 0d 17 3e 20 20 20 20 20 20 20 |?",19)..> | 00003870 20 20 20 20 20 20 20 e7 53 65 6c 65 63 74 25 3d | .Select%=| 00003880 31 6f 6b 25 3d b9 0d 17 48 0c 20 20 20 20 20 20 |1ok%=...H. | 00003890 20 cb 0d 17 52 05 cb 0d 17 5c 08 3d 6f 6b 25 0d | ...R....\.=ok%.| 000038a0 17 66 04 0d 17 70 15 f4 2d 2d 2d 47 61 6d 65 20 |.f...p..---Game | 000038b0 70 72 6f 63 73 2d 2d 2d 0d 17 7a 04 0d 17 84 16 |procs---..z.....| 000038c0 dd f2 73 65 6c 65 63 74 28 62 25 2c 78 25 2c 79 |..select(b%,x%,y| 000038d0 25 29 0d 17 8e 0f ea 73 24 2c 78 31 25 2c 79 31 |%).....s$,x1%,y1| 000038e0 25 0d 17 98 28 4d 25 3d 30 3a 78 31 25 3d 28 78 |%...(M%=0:x1%=(x| 000038f0 25 2d 4f 78 25 29 81 38 30 3a 79 31 25 3d 28 4f |%-Ox%).80:y1%=(O| 00003900 79 25 2d 79 25 29 81 38 30 0d 17 a2 3a 63 65 6c |y%-y%).80...:cel| 00003910 6c 25 3d 78 31 25 2d 31 2b 28 28 79 31 25 2d 31 |l%=x1%-1+((y1%-1| 00003920 29 2a 36 29 3a e7 43 25 28 63 65 6c 6c 25 29 3e |)*6):.C%(cell%)>| 00003930 37 63 65 6c 6c 25 3d 43 25 28 63 65 6c 6c 25 29 |7cell%=C%(cell%)| 00003940 2d 31 30 0d 17 ac 44 50 69 65 63 65 25 3d 43 25 |-10...DPiece%=C%| 00003950 28 63 65 6c 6c 25 29 3a 78 25 3d 63 65 6c 6c 25 |(cell%):x%=cell%| 00003960 83 36 2b 31 3a 79 25 3d 63 65 6c 6c 25 81 36 2b |.6+1:y%=cell%.6+| 00003970 31 3a 58 25 3d 78 25 2a 38 30 3a 59 25 3d 28 79 |1:X%=x%*80:Y%=(y| 00003980 25 2b 31 29 2a 38 30 0d 17 b6 0d c8 8e 50 69 65 |%+1)*80......Pie| 00003990 63 65 25 ca 0d 17 c0 11 20 c9 31 3a 73 24 3d 22 |ce%..... .1:s$="| 000039a0 45 4b 4c 4a 22 0d 17 ca 22 20 c9 32 3a e7 79 31 |EKLJ"..." .2:.y1| 000039b0 25 3c 79 25 73 24 3d 22 45 46 47 44 22 8b 73 24 |%<y%s$="EFGD".s$| 000039c0 3d 22 45 46 44 47 22 0d 17 d4 22 20 c9 33 3a e7 |="EFDG"..." .3:.| 000039d0 78 31 25 3e 78 25 73 24 3d 22 48 41 49 4a 22 8b |x1%>x%s$="HAIJ".| 000039e0 73 24 3d 22 41 48 49 4a 22 0d 17 de 20 20 c9 34 |s$="AHIJ"... .4| 000039f0 3a e7 62 25 3d 31 73 24 3d 22 41 42 43 44 22 8b |:.b%=1s$="ABCD".| 00003a00 73 24 3d 22 43 44 41 42 22 0d 17 e8 11 20 c9 35 |s$="CDAB".... .5| 00003a10 3a 73 24 3d 22 45 4d 4c 4e 22 0d 17 f2 11 20 c9 |:s$="EMLN".... .| 00003a20 36 3a 73 24 3d 22 4f 4b 50 4a 22 0d 17 fc 05 cb |6:s$="OKPJ".....| 00003a30 0d 18 06 24 43 65 6c 6c 25 3d 63 65 6c 6c 25 3a |...$Cell%=cell%:| 00003a40 f2 73 65 71 28 73 24 2c 63 65 6c 6c 25 2c 78 25 |.seq(s$,cell%,x%| 00003a50 2c 79 25 29 0d 18 10 1f 50 74 72 25 3d 30 3a e7 |,y%)....Ptr%=0:.| 00003a60 4c 65 61 72 6e 25 3a e7 41 24 3d 22 22 f2 61 28 |Learn%:.A$="".a(| 00003a70 2d 31 29 0d 18 1a 05 e1 0d 18 24 04 0d 18 2e 16 |-1).......$.....| 00003a80 dd f2 73 65 71 28 73 24 2c 63 25 2c 78 25 2c 79 |..seq(s$,c%,x%,y| 00003a90 25 29 0d 18 38 0d ea 73 25 2c 6e 25 2c 6d 25 0d |%)..8..s%,n%,m%.| 00003aa0 18 42 16 e3 73 25 3d 31 b8 34 3a 6e 25 3d 30 3a |.B..s%=1.4:n%=0:| 00003ab0 e7 ac 4d 25 8c 0d 18 4c 11 20 c8 8e c1 73 24 2c |..M%...L. ...s$,| 00003ac0 73 25 2c 31 29 ca 0d 18 56 1e 20 20 c9 22 41 22 |s%,1)...V. ."A"| 00003ad0 3a e7 78 25 3e 31 6e 25 3d 31 3a e7 78 25 3e 32 |:.x%>1n%=1:.x%>2| 00003ae0 6e 25 3d 32 0d 18 60 35 20 20 20 20 20 20 20 20 |n%=2..`5 | 00003af0 20 20 e7 6e 25 e7 43 25 28 63 25 2d 31 29 3d 30 | .n%.C%(c%-1)=0| 00003b00 6d 25 3d 31 3a e7 6e 25 3d 32 e7 43 25 28 63 25 |m%=1:.n%=2.C%(c%| 00003b10 2d 32 29 3d 30 6d 25 3d 32 0d 18 6a 1d 20 20 20 |-2)=0m%=2..j. | 00003b20 20 20 20 20 20 20 20 e7 6d 25 f2 6d 6f 76 65 28 | .m%.move(| 00003b30 32 2c 2d 6d 25 29 0d 18 74 24 20 20 c9 22 42 22 |2,-m%)..t$ ."B"| 00003b40 3a e7 78 25 3c 57 78 25 6e 25 3d 31 3a e7 78 25 |:.x%<Wx%n%=1:.x%| 00003b50 3c 57 78 25 2d 31 6e 25 3d 32 0d 18 7e 35 20 20 |<Wx%-1n%=2..~5 | 00003b60 20 20 20 20 20 20 20 20 e7 6e 25 e7 43 25 28 63 | .n%.C%(c| 00003b70 25 2b 31 29 3d 30 6d 25 3d 31 3a e7 6e 25 3d 32 |%+1)=0m%=1:.n%=2| 00003b80 e7 43 25 28 63 25 2b 32 29 3d 30 6d 25 3d 32 0d |.C%(c%+2)=0m%=2.| 00003b90 18 88 1c 20 20 20 20 20 20 20 20 20 20 e7 6d 25 |... .m%| 00003ba0 f2 6d 6f 76 65 28 32 2c 6d 25 29 0d 18 92 1e 20 |.move(2,m%).... | 00003bb0 20 c9 22 43 22 3a e7 79 25 3e 31 6e 25 3d 31 3a | ."C":.y%>1n%=1:| 00003bc0 e7 79 25 3e 32 6e 25 3d 32 0d 18 9c 36 20 20 20 |.y%>2n%=2...6 | 00003bd0 20 20 20 20 20 20 20 e7 6e 25 e7 43 25 28 63 25 | .n%.C%(c%| 00003be0 2d 36 29 3d 30 6d 25 3d 31 3a e7 6e 25 3d 32 e7 |-6)=0m%=1:.n%=2.| 00003bf0 43 25 28 63 25 2d 31 32 29 3d 30 6d 25 3d 32 0d |C%(c%-12)=0m%=2.| 00003c00 18 a6 1d 20 20 20 20 20 20 20 20 20 20 e7 6d 25 |... .m%| 00003c10 f2 6d 6f 76 65 28 31 2c 2d 6d 25 29 0d 18 b0 24 |.move(1,-m%)...$| 00003c20 20 20 c9 22 44 22 3a e7 79 25 3c 57 79 25 6e 25 | ."D":.y%<Wy%n%| 00003c30 3d 31 3a e7 79 25 3c 57 79 25 2d 31 6e 25 3d 32 |=1:.y%<Wy%-1n%=2| 00003c40 0d 18 ba 36 20 20 20 20 20 20 20 20 20 20 e7 6e |...6 .n| 00003c50 25 e7 43 25 28 63 25 2b 36 29 3d 30 6d 25 3d 31 |%.C%(c%+6)=0m%=1| 00003c60 3a e7 6e 25 3d 32 e7 43 25 28 63 25 2b 31 32 29 |:.n%=2.C%(c%+12)| 00003c70 3d 30 6d 25 3d 32 0d 18 c4 1c 20 20 20 20 20 20 |=0m%=2.... | 00003c80 20 20 20 20 e7 6d 25 f2 6d 6f 76 65 28 31 2c 6d | .m%.move(1,m| 00003c90 25 29 0d 18 ce 31 20 20 c9 22 45 22 3a e7 78 25 |%)...1 ."E":.x%| 00003ca0 3e 31 e7 43 25 28 63 25 2d 31 29 3d 30 e7 43 25 |>1.C%(c%-1)=0.C%| 00003cb0 28 63 25 2d 37 29 3d 30 f2 6d 6f 76 65 28 32 2c |(c%-7)=0.move(2,| 00003cc0 2d 31 29 0d 18 d8 32 20 20 c9 22 46 22 3a e7 78 |-1)...2 ."F":.x| 00003cd0 25 3c 57 78 25 e7 43 25 28 63 25 2b 31 29 3d 30 |%<Wx%.C%(c%+1)=0| 00003ce0 e7 43 25 28 63 25 2d 35 29 3d 30 f2 6d 6f 76 65 |.C%(c%-5)=0.move| 00003cf0 28 32 2c 31 29 0d 18 e2 41 20 20 c9 22 47 22 3a |(2,1)...A ."G":| 00003d00 e7 79 25 3e 32 6e 25 3d 79 25 81 32 3a e7 6e 25 |.y%>2n%=y%.2:.n%| 00003d10 e7 43 25 28 63 25 2d 31 32 29 3d 30 6d 25 3d 31 |.C%(c%-12)=0m%=1| 00003d20 3a e7 6e 25 3d 32 e7 43 25 28 63 25 2d 31 38 29 |:.n%=2.C%(c%-18)| 00003d30 3d 30 6d 25 3d 32 0d 18 ec 1d 20 20 20 20 20 20 |=0m%=2.... | 00003d40 20 20 20 20 e7 6d 25 f2 6d 6f 76 65 28 31 2c 2d | .m%.move(1,-| 00003d50 6d 25 29 0d 18 f6 26 20 20 c9 22 48 22 3a e7 78 |m%)...& ."H":.x| 00003d60 25 3c 57 78 25 2d 31 6e 25 3d 31 3a e7 78 25 3c |%<Wx%-1n%=1:.x%<| 00003d70 57 78 25 2d 32 6e 25 3d 32 0d 19 00 35 20 20 20 |Wx%-2n%=2...5 | 00003d80 20 20 20 20 20 20 20 e7 6e 25 e7 43 25 28 63 25 | .n%.C%(c%| 00003d90 2b 32 29 3d 30 6d 25 3d 31 3a e7 6e 25 3d 32 e7 |+2)=0m%=1:.n%=2.| 00003da0 43 25 28 63 25 2b 33 29 3d 30 6d 25 3d 32 0d 19 |C%(c%+3)=0m%=2..| 00003db0 0a 1c 20 20 20 20 20 20 20 20 20 20 e7 6d 25 f2 |.. .m%.| 00003dc0 6d 6f 76 65 28 32 2c 6d 25 29 0d 19 14 31 20 20 |move(2,m%)...1 | 00003dd0 c9 22 49 22 3a e7 79 25 3e 31 e7 43 25 28 63 25 |."I":.y%>1.C%(c%| 00003de0 2d 36 29 3d 30 e7 43 25 28 63 25 2d 35 29 3d 30 |-6)=0.C%(c%-5)=0| 00003df0 f2 6d 6f 76 65 28 31 2c 2d 31 29 0d 19 1e 32 20 |.move(1,-1)...2 | 00003e00 20 c9 22 4a 22 3a e7 79 25 3c 57 79 25 e7 43 25 | ."J":.y%<Wy%.C%| 00003e10 28 63 25 2b 36 29 3d 30 e7 43 25 28 63 25 2b 37 |(c%+6)=0.C%(c%+7| 00003e20 29 3d 30 f2 6d 6f 76 65 28 31 2c 31 29 0d 19 28 |)=0.move(1,1)..(| 00003e30 34 20 20 c9 22 4b 22 3a e7 78 25 3c 57 78 25 2d |4 ."K":.x%<Wx%-| 00003e40 31 e7 43 25 28 63 25 2b 32 29 3d 30 e7 43 25 28 |1.C%(c%+2)=0.C%(| 00003e50 63 25 2d 34 29 3d 30 f2 6d 6f 76 65 28 32 2c 31 |c%-4)=0.move(2,1| 00003e60 29 0d 19 32 33 20 20 c9 22 4c 22 3a e7 79 25 3e |)..23 ."L":.y%>| 00003e70 32 e7 43 25 28 63 25 2d 31 32 29 3d 30 e7 43 25 |2.C%(c%-12)=0.C%| 00003e80 28 63 25 2d 31 31 29 3d 30 f2 6d 6f 76 65 28 31 |(c%-11)=0.move(1| 00003e90 2c 2d 31 29 0d 19 3c 34 20 20 c9 22 4d 22 3a e7 |,-1)..<4 ."M":.| 00003ea0 78 25 3c 57 78 25 2d 31 e7 43 25 28 63 25 2b 31 |x%<Wx%-1.C%(c%+1| 00003eb0 29 3d 30 e7 43 25 28 63 25 2d 34 29 3d 30 f2 6d |)=0.C%(c%-4)=0.m| 00003ec0 6f 76 65 28 32 2c 31 29 0d 19 46 32 20 20 c9 22 |ove(2,1)..F2 ."| 00003ed0 4e 22 3a e7 79 25 3c 57 79 25 e7 43 25 28 63 25 |N":.y%<Wy%.C%(c%| 00003ee0 2b 36 29 3d 30 e7 43 25 28 63 25 2b 31 29 3d 30 |+6)=0.C%(c%+1)=0| 00003ef0 f2 6d 6f 76 65 28 31 2c 31 29 0d 19 50 31 20 20 |.move(1,1)..P1 | 00003f00 c9 22 4f 22 3a e7 78 25 3e 31 e7 43 25 28 63 25 |."O":.x%>1.C%(c%| 00003f10 2d 31 29 3d 30 e7 43 25 28 63 25 2d 36 29 3d 30 |-1)=0.C%(c%-6)=0| 00003f20 f2 6d 6f 76 65 28 32 2c 2d 31 29 0d 19 5a 32 20 |.move(2,-1)..Z2 | 00003f30 20 c9 22 50 22 3a e7 79 25 3e 32 e7 43 25 28 63 | ."P":.y%>2.C%(c| 00003f40 25 2d 36 29 3d 30 e7 43 25 28 63 25 2d 31 31 29 |%-6)=0.C%(c%-11)| 00003f50 3d 30 f2 6d 6f 76 65 28 31 2c 2d 31 29 0d 19 64 |=0.move(1,-1)..d| 00003f60 06 20 cb 0d 19 6e 07 cd 3a ed 0d 19 78 05 e1 0d |. ...n..:...x...| 00003f70 19 82 04 0d 19 8c 11 dd f2 6d 6f 76 65 28 61 25 |.........move(a%| 00003f80 2c 64 25 29 0d 19 96 0a ea 73 25 2c 69 25 0d 19 |,d%).....s%,i%..| 00003f90 a0 23 73 25 3d b4 28 64 25 29 2a 31 30 3a e7 20 |.#s%=.(d%)*10:. | 00003fa0 4d 61 73 6b 25 3d 4d 30 25 20 73 25 3d 73 25 2a |Mask%=M0% s%=s%*| 00003fb0 32 0d 19 aa 04 0d 19 b4 0b 4f 78 25 3d 2d 38 30 |2........Ox%=-80| 00003fc0 0d 19 be 12 4f 79 25 3d 28 57 79 25 2b 31 29 2a |....Oy%=(Wy%+1)*| 00003fd0 38 30 0d 19 c8 04 0d 19 d2 0e f2 74 6f 5f 73 70 |80.........to_sp| 00003fe0 72 69 74 65 0d 19 dc 3b c8 99 26 32 45 2c 33 34 |rite...;..&2E,34| 00003ff0 2b 35 31 32 2c 53 61 72 65 61 25 2c 53 25 28 50 |+512,Sarea%,S%(P| 00004000 69 65 63 65 25 29 2c 4f 78 25 2b 58 25 2c 4f 79 |iece%),Ox%+X%,Oy| 00004010 25 2d 59 25 2c 33 2c 73 63 61 6c 65 25 2c 30 0d |%-Y%,3,scale%,0.| 00004020 19 fa 09 c8 8e 61 25 ca 0d 1a 04 1e 20 20 c9 31 |.....a%..... .1| 00004030 3a 69 25 3d 59 25 2b 28 64 25 2a 38 30 2d 34 2a |:i%=Y%+(d%*80-4*| 00004040 b4 28 64 25 29 29 0d 1a 0e 18 20 20 20 20 20 20 |.(d%)).... | 00004050 20 20 e3 7a 25 3d 59 25 b8 69 25 88 73 25 0d 1a | .z%=Y%.i%.s%..| 00004060 22 44 20 20 20 20 20 20 20 20 20 c8 99 26 32 45 |"D ..&2E| 00004070 2c 33 34 2b 35 31 32 2c 53 61 72 65 61 25 2c 53 |,34+512,Sarea%,S| 00004080 25 28 50 69 65 63 65 25 29 2c 4f 78 25 2b 58 25 |%(Piece%),Ox%+X%| 00004090 2c 4f 79 25 2d 7a 25 2c 33 2c 73 63 61 6c 65 25 |,Oy%-z%,3,scale%| 000040a0 2c 30 0d 1a 36 0f 20 20 20 20 20 20 20 20 20 c8 |,0..6. .| 000040b0 96 0d 1a 40 14 20 20 20 20 20 20 20 20 20 f2 75 |...@. .u| 000040c0 70 64 61 74 65 0d 1a 4a 17 20 20 20 20 20 20 20 |pdate..J. | 000040d0 20 20 f2 74 6f 5f 73 70 72 69 74 65 0d 1a 54 44 | .to_sprite..TD| 000040e0 20 20 20 20 20 20 20 20 20 c8 99 26 32 45 2c 33 | ..&2E,3| 000040f0 34 2b 35 31 32 2c 53 61 72 65 61 25 2c 53 25 28 |4+512,Sarea%,S%(| 00004100 50 69 65 63 65 25 29 2c 4f 78 25 2b 58 25 2c 4f |Piece%),Ox%+X%,O| 00004110 79 25 2d 7a 25 2c 33 2c 73 63 61 6c 65 25 2c 30 |y%-z%,3,scale%,0| 00004120 0d 1a 68 0d 20 20 20 20 20 20 20 20 ed 0d 1a 7c |..h. ...|| 00004130 43 20 20 20 20 20 20 20 20 c8 99 26 32 45 2c 33 |C ..&2E,3| 00004140 34 2b 35 31 32 2c 53 61 72 65 61 25 2c 53 25 28 |4+512,Sarea%,S%(| 00004150 50 69 65 63 65 25 29 2c 4f 78 25 2b 58 25 2c 4f |Piece%),Ox%+X%,O| 00004160 79 25 2d 7a 25 2c 33 2c 73 63 61 6c 65 25 2c 30 |y%-z%,3,scale%,0| 00004170 0d 1a 90 13 20 20 20 20 20 20 20 20 f2 75 70 64 |.... .upd| 00004180 61 74 65 0d 1a 9a 1e 20 20 c9 32 3a 69 25 3d 58 |ate.... .2:i%=X| 00004190 25 2b 28 64 25 2a 38 30 2d 34 2a b4 28 64 25 29 |%+(d%*80-4*.(d%)| 000041a0 29 0d 1a a4 18 20 20 20 20 20 20 20 20 e3 7a 25 |).... .z%| 000041b0 3d 58 25 b8 69 25 88 73 25 0d 1a b8 44 20 20 20 |=X%.i%.s%...D | 000041c0 20 20 20 20 20 20 c8 99 26 32 45 2c 33 34 2b 35 | ..&2E,34+5| 000041d0 31 32 2c 53 61 72 65 61 25 2c 53 25 28 50 69 65 |12,Sarea%,S%(Pie| 000041e0 63 65 25 29 2c 4f 78 25 2b 7a 25 2c 4f 79 25 2d |ce%),Ox%+z%,Oy%-| 000041f0 59 25 2c 33 2c 73 63 61 6c 65 25 2c 30 0d 1a cc |Y%,3,scale%,0...| 00004200 0f 20 20 20 20 20 20 20 20 20 c8 96 0d 1a d6 14 |. ......| 00004210 20 20 20 20 20 20 20 20 20 f2 75 70 64 61 74 65 | .update| 00004220 0d 1a d7 17 20 20 20 20 20 20 20 20 20 f2 74 6f |.... .to| 00004230 5f 73 70 72 69 74 65 0d 1a ea 44 20 20 20 20 20 |_sprite...D | 00004240 20 20 20 20 c8 99 26 32 45 2c 33 34 2b 35 31 32 | ..&2E,34+512| 00004250 2c 53 61 72 65 61 25 2c 53 25 28 50 69 65 63 65 |,Sarea%,S%(Piece| 00004260 25 29 2c 4f 78 25 2b 7a 25 2c 4f 79 25 2d 59 25 |%),Ox%+z%,Oy%-Y%| 00004270 2c 33 2c 73 63 61 6c 65 25 2c 30 0d 1a fe 0d 20 |,3,scale%,0.... | 00004280 20 20 20 20 20 20 20 ed 0d 1b 12 43 20 20 20 20 | ....C | 00004290 20 20 20 20 c8 99 26 32 45 2c 33 34 2b 35 31 32 | ..&2E,34+512| 000042a0 2c 53 61 72 65 61 25 2c 53 25 28 50 69 65 63 65 |,Sarea%,S%(Piece| 000042b0 25 29 2c 4f 78 25 2b 7a 25 2c 4f 79 25 2d 59 25 |%),Ox%+z%,Oy%-Y%| 000042c0 2c 33 2c 73 63 61 6c 65 25 2c 30 0d 1b 26 13 20 |,3,scale%,0..&. | 000042d0 20 20 20 20 20 20 20 f2 75 70 64 61 74 65 0d 1b | .update..| 000042e0 30 05 cb 0d 1b 3a 04 0d 1b 44 15 e7 53 6f 6e 25 |0....:...D..Son%| 000042f0 3a d4 31 2c 2d 31 30 2c 35 35 2c 31 0d 1b 4e 42 |:.1,-10,55,1..NB| 00004300 e7 4c 65 61 72 6e 25 20 44 65 6d 6f 25 3f 28 4d |.Learn% Demo%?(M| 00004310 6f 76 65 25 2a 32 29 3d 43 65 6c 6c 25 3a 44 65 |ove%*2)=Cell%:De| 00004320 6d 6f 25 3f 28 4d 6f 76 65 25 2a 32 2b 31 29 3d |mo%?(Move%*2+1)=| 00004330 28 61 25 2a 31 36 29 2b 28 64 25 2b 32 29 0d 1b |(a%*16)+(d%+2)..| 00004340 58 3e f2 63 28 30 2c 43 65 6c 6c 25 29 3a e7 61 |X>.c(0,Cell%):.a| 00004350 25 3d 31 f2 63 28 50 69 65 63 65 25 2c 43 65 6c |%=1.c(Piece%,Cel| 00004360 6c 25 2b 64 25 2a 36 29 8b f2 63 28 50 69 65 63 |l%+d%*6)..c(Piec| 00004370 65 25 2c 43 65 6c 6c 25 2b 64 25 29 0d 1b 62 23 |e%,Cell%+d%)..b#| 00004380 4d 25 3d b9 3a e7 4d 6f 76 65 25 3c 39 39 39 39 |M%=.:.Move%<9999| 00004390 f2 6d 6f 76 65 73 28 4d 6f 76 65 25 2b 31 29 0d |.moves(Move%+1).| 000043a0 1b 6c 05 e1 0d 1b 76 04 0d 1b 80 0a dd f2 64 65 |.l....v.......de| 000043b0 6d 6f 0d 1b 8a 49 43 65 6c 6c 25 3d 44 65 6d 6f |mo...ICell%=Demo| 000043c0 25 3f 50 74 72 25 3a 50 69 65 63 65 25 3d 43 25 |%?Ptr%:Piece%=C%| 000043d0 28 43 65 6c 6c 25 29 3a 58 25 3d 28 43 65 6c 6c |(Cell%):X%=(Cell| 000043e0 25 83 36 2b 31 29 2a 38 30 3a 59 25 3d 28 43 65 |%.6+1)*80:Y%=(Ce| 000043f0 6c 6c 25 81 36 2b 32 29 2a 38 30 0d 1b 94 38 f2 |ll%.6+2)*80...8.| 00004400 6d 6f 76 65 28 28 44 65 6d 6f 25 3f 28 50 74 72 |move((Demo%?(Ptr| 00004410 25 2b 31 29 80 32 34 30 29 81 31 36 2c 28 44 65 |%+1).240).16,(De| 00004420 6d 6f 25 3f 28 50 74 72 25 2b 31 29 80 31 35 29 |mo%?(Ptr%+1).15)| 00004430 2d 32 29 0d 1b 9e 2a 50 74 72 25 2b 3d 32 3a e7 |-2)...*Ptr%+=2:.| 00004440 50 74 72 25 3d 45 78 74 44 25 4d 61 73 6b 25 3d |Ptr%=ExtD%Mask%=| 00004450 4d 31 25 3a 4f 70 6d 6f 64 65 25 3d 32 0d 1b a8 |M1%:Opmode%=2...| 00004460 05 e1 0d 1b b2 04 0d 1b bc 0b dd f2 72 65 73 65 |............rese| 00004470 74 0d 1b c6 3e 43 25 28 29 3d 43 31 25 28 29 3a |t...>C%()=C1%():| 00004480 f2 6d 6f 76 65 73 28 30 29 3a f2 66 72 3a 4f 70 |.moves(0):.fr:Op| 00004490 6d 6f 64 65 25 3d 32 3a 50 74 72 25 3d 30 3a e7 |mode%=2:Ptr%=0:.| 000044a0 4c 65 61 72 6e 25 20 21 44 65 6d 6f 25 3d 30 0d |Learn% !Demo%=0.| 000044b0 1b d0 05 e1 0d 1b da 04 0d 1b e4 0f dd f2 6d 6f |..............mo| 000044c0 76 65 73 28 6d 25 29 0d 1b ee 2f f2 55 69 28 47 |ves(m%).../.Ui(G| 000044d0 57 25 28 57 6f 70 65 6e 25 29 2c 31 30 2c c3 6d |W%(Wopen%),10,.m| 000044e0 25 29 3a 4d 6f 76 65 25 3d 6d 25 3a e7 4c 65 61 |%):Move%=m%:.Lea| 000044f0 72 6e 25 3d 30 e1 0d 1b f8 14 e7 4d 6f 76 65 25 |rn%=0......Move%| 00004500 3d 42 79 74 65 6d 61 78 25 8c 0d 1c 02 44 20 f2 |=Bytemax%....D .| 00004510 72 65 70 6f 72 74 28 22 43 61 6e 27 74 20 61 63 |report("Can't ac| 00004520 63 65 70 74 20 6d 6f 72 65 20 6d 6f 76 65 73 2d |cept more moves-| 00004530 61 62 6f 72 74 69 6e 67 20 4c 65 61 72 6e 21 22 |aborting Learn!"| 00004540 2c 31 36 29 3a f2 6c 65 61 72 6e 28 32 29 0d 1c |,16):.learn(2)..| 00004550 0c 05 cd 0d 1c 16 05 e1 0d 1c 20 04 0d 1c 2a 0a |.......... ...*.| 00004560 dd f2 73 61 76 65 0d 1c 34 1e 70 61 74 68 24 3d |..save..4.path$=| 00004570 a4 47 65 74 53 74 72 69 6e 67 28 53 61 76 65 57 |.GetString(SaveW| 00004580 25 2c 31 29 0d 1c 3e 0f 46 25 3d ae 28 70 61 74 |%,1)..>.F%=.(pat| 00004590 68 24 29 0d 1c 48 21 e3 6e 25 3d 30 b8 32 39 3a |h$)..H!.n%=0.29:| 000045a0 62 25 3d 43 31 25 28 6e 25 29 3a e7 62 25 3d 30 |b%=C1%(n%):.b%=0| 000045b0 62 25 3d 37 0d 1c 52 19 d5 23 46 25 2c 62 25 3a |b%=7..R..#F%,b%:| 000045c0 ed 3a d5 23 46 25 2c 57 6f 70 65 6e 25 0d 1c 5c |.:.#F%,Wopen%..\| 000045d0 22 f1 23 46 25 2c a4 47 65 74 53 74 72 69 6e 67 |".#F%,.GetString| 000045e0 28 47 57 25 28 57 6f 70 65 6e 25 29 2c 30 29 0d |(GW%(Wopen%),0).| 000045f0 1c 66 0b e7 45 78 74 44 25 8c 0d 1c 70 2f 20 d5 |.f..ExtD%...p/ .| 00004600 23 46 25 2c 45 78 74 44 25 81 32 3a e3 62 25 3d |#F%,ExtD%.2:.b%=| 00004610 30 b8 45 78 74 44 25 2d 31 3a d5 23 46 25 2c 44 |0.ExtD%-1:.#F%,D| 00004620 65 6d 6f 25 3f 62 25 3a ed 0d 1c 7a 0c cc 3a d5 |emo%?b%:...z..:.| 00004630 23 46 25 2c 30 0d 1c 84 05 cd 0d 1c 8e 08 d9 23 |#F%,0..........#| 00004640 46 25 0d 1c 98 1e ff 28 22 53 65 74 54 79 70 65 |F%.....("SetType| 00004650 20 22 2b 70 61 74 68 24 2b 22 20 30 30 34 22 29 | "+path$+" 004")| 00004660 0d 1c a2 1f 4c 24 3d a4 47 65 74 4c 65 61 66 28 |....L$=.GetLeaf(| 00004670 70 61 74 68 24 2c 33 32 29 3a f2 61 28 30 29 0d |path$,32):.a(0).| 00004680 1c ac 05 e1 0d 1c b6 04 0d ff |..........| 0000468a