Home » Archimedes archive » Archimedes World » AW-1993-02.adf » AWFeb93 » !AWFeb93/Goodies/Imagery/!TinyImage/!RunImage

!AWFeb93/Goodies/Imagery/!TinyImage/!RunImage

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

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

Tape/disk: Home » Archimedes archive » Archimedes World » AW-1993-02.adf » AWFeb93
Filename: !AWFeb93/Goodies/Imagery/!TinyImage/!RunImage
Read OK:
File size: 144FE bytes
Load address: 0000
Exec address: 0000
File contents
   10REM ><Imagery$Dir>.!RunImage
   20LOMEM=TOP+&1000:PATCH%=TOP
   30ON ERROR PROCmakerr
   40:
   50REM LF$=""
   60PROCsetup
   70NOL%=TRUE:PROCloadsets("<Imagery$Dir>.Defaults")
   80NOL%=FALSE:PROCed_bru:!BLK%=HAND%(12):SYS "Wimp_CloseWindow",,BLK%
   90PROCaction
  100PROCdie
  110END
  120DEFPROCsetup:LEGO%=FALSE:TKH%=-1
  130MESI%=5*1024:DIM POI% 256,TAS% 3000,MENU% MESI%,MENUIND% MESI%,SEL% 256,ICBLK% 256,VARS 128,MENALO% 16,CODE% 7*1024,IO% 256,TRANSTAB% 256,RGBG% 192,MENAD% 256
  140BLK%=TAS%+2000
  150
  160SYS "OS_ReadVarVal","Imagery$File",IO%,256,0,0 TO ,,K%:L%=0:LF$="":WHILE K%>0:LF$=LF$+CHR$(IO%?L%):L%+=1:K%-=1:ENDWHILE
  170
  180FORL%=0 TO 188 STEP 4:RGBG%!L%=0:NEXT
  190MEOF%=0:MEIN%=0:MBUS%=FALSE:LAOPWI%=-1
  200$MENALO%="A -~"
  210FTL%=FALSE:LAPATCH%=-1
  220DIM PIC% 161*1024,SCALE% 32,PIXTAB% 256,PIXTAB2% 256,X%(8),Y%(8)
  230SPBUF%=HIMEM:SPSIZ%=0:SYS "Wimp_SlotSize",-1,-1 TO CUSL%
  240DIM PAL% 22600,OPAL% 22600,SHOW% 10240,PALTAB% 512,BTC% 256,CTT% 256,TTB% 256,ROTTAB% 1800,RAND% 4096,PFILLS% 7000:!PAL%=22600:!OPAL%=22600:!PFILLS%=7000:!SHOW%=10240
  250DIM BRUSH% 13000:!BRUSH%=13000
  260SYS&2E,266,BRUSH%,"<Imagery$Dir>.Brushes"
  270SYS&2E,266,PAL%,"<Imagery$Dir>.Palette"
  280SYS&2E,266,OPAL%,"<Imagery$Dir>.Palette"
  290SYS&2E,266,PFILLS%,"<Imagery$Dir>.PatFills"
  300SYS&2E,266,SHOW%,"<Imagery$Dir>.Show"
  310OSCLI("LOAD <Imagery$Dir>.PalTab "+STR$~PALTAB%)
  320OSCLI("LOAD <Imagery$Dir>.BTC "+STR$~BTC%):REM byte -> pal
  330OSCLI("LOAD <Imagery$Dir>.CTT "+STR$~CTT%):REM pal -> byte
  340OSCLI("LOAD <Imagery$Dir>.TTB "+STR$~TTB%):REM (col*64)+tint -> pal
  350OSCLI("LOAD <Imagery$Dir>.RotTab "+STR$~ROTTAB%)
  360OSCLI("LOAD <Imagery$Dir>.Code "+STR$~CODE%)
  370OSCLI("LOAD <Imagery$Dir>.RotTab "+STR$~ROTTAB%)
  380COL%=255:FUSE%=-1:FUST%=-1:FUCO%=0:BUTDO%=FALSE
  390$TAS%="TASK":SYS"Wimp_Initialise",200,!TAS%,"Imagery" TO ,THAND%
  400PROCloadsprites
  410PROCloadvars
  420!BLK%=-1:BLK%!4=0:BLK%!8=0:BLK%!12=64:BLK%!16=64:BLK%!20=&2102
  430DIM BLK%!24 10:$(BLK%!24)="!TinyImage":BLK%!28=1:BLK%!32=8
  440SYS "Wimp_CreateIcon",,BLK% TO ICHAND%
  450NOWIND%=34:NOMENS%=20
  460DIM STORE% 15*1024,BUF% 5048,HAND%(NOWIND%)
  470SOF%=STORE%
  480DATA Save,Info,Main,Palette,Airbrush,Brushes,Grid,SpriteSave,Area,Help,Linepat,Fillpat,EdBrush,EdFill,Text,Tback,FontParams,FillCont,ColRep,Frame,Pfills,RGBcont,Greyscale,Pixelate,Rotate,Colscale,Contrast,Posterise,RGBgraph,Filter,Wobble,Import,Toolkit
  490DATA Zoom,SetSave
  500RESTORE 480
  510SYS "Wimp_OpenTemplate",,"<Imagery$Dir>.Templates":K%=0
  520REPEAT:READ A$:$IO%=A$
  530SYS "Wimp_LoadTemplate",,BUF%,SOF%,STORE%+(15*1024),-1,IO%,0 TO ,,SOF%
  540IF K%=2 THEN BUF%?35=&FF
  550SYS "Wimp_CreateWindow",,BUF% TO HAND%(K%)
  560K%+=1:UNTIL K%>NOWIND%
  570SYS "Wimp_CloseTemplate"
  580FORL%=15 TO 46:PROCshadeicon(10,L%):NEXT
  590PROCsi(13,83,"16")
  600VDU23,6,0|
  610PROCsystemvars
  620PROCchars
  630PROCloadfonts
  640FORL%=0 TO NOMENS%:!FNmad(L%)=-1:NEXT:PROCbuildmainmenu:PROCbuildiconmenu
  650LWG%=-1:LIG%=-1
  660WLX%=0:WLY%=300:WUX%=1279:WUY%=1023:WSX%=0:WSY%=0
  670EDTY%=0:EFCOL%=255
  680ENDPROC
  690
  700DEFFNmad(MAD%):=MENAD%+(MAD%*4)
  710DEFFNcmad(MAD%):=MENAD%!(MAD%*4)
  720
  730DEFPROCsystemvars
  740!PIC%=161*1024:PIC%!4=0:PIC%!8=24:PIC%!12=24
  750SYS &2E,271,PIC%,"PIC",0,640,256,15
  760PIC$="<Untitled>"
  770ESM%=-1:EPM%=-1
  780GRCO%=-1:GRTI%=-1:GRLO%=FALSE:GRIWI%=1:GRIHE%=1:GRBX%=0:GRBY%=0
  790GRXM%=1:GRXD%=1:GRYM%=1:GRYD%=1:GRFX%=FALSE:GRFY%=FALSE
  800ZOOM%=1:ZOOMS%=1
  810USE%=0:LITY%=5:GRMA%=FALSE:UNDO%=-1
  820DIM PAT%(5):PAT%()=0:PALE%=8
  830DIM ECF%(8,4):ECF%()=0:ROT%=0
  840DIM GRFI%(15,1,4):GRFI%()=0
  850FIFC%=63:FIFT%=192:FILC%=3:FILT%=192:FILR%=0
  860IP%=FALSE
  870SELBR%=1:BXM%=1:BXD%=1:BYM%=1:BYD%=1
  880EDBR%=1:IDRAG%=FALSE:CPF%=1
  890IF LF$<>"" THEN PROCqatload(LF$):PIC$=FNleaf(LF$):PROCsi(0,6,LF$):PROCopenmain:PROCwindname(2,PIC$)
  900DIM TRASP% 256, REPS% 256
  910FORL%=0 TO 255:REPS%?L%=L%:NEXT
  920FORL%=0 TO 252 STEP 4:TRASP%!L%=0:NEXT
  930DIM FONTT$(64):FONTA%=-1:FONTO%=-1
  940FONTB%=0:SREP%=255
  950MMX%=1:MMY%=1:MOP%=FALSE:KUKE%=FALSE:KUKD%=0:KUKL%=-1:KSC%=TRUE
  960RSL%=100:GSL%=100:BSL%=100
  970ENDPROC
  980
  990DEFPROCloadvars
 1000F%=OPENIN("<Imagery$Dir>.Vars")
 1010INPUT#F%,backuppic,fillmask,getpicbyte,getbrushbyte,setpicbyte,pixaverage,tintarea,averagebrush,tintbrush,findchangebox,graduatedfill,colrep,patfill,rgbcont,greyscale,rotate,transarea,rgbgraph,filter,wobble
 1020CLOSE#F%
 1030backuppic+=CODE%:fillmask+=CODE%:getpicbyte+=CODE%:getbrushbyte+=CODE%:setpicbyte+=CODE%:pixaverage+=CODE%:tintarea+=CODE%:averagebrush+=CODE%:tintbrush+=CODE%:findchangebox+=CODE%:graduatedfill+=CODE%:colrep+=CODE%
 1040patfill+=CODE%:rgbcont+=CODE%:greyscale+=CODE%:rotate+=CODE%:transarea+=CODE%:rgbgraph+=CODE%:filter+=CODE%:wobble+=CODE%
 1050ENDPROC
 1060
 1070DEFPROCloadfonts
 1080FONTS%=0:ENDPROC
 1090
 1100DEFPROCloadsprites
 1110ENDPROC
 1120
 1130DEFPROCaction:SYS "Wimp_ForceRedraw",-1,0,0,&3000,&3000
 1140
 1150REPEAT
 1160PROCpoll
 1170UNTIL (REAS%=17 OR REAS%=18) AND BLK%!16=0
 1180ENDPROC
 1190
 1200DEFPROCdie:OP%=0:PROCspbuf(0)
 1210FORL%=1 TO 4:OSCLI("*REMOVE <Imagery$Dir>.XPIC"+STR$L%):NEXT
 1220SYS "Wimp_CloseDown",THAND%,!TAS%
 1230END
 1240ENDPROC
 1250
 1260DEFPROCpoll
 1270SYS "Wimp_GetPointerInfo",,BLK%
 1280IF BLK%!12<>HAND%(2) THEN MBUS%=TRUE
 1290!BLK%=%10011111110000110000
 1300SYS "Wimp_Poll",0,BLK% TO REAS%
 1310IF REAS%>-1 THEN PROCact
 1320ENDPROC
 1330DEFPROCact
 1340CASE REAS% OF
 1350WHEN 0:PROCkuke:PROCpicpoll
 1360WHEN 1:PROCredraw
 1370WHEN 2:PROCopmain
 1380WHEN 3:PROCclmain
 1390WHEN 6:PROCmouse
 1400WHEN 7:PROCdragfin
 1410WHEN 8:PROCkey
 1420WHEN 9:PROCmenu
 1430WHEN 17,18:PROCinmessage(BLK%!16)
 1440ENDCASE
 1450ENDPROC
 1460
 1470DEFPROCkuke:IF NOT KUKE% THEN ENDPROC
 1480KULI%=10
 1490MOUSE MX%,MY%,MH%:KP%=FALSE
 1500IF NOT INKEY(-58) THEN 1540
 1510IF KUKL%<>-58 THEN KUKL%=-58:KUKD%=0:MY%+=4:KP%=TRUE:GOTO 1540
 1520KUKD%+=1:IF KUKD%<KULI% THEN KP%=TRUE:GOTO 1540
 1530KUKD%=KULI%:MY%+=4:KP%=TRUE
 1540IF NOT INKEY(-42) THEN 1580
 1550IF KUKL%<>-58 THEN KUKL%=-58:KUKD%=0:MY%-=4:KP%=TRUE:GOTO 1580
 1560KUKD%+=1:IF KUKD%<KULI% THEN KP%=TRUE:GOTO 1580
 1570KUKD%=KULI%:MY%-=4:KP%=TRUE
 1580IF NOT INKEY(-26) THEN 1620
 1590IF KUKL%<>-58 THEN KUKL%=-58:KUKD%=0:MX%-=2:KP%=TRUE:GOTO 1620
 1600KUKD%+=1:IF KUKD%<KULI% THEN KP%=TRUE:GOTO 1620
 1610KUKD%=KULI%:MX%-=2:KP%=TRUE
 1620IF NOT INKEY(-122) THEN 1660
 1630IF KUKL%<>-58 THEN KUKL%=-58:KUKD%=0:MX%+=2:KP%=TRUE:GOTO 1660
 1640KUKD%+=1:IF KUKD%<KULI% THEN KP%=TRUE:GOTO 1660
 1650KUKD%=KULI%:MX%+=2:KP%=TRUE
 1660IF NOT KP% THEN KUKL%=-1:KUKD%=0
 1670MOUSE TO MX%,MY%
 1680ENDPROC
 1690
 1700DEFPROCredraw
 1710CASE !BLK% OF
 1720WHEN HAND%(2):PROCredrawmain
 1730WHEN HAND%(3):PROCredrawpal
 1740WHEN HAND%(5):PROCredrawbrush
 1750WHEN HAND%(11):PROCredrawpat
 1760WHEN HAND%(12):PROCredrawedbru
 1770WHEN HAND%(13):PROCredrawfill
 1780WHEN HAND%(15):PROCredrawtback
 1790WHEN HAND%(18):PROCredrawcolrep
 1800WHEN HAND%(20):PROCredrawpatfill
 1810WHEN HAND%(26),HAND%(27),HAND%(28):PROCredrawgraph
 1820WHEN HAND%(33):PROCredrawzoom
 1830WHEN HAND%(21):PROCredrawrgb
 1840WHEN HAND%(30):PROCredrawwob
 1850ENDCASE
 1860ENDPROC
 1870
 1880DEFPROCredrawwob
 1890SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 1900PROCgetrdor(564)
 1910WHILE FIN%:PROCplot256sprite(SHOW%,"SHOW",WOX%+64,WOY%+16):SYS "Wimp_GetRectangle",,BLK% TO FIN%:ENDWHILE:ENDPROC
 1920
 1930DEFPROCforcedrawwob:SYS "Wimp_ForceRedraw",HAND%(30),0,-564,480,220:ENDPROC
 1940
 1950DEFPROCredrawbrush
 1960SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 1970PROCgetrdor(260)
 1980WHILE FIN%:PROCplotbrushes:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 1990ENDWHILE
 2000ENDPROC
 2010
 2020DEFPROCredrawedbru
 2030SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 2040PROCgetrdor(640+(EDTY%*260))
 2050WHILE FIN%:PROCplotedbru:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 2060ENDWHILE
 2070ENDPROC
 2080
 2090DEFPROCredrawpatfill
 2100SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 2110PROCgetrdor(108)
 2120WHILE FIN%:PROCplotpatfill:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 2130ENDWHILE
 2140ENDPROC
 2150
 2160DEFPROCforcedrawpatfill:SYS "Wimp_ForceRedraw",HAND%(20),0,-108,1100,0:ENDPROC
 2170
 2180DEFPROCforcedrawedbru(x1%,y1%,x2%,y2%)
 2190!BLK%=HAND%(12)
 2200BLK%!4=x1%
 2210BLK%!8=y1%
 2220BLK%!12=x2%
 2230BLK%!16=y2%
 2240SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 2250PROCgetrdor(640+(EDTY%*260))
 2260WHILE FIN%
 2270PROCplotedbru
 2280SYS "Wimp_GetRectangle",,BLK% TO FIN%
 2290ENDWHILE
 2300ENDPROC
 2310
 2320DEFPROCforcedrawbrush
 2330!BLK%=HAND%(5)
 2340BLK%!4=0
 2350BLK%!8=-260
 2360BLK%!12=384
 2370BLK%!16=0
 2380SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 2390PROCgetrdor(260)
 2400WHILE FIN%
 2410PROCplotbrushes
 2420SYS "Wimp_GetRectangle",,BLK% TO FIN%
 2430ENDWHILE
 2440ENDPROC
 2450
 2460DEFPROCplot256sprite(SPA%,SPI$,POX%,POY%)
 2470IF MODE<>15 THEN GOTO 2490
 2480!SCALE%=1:SCALE%!4=1:SCALE%!8=1:SCALE%!12=1:SYS "OS_SpriteOp",290,SPA%,SPI$,POX%,POY%:ENDPROC
 2490IF MODE<>ESM% THEN ESM%=MODE:EPM%=MODE:SYS&40740,15,0,-1,-1,PIXTAB%
 2500SYS&35,-1,5 TO ,,E%
 2510SX%=2^(2-E%):SCALE%!4=SX%:SCALE%!12=1
 2520SYS&35,-1,4 TO ,,E%
 2530IF E%<1 THEN SX%=2^(1-E%):!SCALE%=SX%:SCALE%!8=1 ELSE SX%=2^(E%-1):!SCALE%=1:SCALE%!8=SX%
 2540SYS "OS_SpriteOp",308,SPA%,SPI$,POX%,POY%,0,SCALE%,PIXTAB%
 2550ENDPROC
 2560
 2570DEFPROCplotpatfill
 2580FORL%=1 TO 12:PROCplot256sprite(PFILLS%,STR$L%,WOX%+((L%-1)*84)+24,WOY%+12):IF CPF%=L% THEN PROCcol(0,0,0):RECTANGLE WOX%+((CPF%-1)*84)+16,WOY%+4,78,76:RECTANGLE WOX%+((CPF%-1)*84)+18,WOY%+4,74,76
 2590NEXT
 2600ENDPROC
 2610
 2620DEFPROCplotbrushes
 2630FORL%=1 TO 12
 2640BLK%!400=HAND%(5):BLK%!404=L%-1:SYS "Wimp_GetIconState",,BLK%+400
 2650PROCplot256sprite(BRUSH%,STR$L%,WOX%+(BLK%!408)+2,WOY%+(260+(BLK%!412))+4)
 2660IF SELBR%=L% THEN PROCcol(48,192,3):RECTANGLE FILL WOX%+(BLK%!408)+2,WOY%+(260+(BLK%!412))+4,64,60
 2670NEXT
 2680ENDPROC
 2690
 2700DEFPROCplotedbru
 2710IF EDTY%=0 THEN WE%=BRUSH% ELSE WE%=PFILLS%
 2720PROCplot256sprite(WE%,"1",WOX%+32,WOY%+20+(EDTY%*260))
 2730IF EDBR%<>1 THEN PROCcol(0,0,0) ELSE PROCcol(63,192,0)
 2740RECTANGLE FILL WOX%+32,WOY%+4+(EDTY%*260),64,8:RECTANGLE FILL WOX%+32,WOY%+86+(EDTY%*260),64,8
 2750IF WOY%+108+(EDTY%*260)<(BLK%!32) THEN GOTO 2820
 2760FORL%=2 TO 12
 2770REM BLK%!400=HAND%(12):BLK%!404=L%-1:SYS "Wimp_GetIconState",,BLK%+400
 2780PROCplot256sprite(WE%,STR$L%,WOX%+((L%-1)*64)+32,WOY%+20+(EDTY%*260))
 2790IF EDBR%<>L% THEN PROCcol(0,0,0) ELSE PROCcol(63,192,0)
 2800RECTANGLE FILL WOX%+((L%-1)*64)+32,WOY%+4+(EDTY%*260),64,8:RECTANGLE FILL WOX%+((L%-1)*64)+32,WOY%+86+(EDTY%*260),64,8
 2810NEXT
 2820!SCALE%=(!SCALE%)*12:SCALE%!4=(SCALE%!4)*8
 2830IF WOY%+108+(EDTY%*260)>(BLK%!40) THEN GOTO 2860
 2840IF MODE<>15 THEN SYS "OS_SpriteOp",308,WE%,STR$EDBR%,WOX%+28,WOY%+112+(EDTY%*260),0,SCALE%,PIXTAB% ELSE SYS "OS_SpriteOp",308,WE%,STR$EDBR%,WOX%+28,WOY%+112+(EDTY%*260),0,SCALE%
 2850EX%=WOX%+28:EY%=WOY%+112+(EDTY%*260):PROCcol(21,192,0):FORL%=0 TO 32:LINE EX%+(L%*24),EY%,EX%+(L%*24),EY%+512:NEXT:FORL%=0 TO 16:LINE EX%,EY%+(L%*32),EX%+768,EY%+(L%*32):NEXT
 2860IF EDTY%=1 THEN WOX%+=32:WOY%+=16:PROCplotpal(OPAL%):PROCcol(63,192,0):RECTANGLE WOX%+((EFCOL% MOD 32)*24),WOY%+((EFCOL% DIV 32)*28),24,28:WOX%-=32:WOY%-=16
 2870ENDPROC
 2880
 2890DEFPROCforcedrawmain
 2900!BLK%=HAND%(2)
 2910BLK%!4=0
 2920BLK%!8=-1024*ZOOM%
 2930BLK%!12=1280*ZOOM%
 2940BLK%!16=0
 2950SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 2960PROCgetrdor(1024*ZOOM%)
 2970WHILE FIN%
 2980PROCplotpic
 2990SYS "Wimp_GetRectangle",,BLK% TO FIN%
 3000ENDWHILE
 3010ENDPROC
 3020
 3030DEFPROCquickdrawmain:IF NOT VACB% THEN ENDPROC
 3040!BLK%=HAND%(2)
 3050BLK%!4=CBMINX%
 3060BLK%!8=CBMINY%
 3070BLK%!12=CBMAXX%
 3080BLK%!16=CBMAXY%
 3090SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 3100PROCgetrdor(1024*ZOOM%)
 3110WHILE FIN%
 3120PROCplotpic
 3130SYS "Wimp_GetRectangle",,BLK% TO FIN%
 3140ENDWHILE
 3150ENDPROC
 3160
 3170DEFPROCinpic:IF IP% THEN ENDPROC
 3180IP%=TRUE
 3190SYS "OS_SpriteOp",316,PIC%,"PIC" TO V1,V2,V3,V4
 3200SYS "OS_ChangedBox",2
 3210SYS "OS_ChangedBox",1
 3220REM GCOL3,63:LINE 300,300,320,320:LINE 300,300,320,320
 3230VDU23,6:FORL%=1 TO 5:VDU PAT%(L%):NEXT:VDU 0|
 3240SYS6,163,242,PALE%
 3250ENDPROC
 3260
 3270DEFPROCinpicR:SYS "OS_SpriteOp",316,PIC%,"PIC" TO B1,B2,B3,B4:ENDPROC
 3280
 3290DEFPROCinbackup:SYS "OS_SpriteOp",316,SPBUF%,"PIC" TO B1,B2,B3,B4:ENDPROC
 3300
 3310DEFPROCinsprite(ma%,sa%,sn$):SYS &2E,316+ma%,sa%,sn$ TO IS1,IS2,IS3,IS4:ENDPROC
 3320
 3330DEFPROCoutsprite:SYS &2E,IS1,IS2,IS3,IS4:ENDPROC
 3340
 3350DEFPROCoutbackup:SYS "OS_SpriteOp",B1,B2,B3,B4:ENDPROC
 3360
 3370DEFPROCoutpic:IF NOT IP% THEN ENDPROC
 3380IP%=FALSE
 3390SYS "OS_ChangedBox",-1 TO ,CBA%
 3400IF SGN(CBA%!4)=-1 OR SGN(CBA%!8)=-1 OR SGN(CBA%!12)=-1 OR SGN(CBA%!16)=-1 THEN VACB%=FALSE:SYS "OS_ChangedBox":SYS "OS_SpriteOp",V1,V2,V3,V4:ENDPROC ELSE VACB%=TRUE
 3410CBMINX%=CBA%!4:CBMINX%=CBMINX%*ZOOM%*2
 3420CBMINY%=CBA%!8:CBMINY%=(-1024+(CBMINY%*4))*ZOOM%
 3430CBMAXX%=CBA%!12:CBMAXX%=CBMAXX%*ZOOM%*2
 3440CBMAXY%=CBA%!16:CBMAXY%=(-1024+(CBMAXY%*4))*ZOOM%
 3450CBMAXX%+=4*ZOOM%
 3460CBMAXY%+=4*ZOOM%
 3470SYS "OS_ChangedBox"
 3480SYS "OS_SpriteOp",V1,V2,V3,V4
 3490ENDPROC
 3500
 3510DEFPROCredrawmain
 3520IF FUSE%=32 THEN
 3530IF FONT%<>0 AND EFM%<>-1 THEN
 3540REM IF MODE<>EFM% THEN PROCinpic:SYS "ColourTrans_SetFontColours",FHAND%,BPAL%,FPAL%,14:PROCoutpic:EFM%=MODE
 3550ENDIF
 3560ENDIF
 3570SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 3580PROCgetrdor(1024*ZOOM%)
 3590WHILE FIN%:PROCplotpic:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 3600ENDWHILE
 3610ENDPROC
 3620
 3630DEFPROCplotpic
 3640IF MODE=15 AND ZOOM%=1 THEN SYS "OS_SpriteOp",290,PIC%,"PIC",WOX%,WOY%:PROCgrid:ENDPROC
 3650IF MODE<>ESM% THEN ESM%=MODE:EPM%=MODE:SYS&40740,15,0,-1,-1,PIXTAB%
 3660SYS&35,-1,5 TO ,,E%
 3670SX%=2^(2-E%):SCALE%!4=SX%:SCALE%!12=1
 3680SYS&35,-1,4 TO ,,E%
 3690IF E%<1 THEN SX%=2^(1-E%):!SCALE%=SX%:SCALE%!8=1 ELSE SX%=2^(E%-1):!SCALE%=1:SCALE%!8=SX%
 3700!SCALE%=(!SCALE%)*ZOOM%:SCALE%!4=(SCALE%!4)*ZOOM%
 3710IF MODE=15 THEN TPIXTAB%=0 ELSE TPIXTAB%=PIXTAB%
 3720SYS "OS_SpriteOp",308,PIC%,"PIC",WOX%,WOY%,0,SCALE%,TPIXTAB%:PROCgrid:ENDPROC
 3730
 3740DEFPROCgrid
 3750IF GRCO%=-1 OR (2*GRIWI%*ZOOM%)<16 OR (4*GRIHE%*ZOOM%)<16 THEN ENDPROC
 3760PROCgridcol
 3770LOCAL X%,Y%
 3780X%=(((BLK%!28)-WOX%) DIV (ZOOM%*(2*GRIWI%)))*(2*GRIWI%*ZOOM%)
 3790Y%=(((BLK%!32)-WOY%) DIV (ZOOM%*(4*GRIHE%)))*(4*GRIHE%*ZOOM%)
 3800XOF%=(GRIWI%-GRBX%)*2*ZOOM%
 3810YOF%=(GRIHE%-GRBY%)*4*ZOOM%
 3820X%+=WOX%-XOF%
 3830Y%+=WOY%-YOF%
 3840REPEAT:LINE X%,(BLK%!32),X%,(BLK%!40):X%+=(2*GRIWI%*ZOOM%):UNTIL X%>(BLK%!36)
 3850REPEAT:LINE (BLK%!28),Y%,(BLK%!36),Y%:Y%+=(4*GRIHE%*ZOOM%):UNTIL Y%>(BLK%!40)
 3860ENDPROC
 3870
 3880DEFPROCplotpal(PTU%)
 3890PROCcol(63,192,0)
 3900IF MODE<>15 THEN GOTO 3930
 3910SYS "OS_SpriteOp",290,PTU%,"Palette",WOX%,WOY%:IF PTU%=PAL% THEN RECTANGLE WOX%+((COL% MOD 32)*24),WOY%+((COL% DIV 32)*28),24,28
 3920ENDPROC
 3930IF MODE<>EPM% THEN ESM%=MODE:EPM%=MODE:SYS&40740,15,0,-1,-1,PIXTAB%
 3940SYS&35,-1,5 TO ,,E%
 3950SX%=2^(2-E%):SCALE%!4=SX%:SCALE%!12=1
 3960SYS&35,-1,4 TO ,,E%
 3970IF E%<1 THEN SX%=2^(1-E%):!SCALE%=SX%:SCALE%!8=1 ELSE SX%=2^(E%-1):!SCALE%=1:SCALE%!8=SX%
 3980SYS "OS_SpriteOp",308,PTU%,"Palette",WOX%,WOY%,0,SCALE%,PIXTAB%
 3990IF PTU%=PAL% THEN RECTANGLE WOX%+((COL% MOD 32)*24),WOY%+((COL% DIV 32)*28),24,28
 4000ENDPROC
 4010
 4020DEFPROCinpal:SYS "OS_SpriteOp",316,PAL%,"Palette" TO V1,V2,V3,V4:ENDPROC
 4030
 4040DEFPROCoutpal:SYS "OS_SpriteOp",V1,V2,V3,V4:ENDPROC
 4050
 4060DEFPROCtrasp(TC%)
 4070PROCinpal:PROCtrasp2(TC%):PROCoutpal
 4080ENDPROC
 4090
 4100DEFPROCtrasp2(TC%)
 4110TRASP%?TC%=(TRASP%?TC%) EOR 1
 4120TX%=((TC% MOD 32)*24):TY%=((TC% DIV 32)*28)
 4130REM IF (TRASP%?TC%)=0 THEN GCOL0,PALTAB%?(TC%*2) TINT PALTAB%?((TC%*2)+1) ELSE PROCanticol(PALTAB%?(TC%*2),PALTAB%?((TC%*2)+1),0)
 4140IF (TRASP%?TC%)=0 THEN GCOL0,PALTAB%?(TC%*2) TINT PALTAB%?((TC%*2)+1) ELSE GCOL0,63-(PALTAB%?(TC%*2)) TINT PALTAB%?((TC%*2)+1)
 4150LINE TX%+6,TY%+20,TX%+18,TY%+20:LINE TX%+12,TY%+8,TX%+12,TY%+20
 4160ENDPROC
 4170
 4180DEFPROCredrawpal
 4190SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 4200PROCgetrdor(228)
 4210WHILE FIN%:PROCplotpal(PAL%):SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4220ENDWHILE
 4230ENDPROC
 4240
 4250DEFPROCredrawtback
 4260SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 4270PROCgetrdor(228)
 4280WHILE FIN%:PROCplotpal(OPAL%)
 4290PROCcol(63,192,0):RECTANGLE WOX%+((FONTB% MOD 32)*24),WOY%+((FONTB% DIV 32)*28),24,28
 4300SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4310ENDWHILE
 4320ENDPROC
 4330
 4340DEFPROCredrawcolrep
 4350SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 4360PROCgetrdor(556)
 4370WHILE FIN%:WOY%+=290:PROCplotpal(SPBUF%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224:WOY%-=290
 4380PROCplotpal(OPAL%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224
 4390PROCcol(63,192,0):RECTANGLE WOX%+((SREP% MOD 32)*24),WOY%+290+((SREP% DIV 32)*28),24,28
 4400SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4410ENDWHILE
 4420ENDPROC
 4430
 4440DEFPROCforcedrawcolrep
 4450!BLK%=HAND%(18)
 4460BLK%!4=0
 4470BLK%!8=-556
 4480BLK%!12=770
 4490BLK%!16=0
 4500SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 4510PROCgetrdor(556)
 4520WHILE FIN%
 4530WOY%+=290:PROCplotpal(SPBUF%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224:WOY%-=290
 4540PROCplotpal(OPAL%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224
 4550PROCcol(63,192,0):RECTANGLE WOX%+((SREP% MOD 32)*24),WOY%+290+((SREP% DIV 32)*28),24,28
 4560SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4570ENDWHILE
 4580ENDPROC
 4590
 4600DEFFNcecf
 4610IF FNhigh(11,26) THEN =1
 4620IF FNhigh(11,28) THEN =2
 4630IF FNhigh(11,30) THEN =3
 4640IF FNhigh(11,32) THEN =4
 4650=0
 4660
 4670DEFPROCredrawpat
 4680SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 4690PROCgetpator
 4700WHILE FIN%:PROCplotpal(OPAL%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224
 4710CECF%=FNcecf:FORK%=0 TO 7:L%=ECF%(K%+1,CECF%)
 4720PE%=BTC%?L%:PROCcol(PALTAB%?(PE%*2),PALTAB%?((PE%*2)+1),0):RECTANGLE FILL WOX%-146,(WOY%+276)-(K%*40),38,36
 4730NEXT
 4740SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4750ENDWHILE
 4760ENDPROC
 4770
 4780DEFFNgrafilno
 4790IF FNhigh(13,95) THEN =0
 4800IF FNhigh(13,99) THEN =1
 4810IF FNhigh(13,101) THEN =2
 4820IF FNhigh(13,103) THEN =3
 4830IF FNhigh(13,97) THEN =4
 4840=-1
 4850
 4860DEFPROCredrawfill
 4870SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 4880PROCgetrdor(484)
 4890WHILE FIN%:WOY%+=236:WOX%+=422:PROCplotpal(OPAL%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224:WOX%-=140:WOY%-=140
 4900FIX%=WOX%+200:GRFIN%=FNgrafilno:FORL%=0 TO 15:IF GRFIN%<>-1 THEN PROCcol(GRFI%(L%,0,GRFIN%),GRFI%(L%,1,GRFIN%),0) ELSE PROCcol(0,0,0)
 4910RECTANGLE FILL FIX%,WOY%-28,42,32:FIX%+=44:NEXT
 4920WOX%-=282:WOY%-=96:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4930ENDWHILE
 4940ENDPROC
 4950
 4960DEFPROCforcedrawfill
 4970!BLK%=HAND%(13)
 4980BLK%!4=0
 4990BLK%!8=-500
 5000BLK%!12=1200
 5010BLK%!16=-360
 5020SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 5030PROCgetrdor(484)
 5040WHILE FIN%
 5050FIX%=WOX%+482:GRFIN%=FNgrafilno:FORL%=0 TO 15:IF GRFIN%<>-1 THEN PROCcol(GRFI%(L%,0,GRFIN%),GRFI%(L%,1,GRFIN%),0) ELSE PROCcol(0,0,0)
 5060RECTANGLE FILL FIX%,WOY%+68,42,32:FIX%+=44:NEXT
 5070SYS "Wimp_GetRectangle",,BLK% TO FIN%
 5080ENDWHILE
 5090ENDPROC
 5100
 5110DEFPROCforcedrawpat
 5120!BLK%=HAND%(11)
 5130BLK%!4=0
 5140BLK%!8=-356
 5150BLK%!12=100
 5160BLK%!16=0
 5170SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 5180PROCgetpator
 5190WHILE FIN%
 5200PROCplotpal(OPAL%):PROCcol(0,0,0):LINE WOX%,WOY%+224,WOX%+770,WOY%+224
 5210CECF%=FNcecf
 5220FOR RK%=0 TO 7
 5230L%=ECF%(RK%+1,CECF%)
 5240PE%=BTC%?L%:PROCcol(PALTAB%?(PE%*2),PALTAB%?((PE%*2)+1),0):RECTANGLE FILL WOX%-146,(WOY%+276)-(RK%*40),38,36
 5250RECTANGLE FILL WOX%-146,(WOY%+276)-(RK%*40),38,36
 5260NEXT
 5270SYS "Wimp_GetRectangle",,BLK% TO FIN%
 5280ENDWHILE
 5290ENDPROC
 5300
 5310DEFFNctb(co%,ti%):by%=-1:FORL%=0 to 255
 5320
 5330DEFPROCdrawpicinit
 5340!BLK%=HAND%(2)
 5350BLK%!4=0
 5360BLK%!8=-936
 5370BLK%!12=1236
 5380BLK%!16=0
 5390SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 5400PROCgetrdor(1024*ZOOM%)
 5410ENDPROC
 5420
 5430DEFPROCforcedrawpal(PTU%)
 5440!BLK%=HAND%(3)
 5450BLK%!4=0
 5460BLK%!8=-228
 5470BLK%!12=770
 5480BLK%!16=0
 5490SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 5500PROCgetrdor(228)
 5510WHILE FIN%
 5520PROCplotpal(PTU%)
 5530SYS "Wimp_GetRectangle",,BLK% TO FIN%
 5540ENDWHILE
 5550ENDPROC
 5560
 5570DEFPROCforcedrawtback
 5580!BLK%=HAND%(15)
 5590BLK%!4=0
 5600BLK%!8=-228
 5610BLK%!12=770
 5620BLK%!16=0
 5630SYS "Wimp_UpdateWindow",,BLK% TO FIN%
 5640PROCgetrdor(228)
 5650WHILE FIN%
 5660PROCplotpal(OPAL%)
 5670PROCcol(63,192,0):RECTANGLE WOX%+((FONTB% MOD 32)*24),WOY%+((FONTB% DIV 32)*28),24,28
 5680SYS "Wimp_GetRectangle",,BLK% TO FIN%
 5690ENDWHILE
 5700ENDPROC
 5710
 5720DEFPROCforcedrawgraph(WH%)
 5730!BLK%=HAND%(WH%)
 5740BLK%!4=0:BLK%!8=-300:IF WH%<>28 THEN BLK%!12=300 ELSE BLK%!12=900
 5750BLK%!16=0
 5760SYS "Wimp_UpdateWindow",,BLK% TO FIN%:PROCgetgraphor
 5770WHILE FIN%:PROCdrawgraph:SYS "Wimp_GetRectangle",,BLK% TO FIN%:ENDWHILE:ENDPROC
 5780
 5790DEFPROCredrawgraph
 5800SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 5810PROCgetgraphor
 5820WHILE FIN%:PROCdrawgraph:SYS "Wimp_GetRectangle",,BLK% TO FIN%:ENDWHILE:ENDPROC
 5830
 5840DEFPROCgetgraphor
 5850WOX%=(BLK%!4-BLK%!20)+44
 5860WOY%=(BLK%!16-BLK%!24)-256
 5870ENDPROC
 5880
 5890DEFPROCdrawgraph
 5900PROCcol(63,192,0):RECTANGLE FILL WOX%+2,WOY%+4,252,248:PROCcol(0,0,0):LINE WOX%,WOY%,WOX%,WOY%+252:LINE WOX%,WOY%,WOX%+254,WOY%
 5910CASE FUSE% OF
 5920WHEN 43:CONL%=VALFNgi(26,18):CONH%=VALFNgi(26,20):IF CONL%<CONH% THEN PLOT4,WOX%+CONL%*17,WOY%:PLOT5,WOX%+CONH%*17,WOY%+252 ELSE PLOT4,WOX%+CONH%*17,WOY%+252:PLOT5,WOX%+CONL%*17,WOY%
 5930WHEN 44:POL%=VALFNgi(27,22):POH%=VALFNgi(27,24):PON%=VALFNgi(27,26)
 5940STWI=PON%/16:STHE=(POH%-POL%)/(PON%-1):FORL%=0 TO 15:BH%=POL%+(INT(STWI*L%)*STHE):RECTANGLE WOX%+(L%*16),WOY%,16,BH%*17
 5950NEXT
 5960ENDCASE
 5970ENDPROC
 5980
 5990DEFPROCgetpator
 6000WOX%=(BLK%!4-BLK%!20)+180
 6010WOY%=(BLK%!16-BLK%!24)-340
 6020ENDPROC
 6030
 6040DEFPROCpicpoll
 6050SYS "Wimp_GetPointerInfo",,BLK%
 6060IF MBUS% AND BLK%!8<>0 THEN ENDPROC ELSE MBUS%=FALSE
 6070IF BLK%!8=0 AND LEGO% THEN LEGO%=FALSE
 6080IF BLK%!8<>0 AND LEGO% THEN BLK%!8=0
 6090WE%=0:FORPC%=0 TO NOWIND%:IF BLK%!12=HAND%(PC%) THEN WE%=1:PC%=NOWIND%:NEXT ELSE NEXT
 6100IF WE%=0 THEN IDRAG%=(BLK%!8<>0)
 6110IF BLK%!8=0 THEN IDRAG%=FALSE
 6120IF BLK%!12<>HAND%(2) OR BLK%!16<>-1 THEN ENDPROC
 6130IF BLK%!8<>0 AND IDRAG% THEN ENDPROC
 6140X%=!BLK%:Y%=BLK%!4:BUT%=BLK%!8
 6150IF BUT%=2 THEN ENDPROC
 6160CASE FUSE% OF
 6170WHEN 1:IF FUST%=0 AND BUT%<>0 THEN PROCpicpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:GOTO 7190
 6180IF BUT%=0 OR FUST%=0 THEN FUST%=0:GOTO 7190
 6190PROCpicpos:PROCinpic:PROCsetcol:PROCl(X%(0),Y%(0),X%,Y%):PROCoutpic
 6200PROCquickdrawmain
 6210X%(0)=X%:Y%(0)=Y%
 6220WHEN 4:IF FUST%=0 THEN PROCpaintscale:PROCpicpos:PROCinpic:PROCeorback:PROCpaintbrush(X%,Y%):PROCoutpic:PROCquickdrawmain:OX%=X%:OY%=Y%:FUST%=1:GOTO 7190
 6230PROCpicpos
 6240IF X%<>OX% OR Y%<>OY% THEN PROCpaintscale:PROCinpic:PROCeorback:PROCpaintbrush(OX%,OY%):PROCpaintbrush(X%,Y%):OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain
 6250WHEN 11:IF FUST%=0 AND BUT%<>0 THEN PROCpicpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6260IF FUST%=0 THEN GOTO 7190
 6270IF BUT%=1 AND FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCpicpos:OX%=X%:OY%=Y%:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6280IF BUT%=1 AND FUST%=2 THEN PROCinpic:PROCeoc:PROCelip(&C5,OX%,OY%):PROCpicpos:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6290IF BUT%=4 AND (OX%<>X%(0) OR OY%<>Y%(0)) AND FUST%=1 THEN PROCinpic:PROCeoc:X%(1)=OX%:Y%(1)=OY%:LINE X%(0),Y%(0),OX%,OY%:PROCpicpos:OX%=X%:OY%=Y%:PROCelip(&C5,X%,Y%):PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=2:GOTO 7190
 6300IF BUT%=4 AND (OX%<>X%(1) OR OY%<>Y%(1)) AND FUST%=2 THEN PROCinpic:PROCeoc:PROCpicpos:PROCelip(&C5,OX%,OY%):PROCsetcol:PROCelip(&C5,X%,Y%):OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=0:GOTO 7190
 6310PROCpicpos:IF X%=OX% AND Y%=OY% THEN GOTO 7190
 6320IF FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:OX%=X%:OY%=Y%:LINE X%(0),Y%(0),X%,Y%:PROCoutpic:PROCquickdrawmain
 6330IF FUST%=2 THEN PROCinpic:PROCeoc:PROCelip(&C5,OX%,OY%):OX%=X%:OY%=Y%:PROCelip(&C5,X%,Y%):PROCoutpic:PROCquickdrawmain
 6340WHEN 13:IF FUST%=0 AND BUT%<>0 THEN PROCpicpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6350IF FUST%=0 THEN GOTO 7190
 6360IF BUT%=1 AND FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCpicpos:OX%=X%:OY%=Y%:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6370IF BUT%=1 AND FUST%=2 THEN PROCinpic:PROCeoc:PROCpara(0,0,OX%,OY%):PROCpicpos:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6380IF BUT%=4 AND (OX%<>X%(0) OR OY%<>Y%(0)) AND FUST%=1 THEN PROCinpic:PROCeoc:X%(1)=OX%:Y%(1)=OY%:LINE X%(0),Y%(0),OX%,OY%:PROCpicpos:OX%=X%:OY%=Y%:PROCpara(0,0,X%,Y%):PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=2:GOTO 7190
 6390IF BUT%=4 AND (OX%<>X%(1) OR OY%<>Y%(1)) AND FUST%=2 THEN PROCinpic:PROCeoc:PROCpicpos:PROCpara(0,0,OX%,OY%):PROCsetcol:PROCpara(1,0,X%,Y%):OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=0:GOTO 7190
 6400PROCpicpos:IF X%=OX% AND Y%=OY% THEN GOTO 7190
 6410IF FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:OX%=X%:OY%=Y%:LINE X%(0),Y%(0),X%,Y%:PROCoutpic:PROCquickdrawmain
 6420IF FUST%=2 THEN PROCinpic:PROCeoc:PROCpara(0,0,OX%,OY%):OX%=X%:OY%=Y%:PROCpara(0,0,X%,Y%):PROCoutpic:PROCquickdrawmain
 6430WHEN 16:IF FUST%=0 AND BUT%<>0 THEN PROCpicpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6440IF FUST%=0 THEN GOTO 7190
 6450IF BUT%=1 AND FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCpicpos:OX%=X%:OY%=Y%:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6460IF BUT%=1 AND FUST%=2 THEN PROCinpic:PROCeoc:PROCelip(&B5,OX%,OY%):PROCpicpos:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:GOTO 7190
 6470IF BUT%=4 AND (OX%<>X%(0) OR OY%<>Y%(0)) AND FUST%=1 THEN PROCinpic:PROCeoc:X%(1)=OX%:Y%(1)=OY%:LINE X%(0),Y%(0),OX%,OY%:PROCpicpos:OX%=X%:OY%=Y%:PROCelip(&B5,X%,Y%):PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=2:GOTO 7190
 6480IF BUT%=4 AND (OX%<>X%(1) OR OY%<>Y%(1)) AND FUST%=2 THEN PROCinpic:PROCeoc:PROCpicpos:PROCelip(&B5,OX%,OY%):PROCsetcol:PROCelip(&B5,X%,Y%):OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=0:GOTO 7190
 6490PROCpicpos:IF X%=OX% AND Y%=OY% THEN GOTO 7190
 6500IF FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:OX%=X%:OY%=Y%:LINE X%(0),Y%(0),X%,Y%:PROCoutpic:PROCquickdrawmain
 6510IF FUST%=2 THEN PROCinpic:PROCeoc:PROCelip(&B5,OX%,OY%):OX%=X%:OY%=Y%:PROCelip(&B5,X%,Y%):PROCoutpic:PROCquickdrawmain
 6520WHEN 23:PROCpoll_23
 6530WHEN 25:PROCpoll_25
 6540WHEN 27:IF FUST%<2 THEN PROCrectpoll:GOTO 7190
 6550PROCspinit:PROCspbuf(161*1024):IF Q% THEN PROCspbuferr
 6560PROCbackuppic:PROCswapcorns
 6570VARS!20=BTC%:VARS!24=PALTAB%
 6580VARS!28=PIC%:VARS!32=SPBUF%
 6590VARS!36=X%(0):VARS!40=Y%(0)
 6600VARS!44=OX%:VARS!48=OY%
 6610A%=VARS:SYS "Hourglass_On":CALL pixaverage:SYS "Hourglass_Off":PROCspinit:PROCforcedrawmain:FUST%=0
 6620WHEN 29:IF FUST%=0 THEN PROCpaintscale2:PROCpicpos:PROCinpic:PROCeorback:PROCpaintbrush(X%,Y%):PROCoutpic:PROCquickdrawmain:OX%=X%:OY%=Y%:FUST%=1:GOTO 7190
 6630PROCpicpos
 6640IF X%<>OX% OR Y%<>OY% THEN PROCpaintscale2:PROCinpic:PROCeorback:PROCpaintbrush(OX%,OY%):PROCpaintbrush(X%,Y%):OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain
 6650WHEN 30:IF FUST%=0 THEN PROCpaintscale2:PROCpicpos:PROCinpic:PROCeorback:PROCpaintbrush(X%,Y%):PROCoutpic:PROCquickdrawmain:OX%=X%:OY%=Y%:FUST%=1:GOTO 7190
 6660PROCpicpos
 6670IF X%<>OX% OR Y%<>OY% THEN PROCpaintscale2:PROCinpic:PROCeorback:PROCpaintbrush(OX%,OY%):PROCpaintbrush(X%,Y%):OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain
 6680WHEN 32:IF FONT%<>0 THEN
 6690PROCpicpos:IF BUT%=4 AND FUST%<>0 THEN PROCinbackup:SYS "Font_SetFont",FHAND%:SYS "Font_Paint",,TEXT$,16,X%,Y%:PROCoutbackup
 6700IF FUST%<>0 AND (X%<>OX% OR Y%<>OY%) THEN ET%=1:PROCrestpic:ET%=2:ET%=3:PROCinpicR:SYS "Font_SetFont",FHAND%:ET%=4:SYS "Font_Paint",,TEXT$,16,X%,Y%:PROCoutbackup:NTTP%+=1:ET%=5:ET%=6:OX%=X%:OY%=Y%:PROCforcedrawmain:ET%=7:OX%=X%:OY%=Y%
 6710ELSE
 6720PROCpicpos:IF BUT%=4 AND FUST%<>0 THEN PROCinbackup:PROCostext(X%,Y%):PROCoutbackup
 6730IF FUST%<>0 AND (X%<>OX% OR Y%<>OY%) THEN PROCrestpic:PROCinpic:PROCostext(X%,Y%):PROCoutpic:PROCforcedrawmain:OX%=X%:OY%=Y%
 6740ENDIF:GOTO 7190
 6750WHEN 31:IF FUST%<2 THEN PROCrectpoll:GOTO 7190
 6760PROCswapcorns:FMINX%=X%(0):FMINY%=Y%(0):FMAXX%=OX%:FMAXY%=OY%
 6770SYS "Hourglass_On":PROCfill:SYS "Hourglass_Off":FUST%=0
 6780WHEN 33:IF FUST%>=2 THEN GOTO 6800
 6790IF FUST%=0 AND BUT%=1 THEN PROCpicpos:PROCinpic:CO%=POINT(X%,Y%):TI%=TINT(X%,Y%):PROCoutpic:SREP%=FNfindpalent(CO%,TI%):PROCforcedrawcolrep:GOTO 7190 ELSE PROCrectpoll:GOTO 7190
 6800PROCswapcorns:FMINX%=X%(0):FMINY%=Y%(0):FMAXX%=OX%:FMAXY%=OY%
 6810SYS "Hourglass_On":!VARS=PIC%:VARS!4=PIC%:VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=BTC%:VARS!28=TTB%:VARS!32=REPS%:A%=VARS:CALL colrep:SYS "Hourglass_Off":FUST%=0:PROCforcedrawmain
 6820WHEN 34:IF FNhigh(31,3) OR FNhigh(31,4) THEN GOTO 7190
 6830IF FUST%=0 THEN 6850
 6840IF BUT%=4 THEN PROCinpic:PROCpicpos:PROCpimport(OX%,OY%,3):PROCimptile:OX%=X%:OY%=Y%:PROCpimport(OX%,OY%,3):PROCoutpic:PROCquickdrawmain:GOTO 7190
 6850IF FUST%=0 THEN FUST%=1:PROCpicpos:OX%=X%:OY%=Y%:PROCinpic:PROCpimport(X%,Y%,3):PROCoutpic:PROCquickdrawmain:GOTO 7190
 6860PROCpicpos:IF X%=OX% AND Y%=OY% THEN GOTO 7190
 6870PROCinpic:PROCpimport(OX%,OY%,3):OX%=X%:OY%=Y%:PROCpimport(X%,Y%,3):PROCoutpic:PROCquickdrawmain
 6880WHEN 36:IF FUST%=0 THEN PROCpicpos:PROCinpic:PROCeoc:RECTANGLE X%,Y%,FRW%*2,FRH%*4:PROCoutpic:PROCquickdrawmain:OX%=X%:OY%=Y%:FUST%=1
 6890PROCpicpos:IF X%<>OX% OR Y%<>OY% THEN PROCinpic:PROCeoc:RECTANGLE OX%,OY%,FRW%*2,FRH%*4:OX%=X%:OY%=Y%:RECTANGLE OX%,OY%,FRW%*2,FRH%*4:PROCoutpic:PROCquickdrawmain
 6900IF BUT%<>4 THEN 7190
 6910PROCinpic:PROCeoc:RECTANGLE OX%,OY%,FRW%*2,FRH%*4:PROCsetcol:RECTANGLE OX%,OY%,FRW%*2,FRH%*4:PROCeoc:RECTANGLE OX%,OY%,FRW%*2,FRH%*4:PROCoutpic:PROCquickdrawmain
 6920WHEN 38:PROCpoll_38
 6930WHEN 39:PROCpoll_39
 6940WHEN 40:PROCpoll_40
 6950WHEN 41:PROCpoll_41
 6960WHEN 42:IF FUST%<2 THEN PROCrectpoll:GOTO 7190
 6970PROCsupixtrans
 6980RW%=VALFNgi(25,13):GW%=VALFNgi(25,15):BW%=VALFNgi(25,17):FORL%=0 TO 255:SYS "ColourTrans_ColourNumberToGCOL",L% TO G%
 6990RC%=(G%AND%1111)*RW%:GC%=(((G%AND48)>>2)+(G%AND3))*GW%:BC%=(((G%AND192)>>4)+(G%AND3))*BW%
 7000TC%=((RC%+GC%+BC%)DIV3):IF TC%>15 THEN TC%=15
 7010TC%=(TC% AND 3)+((TC%AND12)*RSM%)+(((TC%AND12)<<2)*GSM%)+(((TC%AND12)<<4)*BSM%):SYS"ColourTrans_GCOLToColourNumber",TC% TO TC%
 7020TRANSTAB%?L%=TC%:NEXT
 7030A%=VARS:CALL transarea:SYS "Hourglass_Off":FUST%=0:PROCforcedrawmain
 7040WHEN 43:PROCpoll_43
 7050WHEN 44:PROCpoll_44
 7060WHEN 47:IF FUST%<2 THEN PROCrectpoll:GOTO 7190
 7070PROCspinit:PROCspbuf(161*1024):IF Q% THEN PROCspbuferr
 7080PROCbackuppic:PROCswapcorns
 7090VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=VAL(FNgi(29,5)):VARS!28=BLK%+512:A%=VARS:SYS"Hourglass_On":CALL filter:SYS"Hourglass_Off":PROCspinit:PROCforcedrawmain:FUST%=0
 7100WHEN 48:IF FUST%<2 THEN PROCrectpoll:GOTO 7190
 7110PROCspinit:PROCspbuf(161*1024):IF Q% THEN PROCspbuferr
 7120PROCbackuppic:PROCswapcorns
 7130WE%=1:GOTO 7230
 7140IF FNhigh(30,25) THEN VARS!36=1 ELSE VARS!36=&280
 7150VARS!40=0:IF FNhigh(30,44) THEN VARS!40=1
 7160IF FNhigh(30,32) THEN VARS!44=1 ELSE VARS!44=0
 7170VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=TAS%+512:VARS!28=BTC%:VARS!32=TRASP%:A%=VARS:CALL wobble:SYS "Hourglass_Off":PROCspinit:PROCforcedrawmain:FUST%=0
 7180IF WER% THEN PROCkillf:FUSE%=-1:GOTO 90
 7190ENDCASE
 7200ENDPROC
 7210
 7220REM ** This is jumped straight to because of error control (flub!)
 7230A=VAL(FNgi(30,42)):K%=TAS%+512:L%=0:WER%=FALSE:ER%=FALSE:F$=FNgi(30,27):MG%=VAL(FNgi(30,5)):SYS "Hourglass_On":PROCsi(30,36," ")
 7240ON ERROR ER%=TRUE:WER%=TRUE:GOTO 7260
 7250K%!(L%*4)=EVAL(F$)*MG%
 7260IF ER%=TRUE THEN PROCsi(30,36,"Error at A="+STR$(A)):K%!L%=0:ER%=FALSE
 7270A+=VAL(FNgi(30,11)):L%+=1:IF L%<618 THEN GOTO 7250
 7280ON ERROR PROCmakerr
 7290IF WE%=2 THEN GOTO 12100 ELSE GOTO 7140
 7300
 7310DEFPROCcontrast(RETURN L%)
 7320IF CONL%>CONH% THEN GOTO 7350
 7330IF L%<=CONL% THEN L%=0:ENDPROC ELSE IF L%>=CONH% THEN L%=15:ENDPROC
 7340K%=L%-CONL%:I%=CONH%-CONL%:L%=(K%/I%)*15:ENDPROC
 7350IF CONL%=CONH% THEN GOTO 7380
 7360IF L%<=CONH% THEN L%=15:ENDPROC ELSE IF L%>=CONL% THEN L%=15:ENDPROC
 7370K%=L%-CONH%:I%=CONL%-CONH%:L%=15-((K%/I%)*15):ENDPROC
 7380IF L%<CONL% THEN L%=0 ELSE L%=15
 7390ENDPROC
 7400
 7410DEFPROCsupixtrans:PROCswapcorns:FMINX%=X%(0):FMINY%=Y%(0):FMAXX%=OX%:FMAXY%=OY%:SYS "Hourglass_On":!VARS=PIC%:VARS!4=PIC%:VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=TRASP%:VARS!28=BTC%:VARS!32=TRANSTAB%:ENDPROC
 7420
 7430DEFPROCprotbox(CX%,CY%):PROCeoc:R%=ROT%:PROCrotpoint(FMINX%,FMINY%,R%,X1%,Y1%):PROCrotpoint(FMAXX%,FMINY%,R%,X2%,Y2%):PROCrotpoint(FMAXX%,FMAXY%,R%,X3%,Y3%):PROCrotpoint(FMINX%,FMAXY%,R%,X4%,Y4%)
 7440PROCrotpoint(0,(FMAXY%DIV3)*2,R%,MX1%,MY1%):PROCrotpoint(0,(FMAXY%DIV3)*4,R%,MX2%,MY2%)
 7450X1%+=CX%:X2%+=CX%:X3%+=CX%:X4%+=CX%
 7460Y1%+=CY%:Y2%+=CY%:Y3%+=CY%:Y4%+=CY%
 7470PLOT4,X1%,Y1%:PLOT5,X2%,Y2%:PLOT5,X3%,Y3%:PLOT5,X4%,Y4%:PLOT5,X1%,Y1%
 7480LINE MX1%+CX%,MY1%+CY%,MX2%+CX%,MY2%+CY%
 7490ENDPROC
 7500
 7510DEFPROCrotpoint(R0%,R1%,R%,RETURN RPX%,RETURN RPY%)
 7520R6%=(ROTTAB%!(R%*4))>>12:R7%=(!(ROTTAB%+(R%*4)+&168))>>12:R8%=R0%*R6%:R5%=R1%*R7%:R8%-=R5%:R5%=R1%*R6%:R1%=R0%*R7%:R1%+=R5%:RPX%=R1%>>18:RPY%=-(R8%>>18)
 7530ENDPROC
 7540
 7550DEFFNperc(WH%,IH%)
 7560I$=FNgi(WH%,IH%):IF RIGHT$(I$,1)="%" THEN I$=LEFT$(I$,LEN(I$)-1)
 7570=VAL(I$)
 7580
 7590DEFPROCgrabpoll(FT%)
 7600IF FUST%=0 AND BUT%<>0 THEN PROCpicpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain:PROCletgo:ENDPROC
 7610IF FUST%=0 THEN ENDPROC
 7620IF BUT%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCpicpos:OX%=X%:OY%=Y%:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:ENDPROC
 7630IF BUT%<>4 OR (OX%=X%(0) AND OY%=Y%(0)) THEN GOTO 7720
 7640PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCpicpos:PROCspbuf(FNspritesize(X%-X%(0),Y%-Y%(0),ABS(FNhigh(8,14)))):IF Q% THEN RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCspinit:PROCspbuferr
 7650GRN$="GRAB":SYS&2E,272,SPBUF%,"GRAB",,X%(0),Y%(0),X%,Y%:IF FNhigh(8,14) THEN SYS&2E,285,SPBUF%,"GRAB":GRABM%=8:PROCfillmask ELSE GRABM%=0
 7660GRWI%=ABS(X%-X%(0)):GRHE%=ABS(Y%-Y%(0))
 7670IF X%<X%(0) THEN SWAP X%(0),X%
 7680IF Y%<Y%(0) THEN SWAP Y%(0),Y%
 7690IF FT%=1 THEN SYS&2E,290,SPBUF%,"GRAB",X%(0),Y%(0),3+GRABM%
 7700PROCpgrab(X%,Y%,3)
 7710OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=2:ENDPROC
 7720PROCpicpos:IF X%=OX% AND Y%=OY% THEN ENDPROC
 7730PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):OX%=X%:OY%=Y%:RECTANGLE X%(0),Y%(0),X%-X%(0),Y%-Y%(0):PROCoutpic:PROCquickdrawmain
 7740ENDPROC
 7750
 7760DEFPROCrectpoll
 7770IF FUST%=0 AND BUT%<>0 THEN PROCpicpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain:PROCletgo:ENDPROC
 7780IF FUST%=0 THEN ENDPROC
 7790IF BUT%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCpicpos:OX%=X%:OY%=Y%:FUST%=0:PROCoutpic:PROCquickdrawmain:PROCletgo:ENDPROC
 7800IF BUT%<>4 OR (OX%=X%(0) AND OY%=Y%(0)) THEN GOTO 7850
 7810PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCpicpos
 7820IF X%<X%(0) THEN SWAP X%(0),X%
 7830IF Y%<Y%(0) THEN SWAP Y%(0),Y%
 7840OX%=X%:OY%=Y%:PROCoutpic:PROCquickdrawmain:PROCletgo:FUST%=2:ENDPROC
 7850PROCpicpos:IF X%=OX% AND Y%=OY% THEN ENDPROC
 7860PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):OX%=X%:OY%=Y%:RECTANGLE X%(0),Y%(0),X%-X%(0),Y%-Y%(0):PROCoutpic:PROCquickdrawmain
 7870ENDPROC
 7880
 7890DEFPROCpgrab(DX%,DY%,PL%)
 7900XR=GRXM%/GRXD%
 7910YR=GRYM%/GRYD%
 7920!SCALE%=GRXM%
 7930SCALE%!4=GRYM%
 7940SCALE%!8=GRXD%
 7950SCALE%!12=GRYD%
 7960SYS&2E,308,SPBUF%,"GRAB",DX%-((GRWI% DIV 2)*XR),DY%-((GRHE% DIV 2)*YR),PL%+GRABM%,SCALE%
 7970ENDPROC
 7980
 7990DEFPROCpimport(DX%,DY%,PL%)
 8000XR=GRXM%/GRXD%:YR=GRYM%/GRYD%
 8010IO%!20=(!IO%)*GRXM%
 8020IO%!24=(IO%!4)*GRYM%
 8030IO%!28=(IO%!8)*GRXD%
 8040IO%!32=(IO%!12)*GRYD%
 8050IF NOT GRMA% THEN SYS&2E,308,SPBUF%,GRN$,DX%-((IMW% DIV 2)*XR),DY%-((IMH% DIV 2)*YR),PL%,IO%+20,IMPT% ELSE SYS&2E,308,SPBUF%,GRN$,DX%-((IMW% DIV 2)*XR),DY%-((IMH% DIV 2)*YR),PL%+8,IO%+20,IMPT%
 8060ENDPROC
 8070
 8080DEFPROCpara(LT%,PL%,DX%,DY%)
 8090IF PL%=1 THEN PROCelip(&75,DX%,DY%):ENDPROC
 8100IF LT%=1 THEN
 8110PROCl(X%(0),Y%(0),X%(1),Y%(1))
 8120PROCl(X%(1),Y%(1),DX%,DY%)
 8130PLOT LITY%-4,X%(0)-X%(1),Y%(0)-Y%(1)
 8140PLOT LITY%,X%(0),Y%(0)
 8150ELSE
 8160LINE X%(0),Y%(0),X%(1),Y%(1)
 8170LINE X%(1),Y%(1),DX%,DY%
 8180PLOT1,X%(0)-X%(1),Y%(0)-Y%(1)
 8190PLOT5,X%(0),Y%(0)
 8200ENDIF
 8210ENDPROC
 8220
 8230DEFPROCelip(PL%,DX%,DY%)
 8240MOVE X%(0),Y%(0)
 8250MOVE X%(1),Y%(1)
 8260PLOT PL%,DX%,DY%
 8270ENDPROC
 8280
 8290DEFPROCtri(PL%,DX%,DY%)
 8300IF PL%=5 OR PL%=85 THEN PLOT4,DX%,DY%:PLOT 5,X%(0),Y%(0):PLOT 5,X%(1),Y%(1):PLOT PL%,DX%,DY% ELSE PLOT4,DX%,DY%:PLOT LITY%,X%(0),Y%(0):PLOT LITY%,X%(1),Y%(1):PLOT LITY%,DX%,DY%
 8310ENDPROC
 8320
 8330DEFFNdist(DX%,DY%):=SQR(((DX%-X%(0))^2)+((DY%-Y%(0))^2))
 8340
 8350DEFPROCpaintbrush(BX%,BY%):SYS&2E,306,BRUSH%,STR$(SELBR%),BX%-(32*XR),BY%-(32*YR),,SCALE%:ENDPROC
 8360
 8370DEFPROCpaintbrush2(BX%,BY%):SYS&2E,305,BRUSH%,STR$(SELBR%),BX%-32,BY%-32:ENDPROC
 8380
 8390DEFPROCletgo:LEGO%=TRUE:ENDPROC:REPEAT:MOUSE X%,Y%,H%:UNTIL H%=0:ENDPROC
 8400
 8410DEFPROCkillf:LAOPWI%=-1:IF TKH%<>-1 THEN PROCiconlo(32,TKH%):TKH%=-1
 8420CASE FUSE% OF
 8430IF FUSE%<>32 THEN PROCspbuf(0)
 8440
 8450
 8460WHEN 4:PROCclosewind(5):IF FUST%>0 THEN PROCinpic:PROCpaintscale:PROCeorback:PROCpaintbrush(OX%,OY%):PROCoutpic:PROCquickdrawmain
 8470
 8480
 8490WHEN 11:IF FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCoutpic:PROCquickdrawmain
 8500IF FUST%=2 THEN PROCinpic:PROCeoc:PROCelip(&C5,OX%,OY%):PROCoutpic:PROCquickdrawmain
 8510WHEN 13:IF FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCoutpic:PROCquickdrawmain
 8520IF FUST%=2 THEN PROCinpic:PROCeoc:PROCpara(0,0,OX%,OY%):PROCoutpic:PROCquickdrawmain
 8530WHEN 16:IF FUST%=1 THEN PROCinpic:PROCeoc:LINE X%(0),Y%(0),OX%,OY%:PROCoutpic:PROCquickdrawmain
 8540IF FUST%=2 THEN PROCinpic:PROCeoc:PROCelip(&B5,OX%,OY%):PROCoutpic:PROCquickdrawmain
 8550WHEN 18:PROCkill_18
 8560WHEN 19:PROCkill_19
 8570WHEN 20:PROCkill_20
 8580WHEN 21:PROCkill_21
 8590WHEN 22:IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8600WHEN 23:PROCkill_23
 8610WHEN 25:PROCkill_25
 8620WHEN 27:IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8630WHEN 28:IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8640WHEN 29:PROCclosewind(5):IF FUST%>0 THEN PROCinpic:PROCpaintscale2:PROCeorback:PROCpaintbrush(OX%,OY%):PROCoutpic:PROCquickdrawmain
 8650WHEN 30:PROCclosewind(5):IF FUST%>0 THEN PROCinpic:PROCpaintscale2:PROCeorback:PROCpaintbrush(OX%,OY%):PROCoutpic:PROCquickdrawmain
 8660WHEN 32:PROCrestpic:PROCforcedrawmain:PROCclosewind(14):PROCspinit:IF FONT%<>0 THEN PROClosefont
 8670WHEN 31:IF GRTY%=1 THEN
 8680IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8690ENDIF
 8700WHEN 33:PROCclosewind(18):PROCspinit:IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8710WHEN 34:IF FUST%=1 THEN PROCinpic:PROCpimport(OX%,OY%,3):PROCoutpic:PROCquickdrawmain
 8720PROCclosewind(8):PROCspinit
 8730WHEN 35:IF FUST%<2 THEN PROCclosewind(8)
 8740IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8750IF FUST%=3 THEN PROCclosewind(7)
 8760WHEN 36:IF FUST%<>0 THEN PROCinpic:PROCeoc:RECTANGLE OX%,OY%,FRW%*2,FRH%*4:PROCoutpic:PROCquickdrawmain
 8770
 8780WHEN 38:PROCkill_38
 8790WHEN 39:PROCkill_39
 8800WHEN 40:PROCkill_40
 8810WHEN 41:PROCkill_41
 8820WHEN 42:PROCclosewind(25):PROCmeoc
 8830WHEN 43:PROCkill_43
 8840WHEN 44:PROCkill_44
 8850
 8860
 8870WHEN 47:PROCclosewind(29):PROCmeoc
 8880WHEN 48:PROCclosewind(30):PROCmeoc
 8890ENDCASE
 8900PROCwindname(2,PIC$)
 8910ENDPROC
 8920
 8930DEFPROCmeoc:PROCspinit:IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8940ENDPROC
 8950
 8960DEFPROCeoc:GCOL3,63 TINT 192:ENDPROC
 8970
 8980DEFPROCeorback:GCOL3,191 TINT 192:ENDPROC
 8990
 9000DEFPROCpickcol
 9010XOF%=!BLK%:YOF%=BLK%!4:PROCscreentowork(HAND%(3), XOF%,YOF%):YOF%=228+YOF%
 9020IF XOF%>766 THEN XOF%=766
 9030IF YOF%>220 THEN YOF%=220
 9040IF MOUB%=4 THEN COL%=(XOF% DIV 24)+((YOF% DIV 28)*32) ELSE IF MOUB%=1 THEN PROCtrasp((XOF% DIV 24)+((YOF% DIV 28)*32))
 9050PROCforcedrawpal(PAL%)
 9060ENDPROC
 9070
 9080DEFPROCtbackclick
 9090BLK%!8=HAND%(15):SYS "Wimp_GetWindowState",,BLK%+8
 9100XOF%=(!BLK%)-(BLK%!12):IF XOF%>766 THEN XOF%=766
 9110YOF%=(BLK%!4)-(BLK%!16):IF YOF%>220 THEN YOF%=220
 9120FONTB%=(XOF% DIV 24)+((YOF% DIV 28)*32)
 9130PROCforcedrawtback
 9140ENDPROC
 9150
 9160DEFPROCpicpos
 9170SCRX%=!BLK%:SCRY%=BLK%!4
 9180BLK%!8=HAND%(2):SYS "Wimp_GetWindowState",,BLK%+8
 9190X%=(((!BLK%)-(BLK%!12))+(BLK%!28)) DIV ZOOM%
 9200Y%=1024-((((BLK%!24)-(BLK%!4))-(BLK%!32)) DIV ZOOM%)
 9210IF X%<0 THEN X%=0
 9220IF X%>1279 THEN X%=1279
 9230IF Y%<0 THEN Y%=0
 9240IF Y%>1023 THEN Y%=1023
 9250IF NOT GRLO% THEN ENDPROC
 9260XOF%=(GRIWI%-GRBX%)*2
 9270YOF%=(GRIHE%-GRBY%)*4
 9280X%+=XOF%:Y%+=YOF%
 9290X%=-XOF%+((X% DIV (2*GRIWI%))*2*GRIWI%)
 9300Y%=-YOF%+((Y% DIV (4*GRIHE%))*4*GRIHE%)
 9310ENDPROC
 9320
 9330DEFPROCgetrdor(WE%)
 9340WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)-WE%:ENDPROC
 9350
 9360DEFPROCopenmain:MOP%=TRUE
 9370!BLK%=HAND%(2):BLK%!4=0:BLK%!8=300:BLK%!12=1279:BLK%!16=1023:BLK%!20=0:BLK%!24=0:BLK%!28=-1:SYS "Wimp_OpenWindow",,BLK%
 9380ENDPROC
 9390
 9400DEFPROCopenpal
 9410!BLK%=HAND%(3):BLK%!4=100:BLK%!8=300:BLK%!12=1279:BLK%!16=600:BLK%!20=0:BLK%!24=0:BLK%!28=-1:SYS "Wimp_OpenWindow",,BLK%
 9420ENDPROC
 9430
 9440DEFPROCopenwind(WH%):IF WH%>2 THEN LAOPWI%=WH%
 9450!BLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,BLK%
 9460BLK%!28=-1:SYS "Wimp_OpenWindow",,BLK%
 9470ENDPROC
 9480
 9490DEFPROCclosewind(WH%)
 9500!BLK%=HAND%(WH%):SYS "Wimp_CloseWindow",,BLK%
 9510ENDPROC
 9520
 9530DEFPROCopmain
 9540SYS "Wimp_OpenWindow",,BLK%
 9550ENDPROC
 9560
 9570DEFPROCclmain:MOP%=FALSE
 9580SYS "Wimp_CloseWindow",,BLK%
 9590ENDPROC
 9600
 9610DEFPROCairnoz
 9620H%=-1:FORL%=21 TO 33 STEP 2:IF FNhigh(4,L%) THEN H%=L%:L%=33
 9630NEXT
 9640CASE H% OF
 9650WHEN 21:XR=1:YR=.25
 9660WHEN 23:XR=1:YR=.5
 9670WHEN 25:XR=1:YR=.75
 9680WHEN 27:XR=1:YR=1
 9690WHEN 29:XR=.75:YR=1
 9700WHEN 31:XR=.5:YR=1
 9710WHEN 33:XR=.25:YR=1
 9720ENDCASE
 9730ENDPROC
 9740
 9750DEFPROCpaintscale
 9760!SCALE%=BXM%
 9770SCALE%!4=BYM%
 9780SCALE%!8=BXD%
 9790SCALE%!12=BYD%
 9800XR=BXM%/BXD%
 9810YR=BYM%/BYD%
 9820ENDPROC
 9830
 9840DEFPROCpaintscale2
 9850!SCALE%=1
 9860SCALE%!4=1
 9870SCALE%!8=1
 9880SCALE%!12=1
 9890XR=1
 9900YR=1
 9910ENDPROC
 9920
 9930DEFPROCpicclick
 9940IF MBUS% AND MOUB%<>0 THEN ENDPROC ELSE MBUS%=FALSE
 9950CASE FUSE% OF
 9960WHEN -1:IF MOUB%=1 THEN PROCpicpos:PROCinpic:CO%=POINT(X%,Y%):TI%=TINT(X%,Y%):GCOL3,63 TINT 192:PLOT69,400,400:PLOT69,400,400:PROCoutpic:PROCtrasp(FNfindpalent(CO%,TI%)):PROCforcedrawpal(PAL%):GOTO 10400
 9970IF MOUB%=4 THEN PROCop1:GOTO 10400
 9980WHEN 0:PROCpicpos:PROCinpic:PROCsetcol:PLOT69,X%,Y%:PROCoutpic:PROCquickdrawmain
 9990WHEN 4:PROCpaintscale:PROCinpic:PROCpicpos
10000IF FUST%<>0 THEN PROCeorback:PROCpaintbrush(OX%,OY%)
10010PROCsetbackcol:PROCpaintbrush(X%,Y%):OX%=X%:OY%=Y%:FUST%=1
10020PROCeorback:PROCpaintbrush(OX%,OY%)
10030PROCoutpic:PROCquickdrawmain
10040WHEN 24:IF MOUB%<>4 THEN GOTO 10400
10050PROCpicpos:PROCinpic:GCOL3,63 TINT 192:PLOT69,400,400:PLOT69,400,400:PROCsetcol:TCO%=POINT(X%-2,Y%):TTI%=TINT(X%-2,Y%):TPE%=FNfindpalent(TCO%,TTI%):IF TPE%=COL% THEN PROCoutpic:PROCmessage(0,"Cannot trace the colour you are using.")
10060PROCtrace(X%,Y%,TCO%,TTI%):PROCoutpic:PROCquickdrawmain
10070WHEN 29:PROCpaintscale2:PROCinpic:PROCpicpos
10080IF FUST%<>0 THEN PROCeorback:PROCpaintbrush2(OX%,OY%)
10090VARS!20=BTC%:VARS!24=PALTAB%
10100VARS!28=PIC%:VARS!32=SPBUF%
10110VARS!36=X%-32:VARS!40=Y%-32
10120VARS!44=SELBR%:VARS!48=BRUSH%
10130A%=VARS:CALL averagebrush
10140GCOL3,63:RECTANGLE X%-32,Y%-32,64,64:RECTANGLE X%-32,Y%-32,64,64
10150OX%=X%:OY%=Y%:FUST%=1:PROCeorback:PROCpaintbrush2(OX%,OY%)
10160PROCoutpic:PROCquickdrawmain
10170WHEN 30:PROCpaintscale2:PROCinpic:PROCpicpos
10180IF FUST%<>0 THEN PROCeorback:PROCpaintbrush2(OX%,OY%)
10190VARS!20=BTC%:VARS!24=PALTAB%
10200VARS!28=PIC%:VARS!32=SPBUF%
10210VARS!36=X%-32:VARS!40=Y%-32
10220VARS!44=SELBR%:VARS!48=BRUSH%
10230VARS!84=PALTAB%?(COL%*2):VARS!88=PALTAB%?((COL%*2)+1)
10240A%=VARS:CALL tintbrush
10250GCOL3,63:RECTANGLE X%-32,Y%-32,64,64:RECTANGLE X%-32,Y%-32,64,64
10260OX%=X%:OY%=Y%:FUST%=1:PROCeorback:PROCpaintbrush2(OX%,OY%)
10270PROCoutpic:PROCquickdrawmain
10280WHEN 31:IF MOUB%<>4 OR GRTY%=1 THEN ENDPROC
10290PROCspinit:PROCspbuf(161*1024):IF Q% THEN PROCspbuferr
10300PROCbackuppic
10310PROCinbackup:PROCpicpos:FBC%=POINT(X%,Y%):FBT%=TINT(X%,Y%):GCOL0,FBC%+128 TINT FBT%:FUT%=(FBC%+1) MOD 64
10320GCOL0,FUT% TINT FBT%:SYS "Hourglass_On":FILL X%,Y%:PROCoutbackup
10330A%=VARS:B%=PIC%:C%=SPBUF%:CALL findchangebox
10340FMINX%=(!VARS)*2
10350FMINY%=(VARS!4)*4
10360FMAXX%=(VARS!8)*2
10370FMAXY%=(VARS!12)*4
10380PROCfill
10390SYS "Hourglass_Off"
10400ENDCASE
10410ENDPROC
10420
10430DEFPROCfill
10440NOS%=VALFNgi(13,83)
10450NOF%=GRFN%
10460ET%=0
10470IF FNhigh(13,87) THEN ET%=1
10480IF FNhigh(13,89) THEN ET%=2
10490IF FNhigh(13,91) THEN ET%=3
10500IF FNhigh(13,93) THEN ET%=4
10510FIT%=-1
10520IF FNhigh(13,67) THEN FIT%=1
10530IF FNhigh(13,69) THEN FIT%=2
10540IF FNhigh(13,71) THEN FIT%=3
10550IF FNhigh(13,73) THEN FIT%=4
10560IF FNhigh(13,75) THEN FIT%=5
10570IF FNhigh(13,77) THEN FIT%=6
10580IF ET%=1 OR ET%=2 THEN FIT%=1
10590IF ET%=3 OR ET%=4 THEN FIT%=4
10600IF FIT%=-1 THEN PROCspinit:PROCmessage(0,"You must choose a type of fill.")
10610CASE FIT% OF
10620WHEN 1:FIW%=FMAXX%-FMINX%:FIFC%=0:LAFC%=255:FID%=1
10630WHEN 2:FIW%=FMAXX%-FMINX%:FIFC%=255:LAFC%=0:FID%=-1
10640WHEN 4:FIW%=FMAXY%-FMINY%:FIFC%=0:LAFC%=255:FID%=1
10650WHEN 3:FIW%=FMAXY%-FMINY%:FIFC%=255:LAFC%=0:FID%=-1
10660WHEN 5:FIFC%=0:LAFC%=255:FID%=1
10670WHEN 6:FIFC%=255:LAFC%=0:FID%=-1
10680ENDCASE
10690IF FIT%=5 OR FIT%=6 THEN
10700IF (FMAXX%-X%)>(X%-FMINX%) THEN XOF%=FMAXX%-X% ELSE XOF%=X%-FMINX%
10710IF (FMAXY%-Y%)>(Y%-FMINY%) THEN YOF%=FMAXY%-Y% ELSE YOF%=Y%-FMINY%
10720FIW%=SQR((XOF%^2)+(YOF%^2)):IF GRTY%=1 THEN FIW%=FIW%/2
10730ENDIF
10740IF FIW%=0 OR NOS%=1 THEN PROCmessage(5,"You cannot use a graduated fill on an area that small.")
10750CPP%=(255<<8) DIV FIW%:CPS%=(255<<8) DIV (NOS%-1)
10760I%=IO%:FORL%=0 TO 15:?I%=GRFI%(L%,0,NOF%):I%?1=GRFI%(L%,1,NOF%):I%+=2:NEXT
10770!VARS=PIC%:IF GRTY%=0 THEN VARS!4=SPBUF% ELSE VARS!4=PIC%
10780VARS!8=IO%:VARS!12=NOS%:VARS!16=FIFC%:VARS!20=LAFC%:VARS!24=FID%:VARS!28=CPP%:VARS!32=CPS%:VARS!36=X%:VARS!40=Y%:VARS!44=ROTTAB%:VARS!48=FIT%:VARS!52=FMINX%:VARS!56=FMINY%:VARS!60=FMAXX%:VARS!64=FMAXY%
10790IF GRTY%=1 THEN VARS!36=(FMINX%+FMAXX%)DIV2:VARS!40=(FMINY%+FMAXY%)DIV2
10800VARS!68=RAND%:VARS!72=0
10810VARS!76=VALFNgi(13,81)
10820IF FNhigh(13,54) THEN VARS!80=1 ELSE VARS!80=0
10830VARS!84=ET%:VARS!88=TRASP%:VARS!92=GRTY%:VARS!96=BTC%
10840FORL%=0 TO 4092 STEP 4:RAND%!L%=RND(CPS%):NEXT
10850A%=VARS
10860CALL graduatedfill
10870PROCspinit:PROCforcedrawmain
10880ENDPROC
10890
10900DEFPROChg:SYS "Hourglass_Smash":ENDPROC
10910
10920DEFPROCswapcorns
10930IF X%(0)>OX% THEN SWAP X%(0),OX%
10940IF Y%(0)>OY% THEN SWAP Y%(0),OY%
10950ENDPROC
10960
10970DEFFNsamecol(x1%,y1%,col%,tin%):=(POINT(x1%,y1%)=col% AND TINT(x1%,y1%)=tin%)
10980
10990DEFPROCl(x1%,y1%,x2%,y2%):PLOT4,x1%,y1%:PLOT LITY%,x2%,y2%:ENDPROC
11000
11010DEFPROCr(x1%,y1%,x2%,y2%):PLOT4,x1%,y1%:PLOT LITY%-4,x2%,0:PLOT LITY%-4,0,y2%:PLOT LITY%-4,-x2%,0:PLOT LITY%-4,0,-y2%:ENDPROC
11020
11030DEFPROCtrace(X%,Y%,TCO%,TTI%)
11040ENDPROC
11050
11060DEFFNfindpalent(CO%,TI%)
11070=CTT%?((CO%*4)+(TI% DIV 64))
11080
11090DEFPROCsetcol:GCOL USE%,PALTAB%?(COL%*2) TINT PALTAB%?((COL%*2)+1):ENDPROC
11100
11110DEFPROCsetbackcol:GCOL USE%,(PALTAB%?(COL%*2))+128 TINT PALTAB%?((COL%*2)+1):ENDPROC
11120
11130DEFPROCcol(C%,T%,U%)
11140SYS&35,-1,9 TO ,,BP%
11150IF BP%=3 THEN GCOLU%,C% TINT T%:ENDPROC
11160R%=((C% AND %11)*4)+(T% DIV 64):R%+=(R%<<4)
11170G%=(((C% AND %1100)>>2)*4)+(T% DIV 64):G%+=(G%<<4)
11180B%=(((C% AND %110000)>>4)*4)+(T% DIV 64):B%+=(B%<<4)
11190SYS "ColourTrans_SetGCOL",((B%<<24)+(G%<<16)+(R%<<8)),,,,U%
11200ENDPROC
11210
11220DEFPROCanticol(C%,T%,U%)
11230R%=((C% AND %11)*4)+(T% DIV 64):R%+=(R%<<4)
11240G%=(((C% AND %1100)>>2)*4)+(T% DIV 64):G%+=(G%<<4)
11250B%=(((C% AND %110000)>>4)*4)+(T% DIV 64):B%+=(B%<<4)
11260SYS "ColourTrans_ReturnOppGCOLForMode",((B%<<24)+(G%<<16)+(R%<<8)),15 TO GC%
11270GCOL U%,(GC%>>2) TINT (GC% AND %11)*64
11280ENDPROC
11290
11300DEFPROCgridcol
11310PROCcol(GRCO%,GRTI%,0)
11320ENDPROC
11330
11340DEFPROCmakerr:PROCkillf:FUSE%=-1
11350SYS "Wimp_DragBox",,0
11360!BLK%=ERR
11370ER=TRUE
11380$(BLK%+4)=REPORT$+" at line "+STR$(ERL)+CHR$(0)
11390REM $(BLK%+4)="Internal error '"+REPORT$+"' at line "+STR$ERL+"."+CHR$(0)
11400IF ERR<>17 SYS "Wimp_ReportError",BLK%,1,"Imagery"
11410REM PROCaction:END
11411END
11420ENDPROC
11430
11440DEFPROCmessage(M%,M$):PROCoutpic
11450SYS "Wimp_DragBox",,0:!BLK%=M%:$(BLK%+4)=M$+CHR$(0):SYS "Wimp_ReportError",BLK%,1,"Imagery"
11460PROCforcedrawmain
11470PROCaction:END
11480ENDPROC
11490
11500DEFPROCmouse
11510MOUX%=!BLK%:MOUY%=BLK%!4:MOUB%=BLK%!8:MOUH%=BLK%!12:MOUIC%=BLK%!16
11520CASE MOUB% OF
11530WHEN 4,1:CASE MOUH% OF
11540WHEN -2:PROCopenmain
11550WHEN HAND%(0):IF BLK%!16=8 THEN PROCsaveok
11560WHEN HAND%(7):IF BLK%!16=8 THEN PROCspritesaveok
11570WHEN HAND%(2):PROCpicclick
11580WHEN HAND%(3):PROCpickcol
11590WHEN HAND%(4):PROCairbclick
11600WHEN HAND%(5):PROCbrushclick
11610WHEN HAND%(6):PROCgridclick
11620WHEN HAND%(8):PROCgrabclick
11630WHEN HAND%(10):PROClinepatclick
11640WHEN HAND%(11):PROCecfclick
11650WHEN HAND%(12):PROCedbruclick
11660WHEN HAND%(13):PROCfillclick
11670WHEN HAND%(14):PROCtextclick
11680WHEN HAND%(15):PROCtbackclick
11690WHEN HAND%(16):PROCtparclick
11700WHEN HAND%(17):PROCfillcontclick
11710WHEN HAND%(18):PROCcolrepclick
11720WHEN HAND%(19):PROCframeclick
11730WHEN HAND%(20):PROCpatfillclick
11740WHEN HAND%(21):PROCrgbcontclick
11750WHEN HAND%(22):PROCgreyscaleclick
11760WHEN HAND%(23):PROCpixelateclick
11770WHEN HAND%(24):PROCrotateclick
11780WHEN HAND%(25):PROCcolscaleclick
11790WHEN HAND%(26):PROCcontrastclick
11800WHEN HAND%(27):PROCposteriseclick
11810WHEN HAND%(29):PROCfilterclick
11820WHEN HAND%(30):PROCwobbleclick
11830WHEN HAND%(32):PROCtoolclick
11840WHEN HAND%(33):PROCzoomclick
11850WHEN HAND%(34):IF BLK%!16=8 THEN PROCsavesetok
11860ENDCASE
11870WHEN 2:IF MOUH%=-2 THEN PROCiconmenu ELSE IF MOUH%=HAND%(2) THEN PROCwindmenu
11880WHEN 16,64:IF MOUH%=HAND%(0) THEN DRAG%=0:PROCstartdrag
11890IF MOUH%=HAND%(7) THEN DRAG%=7:PROCstartdrag
11900IF MOUH%=HAND%(34) THEN DRAG%=34:PROCstartdrag
11910ENDCASE
11920ENDPROC
11930
11940DEFPROCwobbleclick
11950PROCarrows(30,2,3,5,1,999,1)
11960PROCarrows(30,7,8,11,1,999,1)
11970PROCarrows(30,38,39,42,0,359,1)
11980IF MOUIC%=19 THEN PROCsi(30,27,"COS(RAD(A))")
11990IF MOUIC%=21 THEN PROCsi(30,27,"SIN(RAD(A))")
12000IF MOUIC%=23 THEN PROCsi(30,27,"TAN(RAD(A))")
12010IF MOUIC%<>47 THEN ENDPROC
12020SYS&2E,256+9,SHOW%:SHOW%!32=&12345:SYS&2E,266,SHOW%,"<Imagery$Dir>.Show":IF SHOW%!32=&12345 THEN PROCmessage(0,"Could not load 'Show' sprite from !Imagery folder")
12030PROCspinit:PROCspbuf(161*1024):IF Q% THEN PROCspbuferr
12040PROCbackuppic
12050SYS&2E,256+9,PIC%
12060PROCinbackup:SYS &2E,256+16,PIC%,"SHOW",0,400,400,800,592:SYS&2E,290,SHOW%,"SHOW",400,400:PROCoutbackup
12070PROCinsprite(0,SHOW%,"SHOW"):SYS&2E,290,PIC%,"SHOW":PROCoutsprite
12080!PIC%=161*1024:PIC%!4=0:PIC%!8=24:PIC%!12=24:SYS &2E,271,PIC%,"PIC",0,640,256,15
12090WE%=2:GOTO 7230
12100IF FNhigh(30,25) THEN VARS!36=1 ELSE VARS!36=&280
12110VARS!40=0:IF FNhigh(30,44) THEN VARS!40=1
12120FORL%=0 TO 255:?(TAS%+256+L%)=TRASP%?L%:TRASP%?L%=1:NEXT:TRASP%?254=0
12130VARS!44=0:VARS!8=400:VARS!12=400:VARS!16=802:VARS!20=596:VARS!24=TAS%+512:VARS!28=BTC%:VARS!32=TRASP%:A%=VARS:CALL wobble:SYS "Hourglass_Off":PROCinbackup:SYS&2E,290,SHOW%,"SHOW",400,400:PROCoutbackup
12140SYS&2E,256+9,SHOW%:PROCinpic:SYS&2E,256+16,SHOW%,"SHOW",0,400,400,800,592
12150SYS&2E,290,SPBUF%,"PIC",0,0
12160PROCoutpic:PROCspinit:FORL%=0 TO 255:TRASP%?L%=?(TAS%+256+L%):NEXT:PROCforcedrawwob:IF WER% THEN GOTO 90
12170ENDPROC
12180
12190DEFPROCfilterclick
12200PROCarrows(29,2,3,5,0,8,1)
12210ENDPROC
12220
12230DEFPROCrotateclick
12240ENDPROC
12250
12260DEFPROCrgbcontclick
12270RP%=FNperc(21,13):GP%=FNperc(21,15):BP%=FNperc(21,17)
12280IRP%=RP%:IGP%=GP%:IBP%=BP%
12290PROCarrows(21, 3,5,13,0,100,1)
12300PROCarrows(21, 6,8,15,0,100,1)
12310PROCarrows(21, 9,11,17,0,100,1)
12320RP%=FNperc(21,13):GP%=FNperc(21,15):BP%=FNperc(21,17)
12330IF RP%<>IRP% THEN RSL%=RP%:PROCslidud(1,RP%):PROCgetslor(21,30):PROCredrawslid(21,11,RP%)
12340IF GP%<>IGP% THEN GSL%=GP%:PROCslidud(2,GP%):PROCgetslor(21,31):PROCredrawslid(21,10,GP%)
12350IF BP%<>IBP% THEN BSL%=BP%:PROCslidud(3,BP%):PROCgetslor(21,32):PROCredrawslid(21,8,BP%)
12360IF MOUIC%=30 THEN RSL%=FNslidhit(21,30,MOUX%,MOUY%,11,1):RP%=RSL%
12370IF MOUIC%=31 THEN GSL%=FNslidhit(21,31,MOUX%,MOUY%,10,2):GP%=GSL%
12380IF MOUIC%=32 THEN BSL%=FNslidhit(21,32,MOUX%,MOUY%,8,3):BP%=BSL%
12390ENDPROC
12400
12410DEFPROCslidud(WE%,V%)
12420IF WE%=1 THEN PROCui(21,13,STR$(V%)+"%")
12430IF WE%=2 THEN PROCui(21,15,STR$(V%)+"%")
12440IF WE%=3 THEN PROCui(21,17,STR$(V%)+"%")
12450IF WE%=4 THEN
12460V2%=(V%DIV4):IF V2%=0 THEN V2%=1
12470PROCui(33,8, STR$(V2%))
12480ENDIF
12490ENDPROC
12500
12510DEFPROCgreyscaleclick
12520PROCarrows(22,3,5,13,0,9,1):PROCarrows(22,6,8,15,0,9,1):PROCarrows(22,9,11,17,0,9,1)
12530ENDPROC
12540
12550DEFPROCcolscaleclick
12560PROCarrows(25,3,5,13,0,9,1):PROCarrows(25,6,8,15,0,9,1):PROCarrows(25,9,11,17,0,9,1)
12570ENDPROC
12580
12590DEFPROCcontrastclick
12600CONL%=VALFNgi(26,18):CONH%=VALFNgi(26,20)
12610PROCarrows(26,11,13,18,0,15,1):PROCarrows(26,14,16,20,0,15,1)
12620IF CONL%<>VALFNgi(26,18) OR CONH%<>VALFNgi(26,20) THEN PROCforcedrawgraph(26)
12630ENDPROC
12640
12650DEFPROCposteriseclick
12660POL%=VALFNgi(27,22):POH%=VALFNgi(27,24):PON%=VALFNgi(27,26)
12670PROCarrows(27,11,13,22,0,15,1):PROCarrows(27,14,16,24,0,15,1):PROCarrows(27,18,20,26,2,16,1)
12680IF POL%<>VALFNgi(27,22) OR POH%<>VALFNgi(27,24) OR PON%<>VALFNgi(27,26) THEN PROCforcedrawgraph(27)
12690ENDPROC
12700
12710DEFPROCpixelateclick
12720PROCarrows(23,2,4,9,1,100,1):PROCarrows(23,5,7,11,1,100,1)
12730ENDPROC
12740
12750DEFPROCframeclick
12760PROCarrows(19,5,7,10,1,640,1):PROCarrows(19,6,8,12,1,256,1)
12770IF MOUIC%<>14 THEN ENDPROC
12780PROCkillf
12790V%=VALFNgi(19,10):IF V%<1 THEN V%=1
12800IF V%>640 THEN V%=640
12810PROCsi(19,10,STR$V%)
12820W%=VALFNgi(19,12):IF W%<1 THEN W%=1
12830IF W%>256 THEN W%=256
12840PROCsi(19,12,STR$W%)
12850FRW%=V%+1:FRH%=W%+1:FUSE%=36:FUST%=0:PROCud:PROCwindname(2,PIC$+" [Set frame]")
12860IF MOUB%=4 THEN PROCmenoff
12870ENDPROC
12880
12890DEFPROCcolrepclick
12900IF MOUIC%=5 THEN SYS "Hourglass_On":FORL%=0 TO 22596 STEP 4:SPBUF%!L%=OPAL%!L%:NEXT:FORL%=0 TO 255:REPS%?L%=L%:NEXT:SYS "Hourglass_Off":PROCforcedrawcolrep:ENDPROC
12910BLK%!8=HAND%(18):SYS "Wimp_GetWindowState",,BLK%+8
12920XOF%=(!BLK%)-((BLK%!12)-(BLK%!28)):IF XOF%>766 THEN XOF%=766
12930YOF%=(BLK%!4)-(((BLK%!24)-(BLK%!32))-556):IF YOF%>550 THEN YOF%=550
12940IF YOF%<=220 THEN
12950C%=(XOF% DIV 24)+((YOF% DIV 28)*32):PROCinsprite(0,SPBUF%,"Palette"):FX%=((SREP% MOD 32)*24)+2:FY%=((SREP% DIV 32)*28)+4:GCOL0,PALTAB%?(C%*2) TINT PALTAB%?((C%*2)+1)
12960RECTANGLE FILL FX%,FY%,20,20:PROCoutsprite:REPS%?SREP%=C%:PROCforcedrawcolrep
12970ENDIF
12980IF YOF%>=290 AND YOF%<514 THEN YOF%-=290:SREP%=(XOF% DIV 24)+((YOF% DIV 28)*32):PROCforcedrawcolrep
12990ENDPROC
13000
13010DEFPROCarrows(W%,DI%,UI%,TI%,LV%,UV%,I%)
13020V%=VALFNgi(W%,TI%):OV%=V%:IF MOUB%=1 THEN WE%=-1 ELSE WE%=1
13030IF MOUIC%=DI% THEN V%-=(I%*WE%)
13040IF MOUIC%=UI% THEN V%+=(I%*WE%)
13050IF V%<LV% THEN V%=LV%
13060IF V%>UV% THEN V%=UV%
13070IF V%<>OV% AND W%<>21 THEN PROCsi(W%,TI%,STR$(V%))
13080IF V%<>OV% AND W%=21 THEN PROCsi(W%,TI%,STR$(V%)+"%")
13090ENDPROC
13100
13110DEFPROCtparclick
13120ENDPROC
13130
13140DEFPROClosefont
13150IF FONT%<>0 AND FTL% THEN SYS "Font_LoseFont",FHAND%:FTL%=FALSE
13160ENDPROC
13170
13180DEFPROCgetfont
13190IF VALFNgi(14,20)<6 THEN PROCsi(14,20,"6")
13200IF VALFNgi(14,22)<6 THEN PROCsi(14,22,"6")
13210FONTX%=VALFNgi(14,20):FONTY%=VALFNgi(14,22)
13220IF FONT%<>0 THEN FTL%=TRUE:SYS "Font_FindFont",,FO$,FONTX%*16,FONTY%*16 TO FHAND%
13230ENDPROC
13240
13250DEFPROCrestpic
13260PROCinpic
13270SYS&2E,290,SPBUF%,"PIC",0,0
13280PROCoutpic
13290ENDPROC
13300
13310DEFPROCtextclick
13320ENDPROC
13330
13340DEFPROCecfclick
13350IF MOUIC%>25 AND MOUIC%<33 THEN PROCforcedrawpat:ENDPROC
13360IF MOUIC%<>8 THEN ENDPROC
13370IF MOUB%<>1 AND MOUB%<>4 THEN ENDPROC
13380BLK%!8=HAND%(11):SYS "Wimp_GetWindowState",,BLK%+8
13390XOF%=((!BLK%)-(BLK%!12))-180:IF XOF%>766 THEN XOF%=766
13400YOF%=((BLK%!4)-(BLK%!16))-20:IF YOF%>220 THEN YOF%=220
13410col%=(XOF% DIV 24)+((YOF% DIV 28)*32)
13420cby%=TTB%?col%
13430CECF%=FNcecf
13440L%=0:REM FORK%=8 TO 15:IF FNhigh(11,K%) THEN L%=K%-7:NEXT ELSE NEXT
13450IF FNhigh(11,23) THEN L%=1
13460IF FNhigh(11,24) THEN L%=2
13470IF FNhigh(11,16) THEN L%=3
13480FORK%=11 TO 15:IF FNhigh(11,K%) THEN L%=K%-7:NEXT ELSE NEXT
13490IF L%=0 THEN ENDPROC
13500ECF%(L%,CECF%)=cby%
13510PROCforcedrawpat
13520ENDPROC
13530
13540DEFPROCreloadpatfills
13550SYS&2E,266,PFILLS%,"<Imagery$Dir>.PatFills"
13560ENDPROC
13570
13580DEFPROCpatfillclick
13590IF MOUIC%=2 THEN PROCreloadpatfills:ENDPROC
13600BLK%!8=HAND%(20):SYS "Wimp_GetWindowState",,BLK%+8
13610XOF%=((!BLK%)-(BLK%!12)):YOF%=((BLK%!4)-(BLK%!16))
13620K%=-1:FORL%=1 TO 12:BX%=((L%-1)*84)+24:BY%=52:IF XOF%>=BX% AND YOF%>=BY% AND XOF%<(BX%+64) AND YOF%<(BY%+64) THEN K%=L%:NEXT ELSE NEXT
13630IF K%=-1 THEN ENDPROC ELSE CPF%=K%:PROCforcedrawpatfill
13640ENDPROC
13650
13660DEFPROCfilluse
13670SNO%=FNgrafilno:IF SNO%=-1 THEN ENDPROC
13680PROCkillf:FUSE%=31:FUST%=0:GRFN%=SNO%:GRTY%=0:PROCud:PROCwindname(2,PIC$+" [Graduated fill ("+FNfilldet(SNO%+1)+")]"):PROCspinit
13690IF MOUB%=4 THEN PROCmenoff
13700ENDPROC
13710
13720DEFFNfilldet(S%):IF GRTY%=0 THEN ="flood "+STR$S% ELSE ="area "+STR$S%
13730
13740DEFPROCinvertfill
13750NOS%=FNgrafilno
13760IA%=0:IB%=VALFNgi(13,83):IB%-=1
13770REPEAT:SWAP GRFI%(IA%,0,NOS%),GRFI%(IB%,0,NOS%):SWAP GRFI%(IA%,1,NOS%),GRFI%(IB%,1,NOS%):IA%+=1:IB%-=1:UNTIL IA%>IB%
13780PROCforcedrawfill
13790ENDPROC
13800
13810DEFPROCinterpfill
13820NOS%=FNgrafilno
13830IA%=0:REPEAT:IB%=IA%+1
13840IF IB%=16 THEN PROCforcedrawfill:ENDPROC
13850IF GRFI%(IB%,0,NOS%)=0 AND GRFI%(IB%,1,NOS%)=0 THEN IB%+=1:GOTO 13840
13860IF IB%=IA%+1 THEN IA%=IB%:IB%+=1:GOTO 13840
13870T1%=GRFI%(IA%,1,NOS%)>>6
13880R1%=((GRFI%(IA%,0,NOS%) AND %11)<<2)+T1%
13890G1%=(GRFI%(IA%,0,NOS%) AND %1100)+T1%
13900B1%=((GRFI%(IA%,0,NOS%) AND %110000)>>2)+T1%
13910T2%=GRFI%(IB%,1,NOS%)>>6
13920RD=((((GRFI%(IB%,0,NOS%) AND %11)<<2)+T2%)-R1%)/(IB%-IA%)
13930GD=(((GRFI%(IB%,0,NOS%) AND %1100)+T2%)-G1%)/(IB%-IA%)
13940BD=((((GRFI%(IB%,0,NOS%) AND %110000)>>2)+T2%)-B1%)/(IB%-IA%)
13950IA%+=1:FORL%=1 TO IB%-IA%
13960R%=R1%+(RD*L%):G%=G1%+(GD*L%):B%=B1%+(BD*L%)
13970SYS "ColourTrans_ReturnGCOLForMode",(B%<<28)+(G%<<20)+(R%<<12),15 TO G%
13980GRFI%(IA%,0,NOS%)=G%>>2:GRFI%(IA%,1,NOS%)=(G% AND %11)<<6
13990IA%+=1:NEXT
14000IB%=IA%+1:GOTO 13840
14010
14020DEFPROCwipefill
14030NOS%=FNgrafilno
14040FORL%=0 TO 15:FORK%=0 TO 1:GRFI%(L%,K%,NOS%)=0:NEXT:NEXT
14050PROCforcedrawfill:ENDPROC
14060
14070DEFPROCcompfill
14080NOS%=FNgrafilno
14090CA%=GRFI%(0,0,NOS%):TA%=GRFI%(0,1,NOS%):IA%=1:IB%=1
14100WHILE IB%<16
14110IF GRFI%(IB%,0,NOS%)<>CA% OR GRFI%(IB%,1,NOS%)<>TA% THEN GRFI%(IA%,0,NOS%)=GRFI%(IB%,0,NOS%):GRFI%(IA%,1,NOS%)=GRFI%(IB%,1,NOS%):CA%=GRFI%(IA%,0,NOS%):TA%=GRFI%(IA%,1,NOS%):IA%+=1
14120IB%+=1:ENDWHILE
14130WHILE IA%<16:GRFI%(IA%,0,NOS%)=0:GRFI%(IA%,1,NOS%)=0:IA%+=1:ENDWHILE
14140PROCforcedrawfill
14150ENDPROC
14160
14170DEFPROCfillclick
14180IF MOUIC%<0 THEN GOTO 14880
14190IF MOUIC%=105 THEN PROCfilluse:ENDPROC
14200IF MOUIC%=62 THEN PROCinvertfill:ENDPROC
14210IF MOUIC%=63 THEN PROCinterpfill:ENDPROC
14220IF MOUIC%=110 THEN PROCwipefill:ENDPROC
14230IF MOUIC%=111 THEN PROCcompfill:ENDPROC
14240IF MOUIC%<>87 AND MOUIC%<>89 AND MOUIC%<>91 AND MOUIC%<>93 THEN GOTO 14270
14250IF FNhigh(13,MOUIC%) THEN PROCiconlo(13,MOUIC%):ENDPROC
14260IF FNhigh(13,75) OR FNhigh(13,77) THEN PROCmessage(13,"You cannot use an edge priority with a radial fill.") ELSE PROCiconlo(13,87):PROCiconlo(13,89):PROCiconlo(13,91):PROCiconlo(13,93):PROCiconhi(13,MOUIC%)
14270IF MOUIC%<>75 OR FNhigh(13,75) THEN GOTO 14300
14280IF FNhigh(13,87) OR FNhigh(13,89) OR FNhigh(13,91) OR FNhigh(13,93) THEN PROCmessage(4,"You cannot use a radial fill with an edge priority.")
14290PROCiconhi(13,75):PROCiconlo(13,67):PROCiconlo(13,69):PROCiconlo(13,71):PROCiconlo(13,73):PROCiconlo(13,77):ENDPROC
14300IF (MOUIC%>=2 AND MOUIC%<=14) OR MOUIC%=78 OR MOUIC%=79 OR MOUIC%=85 THEN PROCsetgradfill:ENDPROC
14310IF MOUIC%<>77 OR FNhigh(13,77) THEN GOTO 14340
14320IF FNhigh(13,87) OR FNhigh(13,89) OR FNhigh(13,91) OR FNhigh(13,93) THEN PROCmessage(4,"You cannot use a radial fill with an edge priority.")
14330PROCiconhi(13,77):PROCiconlo(13,67):PROCiconlo(13,69):PROCiconlo(13,71):PROCiconlo(13,73):PROCiconlo(13,75):ENDPROC
14340IF MOUIC%=95 OR MOUIC%=99 OR MOUIC%=101 OR MOUIC%=103 OR MOUIC%=97 THEN PROCforcedrawfill:ENDPROC
14350PROCarrows(13, 40,41,81,0,359,1)
14360IF MOUB%=1 AND MOUIC%=43 THEN MOUIC%=45 ELSE IF MOUB%=1 AND MOUIC%=45 THEN MOUIC%=43
14370IF MOUIC%<>43 THEN GOTO 14400
14380NOS%=VALFNgi(13,83):IF NOS%=2 THEN ENDPROC
14390PROCshadeicon(13,FNfilic(NOS%-1)):NOS%-=1:PROCsi(13,83,STR$(NOS%)):ENDPROC
14400IF MOUIC%<>45 THEN GOTO 14430
14410NOS%=VALFNgi(13,83):IF NOS%=16 THEN ENDPROC
14420PROCclearicon(13,FNfilic(NOS%)):NOS%+=1:PROCsi(13,83,STR$(NOS%)):ENDPROC
14430ENDPROC
14440
14450DEFPROCsetgradfill
14460SNO%=FNgrafilno
14470CASE MOUIC% OF
14480WHEN 78:RESTORE 14710
14490WHEN 79:RESTORE 14720
14500WHEN 2:RESTORE 14730
14510WHEN 3:RESTORE 14740
14520WHEN 4:RESTORE 14750
14530WHEN 5:RESTORE 14760
14540WHEN 6:RESTORE 14770
14550WHEN 7:RESTORE 14790
14560WHEN 8:RESTORE 14800
14570WHEN 9:RESTORE 14810
14580WHEN 10:RESTORE 14820
14590WHEN 11:RESTORE 14780
14600WHEN 12:RESTORE 14830
14610WHEN 13:RESTORE 14840
14620WHEN 14:RESTORE 14850
14630WHEN 85:RESTORE 14860
14640ENDCASE
14650FORL%=0 TO 15:PROCshadeicon(13,FNfilic(L%)):FORK%=0 TO 1:GRFI%(L%,K%,SNO%)=0:NEXT:NEXT
14660READ S%:FORL%=0 TO S%-1:PROCclearicon(13,FNfilic(L%)):FORK%=0 TO 1:READ GRFI%(L%,K%,SNO%):NEXT:NEXT
14670PROCsi(13,83,STR$S%)
14680PROCforcedrawfill
14690ENDPROC
14700
14710DATA 12, 1,0,1,64,1,128,1,192,2,0,2,64,2,128,2,192,3,0,3,64,3,128,3,192
14720DATA 12, 4,0,4,64,4,128,4,192,8,0,8,64,8,128,8,192,12,0,12,64,12,128,12,192
14730DATA 12, 5,0,5,64,5,128,5,192,10,0,10,64,10,128,10,192,15,0,15,64,15,128,15,192
14740DATA 12, 16,0,16,64,16,128,16,192,32,0,32,64,32,128,32,192,48,0,48,64,48,128,48,192
14750DATA 12, 17,0,17,64,17,128,17,192,34,0,34,64,34,128,34,192,51,0,51,64,51,128,51,192
14760DATA 12, 20,0,20,64,20,128,20,192,40,0,40,64,40,128,40,192,60,0,60,64,60,128,60,192
14770DATA 15, 0,64,0,128,0,192,21,0,21,64,21,128,21,192,42,0,42,64,42,128,42,192,63,0,63,64,63,128,63,192
14780DATA 12, 1,0,1,64,1,128,1,192,6,0,6,64,6,128,6,192,27,0,27,64,27,128,27,192
14790DATA 8, 18,0,18,64,18,128,18,192,39,0,39,64,39,128,39,192
14800DATA 8, 2,0,2,64,2,128,2,192,7,0,7,64,7,128,7,192
14810DATA 12, 17,0,17,64,17,128,17,192,38,0,38,64,38,128,38,192,59,0,59,64,59,128,59,192
14820DATA 12, 5,0,5,64,5,128,5,192,10,0,26,64,26,128,26,192,47,0,47,64,47,128,47,192
14830DATA 12, 20,0,20,64,20,128,20,192,41,0,41,64,41,128,41,192,62,0,62,64,62,128,62,192
14840DATA 12, 1,0,1,64,1,128,1,192,22,0,22,64,22,128,22,192,43,0,43,64,43,128,43,192
14850DATA 8, 9,0,9,64,9,128,9,192,14,0,14,64,14,128,14,192,0
14860DATA 8, 21,0,21,64,21,128,21,192,42,0,42,64,42,128,42,192
14870
14880XOF%=!BLK%:YOF%=BLK%!4:!BLK%=HAND%(13):SYS "Wimp_GetWindowState",,BLK%
14890PROCgetrdor(484)
14900XOF%=(XOF%-WOX%)-422:IF XOF%>766 OR XOF%<0 THEN ENDPROC
14910YOF%=(YOF%-WOY%)-236:IF YOF%>220 OR YOF%<0 THEN ENDPROC
14920col%=(XOF% DIV 24)+((YOF% DIV 28)*32)
14930tin%=PALTAB%?((col%*2)+1)
14940col%=PALTAB%?(col%*2)
14950FPE%=-1:FORL%=0 TO 15:IF FNhigh(13,FNfilic(L%)) THEN FPE%=L%:NEXT ELSE NEXT
14960SNO%=FNgrafilno
14970IF FPE%=-1 OR SNO%=-1 THEN ENDPROC
14980GRFI%(FPE%,0,SNO%)=col%:GRFI%(FPE%,1,SNO%)=tin%:PROCforcedrawfill
14990ENDPROC
15000
15010DEFFNfilic(FSN%):IF FSN%<=11 THEN =FSN%+26 ELSE =(FSN%-12)+46
15020
15030DEFFNlipaadj(LITA%):IF LITA%=7 THEN =51 ELSE =LITA%
15040
15050DEFPROClinepatclick
15060IF MOUB%=1 THEN
15070IF MOUIC%=2 THEN MOUIC%=3 ELSE IF MOUIC%=3 THEN MOUIC%=2
15080ENDIF
15090CASE MOUIC% OF
15100WHEN 3:PL%=VALFNgi(10,48):IF PL%>1 THEN PROCshadeicon(10,FNlipaadj(PL%+6)):PL%-=1:PROCsi(10,48,STR$PL%)
15110WHEN 2:PL%=VALFNgi(10,48):IF PL%<40 THEN PROCclearicon(10,FNlipaadj(PL%+7)):PL%+=1:PROCsi(10,48,STR$PL%)
15120WHEN 50:PALE%=VALFNgi(10,48):VDU23,6,
15130IN%=7:FORL%=1 TO 5:N%=0:I%=128:FORK%=1 TO 8:IF FNhigh(10,FNlipaadj(IN%)) THEN N%+=I%
15140I%=I% DIV 2:IN%+=1:NEXT:VDU N%:PAT%(L%)=N%:NEXT:VDU 0|
15150IF MOUB%=4 THEN PROCmenoff
15160ENDCASE
15170ENDPROC
15180
15190DEFPROCgrabclick:ING%=(FNhigh(31,3) OR FNhigh(31,4)) AND FUSE%=34
15200IF MOUIC%<>16 THEN ENDPROC
15210IF FUSE%<>34 AND FUST%<2 THEN PROCmessage(1,"Select an area of picture before setting these options.")
15220IF ING% THEN GOTO 15290
15230PROCinpic
15240IF FUSE%<>34 THEN
15250PROCpgrab(OX%,OY%,3)
15260ELSE
15270IF FUST%<>0 THEN PROCpimport(OX%,OY%,3)
15280ENDIF
15290GRXM%=VAL(FNgi(8,17)):IF GRXM%<1 THEN GRXM%=1:PROCsi(8,17,STR$GRXM%)
15300GRYM%=VAL(FNgi(8,19)):IF GRYM%<1 THEN GRYM%=1:PROCsi(8,19,STR$GRYM%)
15310GRXD%=VAL(FNgi(8,18)):IF GRXD%<1 THEN GRXD%=1:PROCsi(8,18,STR$GRXD%)
15320GRYD%=VAL(FNgi(8,20)):IF GRYD%<1 THEN GRYD%=1:PROCsi(8,20,STR$GRYD%)
15330PROCgrabflip
15340GRMA%=FNhigh(8,14)
15350IF NOT ING% THEN GOTO 15380
15360IF FNhigh(31,3) THEN PROCimpcen ELSE PROCimpscale
15370ENDPROC
15380IF FUSE%<>34 THEN
15390PROCpgrab(OX%,OY%,3)
15400ELSE
15410IF FUST%<>0 THEN PROCpimport(OX%,OY%,3)
15420ENDIF
15430PROCoutpic:PROCquickdrawmain
15440ENDPROC
15450
15460DEFPROCgrabflip
15470IF (FNhigh(8,10) AND NOT GRFX%) OR ((NOT FNhigh(8,10)) AND GRFX%) THEN SYS&2E,289,SPBUF%,GRN$:GRFX%=NOT GRFX%
15480IF (FNhigh(8,11) AND NOT GRFY%) OR ((NOT FNhigh(8,11)) AND GRFY%) THEN SYS&2E,303,SPBUF%,GRN$:GRFY%=NOT GRFY%
15490ENDPROC
15500
15510DEFPROCgridclick
15520PROCarrows(6, 2,6,19,1,999,1)
15530PROCarrows(6, 3,7,21,1,999,1)
15540PROCarrows(6, 10,14,23,0,999,1)
15550PROCarrows(6, 11,15,25,0,999,1)
15560IF MOUIC%=27 THEN PROCsi(6,19,"1"):PROCsi(6,21,"1"):PROCsi(6,23,"0"):PROCsi(6,25,"0"):ENDPROC
15570IF MOUIC%<>29 THEN ENDPROC
15580GRIWI%=VAL(FNgi(6,19)):IF GRIWI%<1 THEN GRIWI%=1
15590GRIHE%=VAL(FNgi(6,21)):IF GRIHE%<1 THEN GRIHE%=1
15600GRBX%=VAL(FNgi(6,23)):IF GRBX%>GRIWI% THEN REPEAT:GRBX%-=GRIWI%:UNTIL GRBX%<GRIWI%:PROCsi(6,23,STR$GRBX%)
15610GRBY%=VAL(FNgi(6,25)):IF GRBY%>GRIHE% THEN REPEAT:GRBY%-=GRIHE%:UNTIL GRBY%<GRIHE%:PROCsi(6,25,STR$GRBY%)
15620IF MOUB%=4 THEN PROCmenoff
15630PROCforcedrawmain
15640ENDPROC
15650
15660DEFPROCbrushclick
15670IF MOUIC%>=0 AND MOUIC%<=11 THEN
15680IF FUST%>0 THEN PROCinpic:PROCpaintscale:PROCeorback:PROCpaintbrush(OX%,OY%)
15690SELBR%=MOUIC%+1
15700IF FUST%>0 THEN PROCeorback:PROCpaintbrush(OX%,OY%):PROCoutpic:PROCquickdrawmain
15710PROCforcedrawbrush
15720ENDIF
15730IF MOUIC%<>26 OR FUSE%=29 OR FUSE%=30 THEN ENDPROC
15740IF FUST%>0 THEN PROCinpic:PROCpaintscale:PROCeorback:PROCpaintbrush(OX%,OY%)
15750BXM%=VAL(FNgi(5,23)):IF BXM%<1 THEN BXM%=1:PROCsi(5,23,"1")
15760BYM%=VAL(FNgi(5,20)):IF BYM%<1 THEN BYM%=1:PROCsi(5,20,"1")
15770BXD%=VAL(FNgi(5,24)):IF BXD%<1 THEN BXD%=1:PROCsi(5,24,"1")
15780BYD%=VAL(FNgi(5,19)):IF BYD%<1 THEN BYD%=1:PROCsi(5,19,"1")
15790IF FUST%>0 THEN PROCpaintscale:PROCeorback:PROCpaintbrush(OX%,OY%):PROCoutpic:PROCquickdrawmain
15800ENDPROC
15810
15820DEFPROCairbclick
15830PROCarrows(4, 4,6,17,1,999,1):PROCarrows(4, 5,7,19,4,999,1)
15840ENDPROC
15850
15860DEFPROCmenoff:SYS "Wimp_CreateMenu",-1:ENDPROC
15870
15880DEFPROCbuildiconmenu
15890PROCbm(30,"Imagery")
15900PROCatm(30,"Info",1,"")
15910PROCatm(30,"Save"+FNk("  f3"),0,"SL")
15920PROCatm(30,"Quit",-1,"F")
15930ENDPROC
15940
15950DEFPROCiconmenu:MENO%=30:SYS "Wimp_CreateMenu",,FNcmad(30),MOUX%-64,252:ENDPROC
15960
15970DEFPROCwindmenu:MMEX%=MOUX%:MMEY%=MOUY%:MENO%=0:MEBA%=MENU%:MEINBA%=MENUIND%
15980L%=1:IF FNcmad(L%)<>-1 THEN TAD%=(FNcmad(L%))+28+(5*24):!TAD%=(!TAD%) AND 130:TAD%!8=(TAD%!8) AND (&FFFFFFFF-(1<<22))
15990
16000IF LITY%=21 THEN PROCtickitem(12,1)
16010IF LITY%=53 THEN PROCtickitem(12,2)
16020IF LITY%=5 THEN PROCtickitem(11,1)
16030IF (USE% AND 15)=0 THEN PROCtickitem(11,3)
16040IF (USE% AND 15)=1 THEN PROCtickitem(11,4)
16050IF (USE% AND 15)=2 THEN PROCtickitem(11,5)
16060IF (USE% AND 15)=3 THEN PROCtickitem(11,6)
16070IF (USE% AND 15)=4 THEN PROCtickitem(11,7)
16080IF (USE% AND 15)=6 THEN PROCtickitem(11,8)
16090IF (USE% AND 15)=7 THEN PROCtickitem(11,9)
16100IF (USE% AND 112)=16 THEN PROCtickitem(11,10)
16110IF (USE% AND 112)=32 THEN PROCtickitem(11,11)
16120IF (USE% AND 112)=48 THEN PROCtickitem(11,12)
16130IF (USE% AND 112)=64 THEN PROCtickitem(11,13)
16140IF (USE% AND 112)=80 THEN PROCtickitem(11,14)
16150IF FONTS%=0 THEN PROCshadeitem(14,FONTS%+3)
16160IF FONTA%=-1 THEN PROCshadeitem(0,4)
16170IF GRCO%=-1 THEN PROCshadeitem(5,2) ELSE PROCshadeitem(5,1):PROCtickitem(0,10)
16180IF GRLO% THEN PROCtickitem(5,3)
16190IF ZOOM%>1 THEN PROCtickitem(0,9)
16200IF FNwopen(32) THEN PROCtickitem(0,11)
16210IF KUKE% THEN PROCtickitem(10,5)
16220IF KSC% THEN PROCtickitem(10,6)
16230IF UNDO%<>-1 THEN PROCshadeitem(10,2) ELSE PROCshadeitem(10,3):PROCshadeitem(7,1)
16240IF FUSE%=34 THEN PROCshadeitem(1,6)
16250
16260SYS "Wimp_CreateMenu",,FNcmad(0),MOUX%-64,MOUY%+60
16270ENDPROC
16280
16290DEFPROCbuildmainmenu
16300MEOF%=0:MEIN%=0
16310REM ------------------------
16320
16330PROCbuildmm2:ENDPROC
16340
16350DEFFNk(IT$):IF KSC% THEN =IT$ ELSE =""
16360
16370DEFPROCbuildmm2
16380MEOF%=0:MEIN%=0
16390
16400PROCbm(15,"Speed")
16410PROCatm(15,"Very fast",-1,"")
16420PROCatm(15,"Fast",-1,"")
16430PROCatm(15,"Medium",-1,"")
16440PROCatm(15,"Slow",-1,"F")
16450
16460PROCbm(19,"Preserve")
16470PROCatm(19,"-> 1"+FNk("  �f1"),-1,"")
16480PROCatm(19,"-> 2"+FNk("  �f2"),-1,"")
16490PROCatm(19,"-> 3"+FNk("  �f3"),-1,"")
16500PROCatm(19,"-> 4"+FNk("  �f4"),-1,"F")
16510
16520PROCbm(20,"Restore")
16530PROCatm(20,"<- 1"+FNk("  ^f1"),-1,"")
16540PROCatm(20,"<- 2"+FNk("  ^f2"),-1,"")
16550PROCatm(20,"<- 3"+FNk("  ^f3"),-1,"")
16560PROCatm(20,"<- 4"+FNk("  ^f4"),-1,"F")
16570
16580PROCbm(1,"File")
16590PROCatm(1,"Save"+FNk("            f3"),0,"S")
16600PROCatm(1,"Save as sprite",7,"S")
16610PROCatm(1,"Save defaults",-1,"S")
16620PROCatm(1,"Save settings",34,"S")
16630PROCatm(1,"Export",-1,"S")
16640PROCatm(1,"Import",31,"L")
16650PROCatm(1,"Preserve",FNcmad(19),"S")
16660PROCatm(1,"Restore",FNcmad(20),"SF")
16670
16680PROCbm(12,"Pattern")
16690PROCatm(12,"Restarted",-1,"")
16700PROCatm(12,"Continuous",-1,"F")
16710
16720PROCbm(11,"Styles")
16730PROCatm(11,"Solid line",-1,"")
16740PROCatm(11,"Line pattern",FNcmad(12),"L")
16750PROCatm(11,"Overwrite",-1,"")
16760PROCatm(11,"OR",-1,"")
16770PROCatm(11,"AND",-1,"")
16780PROCatm(11,"EOR",-1,"")
16790PROCatm(11,"Invert",-1,"")
16800PROCatm(11,"NAND",-1,"")
16810PROCatm(11,"NOR",-1,"L")
16820PROCatm(11,"ECF 1",-1,"")
16830PROCatm(11,"ECF 2",-1,"")
16840PROCatm(11,"ECF 3",-1,"")
16850PROCatm(11,"ECF 4",-1,"")
16860PROCatm(11,"Giant ECF",-1,"F")
16870
16880PROCbm(13,"Fill")
16890PROCatm(13,"Flood fill",-1,"S")
16900PROCatm(13,"Pattern fill",-1,"SL")
16910PROCatm(13,"Graduated fill",17,"F")
16920
16930PROCbm(2,"Paint")
16940PROCatm(2,"Show palette"+FNk("        f1"),-1,"")
16950PROCatm(2,"Select colour"+FNk("       f2"),-1,"S")
16960PROCatm(2,"Unset transparents",-1,"S")
16970PROCatm(2,"Set transparents",-1,"SL")
16980PROCatm(2,"Pixels"+FNk("              f4"),-1,"S")
16990PROCatm(2,"Sketch"+FNk("              f5"),-1,"S")
17000PROCatm(2,"Rubber line"+FNk("         f6"),-1,"S")
17010PROCatm(2,"Airbrush..."+FNk("         f7"),-1,"S")
17020PROCatm(2,"Paintbrush..."+FNk("       f8"),-1,"L")
17030PROCatm(2,"Fill",FNcmad(13),"L")
17040PROCatm(2,"Line style",FNcmad(11),"F")
17050
17060PROCbm(4,"Shapes")
17070PROCatm(4,"Wire rectangle"+FNk("       �f5"),-1,"S")
17080PROCatm(4,"Wire triangle"+FNk("        �f6"),-1,"S")
17090PROCatm(4,"Wire circle"+FNk("          �f7"),-1,"S")
17100PROCatm(4,"Wire ellipse"+FNk("         �f8"),-1,"")
17110PROCatm(4,"Wire parallelogram"+FNk("   �f9"),-1,"")
17120PROCatm(4,"Wire arc"+FNk("             �f10"),-1,"SL")
17130PROCatm(4,"Solid rectangle"+FNk("      ^f5"),-1,"S")
17140PROCatm(4,"Solid triangle"+FNk("       ^f6"),-1,"S")
17150PROCatm(4,"Solid circle"+FNk("         ^f7"),-1,"S")
17160PROCatm(4,"Solid ellipse"+FNk("        ^f8"),-1,"S")
17170PROCatm(4,"Solid parallelogram"+FNk("  ^f9"),-1,"S")
17180PROCatm(4,"Solid sector"+FNk("         ^f10"),-1,"")
17190PROCatm(4,"Solid segment"+FNk("        ^f11"),-1,"SF")
17200
17210PROCbm(6,"Presets")
17220PROCatm(6,"2x2 grid",-1,"")
17230PROCatm(6,"3x3 grid",-1,"")
17240PROCatm(6,"4x4 grid",-1,"")
17250PROCatm(6,"6x6 grid",-1,"")
17260PROCatm(6,"8x8 grid",-1,"")
17270PROCatm(6,"16x16 grid",-1,"")
17280PROCatm(6,"32x32 grid",-1,"")
17290PROCatm(6,"32x16 grid",-1,"F")
17300
17310PROCbm(5,"Grid")
17320PROCatm(5,"Show grid"+FNk("     ^f12"),-1,"S")
17330PROCatm(5,"Hide grid"+FNk("     �f12"),-1,"S")
17340PROCatm(5,"Grid lock",-1,"S")
17350PROCatm(5,"Preset grids",FNcmad(6),"")
17360PROCatm(5,"Edit grid",6,"F")
17370
17380PROCbm(7,"Manipulate")
17390PROCatm(7,"Undo",-1,"L")
17400PROCatm(7,"Copy area...",-1,"S")
17410PROCatm(7,"Move area...",-1,"S")
17420PROCatm(7,"Mirror area",-1,"S")
17430PROCatm(7,"Invert area",-1,"S")
17440PROCatm(7,"Strip area",-1,"S")
17450PROCatm(7,"Rotate...",-1,"S")
17460PROCatm(7,"Scale to fit...",-1,"L")
17470PROCatm(7,"Wobble...",-1,"")
17480PROCatm(7,"Pixel mapping",-1,"F")
17490
17500PROCbm(17,"Colour scales")
17510PROCatm(17,"Red",-1,"")
17520PROCatm(17,"Green",-1,"")
17530PROCatm(17,"Blue",-1,"")
17540PROCatm(17,"Cyan",-1,"")
17550PROCatm(17,"Magenta",-1,"")
17560PROCatm(17,"Yellow",-1,"F")
17570
17580PROCbm(18,"Tint")
17590PROCatm(18,"0",-1,"")
17600PROCatm(18,"1",-1,"")
17610PROCatm(18,"2",-1,"")
17620PROCatm(18,"3",-1,"F")
17630
17640PROCbm(8,"Special")
17650PROCatm(8,"Trace",-1,"S")
17660PROCatm(8,"Smudge area",-1,"")
17670PROCatm(8,"Wet brush...",-1,"S")
17680PROCatm(8,"Tint area",-1,"S")
17690PROCatm(8,"Tint brush...",-1,"S")
17700PROCatm(8,"Set frame",19,"SL")
17710PROCatm(8,"RGB control...",-1,"")
17720PROCatm(8,"Grey scale...",-1,"S")
17730PROCatm(8,"Contrast control...",-1,"")
17740PROCatm(8,"Posterization...",-1,"S")
17750PROCatm(8,"De-tint",FNcmad(18),"S")
17760PROCatm(8,"RGB graph",-1,"S")
17770PROCatm(8,"Colour scale",FNcmad(17),"SL")
17780PROCatm(8,"Pixelate...",-1,"S")
17790PROCatm(8,"Filter...",-1,"")
17800PROCatm(8,"Colour replace...",-1,"SF")
17810
17820PROCbm(9,"Edit")
17830PROCatm(9,"Line pattern",10,"S")
17840PROCatm(9,"Fill patterns",11,"S")
17850PROCatm(9,"Edit brush/fill",12,"S")
17860PROCatm(9,"Graduated fills",13,"F")
17870
17880PROCbm(10,"Misc")
17890PROCatm(10,"Info",1,"L")
17900PROCatm(10,"Enable undo",-1,"S")
17910PROCatm(10,"Disable undo",-1,"S")
17920PROCatm(10,"Mouse speed",FNcmad(15),"")
17930PROCatm(10,"Cursor keys",-1,"")
17940PROCatm(10,"Full menus",-1,"")
17950PROCatm(10,"Bring to top  "+FNk("f11"),-1,"L")
17960PROCatm(10,"Wipe picture",-1,"F")
17970
17980PROCbm(0,"Imagery")
17990PROCatm(0,"Misc",FNcmad(10),"")
18000PROCatm(0,"File",FNcmad(1),"L")
18010PROCatm(0,"Paint"+FNk("       f9"),FNcmad(2),"")
18020PROCatm(0,"Text",0,"S")
18030PROCatm(0,"Shapes",FNcmad(4),"")
18040PROCatm(0,"Special",FNcmad(8),"")
18050PROCatm(0,"Edit",FNcmad(9),"")
18060PROCatm(0,"Manipulate",FNcmad(7),"L")
18070PROCatm(0,"Zoom"+FNk("        f10"),33,"S")
18080PROCatm(0,"Grid",FNcmad(5),"")
18090PROCatm(0,"Toolkit",-1,"SF")
18100
18110ENDPROC
18120
18130DEFFNfont(F%):IF FONTA%=-1 OR F%>FONTS% THEN ="" ELSE =$(FONTA%+FONTO%+(!(FONTA%+(F%*4))))
18140
18150DEFFNfontroot(F$):IF INSTR(F$,".")=0 THEN =F$
18160IPF%=1:IPF$="":WHILE MID$(F$,IPF%,1)<>".":IPF$=IPF$+MID$(F$,IPF%,1):IPF%+=1:ENDWHILE:=IPF$
18170
18180REM ** Create a menu (Number, Title)
18190DEFPROCbm(MN%,MT$)
18200!FNmad(MN%)=MENU%+MEOF%:TAD%=MENU%+MEOF%
18210$TAD%=MT$:TAD%?12=7:TAD%?13=2:TAD%?14=7:TAD%?15=0:TAD%!16=0:TAD%!20=44:TAD%!24=0
18220MEOF%+=28
18230IF MEOF%>MESI% THEN PROCmessage(0,"Menu tree has run out of room.")
18240ENDPROC
18250
18260REM ** Feature format : L = Follow by dotted line
18270REM **                : F = Last item
18280DEFPROCatm(MN%,IT$,HA%,FE$)
18290TAD%=MENU%+MEOF%
18300FE%=0
18310IF INSTR(FE$,"L") THEN FE%+=2
18320IF INSTR(FE$,"F") THEN FE%+=128
18330!TAD%=FE%
18340IF HA%>-1 AND HA%<&8000 THEN TAD%!4=HAND%(HA%)
18350IF HA%=-1 THEN TAD%!4=-1
18360IF HA%>&8000 THEN TAD%!4=HA%
18370TAD%!8=1 OR (7<<24) OR 256
18380IF INSTR(FE$,"S") THEN TAD%!8=(TAD%!8)+(1<<22)
18390$(MENUIND%+MEIN%)=IT$
18400ILE%=LEN(IT$)+1
18410IF (ILE% MOD 4)>0 THEN ILE%=((ILE% DIV 4)+1)*4
18420TAD%!12=MENUIND%+MEIN%
18430TAD%!20=LEN(IT$)
18440TAD%!16=MENALO%
18450MEIN%+=ILE%
18460IF MEIN%>MESI% THEN PROCmessage(1,"Menu indirection buffer overflow.")
18470MEOF%+=24
18480IF MEOF%>MESI% THEN PROCmessage(0,"Menu tree has run out of room")
18490IF ((!(FNcmad(MN%)+16))-32)<(LEN(IT$)*16) THEN !(FNcmad(MN%)+16)=(LEN(IT$)*16)+32
18500ENDPROC
18510
18520DEFPROCshadeitem(MN%,IN%):TAD%=FNcmad(MN%)+28+((IN%-1)*24):TAD%!8=(TAD%!8) OR (1<<22):ENDPROC
18530
18540DEFPROCtickitem(MN%,IN%):TAD%=FNcmad(MN%)+28+((IN%-1)*24):!TAD%=(!TAD%) OR 1:ENDPROC
18550
18560DEFPROCmenu:SYS6,229
18570SYS "Wimp_GetPointerInfo",,BLK%+128:MBU%=BLK%!136
18580SYS "Wimp_DecodeMenu",,FNcmad(MENO%),BLK%,SEL%
18590DSI%=FALSE
18600SEL$=$SEL%:IT$="":HE%=LEN(SEL$):WHILE MID$(SEL$,HE%,1)<>" " AND HE%>1:IT$=MID$(SEL$,HE%,1)+IT$:HE%-=1:ENDWHILE
18610IF INSTR(IT$,"^")<>0 OR INSTR(IT$,"�")<>0 OR (LEN(IT$)<=3 AND LEFT$(IT$,1)="f") THEN SEL$=LEFT$(SEL$,HE%):REPEAT:SEL$=LEFT$(SEL$,LEN(SEL$)-1):UNTIL RIGHT$(SEL$,1)<>" "
18620IF RIGHT$(SEL$,3)="..." THEN SEL$=LEFT$(SEL$,LEN(SEL$)-3)
18630IF INSTR(SEL$,".")<>0 AND LEFT$(SEL$,5)<>"Text." AND LEFT$(SEL$,16)<>"Special.De-tint." AND LEFT$(SEL$,14)<>"File.Preserve." AND LEFT$(SEL$,13)<>"File.Restore." THEN
18640B$="":WHILE RIGHT$(SEL$,1)<>".":B$=RIGHT$(SEL$,1)+B$:SEL$=LEFT$(SEL$,LEN(SEL$)-1):ENDWHILE:SEL$=B$
18650ENDIF
18660$SEL%=SEL$
18670IF $SEL%="Quit" THEN PROCkillf:FUSE%=-1:PROCwindname(2,PIC$):PROCforcedrawmain:IF FNquityn THEN PROCdie
18680IF $SEL%="Paint" THEN PROCnf("",-1,-1)
18690IF $SEL%="Show palette" THEN DSI%=TRUE:PROCopenpal
18700
18710IF $SEL%="Paintbrush" THEN PROCnf("Paintbrush",4,5):PROCtkh(10)
18720
18730IF $SEL%="2x2 grid" THEN DSI%=TRUE:GRIWI%=2:GRIHE%=2:PROCsetgric:PROCforcedrawmain
18740IF $SEL%="3x3 grid" THEN DSI%=TRUE:GRIWI%=3:GRIHE%=3:PROCsetgric:PROCforcedrawmain
18750IF $SEL%="4x4 grid" THEN DSI%=TRUE:GRIWI%=4:GRIHE%=4:PROCsetgric:PROCforcedrawmain
18760IF $SEL%="6x6 grid" THEN DSI%=TRUE:GRIWI%=6:GRIHE%=6:PROCsetgric:PROCforcedrawmain
18770IF $SEL%="8x8 grid" THEN DSI%=TRUE:GRIWI%=8:GRIHE%=8:PROCsetgric:PROCforcedrawmain
18780IF $SEL%="16x16 grid" THEN DSI%=TRUE:GRIWI%=16:GRIHE%=16:PROCsetgric:PROCforcedrawmain
18790IF $SEL%="32x32 grid" THEN DSI%=TRUE:GRIWI%=32:GRIHE%=32:PROCsetgric:PROCforcedrawmain
18800IF $SEL%="32x16 grid" THEN DSI%=TRUE:GRIWI%=32:GRIHE%=16:PROCsetgric:PROCforcedrawmain
18810IF $SEL%="Wire ellipse" THEN PROCnf("Wire ellipse",11,-1)
18820
18830IF $SEL%="Wire parallelogram" THEN PROCnf("Wire parallelogram",13,-1):PROCtkh(17)
18840
18850IF $SEL%="Solid sector" THEN PROCnf("Solid sector",16,-1)
18860
18870IF $SEL%="Scale to fit" THEN PROCnf("Scale to fit",23,8):FUCO%=0:PROCpatch(23)
18880
18890IF $SEL%="Pixel mapping" THEN PROCnf("Pixel mapping",25,-1):FUCO%=1:OX%=-1:OY%=-1:PROCpatch(25)
18900IF SEL$="Solid line" THEN DSI%=TRUE:LITY%=5
18910IF SEL$="Restarted" THEN DSI%=TRUE:LITY%=21
18920IF SEL$="Continuous" THEN DSI%=TRUE:LITY%=53
18930IF SEL$="Overwrite" THEN DSI%=TRUE:USE%=(USE% AND 112)
18940IF SEL$="OR" THEN DSI%=TRUE:USE%=(USE% AND 112)+1
18950IF SEL$="AND" THEN DSI%=TRUE:USE%=(USE% AND 112)+2
18960IF SEL$="EOR" THEN DSI%=TRUE:USE%=(USE% AND 112)+3
18970IF SEL$="Invert" THEN DSI%=TRUE:USE%=(USE% AND 112)+4
18980IF SEL$="NAND" THEN DSI%=TRUE:USE%=(USE% AND 112)+6
18990IF SEL$="NOR" THEN DSI%=TRUE:USE%=(USE% AND 112)+7
19000IF SEL$="ECF 1" AND (USE% AND 112)=16 THEN DSI%=TRUE:USE%=(USE% AND 15) ELSE IF SEL$="ECF 1" THEN DSI%=TRUE:USE%=(USE% AND 15)+16
19010IF SEL$="ECF 2" AND (USE% AND 112)=32 THEN DSI%=TRUE:USE%=(USE% AND 15) ELSE IF SEL$="ECF 2" THEN DSI%=TRUE:USE%=(USE% AND 15)+32
19020IF SEL$="ECF 3" AND (USE% AND 112)=48 THEN DSI%=TRUE:USE%=(USE% AND 15) ELSE IF SEL$="ECF 3" THEN DSI%=TRUE:USE%=(USE% AND 15)+48
19030IF SEL$="ECF 4" AND (USE% AND 112)=64 THEN DSI%=TRUE:USE%=(USE% AND 15) ELSE IF SEL$="ECF 4" THEN DSI%=TRUE:USE%=(USE% AND 15)+64
19040IF SEL$="Giant ECF" AND (USE% AND 112)=80 THEN DSI%=TRUE:USE%=(USE% AND 15) ELSE IF SEL$="Giant ECF" THEN DSI%=TRUE:USE%=(USE% AND 15)+80
19050IF SEL$="Smudge area" THEN PROCnf("Smudge area",27,-1)
19060IF $SEL%="Very fast" THEN MMY%=4:MMX%=4:MOUSE STEP MMX%,MMY%
19070IF $SEL%="Fast" THEN MMY%=3:MMX%=3:MOUSE STEP MMX%,MMY%
19080IF $SEL%="Medium" THEN MMY%=2:MMX%=2:MOUSE STEP MMX%,MMY%
19090IF $SEL%="Slow" THEN MMY%=1:MMX%=1:MOUSE STEP MMX%,MMY%
19100IF $SEL%="RGB control" THEN PROCnf("RGB control",38,21):PROCpatch(38)
19110IF $SEL%="Wipe picture" THEN PROCnf("",-1,-1):PROCwipepic
19120IF $SEL%="Cursor keys" THEN KUKE%=NOT KUKE%:DSI%=TRUE
19130IF $SEL%="Contrast control" THEN PROCnf("Contrast control",43,26):PROCpatch(43)
19140
19150IF SEL$="Filter" THEN PROCnf("Filter",47,29)
19160IF SEL$="Wobble" THEN SYS&2E,256+9,SHOW%:SYS&2E,266,SHOW%,"<Imagery$Dir>.Show":PROCnf("Wobble",48,30)
19170IF $SEL%="Bring to top" AND LAOPWI%<>-1 THEN PROCopenwind(LAOPWI%)
19180
19190IF SEL$="Full menus" THEN KSC%=NOT KSC%:PROCbuildmm2:PROCbuildiconmenu:DSI%=TRUE
19200IF DSI% AND MBU%=1 THEN PROCwindmenu
19210ENDPROC
19220
19230DEFPROCud:IF UNDO%<>-1 THEN !VARS=PIC%:VARS!4=UNDO%:A%=VARS:CALL backuppic
19240ENDPROC
19250
19260DEFPROCnf(F$,F%,W%)
19270PROCkillf:IF F$<>"" THEN PROCud:PROCwindname(2,PIC$+" ["+F$+"]") ELSE PROCwindname(2,PIC$)
19280FUSE%=F%:FUST%=0:DSI%=TRUE:PROCspinit:IF W%<>-1 THEN PROCopenwind(W%)
19290ENDPROC
19300
19310DEFPROCwipepic
19320!IO%=5:$(IO%+4)="Are you sure you want to wipe the picture?"+CHR$0
19330SYS "Wimp_ReportError",IO%,%11011,"!Imagery"+CHR$0 TO ,R%
19340IF R%=0 THEN GOTO 19330
19350IF R%=2 THEN ENDPROC
19360PROCinpic:VDU26:GCOL0,128 TINT 0:CLG:PROCoutpic:PROCforcedrawmain
19370ENDPROC
19380
19390DEFFNquityn
19400!IO%=5:$(IO%+4)="Are you sure you want to quit?"+CHR$0
19410SYS "Wimp_ReportError",IO%,%11011,"!Imagery"+CHR$0 TO ,R%
19420IF R%=0 THEN GOTO 19410
19430=(R%=1)
19440
19450DEFPROCimport
19460A$=FNgetname:BLK%!12=BLK%!8:BLK%!16=4:!BLK%=64:SYS "Wimp_SendMessage",17,BLK%,BLK%!4
19470PROCkillf:FUSE%=34:FUST%=0:PROCopenwind(8):PROCspinit
19480F%=OPENUP(A$):IMS%=EXT#F%:CLOSE#F%
19490PROCspbuf(IMS%+64):IF Q% THEN FUSE%=-1:PROCclosewind(8):PROCspinit:PROCspbuferr
19500SYS&2E,266,SPBUF%,A$
19510SYS&2E,269,SPBUF%,IO%,16,1 TO ,,,L%
19520IMP$="":FORK%=0 TO L%-1:IMP$=IMP$+CHR$(IO%?K%):NEXT
19530SYS&2E,296,SPBUF%,IMP$ TO ,,,IMW%,IMH%,,IMM%
19540IF GRFX% THEN SYS&2E,289,SPBUF%,IMP$
19550IF GRFY% THEN SYS&2E,303,SPBUF%,IMP$
19560SYS&35,IMM%,5 TO ,,E%
19570PHE%=2^E%:IF E%<2 THEN IO%!4=1:IO%!12=2^(2-E%) ELSE IO%!4=2^(E%-2):IO%!12=1
19580SYS&35,IMM%,4 TO ,,E%
19590PWI%=2^E%
19600SX%=2^(E%-1):!IO%=SX%:IO%!8=1
19610L%=(SPBUF%+(SPBUF%!8)):IF L%!32=44 THEN
19620IMPA%=0
19630ELSE
19640IMPA%=L%+44:K%=48:I%=52:WHILE I%<(L%!32):L%!K%=L%!I%:I%+=8:K%+=4:ENDWHILE
19650ENDIF
19660IF IMM%<>15 OR IMPA%<>0 THEN SYS&40740,IMM%,IMPA%,15,0,PIXTAB2%:IMPT%=PIXTAB2% ELSE IMPT%=0
19670PROCud:PROCwindname(2,PIC$+" [Import '"+IMP$+"']")
19680IMH%=IMH%*PHE%:IMW%=IMW%*PWI%
19690GRN$=IMP$
19700ENDPROC
19710
19720DEFPROCimpcen
19730PROCinpic:PROCpimport(640,512,0):PROCoutpic:PROCquickdrawmain:PROCkillf:FUSE%=-1
19740ENDPROC
19750
19760DEFPROCimpscale
19770OXM%=GRXM%:OYM%=GRYM%:OXD%=GRXD%:OYD%=GRYD%:GRXM%=1280:GRYM%=1024:GRXD%=IMW%:GRYD%=IMH%
19780PROCinpic:PROCpimport(640,512,0):PROCoutpic:PROCforcedrawmain:PROCkillf:FUSE%=-1:GRXD%=OXD%:GRYD%=OYD%:GRXM%=OXM%:GRYM%=OYM%
19790ENDPROC
19800
19810DEFPROCimptile:PROCpimport(X%,Y%,0):IF NOT FNhigh(31,5) THEN ENDPROC
19820SYS "Hourglass_On":AW=XR*IMW%:AH=YR*IMH%
19830K%=0:REPEAT:L%=0:REPEAT:OX=K%*AW:OY=L%*AH:PROCpimport(X%+OX,Y%+OY,0):PROCpimport(X%+OX,Y%-OY,0):PROCpimport(X%-OX,Y%+OY,0):PROCpimport(X%-OX,Y%-OY,0):L%+=1:UNTIL (Y%+(L%*AH))>1023+AH AND (Y%-(L%*AH))<-AH
19840K%+=1:UNTIL (X%+(K%*AW))>1279+AW AND (X%-(K%*AW))<-AW
19850SYS "Hourglass_Off":ENDPROC
19860
19870DEFPROCfillcontclick
19880IF MOUIC%<>24 THEN ENDPROC
19890GRFN%=-1
19900IF FNhigh(17,3) THEN GRFN%=0
19910IF FNhigh(17,9) THEN GRFN%=1
19920IF FNhigh(17,12) THEN GRFN%=2
19930IF FNhigh(17,15) THEN GRFN%=3
19940IF FNhigh(17,18) THEN GRFN%=4
19950IF GRFN%=-1 THEN PROCmessage(0,"You must select a fill sequence to use.")
19960IF FUSE%=31 THEN
19970IF GRTY%=1 THEN PROCkillf
19980ENDIF
19990GRTY%=-1
20000IF FNhigh(17,20) THEN GRTY%=0
20010IF FNhigh(17,22) THEN GRTY%=1:FUST%=0
20020IF GRTY%=-1 THEN PROCmessage(0,"You must select the type of fill to use.")
20030PROCkillf:FUSE%=31:FUST%=0:PROCud:PROCwindname(2,PIC$+" [Graduated fill ("+FNfilldet(GRFN%+1)+")]"):PROCspinit:PROCtkh(12)
20040IF MOUB%=4 THEN PROCmenoff
20050ENDPROC
20060
20070DEFPROCunsetrasp:ENDPROC
20080
20090DEFPROCsetrasp:ENDPROC
20100
20110DEFPROCspinit
20120PROCspbuf(0)
20130ENDPROC
20140
20150DEFPROCsetgric
20160PROCsi(6,19,STR$GRIWI%)
20170PROCsi(6,21,STR$GRIHE%)
20180GRBX%=VAL(FNgi(6,23)):IF GRBX%>GRIWI% THEN REPEAT:GRBX%-=GRIWI%:UNTIL GRBX%<GRIWI%:PROCsi(6,23,STR$GRBX%)
20190GRBY%=VAL(FNgi(6,25)):IF GRBY%>GRIHE% THEN REPEAT:GRBY%-=GRIHE%:UNTIL GRBY%<GRIHE%:PROCsi(6,25,STR$GRBY%)
20200ENDPROC
20210
20220DEFPROCzoomsize
20230!BLK%=HAND%(2):SYS "Wimp_GetWindowState",,BLK%:WIF%=BLK%!28
20240!BLK%=HAND%(2):SYS "Wimp_CloseWindow",,BLK%
20250!BLK%=0:BLK%!4=-1023*ZOOM%:BLK%!8=1279*ZOOM%:BLK%!12=0:SYS "Wimp_SetExtent",HAND%(2),BLK%
20260!BLK%=HAND%(2):SYS "Wimp_GetWindowState",,BLK%
20270BLK%!28=WIF%:SYS "Wimp_OpenWindow",,BLK%:ENDPROC
20280
20290DEFPROCwind_ext(WH%,TX%,TY%,SX%,SY%)
20300!BLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,BLK%:WIF%=BLK%!28
20310!BLK%=HAND%(WH%):SYS "Wimp_CloseWindow",,BLK%
20320!BLK%=TX%:BLK%!4=TY%:BLK%!8=SX%:BLK%!12=SY%:SYS "Wimp_SetExtent",HAND%(WH%),BLK%
20330!BLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,BLK%
20340IF WH%=12 AND TY%=-900 THEN BLK%!8=(BLK%!8)-260
20350BLK%!28=WIF%:SYS "Wimp_OpenWindow",,BLK%:ENDPROC
20360ENDPROC
20370
20380DEFPROCed_bru
20390PROCwind_ext(12,0,-640,1024,0):EDTY%=0
20400ENDPROC
20410
20420DEFPROCed_fill
20430PROCwind_ext(12,0,-900,1024,0):EDTY%=1
20440ENDPROC
20450
20460DEFFNgstr(AD%):W$="":IF ?AD%<32 THEN =W$ ELSE REPEAT:W$=W$+CHR$(?AD%):AD%+=1:UNTIL ?AD%<32:=W$
20470
20480DEFFNgi(WH%,IC%):LWG%=WH%:LIG%=IC%:!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:SYS "Wimp_GetIconState",,ICBLK%:=FNgstr(!(ICBLK%+28))
20490
20500DEFPROCsi(WH2%,IC2%,SET$):!ICBLK%=HAND%(WH2%):ICBLK%!4=IC2%:SYS "Wimp_GetIconState",,ICBLK%:ICBLK%!8=0:ICBLK%!12=0:$(ICBLK%!28)=SET$:SYS "Wimp_SetIconState",,ICBLK%:ENDPROC
20510
20520DEFFNhigh(WH%,IC%):!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:SYS "Wimp_GetIconState",,ICBLK%:=((?(ICBLK%+26)) AND %100000)=32
20530
20540DEFFNwopen(WH%):!ICBLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,ICBLK%:=((ICBLK%?34) AND 1)=1
20550
20560DEFPROCshadeicon(WH%,IC%):PROCicflag(WH%,IC%,1<<22,0):ENDPROC
20570
20580DEFPROCclearicon(WH%,IC%):PROCicflag(WH%,IC%,0,1<<22):ENDPROC
20590
20600DEFPROCiconhi(WH%,IC%):PROCicflag(WH%,IC%,1<<21,0):ENDPROC
20610
20620DEFPROCiconlo(WH%,IC%):PROCicflag(WH%,IC%,0,1<<21):ENDPROC
20630
20640DEFPROCicflag(WH%,IC%,WE%,WM%)
20650!ICBLK%=HAND%(WH%):ICBLK%!4=IC%
20660ICBLK%!8=WE%:IF WM%<>0 THEN ICBLK%!12=WM% ELSE ICBLK%!12=ICBLK%!8
20670SYS "Wimp_SetIconState",,ICBLK%
20680ENDPROC
20690
20700DEFPROCpoint:SYS "Wimp_GetPointerInfo",,POI%:MOX%=!POI%:MOY%=POI%!4:MOB%=POI%!8:MOH%=POI%!12:ENDPROC
20710
20720DEFPROCwindname(WH%,SET$):!BLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,BLK%:WIF%=BLK%!28:SYS "Wimp_GetWindowInfo",,BLK%:SYS"Wimp_CloseWindow",,BLK%
20730AD%=BLK%!76:BLK%!28=WIF%:$AD%=SET$:SYS "Wimp_OpenWindow",,BLK%:ENDPROC
20740
20750DEFPROCdragfin
20760ENDPROC
20770
20780DEFPROCstartdrag
20790SYS "Wimp_GetWindowState",,BLK%+12
20800X%=BLK%!16:Y%=BLK%!28:BLK%!16=0:SYS "Wimp_GetIconState",,BLK%+12
20810BLK%!16=5:BLK%!20+=X%-2:BLK%!24+=Y%-4
20820BLK%!28+=X%+2:BLK%!32+=Y%
20830BLK%!36=0:BLK%!40=0:BLK%!44=&7FFFFFFF:BLK%!48=&7FFFFFFF:SYS "Wimp_DragBox",,BLK%+12:ENDPROC
20840
20850DEFPROCinmessage(M%)
20860CASE M% OF
20870WHEN 0:PROCdie
20880WHEN 1:PROCramload
20890WHEN 2:PROCdragsave
20900WHEN 5:IF BLK%!12=0 AND BLK%!40=&C11 PROCload(&C11)
20910WHEN 6:IF DRAG%=7 THEN PROCramfetch
20920WHEN 7:PROCramreceive
20930WHEN 3:IF BLK%!12=0 AND BLK%!40=&556 PROCload(&556) ELSE IF BLK%!12=0 AND BLK%!40=&C11 PROCload(&C11) ELSE IF BLK%!12=0 AND BLK%!40=&FF9 THEN PROCimport
20940ENDCASE:ENDPROC
20950
20960DEFPROCramload
20970TX%=BLK%!40:IF TX%<>&FF9 THEN ENDPROC
20980IMS%=BLK%!36:A$=FNgetname:MREF%=BLK%!8:SDH%=BLK%!4
20990PROCkillf:FUSE%=34:FUST%=0:PROCopenwind(8):PROCspinit
21000PROCspbuf(IMS%+8):IF Q% THEN FUSE%=-1:PROCclosewind(8):PROCspinit:PROCspbuferr
21010RATOF%=0:RDTS%=IMS%
21020BLK%!8=MREF%:PROCramtransmit
21030ENDPROC
21040
21050DEFPROCramtransmit
21060!BLK%=64:BLK%!12=BLK%!8:BLK%!16=6:BLK%!20=SPBUF%+4+RATOF%:BLK%!24=RDTS%:SYS "Wimp_SendMessage",18,BLK%,SDH%:ENDPROC
21070
21080DEFPROCramreceive
21090TX%=BLK%!24:IF TX%=RDTS% THEN RDTS%=4:RATOF%+=TX%:PROCramtransmit:ENDPROC
21100GOTO 19510
21110
21120DEFPROCramfetch
21130BUAD%=BLK%!20 : REM ram fetch buffer address
21140BULE%=BLK%!24 : REM buffer length
21150SDH%=BLK%!4   : REM handle of sender task
21160MREF%=BLK%!8  : REM my-ref
21170BLK%!12=MREF%
21180BLK%!16=7     : REM Ram_transmit
21190!BLK%=64:     : REM block size
21200BLK%!20=BUAD% : REM buffer address
21210IF BULE%<=RDTS% THEN WE%=RDTS%:TX%=17 ELSE WE%=BULE%:TX%=18
21220IF RDTS%=0 THEN WE%=0:TX%=17
21230BLK%!24=WE%   : REM #bytes written to buffer
21240SYS "Wimp_TransferBlock",THAND%,RTSB%+4+RATOF%,SDH%,BUAD%,BULE%
21250RDTS%-=WE%:RATOF%+=WE%
21260SYS "Wimp_SendMessage",TX%,BLK%,SDW%,SDI%  : REM send RAM transmit
21270ENDPROC
21280
21290DEFPROCsaveok:A$=FNgi(0,6):IF INSTR(A$,".")=0 THEN PROCmessage(4,"To save, drag the icon to a directory viewer.")
21300REM ** SAVE ROUTINE HERE **
21310GOTO 21390
21320ENDPROC
21330
21340DEFPROCdragsave:SDW%=BLK%!20:SDI%=BLK%!24:SDX%=BLK%!28:SDY%=BLK%!32:A$=FNgetname
21350IF DRAG%=34 THEN GOTO 21420
21360PROCsi(0,6,A$)
21370IF MOUB%<>1 SYS "Wimp_CreateMenu",-1
21380BLK%!12=BLK%!8:BLK%!16=3:!BLK%=64:BLK%!20=SDW%:BLK%!24=SDI%:BLK%!28=SDX%:BLK%!32=SDY%:SYS "Wimp_SendMessage",17,BLK%,SDW%,SDI%
21390ENDPROC
21400
21410DEFPROCsavesetok:A$=FNgi(34,6):IF INSTR(A$,".")=0 THEN PROCmessage(4,"To save, drag the icon to a directory viewer.") ELSE GOTO 21450
21420PROCsi(34,6,A$):
21430IF MOUB%<>1 SYS "Wimp_CreateMenu",-1
21440BLK%!12=BLK%!8:BLK%!16=3:!BLK%=64:BLK%!20=SDW%:BLK%!24=SDI%:BLK%!28=SDX%:BLK%!32=SDY%:SYS "Wimp_SendMessage",17,BLK%,SDW%,SDI%
21450PROCsavesets(A$):ENDPROC
21460
21470DEFPROCsave(S$):PROCkillf:FUSE%=-1:
21480ENDPROC
21490
21500DEFFNnullstring(AD%):N$="":WHILE ?AD%>=32:N$=N$+CHR$(?AD%):AD%+=1:ENDWHILE:=N$
21510
21520DEFPROCspritesaveok:A$=FNgi(7,6):IF INSTR(A$,".")=0 THEN PROCmessage(4,"To save, drag the icon to a directory viewer.")
21530ENDPROC
21540
21550DEFFNgetname:W$="":P%=BLK%+44:WHILE ?P%<>0 AND ?P%<>13:W$=W$+CHR$(?P%):P%+=1:ENDWHILE:=W$
21560
21570DEFPROCdtloadset:A$=FNgetname:BLK%!12=BLK%!8:BLK%!16=4:!BLK%=64:SYS "Wimp_SendMessage",17,BLK%,BLK%!4:PROCsi(34,6,A$):PROCloadsets(A$):ENDPROC
21580
21590DEFPROCload(FT%)
21600A$=FNgetname:BLK%!12=BLK%!8:BLK%!16=4:!BLK%=64:SYS "Wimp_SendMessage",17,BLK%,BLK%!4
21610F%=OPENUP(A$):IF F%=0 THEN ENDPROC
21620T$=CHR$(BGET#F%)+CHR$(BGET#F%)+CHR$(BGET#F%):CLOSE#F%
21630IF T$="SET" THEN PROCsi(34,6,A$):PROCloadsets(A$):ENDPROC
21640PROCsi(0,6,A$)
21650ENDPROC
21660
21670DEFPROCqatload(S$):ENDPROC
21680
21690
21700DEFPROCloadpic(FT%,S$)
21710ENDPROC
21720
21730DEFPROCchars
21740VDU23,248,0,0,0,255,255,0,0,0:VDU23,249,0,0,126,255,255,126,0,0:VDU23,250,0,60,126,255,255,126,60,0:VDU23,251,60,126,255,255,255,255,126,60:VDU23,252,24,60,126,126,126,126,60,24:VDU23,253,24,60,60,60,60,60,60,24:VDU23,254,24,24,24,24,24,24,24,24
21750ENDPROC
21760
21770DEFPROCbackuppic:!VARS=PIC%:VARS!4=SPBUF%:A%=VARS:CALL backuppic:ENDPROC
21780
21790DEFPROCfillmask:VARS!8=SPBUF%:VARS!12=TRASP%:VARS!16=BTC%:A%=VARS:CALL fillmask:ENDPROC
21800
21810DEFFNleaf(F$)
21820IF INSTR(F$,".")=0 THEN =F$
21830T$=""
21840LP%=LENF$
21850WHILE MID$(F$,LP%,1)<>"."
21860T$=MID$(F$,LP%,1)+T$
21870LP%-=1
21880ENDWHILE
21890=T$
21900
21910DEFPROCspbuf(BS%)
21920IF BS%=0 THEN SYS "Wimp_SlotSize",CUSL%,-1:ENDPROC
21930SYS "Wimp_SlotSize",CUSL%+BS%,-1
21940SYS "Wimp_SlotSize",-1,-1 TO SPL%
21950IF SPL%<(CUSL%+BS%) THEN SYS "Wimp_SlotSize",CUSL%,-1:SPNE%=BS%:Q%=TRUE:ENDPROC ELSE Q%=FALSE
21960!SPBUF%=BS%
21970SPBUF%!8=16
21980SYS&2E,265,SPBUF%
21990SPSIZ%=BS%
22000ENDPROC
22010
22020DEFPROCspbuferr:PROCkillf:FUST%=-1:FUSE%=-1:PROCwindname(2,PIC$):PROCmessage(0,"No room to store sprite. ("+STR$(SPNE%)+" bytes needed)")
22030
22040DEFFNspritesize(DX%,DY%,PL%)
22050DX%=ABS(DX%) DIV 2:DY%=ABS(DY%) DIV 4
22060IF (DX% MOD 4)>0 THEN DX%=((DX% DIV 4)+1)*4
22070DX%+=16
22080=(DX%*DY%*(PL%+1))+1024
22090
22100DEFPROCkey
22110KWH%=!BLK%:KIC%=BLK%!4:KEY%=BLK%!24
22120POK%=TRUE
22130CASE KWH% OF
22140WHEN HAND%(5):PROCbruskey
22150WHEN HAND%(6):PROCgridkey
22160WHEN HAND%(8):PROCareakey
22170ENDCASE
22180IF POK% THEN PROChotkeys
22190IF POK% THEN SYS"Wimp_ProcessKey",KEY%
22200ENDPROC
22210
22220DEFPROCrotkey
22230ENDPROC
22240
22250DEFPROCtoolclick
22260ENDPROC
22270
22280DEFPROChotkeys
22290CASE KEY% OF
22300WHEN &181:POK%=FALSE:PROCopenpal
22310WHEN &183:POK%=FALSE:PROCopenwind(0)
22320WHEN &188:POK%=FALSE:PROCnf("Paintbrush",4,5):PROCtkh(10)
22330WHEN &189:POK%=FALSE:PROCnf("",-1,-1)
22340
22350WHEN &1CB:POK%=FALSE:IF LAOPWI%<>-1 THEN PROCopenwind(LAOPWI%)
22360
22370WHEN &198:POK%=FALSE:PROCnf("Wire ellipse",11,-1)
22380WHEN &199:POK%=FALSE:PROCnf("Wire parallelogram",13,-1):PROCtkh(17)
22390
22400WHEN &1DB:POK%=FALSE:PROCsi(6,19,"1"):PROCsi(6,21,"1"):PROCsi(6,23,"0"):PROCsi(6,25,"0"):MOUIC%=29:PROCgridclick
22410WHEN &1DC:POK%=FALSE:GRCO%=-1:PROCforcedrawmain
22420WHEN &1A1,&1A2,&1A3,&1A4:POK%=FALSE:PROCloadpic(&C11,"<Imagery$Dir>.XPIC"+STR$(KEY%-&1A0))
22430WHEN &1EA:POK%=FALSE:PROCnf("Solid sector",16,-1)
22440
22450ENDCASE
22460ENDPROC
22470
22480DEFPROCzoomtog
22490POI%!120=HAND%(2):SYS "Wimp_GetWindowState",,POI%+120
22500IF ZOOM%<>1 THEN
22510ZOOM%=1
22520ELSE
22530ZOOM%=VALFNgi(33,8):IF ZOOM%=0 THEN ZOOM%=1
22540ENDIF
22550!BLK%=HAND%(2):SYS "Wimp_CloseWindow",,BLK%
22560!BLK%=0:BLK%!4=-1023*ZOOM%:BLK%!8=1279*ZOOM%:BLK%!12=0:SYS "Wimp_SetExtent",HAND%(2),BLK%
22570!BLK%=HAND%(2):BLK%!4=WLX%:BLK%!8=WLY%:BLK%!12=WUX%:BLK%!16=WUY%:BLK%!20=WSX%:BLK%!24=WSY%:BLK%!28=POI%!148:SYS "Wimp_OpenWindow",,BLK%
22580WLX%=POI%!124:WLY%=POI%!128:WUX%=POI%!132:WUY%=POI%!136:WSX%=POI%!140:WSY%=POI%!144
22590PROCforcedrawmain:ENDPROC
22600
22610DEFPROCop1
22620ENDPROC
22630
22640DEFPROCairbkey
22650PROCicfb(4,17,19,19):PROCicfb(4,19,17,17)
22660ENDPROC
22670
22680DEFPROCbruskey
22690PROCicfb(5,23,24,19)
22700PROCicfb(5,24,20,23)
22710PROCicfb(5,20,19,24)
22720PROCicfb(5,19,23,20)
22730IF KIC%=19 AND KEY%=13 THEN POK%=FALSE:MOUIC%=26:PROCbrushclick
22740ENDPROC
22750
22760DEFPROCgridkey
22770PROCicfb(6,19,21,25)
22780PROCicfb(6,21,23,19)
22790PROCicfb(6,23,25,21)
22800PROCicfb(6,25,19,23)
22810IF KIC%=25 AND KEY%=13 THEN POK%=FALSE:MOUIC%=29:PROCgridclick
22820ENDPROC
22830
22840DEFPROCareakey
22850PROCicfb(8,17,18,20)
22860PROCicfb(8,18,19,17)
22870PROCicfb(8,19,20,18)
22880PROCicfb(8,20,17,19)
22890IF KIC%=20 AND KEY%=13 THEN POK%=FALSE:MOUIC%=16:PROCgrabclick
22900ENDPROC
22910
22920DEFPROCtextkey
22930ENDPROC
22940
22950DEFPROCframkey
22960PROCicfb(19,10,12,12)
22970PROCicfb(19,12,10,10)
22980IF KEY%=13 AND KIC%=12 THEN POK%=FALSE:MOUIC%=14:PROCframeclick
22990ENDPROC
23000
23010DEFPROCicfb(WH%,IC%,ICF%,ICB%)
23020IF KIC%=IC% AND (KEY%=&18E OR KEY%=13) THEN POK%=FALSE:PROCctic(WH%,ICF%):ENDPROC
23030IF KIC%=IC% AND KEY%=&18F THEN POK%=FALSE:PROCctic(WH%,ICB%)
23040ENDPROC
23050
23060DEFPROCctic(WH%,IC%):A$=FNgi(WH%,IC%):SYS "Wimp_SetCaretPosition",HAND%(WH%),IC%,,,-1,LEN(A$):ENDPROC
23070
23080DEFPROCpatch(PN%):IF LAPATCH%=PN% THEN ENDPROC
23090OSCLI("LOAD <Imagery$Dir>.Overlays."+STR$PN%+" "+STR$~(PATCH%-2))
23100LAPATCH%=PN%
23110ENDPROC
23120
23130DEFPROCzoomclick:IRP%=FNperc(33,8)
23140PROCarrows(33,5,6,8,1,25,1)
23150IF MOUIC%>24 AND MOUIC%<33 THEN PROCsi(33,8,STR$((MOUIC%-24)*2))
23160IGP%=FNperc(33,8):IF IRP%<>IGP% THEN ZOOMS%=IGP%*4:PROCgetslor(33,39):PROCredrawslid(33,11,IGP%*4)
23170IF MOUIC%=39 THEN ZOOMS%=FNslidhit(33,39,MOUX%,MOUY%,11,4)
23180IF MOUIC%<>42 THEN ENDPROC
23190ZOOM%=VAL(FNgi(33,8)):IF ZOOM%<1 THEN ZOOM%=1
23200PROCzoomsize:PROCforcedrawmain
23210IF MOUB%<>1 THEN PROCmenoff
23220ENDPROC
23230
23240DEFPROCredrawzoom
23250SYS "Wimp_RedrawWindow",,BLK% TO FIN%
23260WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)
23270WHILE FIN%:PROCslidplot(33,39,ZOOMS%,11):SYS "Wimp_GetRectangle",,BLK% TO FIN%:ENDWHILE
23280ENDPROC
23290
23300DEFPROCredrawrgb
23310SYS "Wimp_RedrawWindow",,BLK% TO FIN%
23320WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)
23330WHILE FIN%:PROCslidplot(21,30,RSL%,11):PROCslidplot(21,31,GSL%,10):PROCslidplot(21,32,BSL%,8):SYS "Wimp_GetRectangle",,BLK% TO FIN%:ENDWHILE
23340ENDPROC
23350
23360DEFPROCslidplot(WH%,IH%,V%,CO%)
23370!ICBLK%=HAND%(WH%):ICBLK%!4=IH%:SYS "Wimp_GetIconState",,ICBLK%
23380SYS "Wimp_SetColour",CO%
23390MX%=WOX%+(ICBLK%!8)+2:MY%=WOY%+(ICBLK%!12)+4
23400RECTANGLE FILL MX%,MY%,V%*2,15:IF V%<100 THEN SYS "Wimp_SetColour",1:RECTANGLE FILL MX%+(V%*2),MY%,(100-V%)*2,15
23410ENDPROC
23420
23430DEFFNslidhit(WH%,IH%,MX%,MY%,CO%,WE%)
23440PROCgetslor(WH%,IH%):MB%=4
23450REPEAT
23460MOUSE RECTANGLE WOX%-2,WOY%,202,14
23470V%=((MX%-(WOX%-2))DIV2):IF V%<0 THEN V%=0
23480IF V%>100 THEN V%=100
23490PROCgetslor(WH%,IH%):PROCredrawslid(WH%,CO%,V%)
23500PROCslidud(WE%,V%)
23510MOUSE MX%,MY%,MB%
23520UNTIL MB%=0
23530SYS "OS_ReadModeVariable",-1,4 TO ,,MX%:SYS "OS_ReadModeVariable",-1,5 TO ,,MY%:MX%=1<<MX%:MY%=1<<MY%
23540SYS "OS_ReadModeVariable",-1,11 TO ,,CO%:SYS "OS_ReadModeVariable",-1,12 TO ,,WE%
23550MOUSE RECTANGLE 0,0,CO%*MX%,WE%*MY%
23560=V%
23570
23580DEFPROCgetslor(WH%,IH%)
23590!ICBLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,ICBLK%
23600WOX%=ICBLK%!4-ICBLK%!20:WOY%=(ICBLK%!16-ICBLK%!24)
23610!ICBLK%=HAND%(WH%):ICBLK%!4=IH%:SYS "Wimp_GetIconState",,ICBLK%
23620WOX%+=(ICBLK%!8)+2:WOY%+=(ICBLK%!12)+4
23630ENDPROC
23640
23650DEFPROCredrawslid(WH%,CO%,V%)
23660!ICBLK%=HAND%(WH%):ICBLK%!4=(ICBLK%!8)+2:ICBLK%!8=(ICBLK%!12)+4:ICBLK%!12=(ICBLK%!16)-2:ICBLK%!16=(ICBLK%!20)-4
23670SYS "Wimp_UpdateWindow",,ICBLK% TO FIN%
23680WHILE FIN%:SYS "Wimp_SetColour",CO%:RECTANGLE FILL WOX%,WOY%,V%*2,15:IF V%<100 THEN SYS "Wimp_SetColour",1:RECTANGLE FILL WOX%+(V%*2)+2,WOY%,(100-V%)*2,15
23690SYS "Wimp_GetRectangle",,ICBLK% TO FIN%:ENDWHILE
23700ENDPROC
23710
23720DEFPROCui(WH2%,IH2%,IT$)
23730PROCsi(WH2%,IH2%,IT$)
23740POI%!120=HAND%(WH2%):SYS "Wimp_GetWindowState",,POI%+120
23750WOX2%=POI%!124-POI%!140:WOY2%=(POI%!136-POI%!144)
23760POI%!120=HAND%(WH2%):POI%!124=IH2%:SYS "Wimp_GetIconState",,POI%+120
23770WOX2%+=(POI%!128)+2:WOY2%+=(POI%!132)+4
23780SYS "Wimp_UpdateWindow",,POI%+120 TO FIN%
23790WHILE FIN%:SYS "Wimp_GetRectangle",,POI%+120 TO FIN%:ENDWHILE
23800ENDPROC
23810
23820DEFPROCscreentowork(WE%, RETURN TX%,RETURN TY%)
23830POI%!128=WE%:SYS"Wimp_GetWindowState",,POI%+128
23840TX%=(TX%-(POI%!132))+(POI%!148)
23850TY%=(TY%-(POI%!144))+(POI%!152)
23860ENDPROC
23870
23880DEFPROCsavesets(IT$)
23890ENDPROC
23900
23910DEFPROCloadsets(IT$):IF NOT NOL% THEN PROCkillf:FUSE%=-1:PROCmenoff
23920IF UNDO%<>-1 THEN PROCdiundo
23930WE%=OPENIN(IT$):IF WE%=0 THEN PROCmessage(2,"Could not load settings")
23940IT$=GET$#WE%
23950FORL%=0 TO 15:FORK%=0 TO 1:FORI%=0 TO 4:INPUT#WE%,GRFI%(L%,K%,I%):NEXT:NEXT:NEXT
23960SYS "OS_GBPB",4,WE%,BRUSH%,13000
23970SYS "OS_GBPB",4,WE%,TRASP%,256
23980SYS "OS_GBPB",4,WE%,PFILLS%,7000
23990INPUT#WE%,GRLO%,KUKE%,KSC%,UNDO%,GRCO%,PALE%,TX%,GRIWI%,GRIHE%,GRBX%,GRBY%,F$:PROCsi(30,27,F$)
24000PROCsi(10,48,STR$(TX%)):FORL%=1 TO TX%:PROCclearicon(10,FNlipaadj(L%+6)):NEXT:IF TX%<40 THEN FORL%=TX%+1 TO 40:PROCshadeicon(10,FNlipaadj(L%+6)):NEXT
24010FORL%=0 TO 39:INPUT#WE%,TX%:IF TX% THEN PROCiconhi(10,FNlipaadj(L%+7)) ELSE PROCiconlo(10,FNlipaadj(L%+7))
24020NEXT
24030FORL%=0 TO 5:INPUT#WE%,PAT%(L%):NEXT
24040FORL%=0 TO 8:FORK%=0 TO 4:INPUT#WE%,ECF%(L%,K%):NEXT:NEXT
24050CLOSE#WE%:IF UNDO%<>-1 THEN PROCenundo
24060PROCbuildiconmenu:PROCbuildmm2
24070IF NOT NOL% THEN PROCforcedrawmain
24080ENDPROC
24090
24100DEFPROCtkh(IC%):TKH%=IC%:PROCiconhi(32,IC%):ENDPROC
24110
24120REM ---------------

� ><Imagery$Dir>.!RunImage
�=�P+&1000:PATCH%=�P
� � �makerr
(:
2� LF$=""
<
�setup
F.NOL%=�:�loadsets("<Imagery$Dir>.Defaults")
P>NOL%=�:�ed_bru:!BLK%=HAND%(12):ș "Wimp_CloseWindow",,BLK%
Z�action
d�die
n�
x��setup:LEGO%=�:TKH%=-1
��MESI%=5*1024:� POI% 256,TAS% 3000,MENU% MESI%,MENUIND% MESI%,SEL% 256,ICBLK% 256,VARS 128,MENALO% 16,CODE% 7*1024,IO% 256,TRANSTAB% 256,RGBG% 192,MENAD% 256
�BLK%=TAS%+2000
�
�lș "OS_ReadVarVal","Imagery$File",IO%,256,0,0 � ,,K%:L%=0:LF$="":ȕ K%>0:LF$=LF$+�(IO%?L%):L%+=1:K%-=1:�
�
� �L%=0 � 188 � 4:RGBG%!L%=0:�
�&MEOF%=0:MEIN%=0:MBUS%=�:LAOPWI%=-1
�$MENALO%="A -~"
�FTL%=�:LAPATCH%=-1
�B� PIC% 161*1024,SCALE% 32,PIXTAB% 256,PIXTAB2% 256,X%(8),Y%(8)
�6SPBUF%=�:SPSIZ%=0:ș "Wimp_SlotSize",-1,-1 � CUSL%
�� PAL% 22600,OPAL% 22600,SHOW% 10240,PALTAB% 512,BTC% 256,CTT% 256,TTB% 256,ROTTAB% 1800,RAND% 4096,PFILLS% 7000:!PAL%=22600:!OPAL%=22600:!PFILLS%=7000:!SHOW%=10240
� � BRUSH% 13000:!BRUSH%=13000
,ș&2E,266,BRUSH%,"<Imagery$Dir>.Brushes"
*ș&2E,266,PAL%,"<Imagery$Dir>.Palette"
+ș&2E,266,OPAL%,"<Imagery$Dir>.Palette"
".ș&2E,266,PFILLS%,"<Imagery$Dir>.PatFills"
,(ș&2E,266,SHOW%,"<Imagery$Dir>.Show"
6-�("LOAD <Imagery$Dir>.PalTab "+�~PALTAB%)
@5�("LOAD <Imagery$Dir>.BTC "+�~BTC%):� byte -> pal
J5�("LOAD <Imagery$Dir>.CTT "+�~CTT%):� pal -> byte
T>�("LOAD <Imagery$Dir>.TTB "+�~TTB%):� (col*64)+tint -> pal
^-�("LOAD <Imagery$Dir>.RotTab "+�~ROTTAB%)
h)�("LOAD <Imagery$Dir>.Code "+�~CODE%)
r-�("LOAD <Imagery$Dir>.RotTab "+�~ROTTAB%)
|/COL%=255:FUSE%=-1:FUST%=-1:FUCO%=0:BUTDO%=�
�B$TAS%="TASK":ș"Wimp_Initialise",200,!TAS%,"Imagery" � ,THAND%
��loadsprites
�
�loadvars
�B!BLK%=-1:BLK%!4=0:BLK%!8=0:BLK%!12=64:BLK%!16=64:BLK%!20=&2102
�<� BLK%!24 10:$(BLK%!24)="!TinyImage":BLK%!28=1:BLK%!32=8
�(ș "Wimp_CreateIcon",,BLK% � ICHAND%
�NOWIND%=34:NOMENS%=20
�-� STORE% 15*1024,BUF% 5048,HAND%(NOWIND%)
�SOF%=STORE%
�� Save,Info,Main,Palette,Airbrush,Brushes,Grid,SpriteSave,Area,Help,Linepat,Fillpat,EdBrush,EdFill,Text,Tback,FontParams,FillCont,ColRep,Frame,Pfills,RGBcont,Greyscale,Pixelate,Rotate,Colscale,Contrast,Posterise,RGBgraph,Filter,Wobble,Import,Toolkit
�� Zoom,SetSave
�
� �d`A
�:ș "Wimp_OpenTemplate",,"<Imagery$Dir>.Templates":K%=0
�:� A$:$IO%=A$
Hș "Wimp_LoadTemplate",,BUF%,SOF%,STORE%+(15*1024),-1,IO%,0 � ,,SOF%
� K%=2 � BUF%?35=&FF
&,ș "Wimp_CreateWindow",,BUF% � HAND%(K%)
0K%+=1:� K%>NOWIND%
:ș "Wimp_CloseTemplate"
D#�L%=15 � 46:�shadeicon(10,L%):�
N�si(13,83,"16")
X�23,6,0|
b�systemvars
l
�chars
v�loadfonts
�@�L%=0 � NOMENS%:!�mad(L%)=-1:�:�buildmainmenu:�buildiconmenu
�LWG%=-1:LIG%=-1
�5WLX%=0:WLY%=300:WUX%=1279:WUY%=1023:WSX%=0:WSY%=0
�EDTY%=0:EFCOL%=255
��
�
� ݤmad(MAD%):=MENAD%+(MAD%*4)
�!ݤcmad(MAD%):=MENAD%!(MAD%*4)
�
���systemvars
�0!PIC%=161*1024:PIC%!4=0:PIC%!8=24:PIC%!12=24
�&ș &2E,271,PIC%,"PIC",0,640,256,15
�PIC$="<Untitled>"
ESM%=-1:EPM%=-1
?GRCO%=-1:GRTI%=-1:GRLO%=�:GRIWI%=1:GRIHE%=1:GRBX%=0:GRBY%=0
3GRXM%=1:GRXD%=1:GRYM%=1:GRYD%=1:GRFX%=�:GRFY%=�
 ZOOM%=1:ZOOMS%=1
*#USE%=0:LITY%=5:GRMA%=�:UNDO%=-1
4� PAT%(5):PAT%()=0:PALE%=8
>� ECF%(8,4):ECF%()=0:ROT%=0
H� GRFI%(15,1,4):GRFI%()=0
R0FIFC%=63:FIFT%=192:FILC%=3:FILT%=192:FILR%=0
\	IP%=�
f(SELBR%=1:BXM%=1:BXD%=1:BYM%=1:BYD%=1
pEDBR%=1:IDRAG%=�:CPF%=1
zV� LF$<>"" � �qatload(LF$):PIC$=�leaf(LF$):�si(0,6,LF$):�openmain:�windname(2,PIC$)
�� TRASP% 256, REPS% 256
��L%=0 � 255:REPS%?L%=L%:�
�!�L%=0 � 252 � 4:TRASP%!L%=0:�
�$� FONTT$(64):FONTA%=-1:FONTO%=-1
�FONTB%=0:SREP%=255
�8MMX%=1:MMY%=1:MOP%=�:KUKE%=�:KUKD%=0:KUKL%=-1:KSC%=�
�RSL%=100:GSL%=100:BSL%=100
��
�
���loadvars
�F%=�("<Imagery$Dir>.Vars")
���#F%,backuppic,fillmask,getpicbyte,getbrushbyte,setpicbyte,pixaverage,tintarea,averagebrush,tintbrush,findchangebox,graduatedfill,colrep,patfill,rgbcont,greyscale,rotate,transarea,rgbgraph,filter,wobble
��#F%
�backuppic+=CODE%:fillmask+=CODE%:getpicbyte+=CODE%:getbrushbyte+=CODE%:setpicbyte+=CODE%:pixaverage+=CODE%:tintarea+=CODE%:averagebrush+=CODE%:tintbrush+=CODE%:findchangebox+=CODE%:graduatedfill+=CODE%:colrep+=CODE%
}patfill+=CODE%:rgbcont+=CODE%:greyscale+=CODE%:rotate+=CODE%:transarea+=CODE%:rgbgraph+=CODE%:filter+=CODE%:wobble+=CODE%
�
$
.��loadfonts
8FONTS%=0:�
B
L��loadsprites
V�
`
j5��action:ș "Wimp_ForceRedraw",-1,0,0,&3000,&3000
t
~�
�	�poll
�'� (REAS%=17 � REAS%=18) � BLK%!16=0
��
�
���die:OP%=0:�spbuf(0)
�3�L%=1 � 4:�("*REMOVE <Imagery$Dir>.XPIC"+�L%):�
�$ș "Wimp_CloseDown",THAND%,!TAS%
��
��
�
�
��poll
�"ș "Wimp_GetPointerInfo",,BLK%
!� BLK%!12<>HAND%(2) � MBUS%=�

!BLK%=%10011111110000110000
!ș "Wimp_Poll",0,BLK% � REAS%
� REAS%>-1 � �act
(�
2	��act
<Ȏ REAS% �
F� 0:�kuke:�picpoll
P� 1:�redraw
Z� 2:�opmain
d� 3:�clmain
n� 6:�mouse
x� 7:�dragfin
�� 8:�key
�
� 9:�menu
�� 17,18:�inmessage(BLK%!16)
��
��
�
���kuke:� � KUKE% � �
�KULI%=10
�ȗ MX%,MY%,MH%:KP%=�
�� � �(-58) � �TDF
�8� KUKL%<>-58 � KUKL%=-58:KUKD%=0:MY%+=4:KP%=�:� �TDF
�)KUKD%+=1:� KUKD%<KULI% � KP%=�:� �TDF
�KUKD%=KULI%:MY%+=4:KP%=�
� � �(-42) � �TlF
8� KUKL%<>-58 � KUKL%=-58:KUKD%=0:MY%-=4:KP%=�:� �TlF
)KUKD%+=1:� KUKD%<KULI% � KP%=�:� �TlF
"KUKD%=KULI%:MY%-=4:KP%=�
,� � �(-26) � �DTF
68� KUKL%<>-58 � KUKL%=-58:KUKD%=0:MX%-=2:KP%=�:� �DTF
@)KUKD%+=1:� KUKD%<KULI% � KP%=�:� �DTF
JKUKD%=KULI%:MX%-=2:KP%=�
T� � �(-122) � �D|F
^8� KUKL%<>-58 � KUKL%=-58:KUKD%=0:MX%+=2:KP%=�:� �D|F
h)KUKD%+=1:� KUKD%<KULI% � KP%=�:� �D|F
rKUKD%=KULI%:MX%+=2:KP%=�
|� � KP% � KUKL%=-1:KUKD%=0
�ȗ � MX%,MY%
��
�
���redraw
�Ȏ !BLK% �
�� HAND%(2):�redrawmain
�� HAND%(3):�redrawpal
�� HAND%(5):�redrawbrush
�� HAND%(11):�redrawpat
�� HAND%(12):�redrawedbru
�� HAND%(13):�redrawfill
�� HAND%(15):�redrawtback
�� HAND%(18):�redrawcolrep
� HAND%(20):�redrawpatfill
0� HAND%(26),HAND%(27),HAND%(28):�redrawgraph
� HAND%(33):�redrawzoom
&� HAND%(21):�redrawrgb
0� HAND%(30):�redrawwob
:�
D�
N
X��redrawwob
b'ș "Wimp_RedrawWindow",,BLK% � FIN%
l�getrdor(564)
v`ȕ FIN%:�plot256sprite(SHOW%,"SHOW",WOX%+64,WOY%+16):ș "Wimp_GetRectangle",,BLK% � FIN%:�:�
�
�C��forcedrawwob:ș "Wimp_ForceRedraw",HAND%(30),0,-564,480,220:�
�
���redrawbrush
�'ș "Wimp_RedrawWindow",,BLK% � FIN%
��getrdor(260)
�<ȕ FIN%:�plotbrushes:ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
���redrawedbru
�'ș "Wimp_RedrawWindow",,BLK% � FIN%
��getrdor(640+(EDTY%*260))
:ȕ FIN%:�plotedbru:ș "Wimp_GetRectangle",,BLK% � FIN%
�
�
 
*��redrawpatfill
4'ș "Wimp_RedrawWindow",,BLK% � FIN%
>�getrdor(108)
H<ȕ FIN%:�plotpatfill:ș "Wimp_GetRectangle",,BLK% � FIN%
R�
\�
f
pF��forcedrawpatfill:ș "Wimp_ForceRedraw",HAND%(20),0,-108,1100,0:�
z
�%��forcedrawedbru(x1%,y1%,x2%,y2%)
�!BLK%=HAND%(12)
�BLK%!4=x1%
�BLK%!8=y1%
�BLK%!12=x2%
�BLK%!16=y2%
�'ș "Wimp_UpdateWindow",,BLK% � FIN%
��getrdor(640+(EDTY%*260))
�ȕ FIN%
��plotedbru
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
	
	��forcedrawbrush
	!BLK%=HAND%(5)
	$BLK%!4=0
	.BLK%!8=-260
	8BLK%!12=384
	B
BLK%!16=0
	L'ș "Wimp_UpdateWindow",,BLK% � FIN%
	V�getrdor(260)
	`ȕ FIN%
	j�plotbrushes
	t'ș "Wimp_GetRectangle",,BLK% � FIN%
	~�
	��
	�
	�(��plot256sprite(SPA%,SPI$,POX%,POY%)
	�� �<>15 � � �tzI
	�Z!SCALE%=1:SCALE%!4=1:SCALE%!8=1:SCALE%!12=1:ș "OS_SpriteOp",290,SPA%,SPI$,POX%,POY%:�
	�9� �<>ESM% � ESM%=�:EPM%=�:ș&40740,15,0,-1,-1,PIXTAB%
	�ș&35,-1,5 � ,,E%
	�)SX%=2^(2-E%):SCALE%!4=SX%:SCALE%!12=1
	�ș&35,-1,4 � ,,E%
	�V� E%<1 � SX%=2^(1-E%):!SCALE%=SX%:SCALE%!8=1 � SX%=2^(E%-1):!SCALE%=1:SCALE%!8=SX%
	�=ș "OS_SpriteOp",308,SPA%,SPI$,POX%,POY%,0,SCALE%,PIXTAB%
	��


��plotpatfill
��L%=1 � 12:�plot256sprite(PFILLS%,�L%,WOX%+((L%-1)*84)+24,WOY%+12):� CPF%=L% � �col(0,0,0):ȓ WOX%+((CPF%-1)*84)+16,WOY%+4,78,76:ȓ WOX%+((CPF%-1)*84)+18,WOY%+4,74,76
�
(�
2
<��plotbrushes
F�L%=1 � 12
PDBLK%!400=HAND%(5):BLK%!404=L%-1:ș "Wimp_GetIconState",,BLK%+400
ZH�plot256sprite(BRUSH%,�L%,WOX%+(BLK%!408)+2,WOY%+(260+(BLK%!412))+4)
dV� SELBR%=L% � �col(48,192,3):ȓ Ȑ WOX%+(BLK%!408)+2,WOY%+(260+(BLK%!412))+4,64,60
n�
x�
�
���plotedbru
�(� EDTY%=0 � WE%=BRUSH% � WE%=PFILLS%
�7�plot256sprite(WE%,"1",WOX%+32,WOY%+20+(EDTY%*260))
�-� EDBR%<>1 � �col(0,0,0) � �col(63,192,0)
�Pȓ Ȑ WOX%+32,WOY%+4+(EDTY%*260),64,8:ȓ Ȑ WOX%+32,WOY%+86+(EDTY%*260),64,8
�-� WOY%+108+(EDTY%*260)<(BLK%!32) � � �TDK
��L%=2 � 12
�H� BLK%!400=HAND%(12):BLK%!404=L%-1:SYS "Wimp_GetIconState",,BLK%+400
�C�plot256sprite(WE%,�L%,WOX%+((L%-1)*64)+32,WOY%+20+(EDTY%*260))
�.� EDBR%<>L% � �col(0,0,0) � �col(63,192,0)
�hȓ Ȑ WOX%+((L%-1)*64)+32,WOY%+4+(EDTY%*260),64,8:ȓ Ȑ WOX%+((L%-1)*64)+32,WOY%+86+(EDTY%*260),64,8
��
.!SCALE%=(!SCALE%)*12:SCALE%!4=(SCALE%!4)*8
-� WOY%+108+(EDTY%*260)>(BLK%!40) � � �TlK
�� �<>15 � ș "OS_SpriteOp",308,WE%,�EDBR%,WOX%+28,WOY%+112+(EDTY%*260),0,SCALE%,PIXTAB% � ș "OS_SpriteOp",308,WE%,�EDBR%,WOX%+28,WOY%+112+(EDTY%*260),0,SCALE%
"�EX%=WOX%+28:EY%=WOY%+112+(EDTY%*260):�col(21,192,0):�L%=0 � 32:� EX%+(L%*24),EY%,EX%+(L%*24),EY%+512:�:�L%=0 � 16:� EX%,EY%+(L%*32),EX%+768,EY%+(L%*32):�
,�� EDTY%=1 � WOX%+=32:WOY%+=16:�plotpal(OPAL%):�col(63,192,0):ȓ WOX%+((EFCOL% � 32)*24),WOY%+((EFCOL% � 32)*28),24,28:WOX%-=32:WOY%-=16
6�
@
J��forcedrawmain
T!BLK%=HAND%(2)
^BLK%!4=0
hBLK%!8=-1024*ZOOM%
rBLK%!12=1280*ZOOM%
|
BLK%!16=0
�'ș "Wimp_UpdateWindow",,BLK% � FIN%
��getrdor(1024*ZOOM%)
�ȕ FIN%
��plotpic
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
�!��quickdrawmain:� � VACB% � �
�!BLK%=HAND%(2)
�BLK%!4=CBMINX%
�BLK%!8=CBMINY%
�BLK%!12=CBMAXX%
BLK%!16=CBMAXY%
'ș "Wimp_UpdateWindow",,BLK% � FIN%
�getrdor(1024*ZOOM%)
&ȕ FIN%
0�plotpic
:'ș "Wimp_GetRectangle",,BLK% � FIN%
D�
N�
X
b��inpic:� IP% � �
l	IP%=�
v1ș "OS_SpriteOp",316,PIC%,"PIC" � V1,V2,V3,V4
�ș "OS_ChangedBox",2
�ș "OS_ChangedBox",1
�8� GCOL3,63:LINE 300,300,320,320:LINE 300,300,320,320
�%�23,6:�L%=1 � 5:� PAT%(L%):�:� 0|
�ș6,163,242,PALE%
��
�
�<��inpicR:ș "OS_SpriteOp",316,PIC%,"PIC" � B1,B2,B3,B4:�
�
�@��inbackup:ș "OS_SpriteOp",316,SPBUF%,"PIC" � B1,B2,B3,B4:�
�
�F��insprite(ma%,sa%,sn$):ș &2E,316+ma%,sa%,sn$ � IS1,IS2,IS3,IS4:�
�

(��outsprite:ș &2E,IS1,IS2,IS3,IS4:�



.��outbackup:ș "OS_SpriteOp",B1,B2,B3,B4:�

 

*��outpic:� � IP% � �

4	IP%=�

>!ș "OS_ChangedBox",-1 � ,CBA%

H�� �(CBA%!4)=-1 � �(CBA%!8)=-1 � �(CBA%!12)=-1 � �(CBA%!16)=-1 � VACB%=�:ș "OS_ChangedBox":ș "OS_SpriteOp",V1,V2,V3,V4:� � VACB%=�

R*CBMINX%=CBA%!4:CBMINX%=CBMINX%*ZOOM%*2

\4CBMINY%=CBA%!8:CBMINY%=(-1024+(CBMINY%*4))*ZOOM%

f+CBMAXX%=CBA%!12:CBMAXX%=CBMAXX%*ZOOM%*2

p5CBMAXY%=CBA%!16:CBMAXY%=(-1024+(CBMAXY%*4))*ZOOM%

zCBMAXX%+=4*ZOOM%

�CBMAXY%+=4*ZOOM%

�ș "OS_ChangedBox"

� ș "OS_SpriteOp",V1,V2,V3,V4

��

�

���redrawmain

�� FUSE%=32 �

�� FONT%<>0 � EFM%<>-1 �

�n� IF MODE<>EFM% THEN PROCinpic:SYS "ColourTrans_SetFontColours",FHAND%,BPAL%,FPAL%,14:PROCoutpic:EFM%=MODE

��

��

�'ș "Wimp_RedrawWindow",,BLK% � FIN%

��getrdor(1024*ZOOM%)
8ȕ FIN%:�plotpic:ș "Wimp_GetRectangle",,BLK% � FIN%
�
�
$
.
��plotpic
8H� �=15 � ZOOM%=1 � ș "OS_SpriteOp",290,PIC%,"PIC",WOX%,WOY%:�grid:�
B9� �<>ESM% � ESM%=�:EPM%=�:ș&40740,15,0,-1,-1,PIXTAB%
Lș&35,-1,5 � ,,E%
V)SX%=2^(2-E%):SCALE%!4=SX%:SCALE%!12=1
`ș&35,-1,4 � ,,E%
jV� E%<1 � SX%=2^(1-E%):!SCALE%=SX%:SCALE%!8=1 � SX%=2^(E%-1):!SCALE%=1:SCALE%!8=SX%
t5!SCALE%=(!SCALE%)*ZOOM%:SCALE%!4=(SCALE%!4)*ZOOM%
~*� �=15 � TPIXTAB%=0 � TPIXTAB%=PIXTAB%
�Gș "OS_SpriteOp",308,PIC%,"PIC",WOX%,WOY%,0,SCALE%,TPIXTAB%:�grid:�
�
�
��grid
�>� GRCO%=-1 � (2*GRIWI%*ZOOM%)<16 � (4*GRIHE%*ZOOM%)<16 � �
��gridcol
�� X%,Y%
�?X%=(((BLK%!28)-WOX%) � (ZOOM%*(2*GRIWI%)))*(2*GRIWI%*ZOOM%)
�?Y%=(((BLK%!32)-WOY%) � (ZOOM%*(4*GRIHE%)))*(4*GRIHE%*ZOOM%)
�XOF%=(GRIWI%-GRBX%)*2*ZOOM%
�YOF%=(GRIHE%-GRBY%)*4*ZOOM%
�X%+=WOX%-XOF%
�Y%+=WOY%-YOF%
E�:� X%,(BLK%!32),X%,(BLK%!40):X%+=(2*GRIWI%*ZOOM%):� X%>(BLK%!36)

E�:� (BLK%!28),Y%,(BLK%!36),Y%:Y%+=(4*GRIHE%*ZOOM%):� Y%>(BLK%!40)
�

(��plotpal(PTU%)
2�col(63,192,0)
<� �<>15 � � �DZO
Ftș "OS_SpriteOp",290,PTU%,"Palette",WOX%,WOY%:� PTU%=PAL% � ȓ WOX%+((COL% � 32)*24),WOY%+((COL% � 32)*28),24,28
P�
Z9� �<>EPM% � ESM%=�:EPM%=�:ș&40740,15,0,-1,-1,PIXTAB%
dș&35,-1,5 � ,,E%
n)SX%=2^(2-E%):SCALE%!4=SX%:SCALE%!12=1
xș&35,-1,4 � ,,E%
�V� E%<1 � SX%=2^(1-E%):!SCALE%=SX%:SCALE%!8=1 � SX%=2^(E%-1):!SCALE%=1:SCALE%!8=SX%
�Bș "OS_SpriteOp",308,PTU%,"Palette",WOX%,WOY%,0,SCALE%,PIXTAB%
�F� PTU%=PAL% � ȓ WOX%+((COL% � 32)*24),WOY%+((COL% � 32)*28),24,28
��
�
�?��inpal:ș "OS_SpriteOp",316,PAL%,"Palette" � V1,V2,V3,V4:�
�
�+��outpal:ș "OS_SpriteOp",V1,V2,V3,V4:�
�
���trasp(TC%)
��inpal:�trasp2(TC%):�outpal
��
�
��trasp2(TC%)
TRASP%?TC%=(TRASP%?TC%) � 1
+TX%=((TC% � 32)*24):TY%=((TC% � 32)*28)
"�� IF (TRASP%?TC%)=0 THEN GCOL0,PALTAB%?(TC%*2) TINT PALTAB%?((TC%*2)+1) ELSE PROCanticol(PALTAB%?(TC%*2),PALTAB%?((TC%*2)+1),0)
,q� (TRASP%?TC%)=0 � �0,PALTAB%?(TC%*2) Ȝ PALTAB%?((TC%*2)+1) � �0,63-(PALTAB%?(TC%*2)) Ȝ PALTAB%?((TC%*2)+1)
6=� TX%+6,TY%+20,TX%+18,TY%+20:� TX%+12,TY%+8,TX%+12,TY%+20
@�
J
T��redrawpal
^'ș "Wimp_RedrawWindow",,BLK% � FIN%
h�getrdor(228)
r>ȕ FIN%:�plotpal(PAL%):ș "Wimp_GetRectangle",,BLK% � FIN%
|�
��
�
���redrawtback
�'ș "Wimp_RedrawWindow",,BLK% � FIN%
��getrdor(228)
�ȕ FIN%:�plotpal(OPAL%)
�K�col(63,192,0):ȓ WOX%+((FONTB% � 32)*24),WOY%+((FONTB% � 32)*28),24,28
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
���redrawcolrep
�'ș "Wimp_RedrawWindow",,BLK% � FIN%
�getrdor(556)
^ȕ FIN%:WOY%+=290:�plotpal(SPBUF%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224:WOY%-=290
A�plotpal(OPAL%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224
&M�col(63,192,0):ȓ WOX%+((SREP% � 32)*24),WOY%+290+((SREP% � 32)*28),24,28
0'ș "Wimp_GetRectangle",,BLK% � FIN%
:�
D�
N
X��forcedrawcolrep
b!BLK%=HAND%(18)
lBLK%!4=0
vBLK%!8=-556
�BLK%!12=770
�
BLK%!16=0
�'ș "Wimp_UpdateWindow",,BLK% � FIN%
��getrdor(556)
�ȕ FIN%
�VWOY%+=290:�plotpal(SPBUF%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224:WOY%-=290
�A�plotpal(OPAL%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224
�M�col(63,192,0):ȓ WOX%+((SREP% � 32)*24),WOY%+290+((SREP% � 32)*28),24,28
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
�
ݤcecf
� �high(11,26) � =1
� �high(11,28) � =2
� �high(11,30) � =3
 � �high(11,32) � =4
*=0
4
>��redrawpat
H'ș "Wimp_RedrawWindow",,BLK% � FIN%
R
�getpator
\Iȕ FIN%:�plotpal(OPAL%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224
f-CECF%=�cecf:�K%=0 � 7:L%=ECF%(K%+1,CECF%)
pcPE%=BTC%?L%:�col(PALTAB%?(PE%*2),PALTAB%?((PE%*2)+1),0):ȓ Ȑ WOX%-146,(WOY%+276)-(K%*40),38,36
z�
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
�ݤgrafilno
�� �high(13,95) � =0
�� �high(13,99) � =1
�� �high(13,101) � =2
�� �high(13,103) � =3
�� �high(13,97) � =4
�=-1
�
���redrawfill
'ș "Wimp_RedrawWindow",,BLK% � FIN%
�getrdor(484)
qȕ FIN%:WOY%+=236:WOX%+=422:�plotpal(OPAL%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224:WOX%-=140:WOY%-=140
$xFIX%=WOX%+200:GRFIN%=�grafilno:�L%=0 � 15:� GRFIN%<>-1 � �col(GRFI%(L%,0,GRFIN%),GRFI%(L%,1,GRFIN%),0) � �col(0,0,0)
.'ȓ Ȑ FIX%,WOY%-28,42,32:FIX%+=44:�
8:WOX%-=282:WOY%-=96:ș "Wimp_GetRectangle",,BLK% � FIN%
B�
L�
V
`��forcedrawfill
j!BLK%=HAND%(13)
tBLK%!4=0
~BLK%!8=-500
�BLK%!12=1200
�BLK%!16=-360
�'ș "Wimp_UpdateWindow",,BLK% � FIN%
��getrdor(484)
�ȕ FIN%
�xFIX%=WOX%+482:GRFIN%=�grafilno:�L%=0 � 15:� GRFIN%<>-1 � �col(GRFI%(L%,0,GRFIN%),GRFI%(L%,1,GRFIN%),0) � �col(0,0,0)
�'ȓ Ȑ FIX%,WOY%+68,42,32:FIX%+=44:�
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
���forcedrawpat
!BLK%=HAND%(11)

BLK%!4=0
BLK%!8=-356
BLK%!12=100
(
BLK%!16=0
2'ș "Wimp_UpdateWindow",,BLK% � FIN%
<
�getpator
Fȕ FIN%
PA�plotpal(OPAL%):�col(0,0,0):� WOX%,WOY%+224,WOX%+770,WOY%+224
ZCECF%=�cecf
d� RK%=0 � 7
nL%=ECF%(RK%+1,CECF%)
xdPE%=BTC%?L%:�col(PALTAB%?(PE%*2),PALTAB%?((PE%*2)+1),0):ȓ Ȑ WOX%-146,(WOY%+276)-(RK%*40),38,36
�,ȓ Ȑ WOX%-146,(WOY%+276)-(RK%*40),38,36
��
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
�&ݤctb(co%,ti%):by%=-1:�L%=0 to 255
�
���drawpicinit
�!BLK%=HAND%(2)
�BLK%!4=0
�BLK%!8=-936
�BLK%!12=1236

BLK%!16=0
'ș "Wimp_UpdateWindow",,BLK% � FIN%
�getrdor(1024*ZOOM%)
"�
,
6��forcedrawpal(PTU%)
@!BLK%=HAND%(3)
JBLK%!4=0
TBLK%!8=-228
^BLK%!12=770
h
BLK%!16=0
r'ș "Wimp_UpdateWindow",,BLK% � FIN%
|�getrdor(228)
�ȕ FIN%
��plotpal(PTU%)
�'ș "Wimp_GetRectangle",,BLK% � FIN%
��
��
�
���forcedrawtback
�!BLK%=HAND%(15)
�BLK%!4=0
�BLK%!8=-228
�BLK%!12=770
�
BLK%!16=0
�'ș "Wimp_UpdateWindow",,BLK% � FIN%
�getrdor(228)
ȕ FIN%
�plotpal(OPAL%)
&K�col(63,192,0):ȓ WOX%+((FONTB% � 32)*24),WOY%+((FONTB% � 32)*28),24,28
0'ș "Wimp_GetRectangle",,BLK% � FIN%
:�
D�
N
X��forcedrawgraph(WH%)
b!BLK%=HAND%(WH%)
l>BLK%!4=0:BLK%!8=-300:� WH%<>28 � BLK%!12=300 � BLK%!12=900
v
BLK%!16=0
�3ș "Wimp_UpdateWindow",,BLK% � FIN%:�getgraphor
�>ȕ FIN%:�drawgraph:ș "Wimp_GetRectangle",,BLK% � FIN%:�:�
�
���redrawgraph
�'ș "Wimp_RedrawWindow",,BLK% � FIN%
��getgraphor
�>ȕ FIN%:�drawgraph:ș "Wimp_GetRectangle",,BLK% � FIN%:�:�
�
���getgraphor
�WOX%=(BLK%!4-BLK%!20)+44
�WOY%=(BLK%!16-BLK%!24)-256
��
�
��drawgraph
n�col(63,192,0):ȓ Ȑ WOX%+2,WOY%+4,252,248:�col(0,0,0):� WOX%,WOY%,WOX%,WOY%+252:� WOX%,WOY%,WOX%+254,WOY%
Ȏ FUSE% �
 �� 43:CONL%=��gi(26,18):CONH%=��gi(26,20):� CONL%<CONH% � �4,WOX%+CONL%*17,WOY%:�5,WOX%+CONH%*17,WOY%+252 � �4,WOX%+CONH%*17,WOY%+252:�5,WOX%+CONL%*17,WOY%
*;� 44:POL%=��gi(27,22):POH%=��gi(27,24):PON%=��gi(27,26)
4oSTWI=PON%/16:STHE=(POH%-POL%)/(PON%-1):�L%=0 � 15:BH%=POL%+(�(STWI*L%)*STHE):ȓ WOX%+(L%*16),WOY%,16,BH%*17
>�
H�
R�
\
f��getpator
pWOX%=(BLK%!4-BLK%!20)+180
zWOY%=(BLK%!16-BLK%!24)-340
��
�
�
��picpoll
�"ș "Wimp_GetPointerInfo",,BLK%
�%� MBUS% � BLK%!8<>0 � � � MBUS%=�
� � BLK%!8=0 � LEGO% � LEGO%=�
�"� BLK%!8<>0 � LEGO% � BLK%!8=0
�IWE%=0:�PC%=0 � NOWIND%:� BLK%!12=HAND%(PC%) � WE%=1:PC%=NOWIND%:� � �
� � WE%=0 � IDRAG%=(BLK%!8<>0)
�� BLK%!8=0 � IDRAG%=�
�)� BLK%!12<>HAND%(2) � BLK%!16<>-1 � �
�� BLK%!8<>0 � IDRAG% � �
�"X%=!BLK%:Y%=BLK%!4:BUT%=BLK%!8
� BUT%=2 � �
Ȏ FUSE% �
F� 1:� FUST%=0 � BUT%<>0 � �picpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:� �TV\
$'� BUT%=0 � FUST%=0 � FUST%=0:� �TV\
.8�picpos:�inpic:�setcol:�l(X%(0),Y%(0),X%,Y%):�outpic
8�quickdrawmain
BX%(0)=X%:Y%(0)=Y%
L~� 4:� FUST%=0 � �paintscale:�picpos:�inpic:�eorback:�paintbrush(X%,Y%):�outpic:�quickdrawmain:OX%=X%:OY%=Y%:FUST%=1:� �TV\
V�picpos
`�� X%<>OX% � Y%<>OY% � �paintscale:�inpic:�eorback:�paintbrush(OX%,OY%):�paintbrush(X%,Y%):OX%=X%:OY%=Y%:�outpic:�quickdrawmain
j�� 11:� FUST%=0 � BUT%<>0 � �picpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:�inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�outpic:�quickdrawmain:�letgo:� �TV\
t� FUST%=0 � � �TV\
~}� BUT%=1 � FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�picpos:OX%=X%:OY%=Y%:FUST%=0:�outpic:�quickdrawmain:�letgo:� �TV\
�l� BUT%=1 � FUST%=2 � �inpic:�eoc:�elip(&C5,OX%,OY%):�picpos:FUST%=0:�outpic:�quickdrawmain:�letgo:� �TV\
��� BUT%=4 � (OX%<>X%(0) � OY%<>Y%(0)) � FUST%=1 � �inpic:�eoc:X%(1)=OX%:Y%(1)=OY%:� X%(0),Y%(0),OX%,OY%:�picpos:OX%=X%:OY%=Y%:�elip(&C5,X%,Y%):�outpic:�quickdrawmain:�letgo:FUST%=2:� �TV\
��� BUT%=4 � (OX%<>X%(1) � OY%<>Y%(1)) � FUST%=2 � �inpic:�eoc:�picpos:�elip(&C5,OX%,OY%):�setcol:�elip(&C5,X%,Y%):OX%=X%:OY%=Y%:�outpic:�quickdrawmain:�letgo:FUST%=0:� �TV\
�&�picpos:� X%=OX% � Y%=OY% � � �TV\
�j� FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:OX%=X%:OY%=Y%:� X%(0),Y%(0),X%,Y%:�outpic:�quickdrawmain
�d� FUST%=2 � �inpic:�eoc:�elip(&C5,OX%,OY%):OX%=X%:OY%=Y%:�elip(&C5,X%,Y%):�outpic:�quickdrawmain
ĕ� 13:� FUST%=0 � BUT%<>0 � �picpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:�inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�outpic:�quickdrawmain:�letgo:� �TV\
�� FUST%=0 � � �TV\
�}� BUT%=1 � FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�picpos:OX%=X%:OY%=Y%:FUST%=0:�outpic:�quickdrawmain:�letgo:� �TV\
�l� BUT%=1 � FUST%=2 � �inpic:�eoc:�para(0,0,OX%,OY%):�picpos:FUST%=0:�outpic:�quickdrawmain:�letgo:� �TV\
�� BUT%=4 � (OX%<>X%(0) � OY%<>Y%(0)) � FUST%=1 � �inpic:�eoc:X%(1)=OX%:Y%(1)=OY%:� X%(0),Y%(0),OX%,OY%:�picpos:OX%=X%:OY%=Y%:�para(0,0,X%,Y%):�outpic:�quickdrawmain:�letgo:FUST%=2:� �TV\
��� BUT%=4 � (OX%<>X%(1) � OY%<>Y%(1)) � FUST%=2 � �inpic:�eoc:�picpos:�para(0,0,OX%,OY%):�setcol:�para(1,0,X%,Y%):OX%=X%:OY%=Y%:�outpic:�quickdrawmain:�letgo:FUST%=0:� �TV\
&�picpos:� X%=OX% � Y%=OY% � � �TV\

j� FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:OX%=X%:OY%=Y%:� X%(0),Y%(0),X%,Y%:�outpic:�quickdrawmain
d� FUST%=2 � �inpic:�eoc:�para(0,0,OX%,OY%):OX%=X%:OY%=Y%:�para(0,0,X%,Y%):�outpic:�quickdrawmain
�� 16:� FUST%=0 � BUT%<>0 � �picpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:�inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�outpic:�quickdrawmain:�letgo:� �TV\
(� FUST%=0 � � �TV\
2}� BUT%=1 � FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�picpos:OX%=X%:OY%=Y%:FUST%=0:�outpic:�quickdrawmain:�letgo:� �TV\
<l� BUT%=1 � FUST%=2 � �inpic:�eoc:�elip(&B5,OX%,OY%):�picpos:FUST%=0:�outpic:�quickdrawmain:�letgo:� �TV\
F�� BUT%=4 � (OX%<>X%(0) � OY%<>Y%(0)) � FUST%=1 � �inpic:�eoc:X%(1)=OX%:Y%(1)=OY%:� X%(0),Y%(0),OX%,OY%:�picpos:OX%=X%:OY%=Y%:�elip(&B5,X%,Y%):�outpic:�quickdrawmain:�letgo:FUST%=2:� �TV\
P�� BUT%=4 � (OX%<>X%(1) � OY%<>Y%(1)) � FUST%=2 � �inpic:�eoc:�picpos:�elip(&B5,OX%,OY%):�setcol:�elip(&B5,X%,Y%):OX%=X%:OY%=Y%:�outpic:�quickdrawmain:�letgo:FUST%=0:� �TV\
Z&�picpos:� X%=OX% � Y%=OY% � � �TV\
dj� FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:OX%=X%:OY%=Y%:� X%(0),Y%(0),X%,Y%:�outpic:�quickdrawmain
nd� FUST%=2 � �inpic:�eoc:�elip(&B5,OX%,OY%):OX%=X%:OY%=Y%:�elip(&B5,X%,Y%):�outpic:�quickdrawmain
x� 23:�poll_23
�� 25:�poll_25
�%� 27:� FUST%<2 � �rectpoll:� �TV\
�-�spinit:�spbuf(161*1024):� Q% � �spbuferr
��backuppic:�swapcorns
� VARS!20=BTC%:VARS!24=PALTAB%
�VARS!28=PIC%:VARS!32=SPBUF%
�VARS!36=X%(0):VARS!40=Y%(0)
�VARS!44=OX%:VARS!48=OY%
�\A%=VARS:ș "Hourglass_On":� pixaverage:ș "Hourglass_Off":�spinit:�forcedrawmain:FUST%=0
܀� 29:� FUST%=0 � �paintscale2:�picpos:�inpic:�eorback:�paintbrush(X%,Y%):�outpic:�quickdrawmain:OX%=X%:OY%=Y%:FUST%=1:� �TV\
��picpos
�� X%<>OX% � Y%<>OY% � �paintscale2:�inpic:�eorback:�paintbrush(OX%,OY%):�paintbrush(X%,Y%):OX%=X%:OY%=Y%:�outpic:�quickdrawmain
��� 30:� FUST%=0 � �paintscale2:�picpos:�inpic:�eorback:�paintbrush(X%,Y%):�outpic:�quickdrawmain:OX%=X%:OY%=Y%:FUST%=1:� �TV\
�picpos
�� X%<>OX% � Y%<>OY% � �paintscale2:�inpic:�eorback:�paintbrush(OX%,OY%):�paintbrush(X%,Y%):OX%=X%:OY%=Y%:�outpic:�quickdrawmain
� 32:� FONT%<>0 �
"o�picpos:� BUT%=4 � FUST%<>0 � �inbackup:ș "Font_SetFont",FHAND%:ș "Font_Paint",,TEXT$,16,X%,Y%:�outbackup
,�� FUST%<>0 � (X%<>OX% � Y%<>OY%) � ET%=1:�restpic:ET%=2:ET%=3:�inpicR:ș "Font_SetFont",FHAND%:ET%=4:ș "Font_Paint",,TEXT$,16,X%,Y%:�outbackup:NTTP%+=1:ET%=5:ET%=6:OX%=X%:OY%=Y%:�forcedrawmain:ET%=7:OX%=X%:OY%=Y%
6�
@E�picpos:� BUT%=4 � FUST%<>0 � �inbackup:�ostext(X%,Y%):�outbackup
Jj� FUST%<>0 � (X%<>OX% � Y%<>OY%) � �restpic:�inpic:�ostext(X%,Y%):�outpic:�forcedrawmain:OX%=X%:OY%=Y%
T�:� �TV\
^%� 31:� FUST%<2 � �rectpoll:� �TV\
h>�swapcorns:FMINX%=X%(0):FMINY%=Y%(0):FMAXX%=OX%:FMAXY%=OY%
r6ș "Hourglass_On":�fill:ș "Hourglass_Off":FUST%=0
|� 33:� FUST%>=2 � � �tPZ
��� FUST%=0 � BUT%=1 � �picpos:�inpic:CO%=�X%,Y%):TI%=Ȝ(X%,Y%):�outpic:SREP%=�findpalent(CO%,TI%):�forcedrawcolrep:� �TV\ � �rectpoll:� �TV\
�>�swapcorns:FMINX%=X%(0):FMINY%=Y%(0):FMAXX%=OX%:FMAXY%=OY%
��ș "Hourglass_On":!VARS=PIC%:VARS!4=PIC%:VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=BTC%:VARS!28=TTB%:VARS!32=REPS%:A%=VARS:� colrep:ș "Hourglass_Off":FUST%=0:�forcedrawmain
�-� 34:� �high(31,3) � �high(31,4) � � �TV\
�� FUST%=0 � �dBZ
�z� BUT%=4 � �inpic:�picpos:�pimport(OX%,OY%,3):�imptile:OX%=X%:OY%=Y%:�pimport(OX%,OY%,3):�outpic:�quickdrawmain:� �TV\
�d� FUST%=0 � FUST%=1:�picpos:OX%=X%:OY%=Y%:�inpic:�pimport(X%,Y%,3):�outpic:�quickdrawmain:� �TV\
�&�picpos:� X%=OX% � Y%=OY% � � �TV\
�U�inpic:�pimport(OX%,OY%,3):OX%=X%:OY%=Y%:�pimport(X%,Y%,3):�outpic:�quickdrawmain
�l� 36:� FUST%=0 � �picpos:�inpic:�eoc:ȓ X%,Y%,FRW%*2,FRH%*4:�outpic:�quickdrawmain:OX%=X%:OY%=Y%:FUST%=1
��picpos:� X%<>OX% � Y%<>OY% � �inpic:�eoc:ȓ OX%,OY%,FRW%*2,FRH%*4:OX%=X%:OY%=Y%:ȓ OX%,OY%,FRW%*2,FRH%*4:�outpic:�quickdrawmain
�� BUT%<>4 � �TV\
�~�inpic:�eoc:ȓ OX%,OY%,FRW%*2,FRH%*4:�setcol:ȓ OX%,OY%,FRW%*2,FRH%*4:�eoc:ȓ OX%,OY%,FRW%*2,FRH%*4:�outpic:�quickdrawmain
� 38:�poll_38
� 39:�poll_39
� 40:�poll_40
&� 41:�poll_41
0%� 42:� FUST%<2 � �rectpoll:� �TV\
:�supixtrans
DkRW%=��gi(25,13):GW%=��gi(25,15):BW%=��gi(25,17):�L%=0 � 255:ș "ColourTrans_ColourNumberToGCOL",L% � G%
NSRC%=(G%�%1111)*RW%:GC%=(((G%�48)>>2)+(G%�3))*GW%:BC%=(((G%�192)>>4)+(G%�3))*BW%
X+TC%=((RC%+GC%+BC%)�3):� TC%>15 � TC%=15
bxTC%=(TC% � 3)+((TC%�12)*RSM%)+(((TC%�12)<<2)*GSM%)+(((TC%�12)<<4)*BSM%):ș"ColourTrans_GCOLToColourNumber",TC% � TC%
lTRANSTAB%?L%=TC%:�
vAA%=VARS:� transarea:ș "Hourglass_Off":FUST%=0:�forcedrawmain
�� 43:�poll_43
�� 44:�poll_44
�%� 47:� FUST%<2 � �rectpoll:� �TV\
�-�spinit:�spbuf(161*1024):� Q% � �spbuferr
��backuppic:�swapcorns
��VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=�(�gi(29,5)):VARS!28=BLK%+512:A%=VARS:ș"Hourglass_On":� filter:ș"Hourglass_Off":�spinit:�forcedrawmain:FUST%=0
�%� 48:� FUST%<2 � �rectpoll:� �TV\
�-�spinit:�spbuf(161*1024):� Q% � �spbuferr
��backuppic:�swapcorns
�WE%=1:� �T~\
�-� �high(30,25) � VARS!36=1 � VARS!36=&280
�(VARS!40=0:� �high(30,44) � VARS!40=1
�*� �high(30,32) � VARS!44=1 � VARS!44=0
�VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=TAS%+512:VARS!28=BTC%:VARS!32=TRASP%:A%=VARS:� wobble:ș "Hourglass_Off":�spinit:�forcedrawmain:FUST%=0
#� WER% � �killf:FUSE%=-1:� �DZ@
�
 �
*
4D� ** This is jumped straight to because of error control (flub!)
>qA=�(�gi(30,42)):K%=TAS%+512:L%=0:WER%=�:ER%=�:F$=�gi(30,27):MG%=�(�gi(30,5)):ș "Hourglass_On":�si(30,36," ")
H� � ER%=�:WER%=�:� �D\\
RK%!(L%*4)=�(F$)*MG%
\9� ER%=� � �si(30,36,"Error at A="+�(A)):K%!L%=0:ER%=�
f,A+=�(�gi(30,11)):L%+=1:� L%<618 � � �DR\
p� � �makerr
z� WE%=2 � � �DDo � � �dd[
�
���contrast(� L%)
�� CONL%>CONH% � � �tv\
�0� L%<=CONL% � L%=0:� � � L%>=CONH% � L%=15:�
�.K%=L%-CONL%:I%=CONH%-CONL%:L%=(K%/I%)*15:�
�� CONL%=CONH% � � �dT\
�1� L%<=CONH% � L%=15:� � � L%>=CONL% � L%=15:�
�3K%=L%-CONH%:I%=CONL%-CONH%:L%=15-((K%/I%)*15):�
�� L%<CONL% � L%=0 � L%=15
��
�
����supixtrans:�swapcorns:FMINX%=X%(0):FMINY%=Y%(0):FMAXX%=OX%:FMAXY%=OY%:ș "Hourglass_On":!VARS=PIC%:VARS!4=PIC%:VARS!8=X%(0):VARS!12=Y%(0):VARS!16=OX%:VARS!20=OY%:VARS!24=TRASP%:VARS!28=BTC%:VARS!32=TRANSTAB%:�
�
���protbox(CX%,CY%):�eoc:R%=ROT%:�rotpoint(FMINX%,FMINY%,R%,X1%,Y1%):�rotpoint(FMAXX%,FMINY%,R%,X2%,Y2%):�rotpoint(FMAXX%,FMAXY%,R%,X3%,Y3%):�rotpoint(FMINX%,FMAXY%,R%,X4%,Y4%)
Q�rotpoint(0,(FMAXY%�3)*2,R%,MX1%,MY1%):�rotpoint(0,(FMAXY%�3)*4,R%,MX2%,MY2%)
'X1%+=CX%:X2%+=CX%:X3%+=CX%:X4%+=CX%
$'Y1%+=CY%:Y2%+=CY%:Y3%+=CY%:Y4%+=CY%
.:�4,X1%,Y1%:�5,X2%,Y2%:�5,X3%,Y3%:�5,X4%,Y4%:�5,X1%,Y1%
8)� MX1%+CX%,MY1%+CY%,MX2%+CX%,MY2%+CY%
B�
L
V(��rotpoint(R0%,R1%,R%,� RPX%,� RPY%)
`�R6%=(ROTTAB%!(R%*4))>>12:R7%=(!(ROTTAB%+(R%*4)+&168))>>12:R8%=R0%*R6%:R5%=R1%*R7%:R8%-=R5%:R5%=R1%*R6%:R1%=R0%*R7%:R1%+=R5%:RPX%=R1%>>18:RPY%=-(R8%>>18)
j�
t
~ݤperc(WH%,IH%)
�2I$=�gi(WH%,IH%):� �I$,1)="%" � I$=�I$,�(I$)-1)
�
=�(I$)
�
���grabpoll(FT%)
��� FUST%=0 � BUT%<>0 � �picpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:�inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain:�letgo:�
�� FUST%=0 � �
�{� BUT%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�picpos:OX%=X%:OY%=Y%:FUST%=0:�outpic:�quickdrawmain:�letgo:�
�0� BUT%<>4 � (OX%=X%(0) � OY%=Y%(0)) � � �Th^
ش�inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�picpos:�spbuf(�spritesize(X%-X%(0),Y%-Y%(0),�(�high(8,14)))):� Q% � ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�spinit:�spbuferr
�GRN$="GRAB":ș&2E,272,SPBUF%,"GRAB",,X%(0),Y%(0),X%,Y%:� �high(8,14) � ș&2E,285,SPBUF%,"GRAB":GRABM%=8:�fillmask � GRABM%=0
�'GRWI%=�(X%-X%(0)):GRHE%=�(Y%-Y%(0))
�� X%<X%(0) � Ȕ X%(0),X%
� Y%<Y%(0) � Ȕ Y%(0),Y%

:� FT%=1 � ș&2E,290,SPBUF%,"GRAB",X%(0),Y%(0),3+GRABM%
�pgrab(X%,Y%,3)
9OX%=X%:OY%=Y%:�outpic:�quickdrawmain:�letgo:FUST%=2:�
(!�picpos:� X%=OX% � Y%=OY% � �
2x�inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):OX%=X%:OY%=Y%:ȓ X%(0),Y%(0),X%-X%(0),Y%-Y%(0):�outpic:�quickdrawmain
<�
F
P��rectpoll
Z�� FUST%=0 � BUT%<>0 � �picpos:X%(0)=X%:Y%(0)=Y%:FUST%=1:OX%=X%:OY%=Y%:�inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain:�letgo:�
d� FUST%=0 � �
n{� BUT%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�picpos:OX%=X%:OY%=Y%:FUST%=0:�outpic:�quickdrawmain:�letgo:�
x0� BUT%<>4 � (OX%=X%(0) � OY%=Y%(0)) � � �tj^
�:�inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�picpos
�� X%<X%(0) � Ȕ X%(0),X%
�� Y%<Y%(0) � Ȕ Y%(0),Y%
�9OX%=X%:OY%=Y%:�outpic:�quickdrawmain:�letgo:FUST%=2:�
�!�picpos:� X%=OX% � Y%=OY% � �
�x�inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):OX%=X%:OY%=Y%:ȓ X%(0),Y%(0),X%-X%(0),Y%-Y%(0):�outpic:�quickdrawmain
��
�
���pgrab(DX%,DY%,PL%)
�XR=GRXM%/GRXD%
�YR=GRYM%/GRYD%
�!SCALE%=GRXM%
�SCALE%!4=GRYM%
SCALE%!8=GRXD%
SCALE%!12=GRYD%
Wș&2E,308,SPBUF%,"GRAB",DX%-((GRWI% � 2)*XR),DY%-((GRHE% � 2)*YR),PL%+GRABM%,SCALE%
"�
,
6��pimport(DX%,DY%,PL%)
@!XR=GRXM%/GRXD%:YR=GRYM%/GRYD%
JIO%!20=(!IO%)*GRXM%
TIO%!24=(IO%!4)*GRYM%
^IO%!28=(IO%!8)*GRXD%
hIO%!32=(IO%!12)*GRYD%
r�� � GRMA% � ș&2E,308,SPBUF%,GRN$,DX%-((IMW% � 2)*XR),DY%-((IMH% � 2)*YR),PL%,IO%+20,IMPT% � ș&2E,308,SPBUF%,GRN$,DX%-((IMW% � 2)*XR),DY%-((IMH% � 2)*YR),PL%+8,IO%+20,IMPT%
|�
�
���para(LT%,PL%,DX%,DY%)
�"� PL%=1 � �elip(&75,DX%,DY%):�
�
� LT%=1 �
��l(X%(0),Y%(0),X%(1),Y%(1))
��l(X%(1),Y%(1),DX%,DY%)
�%� LITY%-4,X%(0)-X%(1),Y%(0)-Y%(1)
�� LITY%,X%(0),Y%(0)
��
�� X%(0),Y%(0),X%(1),Y%(1)
�� X%(1),Y%(1),DX%,DY%
��1,X%(0)-X%(1),Y%(0)-Y%(1)
��5,X%(0),Y%(0)
 �
 �
 
 &��elip(PL%,DX%,DY%)
 0� X%(0),Y%(0)
 :� X%(1),Y%(1)
 D� PL%,DX%,DY%
 N�
 X
 b��tri(PL%,DX%,DY%)
 l�� PL%=5 � PL%=85 � �4,DX%,DY%:� 5,X%(0),Y%(0):� 5,X%(1),Y%(1):� PL%,DX%,DY% � �4,DX%,DY%:� LITY%,X%(0),Y%(0):� LITY%,X%(1),Y%(1):� LITY%,DX%,DY%
 v�
 �
 �7ݤdist(DX%,DY%):=�(((DX%-X%(0))^2)+((DY%-Y%(0))^2))
 �
 �V��paintbrush(BX%,BY%):ș&2E,306,BRUSH%,�(SELBR%),BX%-(32*XR),BY%-(32*YR),,SCALE%:�
 �
 �E��paintbrush2(BX%,BY%):ș&2E,305,BRUSH%,�(SELBR%),BX%-32,BY%-32:�
 �
 �,��letgo:LEGO%=�:�:�:ȗ X%,Y%,H%:� H%=0:�
 �
 �<��killf:LAOPWI%=-1:� TKH%<>-1 � �iconlo(32,TKH%):TKH%=-1
 �Ȏ FUSE% �
 �� FUSE%<>32 � �spbuf(0)
 �
!
!i� 4:�closewind(5):� FUST%>0 � �inpic:�paintscale:�eorback:�paintbrush(OX%,OY%):�outpic:�quickdrawmain
!
! 
!*M� 11:� FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�outpic:�quickdrawmain
!4E� FUST%=2 � �inpic:�eoc:�elip(&C5,OX%,OY%):�outpic:�quickdrawmain
!>M� 13:� FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�outpic:�quickdrawmain
!HE� FUST%=2 � �inpic:�eoc:�para(0,0,OX%,OY%):�outpic:�quickdrawmain
!RM� 16:� FUST%=1 � �inpic:�eoc:� X%(0),Y%(0),OX%,OY%:�outpic:�quickdrawmain
!\E� FUST%=2 � �inpic:�eoc:�elip(&B5,OX%,OY%):�outpic:�quickdrawmain
!f� 18:�kill_18
!p� 19:�kill_19
!z� 20:�kill_20
!�� 21:�kill_21
!�Z� 22:� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
!�� 23:�kill_23
!�� 25:�kill_25
!�Z� 27:� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
!�Z� 28:� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
!�k� 29:�closewind(5):� FUST%>0 � �inpic:�paintscale2:�eorback:�paintbrush(OX%,OY%):�outpic:�quickdrawmain
!�k� 30:�closewind(5):� FUST%>0 � �inpic:�paintscale2:�eorback:�paintbrush(OX%,OY%):�outpic:�quickdrawmain
!�N� 32:�restpic:�forcedrawmain:�closewind(14):�spinit:� FONT%<>0 � �losefont
!�� 31:� GRTY%=1 �
!�U� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
!��
!�q� 33:�closewind(18):�spinit:� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
"F� 34:� FUST%=1 � �inpic:�pimport(OX%,OY%,3):�outpic:�quickdrawmain
"�closewind(8):�spinit
""� 35:� FUST%<2 � �closewind(8)
"$U� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
".� FUST%=3 � �closewind(7)
"8Q� 36:� FUST%<>0 � �inpic:�eoc:ȓ OX%,OY%,FRW%*2,FRH%*4:�outpic:�quickdrawmain
"B
"L� 38:�kill_38
"V� 39:�kill_39
"`� 40:�kill_40
"j� 41:�kill_41
"t� 42:�closewind(25):�meoc
"~� 43:�kill_43
"�� 44:�kill_44
"�
"�
"�� 47:�closewind(29):�meoc
"�� 48:�closewind(30):�meoc
"��
"��windname(2,PIC$)
"��
"�
"�d��meoc:�spinit:� FUST%=1 � �inpic:�eoc:ȓ X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):�outpic:�quickdrawmain
"��
"�
#��eoc:�3,63 Ȝ 192:�
#

#��eorback:�3,191 Ȝ 192:�
#
#(
��pickcol
#2KXOF%=!BLK%:YOF%=BLK%!4:�screentowork(HAND%(3), XOF%,YOF%):YOF%=228+YOF%
#<� XOF%>766 � XOF%=766
#F� YOF%>220 � YOF%=220
#Pd� MOUB%=4 � COL%=(XOF% � 24)+((YOF% � 28)*32) � � MOUB%=1 � �trasp((XOF% � 24)+((YOF% � 28)*32))
#Z�forcedrawpal(PAL%)
#d�
#n
#x��tbackclick
#�5BLK%!8=HAND%(15):ș "Wimp_GetWindowState",,BLK%+8
#�0XOF%=(!BLK%)-(BLK%!12):� XOF%>766 � XOF%=766
#�1YOF%=(BLK%!4)-(BLK%!16):� YOF%>220 � YOF%=220
#�'FONTB%=(XOF% � 24)+((YOF% � 28)*32)
#��forcedrawtback
#��
#�
#���picpos
#�SCRX%=!BLK%:SCRY%=BLK%!4
#�4BLK%!8=HAND%(2):ș "Wimp_GetWindowState",,BLK%+8
#�.X%=(((!BLK%)-(BLK%!12))+(BLK%!28)) � ZOOM%
#�6Y%=1024-((((BLK%!24)-(BLK%!4))-(BLK%!32)) � ZOOM%)
#�� X%<0 � X%=0
$� X%>1279 � X%=1279
$� Y%<0 � Y%=0
$� Y%>1023 � Y%=1023
$"� � GRLO% � �
$,XOF%=(GRIWI%-GRBX%)*2
$6YOF%=(GRIHE%-GRBY%)*4
$@X%+=XOF%:Y%+=YOF%
$J)X%=-XOF%+((X% � (2*GRIWI%))*2*GRIWI%)
$T)Y%=-YOF%+((Y% � (4*GRIHE%))*4*GRIHE%)
$^�
$h
$r��getrdor(WE%)
$|4WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)-WE%:�
$�
$���openmain:MOP%=�
$�z!BLK%=HAND%(2):BLK%!4=0:BLK%!8=300:BLK%!12=1279:BLK%!16=1023:BLK%!20=0:BLK%!24=0:BLK%!28=-1:ș "Wimp_OpenWindow",,BLK%
$��
$�
$�
��openpal
$�{!BLK%=HAND%(3):BLK%!4=100:BLK%!8=300:BLK%!12=1279:BLK%!16=600:BLK%!20=0:BLK%!24=0:BLK%!28=-1:ș "Wimp_OpenWindow",,BLK%
$��
$�
$�)��openwind(WH%):� WH%>2 � LAOPWI%=WH%
$�3!BLK%=HAND%(WH%):ș "Wimp_GetWindowState",,BLK%
$�)BLK%!28=-1:ș "Wimp_OpenWindow",,BLK%
$��
%
%��closewind(WH%)
%0!BLK%=HAND%(WH%):ș "Wimp_CloseWindow",,BLK%
%&�
%0
%:��opmain
%Dș "Wimp_OpenWindow",,BLK%
%N�
%X
%b��clmain:MOP%=�
%lș "Wimp_CloseWindow",,BLK%
%v�
%�
%���airnoz
%�5H%=-1:�L%=21 � 33 � 2:� �high(4,L%) � H%=L%:L%=33
%��
%�Ȏ H% �
%�� 21:XR=1:YR=.25
%�� 23:XR=1:YR=.5
%�� 25:XR=1:YR=.75
%�� 27:XR=1:YR=1
%�� 29:XR=.75:YR=1
%�� 31:XR=.5:YR=1
%�� 33:XR=.25:YR=1
%��
&�
&
&��paintscale
& !SCALE%=BXM%
&*SCALE%!4=BYM%
&4SCALE%!8=BXD%
&>SCALE%!12=BYD%
&HXR=BXM%/BXD%
&RYR=BYM%/BYD%
&\�
&f
&p��paintscale2
&z
!SCALE%=1
&�SCALE%!4=1
&�SCALE%!8=1
&�SCALE%!12=1
&�XR=1
&�YR=1
&��
&�
&���picclick
&�$� MBUS% � MOUB%<>0 � � � MBUS%=�
&�Ȏ FUSE% �
&�� -1:� MOUB%=1 � �picpos:�inpic:CO%=�X%,Y%):TI%=Ȝ(X%,Y%):�3,63 Ȝ 192:�69,400,400:�69,400,400:�outpic:�trasp(�findpalent(CO%,TI%)):�forcedrawpal(PAL%):� �t`h
&�� MOUB%=4 � �op1:� �t`h
&�?� 0:�picpos:�inpic:�setcol:�69,X%,Y%:�outpic:�quickdrawmain
'"� 4:�paintscale:�inpic:�picpos
'.� FUST%<>0 � �eorback:�paintbrush(OX%,OY%)
'8�setbackcol:�paintbrush(X%,Y%):OX%=X%:OY%=Y%:FUST%=1
'$!�eorback:�paintbrush(OX%,OY%)
'.�outpic:�quickdrawmain
'8� 24:� MOUB%<>4 � � �t`h
'B��picpos:�inpic:�3,63 Ȝ 192:�69,400,400:�69,400,400:�setcol:TCO%=�X%-2,Y%):TTI%=Ȝ(X%-2,Y%):TPE%=�findpalent(TCO%,TTI%):� TPE%=COL% � �outpic:�message(0,"Cannot trace the colour you are using.")
'L2�trace(X%,Y%,TCO%,TTI%):�outpic:�quickdrawmain
'V$� 29:�paintscale2:�inpic:�picpos
'`/� FUST%<>0 � �eorback:�paintbrush2(OX%,OY%)
'j VARS!20=BTC%:VARS!24=PALTAB%
'tVARS!28=PIC%:VARS!32=SPBUF%
'~VARS!36=X%-32:VARS!40=Y%-32
'�!VARS!44=SELBR%:VARS!48=BRUSH%
'�A%=VARS:� averagebrush
'�3�3,63:ȓ X%-32,Y%-32,64,64:ȓ X%-32,Y%-32,64,64
'�8OX%=X%:OY%=Y%:FUST%=1:�eorback:�paintbrush2(OX%,OY%)
'��outpic:�quickdrawmain
'�$� 30:�paintscale2:�inpic:�picpos
'�/� FUST%<>0 � �eorback:�paintbrush2(OX%,OY%)
'� VARS!20=BTC%:VARS!24=PALTAB%
'�VARS!28=PIC%:VARS!32=SPBUF%
'�VARS!36=X%-32:VARS!40=Y%-32
'�!VARS!44=SELBR%:VARS!48=BRUSH%
'�9VARS!84=PALTAB%?(COL%*2):VARS!88=PALTAB%?((COL%*2)+1)
(A%=VARS:� tintbrush
(
3�3,63:ȓ X%-32,Y%-32,64,64:ȓ X%-32,Y%-32,64,64
(8OX%=X%:OY%=Y%:FUST%=1:�eorback:�paintbrush2(OX%,OY%)
(�outpic:�quickdrawmain
((!� 31:� MOUB%<>4 � GRTY%=1 � �
(2-�spinit:�spbuf(161*1024):� Q% � �spbuferr
(<�backuppic
(FX�inbackup:�picpos:FBC%=�X%,Y%):FBT%=Ȝ(X%,Y%):�0,FBC%+128 Ȝ FBT%:FUT%=(FBC%+1) � 64
(P9�0,FUT% Ȝ FBT%:ș "Hourglass_On":Ȑ X%,Y%:�outbackup
(Z-A%=VARS:B%=PIC%:C%=SPBUF%:� findchangebox
(dFMINX%=(!VARS)*2
(nFMINY%=(VARS!4)*4
(xFMAXX%=(VARS!8)*2
(�FMAXY%=(VARS!12)*4
(�	�fill
(�ș "Hourglass_Off"
(��
(��
(�
(�
��fill
(�NOS%=��gi(13,83)
(�NOF%=GRFN%
(�	ET%=0
(�� �high(13,87) � ET%=1
(�� �high(13,89) � ET%=2
(�� �high(13,91) � ET%=3
)� �high(13,93) � ET%=4
)FIT%=-1
)� �high(13,67) � FIT%=1
)"� �high(13,69) � FIT%=2
),� �high(13,71) � FIT%=3
)6� �high(13,73) � FIT%=4
)@� �high(13,75) � FIT%=5
)J� �high(13,77) � FIT%=6
)T� ET%=1 � ET%=2 � FIT%=1
)^� ET%=3 � ET%=4 � FIT%=4
)hE� FIT%=-1 � �spinit:�message(0,"You must choose a type of fill.")
)r
Ȏ FIT% �
)|3� 1:FIW%=FMAXX%-FMINX%:FIFC%=0:LAFC%=255:FID%=1
)�4� 2:FIW%=FMAXX%-FMINX%:FIFC%=255:LAFC%=0:FID%=-1
)�3� 4:FIW%=FMAXY%-FMINY%:FIFC%=0:LAFC%=255:FID%=1
)�4� 3:FIW%=FMAXY%-FMINY%:FIFC%=255:LAFC%=0:FID%=-1
)� � 5:FIFC%=0:LAFC%=255:FID%=1
)�!� 6:FIFC%=255:LAFC%=0:FID%=-1
)��
)�� FIT%=5 � FIT%=6 �
)�?� (FMAXX%-X%)>(X%-FMINX%) � XOF%=FMAXX%-X% � XOF%=X%-FMINX%
)�?� (FMAXY%-Y%)>(Y%-FMINY%) � YOF%=FMAXY%-Y% � YOF%=Y%-FMINY%
)�5FIW%=�((XOF%^2)+(YOF%^2)):� GRTY%=1 � FIW%=FIW%/2
)��
)�\� FIW%=0 � NOS%=1 � �message(5,"You cannot use a graduated fill on an area that small.")
)�1CPP%=(255<<8) � FIW%:CPS%=(255<<8) � (NOS%-1)
*HI%=IO%:�L%=0 � 15:?I%=GRFI%(L%,0,NOF%):I%?1=GRFI%(L%,1,NOF%):I%+=2:�
*6!VARS=PIC%:� GRTY%=0 � VARS!4=SPBUF% � VARS!4=PIC%
*�VARS!8=IO%:VARS!12=NOS%:VARS!16=FIFC%:VARS!20=LAFC%:VARS!24=FID%:VARS!28=CPP%:VARS!32=CPS%:VARS!36=X%:VARS!40=Y%:VARS!44=ROTTAB%:VARS!48=FIT%:VARS!52=FMINX%:VARS!56=FMINY%:VARS!60=FMAXX%:VARS!64=FMAXY%
*&C� GRTY%=1 � VARS!36=(FMINX%+FMAXX%)�2:VARS!40=(FMINY%+FMAXY%)�2
*0VARS!68=RAND%:VARS!72=0
*:VARS!76=��gi(13,81)
*D*� �high(13,54) � VARS!80=1 � VARS!80=0
*N9VARS!84=ET%:VARS!88=TRASP%:VARS!92=GRTY%:VARS!96=BTC%
*X'�L%=0 � 4092 � 4:RAND%!L%=�(CPS%):�
*bA%=VARS
*l� graduatedfill
*v�spinit:�forcedrawmain
*��
*�
*���hg:ș "Hourglass_Smash":�
*�
*���swapcorns
*�� X%(0)>OX% � Ȕ X%(0),OX%
*�� Y%(0)>OY% � Ȕ Y%(0),OY%
*��
*�
*�Eݤsamecol(x1%,y1%,col%,tin%):=(�x1%,y1%)=col% � Ȝ(x1%,y1%)=tin%)
*�
*�5��l(x1%,y1%,x2%,y2%):�4,x1%,y1%:� LITY%,x2%,y2%:�
*�
+g��r(x1%,y1%,x2%,y2%):�4,x1%,y1%:� LITY%-4,x2%,0:� LITY%-4,0,y2%:� LITY%-4,-x2%,0:� LITY%-4,0,-y2%:�
+
+��trace(X%,Y%,TCO%,TTI%)
+ �
+*
+4ݤfindpalent(CO%,TI%)
+>=CTT%?((CO%*4)+(TI% � 64))
+H
+R>��setcol:� USE%,PALTAB%?(COL%*2) Ȝ PALTAB%?((COL%*2)+1):�
+\
+fH��setbackcol:� USE%,(PALTAB%?(COL%*2))+128 Ȝ PALTAB%?((COL%*2)+1):�
+p
+z��col(C%,T%,U%)
+�ș&35,-1,9 � ,,BP%
+�� BP%=3 � �U%,C% Ȝ T%:�
+�+R%=((C% � %11)*4)+(T% � 64):R%+=(R%<<4)
+�2G%=(((C% � %1100)>>2)*4)+(T% � 64):G%+=(G%<<4)
+�4B%=(((C% � %110000)>>4)*4)+(T% � 64):B%+=(B%<<4)
+�>ș "ColourTrans_SetGCOL",((B%<<24)+(G%<<16)+(R%<<8)),,,,U%
+��
+�
+���anticol(C%,T%,U%)
+�+R%=((C% � %11)*4)+(T% � 64):R%+=(R%<<4)
+�2G%=(((C% � %1100)>>2)*4)+(T% � 64):G%+=(G%<<4)
+�4B%=(((C% � %110000)>>4)*4)+(T% � 64):B%+=(B%<<4)
+�Nș "ColourTrans_ReturnOppGCOLForMode",((B%<<24)+(G%<<16)+(R%<<8)),15 � GC%
,#� U%,(GC%>>2) Ȝ (GC% � %11)*64
,�
,
,$
��gridcol
,.�col(GRCO%,GRTI%,0)
,8�
,B
,L��makerr:�killf:FUSE%=-1
,Vș "Wimp_DragBox",,0
,`!BLK%=�
,jER=�
,t&$(BLK%+4)=�$+" at line "+�(�)+�(0)
,~K� $(BLK%+4)="Internal error '"+REPORT$+"' at line "+STR$ERL+"."+CHR$(0)
,�2� �<>17 ș "Wimp_ReportError",BLK%,1,"Imagery"
,�� PROCaction:END
,��
,��
,�
,���message(M%,M$):�outpic
,�Zș "Wimp_DragBox",,0:!BLK%=M%:$(BLK%+4)=M$+�(0):ș "Wimp_ReportError",BLK%,1,"Imagery"
,��forcedrawmain
,�
�action:�
,��
,�
,���mouse
,�FMOUX%=!BLK%:MOUY%=BLK%!4:MOUB%=BLK%!8:MOUH%=BLK%!12:MOUIC%=BLK%!16
-Ȏ MOUB% �
-
� 4,1:Ȏ MOUH% �
-� -2:�openmain
-$� HAND%(0):� BLK%!16=8 � �saveok
-(*� HAND%(7):� BLK%!16=8 � �spritesaveok
-2� HAND%(2):�picclick
-<� HAND%(3):�pickcol
-F� HAND%(4):�airbclick
-P� HAND%(5):�brushclick
-Z� HAND%(6):�gridclick
-d� HAND%(8):�grabclick
-n� HAND%(10):�linepatclick
-x� HAND%(11):�ecfclick
-�� HAND%(12):�edbruclick
-�� HAND%(13):�fillclick
-�� HAND%(14):�textclick
-�� HAND%(15):�tbackclick
-�� HAND%(16):�tparclick
-�� HAND%(17):�fillcontclick
-�� HAND%(18):�colrepclick
-�� HAND%(19):�frameclick
-�� HAND%(20):�patfillclick
-�� HAND%(21):�rgbcontclick
-�� HAND%(22):�greyscaleclick
-�� HAND%(23):�pixelateclick
-�� HAND%(24):�rotateclick
.� HAND%(25):�colscaleclick
.� HAND%(26):�contrastclick
.� HAND%(27):�posteriseclick
."� HAND%(29):�filterclick
.,� HAND%(30):�wobbleclick
.6� HAND%(32):�toolclick
.@� HAND%(33):�zoomclick
.J(� HAND%(34):� BLK%!16=8 � �savesetok
.T�
.^=� 2:� MOUH%=-2 � �iconmenu � � MOUH%=HAND%(2) � �windmenu
.h1� 16,64:� MOUH%=HAND%(0) � DRAG%=0:�startdrag
.r)� MOUH%=HAND%(7) � DRAG%=7:�startdrag
.|+� MOUH%=HAND%(34) � DRAG%=34:�startdrag
.��
.��
.�
.���wobbleclick
.��arrows(30,2,3,5,1,999,1)
.��arrows(30,7,8,11,1,999,1)
.� �arrows(30,38,39,42,0,359,1)
.�*� MOUIC%=19 � �si(30,27,"COS(RAD(A))")
.�*� MOUIC%=21 � �si(30,27,"SIN(RAD(A))")
.�*� MOUIC%=23 � �si(30,27,"TAN(RAD(A))")
.�� MOUIC%<>47 � �
.�ș&2E,256+9,SHOW%:SHOW%!32=&12345:ș&2E,266,SHOW%,"<Imagery$Dir>.Show":� SHOW%!32=&12345 � �message(0,"Could not load 'Show' sprite from !Imagery folder")
.�-�spinit:�spbuf(161*1024):� Q% � �spbuferr
/�backuppic
/ș&2E,256+9,PIC%
/c�inbackup:ș &2E,256+16,PIC%,"SHOW",0,400,400,800,592:ș&2E,290,SHOW%,"SHOW",400,400:�outbackup
/&>�insprite(0,SHOW%,"SHOW"):ș&2E,290,PIC%,"SHOW":�outsprite
/0S!PIC%=161*1024:PIC%!4=0:PIC%!8=24:PIC%!12=24:ș &2E,271,PIC%,"PIC",0,640,256,15
/:WE%=2:� �T~\
/D-� �high(30,25) � VARS!36=1 � VARS!36=&280
/N(VARS!40=0:� �high(30,44) � VARS!40=1
/XC�L%=0 � 255:?(TAS%+256+L%)=TRASP%?L%:TRASP%?L%=1:�:TRASP%?254=0
/b�VARS!44=0:VARS!8=400:VARS!12=400:VARS!16=802:VARS!20=596:VARS!24=TAS%+512:VARS!28=BTC%:VARS!32=TRASP%:A%=VARS:� wobble:ș "Hourglass_Off":�inbackup:ș&2E,290,SHOW%,"SHOW",400,400:�outbackup
/lHș&2E,256+9,SHOW%:�inpic:ș&2E,256+16,SHOW%,"SHOW",0,400,400,800,592
/vș&2E,290,SPBUF%,"PIC",0,0
/�X�outpic:�spinit:�L%=0 � 255:TRASP%?L%=?(TAS%+256+L%):�:�forcedrawwob:� WER% � � �DZ@
/��
/�
/���filterclick
/��arrows(29,2,3,5,0,8,1)
/��
/�
/���rotateclick
/��
/�
/���rgbcontclick
/�6RP%=�perc(21,13):GP%=�perc(21,15):BP%=�perc(21,17)
/�IRP%=RP%:IGP%=GP%:IBP%=BP%
0�arrows(21, 3,5,13,0,100,1)
0�arrows(21, 6,8,15,0,100,1)
0 �arrows(21, 9,11,17,0,100,1)
0 6RP%=�perc(21,13):GP%=�perc(21,15):BP%=�perc(21,17)
0*P� RP%<>IRP% � RSL%=RP%:�slidud(1,RP%):�getslor(21,30):�redrawslid(21,11,RP%)
04P� GP%<>IGP% � GSL%=GP%:�slidud(2,GP%):�getslor(21,31):�redrawslid(21,10,GP%)
0>O� BP%<>IBP% � BSL%=BP%:�slidud(3,BP%):�getslor(21,32):�redrawslid(21,8,BP%)
0H@� MOUIC%=30 � RSL%=�slidhit(21,30,MOUX%,MOUY%,11,1):RP%=RSL%
0R@� MOUIC%=31 � GSL%=�slidhit(21,31,MOUX%,MOUY%,10,2):GP%=GSL%
0\?� MOUIC%=32 � BSL%=�slidhit(21,32,MOUX%,MOUY%,8,3):BP%=BSL%
0f�
0p
0z��slidud(WE%,V%)
0�"� WE%=1 � �ui(21,13,�(V%)+"%")
0�"� WE%=2 � �ui(21,15,�(V%)+"%")
0�"� WE%=3 � �ui(21,17,�(V%)+"%")
0�
� WE%=4 �
0�V2%=(V%�4):� V2%=0 � V2%=1
0��ui(33,8, �(V2%))
0��
0��
0�
0���greyscaleclick
0�O�arrows(22,3,5,13,0,9,1):�arrows(22,6,8,15,0,9,1):�arrows(22,9,11,17,0,9,1)
0��
0�
1��colscaleclick
1O�arrows(25,3,5,13,0,9,1):�arrows(25,6,8,15,0,9,1):�arrows(25,9,11,17,0,9,1)
1�
1$
1.��contrastclick
18'CONL%=��gi(26,18):CONH%=��gi(26,20)
1B;�arrows(26,11,13,18,0,15,1):�arrows(26,14,16,20,0,15,1)
1LC� CONL%<>��gi(26,18) � CONH%<>��gi(26,20) � �forcedrawgraph(26)
1V�
1`
1j��posteriseclick
1t6POL%=��gi(27,22):POH%=��gi(27,24):PON%=��gi(27,26)
1~W�arrows(27,11,13,22,0,15,1):�arrows(27,14,16,24,0,15,1):�arrows(27,18,20,26,2,16,1)
1�U� POL%<>��gi(27,22) � POH%<>��gi(27,24) � PON%<>��gi(27,26) � �forcedrawgraph(27)
1��
1�
1���pixelateclick
1�8�arrows(23,2,4,9,1,100,1):�arrows(23,5,7,11,1,100,1)
1��
1�
1���frameclick
1�9�arrows(19,5,7,10,1,640,1):�arrows(19,6,8,12,1,256,1)
1�� MOUIC%<>14 � �
1�
�killf
1� V%=��gi(19,10):� V%<1 � V%=1
2� V%>640 � V%=640
2
�si(19,10,�V%)
2 W%=��gi(19,12):� W%<1 � W%=1
2� W%>256 � W%=256
2(�si(19,12,�W%)
22MFRW%=V%+1:FRH%=W%+1:FUSE%=36:FUST%=0:�ud:�windname(2,PIC$+" [Set frame]")
2<� MOUB%=4 � �menoff
2F�
2P
2Z��colrepclick
2d�� MOUIC%=5 � ș "Hourglass_On":�L%=0 � 22596 � 4:SPBUF%!L%=OPAL%!L%:�:�L%=0 � 255:REPS%?L%=L%:�:ș "Hourglass_Off":�forcedrawcolrep:�
2n5BLK%!8=HAND%(18):ș "Wimp_GetWindowState",,BLK%+8
2x<XOF%=(!BLK%)-((BLK%!12)-(BLK%!28)):� XOF%>766 � XOF%=766
2�CYOF%=(BLK%!4)-(((BLK%!24)-(BLK%!32))-556):� YOF%>550 � YOF%=550
2�� YOF%<=220 �
2��C%=(XOF% � 24)+((YOF% � 28)*32):�insprite(0,SPBUF%,"Palette"):FX%=((SREP% � 32)*24)+2:FY%=((SREP% � 32)*28)+4:�0,PALTAB%?(C%*2) Ȝ PALTAB%?((C%*2)+1)
2�Bȓ Ȑ FX%,FY%,20,20:�outsprite:REPS%?SREP%=C%:�forcedrawcolrep
2��
2�Z� YOF%>=290 � YOF%<514 � YOF%-=290:SREP%=(XOF% � 24)+((YOF% � 28)*32):�forcedrawcolrep
2��
2�
2�'��arrows(W%,DI%,UI%,TI%,LV%,UV%,I%)
2�5V%=��gi(W%,TI%):OV%=V%:� MOUB%=1 � WE%=-1 � WE%=1
2�� MOUIC%=DI% � V%-=(I%*WE%)
2�� MOUIC%=UI% � V%+=(I%*WE%)
2�� V%<LV% � V%=LV%
3� V%>UV% � V%=UV%
3*� V%<>OV% � W%<>21 � �si(W%,TI%,�(V%))
3-� V%<>OV% � W%=21 � �si(W%,TI%,�(V%)+"%")
3"�
3,
36��tparclick
3@�
3J
3T��losefont
3^8� FONT%<>0 � FTL% � ș "Font_LoseFont",FHAND%:FTL%=�
3h�
3r
3|
��getfont
3�$� ��gi(14,20)<6 � �si(14,20,"6")
3�$� ��gi(14,22)<6 � �si(14,22,"6")
3�)FONTX%=��gi(14,20):FONTY%=��gi(14,22)
3�L� FONT%<>0 � FTL%=�:ș "Font_FindFont",,FO$,FONTX%*16,FONTY%*16 � FHAND%
3��
3�
3�
��restpic
3�
�inpic
3�ș&2E,290,SPBUF%,"PIC",0,0
3��outpic
3��
3�
3���textclick
4�
4
4��ecfclick
4&-� MOUIC%>25 � MOUIC%<33 � �forcedrawpat:�
40� MOUIC%<>8 � �
4:� MOUB%<>1 � MOUB%<>4 � �
4D5BLK%!8=HAND%(11):ș "Wimp_GetWindowState",,BLK%+8
4N6XOF%=((!BLK%)-(BLK%!12))-180:� XOF%>766 � XOF%=766
4X6YOF%=((BLK%!4)-(BLK%!16))-20:� YOF%>220 � YOF%=220
4b%col%=(XOF% � 24)+((YOF% � 28)*32)
4lcby%=TTB%?col%
4vCECF%=�cecf
4�EL%=0:� FORK%=8 TO 15:IF FNhigh(11,K%) THEN L%=K%-7:NEXT ELSE NEXT
4�� �high(11,23) � L%=1
4�� �high(11,24) � L%=2
4�� �high(11,16) � L%=3
4�.�K%=11 � 15:� �high(11,K%) � L%=K%-7:� � �
4�� L%=0 � �
4�ECF%(L%,CECF%)=cby%
4��forcedrawpat
4��
4�
4���reloadpatfills
4�.ș&2E,266,PFILLS%,"<Imagery$Dir>.PatFills"
4��
5
5��patfillclick
5"� MOUIC%=2 � �reloadpatfills:�
5 5BLK%!8=HAND%(20):ș "Wimp_GetWindowState",,BLK%+8
5*6XOF%=((!BLK%)-(BLK%!12)):YOF%=((BLK%!4)-(BLK%!16))
54tK%=-1:�L%=1 � 12:BX%=((L%-1)*84)+24:BY%=52:� XOF%>=BX% � YOF%>=BY% � XOF%<(BX%+64) � YOF%<(BY%+64) � K%=L%:� � �
5>+� K%=-1 � � � CPF%=K%:�forcedrawpatfill
5H�
5R
5\
��filluse
5f SNO%=�grafilno:� SNO%=-1 � �
5pw�killf:FUSE%=31:FUST%=0:GRFN%=SNO%:GRTY%=0:�ud:�windname(2,PIC$+" [Graduated fill ("+�filldet(SNO%+1)+")]"):�spinit
5z� MOUB%=4 � �menoff
5��
5�
5�:ݤfilldet(S%):� GRTY%=0 � ="flood "+�S% � ="area "+�S%
5�
5���invertfill
5�NOS%=�grafilno
5� IA%=0:IB%=��gi(13,83):IB%-=1
5�k�:Ȕ GRFI%(IA%,0,NOS%),GRFI%(IB%,0,NOS%):Ȕ GRFI%(IA%,1,NOS%),GRFI%(IB%,1,NOS%):IA%+=1:IB%-=1:� IA%>IB%
5��forcedrawfill
5��
5�
5���interpfill
5�NOS%=�grafilno
6IA%=0:�:IB%=IA%+1
6� IB%=16 � �forcedrawfill:�
6?� GRFI%(IB%,0,NOS%)=0 � GRFI%(IB%,1,NOS%)=0 � IB%+=1:� �TPv
6$'� IB%=IA%+1 � IA%=IB%:IB%+=1:� �TPv
6.T1%=GRFI%(IA%,1,NOS%)>>6
68*R1%=((GRFI%(IA%,0,NOS%) � %11)<<2)+T1%
6B'G1%=(GRFI%(IA%,0,NOS%) � %1100)+T1%
6L.B1%=((GRFI%(IA%,0,NOS%) � %110000)>>2)+T1%
6VT2%=GRFI%(IB%,1,NOS%)>>6
6`;RD=((((GRFI%(IB%,0,NOS%) � %11)<<2)+T2%)-R1%)/(IB%-IA%)
6j8GD=(((GRFI%(IB%,0,NOS%) � %1100)+T2%)-G1%)/(IB%-IA%)
6t?BD=((((GRFI%(IB%,0,NOS%) � %110000)>>2)+T2%)-B1%)/(IB%-IA%)
6~IA%+=1:�L%=1 � IB%-IA%
6�0R%=R1%+(RD*L%):G%=G1%+(GD*L%):B%=B1%+(BD*L%)
6�Iș "ColourTrans_ReturnGCOLForMode",(B%<<28)+(G%<<20)+(R%<<12),15 � G%
6�;GRFI%(IA%,0,NOS%)=G%>>2:GRFI%(IA%,1,NOS%)=(G% � %11)<<6
6�IA%+=1:�
6�IB%=IA%+1:� �TPv
6�
6���wipefill
6�NOS%=�grafilno
6�0�L%=0 � 15:�K%=0 � 1:GRFI%(L%,K%,NOS%)=0:�:�
6��forcedrawfill:�
6�
6���compfill
7NOS%=�grafilno
7
7CA%=GRFI%(0,0,NOS%):TA%=GRFI%(0,1,NOS%):IA%=1:IB%=1
7
ȕ IB%<16
7�� GRFI%(IB%,0,NOS%)<>CA% � GRFI%(IB%,1,NOS%)<>TA% � GRFI%(IA%,0,NOS%)=GRFI%(IB%,0,NOS%):GRFI%(IA%,1,NOS%)=GRFI%(IB%,1,NOS%):CA%=GRFI%(IA%,0,NOS%):TA%=GRFI%(IA%,1,NOS%):IA%+=1
7(IB%+=1:�
72>ȕ IA%<16:GRFI%(IA%,0,NOS%)=0:GRFI%(IA%,1,NOS%)=0:IA%+=1:�
7<�forcedrawfill
7F�
7P
7Z��fillclick
7d� MOUIC%<0 � � �T`z
7n� MOUIC%=105 � �filluse:�
7x� MOUIC%=62 � �invertfill:�
7�� MOUIC%=63 � �interpfill:�
7�� MOUIC%=110 � �wipefill:�
7�� MOUIC%=111 � �compfill:�
7�@� MOUIC%<>87 � MOUIC%<>89 � MOUIC%<>91 � MOUIC%<>93 � � �t~w
7�-� �high(13,MOUIC%) � �iconlo(13,MOUIC%):�
7��� �high(13,75) � �high(13,77) � �message(13,"You cannot use an edge priority with a radial fill.") � �iconlo(13,87):�iconlo(13,89):�iconlo(13,91):�iconlo(13,93):�iconhi(13,MOUIC%)
7�(� MOUIC%<>75 � �high(13,75) � � �d\w
7ȃ� �high(13,87) � �high(13,89) � �high(13,91) � �high(13,93) � �message(4,"You cannot use a radial fill with an edge priority.")
7�_�iconhi(13,75):�iconlo(13,67):�iconlo(13,69):�iconlo(13,71):�iconlo(13,73):�iconlo(13,77):�
7�S� (MOUIC%>=2 � MOUIC%<=14) � MOUIC%=78 � MOUIC%=79 � MOUIC%=85 � �setgradfill:�
7�(� MOUIC%<>77 � �high(13,77) � � �TDx
7�� �high(13,87) � �high(13,89) � �high(13,91) � �high(13,93) � �message(4,"You cannot use a radial fill with an edge priority.")
7�_�iconhi(13,77):�iconlo(13,67):�iconlo(13,69):�iconlo(13,71):�iconlo(13,73):�iconlo(13,75):�
8T� MOUIC%=95 � MOUIC%=99 � MOUIC%=101 � MOUIC%=103 � MOUIC%=97 � �forcedrawfill:�
8!�arrows(13, 40,41,81,0,359,1)
8I� MOUB%=1 � MOUIC%=43 � MOUIC%=45 � � MOUB%=1 � MOUIC%=45 � MOUIC%=43
8"� MOUIC%<>43 � � �D@x
8,!NOS%=��gi(13,83):� NOS%=2 � �
86>�shadeicon(13,�filic(NOS%-1)):NOS%-=1:�si(13,83,�(NOS%)):�
8@� MOUIC%<>45 � � �D^x
8J"NOS%=��gi(13,83):� NOS%=16 � �
8T<�clearicon(13,�filic(NOS%)):NOS%+=1:�si(13,83,�(NOS%)):�
8^�
8h
8r��setgradfill
8|SNO%=�grafilno
8�Ȏ MOUIC% �
8�� 78:� �Dvy
8�� 79:� �t@y
8�� 2:� �tJy
8�� 3:� �tTy
8�� 4:� �t^y
8�� 5:� �thy
8�� 6:� �try
8�� 7:� �dFy
8�� 8:� �dPy
8�� 9:� �dZy
8�� 10:� �ddy
8�� 11:� �t|y
9� 12:� �dny
9� 13:� �dxy
9� 14:� �TBz
9&� 85:� �TLz
90�
9:J�L%=0 � 15:�shadeicon(13,�filic(L%)):�K%=0 � 1:GRFI%(L%,K%,SNO%)=0:�:�
9DQ� S%:�L%=0 � S%-1:�clearicon(13,�filic(L%)):�K%=0 � 1:� GRFI%(L%,K%,SNO%):�:�
9N�si(13,83,�S%)
9X�forcedrawfill
9b�
9l
9vH� 12, 1,0,1,64,1,128,1,192,2,0,2,64,2,128,2,192,3,0,3,64,3,128,3,192
9�L� 12, 4,0,4,64,4,128,4,192,8,0,8,64,8,128,8,192,12,0,12,64,12,128,12,192
9�P� 12, 5,0,5,64,5,128,5,192,10,0,10,64,10,128,10,192,15,0,15,64,15,128,15,192
9�T� 12, 16,0,16,64,16,128,16,192,32,0,32,64,32,128,32,192,48,0,48,64,48,128,48,192
9�T� 12, 17,0,17,64,17,128,17,192,34,0,34,64,34,128,34,192,51,0,51,64,51,128,51,192
9�T� 12, 20,0,20,64,20,128,20,192,40,0,40,64,40,128,40,192,60,0,60,64,60,128,60,192
9�e� 15, 0,64,0,128,0,192,21,0,21,64,21,128,21,192,42,0,42,64,42,128,42,192,63,0,63,64,63,128,63,192
9�L� 12, 1,0,1,64,1,128,1,192,6,0,6,64,6,128,6,192,27,0,27,64,27,128,27,192
9�:� 8, 18,0,18,64,18,128,18,192,39,0,39,64,39,128,39,192
9�2� 8, 2,0,2,64,2,128,2,192,7,0,7,64,7,128,7,192
9�T� 12, 17,0,17,64,17,128,17,192,38,0,38,64,38,128,38,192,59,0,59,64,59,128,59,192
9�P� 12, 5,0,5,64,5,128,5,192,10,0,26,64,26,128,26,192,47,0,47,64,47,128,47,192
9�T� 12, 20,0,20,64,20,128,20,192,41,0,41,64,41,128,41,192,62,0,62,64,62,128,62,192
9�P� 12, 1,0,1,64,1,128,1,192,22,0,22,64,22,128,22,192,43,0,43,64,43,128,43,192
:8� 8, 9,0,9,64,9,128,9,192,14,0,14,64,14,128,14,192,0
::� 8, 21,0,21,64,21,128,21,192,42,0,42,64,42,128,42,192
:
: IXOF%=!BLK%:YOF%=BLK%!4:!BLK%=HAND%(13):ș "Wimp_GetWindowState",,BLK%
:*�getrdor(484)
:40XOF%=(XOF%-WOX%)-422:� XOF%>766 � XOF%<0 � �
:>0YOF%=(YOF%-WOY%)-236:� YOF%>220 � YOF%<0 � �
:H%col%=(XOF% � 24)+((YOF% � 28)*32)
:Rtin%=PALTAB%?((col%*2)+1)
:\col%=PALTAB%?(col%*2)
:f=FPE%=-1:�L%=0 � 15:� �high(13,�filic(L%)) � FPE%=L%:� � �
:pSNO%=�grafilno
:z� FPE%=-1 � SNO%=-1 � �
:�BGRFI%(FPE%,0,SNO%)=col%:GRFI%(FPE%,1,SNO%)=tin%:�forcedrawfill
:��
:�
:�7ݤfilic(FSN%):� FSN%<=11 � =FSN%+26 � =(FSN%-12)+46
:�
:�-ݤlipaadj(LITA%):� LITA%=7 � =51 � =LITA%
:�
:���linepatclick
:�� MOUB%=1 �
:�1� MOUIC%=2 � MOUIC%=3 � � MOUIC%=3 � MOUIC%=2
:��
:�Ȏ MOUIC% �
:�W� 3:PL%=��gi(10,48):� PL%>1 � �shadeicon(10,�lipaadj(PL%+6)):PL%-=1:�si(10,48,�PL%)
;X� 2:PL%=��gi(10,48):� PL%<40 � �clearicon(10,�lipaadj(PL%+7)):PL%+=1:�si(10,48,�PL%)
;!� 50:PALE%=��gi(10,48):�23,6,
;LIN%=7:�L%=1 � 5:N%=0:I%=128:�K%=1 � 8:� �high(10,�lipaadj(IN%)) � N%+=I%
;$.I%=I% � 2:IN%+=1:�:� N%:PAT%(L%)=N%:�:� 0|
;.� MOUB%=4 � �menoff
;8�
;B�
;L
;V;��grabclick:ING%=(�high(31,3) � �high(31,4)) � FUSE%=34
;`� MOUIC%<>16 � �
;ja� FUSE%<>34 � FUST%<2 � �message(1,"Select an area of picture before setting these options.")
;t� ING% � � �tz{
;~
�inpic
;�� FUSE%<>34 �
;��pgrab(OX%,OY%,3)
;��
;�$� FUST%<>0 � �pimport(OX%,OY%,3)
;��
;�;GRXM%=�(�gi(8,17)):� GRXM%<1 � GRXM%=1:�si(8,17,�GRXM%)
;�;GRYM%=�(�gi(8,19)):� GRYM%<1 � GRYM%=1:�si(8,19,�GRYM%)
;�;GRXD%=�(�gi(8,18)):� GRXD%<1 � GRXD%=1:�si(8,18,�GRXD%)
;�;GRYD%=�(�gi(8,20)):� GRYD%<1 � GRYD%=1:�si(8,20,�GRYD%)
;�
�grabflip
;�GRMA%=�high(8,14)
;�� � ING% � � �TT|
<'� �high(31,3) � �impcen � �impscale
<
�
<� FUSE%<>34 �
<�pgrab(OX%,OY%,3)
<(�
<2$� FUST%<>0 � �pimport(OX%,OY%,3)
<<�
<F�outpic:�quickdrawmain
<P�
<Z
<d��grabflip
<n_� (�high(8,10) � � GRFX%) � ((� �high(8,10)) � GRFX%) � ș&2E,289,SPBUF%,GRN$:GRFX%=� GRFX%
<x_� (�high(8,11) � � GRFY%) � ((� �high(8,11)) � GRFY%) � ș&2E,303,SPBUF%,GRN$:GRFY%=� GRFY%
<��
<�
<���gridclick
<��arrows(6, 2,6,19,1,999,1)
<��arrows(6, 3,7,21,1,999,1)
<� �arrows(6, 10,14,23,0,999,1)
<� �arrows(6, 11,15,25,0,999,1)
<�K� MOUIC%=27 � �si(6,19,"1"):�si(6,21,"1"):�si(6,23,"0"):�si(6,25,"0"):�
<�� MOUIC%<>29 � �
<�-GRIWI%=�(�gi(6,19)):� GRIWI%<1 � GRIWI%=1
<�-GRIHE%=�(�gi(6,21)):� GRIHE%<1 � GRIHE%=1
<�WGRBX%=�(�gi(6,23)):� GRBX%>GRIWI% � �:GRBX%-=GRIWI%:� GRBX%<GRIWI%:�si(6,23,�GRBX%)
<�WGRBY%=�(�gi(6,25)):� GRBY%>GRIHE% � �:GRBY%-=GRIHE%:� GRBY%<GRIHE%:�si(6,25,�GRBY%)
=� MOUB%=4 � �menoff
=�forcedrawmain
=�
="
=,��brushclick
=6� MOUIC%>=0 � MOUIC%<=11 �
=@@� FUST%>0 � �inpic:�paintscale:�eorback:�paintbrush(OX%,OY%)
=JSELBR%=MOUIC%+1
=TD� FUST%>0 � �eorback:�paintbrush(OX%,OY%):�outpic:�quickdrawmain
=^�forcedrawbrush
=h�
=r*� MOUIC%<>26 � FUSE%=29 � FUSE%=30 � �
=|@� FUST%>0 � �inpic:�paintscale:�eorback:�paintbrush(OX%,OY%)
=�5BXM%=�(�gi(5,23)):� BXM%<1 � BXM%=1:�si(5,23,"1")
=�5BYM%=�(�gi(5,20)):� BYM%<1 � BYM%=1:�si(5,20,"1")
=�5BXD%=�(�gi(5,24)):� BXD%<1 � BXD%=1:�si(5,24,"1")
=�5BYD%=�(�gi(5,19)):� BYD%<1 � BYD%=1:�si(5,19,"1")
=�P� FUST%>0 � �paintscale:�eorback:�paintbrush(OX%,OY%):�outpic:�quickdrawmain
=��
=�
=���airbclick
=�9�arrows(4, 4,6,17,1,999,1):�arrows(4, 5,7,19,4,999,1)
=��
=�
=�&��menoff:ș "Wimp_CreateMenu",-1:�
=�
>��buildiconmenu
>�bm(30,"Imagery")
>�atm(30,"Info",1,"")
>&%�atm(30,"Save"+�k("  f3"),0,"SL")
>0�atm(30,"Quit",-1,"F")
>:�
>D
>NF��iconmenu:MENO%=30:ș "Wimp_CreateMenu",,�cmad(30),MOUX%-64,252:�
>X
>bK��windmenu:MMEX%=MOUX%:MMEY%=MOUY%:MENO%=0:MEBA%=MENU%:MEINBA%=MENUIND%
>loL%=1:� �cmad(L%)<>-1 � TAD%=(�cmad(L%))+28+(5*24):!TAD%=(!TAD%) � 130:TAD%!8=(TAD%!8) � (&FFFFFFFF-(1<<22))
>v
>� � LITY%=21 � �tickitem(12,1)
>� � LITY%=53 � �tickitem(12,2)
>�� LITY%=5 � �tickitem(11,1)
>�%� (USE% � 15)=0 � �tickitem(11,3)
>�%� (USE% � 15)=1 � �tickitem(11,4)
>�%� (USE% � 15)=2 � �tickitem(11,5)
>�%� (USE% � 15)=3 � �tickitem(11,6)
>�%� (USE% � 15)=4 � �tickitem(11,7)
>�%� (USE% � 15)=6 � �tickitem(11,8)
>�%� (USE% � 15)=7 � �tickitem(11,9)
>�(� (USE% � 112)=16 � �tickitem(11,10)
>�(� (USE% � 112)=32 � �tickitem(11,11)
>�(� (USE% � 112)=48 � �tickitem(11,12)
?(� (USE% � 112)=64 � �tickitem(11,13)
?(� (USE% � 112)=80 � �tickitem(11,14)
?(� FONTS%=0 � �shadeitem(14,FONTS%+3)
? !� FONTA%=-1 � �shadeitem(0,4)
?*B� GRCO%=-1 � �shadeitem(5,2) � �shadeitem(5,1):�tickitem(0,10)
?4� GRLO% � �tickitem(5,3)
?>� ZOOM%>1 � �tickitem(0,9)
?H"� �wopen(32) � �tickitem(0,11)
?R� KUKE% � �tickitem(10,5)
?\� KSC% � �tickitem(10,6)
?fE� UNDO%<>-1 � �shadeitem(10,2) � �shadeitem(10,3):�shadeitem(7,1)
?p � FUSE%=34 � �shadeitem(1,6)
?z
?�4ș "Wimp_CreateMenu",,�cmad(0),MOUX%-64,MOUY%+60
?��
?�
?���buildmainmenu
?�MEOF%=0:MEIN%=0
?�� ------------------------
?�
?��buildmm2:�
?�
?� ݤk(IT$):� KSC% � =IT$ � =""
?�
?���buildmm2
?�MEOF%=0:MEIN%=0
@
@�bm(15,"Speed")
@�atm(15,"Very fast",-1,"")
@$�atm(15,"Fast",-1,"")
@.�atm(15,"Medium",-1,"")
@8�atm(15,"Slow",-1,"F")
@B
@L�bm(19,"Preserve")
@V%�atm(19,"-> 1"+�k("  �f1"),-1,"")
@`%�atm(19,"-> 2"+�k("  �f2"),-1,"")
@j%�atm(19,"-> 3"+�k("  �f3"),-1,"")
@t&�atm(19,"-> 4"+�k("  �f4"),-1,"F")
@~
@��bm(20,"Restore")
@�%�atm(20,"<- 1"+�k("  ^f1"),-1,"")
@�%�atm(20,"<- 2"+�k("  ^f2"),-1,"")
@�%�atm(20,"<- 3"+�k("  ^f3"),-1,"")
@�&�atm(20,"<- 4"+�k("  ^f4"),-1,"F")
@�
@��bm(1,"File")
@�-�atm(1,"Save"+�k("            f3"),0,"S")
@�"�atm(1,"Save as sprite",7,"S")
@�"�atm(1,"Save defaults",-1,"S")
@�"�atm(1,"Save settings",34,"S")
@��atm(1,"Export",-1,"S")
A�atm(1,"Import",31,"L")
A
$�atm(1,"Preserve",�cmad(19),"S")
A$�atm(1,"Restore",�cmad(20),"SF")
A
A(�bm(12,"Pattern")
A2�atm(12,"Restarted",-1,"")
A< �atm(12,"Continuous",-1,"F")
AF
AP�bm(11,"Styles")
AZ�atm(11,"Solid line",-1,"")
Ad)�atm(11,"Line pattern",�cmad(12),"L")
An�atm(11,"Overwrite",-1,"")
Ax�atm(11,"OR",-1,"")
A��atm(11,"AND",-1,"")
A��atm(11,"EOR",-1,"")
A��atm(11,"Invert",-1,"")
A��atm(11,"NAND",-1,"")
A��atm(11,"NOR",-1,"L")
A��atm(11,"ECF 1",-1,"")
A��atm(11,"ECF 2",-1,"")
A��atm(11,"ECF 3",-1,"")
A��atm(11,"ECF 4",-1,"")
A��atm(11,"Giant ECF",-1,"F")
A�
A��bm(13,"Fill")
A� �atm(13,"Flood fill",-1,"S")
B#�atm(13,"Pattern fill",-1,"SL")
B$�atm(13,"Graduated fill",17,"F")
B
B"�bm(2,"Paint")
B,1�atm(2,"Show palette"+�k("        f1"),-1,"")
B62�atm(2,"Select colour"+�k("       f2"),-1,"S")
B@'�atm(2,"Unset transparents",-1,"S")
BJ&�atm(2,"Set transparents",-1,"SL")
BT2�atm(2,"Pixels"+�k("              f4"),-1,"S")
B^2�atm(2,"Sketch"+�k("              f5"),-1,"S")
Bh2�atm(2,"Rubber line"+�k("         f6"),-1,"S")
Br2�atm(2,"Airbrush..."+�k("         f7"),-1,"S")
B|2�atm(2,"Paintbrush..."+�k("       f8"),-1,"L")
B� �atm(2,"Fill",�cmad(13),"L")
B�&�atm(2,"Line style",�cmad(11),"F")
B�
B��bm(4,"Shapes")
B�4�atm(4,"Wire rectangle"+�k("       �f5"),-1,"S")
B�4�atm(4,"Wire triangle"+�k("        �f6"),-1,"S")
B�4�atm(4,"Wire circle"+�k("          �f7"),-1,"S")
B�3�atm(4,"Wire ellipse"+�k("         �f8"),-1,"")
B�3�atm(4,"Wire parallelogram"+�k("   �f9"),-1,"")
B�6�atm(4,"Wire arc"+�k("             �f10"),-1,"SL")
B�4�atm(4,"Solid rectangle"+�k("      ^f5"),-1,"S")
B�4�atm(4,"Solid triangle"+�k("       ^f6"),-1,"S")
B�4�atm(4,"Solid circle"+�k("         ^f7"),-1,"S")
C4�atm(4,"Solid ellipse"+�k("        ^f8"),-1,"S")
C4�atm(4,"Solid parallelogram"+�k("  ^f9"),-1,"S")
C4�atm(4,"Solid sector"+�k("         ^f10"),-1,"")
C&6�atm(4,"Solid segment"+�k("        ^f11"),-1,"SF")
C0
C:�bm(6,"Presets")
CD�atm(6,"2x2 grid",-1,"")
CN�atm(6,"3x3 grid",-1,"")
CX�atm(6,"4x4 grid",-1,"")
Cb�atm(6,"6x6 grid",-1,"")
Cl�atm(6,"8x8 grid",-1,"")
Cv�atm(6,"16x16 grid",-1,"")
C��atm(6,"32x32 grid",-1,"")
C��atm(6,"32x16 grid",-1,"F")
C�
C��bm(5,"Grid")
C�.�atm(5,"Show grid"+�k("     ^f12"),-1,"S")
C�.�atm(5,"Hide grid"+�k("     �f12"),-1,"S")
C��atm(5,"Grid lock",-1,"S")
C�&�atm(5,"Preset grids",�cmad(6),"")
C��atm(5,"Edit grid",6,"F")
C�
C��bm(7,"Manipulate")
C��atm(7,"Undo",-1,"L")
C�!�atm(7,"Copy area...",-1,"S")
D!�atm(7,"Move area...",-1,"S")
D �atm(7,"Mirror area",-1,"S")
D �atm(7,"Invert area",-1,"S")
D �atm(7,"Strip area",-1,"S")
D*�atm(7,"Rotate...",-1,"S")
D4$�atm(7,"Scale to fit...",-1,"L")
D>�atm(7,"Wobble...",-1,"")
DH"�atm(7,"Pixel mapping",-1,"F")
DR
D\�bm(17,"Colour scales")
Df�atm(17,"Red",-1,"")
Dp�atm(17,"Green",-1,"")
Dz�atm(17,"Blue",-1,"")
D��atm(17,"Cyan",-1,"")
D��atm(17,"Magenta",-1,"")
D��atm(17,"Yellow",-1,"F")
D�
D��bm(18,"Tint")
D��atm(18,"0",-1,"")
D��atm(18,"1",-1,"")
D��atm(18,"2",-1,"")
D��atm(18,"3",-1,"F")
D�
D��bm(8,"Special")
D��atm(8,"Trace",-1,"S")
D��atm(8,"Smudge area",-1,"")
E!�atm(8,"Wet brush...",-1,"S")
E�atm(8,"Tint area",-1,"S")
E"�atm(8,"Tint brush...",-1,"S")
E$�atm(8,"Set frame",19,"SL")
E."�atm(8,"RGB control...",-1,"")
E8"�atm(8,"Grey scale...",-1,"S")
EB'�atm(8,"Contrast control...",-1,"")
EL%�atm(8,"Posterization...",-1,"S")
EV#�atm(8,"De-tint",�cmad(18),"S")
E`�atm(8,"RGB graph",-1,"S")
Ej)�atm(8,"Colour scale",�cmad(17),"SL")
Et �atm(8,"Pixelate...",-1,"S")
E~�atm(8,"Filter...",-1,"")
E�'�atm(8,"Colour replace...",-1,"SF")
E�
E��bm(9,"Edit")
E�!�atm(9,"Line pattern",10,"S")
E�"�atm(9,"Fill patterns",11,"S")
E�$�atm(9,"Edit brush/fill",12,"S")
E�$�atm(9,"Graduated fills",13,"F")
E�
E��bm(10,"Misc")
E��atm(10,"Info",1,"L")
E�!�atm(10,"Enable undo",-1,"S")
E�"�atm(10,"Disable undo",-1,"S")
F'�atm(10,"Mouse speed",�cmad(15),"")
F
 �atm(10,"Cursor keys",-1,"")
F�atm(10,"Full menus",-1,"")
F.�atm(10,"Bring to top  "+�k("f11"),-1,"L")
F("�atm(10,"Wipe picture",-1,"F")
F2
F<�bm(0,"Imagery")
FF�atm(0,"Misc",�cmad(10),"")
FP�atm(0,"File",�cmad(1),"L")
FZ/�atm(0,"Paint"+�k("       f9"),�cmad(2),"")
Fd�atm(0,"Text",0,"S")
Fn �atm(0,"Shapes",�cmad(4),"")
Fx!�atm(0,"Special",�cmad(8),"")
F��atm(0,"Edit",�cmad(9),"")
F�%�atm(0,"Manipulate",�cmad(7),"L")
F�+�atm(0,"Zoom"+�k("        f10"),33,"S")
F��atm(0,"Grid",�cmad(5),"")
F��atm(0,"Toolkit",-1,"SF")
F�
F��
F�
F�Sݤfont(F%):� FONTA%=-1 � F%>FONTS% � ="" � =$(FONTA%+FONTO%+(!(FONTA%+(F%*4))))
F�
F�%ݤfontroot(F$):� �F$,".")=0 � =F$
F�LIPF%=1:IPF$="":ȕ �F$,IPF%,1)<>".":IPF$=IPF$+�F$,IPF%,1):IPF%+=1:�:=IPF$
F�
G&� ** Create a menu (Number, Title)
G��bm(MN%,MT$)
G+!�mad(MN%)=MENU%+MEOF%:TAD%=MENU%+MEOF%
G"T$TAD%=MT$:TAD%?12=7:TAD%?13=2:TAD%?14=7:TAD%?15=0:TAD%!16=0:TAD%!20=44:TAD%!24=0
G,
MEOF%+=28
G6@� MEOF%>MESI% � �message(0,"Menu tree has run out of room.")
G@�
GJ
GT3� ** Feature format : L = Follow by dotted line
G^'� **                : F = Last item
Gh��atm(MN%,IT$,HA%,FE$)
GrTAD%=MENU%+MEOF%
G|	FE%=0
G�� �FE$,"L") � FE%+=2
G�� �FE$,"F") � FE%+=128
G�
!TAD%=FE%
G�,� HA%>-1 � HA%<&8000 � TAD%!4=HAND%(HA%)
G�� HA%=-1 � TAD%!4=-1
G�� HA%>&8000 � TAD%!4=HA%
G�TAD%!8=1 � (7<<24) � 256
G�)� �FE$,"S") � TAD%!8=(TAD%!8)+(1<<22)
G�$(MENUIND%+MEIN%)=IT$
G�ILE%=�(IT$)+1
G�*� (ILE% � 4)>0 � ILE%=((ILE% � 4)+1)*4
G�TAD%!12=MENUIND%+MEIN%
G�TAD%!20=�(IT$)
HTAD%!16=MENALO%
HMEIN%+=ILE%
HC� MEIN%>MESI% � �message(1,"Menu indirection buffer overflow.")
H&
MEOF%+=24
H0?� MEOF%>MESI% � �message(0,"Menu tree has run out of room")
H:K� ((!(�cmad(MN%)+16))-32)<(�(IT$)*16) � !(�cmad(MN%)+16)=(�(IT$)*16)+32
HD�
HN
HXT��shadeitem(MN%,IN%):TAD%=�cmad(MN%)+28+((IN%-1)*24):TAD%!8=(TAD%!8) � (1<<22):�
Hb
HlK��tickitem(MN%,IN%):TAD%=�cmad(MN%)+28+((IN%-1)*24):!TAD%=(!TAD%) � 1:�
Hv
H���menu:ș6,229
H�4ș "Wimp_GetPointerInfo",,BLK%+128:MBU%=BLK%!136
H�0ș "Wimp_DecodeMenu",,�cmad(MENO%),BLK%,SEL%
H�
DSI%=�
H�\SEL$=$SEL%:IT$="":HE%=�(SEL$):ȕ �SEL$,HE%,1)<>" " � HE%>1:IT$=�SEL$,HE%,1)+IT$:HE%-=1:�
H�w� �IT$,"^")<>0 � �IT$,"�")<>0 � (�(IT$)<=3 � �IT$,1)="f") � SEL$=�SEL$,HE%):�:SEL$=�SEL$,�(SEL$)-1):� �SEL$,1)<>" "
H�,� �SEL$,3)="..." � SEL$=�SEL$,�(SEL$)-3)
HƄ� �SEL$,".")<>0 � �SEL$,5)<>"Text." � �SEL$,16)<>"Special.De-tint." � �SEL$,14)<>"File.Preserve." � �SEL$,13)<>"File.Restore." �
H�IB$="":ȕ �SEL$,1)<>".":B$=�SEL$,1)+B$:SEL$=�SEL$,�(SEL$)-1):�:SEL$=B$
H��
H�$SEL%=SEL$
H�V� $SEL%="Quit" � �killf:FUSE%=-1:�windname(2,PIC$):�forcedrawmain:� �quityn � �die
H�#� $SEL%="Paint" � �nf("",-1,-1)
I,� $SEL%="Show palette" � DSI%=�:�openpal
I
I9� $SEL%="Paintbrush" � �nf("Paintbrush",4,5):�tkh(10)
I 
I*I� $SEL%="2x2 grid" � DSI%=�:GRIWI%=2:GRIHE%=2:�setgric:�forcedrawmain
I4I� $SEL%="3x3 grid" � DSI%=�:GRIWI%=3:GRIHE%=3:�setgric:�forcedrawmain
I>I� $SEL%="4x4 grid" � DSI%=�:GRIWI%=4:GRIHE%=4:�setgric:�forcedrawmain
IHI� $SEL%="6x6 grid" � DSI%=�:GRIWI%=6:GRIHE%=6:�setgric:�forcedrawmain
IRI� $SEL%="8x8 grid" � DSI%=�:GRIWI%=8:GRIHE%=8:�setgric:�forcedrawmain
I\M� $SEL%="16x16 grid" � DSI%=�:GRIWI%=16:GRIHE%=16:�setgric:�forcedrawmain
IfM� $SEL%="32x32 grid" � DSI%=�:GRIWI%=32:GRIHE%=32:�setgric:�forcedrawmain
IpM� $SEL%="32x16 grid" � DSI%=�:GRIWI%=32:GRIHE%=16:�setgric:�forcedrawmain
Iz6� $SEL%="Wire ellipse" � �nf("Wire ellipse",11,-1)
I�
I�K� $SEL%="Wire parallelogram" � �nf("Wire parallelogram",13,-1):�tkh(17)
I�
I�6� $SEL%="Solid sector" � �nf("Solid sector",16,-1)
I�
I�H� $SEL%="Scale to fit" � �nf("Scale to fit",23,8):FUCO%=0:�patch(23)
I�
I�Y� $SEL%="Pixel mapping" � �nf("Pixel mapping",25,-1):FUCO%=1:OX%=-1:OY%=-1:�patch(25)
I�(� SEL$="Solid line" � DSI%=�:LITY%=5
I�(� SEL$="Restarted" � DSI%=�:LITY%=21
I�)� SEL$="Continuous" � DSI%=�:LITY%=53
I�1� SEL$="Overwrite" � DSI%=�:USE%=(USE% � 112)
I�,� SEL$="OR" � DSI%=�:USE%=(USE% � 112)+1
J-� SEL$="AND" � DSI%=�:USE%=(USE% � 112)+2
J-� SEL$="EOR" � DSI%=�:USE%=(USE% � 112)+3
J0� SEL$="Invert" � DSI%=�:USE%=(USE% � 112)+4
J$.� SEL$="NAND" � DSI%=�:USE%=(USE% � 112)+6
J.-� SEL$="NOR" � DSI%=�:USE%=(USE% � 112)+7
J8l� SEL$="ECF 1" � (USE% � 112)=16 � DSI%=�:USE%=(USE% � 15) � � SEL$="ECF 1" � DSI%=�:USE%=(USE% � 15)+16
JBl� SEL$="ECF 2" � (USE% � 112)=32 � DSI%=�:USE%=(USE% � 15) � � SEL$="ECF 2" � DSI%=�:USE%=(USE% � 15)+32
JLl� SEL$="ECF 3" � (USE% � 112)=48 � DSI%=�:USE%=(USE% � 15) � � SEL$="ECF 3" � DSI%=�:USE%=(USE% � 15)+48
JVl� SEL$="ECF 4" � (USE% � 112)=64 � DSI%=�:USE%=(USE% � 15) � � SEL$="ECF 4" � DSI%=�:USE%=(USE% � 15)+64
J`t� SEL$="Giant ECF" � (USE% � 112)=80 � DSI%=�:USE%=(USE% � 15) � � SEL$="Giant ECF" � DSI%=�:USE%=(USE% � 15)+80
Jj3� SEL$="Smudge area" � �nf("Smudge area",27,-1)
Jt6� $SEL%="Very fast" � MMY%=4:MMX%=4:ȗ � MMX%,MMY%
J~1� $SEL%="Fast" � MMY%=3:MMX%=3:ȗ � MMX%,MMY%
J�3� $SEL%="Medium" � MMY%=2:MMX%=2:ȗ � MMX%,MMY%
J�1� $SEL%="Slow" � MMY%=1:MMX%=1:ȗ � MMX%,MMY%
J�?� $SEL%="RGB control" � �nf("RGB control",38,21):�patch(38)
J�3� $SEL%="Wipe picture" � �nf("",-1,-1):�wipepic
J�0� $SEL%="Cursor keys" � KUKE%=� KUKE%:DSI%=�
J�I� $SEL%="Contrast control" � �nf("Contrast control",43,26):�patch(43)
J�
J�)� SEL$="Filter" � �nf("Filter",47,29)
J�`� SEL$="Wobble" � ș&2E,256+9,SHOW%:ș&2E,266,SHOW%,"<Imagery$Dir>.Show":�nf("Wobble",48,30)
J�=� $SEL%="Bring to top" � LAOPWI%<>-1 � �openwind(LAOPWI%)
J�
J�E� SEL$="Full menus" � KSC%=� KSC%:�buildmm2:�buildiconmenu:DSI%=�
K� DSI% � MBU%=1 � �windmenu
K
�
K
KB��ud:� UNDO%<>-1 � !VARS=PIC%:VARS!4=UNDO%:A%=VARS:� backuppic
K(�
K2
K<��nf(F$,F%,W%)
KFK�killf:� F$<>"" � �ud:�windname(2,PIC$+" ["+F$+"]") � �windname(2,PIC$)
KP<FUSE%=F%:FUST%=0:DSI%=�:�spinit:� W%<>-1 � �openwind(W%)
KZ�
Kd
Kn
��wipepic
KxC!IO%=5:$(IO%+4)="Are you sure you want to wipe the picture?"+�0
K�8ș "Wimp_ReportError",IO%,%11011,"!Imagery"+�0 � ,R%
K�� R%=0 � � �pBK
K�� R%=2 � �
K�3�inpic:�26:�0,128 Ȝ 0:�:�outpic:�forcedrawmain
K��
K�
K�ݤquityn
K�7!IO%=5:$(IO%+4)="Are you sure you want to quit?"+�0
K�8ș "Wimp_ReportError",IO%,%11011,"!Imagery"+�0 � ,R%
K�� R%=0 � � �`RK
K�=(R%=1)
K�
K���import
LVA$=�getname:BLK%!12=BLK%!8:BLK%!16=4:!BLK%=64:ș "Wimp_SendMessage",17,BLK%,BLK%!4
L0�killf:FUSE%=34:FUST%=0:�openwind(8):�spinit
LF%=�(A$):IMS%=�#F%:�#F%
L"C�spbuf(IMS%+64):� Q% � FUSE%=-1:�closewind(8):�spinit:�spbuferr
L,ș&2E,266,SPBUF%,A$
L6%ș&2E,269,SPBUF%,IO%,16,1 � ,,,L%
L@.IMP$="":�K%=0 � L%-1:IMP$=IMP$+�(IO%?K%):�
LJ.ș&2E,296,SPBUF%,IMP$ � ,,,IMW%,IMH%,,IMM%
LT#� GRFX% � ș&2E,289,SPBUF%,IMP$
L^#� GRFY% � ș&2E,303,SPBUF%,IMP$
Lhș&35,IMM%,5 � ,,E%
LrHPHE%=2^E%:� E%<2 � IO%!4=1:IO%!12=2^(2-E%) � IO%!4=2^(E%-2):IO%!12=1
L|ș&35,IMM%,4 � ,,E%
L�
PWI%=2^E%
L�!SX%=2^(E%-1):!IO%=SX%:IO%!8=1
L�'L%=(SPBUF%+(SPBUF%!8)):� L%!32=44 �
L�IMPA%=0
L��
L�CIMPA%=L%+44:K%=48:I%=52:ȕ I%<(L%!32):L%!K%=L%!I%:I%+=8:K%+=4:�
L��
L�V� IMM%<>15 � IMPA%<>0 � ș&40740,IMM%,IMPA%,15,0,PIXTAB2%:IMPT%=PIXTAB2% � IMPT%=0
L�0�ud:�windname(2,PIC$+" [Import '"+IMP$+"']")
L�!IMH%=IMH%*PHE%:IMW%=IMW%*PWI%
L�
GRN$=IMP$
L��
L�
M��impcen
ME�inpic:�pimport(640,512,0):�outpic:�quickdrawmain:�killf:FUSE%=-1
M�
M&
M0��impscale
M:[OXM%=GRXM%:OYM%=GRYM%:OXD%=GRXD%:OYD%=GRYD%:GRXM%=1280:GRYM%=1024:GRXD%=IMW%:GRYD%=IMH%
MDq�inpic:�pimport(640,512,0):�outpic:�forcedrawmain:�killf:FUSE%=-1:GRXD%=OXD%:GRYD%=OYD%:GRXM%=OXM%:GRYM%=OYM%
MN�
MX
Mb3��imptile:�pimport(X%,Y%,0):� � �high(31,5) � �
Ml+ș "Hourglass_On":AW=XR*IMW%:AH=YR*IMH%
Mv�K%=0:�:L%=0:�:OX=K%*AW:OY=L%*AH:�pimport(X%+OX,Y%+OY,0):�pimport(X%+OX,Y%-OY,0):�pimport(X%-OX,Y%+OY,0):�pimport(X%-OX,Y%-OY,0):L%+=1:� (Y%+(L%*AH))>1023+AH � (Y%-(L%*AH))<-AH
M�3K%+=1:� (X%+(K%*AW))>1279+AW � (X%-(K%*AW))<-AW
M�ș "Hourglass_Off":�
M�
M���fillcontclick
M�� MOUIC%<>24 � �
M�GRFN%=-1
M�� �high(17,3) � GRFN%=0
M�� �high(17,9) � GRFN%=1
M�� �high(17,12) � GRFN%=2
M�� �high(17,15) � GRFN%=3
M�� �high(17,18) � GRFN%=4
M�F� GRFN%=-1 � �message(0,"You must select a fill sequence to use.")
M�� FUSE%=31 �
N� GRTY%=1 � �killf
N�
NGRTY%=-1
N � �high(17,20) � GRTY%=0
N*$� �high(17,22) � GRTY%=1:FUST%=0
N4G� GRTY%=-1 � �message(0,"You must select the type of fill to use.")
N>n�killf:FUSE%=31:FUST%=0:�ud:�windname(2,PIC$+" [Graduated fill ("+�filldet(GRFN%+1)+")]"):�spinit:�tkh(12)
NH� MOUB%=4 � �menoff
NR�
N\
Nf��unsetrasp:�
Np
Nz��setrasp:�
N�
N���spinit
N�
�spbuf(0)
N��
N�
N�
��setgric
N��si(6,19,�GRIWI%)
N��si(6,21,�GRIHE%)
N�WGRBX%=�(�gi(6,23)):� GRBX%>GRIWI% � �:GRBX%-=GRIWI%:� GRBX%<GRIWI%:�si(6,23,�GRBX%)
N�WGRBY%=�(�gi(6,25)):� GRBY%>GRIHE% � �:GRBY%-=GRIHE%:� GRBY%<GRIHE%:�si(6,25,�GRBY%)
N��
N�
N���zoomsize
O>!BLK%=HAND%(2):ș "Wimp_GetWindowState",,BLK%:WIF%=BLK%!28
O.!BLK%=HAND%(2):ș "Wimp_CloseWindow",,BLK%
O\!BLK%=0:BLK%!4=-1023*ZOOM%:BLK%!8=1279*ZOOM%:BLK%!12=0:ș "Wimp_SetExtent",HAND%(2),BLK%
O$1!BLK%=HAND%(2):ș "Wimp_GetWindowState",,BLK%
O.-BLK%!28=WIF%:ș "Wimp_OpenWindow",,BLK%:�
O8
OB#��wind_ext(WH%,TX%,TY%,SX%,SY%)
OL@!BLK%=HAND%(WH%):ș "Wimp_GetWindowState",,BLK%:WIF%=BLK%!28
OV0!BLK%=HAND%(WH%):ș "Wimp_CloseWindow",,BLK%
O`S!BLK%=TX%:BLK%!4=TY%:BLK%!8=SX%:BLK%!12=SY%:ș "Wimp_SetExtent",HAND%(WH%),BLK%
Oj3!BLK%=HAND%(WH%):ș "Wimp_GetWindowState",,BLK%
Ot-� WH%=12 � TY%=-900 � BLK%!8=(BLK%!8)-260
O~-BLK%!28=WIF%:ș "Wimp_OpenWindow",,BLK%:�
O��
O�
O���ed_bru
O�'�wind_ext(12,0,-640,1024,0):EDTY%=0
O��
O�
O�
��ed_fill
O�'�wind_ext(12,0,-900,1024,0):EDTY%=1
O��
O�
O�Lݤgstr(AD%):W$="":� ?AD%<32 � =W$ � �:W$=W$+�(?AD%):AD%+=1:� ?AD%<32:=W$
O�
Pwݤgi(WH%,IC%):LWG%=WH%:LIG%=IC%:!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:ș "Wimp_GetIconState",,ICBLK%:=�gstr(!(ICBLK%+28))
P

P���si(WH2%,IC2%,SET$):!ICBLK%=HAND%(WH2%):ICBLK%!4=IC2%:ș "Wimp_GetIconState",,ICBLK%:ICBLK%!8=0:ICBLK%!12=0:$(ICBLK%!28)=SET$:ș "Wimp_SetIconState",,ICBLK%:�
P
P(qݤhigh(WH%,IC%):!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:ș "Wimp_GetIconState",,ICBLK%:=((?(ICBLK%+26)) � %100000)=32
P2
P<Yݤwopen(WH%):!ICBLK%=HAND%(WH%):ș "Wimp_GetWindowState",,ICBLK%:=((ICBLK%?34) � 1)=1
PF
PP3��shadeicon(WH%,IC%):�icflag(WH%,IC%,1<<22,0):�
PZ
Pd3��clearicon(WH%,IC%):�icflag(WH%,IC%,0,1<<22):�
Pn
Px0��iconhi(WH%,IC%):�icflag(WH%,IC%,1<<21,0):�
P�
P�0��iconlo(WH%,IC%):�icflag(WH%,IC%,0,1<<21):�
P�
P���icflag(WH%,IC%,WE%,WM%)
P�#!ICBLK%=HAND%(WH%):ICBLK%!4=IC%
P�>ICBLK%!8=WE%:� WM%<>0 � ICBLK%!12=WM% � ICBLK%!12=ICBLK%!8
P�"ș "Wimp_SetIconState",,ICBLK%
P��
P�
P�\��point:ș "Wimp_GetPointerInfo",,POI%:MOX%=!POI%:MOY%=POI%!4:MOB%=POI%!8:MOH%=POI%!12:�
P�
P���windname(WH%,SET$):!BLK%=HAND%(WH%):ș "Wimp_GetWindowState",,BLK%:WIF%=BLK%!28:ș "Wimp_GetWindowInfo",,BLK%:ș"Wimp_CloseWindow",,BLK%
P�CAD%=BLK%!76:BLK%!28=WIF%:$AD%=SET$:ș "Wimp_OpenWindow",,BLK%:�
Q
Q
��dragfin
Q�
Q"
Q,��startdrag
Q6%ș "Wimp_GetWindowState",,BLK%+12
Q@CX%=BLK%!16:Y%=BLK%!28:BLK%!16=0:ș "Wimp_GetIconState",,BLK%+12
QJ)BLK%!16=5:BLK%!20+=X%-2:BLK%!24+=Y%-4
QTBLK%!28+=X%+2:BLK%!32+=Y%
Q^XBLK%!36=0:BLK%!40=0:BLK%!44=&7FFFFFFF:BLK%!48=&7FFFFFFF:ș "Wimp_DragBox",,BLK%+12:�
Qh
Qr��inmessage(M%)
Q|Ȏ M% �
Q�� 0:�die
Q�� 1:�ramload
Q�� 2:�dragsave
Q�.� 5:� BLK%!12=0 � BLK%!40=&C11 �load(&C11)
Q�� 6:� DRAG%=7 � �ramfetch
Q�� 7:�ramreceive
Q�~� 3:� BLK%!12=0 � BLK%!40=&556 �load(&556) � � BLK%!12=0 � BLK%!40=&C11 �load(&C11) � � BLK%!12=0 � BLK%!40=&FF9 � �import
Q��:�
Q�
Q�
��ramload
Q�TX%=BLK%!40:� TX%<>&FF9 � �
Q�5IMS%=BLK%!36:A$=�getname:MREF%=BLK%!8:SDH%=BLK%!4
Q�0�killf:FUSE%=34:FUST%=0:�openwind(8):�spinit
RB�spbuf(IMS%+8):� Q% � FUSE%=-1:�closewind(8):�spinit:�spbuferr
RRATOF%=0:RDTS%=IMS%
RBLK%!8=MREF%:�ramtransmit
R&�
R0
R:��ramtransmit
RDp!BLK%=64:BLK%!12=BLK%!8:BLK%!16=6:BLK%!20=SPBUF%+4+RATOF%:BLK%!24=RDTS%:ș "Wimp_SendMessage",18,BLK%,SDH%:�
RN
RX��ramreceive
Rb@TX%=BLK%!24:� TX%=RDTS% � RDTS%=4:RATOF%+=TX%:�ramtransmit:�
Rl
� �PvL
Rv
R���ramfetch
R�.BUAD%=BLK%!20 : � ram fetch buffer address
R�#BULE%=BLK%!24 : � buffer length
R�+SDH%=BLK%!4   : � handle of sender task
R�MREF%=BLK%!8  : � my-ref
R�BLK%!12=MREF%
R�"BLK%!16=7     : � Ram_transmit
R� !BLK%=64:     : � block size
R�$BLK%!20=BUAD% : � buffer address
R�8� BULE%<=RDTS% � WE%=RDTS%:TX%=17 � WE%=BULE%:TX%=18
R�� RDTS%=0 � WE%=0:TX%=17
R�.BLK%!24=WE%   : � #bytes written to buffer
R�Bș "Wimp_TransferBlock",THAND%,RTSB%+4+RATOF%,SDH%,BUAD%,BULE%
SRDTS%-=WE%:RATOF%+=WE%
SCș "Wimp_SendMessage",TX%,BLK%,SDW%,SDI%  : � send RAM transmit
S�
S 
S*c��saveok:A$=�gi(0,6):� �A$,".")=0 � �message(4,"To save, drag the icon to a directory viewer.")
S4� ** SAVE ROUTINE HERE **
S>
� �pNS
SH�
SR
S\N��dragsave:SDW%=BLK%!20:SDI%=BLK%!24:SDX%=BLK%!28:SDY%=BLK%!32:A$=�getname
Sf� DRAG%=34 � � �plS
Sp�si(0,6,A$)
Sz&� MOUB%<>1 ș "Wimp_CreateMenu",-1
S��BLK%!12=BLK%!8:BLK%!16=3:!BLK%=64:BLK%!20=SDW%:BLK%!24=SDI%:BLK%!28=SDX%:BLK%!32=SDY%:ș "Wimp_SendMessage",17,BLK%,SDW%,SDI%
S��
S�
S�p��savesetok:A$=�gi(34,6):� �A$,".")=0 � �message(4,"To save, drag the icon to a directory viewer.") � � �`JS
S��si(34,6,A$):
S�&� MOUB%<>1 ș "Wimp_CreateMenu",-1
S��BLK%!12=BLK%!8:BLK%!16=3:!BLK%=64:BLK%!20=SDW%:BLK%!24=SDI%:BLK%!28=SDX%:BLK%!32=SDY%:ș "Wimp_SendMessage",17,BLK%,SDW%,SDI%
S��savesets(A$):�
S�
S���save(S$):�killf:FUSE%=-1:
S��
S�
S�Bݤnullstring(AD%):N$="":ȕ ?AD%>=32:N$=N$+�(?AD%):AD%+=1:�:=N$
T
Ti��spritesaveok:A$=�gi(7,6):� �A$,".")=0 � �message(4,"To save, drag the icon to a directory viewer.")
T�
T$
T.Kݤgetname:W$="":P%=BLK%+44:ȕ ?P%<>0 � ?P%<>13:W$=W$+�(?P%):P%+=1:�:=W$
T8
TB��dtloadset:A$=�getname:BLK%!12=BLK%!8:BLK%!16=4:!BLK%=64:ș "Wimp_SendMessage",17,BLK%,BLK%!4:�si(34,6,A$):�loadsets(A$):�
TL
TV��load(FT%)
T`VA$=�getname:BLK%!12=BLK%!8:BLK%!16=4:!BLK%=64:ș "Wimp_SendMessage",17,BLK%,BLK%!4
TjF%=�(A$):� F%=0 � �
Tt#T$=�(�#F%)+�(�#F%)+�(�#F%):�#F%
T~-� T$="SET" � �si(34,6,A$):�loadsets(A$):�
T��si(0,6,A$)
T��
T�
T���qatload(S$):�
T�
T�
T���loadpic(FT%,S$)
T��
T�
T���chars
T���23,248,0,0,0,255,255,0,0,0:�23,249,0,0,126,255,255,126,0,0:�23,250,0,60,126,255,255,126,60,0:�23,251,60,126,255,255,255,255,126,60:�23,252,24,60,126,126,126,126,60,24:�23,253,24,60,60,60,60,60,60,24:�23,254,24,24,24,24,24,24,24,24
T��
U
U
>��backuppic:!VARS=PIC%:VARS!4=SPBUF%:A%=VARS:� backuppic:�
U
UM��fillmask:VARS!8=SPBUF%:VARS!12=TRASP%:VARS!16=BTC%:A%=VARS:� fillmask:�
U(
U2ݤleaf(F$)
U<� �F$,".")=0 � =F$
UF	T$=""
UPLP%=�F$
UZȕ �F$,LP%,1)<>"."
UdT$=�F$,LP%,1)+T$
Un
LP%-=1
Ux�
U�=T$
U�
U���spbuf(BS%)
U�+� BS%=0 � ș "Wimp_SlotSize",CUSL%,-1:�
U�#ș "Wimp_SlotSize",CUSL%+BS%,-1
U�#ș "Wimp_SlotSize",-1,-1 � SPL%
U�L� SPL%<(CUSL%+BS%) � ș "Wimp_SlotSize",CUSL%,-1:SPNE%=BS%:Q%=�:� � Q%=�
U�!SPBUF%=BS%
U�SPBUF%!8=16
U�ș&2E,265,SPBUF%
U�SPSIZ%=BS%
U��
U�
V|��spbuferr:�killf:FUST%=-1:FUSE%=-1:�windname(2,PIC$):�message(0,"No room to store sprite. ("+�(SPNE%)+" bytes needed)")
V
Vݤspritesize(DX%,DY%,PL%)
V"!DX%=�(DX%) � 2:DY%=�(DY%) � 4
V,'� (DX% � 4)>0 � DX%=((DX% � 4)+1)*4
V6DX%+=16
V@=(DX%*DY%*(PL%+1))+1024
VJ
VT	��key
V^'KWH%=!BLK%:KIC%=BLK%!4:KEY%=BLK%!24
Vh
POK%=�
Vr
Ȏ KWH% �
V|� HAND%(5):�bruskey
V�� HAND%(6):�gridkey
V�� HAND%(8):�areakey
V��
V�� POK% � �hotkeys
V�%� POK% � ș"Wimp_ProcessKey",KEY%
V��
V�
V���rotkey
V��
V�
V���toolclick
V��
V�
W
��hotkeys
W
Ȏ KEY% �
W� &181:POK%=�:�openpal
W&� &183:POK%=�:�openwind(0)
W00� &188:POK%=�:�nf("Paintbrush",4,5):�tkh(10)
W:� &189:POK%=�:�nf("",-1,-1)
WD
WN4� &1CB:POK%=�:� LAOPWI%<>-1 � �openwind(LAOPWI%)
WX
Wb+� &198:POK%=�:�nf("Wire ellipse",11,-1)
Wl:� &199:POK%=�:�nf("Wire parallelogram",13,-1):�tkh(17)
Wv
W�^� &1DB:POK%=�:�si(6,19,"1"):�si(6,21,"1"):�si(6,23,"0"):�si(6,25,"0"):MOUIC%=29:�gridclick
W�)� &1DC:POK%=�:GRCO%=-1:�forcedrawmain
W�Q� &1A1,&1A2,&1A3,&1A4:POK%=�:�loadpic(&C11,"<Imagery$Dir>.XPIC"+�(KEY%-&1A0))
W�+� &1EA:POK%=�:�nf("Solid sector",16,-1)
W�
W��
W��
W�
W�
��zoomtog
W�8POI%!120=HAND%(2):ș "Wimp_GetWindowState",,POI%+120
W�� ZOOM%<>1 �
W�ZOOM%=1
W��
X(ZOOM%=��gi(33,8):� ZOOM%=0 � ZOOM%=1
X�
X.!BLK%=HAND%(2):ș "Wimp_CloseWindow",,BLK%
X \!BLK%=0:BLK%!4=-1023*ZOOM%:BLK%!8=1279*ZOOM%:BLK%!12=0:ș "Wimp_SetExtent",HAND%(2),BLK%
X*�!BLK%=HAND%(2):BLK%!4=WLX%:BLK%!8=WLY%:BLK%!12=WUX%:BLK%!16=WUY%:BLK%!20=WSX%:BLK%!24=WSY%:BLK%!28=POI%!148:ș "Wimp_OpenWindow",,BLK%
X4WWLX%=POI%!124:WLY%=POI%!128:WUX%=POI%!132:WUY%=POI%!136:WSX%=POI%!140:WSY%=POI%!144
X>�forcedrawmain:�
XH
XR	��op1
X\�
Xf
Xp
��airbkey
Xz'�icfb(4,17,19,19):�icfb(4,19,17,17)
X��
X�
X�
��bruskey
X��icfb(5,23,24,19)
X��icfb(5,24,20,23)
X��icfb(5,20,19,24)
X��icfb(5,19,23,20)
X�6� KIC%=19 � KEY%=13 � POK%=�:MOUIC%=26:�brushclick
X��
X�
X�
��gridkey
X��icfb(6,19,21,25)
X��icfb(6,21,23,19)
Y�icfb(6,23,25,21)
Y�icfb(6,25,19,23)
Y5� KIC%=25 � KEY%=13 � POK%=�:MOUIC%=29:�gridclick
Y$�
Y.
Y8
��areakey
YB�icfb(8,17,18,20)
YL�icfb(8,18,19,17)
YV�icfb(8,19,20,18)
Y`�icfb(8,20,17,19)
Yj5� KIC%=20 � KEY%=13 � POK%=�:MOUIC%=16:�grabclick
Yt�
Y~
Y�
��textkey
Y��
Y�
Y�
��framkey
Y��icfb(19,10,12,12)
Y��icfb(19,12,10,10)
Y�6� KEY%=13 � KIC%=12 � POK%=�:MOUIC%=14:�frameclick
Y��
Y�
Y���icfb(WH%,IC%,ICF%,ICB%)
Y�A� KIC%=IC% � (KEY%=&18E � KEY%=13) � POK%=�:�ctic(WH%,ICF%):�
Y�3� KIC%=IC% � KEY%=&18F � POK%=�:�ctic(WH%,ICB%)
Z�
Z

ZZ��ctic(WH%,IC%):A$=�gi(WH%,IC%):ș "Wimp_SetCaretPosition",HAND%(WH%),IC%,,,-1,�(A$):�
Z
Z(#��patch(PN%):� LAPATCH%=PN% � �
Z2;�("LOAD <Imagery$Dir>.Overlays."+�PN%+" "+�~(PATCH%-2))
Z<LAPATCH%=PN%
ZF�
ZP
ZZ ��zoomclick:IRP%=�perc(33,8)
Zd�arrows(33,5,6,8,1,25,1)
Zn8� MOUIC%>24 � MOUIC%<33 � �si(33,8,�((MOUIC%-24)*2))
Zx[IGP%=�perc(33,8):� IRP%<>IGP% � ZOOMS%=IGP%*4:�getslor(33,39):�redrawslid(33,11,IGP%*4)
Z�9� MOUIC%=39 � ZOOMS%=�slidhit(33,39,MOUX%,MOUY%,11,4)
Z�� MOUIC%<>42 � �
Z�*ZOOM%=�(�gi(33,8)):� ZOOM%<1 � ZOOM%=1
Z��zoomsize:�forcedrawmain
Z�� MOUB%<>1 � �menoff
Z��
Z�
Z���redrawzoom
Z�'ș "Wimp_RedrawWindow",,BLK% � FIN%
Z�.WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)
Z�Lȕ FIN%:�slidplot(33,39,ZOOMS%,11):ș "Wimp_GetRectangle",,BLK% � FIN%:�
Z��
Z�
[��redrawrgb
['ș "Wimp_RedrawWindow",,BLK% � FIN%
[.WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)
["{ȕ FIN%:�slidplot(21,30,RSL%,11):�slidplot(21,31,GSL%,10):�slidplot(21,32,BSL%,8):ș "Wimp_GetRectangle",,BLK% � FIN%:�
[,�
[6
[@��slidplot(WH%,IH%,V%,CO%)
[JB!ICBLK%=HAND%(WH%):ICBLK%!4=IH%:ș "Wimp_GetIconState",,ICBLK%
[Tș "Wimp_SetColour",CO%
[^0MX%=WOX%+(ICBLK%!8)+2:MY%=WOY%+(ICBLK%!12)+4
[h]ȓ Ȑ MX%,MY%,V%*2,15:� V%<100 � ș "Wimp_SetColour",1:ȓ Ȑ MX%+(V%*2),MY%,(100-V%)*2,15
[r�
[|
[�&ݤslidhit(WH%,IH%,MX%,MY%,CO%,WE%)
[��getslor(WH%,IH%):MB%=4
[��
[�ȗ ȓ WOX%-2,WOY%,202,14
[�'V%=((MX%-(WOX%-2))�2):� V%<0 � V%=0
[�� V%>100 � V%=100
[�-�getslor(WH%,IH%):�redrawslid(WH%,CO%,V%)
[��slidud(WE%,V%)
[�ȗ MX%,MY%,MB%
[�� MB%=0
[�eș "OS_ReadModeVariable",-1,4 � ,,MX%:ș "OS_ReadModeVariable",-1,5 � ,,MY%:MX%=1<<MX%:MY%=1<<MY%
[�Qș "OS_ReadModeVariable",-1,11 � ,,CO%:ș "OS_ReadModeVariable",-1,12 � ,,WE%
[�ȗ ȓ 0,0,CO%*MX%,WE%*MY%
\=V%
\
\��getslor(WH%,IH%)
\&7!ICBLK%=HAND%(WH%):ș "Wimp_GetWindowState",,ICBLK%
\06WOX%=ICBLK%!4-ICBLK%!20:WOY%=(ICBLK%!16-ICBLK%!24)
\:B!ICBLK%=HAND%(WH%):ICBLK%!4=IH%:ș "Wimp_GetIconState",,ICBLK%
\D*WOX%+=(ICBLK%!8)+2:WOY%+=(ICBLK%!12)+4
\N�
\X
\b��redrawslid(WH%,CO%,V%)
\ls!ICBLK%=HAND%(WH%):ICBLK%!4=(ICBLK%!8)+2:ICBLK%!8=(ICBLK%!12)+4:ICBLK%!12=(ICBLK%!16)-2:ICBLK%!16=(ICBLK%!20)-4
\v)ș "Wimp_UpdateWindow",,ICBLK% � FIN%
\��ȕ FIN%:ș "Wimp_SetColour",CO%:ȓ Ȑ WOX%,WOY%,V%*2,15:� V%<100 � ș "Wimp_SetColour",1:ȓ Ȑ WOX%+(V%*2)+2,WOY%,(100-V%)*2,15
\�+ș "Wimp_GetRectangle",,ICBLK% � FIN%:�
\��
\�
\���ui(WH2%,IH2%,IT$)
\��si(WH2%,IH2%,IT$)
\�;POI%!120=HAND%(WH2%):ș "Wimp_GetWindowState",,POI%+120
\�5WOX2%=POI%!124-POI%!140:WOY2%=(POI%!136-POI%!144)
\�GPOI%!120=HAND%(WH2%):POI%!124=IH2%:ș "Wimp_GetIconState",,POI%+120
\�+WOX2%+=(POI%!128)+2:WOY2%+=(POI%!132)+4
\�+ș "Wimp_UpdateWindow",,POI%+120 � FIN%
\�5ȕ FIN%:ș "Wimp_GetRectangle",,POI%+120 � FIN%:�
\��
]
]$��screentowork(WE%, � TX%,� TY%)
]2POI%!128=WE%:ș"Wimp_GetWindowState",,POI%+128
] #TX%=(TX%-(POI%!132))+(POI%!148)
]*#TY%=(TY%-(POI%!144))+(POI%!152)
]4�
]>
]H��savesets(IT$)
]R�
]\
]f6��loadsets(IT$):� � NOL% � �killf:FUSE%=-1:�menoff
]p� UNDO%<>-1 � �diundo
]z>WE%=�(IT$):� WE%=0 � �message(2,"Could not load settings")
]�
IT$=�#WE%
]�>�L%=0 � 15:�K%=0 � 1:�I%=0 � 4:�#WE%,GRFI%(L%,K%,I%):�:�:�
]�#ș "OS_GBPB",4,WE%,BRUSH%,13000
]�!ș "OS_GBPB",4,WE%,TRASP%,256
]�#ș "OS_GBPB",4,WE%,PFILLS%,7000
]�[�#WE%,GRLO%,KUKE%,KSC%,UNDO%,GRCO%,PALE%,TX%,GRIWI%,GRIHE%,GRBX%,GRBY%,F$:�si(30,27,F$)
]�{�si(10,48,�(TX%)):�L%=1 � TX%:�clearicon(10,�lipaadj(L%+6)):�:� TX%<40 � �L%=TX%+1 � 40:�shadeicon(10,�lipaadj(L%+6)):�
]�X�L%=0 � 39:�#WE%,TX%:� TX% � �iconhi(10,�lipaadj(L%+7)) � �iconlo(10,�lipaadj(L%+7))
]��
]��L%=0 � 5:�#WE%,PAT%(L%):�
]�-�L%=0 � 8:�K%=0 � 4:�#WE%,ECF%(L%,K%):�:�
]��#WE%:� UNDO%<>-1 � �enundo
]��buildiconmenu:�buildmm2
^� � NOL% � �forcedrawmain
^�
^
^$)��tkh(IC%):TKH%=IC%:�iconhi(32,IC%):�
^.
^8� ---------------
�
00000000  0d 00 0a 1e f4 20 3e 3c  49 6d 61 67 65 72 79 24  |..... ><Imagery$|
00000010  44 69 72 3e 2e 21 52 75  6e 49 6d 61 67 65 0d 00  |Dir>.!RunImage..|
00000020  14 18 d2 3d b8 50 2b 26  31 30 30 30 3a 50 41 54  |...=.P+&1000:PAT|
00000030  43 48 25 3d b8 50 0d 00  1e 0f ee 20 85 20 f2 6d  |CH%=.P..... . .m|
00000040  61 6b 65 72 72 0d 00 28  05 3a 0d 00 32 0c f4 20  |akerr..(.:..2.. |
00000050  4c 46 24 3d 22 22 0d 00  3c 0a f2 73 65 74 75 70  |LF$=""..<..setup|
00000060  0d 00 46 2e 4e 4f 4c 25  3d b9 3a f2 6c 6f 61 64  |..F.NOL%=.:.load|
00000070  73 65 74 73 28 22 3c 49  6d 61 67 65 72 79 24 44  |sets("<Imagery$D|
00000080  69 72 3e 2e 44 65 66 61  75 6c 74 73 22 29 0d 00  |ir>.Defaults")..|
00000090  50 3e 4e 4f 4c 25 3d a3  3a f2 65 64 5f 62 72 75  |P>NOL%=.:.ed_bru|
000000a0  3a 21 42 4c 4b 25 3d 48  41 4e 44 25 28 31 32 29  |:!BLK%=HAND%(12)|
000000b0  3a c8 99 20 22 57 69 6d  70 5f 43 6c 6f 73 65 57  |:.. "Wimp_CloseW|
000000c0  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 0d 00 5a 0b  |indow",,BLK%..Z.|
000000d0  f2 61 63 74 69 6f 6e 0d  00 64 08 f2 64 69 65 0d  |.action..d..die.|
000000e0  00 6e 05 e0 0d 00 78 1b  dd f2 73 65 74 75 70 3a  |.n....x...setup:|
000000f0  4c 45 47 4f 25 3d a3 3a  54 4b 48 25 3d 2d 31 0d  |LEGO%=.:TKH%=-1.|
00000100  00 82 a0 4d 45 53 49 25  3d 35 2a 31 30 32 34 3a  |...MESI%=5*1024:|
00000110  de 20 50 4f 49 25 20 32  35 36 2c 54 41 53 25 20  |. POI% 256,TAS% |
00000120  33 30 30 30 2c 4d 45 4e  55 25 20 4d 45 53 49 25  |3000,MENU% MESI%|
00000130  2c 4d 45 4e 55 49 4e 44  25 20 4d 45 53 49 25 2c  |,MENUIND% MESI%,|
00000140  53 45 4c 25 20 32 35 36  2c 49 43 42 4c 4b 25 20  |SEL% 256,ICBLK% |
00000150  32 35 36 2c 56 41 52 53  20 31 32 38 2c 4d 45 4e  |256,VARS 128,MEN|
00000160  41 4c 4f 25 20 31 36 2c  43 4f 44 45 25 20 37 2a  |ALO% 16,CODE% 7*|
00000170  31 30 32 34 2c 49 4f 25  20 32 35 36 2c 54 52 41  |1024,IO% 256,TRA|
00000180  4e 53 54 41 42 25 20 32  35 36 2c 52 47 42 47 25  |NSTAB% 256,RGBG%|
00000190  20 31 39 32 2c 4d 45 4e  41 44 25 20 32 35 36 0d  | 192,MENAD% 256.|
000001a0  00 8c 12 42 4c 4b 25 3d  54 41 53 25 2b 32 30 30  |...BLK%=TAS%+200|
000001b0  30 0d 00 96 04 0d 00 a0  6c c8 99 20 22 4f 53 5f  |0.......l.. "OS_|
000001c0  52 65 61 64 56 61 72 56  61 6c 22 2c 22 49 6d 61  |ReadVarVal","Ima|
000001d0  67 65 72 79 24 46 69 6c  65 22 2c 49 4f 25 2c 32  |gery$File",IO%,2|
000001e0  35 36 2c 30 2c 30 20 b8  20 2c 2c 4b 25 3a 4c 25  |56,0,0 . ,,K%:L%|
000001f0  3d 30 3a 4c 46 24 3d 22  22 3a c8 95 20 4b 25 3e  |=0:LF$="":.. K%>|
00000200  30 3a 4c 46 24 3d 4c 46  24 2b bd 28 49 4f 25 3f  |0:LF$=LF$+.(IO%?|
00000210  4c 25 29 3a 4c 25 2b 3d  31 3a 4b 25 2d 3d 31 3a  |L%):L%+=1:K%-=1:|
00000220  ce 0d 00 aa 04 0d 00 b4  20 e3 4c 25 3d 30 20 b8  |........ .L%=0 .|
00000230  20 31 38 38 20 88 20 34  3a 52 47 42 47 25 21 4c  | 188 . 4:RGBG%!L|
00000240  25 3d 30 3a ed 0d 00 be  26 4d 45 4f 46 25 3d 30  |%=0:....&MEOF%=0|
00000250  3a 4d 45 49 4e 25 3d 30  3a 4d 42 55 53 25 3d a3  |:MEIN%=0:MBUS%=.|
00000260  3a 4c 41 4f 50 57 49 25  3d 2d 31 0d 00 c8 13 24  |:LAOPWI%=-1....$|
00000270  4d 45 4e 41 4c 4f 25 3d  22 41 20 2d 7e 22 0d 00  |MENALO%="A -~"..|
00000280  d2 16 46 54 4c 25 3d a3  3a 4c 41 50 41 54 43 48  |..FTL%=.:LAPATCH|
00000290  25 3d 2d 31 0d 00 dc 42  de 20 50 49 43 25 20 31  |%=-1...B. PIC% 1|
000002a0  36 31 2a 31 30 32 34 2c  53 43 41 4c 45 25 20 33  |61*1024,SCALE% 3|
000002b0  32 2c 50 49 58 54 41 42  25 20 32 35 36 2c 50 49  |2,PIXTAB% 256,PI|
000002c0  58 54 41 42 32 25 20 32  35 36 2c 58 25 28 38 29  |XTAB2% 256,X%(8)|
000002d0  2c 59 25 28 38 29 0d 00  e6 36 53 50 42 55 46 25  |,Y%(8)...6SPBUF%|
000002e0  3d 93 3a 53 50 53 49 5a  25 3d 30 3a c8 99 20 22  |=.:SPSIZ%=0:.. "|
000002f0  57 69 6d 70 5f 53 6c 6f  74 53 69 7a 65 22 2c 2d  |Wimp_SlotSize",-|
00000300  31 2c 2d 31 20 b8 20 43  55 53 4c 25 0d 00 f0 a8  |1,-1 . CUSL%....|
00000310  de 20 50 41 4c 25 20 32  32 36 30 30 2c 4f 50 41  |. PAL% 22600,OPA|
00000320  4c 25 20 32 32 36 30 30  2c 53 48 4f 57 25 20 31  |L% 22600,SHOW% 1|
00000330  30 32 34 30 2c 50 41 4c  54 41 42 25 20 35 31 32  |0240,PALTAB% 512|
00000340  2c 42 54 43 25 20 32 35  36 2c 43 54 54 25 20 32  |,BTC% 256,CTT% 2|
00000350  35 36 2c 54 54 42 25 20  32 35 36 2c 52 4f 54 54  |56,TTB% 256,ROTT|
00000360  41 42 25 20 31 38 30 30  2c 52 41 4e 44 25 20 34  |AB% 1800,RAND% 4|
00000370  30 39 36 2c 50 46 49 4c  4c 53 25 20 37 30 30 30  |096,PFILLS% 7000|
00000380  3a 21 50 41 4c 25 3d 32  32 36 30 30 3a 21 4f 50  |:!PAL%=22600:!OP|
00000390  41 4c 25 3d 32 32 36 30  30 3a 21 50 46 49 4c 4c  |AL%=22600:!PFILL|
000003a0  53 25 3d 37 30 30 30 3a  21 53 48 4f 57 25 3d 31  |S%=7000:!SHOW%=1|
000003b0  30 32 34 30 0d 00 fa 20  de 20 42 52 55 53 48 25  |0240... . BRUSH%|
000003c0  20 31 33 30 30 30 3a 21  42 52 55 53 48 25 3d 31  | 13000:!BRUSH%=1|
000003d0  33 30 30 30 0d 01 04 2c  c8 99 26 32 45 2c 32 36  |3000...,..&2E,26|
000003e0  36 2c 42 52 55 53 48 25  2c 22 3c 49 6d 61 67 65  |6,BRUSH%,"<Image|
000003f0  72 79 24 44 69 72 3e 2e  42 72 75 73 68 65 73 22  |ry$Dir>.Brushes"|
00000400  0d 01 0e 2a c8 99 26 32  45 2c 32 36 36 2c 50 41  |...*..&2E,266,PA|
00000410  4c 25 2c 22 3c 49 6d 61  67 65 72 79 24 44 69 72  |L%,"<Imagery$Dir|
00000420  3e 2e 50 61 6c 65 74 74  65 22 0d 01 18 2b c8 99  |>.Palette"...+..|
00000430  26 32 45 2c 32 36 36 2c  4f 50 41 4c 25 2c 22 3c  |&2E,266,OPAL%,"<|
00000440  49 6d 61 67 65 72 79 24  44 69 72 3e 2e 50 61 6c  |Imagery$Dir>.Pal|
00000450  65 74 74 65 22 0d 01 22  2e c8 99 26 32 45 2c 32  |ette".."...&2E,2|
00000460  36 36 2c 50 46 49 4c 4c  53 25 2c 22 3c 49 6d 61  |66,PFILLS%,"<Ima|
00000470  67 65 72 79 24 44 69 72  3e 2e 50 61 74 46 69 6c  |gery$Dir>.PatFil|
00000480  6c 73 22 0d 01 2c 28 c8  99 26 32 45 2c 32 36 36  |ls"..,(..&2E,266|
00000490  2c 53 48 4f 57 25 2c 22  3c 49 6d 61 67 65 72 79  |,SHOW%,"<Imagery|
000004a0  24 44 69 72 3e 2e 53 68  6f 77 22 0d 01 36 2d ff  |$Dir>.Show"..6-.|
000004b0  28 22 4c 4f 41 44 20 3c  49 6d 61 67 65 72 79 24  |("LOAD <Imagery$|
000004c0  44 69 72 3e 2e 50 61 6c  54 61 62 20 22 2b c3 7e  |Dir>.PalTab "+.~|
000004d0  50 41 4c 54 41 42 25 29  0d 01 40 35 ff 28 22 4c  |PALTAB%)..@5.("L|
000004e0  4f 41 44 20 3c 49 6d 61  67 65 72 79 24 44 69 72  |OAD <Imagery$Dir|
000004f0  3e 2e 42 54 43 20 22 2b  c3 7e 42 54 43 25 29 3a  |>.BTC "+.~BTC%):|
00000500  f4 20 62 79 74 65 20 2d  3e 20 70 61 6c 0d 01 4a  |. byte -> pal..J|
00000510  35 ff 28 22 4c 4f 41 44  20 3c 49 6d 61 67 65 72  |5.("LOAD <Imager|
00000520  79 24 44 69 72 3e 2e 43  54 54 20 22 2b c3 7e 43  |y$Dir>.CTT "+.~C|
00000530  54 54 25 29 3a f4 20 70  61 6c 20 2d 3e 20 62 79  |TT%):. pal -> by|
00000540  74 65 0d 01 54 3e ff 28  22 4c 4f 41 44 20 3c 49  |te..T>.("LOAD <I|
00000550  6d 61 67 65 72 79 24 44  69 72 3e 2e 54 54 42 20  |magery$Dir>.TTB |
00000560  22 2b c3 7e 54 54 42 25  29 3a f4 20 28 63 6f 6c  |"+.~TTB%):. (col|
00000570  2a 36 34 29 2b 74 69 6e  74 20 2d 3e 20 70 61 6c  |*64)+tint -> pal|
00000580  0d 01 5e 2d ff 28 22 4c  4f 41 44 20 3c 49 6d 61  |..^-.("LOAD <Ima|
00000590  67 65 72 79 24 44 69 72  3e 2e 52 6f 74 54 61 62  |gery$Dir>.RotTab|
000005a0  20 22 2b c3 7e 52 4f 54  54 41 42 25 29 0d 01 68  | "+.~ROTTAB%)..h|
000005b0  29 ff 28 22 4c 4f 41 44  20 3c 49 6d 61 67 65 72  |).("LOAD <Imager|
000005c0  79 24 44 69 72 3e 2e 43  6f 64 65 20 22 2b c3 7e  |y$Dir>.Code "+.~|
000005d0  43 4f 44 45 25 29 0d 01  72 2d ff 28 22 4c 4f 41  |CODE%)..r-.("LOA|
000005e0  44 20 3c 49 6d 61 67 65  72 79 24 44 69 72 3e 2e  |D <Imagery$Dir>.|
000005f0  52 6f 74 54 61 62 20 22  2b c3 7e 52 4f 54 54 41  |RotTab "+.~ROTTA|
00000600  42 25 29 0d 01 7c 2f 43  4f 4c 25 3d 32 35 35 3a  |B%)..|/COL%=255:|
00000610  46 55 53 45 25 3d 2d 31  3a 46 55 53 54 25 3d 2d  |FUSE%=-1:FUST%=-|
00000620  31 3a 46 55 43 4f 25 3d  30 3a 42 55 54 44 4f 25  |1:FUCO%=0:BUTDO%|
00000630  3d a3 0d 01 86 42 24 54  41 53 25 3d 22 54 41 53  |=....B$TAS%="TAS|
00000640  4b 22 3a c8 99 22 57 69  6d 70 5f 49 6e 69 74 69  |K":.."Wimp_Initi|
00000650  61 6c 69 73 65 22 2c 32  30 30 2c 21 54 41 53 25  |alise",200,!TAS%|
00000660  2c 22 49 6d 61 67 65 72  79 22 20 b8 20 2c 54 48  |,"Imagery" . ,TH|
00000670  41 4e 44 25 0d 01 90 10  f2 6c 6f 61 64 73 70 72  |AND%.....loadspr|
00000680  69 74 65 73 0d 01 9a 0d  f2 6c 6f 61 64 76 61 72  |ites.....loadvar|
00000690  73 0d 01 a4 42 21 42 4c  4b 25 3d 2d 31 3a 42 4c  |s...B!BLK%=-1:BL|
000006a0  4b 25 21 34 3d 30 3a 42  4c 4b 25 21 38 3d 30 3a  |K%!4=0:BLK%!8=0:|
000006b0  42 4c 4b 25 21 31 32 3d  36 34 3a 42 4c 4b 25 21  |BLK%!12=64:BLK%!|
000006c0  31 36 3d 36 34 3a 42 4c  4b 25 21 32 30 3d 26 32  |16=64:BLK%!20=&2|
000006d0  31 30 32 0d 01 ae 3c de  20 42 4c 4b 25 21 32 34  |102...<. BLK%!24|
000006e0  20 31 30 3a 24 28 42 4c  4b 25 21 32 34 29 3d 22  | 10:$(BLK%!24)="|
000006f0  21 54 69 6e 79 49 6d 61  67 65 22 3a 42 4c 4b 25  |!TinyImage":BLK%|
00000700  21 32 38 3d 31 3a 42 4c  4b 25 21 33 32 3d 38 0d  |!28=1:BLK%!32=8.|
00000710  01 b8 28 c8 99 20 22 57  69 6d 70 5f 43 72 65 61  |..(.. "Wimp_Crea|
00000720  74 65 49 63 6f 6e 22 2c  2c 42 4c 4b 25 20 b8 20  |teIcon",,BLK% . |
00000730  49 43 48 41 4e 44 25 0d  01 c2 19 4e 4f 57 49 4e  |ICHAND%....NOWIN|
00000740  44 25 3d 33 34 3a 4e 4f  4d 45 4e 53 25 3d 32 30  |D%=34:NOMENS%=20|
00000750  0d 01 cc 2d de 20 53 54  4f 52 45 25 20 31 35 2a  |...-. STORE% 15*|
00000760  31 30 32 34 2c 42 55 46  25 20 35 30 34 38 2c 48  |1024,BUF% 5048,H|
00000770  41 4e 44 25 28 4e 4f 57  49 4e 44 25 29 0d 01 d6  |AND%(NOWIND%)...|
00000780  0f 53 4f 46 25 3d 53 54  4f 52 45 25 0d 01 e0 fd  |.SOF%=STORE%....|
00000790  dc 20 53 61 76 65 2c 49  6e 66 6f 2c 4d 61 69 6e  |. Save,Info,Main|
000007a0  2c 50 61 6c 65 74 74 65  2c 41 69 72 62 72 75 73  |,Palette,Airbrus|
000007b0  68 2c 42 72 75 73 68 65  73 2c 47 72 69 64 2c 53  |h,Brushes,Grid,S|
000007c0  70 72 69 74 65 53 61 76  65 2c 41 72 65 61 2c 48  |priteSave,Area,H|
000007d0  65 6c 70 2c 4c 69 6e 65  70 61 74 2c 46 69 6c 6c  |elp,Linepat,Fill|
000007e0  70 61 74 2c 45 64 42 72  75 73 68 2c 45 64 46 69  |pat,EdBrush,EdFi|
000007f0  6c 6c 2c 54 65 78 74 2c  54 62 61 63 6b 2c 46 6f  |ll,Text,Tback,Fo|
00000800  6e 74 50 61 72 61 6d 73  2c 46 69 6c 6c 43 6f 6e  |ntParams,FillCon|
00000810  74 2c 43 6f 6c 52 65 70  2c 46 72 61 6d 65 2c 50  |t,ColRep,Frame,P|
00000820  66 69 6c 6c 73 2c 52 47  42 63 6f 6e 74 2c 47 72  |fills,RGBcont,Gr|
00000830  65 79 73 63 61 6c 65 2c  50 69 78 65 6c 61 74 65  |eyscale,Pixelate|
00000840  2c 52 6f 74 61 74 65 2c  43 6f 6c 73 63 61 6c 65  |,Rotate,Colscale|
00000850  2c 43 6f 6e 74 72 61 73  74 2c 50 6f 73 74 65 72  |,Contrast,Poster|
00000860  69 73 65 2c 52 47 42 67  72 61 70 68 2c 46 69 6c  |ise,RGBgraph,Fil|
00000870  74 65 72 2c 57 6f 62 62  6c 65 2c 49 6d 70 6f 72  |ter,Wobble,Impor|
00000880  74 2c 54 6f 6f 6c 6b 69  74 0d 01 ea 12 dc 20 5a  |t,Toolkit..... Z|
00000890  6f 6f 6d 2c 53 65 74 53  61 76 65 0d 01 f4 0a f7  |oom,SetSave.....|
000008a0  20 8d 64 60 41 0d 01 fe  3a c8 99 20 22 57 69 6d  | .d`A...:.. "Wim|
000008b0  70 5f 4f 70 65 6e 54 65  6d 70 6c 61 74 65 22 2c  |p_OpenTemplate",|
000008c0  2c 22 3c 49 6d 61 67 65  72 79 24 44 69 72 3e 2e  |,"<Imagery$Dir>.|
000008d0  54 65 6d 70 6c 61 74 65  73 22 3a 4b 25 3d 30 0d  |Templates":K%=0.|
000008e0  02 08 12 f5 3a f3 20 41  24 3a 24 49 4f 25 3d 41  |....:. A$:$IO%=A|
000008f0  24 0d 02 12 48 c8 99 20  22 57 69 6d 70 5f 4c 6f  |$...H.. "Wimp_Lo|
00000900  61 64 54 65 6d 70 6c 61  74 65 22 2c 2c 42 55 46  |adTemplate",,BUF|
00000910  25 2c 53 4f 46 25 2c 53  54 4f 52 45 25 2b 28 31  |%,SOF%,STORE%+(1|
00000920  35 2a 31 30 32 34 29 2c  2d 31 2c 49 4f 25 2c 30  |5*1024),-1,IO%,0|
00000930  20 b8 20 2c 2c 53 4f 46  25 0d 02 1c 18 e7 20 4b  | . ,,SOF%..... K|
00000940  25 3d 32 20 8c 20 42 55  46 25 3f 33 35 3d 26 46  |%=2 . BUF%?35=&F|
00000950  46 0d 02 26 2c c8 99 20  22 57 69 6d 70 5f 43 72  |F..&,.. "Wimp_Cr|
00000960  65 61 74 65 57 69 6e 64  6f 77 22 2c 2c 42 55 46  |eateWindow",,BUF|
00000970  25 20 b8 20 48 41 4e 44  25 28 4b 25 29 0d 02 30  |% . HAND%(K%)..0|
00000980  16 4b 25 2b 3d 31 3a fd  20 4b 25 3e 4e 4f 57 49  |.K%+=1:. K%>NOWI|
00000990  4e 44 25 0d 02 3a 1b c8  99 20 22 57 69 6d 70 5f  |ND%..:... "Wimp_|
000009a0  43 6c 6f 73 65 54 65 6d  70 6c 61 74 65 22 0d 02  |CloseTemplate"..|
000009b0  44 23 e3 4c 25 3d 31 35  20 b8 20 34 36 3a f2 73  |D#.L%=15 . 46:.s|
000009c0  68 61 64 65 69 63 6f 6e  28 31 30 2c 4c 25 29 3a  |hadeicon(10,L%):|
000009d0  ed 0d 02 4e 13 f2 73 69  28 31 33 2c 38 33 2c 22  |...N..si(13,83,"|
000009e0  31 36 22 29 0d 02 58 0c  ef 32 33 2c 36 2c 30 7c  |16")..X..23,6,0||
000009f0  0d 02 62 0f f2 73 79 73  74 65 6d 76 61 72 73 0d  |..b..systemvars.|
00000a00  02 6c 0a f2 63 68 61 72  73 0d 02 76 0e f2 6c 6f  |.l..chars..v..lo|
00000a10  61 64 66 6f 6e 74 73 0d  02 80 40 e3 4c 25 3d 30  |adfonts...@.L%=0|
00000a20  20 b8 20 4e 4f 4d 45 4e  53 25 3a 21 a4 6d 61 64  | . NOMENS%:!.mad|
00000a30  28 4c 25 29 3d 2d 31 3a  ed 3a f2 62 75 69 6c 64  |(L%)=-1:.:.build|
00000a40  6d 61 69 6e 6d 65 6e 75  3a f2 62 75 69 6c 64 69  |mainmenu:.buildi|
00000a50  63 6f 6e 6d 65 6e 75 0d  02 8a 13 4c 57 47 25 3d  |conmenu....LWG%=|
00000a60  2d 31 3a 4c 49 47 25 3d  2d 31 0d 02 94 35 57 4c  |-1:LIG%=-1...5WL|
00000a70  58 25 3d 30 3a 57 4c 59  25 3d 33 30 30 3a 57 55  |X%=0:WLY%=300:WU|
00000a80  58 25 3d 31 32 37 39 3a  57 55 59 25 3d 31 30 32  |X%=1279:WUY%=102|
00000a90  33 3a 57 53 58 25 3d 30  3a 57 53 59 25 3d 30 0d  |3:WSX%=0:WSY%=0.|
00000aa0  02 9e 16 45 44 54 59 25  3d 30 3a 45 46 43 4f 4c  |...EDTY%=0:EFCOL|
00000ab0  25 3d 32 35 35 0d 02 a8  05 e1 0d 02 b2 04 0d 02  |%=255...........|
00000ac0  bc 20 dd a4 6d 61 64 28  4d 41 44 25 29 3a 3d 4d  |. ..mad(MAD%):=M|
00000ad0  45 4e 41 44 25 2b 28 4d  41 44 25 2a 34 29 0d 02  |ENAD%+(MAD%*4)..|
00000ae0  c6 21 dd a4 63 6d 61 64  28 4d 41 44 25 29 3a 3d  |.!..cmad(MAD%):=|
00000af0  4d 45 4e 41 44 25 21 28  4d 41 44 25 2a 34 29 0d  |MENAD%!(MAD%*4).|
00000b00  02 d0 04 0d 02 da 10 dd  f2 73 79 73 74 65 6d 76  |.........systemv|
00000b10  61 72 73 0d 02 e4 30 21  50 49 43 25 3d 31 36 31  |ars...0!PIC%=161|
00000b20  2a 31 30 32 34 3a 50 49  43 25 21 34 3d 30 3a 50  |*1024:PIC%!4=0:P|
00000b30  49 43 25 21 38 3d 32 34  3a 50 49 43 25 21 31 32  |IC%!8=24:PIC%!12|
00000b40  3d 32 34 0d 02 ee 26 c8  99 20 26 32 45 2c 32 37  |=24...&.. &2E,27|
00000b50  31 2c 50 49 43 25 2c 22  50 49 43 22 2c 30 2c 36  |1,PIC%,"PIC",0,6|
00000b60  34 30 2c 32 35 36 2c 31  35 0d 02 f8 15 50 49 43  |40,256,15....PIC|
00000b70  24 3d 22 3c 55 6e 74 69  74 6c 65 64 3e 22 0d 03  |$="<Untitled>"..|
00000b80  02 13 45 53 4d 25 3d 2d  31 3a 45 50 4d 25 3d 2d  |..ESM%=-1:EPM%=-|
00000b90  31 0d 03 0c 3f 47 52 43  4f 25 3d 2d 31 3a 47 52  |1...?GRCO%=-1:GR|
00000ba0  54 49 25 3d 2d 31 3a 47  52 4c 4f 25 3d a3 3a 47  |TI%=-1:GRLO%=.:G|
00000bb0  52 49 57 49 25 3d 31 3a  47 52 49 48 45 25 3d 31  |RIWI%=1:GRIHE%=1|
00000bc0  3a 47 52 42 58 25 3d 30  3a 47 52 42 59 25 3d 30  |:GRBX%=0:GRBY%=0|
00000bd0  0d 03 16 33 47 52 58 4d  25 3d 31 3a 47 52 58 44  |...3GRXM%=1:GRXD|
00000be0  25 3d 31 3a 47 52 59 4d  25 3d 31 3a 47 52 59 44  |%=1:GRYM%=1:GRYD|
00000bf0  25 3d 31 3a 47 52 46 58  25 3d a3 3a 47 52 46 59  |%=1:GRFX%=.:GRFY|
00000c00  25 3d a3 0d 03 20 14 5a  4f 4f 4d 25 3d 31 3a 5a  |%=... .ZOOM%=1:Z|
00000c10  4f 4f 4d 53 25 3d 31 0d  03 2a 23 55 53 45 25 3d  |OOMS%=1..*#USE%=|
00000c20  30 3a 4c 49 54 59 25 3d  35 3a 47 52 4d 41 25 3d  |0:LITY%=5:GRMA%=|
00000c30  a3 3a 55 4e 44 4f 25 3d  2d 31 0d 03 34 1e de 20  |.:UNDO%=-1..4.. |
00000c40  50 41 54 25 28 35 29 3a  50 41 54 25 28 29 3d 30  |PAT%(5):PAT%()=0|
00000c50  3a 50 41 4c 45 25 3d 38  0d 03 3e 1f de 20 45 43  |:PALE%=8..>.. EC|
00000c60  46 25 28 38 2c 34 29 3a  45 43 46 25 28 29 3d 30  |F%(8,4):ECF%()=0|
00000c70  3a 52 4f 54 25 3d 30 0d  03 48 1d de 20 47 52 46  |:ROT%=0..H.. GRF|
00000c80  49 25 28 31 35 2c 31 2c  34 29 3a 47 52 46 49 25  |I%(15,1,4):GRFI%|
00000c90  28 29 3d 30 0d 03 52 30  46 49 46 43 25 3d 36 33  |()=0..R0FIFC%=63|
00000ca0  3a 46 49 46 54 25 3d 31  39 32 3a 46 49 4c 43 25  |:FIFT%=192:FILC%|
00000cb0  3d 33 3a 46 49 4c 54 25  3d 31 39 32 3a 46 49 4c  |=3:FILT%=192:FIL|
00000cc0  52 25 3d 30 0d 03 5c 09  49 50 25 3d a3 0d 03 66  |R%=0..\.IP%=...f|
00000cd0  28 53 45 4c 42 52 25 3d  31 3a 42 58 4d 25 3d 31  |(SELBR%=1:BXM%=1|
00000ce0  3a 42 58 44 25 3d 31 3a  42 59 4d 25 3d 31 3a 42  |:BXD%=1:BYM%=1:B|
00000cf0  59 44 25 3d 31 0d 03 70  1b 45 44 42 52 25 3d 31  |YD%=1..p.EDBR%=1|
00000d00  3a 49 44 52 41 47 25 3d  a3 3a 43 50 46 25 3d 31  |:IDRAG%=.:CPF%=1|
00000d10  0d 03 7a 56 e7 20 4c 46  24 3c 3e 22 22 20 8c 20  |..zV. LF$<>"" . |
00000d20  f2 71 61 74 6c 6f 61 64  28 4c 46 24 29 3a 50 49  |.qatload(LF$):PI|
00000d30  43 24 3d a4 6c 65 61 66  28 4c 46 24 29 3a f2 73  |C$=.leaf(LF$):.s|
00000d40  69 28 30 2c 36 2c 4c 46  24 29 3a f2 6f 70 65 6e  |i(0,6,LF$):.open|
00000d50  6d 61 69 6e 3a f2 77 69  6e 64 6e 61 6d 65 28 32  |main:.windname(2|
00000d60  2c 50 49 43 24 29 0d 03  84 1b de 20 54 52 41 53  |,PIC$)..... TRAS|
00000d70  50 25 20 32 35 36 2c 20  52 45 50 53 25 20 32 35  |P% 256, REPS% 25|
00000d80  36 0d 03 8e 1d e3 4c 25  3d 30 20 b8 20 32 35 35  |6.....L%=0 . 255|
00000d90  3a 52 45 50 53 25 3f 4c  25 3d 4c 25 3a ed 0d 03  |:REPS%?L%=L%:...|
00000da0  98 21 e3 4c 25 3d 30 20  b8 20 32 35 32 20 88 20  |.!.L%=0 . 252 . |
00000db0  34 3a 54 52 41 53 50 25  21 4c 25 3d 30 3a ed 0d  |4:TRASP%!L%=0:..|
00000dc0  03 a2 24 de 20 46 4f 4e  54 54 24 28 36 34 29 3a  |..$. FONTT$(64):|
00000dd0  46 4f 4e 54 41 25 3d 2d  31 3a 46 4f 4e 54 4f 25  |FONTA%=-1:FONTO%|
00000de0  3d 2d 31 0d 03 ac 16 46  4f 4e 54 42 25 3d 30 3a  |=-1....FONTB%=0:|
00000df0  53 52 45 50 25 3d 32 35  35 0d 03 b6 38 4d 4d 58  |SREP%=255...8MMX|
00000e00  25 3d 31 3a 4d 4d 59 25  3d 31 3a 4d 4f 50 25 3d  |%=1:MMY%=1:MOP%=|
00000e10  a3 3a 4b 55 4b 45 25 3d  a3 3a 4b 55 4b 44 25 3d  |.:KUKE%=.:KUKD%=|
00000e20  30 3a 4b 55 4b 4c 25 3d  2d 31 3a 4b 53 43 25 3d  |0:KUKL%=-1:KSC%=|
00000e30  b9 0d 03 c0 1e 52 53 4c  25 3d 31 30 30 3a 47 53  |.....RSL%=100:GS|
00000e40  4c 25 3d 31 30 30 3a 42  53 4c 25 3d 31 30 30 0d  |L%=100:BSL%=100.|
00000e50  03 ca 05 e1 0d 03 d4 04  0d 03 de 0e dd f2 6c 6f  |..............lo|
00000e60  61 64 76 61 72 73 0d 03  e8 1e 46 25 3d 8e 28 22  |advars....F%=.("|
00000e70  3c 49 6d 61 67 65 72 79  24 44 69 72 3e 2e 56 61  |<Imagery$Dir>.Va|
00000e80  72 73 22 29 0d 03 f2 ce  e8 23 46 25 2c 62 61 63  |rs").....#F%,bac|
00000e90  6b 75 70 70 69 63 2c 66  69 6c 6c 6d 61 73 6b 2c  |kuppic,fillmask,|
00000ea0  67 65 74 70 69 63 62 79  74 65 2c 67 65 74 62 72  |getpicbyte,getbr|
00000eb0  75 73 68 62 79 74 65 2c  73 65 74 70 69 63 62 79  |ushbyte,setpicby|
00000ec0  74 65 2c 70 69 78 61 76  65 72 61 67 65 2c 74 69  |te,pixaverage,ti|
00000ed0  6e 74 61 72 65 61 2c 61  76 65 72 61 67 65 62 72  |ntarea,averagebr|
00000ee0  75 73 68 2c 74 69 6e 74  62 72 75 73 68 2c 66 69  |ush,tintbrush,fi|
00000ef0  6e 64 63 68 61 6e 67 65  62 6f 78 2c 67 72 61 64  |ndchangebox,grad|
00000f00  75 61 74 65 64 66 69 6c  6c 2c 63 6f 6c 72 65 70  |uatedfill,colrep|
00000f10  2c 70 61 74 66 69 6c 6c  2c 72 67 62 63 6f 6e 74  |,patfill,rgbcont|
00000f20  2c 67 72 65 79 73 63 61  6c 65 2c 72 6f 74 61 74  |,greyscale,rotat|
00000f30  65 2c 74 72 61 6e 73 61  72 65 61 2c 72 67 62 67  |e,transarea,rgbg|
00000f40  72 61 70 68 2c 66 69 6c  74 65 72 2c 77 6f 62 62  |raph,filter,wobb|
00000f50  6c 65 0d 03 fc 08 d9 23  46 25 0d 04 06 db 62 61  |le.....#F%....ba|
00000f60  63 6b 75 70 70 69 63 2b  3d 43 4f 44 45 25 3a 66  |ckuppic+=CODE%:f|
00000f70  69 6c 6c 6d 61 73 6b 2b  3d 43 4f 44 45 25 3a 67  |illmask+=CODE%:g|
00000f80  65 74 70 69 63 62 79 74  65 2b 3d 43 4f 44 45 25  |etpicbyte+=CODE%|
00000f90  3a 67 65 74 62 72 75 73  68 62 79 74 65 2b 3d 43  |:getbrushbyte+=C|
00000fa0  4f 44 45 25 3a 73 65 74  70 69 63 62 79 74 65 2b  |ODE%:setpicbyte+|
00000fb0  3d 43 4f 44 45 25 3a 70  69 78 61 76 65 72 61 67  |=CODE%:pixaverag|
00000fc0  65 2b 3d 43 4f 44 45 25  3a 74 69 6e 74 61 72 65  |e+=CODE%:tintare|
00000fd0  61 2b 3d 43 4f 44 45 25  3a 61 76 65 72 61 67 65  |a+=CODE%:average|
00000fe0  62 72 75 73 68 2b 3d 43  4f 44 45 25 3a 74 69 6e  |brush+=CODE%:tin|
00000ff0  74 62 72 75 73 68 2b 3d  43 4f 44 45 25 3a 66 69  |tbrush+=CODE%:fi|
00001000  6e 64 63 68 61 6e 67 65  62 6f 78 2b 3d 43 4f 44  |ndchangebox+=COD|
00001010  45 25 3a 67 72 61 64 75  61 74 65 64 66 69 6c 6c  |E%:graduatedfill|
00001020  2b 3d 43 4f 44 45 25 3a  63 6f 6c 72 65 70 2b 3d  |+=CODE%:colrep+=|
00001030  43 4f 44 45 25 0d 04 10  7d 70 61 74 66 69 6c 6c  |CODE%...}patfill|
00001040  2b 3d 43 4f 44 45 25 3a  72 67 62 63 6f 6e 74 2b  |+=CODE%:rgbcont+|
00001050  3d 43 4f 44 45 25 3a 67  72 65 79 73 63 61 6c 65  |=CODE%:greyscale|
00001060  2b 3d 43 4f 44 45 25 3a  72 6f 74 61 74 65 2b 3d  |+=CODE%:rotate+=|
00001070  43 4f 44 45 25 3a 74 72  61 6e 73 61 72 65 61 2b  |CODE%:transarea+|
00001080  3d 43 4f 44 45 25 3a 72  67 62 67 72 61 70 68 2b  |=CODE%:rgbgraph+|
00001090  3d 43 4f 44 45 25 3a 66  69 6c 74 65 72 2b 3d 43  |=CODE%:filter+=C|
000010a0  4f 44 45 25 3a 77 6f 62  62 6c 65 2b 3d 43 4f 44  |ODE%:wobble+=COD|
000010b0  45 25 0d 04 1a 05 e1 0d  04 24 04 0d 04 2e 0f dd  |E%.......$......|
000010c0  f2 6c 6f 61 64 66 6f 6e  74 73 0d 04 38 0e 46 4f  |.loadfonts..8.FO|
000010d0  4e 54 53 25 3d 30 3a e1  0d 04 42 04 0d 04 4c 11  |NTS%=0:...B...L.|
000010e0  dd f2 6c 6f 61 64 73 70  72 69 74 65 73 0d 04 56  |..loadsprites..V|
000010f0  05 e1 0d 04 60 04 0d 04  6a 35 dd f2 61 63 74 69  |....`...j5..acti|
00001100  6f 6e 3a c8 99 20 22 57  69 6d 70 5f 46 6f 72 63  |on:.. "Wimp_Forc|
00001110  65 52 65 64 72 61 77 22  2c 2d 31 2c 30 2c 30 2c  |eRedraw",-1,0,0,|
00001120  26 33 30 30 30 2c 26 33  30 30 30 0d 04 74 04 0d  |&3000,&3000..t..|
00001130  04 7e 05 f5 0d 04 88 09  f2 70 6f 6c 6c 0d 04 92  |.~.......poll...|
00001140  27 fd 20 28 52 45 41 53  25 3d 31 37 20 84 20 52  |'. (REAS%=17 . R|
00001150  45 41 53 25 3d 31 38 29  20 80 20 42 4c 4b 25 21  |EAS%=18) . BLK%!|
00001160  31 36 3d 30 0d 04 9c 05  e1 0d 04 a6 04 0d 04 b0  |16=0............|
00001170  19 dd f2 64 69 65 3a 4f  50 25 3d 30 3a f2 73 70  |...die:OP%=0:.sp|
00001180  62 75 66 28 30 29 0d 04  ba 33 e3 4c 25 3d 31 20  |buf(0)...3.L%=1 |
00001190  b8 20 34 3a ff 28 22 2a  52 45 4d 4f 56 45 20 3c  |. 4:.("*REMOVE <|
000011a0  49 6d 61 67 65 72 79 24  44 69 72 3e 2e 58 50 49  |Imagery$Dir>.XPI|
000011b0  43 22 2b c3 4c 25 29 3a  ed 0d 04 c4 24 c8 99 20  |C"+.L%):....$.. |
000011c0  22 57 69 6d 70 5f 43 6c  6f 73 65 44 6f 77 6e 22  |"Wimp_CloseDown"|
000011d0  2c 54 48 41 4e 44 25 2c  21 54 41 53 25 0d 04 ce  |,THAND%,!TAS%...|
000011e0  05 e0 0d 04 d8 05 e1 0d  04 e2 04 0d 04 ec 0a dd  |................|
000011f0  f2 70 6f 6c 6c 0d 04 f6  22 c8 99 20 22 57 69 6d  |.poll...".. "Wim|
00001200  70 5f 47 65 74 50 6f 69  6e 74 65 72 49 6e 66 6f  |p_GetPointerInfo|
00001210  22 2c 2c 42 4c 4b 25 0d  05 00 21 e7 20 42 4c 4b  |",,BLK%...!. BLK|
00001220  25 21 31 32 3c 3e 48 41  4e 44 25 28 32 29 20 8c  |%!12<>HAND%(2) .|
00001230  20 4d 42 55 53 25 3d b9  0d 05 0a 1f 21 42 4c 4b  | MBUS%=.....!BLK|
00001240  25 3d 25 31 30 30 31 31  31 31 31 31 31 30 30 30  |%=%1001111111000|
00001250  30 31 31 30 30 30 30 0d  05 14 21 c8 99 20 22 57  |0110000...!.. "W|
00001260  69 6d 70 5f 50 6f 6c 6c  22 2c 30 2c 42 4c 4b 25  |imp_Poll",0,BLK%|
00001270  20 b8 20 52 45 41 53 25  0d 05 1e 15 e7 20 52 45  | . REAS%..... RE|
00001280  41 53 25 3e 2d 31 20 8c  20 f2 61 63 74 0d 05 28  |AS%>-1 . .act..(|
00001290  05 e1 0d 05 32 09 dd f2  61 63 74 0d 05 3c 0e c8  |....2...act..<..|
000012a0  8e 20 52 45 41 53 25 20  ca 0d 05 46 16 c9 20 30  |. REAS% ...F.. 0|
000012b0  3a f2 6b 75 6b 65 3a f2  70 69 63 70 6f 6c 6c 0d  |:.kuke:.picpoll.|
000012c0  05 50 0f c9 20 31 3a f2  72 65 64 72 61 77 0d 05  |.P.. 1:.redraw..|
000012d0  5a 0f c9 20 32 3a f2 6f  70 6d 61 69 6e 0d 05 64  |Z.. 2:.opmain..d|
000012e0  0f c9 20 33 3a f2 63 6c  6d 61 69 6e 0d 05 6e 0e  |.. 3:.clmain..n.|
000012f0  c9 20 36 3a f2 6d 6f 75  73 65 0d 05 78 10 c9 20  |. 6:.mouse..x.. |
00001300  37 3a f2 64 72 61 67 66  69 6e 0d 05 82 0c c9 20  |7:.dragfin..... |
00001310  38 3a f2 6b 65 79 0d 05  8c 0d c9 20 39 3a f2 6d  |8:.key..... 9:.m|
00001320  65 6e 75 0d 05 96 1f c9  20 31 37 2c 31 38 3a f2  |enu..... 17,18:.|
00001330  69 6e 6d 65 73 73 61 67  65 28 42 4c 4b 25 21 31  |inmessage(BLK%!1|
00001340  36 29 0d 05 a0 05 cb 0d  05 aa 05 e1 0d 05 b4 04  |6)..............|
00001350  0d 05 be 18 dd f2 6b 75  6b 65 3a e7 20 ac 20 4b  |......kuke:. . K|
00001360  55 4b 45 25 20 8c 20 e1  0d 05 c8 0c 4b 55 4c 49  |UKE% . .....KULI|
00001370  25 3d 31 30 0d 05 d2 18  c8 97 20 4d 58 25 2c 4d  |%=10...... MX%,M|
00001380  59 25 2c 4d 48 25 3a 4b  50 25 3d a3 0d 05 dc 15  |Y%,MH%:KP%=.....|
00001390  e7 20 ac 20 a6 28 2d 35  38 29 20 8c 20 8d 54 44  |. . .(-58) . .TD|
000013a0  46 0d 05 e6 38 e7 20 4b  55 4b 4c 25 3c 3e 2d 35  |F...8. KUKL%<>-5|
000013b0  38 20 8c 20 4b 55 4b 4c  25 3d 2d 35 38 3a 4b 55  |8 . KUKL%=-58:KU|
000013c0  4b 44 25 3d 30 3a 4d 59  25 2b 3d 34 3a 4b 50 25  |KD%=0:MY%+=4:KP%|
000013d0  3d b9 3a e5 20 8d 54 44  46 0d 05 f0 29 4b 55 4b  |=.:. .TDF...)KUK|
000013e0  44 25 2b 3d 31 3a e7 20  4b 55 4b 44 25 3c 4b 55  |D%+=1:. KUKD%<KU|
000013f0  4c 49 25 20 8c 20 4b 50  25 3d b9 3a e5 20 8d 54  |LI% . KP%=.:. .T|
00001400  44 46 0d 05 fa 1c 4b 55  4b 44 25 3d 4b 55 4c 49  |DF....KUKD%=KULI|
00001410  25 3a 4d 59 25 2b 3d 34  3a 4b 50 25 3d b9 0d 06  |%:MY%+=4:KP%=...|
00001420  04 15 e7 20 ac 20 a6 28  2d 34 32 29 20 8c 20 8d  |... . .(-42) . .|
00001430  54 6c 46 0d 06 0e 38 e7  20 4b 55 4b 4c 25 3c 3e  |TlF...8. KUKL%<>|
00001440  2d 35 38 20 8c 20 4b 55  4b 4c 25 3d 2d 35 38 3a  |-58 . KUKL%=-58:|
00001450  4b 55 4b 44 25 3d 30 3a  4d 59 25 2d 3d 34 3a 4b  |KUKD%=0:MY%-=4:K|
00001460  50 25 3d b9 3a e5 20 8d  54 6c 46 0d 06 18 29 4b  |P%=.:. .TlF...)K|
00001470  55 4b 44 25 2b 3d 31 3a  e7 20 4b 55 4b 44 25 3c  |UKD%+=1:. KUKD%<|
00001480  4b 55 4c 49 25 20 8c 20  4b 50 25 3d b9 3a e5 20  |KULI% . KP%=.:. |
00001490  8d 54 6c 46 0d 06 22 1c  4b 55 4b 44 25 3d 4b 55  |.TlF..".KUKD%=KU|
000014a0  4c 49 25 3a 4d 59 25 2d  3d 34 3a 4b 50 25 3d b9  |LI%:MY%-=4:KP%=.|
000014b0  0d 06 2c 15 e7 20 ac 20  a6 28 2d 32 36 29 20 8c  |..,.. . .(-26) .|
000014c0  20 8d 44 54 46 0d 06 36  38 e7 20 4b 55 4b 4c 25  | .DTF..68. KUKL%|
000014d0  3c 3e 2d 35 38 20 8c 20  4b 55 4b 4c 25 3d 2d 35  |<>-58 . KUKL%=-5|
000014e0  38 3a 4b 55 4b 44 25 3d  30 3a 4d 58 25 2d 3d 32  |8:KUKD%=0:MX%-=2|
000014f0  3a 4b 50 25 3d b9 3a e5  20 8d 44 54 46 0d 06 40  |:KP%=.:. .DTF..@|
00001500  29 4b 55 4b 44 25 2b 3d  31 3a e7 20 4b 55 4b 44  |)KUKD%+=1:. KUKD|
00001510  25 3c 4b 55 4c 49 25 20  8c 20 4b 50 25 3d b9 3a  |%<KULI% . KP%=.:|
00001520  e5 20 8d 44 54 46 0d 06  4a 1c 4b 55 4b 44 25 3d  |. .DTF..J.KUKD%=|
00001530  4b 55 4c 49 25 3a 4d 58  25 2d 3d 32 3a 4b 50 25  |KULI%:MX%-=2:KP%|
00001540  3d b9 0d 06 54 16 e7 20  ac 20 a6 28 2d 31 32 32  |=...T.. . .(-122|
00001550  29 20 8c 20 8d 44 7c 46  0d 06 5e 38 e7 20 4b 55  |) . .D|F..^8. KU|
00001560  4b 4c 25 3c 3e 2d 35 38  20 8c 20 4b 55 4b 4c 25  |KL%<>-58 . KUKL%|
00001570  3d 2d 35 38 3a 4b 55 4b  44 25 3d 30 3a 4d 58 25  |=-58:KUKD%=0:MX%|
00001580  2b 3d 32 3a 4b 50 25 3d  b9 3a e5 20 8d 44 7c 46  |+=2:KP%=.:. .D|F|
00001590  0d 06 68 29 4b 55 4b 44  25 2b 3d 31 3a e7 20 4b  |..h)KUKD%+=1:. K|
000015a0  55 4b 44 25 3c 4b 55 4c  49 25 20 8c 20 4b 50 25  |UKD%<KULI% . KP%|
000015b0  3d b9 3a e5 20 8d 44 7c  46 0d 06 72 1c 4b 55 4b  |=.:. .D|F..r.KUK|
000015c0  44 25 3d 4b 55 4c 49 25  3a 4d 58 25 2b 3d 32 3a  |D%=KULI%:MX%+=2:|
000015d0  4b 50 25 3d b9 0d 06 7c  1e e7 20 ac 20 4b 50 25  |KP%=...|.. . KP%|
000015e0  20 8c 20 4b 55 4b 4c 25  3d 2d 31 3a 4b 55 4b 44  | . KUKL%=-1:KUKD|
000015f0  25 3d 30 0d 06 86 10 c8  97 20 b8 20 4d 58 25 2c  |%=0...... . MX%,|
00001600  4d 59 25 0d 06 90 05 e1  0d 06 9a 04 0d 06 a4 0c  |MY%.............|
00001610  dd f2 72 65 64 72 61 77  0d 06 ae 0e c8 8e 20 21  |..redraw...... !|
00001620  42 4c 4b 25 20 ca 0d 06  b8 1a c9 20 48 41 4e 44  |BLK% ...... HAND|
00001630  25 28 32 29 3a f2 72 65  64 72 61 77 6d 61 69 6e  |%(2):.redrawmain|
00001640  0d 06 c2 19 c9 20 48 41  4e 44 25 28 33 29 3a f2  |..... HAND%(3):.|
00001650  72 65 64 72 61 77 70 61  6c 0d 06 cc 1b c9 20 48  |redrawpal..... H|
00001660  41 4e 44 25 28 35 29 3a  f2 72 65 64 72 61 77 62  |AND%(5):.redrawb|
00001670  72 75 73 68 0d 06 d6 1a  c9 20 48 41 4e 44 25 28  |rush..... HAND%(|
00001680  31 31 29 3a f2 72 65 64  72 61 77 70 61 74 0d 06  |11):.redrawpat..|
00001690  e0 1c c9 20 48 41 4e 44  25 28 31 32 29 3a f2 72  |... HAND%(12):.r|
000016a0  65 64 72 61 77 65 64 62  72 75 0d 06 ea 1b c9 20  |edrawedbru..... |
000016b0  48 41 4e 44 25 28 31 33  29 3a f2 72 65 64 72 61  |HAND%(13):.redra|
000016c0  77 66 69 6c 6c 0d 06 f4  1c c9 20 48 41 4e 44 25  |wfill..... HAND%|
000016d0  28 31 35 29 3a f2 72 65  64 72 61 77 74 62 61 63  |(15):.redrawtbac|
000016e0  6b 0d 06 fe 1d c9 20 48  41 4e 44 25 28 31 38 29  |k..... HAND%(18)|
000016f0  3a f2 72 65 64 72 61 77  63 6f 6c 72 65 70 0d 07  |:.redrawcolrep..|
00001700  08 1e c9 20 48 41 4e 44  25 28 32 30 29 3a f2 72  |... HAND%(20):.r|
00001710  65 64 72 61 77 70 61 74  66 69 6c 6c 0d 07 12 30  |edrawpatfill...0|
00001720  c9 20 48 41 4e 44 25 28  32 36 29 2c 48 41 4e 44  |. HAND%(26),HAND|
00001730  25 28 32 37 29 2c 48 41  4e 44 25 28 32 38 29 3a  |%(27),HAND%(28):|
00001740  f2 72 65 64 72 61 77 67  72 61 70 68 0d 07 1c 1b  |.redrawgraph....|
00001750  c9 20 48 41 4e 44 25 28  33 33 29 3a f2 72 65 64  |. HAND%(33):.red|
00001760  72 61 77 7a 6f 6f 6d 0d  07 26 1a c9 20 48 41 4e  |rawzoom..&.. HAN|
00001770  44 25 28 32 31 29 3a f2  72 65 64 72 61 77 72 67  |D%(21):.redrawrg|
00001780  62 0d 07 30 1a c9 20 48  41 4e 44 25 28 33 30 29  |b..0.. HAND%(30)|
00001790  3a f2 72 65 64 72 61 77  77 6f 62 0d 07 3a 05 cb  |:.redrawwob..:..|
000017a0  0d 07 44 05 e1 0d 07 4e  04 0d 07 58 0f dd f2 72  |..D....N...X...r|
000017b0  65 64 72 61 77 77 6f 62  0d 07 62 27 c8 99 20 22  |edrawwob..b'.. "|
000017c0  57 69 6d 70 5f 52 65 64  72 61 77 57 69 6e 64 6f  |Wimp_RedrawWindo|
000017d0  77 22 2c 2c 42 4c 4b 25  20 b8 20 46 49 4e 25 0d  |w",,BLK% . FIN%.|
000017e0  07 6c 11 f2 67 65 74 72  64 6f 72 28 35 36 34 29  |.l..getrdor(564)|
000017f0  0d 07 76 60 c8 95 20 46  49 4e 25 3a f2 70 6c 6f  |..v`.. FIN%:.plo|
00001800  74 32 35 36 73 70 72 69  74 65 28 53 48 4f 57 25  |t256sprite(SHOW%|
00001810  2c 22 53 48 4f 57 22 2c  57 4f 58 25 2b 36 34 2c  |,"SHOW",WOX%+64,|
00001820  57 4f 59 25 2b 31 36 29  3a c8 99 20 22 57 69 6d  |WOY%+16):.. "Wim|
00001830  70 5f 47 65 74 52 65 63  74 61 6e 67 6c 65 22 2c  |p_GetRectangle",|
00001840  2c 42 4c 4b 25 20 b8 20  46 49 4e 25 3a ce 3a e1  |,BLK% . FIN%:.:.|
00001850  0d 07 80 04 0d 07 8a 43  dd f2 66 6f 72 63 65 64  |.......C..forced|
00001860  72 61 77 77 6f 62 3a c8  99 20 22 57 69 6d 70 5f  |rawwob:.. "Wimp_|
00001870  46 6f 72 63 65 52 65 64  72 61 77 22 2c 48 41 4e  |ForceRedraw",HAN|
00001880  44 25 28 33 30 29 2c 30  2c 2d 35 36 34 2c 34 38  |D%(30),0,-564,48|
00001890  30 2c 32 32 30 3a e1 0d  07 94 04 0d 07 9e 11 dd  |0,220:..........|
000018a0  f2 72 65 64 72 61 77 62  72 75 73 68 0d 07 a8 27  |.redrawbrush...'|
000018b0  c8 99 20 22 57 69 6d 70  5f 52 65 64 72 61 77 57  |.. "Wimp_RedrawW|
000018c0  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 20 b8 20 46  |indow",,BLK% . F|
000018d0  49 4e 25 0d 07 b2 11 f2  67 65 74 72 64 6f 72 28  |IN%.....getrdor(|
000018e0  32 36 30 29 0d 07 bc 3c  c8 95 20 46 49 4e 25 3a  |260)...<.. FIN%:|
000018f0  f2 70 6c 6f 74 62 72 75  73 68 65 73 3a c8 99 20  |.plotbrushes:.. |
00001900  22 57 69 6d 70 5f 47 65  74 52 65 63 74 61 6e 67  |"Wimp_GetRectang|
00001910  6c 65 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |le",,BLK% . FIN%|
00001920  0d 07 c6 05 ce 0d 07 d0  05 e1 0d 07 da 04 0d 07  |................|
00001930  e4 11 dd f2 72 65 64 72  61 77 65 64 62 72 75 0d  |....redrawedbru.|
00001940  07 ee 27 c8 99 20 22 57  69 6d 70 5f 52 65 64 72  |..'.. "Wimp_Redr|
00001950  61 77 57 69 6e 64 6f 77  22 2c 2c 42 4c 4b 25 20  |awWindow",,BLK% |
00001960  b8 20 46 49 4e 25 0d 07  f8 1d f2 67 65 74 72 64  |. FIN%.....getrd|
00001970  6f 72 28 36 34 30 2b 28  45 44 54 59 25 2a 32 36  |or(640+(EDTY%*26|
00001980  30 29 29 0d 08 02 3a c8  95 20 46 49 4e 25 3a f2  |0))...:.. FIN%:.|
00001990  70 6c 6f 74 65 64 62 72  75 3a c8 99 20 22 57 69  |plotedbru:.. "Wi|
000019a0  6d 70 5f 47 65 74 52 65  63 74 61 6e 67 6c 65 22  |mp_GetRectangle"|
000019b0  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 08 0c  |,,BLK% . FIN%...|
000019c0  05 ce 0d 08 16 05 e1 0d  08 20 04 0d 08 2a 13 dd  |......... ...*..|
000019d0  f2 72 65 64 72 61 77 70  61 74 66 69 6c 6c 0d 08  |.redrawpatfill..|
000019e0  34 27 c8 99 20 22 57 69  6d 70 5f 52 65 64 72 61  |4'.. "Wimp_Redra|
000019f0  77 57 69 6e 64 6f 77 22  2c 2c 42 4c 4b 25 20 b8  |wWindow",,BLK% .|
00001a00  20 46 49 4e 25 0d 08 3e  11 f2 67 65 74 72 64 6f  | FIN%..>..getrdo|
00001a10  72 28 31 30 38 29 0d 08  48 3c c8 95 20 46 49 4e  |r(108)..H<.. FIN|
00001a20  25 3a f2 70 6c 6f 74 70  61 74 66 69 6c 6c 3a c8  |%:.plotpatfill:.|
00001a30  99 20 22 57 69 6d 70 5f  47 65 74 52 65 63 74 61  |. "Wimp_GetRecta|
00001a40  6e 67 6c 65 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ngle",,BLK% . FI|
00001a50  4e 25 0d 08 52 05 ce 0d  08 5c 05 e1 0d 08 66 04  |N%..R....\....f.|
00001a60  0d 08 70 46 dd f2 66 6f  72 63 65 64 72 61 77 70  |..pF..forcedrawp|
00001a70  61 74 66 69 6c 6c 3a c8  99 20 22 57 69 6d 70 5f  |atfill:.. "Wimp_|
00001a80  46 6f 72 63 65 52 65 64  72 61 77 22 2c 48 41 4e  |ForceRedraw",HAN|
00001a90  44 25 28 32 30 29 2c 30  2c 2d 31 30 38 2c 31 31  |D%(20),0,-108,11|
00001aa0  30 30 2c 30 3a e1 0d 08  7a 04 0d 08 84 25 dd f2  |00,0:...z....%..|
00001ab0  66 6f 72 63 65 64 72 61  77 65 64 62 72 75 28 78  |forcedrawedbru(x|
00001ac0  31 25 2c 79 31 25 2c 78  32 25 2c 79 32 25 29 0d  |1%,y1%,x2%,y2%).|
00001ad0  08 8e 13 21 42 4c 4b 25  3d 48 41 4e 44 25 28 31  |...!BLK%=HAND%(1|
00001ae0  32 29 0d 08 98 0e 42 4c  4b 25 21 34 3d 78 31 25  |2)....BLK%!4=x1%|
00001af0  0d 08 a2 0e 42 4c 4b 25  21 38 3d 79 31 25 0d 08  |....BLK%!8=y1%..|
00001b00  ac 0f 42 4c 4b 25 21 31  32 3d 78 32 25 0d 08 b6  |..BLK%!12=x2%...|
00001b10  0f 42 4c 4b 25 21 31 36  3d 79 32 25 0d 08 c0 27  |.BLK%!16=y2%...'|
00001b20  c8 99 20 22 57 69 6d 70  5f 55 70 64 61 74 65 57  |.. "Wimp_UpdateW|
00001b30  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 20 b8 20 46  |indow",,BLK% . F|
00001b40  49 4e 25 0d 08 ca 1d f2  67 65 74 72 64 6f 72 28  |IN%.....getrdor(|
00001b50  36 34 30 2b 28 45 44 54  59 25 2a 32 36 30 29 29  |640+(EDTY%*260))|
00001b60  0d 08 d4 0b c8 95 20 46  49 4e 25 0d 08 de 0e f2  |...... FIN%.....|
00001b70  70 6c 6f 74 65 64 62 72  75 0d 08 e8 27 c8 99 20  |plotedbru...'.. |
00001b80  22 57 69 6d 70 5f 47 65  74 52 65 63 74 61 6e 67  |"Wimp_GetRectang|
00001b90  6c 65 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |le",,BLK% . FIN%|
00001ba0  0d 08 f2 05 ce 0d 08 fc  05 e1 0d 09 06 04 0d 09  |................|
00001bb0  10 14 dd f2 66 6f 72 63  65 64 72 61 77 62 72 75  |....forcedrawbru|
00001bc0  73 68 0d 09 1a 12 21 42  4c 4b 25 3d 48 41 4e 44  |sh....!BLK%=HAND|
00001bd0  25 28 35 29 0d 09 24 0c  42 4c 4b 25 21 34 3d 30  |%(5)..$.BLK%!4=0|
00001be0  0d 09 2e 0f 42 4c 4b 25  21 38 3d 2d 32 36 30 0d  |....BLK%!8=-260.|
00001bf0  09 38 0f 42 4c 4b 25 21  31 32 3d 33 38 34 0d 09  |.8.BLK%!12=384..|
00001c00  42 0d 42 4c 4b 25 21 31  36 3d 30 0d 09 4c 27 c8  |B.BLK%!16=0..L'.|
00001c10  99 20 22 57 69 6d 70 5f  55 70 64 61 74 65 57 69  |. "Wimp_UpdateWi|
00001c20  6e 64 6f 77 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ndow",,BLK% . FI|
00001c30  4e 25 0d 09 56 11 f2 67  65 74 72 64 6f 72 28 32  |N%..V..getrdor(2|
00001c40  36 30 29 0d 09 60 0b c8  95 20 46 49 4e 25 0d 09  |60)..`... FIN%..|
00001c50  6a 10 f2 70 6c 6f 74 62  72 75 73 68 65 73 0d 09  |j..plotbrushes..|
00001c60  74 27 c8 99 20 22 57 69  6d 70 5f 47 65 74 52 65  |t'.. "Wimp_GetRe|
00001c70  63 74 61 6e 67 6c 65 22  2c 2c 42 4c 4b 25 20 b8  |ctangle",,BLK% .|
00001c80  20 46 49 4e 25 0d 09 7e  05 ce 0d 09 88 05 e1 0d  | FIN%..~........|
00001c90  09 92 04 0d 09 9c 28 dd  f2 70 6c 6f 74 32 35 36  |......(..plot256|
00001ca0  73 70 72 69 74 65 28 53  50 41 25 2c 53 50 49 24  |sprite(SPA%,SPI$|
00001cb0  2c 50 4f 58 25 2c 50 4f  59 25 29 0d 09 a6 14 e7  |,POX%,POY%).....|
00001cc0  20 eb 3c 3e 31 35 20 8c  20 e5 20 8d 74 7a 49 0d  | .<>15 . . .tzI.|
00001cd0  09 b0 5a 21 53 43 41 4c  45 25 3d 31 3a 53 43 41  |..Z!SCALE%=1:SCA|
00001ce0  4c 45 25 21 34 3d 31 3a  53 43 41 4c 45 25 21 38  |LE%!4=1:SCALE%!8|
00001cf0  3d 31 3a 53 43 41 4c 45  25 21 31 32 3d 31 3a c8  |=1:SCALE%!12=1:.|
00001d00  99 20 22 4f 53 5f 53 70  72 69 74 65 4f 70 22 2c  |. "OS_SpriteOp",|
00001d10  32 39 30 2c 53 50 41 25  2c 53 50 49 24 2c 50 4f  |290,SPA%,SPI$,PO|
00001d20  58 25 2c 50 4f 59 25 3a  e1 0d 09 ba 39 e7 20 eb  |X%,POY%:....9. .|
00001d30  3c 3e 45 53 4d 25 20 8c  20 45 53 4d 25 3d eb 3a  |<>ESM% . ESM%=.:|
00001d40  45 50 4d 25 3d eb 3a c8  99 26 34 30 37 34 30 2c  |EPM%=.:..&40740,|
00001d50  31 35 2c 30 2c 2d 31 2c  2d 31 2c 50 49 58 54 41  |15,0,-1,-1,PIXTA|
00001d60  42 25 0d 09 c4 15 c8 99  26 33 35 2c 2d 31 2c 35  |B%......&35,-1,5|
00001d70  20 b8 20 2c 2c 45 25 0d  09 ce 29 53 58 25 3d 32  | . ,,E%...)SX%=2|
00001d80  5e 28 32 2d 45 25 29 3a  53 43 41 4c 45 25 21 34  |^(2-E%):SCALE%!4|
00001d90  3d 53 58 25 3a 53 43 41  4c 45 25 21 31 32 3d 31  |=SX%:SCALE%!12=1|
00001da0  0d 09 d8 15 c8 99 26 33  35 2c 2d 31 2c 34 20 b8  |......&35,-1,4 .|
00001db0  20 2c 2c 45 25 0d 09 e2  56 e7 20 45 25 3c 31 20  | ,,E%...V. E%<1 |
00001dc0  8c 20 53 58 25 3d 32 5e  28 31 2d 45 25 29 3a 21  |. SX%=2^(1-E%):!|
00001dd0  53 43 41 4c 45 25 3d 53  58 25 3a 53 43 41 4c 45  |SCALE%=SX%:SCALE|
00001de0  25 21 38 3d 31 20 8b 20  53 58 25 3d 32 5e 28 45  |%!8=1 . SX%=2^(E|
00001df0  25 2d 31 29 3a 21 53 43  41 4c 45 25 3d 31 3a 53  |%-1):!SCALE%=1:S|
00001e00  43 41 4c 45 25 21 38 3d  53 58 25 0d 09 ec 3d c8  |CALE%!8=SX%...=.|
00001e10  99 20 22 4f 53 5f 53 70  72 69 74 65 4f 70 22 2c  |. "OS_SpriteOp",|
00001e20  33 30 38 2c 53 50 41 25  2c 53 50 49 24 2c 50 4f  |308,SPA%,SPI$,PO|
00001e30  58 25 2c 50 4f 59 25 2c  30 2c 53 43 41 4c 45 25  |X%,POY%,0,SCALE%|
00001e40  2c 50 49 58 54 41 42 25  0d 09 f6 05 e1 0d 0a 00  |,PIXTAB%........|
00001e50  04 0d 0a 0a 11 dd f2 70  6c 6f 74 70 61 74 66 69  |.......plotpatfi|
00001e60  6c 6c 0d 0a 14 aa e3 4c  25 3d 31 20 b8 20 31 32  |ll.....L%=1 . 12|
00001e70  3a f2 70 6c 6f 74 32 35  36 73 70 72 69 74 65 28  |:.plot256sprite(|
00001e80  50 46 49 4c 4c 53 25 2c  c3 4c 25 2c 57 4f 58 25  |PFILLS%,.L%,WOX%|
00001e90  2b 28 28 4c 25 2d 31 29  2a 38 34 29 2b 32 34 2c  |+((L%-1)*84)+24,|
00001ea0  57 4f 59 25 2b 31 32 29  3a e7 20 43 50 46 25 3d  |WOY%+12):. CPF%=|
00001eb0  4c 25 20 8c 20 f2 63 6f  6c 28 30 2c 30 2c 30 29  |L% . .col(0,0,0)|
00001ec0  3a c8 93 20 57 4f 58 25  2b 28 28 43 50 46 25 2d  |:.. WOX%+((CPF%-|
00001ed0  31 29 2a 38 34 29 2b 31  36 2c 57 4f 59 25 2b 34  |1)*84)+16,WOY%+4|
00001ee0  2c 37 38 2c 37 36 3a c8  93 20 57 4f 58 25 2b 28  |,78,76:.. WOX%+(|
00001ef0  28 43 50 46 25 2d 31 29  2a 38 34 29 2b 31 38 2c  |(CPF%-1)*84)+18,|
00001f00  57 4f 59 25 2b 34 2c 37  34 2c 37 36 0d 0a 1e 05  |WOY%+4,74,76....|
00001f10  ed 0d 0a 28 05 e1 0d 0a  32 04 0d 0a 3c 11 dd f2  |...(....2...<...|
00001f20  70 6c 6f 74 62 72 75 73  68 65 73 0d 0a 46 0e e3  |plotbrushes..F..|
00001f30  4c 25 3d 31 20 b8 20 31  32 0d 0a 50 44 42 4c 4b  |L%=1 . 12..PDBLK|
00001f40  25 21 34 30 30 3d 48 41  4e 44 25 28 35 29 3a 42  |%!400=HAND%(5):B|
00001f50  4c 4b 25 21 34 30 34 3d  4c 25 2d 31 3a c8 99 20  |LK%!404=L%-1:.. |
00001f60  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00001f70  74 65 22 2c 2c 42 4c 4b  25 2b 34 30 30 0d 0a 5a  |te",,BLK%+400..Z|
00001f80  48 f2 70 6c 6f 74 32 35  36 73 70 72 69 74 65 28  |H.plot256sprite(|
00001f90  42 52 55 53 48 25 2c c3  4c 25 2c 57 4f 58 25 2b  |BRUSH%,.L%,WOX%+|
00001fa0  28 42 4c 4b 25 21 34 30  38 29 2b 32 2c 57 4f 59  |(BLK%!408)+2,WOY|
00001fb0  25 2b 28 32 36 30 2b 28  42 4c 4b 25 21 34 31 32  |%+(260+(BLK%!412|
00001fc0  29 29 2b 34 29 0d 0a 64  56 e7 20 53 45 4c 42 52  |))+4)..dV. SELBR|
00001fd0  25 3d 4c 25 20 8c 20 f2  63 6f 6c 28 34 38 2c 31  |%=L% . .col(48,1|
00001fe0  39 32 2c 33 29 3a c8 93  20 c8 90 20 57 4f 58 25  |92,3):.. .. WOX%|
00001ff0  2b 28 42 4c 4b 25 21 34  30 38 29 2b 32 2c 57 4f  |+(BLK%!408)+2,WO|
00002000  59 25 2b 28 32 36 30 2b  28 42 4c 4b 25 21 34 31  |Y%+(260+(BLK%!41|
00002010  32 29 29 2b 34 2c 36 34  2c 36 30 0d 0a 6e 05 ed  |2))+4,64,60..n..|
00002020  0d 0a 78 05 e1 0d 0a 82  04 0d 0a 8c 0f dd f2 70  |..x............p|
00002030  6c 6f 74 65 64 62 72 75  0d 0a 96 28 e7 20 45 44  |lotedbru...(. ED|
00002040  54 59 25 3d 30 20 8c 20  57 45 25 3d 42 52 55 53  |TY%=0 . WE%=BRUS|
00002050  48 25 20 8b 20 57 45 25  3d 50 46 49 4c 4c 53 25  |H% . WE%=PFILLS%|
00002060  0d 0a a0 37 f2 70 6c 6f  74 32 35 36 73 70 72 69  |...7.plot256spri|
00002070  74 65 28 57 45 25 2c 22  31 22 2c 57 4f 58 25 2b  |te(WE%,"1",WOX%+|
00002080  33 32 2c 57 4f 59 25 2b  32 30 2b 28 45 44 54 59  |32,WOY%+20+(EDTY|
00002090  25 2a 32 36 30 29 29 0d  0a aa 2d e7 20 45 44 42  |%*260))...-. EDB|
000020a0  52 25 3c 3e 31 20 8c 20  f2 63 6f 6c 28 30 2c 30  |R%<>1 . .col(0,0|
000020b0  2c 30 29 20 8b 20 f2 63  6f 6c 28 36 33 2c 31 39  |,0) . .col(63,19|
000020c0  32 2c 30 29 0d 0a b4 50  c8 93 20 c8 90 20 57 4f  |2,0)...P.. .. WO|
000020d0  58 25 2b 33 32 2c 57 4f  59 25 2b 34 2b 28 45 44  |X%+32,WOY%+4+(ED|
000020e0  54 59 25 2a 32 36 30 29  2c 36 34 2c 38 3a c8 93  |TY%*260),64,8:..|
000020f0  20 c8 90 20 57 4f 58 25  2b 33 32 2c 57 4f 59 25  | .. WOX%+32,WOY%|
00002100  2b 38 36 2b 28 45 44 54  59 25 2a 32 36 30 29 2c  |+86+(EDTY%*260),|
00002110  36 34 2c 38 0d 0a be 2d  e7 20 57 4f 59 25 2b 31  |64,8...-. WOY%+1|
00002120  30 38 2b 28 45 44 54 59  25 2a 32 36 30 29 3c 28  |08+(EDTY%*260)<(|
00002130  42 4c 4b 25 21 33 32 29  20 8c 20 e5 20 8d 54 44  |BLK%!32) . . .TD|
00002140  4b 0d 0a c8 0e e3 4c 25  3d 32 20 b8 20 31 32 0d  |K.....L%=2 . 12.|
00002150  0a d2 48 f4 20 42 4c 4b  25 21 34 30 30 3d 48 41  |..H. BLK%!400=HA|
00002160  4e 44 25 28 31 32 29 3a  42 4c 4b 25 21 34 30 34  |ND%(12):BLK%!404|
00002170  3d 4c 25 2d 31 3a 53 59  53 20 22 57 69 6d 70 5f  |=L%-1:SYS "Wimp_|
00002180  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 42  |GetIconState",,B|
00002190  4c 4b 25 2b 34 30 30 0d  0a dc 43 f2 70 6c 6f 74  |LK%+400...C.plot|
000021a0  32 35 36 73 70 72 69 74  65 28 57 45 25 2c c3 4c  |256sprite(WE%,.L|
000021b0  25 2c 57 4f 58 25 2b 28  28 4c 25 2d 31 29 2a 36  |%,WOX%+((L%-1)*6|
000021c0  34 29 2b 33 32 2c 57 4f  59 25 2b 32 30 2b 28 45  |4)+32,WOY%+20+(E|
000021d0  44 54 59 25 2a 32 36 30  29 29 0d 0a e6 2e e7 20  |DTY%*260))..... |
000021e0  45 44 42 52 25 3c 3e 4c  25 20 8c 20 f2 63 6f 6c  |EDBR%<>L% . .col|
000021f0  28 30 2c 30 2c 30 29 20  8b 20 f2 63 6f 6c 28 36  |(0,0,0) . .col(6|
00002200  33 2c 31 39 32 2c 30 29  0d 0a f0 68 c8 93 20 c8  |3,192,0)...h.. .|
00002210  90 20 57 4f 58 25 2b 28  28 4c 25 2d 31 29 2a 36  |. WOX%+((L%-1)*6|
00002220  34 29 2b 33 32 2c 57 4f  59 25 2b 34 2b 28 45 44  |4)+32,WOY%+4+(ED|
00002230  54 59 25 2a 32 36 30 29  2c 36 34 2c 38 3a c8 93  |TY%*260),64,8:..|
00002240  20 c8 90 20 57 4f 58 25  2b 28 28 4c 25 2d 31 29  | .. WOX%+((L%-1)|
00002250  2a 36 34 29 2b 33 32 2c  57 4f 59 25 2b 38 36 2b  |*64)+32,WOY%+86+|
00002260  28 45 44 54 59 25 2a 32  36 30 29 2c 36 34 2c 38  |(EDTY%*260),64,8|
00002270  0d 0a fa 05 ed 0d 0b 04  2e 21 53 43 41 4c 45 25  |.........!SCALE%|
00002280  3d 28 21 53 43 41 4c 45  25 29 2a 31 32 3a 53 43  |=(!SCALE%)*12:SC|
00002290  41 4c 45 25 21 34 3d 28  53 43 41 4c 45 25 21 34  |ALE%!4=(SCALE%!4|
000022a0  29 2a 38 0d 0b 0e 2d e7  20 57 4f 59 25 2b 31 30  |)*8...-. WOY%+10|
000022b0  38 2b 28 45 44 54 59 25  2a 32 36 30 29 3e 28 42  |8+(EDTY%*260)>(B|
000022c0  4c 4b 25 21 34 30 29 20  8c 20 e5 20 8d 54 6c 4b  |LK%!40) . . .TlK|
000022d0  0d 0b 18 a3 e7 20 eb 3c  3e 31 35 20 8c 20 c8 99  |..... .<>15 . ..|
000022e0  20 22 4f 53 5f 53 70 72  69 74 65 4f 70 22 2c 33  | "OS_SpriteOp",3|
000022f0  30 38 2c 57 45 25 2c c3  45 44 42 52 25 2c 57 4f  |08,WE%,.EDBR%,WO|
00002300  58 25 2b 32 38 2c 57 4f  59 25 2b 31 31 32 2b 28  |X%+28,WOY%+112+(|
00002310  45 44 54 59 25 2a 32 36  30 29 2c 30 2c 53 43 41  |EDTY%*260),0,SCA|
00002320  4c 45 25 2c 50 49 58 54  41 42 25 20 8b 20 c8 99  |LE%,PIXTAB% . ..|
00002330  20 22 4f 53 5f 53 70 72  69 74 65 4f 70 22 2c 33  | "OS_SpriteOp",3|
00002340  30 38 2c 57 45 25 2c c3  45 44 42 52 25 2c 57 4f  |08,WE%,.EDBR%,WO|
00002350  58 25 2b 32 38 2c 57 4f  59 25 2b 31 31 32 2b 28  |X%+28,WOY%+112+(|
00002360  45 44 54 59 25 2a 32 36  30 29 2c 30 2c 53 43 41  |EDTY%*260),0,SCA|
00002370  4c 45 25 0d 0b 22 9d 45  58 25 3d 57 4f 58 25 2b  |LE%..".EX%=WOX%+|
00002380  32 38 3a 45 59 25 3d 57  4f 59 25 2b 31 31 32 2b  |28:EY%=WOY%+112+|
00002390  28 45 44 54 59 25 2a 32  36 30 29 3a f2 63 6f 6c  |(EDTY%*260):.col|
000023a0  28 32 31 2c 31 39 32 2c  30 29 3a e3 4c 25 3d 30  |(21,192,0):.L%=0|
000023b0  20 b8 20 33 32 3a 86 20  45 58 25 2b 28 4c 25 2a  | . 32:. EX%+(L%*|
000023c0  32 34 29 2c 45 59 25 2c  45 58 25 2b 28 4c 25 2a  |24),EY%,EX%+(L%*|
000023d0  32 34 29 2c 45 59 25 2b  35 31 32 3a ed 3a e3 4c  |24),EY%+512:.:.L|
000023e0  25 3d 30 20 b8 20 31 36  3a 86 20 45 58 25 2c 45  |%=0 . 16:. EX%,E|
000023f0  59 25 2b 28 4c 25 2a 33  32 29 2c 45 58 25 2b 37  |Y%+(L%*32),EX%+7|
00002400  36 38 2c 45 59 25 2b 28  4c 25 2a 33 32 29 3a ed  |68,EY%+(L%*32):.|
00002410  0d 0b 2c 8b e7 20 45 44  54 59 25 3d 31 20 8c 20  |..,.. EDTY%=1 . |
00002420  57 4f 58 25 2b 3d 33 32  3a 57 4f 59 25 2b 3d 31  |WOX%+=32:WOY%+=1|
00002430  36 3a f2 70 6c 6f 74 70  61 6c 28 4f 50 41 4c 25  |6:.plotpal(OPAL%|
00002440  29 3a f2 63 6f 6c 28 36  33 2c 31 39 32 2c 30 29  |):.col(63,192,0)|
00002450  3a c8 93 20 57 4f 58 25  2b 28 28 45 46 43 4f 4c  |:.. WOX%+((EFCOL|
00002460  25 20 83 20 33 32 29 2a  32 34 29 2c 57 4f 59 25  |% . 32)*24),WOY%|
00002470  2b 28 28 45 46 43 4f 4c  25 20 81 20 33 32 29 2a  |+((EFCOL% . 32)*|
00002480  32 38 29 2c 32 34 2c 32  38 3a 57 4f 58 25 2d 3d  |28),24,28:WOX%-=|
00002490  33 32 3a 57 4f 59 25 2d  3d 31 36 0d 0b 36 05 e1  |32:WOY%-=16..6..|
000024a0  0d 0b 40 04 0d 0b 4a 13  dd f2 66 6f 72 63 65 64  |..@...J...forced|
000024b0  72 61 77 6d 61 69 6e 0d  0b 54 12 21 42 4c 4b 25  |rawmain..T.!BLK%|
000024c0  3d 48 41 4e 44 25 28 32  29 0d 0b 5e 0c 42 4c 4b  |=HAND%(2)..^.BLK|
000024d0  25 21 34 3d 30 0d 0b 68  16 42 4c 4b 25 21 38 3d  |%!4=0..h.BLK%!8=|
000024e0  2d 31 30 32 34 2a 5a 4f  4f 4d 25 0d 0b 72 16 42  |-1024*ZOOM%..r.B|
000024f0  4c 4b 25 21 31 32 3d 31  32 38 30 2a 5a 4f 4f 4d  |LK%!12=1280*ZOOM|
00002500  25 0d 0b 7c 0d 42 4c 4b  25 21 31 36 3d 30 0d 0b  |%..|.BLK%!16=0..|
00002510  86 27 c8 99 20 22 57 69  6d 70 5f 55 70 64 61 74  |.'.. "Wimp_Updat|
00002520  65 57 69 6e 64 6f 77 22  2c 2c 42 4c 4b 25 20 b8  |eWindow",,BLK% .|
00002530  20 46 49 4e 25 0d 0b 90  18 f2 67 65 74 72 64 6f  | FIN%.....getrdo|
00002540  72 28 31 30 32 34 2a 5a  4f 4f 4d 25 29 0d 0b 9a  |r(1024*ZOOM%)...|
00002550  0b c8 95 20 46 49 4e 25  0d 0b a4 0c f2 70 6c 6f  |... FIN%.....plo|
00002560  74 70 69 63 0d 0b ae 27  c8 99 20 22 57 69 6d 70  |tpic...'.. "Wimp|
00002570  5f 47 65 74 52 65 63 74  61 6e 67 6c 65 22 2c 2c  |_GetRectangle",,|
00002580  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 0b b8 05 ce  |BLK% . FIN%.....|
00002590  0d 0b c2 05 e1 0d 0b cc  04 0d 0b d6 21 dd f2 71  |............!..q|
000025a0  75 69 63 6b 64 72 61 77  6d 61 69 6e 3a e7 20 ac  |uickdrawmain:. .|
000025b0  20 56 41 43 42 25 20 8c  20 e1 0d 0b e0 12 21 42  | VACB% . .....!B|
000025c0  4c 4b 25 3d 48 41 4e 44  25 28 32 29 0d 0b ea 12  |LK%=HAND%(2)....|
000025d0  42 4c 4b 25 21 34 3d 43  42 4d 49 4e 58 25 0d 0b  |BLK%!4=CBMINX%..|
000025e0  f4 12 42 4c 4b 25 21 38  3d 43 42 4d 49 4e 59 25  |..BLK%!8=CBMINY%|
000025f0  0d 0b fe 13 42 4c 4b 25  21 31 32 3d 43 42 4d 41  |....BLK%!12=CBMA|
00002600  58 58 25 0d 0c 08 13 42  4c 4b 25 21 31 36 3d 43  |XX%....BLK%!16=C|
00002610  42 4d 41 58 59 25 0d 0c  12 27 c8 99 20 22 57 69  |BMAXY%...'.. "Wi|
00002620  6d 70 5f 55 70 64 61 74  65 57 69 6e 64 6f 77 22  |mp_UpdateWindow"|
00002630  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 0c 1c  |,,BLK% . FIN%...|
00002640  18 f2 67 65 74 72 64 6f  72 28 31 30 32 34 2a 5a  |..getrdor(1024*Z|
00002650  4f 4f 4d 25 29 0d 0c 26  0b c8 95 20 46 49 4e 25  |OOM%)..&... FIN%|
00002660  0d 0c 30 0c f2 70 6c 6f  74 70 69 63 0d 0c 3a 27  |..0..plotpic..:'|
00002670  c8 99 20 22 57 69 6d 70  5f 47 65 74 52 65 63 74  |.. "Wimp_GetRect|
00002680  61 6e 67 6c 65 22 2c 2c  42 4c 4b 25 20 b8 20 46  |angle",,BLK% . F|
00002690  49 4e 25 0d 0c 44 05 ce  0d 0c 4e 05 e1 0d 0c 58  |IN%..D....N....X|
000026a0  04 0d 0c 62 15 dd f2 69  6e 70 69 63 3a e7 20 49  |...b...inpic:. I|
000026b0  50 25 20 8c 20 e1 0d 0c  6c 09 49 50 25 3d b9 0d  |P% . ...l.IP%=..|
000026c0  0c 76 31 c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |.v1.. "OS_Sprite|
000026d0  4f 70 22 2c 33 31 36 2c  50 49 43 25 2c 22 50 49  |Op",316,PIC%,"PI|
000026e0  43 22 20 b8 20 56 31 2c  56 32 2c 56 33 2c 56 34  |C" . V1,V2,V3,V4|
000026f0  0d 0c 80 18 c8 99 20 22  4f 53 5f 43 68 61 6e 67  |...... "OS_Chang|
00002700  65 64 42 6f 78 22 2c 32  0d 0c 8a 18 c8 99 20 22  |edBox",2...... "|
00002710  4f 53 5f 43 68 61 6e 67  65 64 42 6f 78 22 2c 31  |OS_ChangedBox",1|
00002720  0d 0c 94 38 f4 20 47 43  4f 4c 33 2c 36 33 3a 4c  |...8. GCOL3,63:L|
00002730  49 4e 45 20 33 30 30 2c  33 30 30 2c 33 32 30 2c  |INE 300,300,320,|
00002740  33 32 30 3a 4c 49 4e 45  20 33 30 30 2c 33 30 30  |320:LINE 300,300|
00002750  2c 33 32 30 2c 33 32 30  0d 0c 9e 25 ef 32 33 2c  |,320,320...%.23,|
00002760  36 3a e3 4c 25 3d 31 20  b8 20 35 3a ef 20 50 41  |6:.L%=1 . 5:. PA|
00002770  54 25 28 4c 25 29 3a ed  3a ef 20 30 7c 0d 0c a8  |T%(L%):.:. 0|...|
00002780  15 c8 99 36 2c 31 36 33  2c 32 34 32 2c 50 41 4c  |...6,163,242,PAL|
00002790  45 25 0d 0c b2 05 e1 0d  0c bc 04 0d 0c c6 3c dd  |E%............<.|
000027a0  f2 69 6e 70 69 63 52 3a  c8 99 20 22 4f 53 5f 53  |.inpicR:.. "OS_S|
000027b0  70 72 69 74 65 4f 70 22  2c 33 31 36 2c 50 49 43  |priteOp",316,PIC|
000027c0  25 2c 22 50 49 43 22 20  b8 20 42 31 2c 42 32 2c  |%,"PIC" . B1,B2,|
000027d0  42 33 2c 42 34 3a e1 0d  0c d0 04 0d 0c da 40 dd  |B3,B4:........@.|
000027e0  f2 69 6e 62 61 63 6b 75  70 3a c8 99 20 22 4f 53  |.inbackup:.. "OS|
000027f0  5f 53 70 72 69 74 65 4f  70 22 2c 33 31 36 2c 53  |_SpriteOp",316,S|
00002800  50 42 55 46 25 2c 22 50  49 43 22 20 b8 20 42 31  |PBUF%,"PIC" . B1|
00002810  2c 42 32 2c 42 33 2c 42  34 3a e1 0d 0c e4 04 0d  |,B2,B3,B4:......|
00002820  0c ee 46 dd f2 69 6e 73  70 72 69 74 65 28 6d 61  |..F..insprite(ma|
00002830  25 2c 73 61 25 2c 73 6e  24 29 3a c8 99 20 26 32  |%,sa%,sn$):.. &2|
00002840  45 2c 33 31 36 2b 6d 61  25 2c 73 61 25 2c 73 6e  |E,316+ma%,sa%,sn|
00002850  24 20 b8 20 49 53 31 2c  49 53 32 2c 49 53 33 2c  |$ . IS1,IS2,IS3,|
00002860  49 53 34 3a e1 0d 0c f8  04 0d 0d 02 28 dd f2 6f  |IS4:........(..o|
00002870  75 74 73 70 72 69 74 65  3a c8 99 20 26 32 45 2c  |utsprite:.. &2E,|
00002880  49 53 31 2c 49 53 32 2c  49 53 33 2c 49 53 34 3a  |IS1,IS2,IS3,IS4:|
00002890  e1 0d 0d 0c 04 0d 0d 16  2e dd f2 6f 75 74 62 61  |...........outba|
000028a0  63 6b 75 70 3a c8 99 20  22 4f 53 5f 53 70 72 69  |ckup:.. "OS_Spri|
000028b0  74 65 4f 70 22 2c 42 31  2c 42 32 2c 42 33 2c 42  |teOp",B1,B2,B3,B|
000028c0  34 3a e1 0d 0d 20 04 0d  0d 2a 18 dd f2 6f 75 74  |4:... ...*...out|
000028d0  70 69 63 3a e7 20 ac 20  49 50 25 20 8c 20 e1 0d  |pic:. . IP% . ..|
000028e0  0d 34 09 49 50 25 3d a3  0d 0d 3e 21 c8 99 20 22  |.4.IP%=...>!.. "|
000028f0  4f 53 5f 43 68 61 6e 67  65 64 42 6f 78 22 2c 2d  |OS_ChangedBox",-|
00002900  31 20 b8 20 2c 43 42 41  25 0d 0d 48 87 e7 20 b4  |1 . ,CBA%..H.. .|
00002910  28 43 42 41 25 21 34 29  3d 2d 31 20 84 20 b4 28  |(CBA%!4)=-1 . .(|
00002920  43 42 41 25 21 38 29 3d  2d 31 20 84 20 b4 28 43  |CBA%!8)=-1 . .(C|
00002930  42 41 25 21 31 32 29 3d  2d 31 20 84 20 b4 28 43  |BA%!12)=-1 . .(C|
00002940  42 41 25 21 31 36 29 3d  2d 31 20 8c 20 56 41 43  |BA%!16)=-1 . VAC|
00002950  42 25 3d a3 3a c8 99 20  22 4f 53 5f 43 68 61 6e  |B%=.:.. "OS_Chan|
00002960  67 65 64 42 6f 78 22 3a  c8 99 20 22 4f 53 5f 53  |gedBox":.. "OS_S|
00002970  70 72 69 74 65 4f 70 22  2c 56 31 2c 56 32 2c 56  |priteOp",V1,V2,V|
00002980  33 2c 56 34 3a e1 20 8b  20 56 41 43 42 25 3d b9  |3,V4:. . VACB%=.|
00002990  0d 0d 52 2a 43 42 4d 49  4e 58 25 3d 43 42 41 25  |..R*CBMINX%=CBA%|
000029a0  21 34 3a 43 42 4d 49 4e  58 25 3d 43 42 4d 49 4e  |!4:CBMINX%=CBMIN|
000029b0  58 25 2a 5a 4f 4f 4d 25  2a 32 0d 0d 5c 34 43 42  |X%*ZOOM%*2..\4CB|
000029c0  4d 49 4e 59 25 3d 43 42  41 25 21 38 3a 43 42 4d  |MINY%=CBA%!8:CBM|
000029d0  49 4e 59 25 3d 28 2d 31  30 32 34 2b 28 43 42 4d  |INY%=(-1024+(CBM|
000029e0  49 4e 59 25 2a 34 29 29  2a 5a 4f 4f 4d 25 0d 0d  |INY%*4))*ZOOM%..|
000029f0  66 2b 43 42 4d 41 58 58  25 3d 43 42 41 25 21 31  |f+CBMAXX%=CBA%!1|
00002a00  32 3a 43 42 4d 41 58 58  25 3d 43 42 4d 41 58 58  |2:CBMAXX%=CBMAXX|
00002a10  25 2a 5a 4f 4f 4d 25 2a  32 0d 0d 70 35 43 42 4d  |%*ZOOM%*2..p5CBM|
00002a20  41 58 59 25 3d 43 42 41  25 21 31 36 3a 43 42 4d  |AXY%=CBA%!16:CBM|
00002a30  41 58 59 25 3d 28 2d 31  30 32 34 2b 28 43 42 4d  |AXY%=(-1024+(CBM|
00002a40  41 58 59 25 2a 34 29 29  2a 5a 4f 4f 4d 25 0d 0d  |AXY%*4))*ZOOM%..|
00002a50  7a 14 43 42 4d 41 58 58  25 2b 3d 34 2a 5a 4f 4f  |z.CBMAXX%+=4*ZOO|
00002a60  4d 25 0d 0d 84 14 43 42  4d 41 58 59 25 2b 3d 34  |M%....CBMAXY%+=4|
00002a70  2a 5a 4f 4f 4d 25 0d 0d  8e 16 c8 99 20 22 4f 53  |*ZOOM%...... "OS|
00002a80  5f 43 68 61 6e 67 65 64  42 6f 78 22 0d 0d 98 20  |_ChangedBox"... |
00002a90  c8 99 20 22 4f 53 5f 53  70 72 69 74 65 4f 70 22  |.. "OS_SpriteOp"|
00002aa0  2c 56 31 2c 56 32 2c 56  33 2c 56 34 0d 0d a2 05  |,V1,V2,V3,V4....|
00002ab0  e1 0d 0d ac 04 0d 0d b6  10 dd f2 72 65 64 72 61  |...........redra|
00002ac0  77 6d 61 69 6e 0d 0d c0  10 e7 20 46 55 53 45 25  |wmain..... FUSE%|
00002ad0  3d 33 32 20 8c 0d 0d ca  1b e7 20 46 4f 4e 54 25  |=32 ...... FONT%|
00002ae0  3c 3e 30 20 80 20 45 46  4d 25 3c 3e 2d 31 20 8c  |<>0 . EFM%<>-1 .|
00002af0  0d 0d d4 6e f4 20 49 46  20 4d 4f 44 45 3c 3e 45  |...n. IF MODE<>E|
00002b00  46 4d 25 20 54 48 45 4e  20 50 52 4f 43 69 6e 70  |FM% THEN PROCinp|
00002b10  69 63 3a 53 59 53 20 22  43 6f 6c 6f 75 72 54 72  |ic:SYS "ColourTr|
00002b20  61 6e 73 5f 53 65 74 46  6f 6e 74 43 6f 6c 6f 75  |ans_SetFontColou|
00002b30  72 73 22 2c 46 48 41 4e  44 25 2c 42 50 41 4c 25  |rs",FHAND%,BPAL%|
00002b40  2c 46 50 41 4c 25 2c 31  34 3a 50 52 4f 43 6f 75  |,FPAL%,14:PROCou|
00002b50  74 70 69 63 3a 45 46 4d  25 3d 4d 4f 44 45 0d 0d  |tpic:EFM%=MODE..|
00002b60  de 05 cd 0d 0d e8 05 cd  0d 0d f2 27 c8 99 20 22  |...........'.. "|
00002b70  57 69 6d 70 5f 52 65 64  72 61 77 57 69 6e 64 6f  |Wimp_RedrawWindo|
00002b80  77 22 2c 2c 42 4c 4b 25  20 b8 20 46 49 4e 25 0d  |w",,BLK% . FIN%.|
00002b90  0d fc 18 f2 67 65 74 72  64 6f 72 28 31 30 32 34  |....getrdor(1024|
00002ba0  2a 5a 4f 4f 4d 25 29 0d  0e 06 38 c8 95 20 46 49  |*ZOOM%)...8.. FI|
00002bb0  4e 25 3a f2 70 6c 6f 74  70 69 63 3a c8 99 20 22  |N%:.plotpic:.. "|
00002bc0  57 69 6d 70 5f 47 65 74  52 65 63 74 61 6e 67 6c  |Wimp_GetRectangl|
00002bd0  65 22 2c 2c 42 4c 4b 25  20 b8 20 46 49 4e 25 0d  |e",,BLK% . FIN%.|
00002be0  0e 10 05 ce 0d 0e 1a 05  e1 0d 0e 24 04 0d 0e 2e  |...........$....|
00002bf0  0d dd f2 70 6c 6f 74 70  69 63 0d 0e 38 48 e7 20  |...plotpic..8H. |
00002c00  eb 3d 31 35 20 80 20 5a  4f 4f 4d 25 3d 31 20 8c  |.=15 . ZOOM%=1 .|
00002c10  20 c8 99 20 22 4f 53 5f  53 70 72 69 74 65 4f 70  | .. "OS_SpriteOp|
00002c20  22 2c 32 39 30 2c 50 49  43 25 2c 22 50 49 43 22  |",290,PIC%,"PIC"|
00002c30  2c 57 4f 58 25 2c 57 4f  59 25 3a f2 67 72 69 64  |,WOX%,WOY%:.grid|
00002c40  3a e1 0d 0e 42 39 e7 20  eb 3c 3e 45 53 4d 25 20  |:...B9. .<>ESM% |
00002c50  8c 20 45 53 4d 25 3d eb  3a 45 50 4d 25 3d eb 3a  |. ESM%=.:EPM%=.:|
00002c60  c8 99 26 34 30 37 34 30  2c 31 35 2c 30 2c 2d 31  |..&40740,15,0,-1|
00002c70  2c 2d 31 2c 50 49 58 54  41 42 25 0d 0e 4c 15 c8  |,-1,PIXTAB%..L..|
00002c80  99 26 33 35 2c 2d 31 2c  35 20 b8 20 2c 2c 45 25  |.&35,-1,5 . ,,E%|
00002c90  0d 0e 56 29 53 58 25 3d  32 5e 28 32 2d 45 25 29  |..V)SX%=2^(2-E%)|
00002ca0  3a 53 43 41 4c 45 25 21  34 3d 53 58 25 3a 53 43  |:SCALE%!4=SX%:SC|
00002cb0  41 4c 45 25 21 31 32 3d  31 0d 0e 60 15 c8 99 26  |ALE%!12=1..`...&|
00002cc0  33 35 2c 2d 31 2c 34 20  b8 20 2c 2c 45 25 0d 0e  |35,-1,4 . ,,E%..|
00002cd0  6a 56 e7 20 45 25 3c 31  20 8c 20 53 58 25 3d 32  |jV. E%<1 . SX%=2|
00002ce0  5e 28 31 2d 45 25 29 3a  21 53 43 41 4c 45 25 3d  |^(1-E%):!SCALE%=|
00002cf0  53 58 25 3a 53 43 41 4c  45 25 21 38 3d 31 20 8b  |SX%:SCALE%!8=1 .|
00002d00  20 53 58 25 3d 32 5e 28  45 25 2d 31 29 3a 21 53  | SX%=2^(E%-1):!S|
00002d10  43 41 4c 45 25 3d 31 3a  53 43 41 4c 45 25 21 38  |CALE%=1:SCALE%!8|
00002d20  3d 53 58 25 0d 0e 74 35  21 53 43 41 4c 45 25 3d  |=SX%..t5!SCALE%=|
00002d30  28 21 53 43 41 4c 45 25  29 2a 5a 4f 4f 4d 25 3a  |(!SCALE%)*ZOOM%:|
00002d40  53 43 41 4c 45 25 21 34  3d 28 53 43 41 4c 45 25  |SCALE%!4=(SCALE%|
00002d50  21 34 29 2a 5a 4f 4f 4d  25 0d 0e 7e 2a e7 20 eb  |!4)*ZOOM%..~*. .|
00002d60  3d 31 35 20 8c 20 54 50  49 58 54 41 42 25 3d 30  |=15 . TPIXTAB%=0|
00002d70  20 8b 20 54 50 49 58 54  41 42 25 3d 50 49 58 54  | . TPIXTAB%=PIXT|
00002d80  41 42 25 0d 0e 88 47 c8  99 20 22 4f 53 5f 53 70  |AB%...G.. "OS_Sp|
00002d90  72 69 74 65 4f 70 22 2c  33 30 38 2c 50 49 43 25  |riteOp",308,PIC%|
00002da0  2c 22 50 49 43 22 2c 57  4f 58 25 2c 57 4f 59 25  |,"PIC",WOX%,WOY%|
00002db0  2c 30 2c 53 43 41 4c 45  25 2c 54 50 49 58 54 41  |,0,SCALE%,TPIXTA|
00002dc0  42 25 3a f2 67 72 69 64  3a e1 0d 0e 92 04 0d 0e  |B%:.grid:.......|
00002dd0  9c 0a dd f2 67 72 69 64  0d 0e a6 3e e7 20 47 52  |....grid...>. GR|
00002de0  43 4f 25 3d 2d 31 20 84  20 28 32 2a 47 52 49 57  |CO%=-1 . (2*GRIW|
00002df0  49 25 2a 5a 4f 4f 4d 25  29 3c 31 36 20 84 20 28  |I%*ZOOM%)<16 . (|
00002e00  34 2a 47 52 49 48 45 25  2a 5a 4f 4f 4d 25 29 3c  |4*GRIHE%*ZOOM%)<|
00002e10  31 36 20 8c 20 e1 0d 0e  b0 0c f2 67 72 69 64 63  |16 . ......gridc|
00002e20  6f 6c 0d 0e ba 0b ea 20  58 25 2c 59 25 0d 0e c4  |ol..... X%,Y%...|
00002e30  3f 58 25 3d 28 28 28 42  4c 4b 25 21 32 38 29 2d  |?X%=(((BLK%!28)-|
00002e40  57 4f 58 25 29 20 81 20  28 5a 4f 4f 4d 25 2a 28  |WOX%) . (ZOOM%*(|
00002e50  32 2a 47 52 49 57 49 25  29 29 29 2a 28 32 2a 47  |2*GRIWI%)))*(2*G|
00002e60  52 49 57 49 25 2a 5a 4f  4f 4d 25 29 0d 0e ce 3f  |RIWI%*ZOOM%)...?|
00002e70  59 25 3d 28 28 28 42 4c  4b 25 21 33 32 29 2d 57  |Y%=(((BLK%!32)-W|
00002e80  4f 59 25 29 20 81 20 28  5a 4f 4f 4d 25 2a 28 34  |OY%) . (ZOOM%*(4|
00002e90  2a 47 52 49 48 45 25 29  29 29 2a 28 34 2a 47 52  |*GRIHE%)))*(4*GR|
00002ea0  49 48 45 25 2a 5a 4f 4f  4d 25 29 0d 0e d8 1f 58  |IHE%*ZOOM%)....X|
00002eb0  4f 46 25 3d 28 47 52 49  57 49 25 2d 47 52 42 58  |OF%=(GRIWI%-GRBX|
00002ec0  25 29 2a 32 2a 5a 4f 4f  4d 25 0d 0e e2 1f 59 4f  |%)*2*ZOOM%....YO|
00002ed0  46 25 3d 28 47 52 49 48  45 25 2d 47 52 42 59 25  |F%=(GRIHE%-GRBY%|
00002ee0  29 2a 34 2a 5a 4f 4f 4d  25 0d 0e ec 11 58 25 2b  |)*4*ZOOM%....X%+|
00002ef0  3d 57 4f 58 25 2d 58 4f  46 25 0d 0e f6 11 59 25  |=WOX%-XOF%....Y%|
00002f00  2b 3d 57 4f 59 25 2d 59  4f 46 25 0d 0f 00 45 f5  |+=WOY%-YOF%...E.|
00002f10  3a 86 20 58 25 2c 28 42  4c 4b 25 21 33 32 29 2c  |:. X%,(BLK%!32),|
00002f20  58 25 2c 28 42 4c 4b 25  21 34 30 29 3a 58 25 2b  |X%,(BLK%!40):X%+|
00002f30  3d 28 32 2a 47 52 49 57  49 25 2a 5a 4f 4f 4d 25  |=(2*GRIWI%*ZOOM%|
00002f40  29 3a fd 20 58 25 3e 28  42 4c 4b 25 21 33 36 29  |):. X%>(BLK%!36)|
00002f50  0d 0f 0a 45 f5 3a 86 20  28 42 4c 4b 25 21 32 38  |...E.:. (BLK%!28|
00002f60  29 2c 59 25 2c 28 42 4c  4b 25 21 33 36 29 2c 59  |),Y%,(BLK%!36),Y|
00002f70  25 3a 59 25 2b 3d 28 34  2a 47 52 49 48 45 25 2a  |%:Y%+=(4*GRIHE%*|
00002f80  5a 4f 4f 4d 25 29 3a fd  20 59 25 3e 28 42 4c 4b  |ZOOM%):. Y%>(BLK|
00002f90  25 21 34 30 29 0d 0f 14  05 e1 0d 0f 1e 04 0d 0f  |%!40)...........|
00002fa0  28 13 dd f2 70 6c 6f 74  70 61 6c 28 50 54 55 25  |(...plotpal(PTU%|
00002fb0  29 0d 0f 32 12 f2 63 6f  6c 28 36 33 2c 31 39 32  |)..2..col(63,192|
00002fc0  2c 30 29 0d 0f 3c 14 e7  20 eb 3c 3e 31 35 20 8c  |,0)..<.. .<>15 .|
00002fd0  20 e5 20 8d 44 5a 4f 0d  0f 46 74 c8 99 20 22 4f  | . .DZO..Ft.. "O|
00002fe0  53 5f 53 70 72 69 74 65  4f 70 22 2c 32 39 30 2c  |S_SpriteOp",290,|
00002ff0  50 54 55 25 2c 22 50 61  6c 65 74 74 65 22 2c 57  |PTU%,"Palette",W|
00003000  4f 58 25 2c 57 4f 59 25  3a e7 20 50 54 55 25 3d  |OX%,WOY%:. PTU%=|
00003010  50 41 4c 25 20 8c 20 c8  93 20 57 4f 58 25 2b 28  |PAL% . .. WOX%+(|
00003020  28 43 4f 4c 25 20 83 20  33 32 29 2a 32 34 29 2c  |(COL% . 32)*24),|
00003030  57 4f 59 25 2b 28 28 43  4f 4c 25 20 81 20 33 32  |WOY%+((COL% . 32|
00003040  29 2a 32 38 29 2c 32 34  2c 32 38 0d 0f 50 05 e1  |)*28),24,28..P..|
00003050  0d 0f 5a 39 e7 20 eb 3c  3e 45 50 4d 25 20 8c 20  |..Z9. .<>EPM% . |
00003060  45 53 4d 25 3d eb 3a 45  50 4d 25 3d eb 3a c8 99  |ESM%=.:EPM%=.:..|
00003070  26 34 30 37 34 30 2c 31  35 2c 30 2c 2d 31 2c 2d  |&40740,15,0,-1,-|
00003080  31 2c 50 49 58 54 41 42  25 0d 0f 64 15 c8 99 26  |1,PIXTAB%..d...&|
00003090  33 35 2c 2d 31 2c 35 20  b8 20 2c 2c 45 25 0d 0f  |35,-1,5 . ,,E%..|
000030a0  6e 29 53 58 25 3d 32 5e  28 32 2d 45 25 29 3a 53  |n)SX%=2^(2-E%):S|
000030b0  43 41 4c 45 25 21 34 3d  53 58 25 3a 53 43 41 4c  |CALE%!4=SX%:SCAL|
000030c0  45 25 21 31 32 3d 31 0d  0f 78 15 c8 99 26 33 35  |E%!12=1..x...&35|
000030d0  2c 2d 31 2c 34 20 b8 20  2c 2c 45 25 0d 0f 82 56  |,-1,4 . ,,E%...V|
000030e0  e7 20 45 25 3c 31 20 8c  20 53 58 25 3d 32 5e 28  |. E%<1 . SX%=2^(|
000030f0  31 2d 45 25 29 3a 21 53  43 41 4c 45 25 3d 53 58  |1-E%):!SCALE%=SX|
00003100  25 3a 53 43 41 4c 45 25  21 38 3d 31 20 8b 20 53  |%:SCALE%!8=1 . S|
00003110  58 25 3d 32 5e 28 45 25  2d 31 29 3a 21 53 43 41  |X%=2^(E%-1):!SCA|
00003120  4c 45 25 3d 31 3a 53 43  41 4c 45 25 21 38 3d 53  |LE%=1:SCALE%!8=S|
00003130  58 25 0d 0f 8c 42 c8 99  20 22 4f 53 5f 53 70 72  |X%...B.. "OS_Spr|
00003140  69 74 65 4f 70 22 2c 33  30 38 2c 50 54 55 25 2c  |iteOp",308,PTU%,|
00003150  22 50 61 6c 65 74 74 65  22 2c 57 4f 58 25 2c 57  |"Palette",WOX%,W|
00003160  4f 59 25 2c 30 2c 53 43  41 4c 45 25 2c 50 49 58  |OY%,0,SCALE%,PIX|
00003170  54 41 42 25 0d 0f 96 46  e7 20 50 54 55 25 3d 50  |TAB%...F. PTU%=P|
00003180  41 4c 25 20 8c 20 c8 93  20 57 4f 58 25 2b 28 28  |AL% . .. WOX%+((|
00003190  43 4f 4c 25 20 83 20 33  32 29 2a 32 34 29 2c 57  |COL% . 32)*24),W|
000031a0  4f 59 25 2b 28 28 43 4f  4c 25 20 81 20 33 32 29  |OY%+((COL% . 32)|
000031b0  2a 32 38 29 2c 32 34 2c  32 38 0d 0f a0 05 e1 0d  |*28),24,28......|
000031c0  0f aa 04 0d 0f b4 3f dd  f2 69 6e 70 61 6c 3a c8  |......?..inpal:.|
000031d0  99 20 22 4f 53 5f 53 70  72 69 74 65 4f 70 22 2c  |. "OS_SpriteOp",|
000031e0  33 31 36 2c 50 41 4c 25  2c 22 50 61 6c 65 74 74  |316,PAL%,"Palett|
000031f0  65 22 20 b8 20 56 31 2c  56 32 2c 56 33 2c 56 34  |e" . V1,V2,V3,V4|
00003200  3a e1 0d 0f be 04 0d 0f  c8 2b dd f2 6f 75 74 70  |:........+..outp|
00003210  61 6c 3a c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |al:.. "OS_Sprite|
00003220  4f 70 22 2c 56 31 2c 56  32 2c 56 33 2c 56 34 3a  |Op",V1,V2,V3,V4:|
00003230  e1 0d 0f d2 04 0d 0f dc  10 dd f2 74 72 61 73 70  |...........trasp|
00003240  28 54 43 25 29 0d 0f e6  1f f2 69 6e 70 61 6c 3a  |(TC%).....inpal:|
00003250  f2 74 72 61 73 70 32 28  54 43 25 29 3a f2 6f 75  |.trasp2(TC%):.ou|
00003260  74 70 61 6c 0d 0f f0 05  e1 0d 0f fa 04 0d 10 04  |tpal............|
00003270  11 dd f2 74 72 61 73 70  32 28 54 43 25 29 0d 10  |...trasp2(TC%)..|
00003280  0e 1f 54 52 41 53 50 25  3f 54 43 25 3d 28 54 52  |..TRASP%?TC%=(TR|
00003290  41 53 50 25 3f 54 43 25  29 20 82 20 31 0d 10 18  |ASP%?TC%) . 1...|
000032a0  2b 54 58 25 3d 28 28 54  43 25 20 83 20 33 32 29  |+TX%=((TC% . 32)|
000032b0  2a 32 34 29 3a 54 59 25  3d 28 28 54 43 25 20 81  |*24):TY%=((TC% .|
000032c0  20 33 32 29 2a 32 38 29  0d 10 22 83 f4 20 49 46  | 32)*28)..".. IF|
000032d0  20 28 54 52 41 53 50 25  3f 54 43 25 29 3d 30 20  | (TRASP%?TC%)=0 |
000032e0  54 48 45 4e 20 47 43 4f  4c 30 2c 50 41 4c 54 41  |THEN GCOL0,PALTA|
000032f0  42 25 3f 28 54 43 25 2a  32 29 20 54 49 4e 54 20  |B%?(TC%*2) TINT |
00003300  50 41 4c 54 41 42 25 3f  28 28 54 43 25 2a 32 29  |PALTAB%?((TC%*2)|
00003310  2b 31 29 20 45 4c 53 45  20 50 52 4f 43 61 6e 74  |+1) ELSE PROCant|
00003320  69 63 6f 6c 28 50 41 4c  54 41 42 25 3f 28 54 43  |icol(PALTAB%?(TC|
00003330  25 2a 32 29 2c 50 41 4c  54 41 42 25 3f 28 28 54  |%*2),PALTAB%?((T|
00003340  43 25 2a 32 29 2b 31 29  2c 30 29 0d 10 2c 71 e7  |C%*2)+1),0)..,q.|
00003350  20 28 54 52 41 53 50 25  3f 54 43 25 29 3d 30 20  | (TRASP%?TC%)=0 |
00003360  8c 20 e6 30 2c 50 41 4c  54 41 42 25 3f 28 54 43  |. .0,PALTAB%?(TC|
00003370  25 2a 32 29 20 c8 9c 20  50 41 4c 54 41 42 25 3f  |%*2) .. PALTAB%?|
00003380  28 28 54 43 25 2a 32 29  2b 31 29 20 8b 20 e6 30  |((TC%*2)+1) . .0|
00003390  2c 36 33 2d 28 50 41 4c  54 41 42 25 3f 28 54 43  |,63-(PALTAB%?(TC|
000033a0  25 2a 32 29 29 20 c8 9c  20 50 41 4c 54 41 42 25  |%*2)) .. PALTAB%|
000033b0  3f 28 28 54 43 25 2a 32  29 2b 31 29 0d 10 36 3d  |?((TC%*2)+1)..6=|
000033c0  86 20 54 58 25 2b 36 2c  54 59 25 2b 32 30 2c 54  |. TX%+6,TY%+20,T|
000033d0  58 25 2b 31 38 2c 54 59  25 2b 32 30 3a 86 20 54  |X%+18,TY%+20:. T|
000033e0  58 25 2b 31 32 2c 54 59  25 2b 38 2c 54 58 25 2b  |X%+12,TY%+8,TX%+|
000033f0  31 32 2c 54 59 25 2b 32  30 0d 10 40 05 e1 0d 10  |12,TY%+20..@....|
00003400  4a 04 0d 10 54 0f dd f2  72 65 64 72 61 77 70 61  |J...T...redrawpa|
00003410  6c 0d 10 5e 27 c8 99 20  22 57 69 6d 70 5f 52 65  |l..^'.. "Wimp_Re|
00003420  64 72 61 77 57 69 6e 64  6f 77 22 2c 2c 42 4c 4b  |drawWindow",,BLK|
00003430  25 20 b8 20 46 49 4e 25  0d 10 68 11 f2 67 65 74  |% . FIN%..h..get|
00003440  72 64 6f 72 28 32 32 38  29 0d 10 72 3e c8 95 20  |rdor(228)..r>.. |
00003450  46 49 4e 25 3a f2 70 6c  6f 74 70 61 6c 28 50 41  |FIN%:.plotpal(PA|
00003460  4c 25 29 3a c8 99 20 22  57 69 6d 70 5f 47 65 74  |L%):.. "Wimp_Get|
00003470  52 65 63 74 61 6e 67 6c  65 22 2c 2c 42 4c 4b 25  |Rectangle",,BLK%|
00003480  20 b8 20 46 49 4e 25 0d  10 7c 05 ce 0d 10 86 05  | . FIN%..|......|
00003490  e1 0d 10 90 04 0d 10 9a  11 dd f2 72 65 64 72 61  |...........redra|
000034a0  77 74 62 61 63 6b 0d 10  a4 27 c8 99 20 22 57 69  |wtback...'.. "Wi|
000034b0  6d 70 5f 52 65 64 72 61  77 57 69 6e 64 6f 77 22  |mp_RedrawWindow"|
000034c0  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 10 ae  |,,BLK% . FIN%...|
000034d0  11 f2 67 65 74 72 64 6f  72 28 32 32 38 29 0d 10  |..getrdor(228)..|
000034e0  b8 1b c8 95 20 46 49 4e  25 3a f2 70 6c 6f 74 70  |.... FIN%:.plotp|
000034f0  61 6c 28 4f 50 41 4c 25  29 0d 10 c2 4b f2 63 6f  |al(OPAL%)...K.co|
00003500  6c 28 36 33 2c 31 39 32  2c 30 29 3a c8 93 20 57  |l(63,192,0):.. W|
00003510  4f 58 25 2b 28 28 46 4f  4e 54 42 25 20 83 20 33  |OX%+((FONTB% . 3|
00003520  32 29 2a 32 34 29 2c 57  4f 59 25 2b 28 28 46 4f  |2)*24),WOY%+((FO|
00003530  4e 54 42 25 20 81 20 33  32 29 2a 32 38 29 2c 32  |NTB% . 32)*28),2|
00003540  34 2c 32 38 0d 10 cc 27  c8 99 20 22 57 69 6d 70  |4,28...'.. "Wimp|
00003550  5f 47 65 74 52 65 63 74  61 6e 67 6c 65 22 2c 2c  |_GetRectangle",,|
00003560  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 10 d6 05 ce  |BLK% . FIN%.....|
00003570  0d 10 e0 05 e1 0d 10 ea  04 0d 10 f4 12 dd f2 72  |...............r|
00003580  65 64 72 61 77 63 6f 6c  72 65 70 0d 10 fe 27 c8  |edrawcolrep...'.|
00003590  99 20 22 57 69 6d 70 5f  52 65 64 72 61 77 57 69  |. "Wimp_RedrawWi|
000035a0  6e 64 6f 77 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ndow",,BLK% . FI|
000035b0  4e 25 0d 11 08 11 f2 67  65 74 72 64 6f 72 28 35  |N%.....getrdor(5|
000035c0  35 36 29 0d 11 12 5e c8  95 20 46 49 4e 25 3a 57  |56)...^.. FIN%:W|
000035d0  4f 59 25 2b 3d 32 39 30  3a f2 70 6c 6f 74 70 61  |OY%+=290:.plotpa|
000035e0  6c 28 53 50 42 55 46 25  29 3a f2 63 6f 6c 28 30  |l(SPBUF%):.col(0|
000035f0  2c 30 2c 30 29 3a 86 20  57 4f 58 25 2c 57 4f 59  |,0,0):. WOX%,WOY|
00003600  25 2b 32 32 34 2c 57 4f  58 25 2b 37 37 30 2c 57  |%+224,WOX%+770,W|
00003610  4f 59 25 2b 32 32 34 3a  57 4f 59 25 2d 3d 32 39  |OY%+224:WOY%-=29|
00003620  30 0d 11 1c 41 f2 70 6c  6f 74 70 61 6c 28 4f 50  |0...A.plotpal(OP|
00003630  41 4c 25 29 3a f2 63 6f  6c 28 30 2c 30 2c 30 29  |AL%):.col(0,0,0)|
00003640  3a 86 20 57 4f 58 25 2c  57 4f 59 25 2b 32 32 34  |:. WOX%,WOY%+224|
00003650  2c 57 4f 58 25 2b 37 37  30 2c 57 4f 59 25 2b 32  |,WOX%+770,WOY%+2|
00003660  32 34 0d 11 26 4d f2 63  6f 6c 28 36 33 2c 31 39  |24..&M.col(63,19|
00003670  32 2c 30 29 3a c8 93 20  57 4f 58 25 2b 28 28 53  |2,0):.. WOX%+((S|
00003680  52 45 50 25 20 83 20 33  32 29 2a 32 34 29 2c 57  |REP% . 32)*24),W|
00003690  4f 59 25 2b 32 39 30 2b  28 28 53 52 45 50 25 20  |OY%+290+((SREP% |
000036a0  81 20 33 32 29 2a 32 38  29 2c 32 34 2c 32 38 0d  |. 32)*28),24,28.|
000036b0  11 30 27 c8 99 20 22 57  69 6d 70 5f 47 65 74 52  |.0'.. "Wimp_GetR|
000036c0  65 63 74 61 6e 67 6c 65  22 2c 2c 42 4c 4b 25 20  |ectangle",,BLK% |
000036d0  b8 20 46 49 4e 25 0d 11  3a 05 ce 0d 11 44 05 e1  |. FIN%..:....D..|
000036e0  0d 11 4e 04 0d 11 58 15  dd f2 66 6f 72 63 65 64  |..N...X...forced|
000036f0  72 61 77 63 6f 6c 72 65  70 0d 11 62 13 21 42 4c  |rawcolrep..b.!BL|
00003700  4b 25 3d 48 41 4e 44 25  28 31 38 29 0d 11 6c 0c  |K%=HAND%(18)..l.|
00003710  42 4c 4b 25 21 34 3d 30  0d 11 76 0f 42 4c 4b 25  |BLK%!4=0..v.BLK%|
00003720  21 38 3d 2d 35 35 36 0d  11 80 0f 42 4c 4b 25 21  |!8=-556....BLK%!|
00003730  31 32 3d 37 37 30 0d 11  8a 0d 42 4c 4b 25 21 31  |12=770....BLK%!1|
00003740  36 3d 30 0d 11 94 27 c8  99 20 22 57 69 6d 70 5f  |6=0...'.. "Wimp_|
00003750  55 70 64 61 74 65 57 69  6e 64 6f 77 22 2c 2c 42  |UpdateWindow",,B|
00003760  4c 4b 25 20 b8 20 46 49  4e 25 0d 11 9e 11 f2 67  |LK% . FIN%.....g|
00003770  65 74 72 64 6f 72 28 35  35 36 29 0d 11 a8 0b c8  |etrdor(556).....|
00003780  95 20 46 49 4e 25 0d 11  b2 56 57 4f 59 25 2b 3d  |. FIN%...VWOY%+=|
00003790  32 39 30 3a f2 70 6c 6f  74 70 61 6c 28 53 50 42  |290:.plotpal(SPB|
000037a0  55 46 25 29 3a f2 63 6f  6c 28 30 2c 30 2c 30 29  |UF%):.col(0,0,0)|
000037b0  3a 86 20 57 4f 58 25 2c  57 4f 59 25 2b 32 32 34  |:. WOX%,WOY%+224|
000037c0  2c 57 4f 58 25 2b 37 37  30 2c 57 4f 59 25 2b 32  |,WOX%+770,WOY%+2|
000037d0  32 34 3a 57 4f 59 25 2d  3d 32 39 30 0d 11 bc 41  |24:WOY%-=290...A|
000037e0  f2 70 6c 6f 74 70 61 6c  28 4f 50 41 4c 25 29 3a  |.plotpal(OPAL%):|
000037f0  f2 63 6f 6c 28 30 2c 30  2c 30 29 3a 86 20 57 4f  |.col(0,0,0):. WO|
00003800  58 25 2c 57 4f 59 25 2b  32 32 34 2c 57 4f 58 25  |X%,WOY%+224,WOX%|
00003810  2b 37 37 30 2c 57 4f 59  25 2b 32 32 34 0d 11 c6  |+770,WOY%+224...|
00003820  4d f2 63 6f 6c 28 36 33  2c 31 39 32 2c 30 29 3a  |M.col(63,192,0):|
00003830  c8 93 20 57 4f 58 25 2b  28 28 53 52 45 50 25 20  |.. WOX%+((SREP% |
00003840  83 20 33 32 29 2a 32 34  29 2c 57 4f 59 25 2b 32  |. 32)*24),WOY%+2|
00003850  39 30 2b 28 28 53 52 45  50 25 20 81 20 33 32 29  |90+((SREP% . 32)|
00003860  2a 32 38 29 2c 32 34 2c  32 38 0d 11 d0 27 c8 99  |*28),24,28...'..|
00003870  20 22 57 69 6d 70 5f 47  65 74 52 65 63 74 61 6e  | "Wimp_GetRectan|
00003880  67 6c 65 22 2c 2c 42 4c  4b 25 20 b8 20 46 49 4e  |gle",,BLK% . FIN|
00003890  25 0d 11 da 05 ce 0d 11  e4 05 e1 0d 11 ee 04 0d  |%...............|
000038a0  11 f8 0a dd a4 63 65 63  66 0d 12 02 17 e7 20 a4  |.....cecf..... .|
000038b0  68 69 67 68 28 31 31 2c  32 36 29 20 8c 20 3d 31  |high(11,26) . =1|
000038c0  0d 12 0c 17 e7 20 a4 68  69 67 68 28 31 31 2c 32  |..... .high(11,2|
000038d0  38 29 20 8c 20 3d 32 0d  12 16 17 e7 20 a4 68 69  |8) . =2..... .hi|
000038e0  67 68 28 31 31 2c 33 30  29 20 8c 20 3d 33 0d 12  |gh(11,30) . =3..|
000038f0  20 17 e7 20 a4 68 69 67  68 28 31 31 2c 33 32 29  | .. .high(11,32)|
00003900  20 8c 20 3d 34 0d 12 2a  06 3d 30 0d 12 34 04 0d  | . =4..*.=0..4..|
00003910  12 3e 0f dd f2 72 65 64  72 61 77 70 61 74 0d 12  |.>...redrawpat..|
00003920  48 27 c8 99 20 22 57 69  6d 70 5f 52 65 64 72 61  |H'.. "Wimp_Redra|
00003930  77 57 69 6e 64 6f 77 22  2c 2c 42 4c 4b 25 20 b8  |wWindow",,BLK% .|
00003940  20 46 49 4e 25 0d 12 52  0d f2 67 65 74 70 61 74  | FIN%..R..getpat|
00003950  6f 72 0d 12 5c 49 c8 95  20 46 49 4e 25 3a f2 70  |or..\I.. FIN%:.p|
00003960  6c 6f 74 70 61 6c 28 4f  50 41 4c 25 29 3a f2 63  |lotpal(OPAL%):.c|
00003970  6f 6c 28 30 2c 30 2c 30  29 3a 86 20 57 4f 58 25  |ol(0,0,0):. WOX%|
00003980  2c 57 4f 59 25 2b 32 32  34 2c 57 4f 58 25 2b 37  |,WOY%+224,WOX%+7|
00003990  37 30 2c 57 4f 59 25 2b  32 32 34 0d 12 66 2d 43  |70,WOY%+224..f-C|
000039a0  45 43 46 25 3d a4 63 65  63 66 3a e3 4b 25 3d 30  |ECF%=.cecf:.K%=0|
000039b0  20 b8 20 37 3a 4c 25 3d  45 43 46 25 28 4b 25 2b  | . 7:L%=ECF%(K%+|
000039c0  31 2c 43 45 43 46 25 29  0d 12 70 63 50 45 25 3d  |1,CECF%)..pcPE%=|
000039d0  42 54 43 25 3f 4c 25 3a  f2 63 6f 6c 28 50 41 4c  |BTC%?L%:.col(PAL|
000039e0  54 41 42 25 3f 28 50 45  25 2a 32 29 2c 50 41 4c  |TAB%?(PE%*2),PAL|
000039f0  54 41 42 25 3f 28 28 50  45 25 2a 32 29 2b 31 29  |TAB%?((PE%*2)+1)|
00003a00  2c 30 29 3a c8 93 20 c8  90 20 57 4f 58 25 2d 31  |,0):.. .. WOX%-1|
00003a10  34 36 2c 28 57 4f 59 25  2b 32 37 36 29 2d 28 4b  |46,(WOY%+276)-(K|
00003a20  25 2a 34 30 29 2c 33 38  2c 33 36 0d 12 7a 05 ed  |%*40),38,36..z..|
00003a30  0d 12 84 27 c8 99 20 22  57 69 6d 70 5f 47 65 74  |...'.. "Wimp_Get|
00003a40  52 65 63 74 61 6e 67 6c  65 22 2c 2c 42 4c 4b 25  |Rectangle",,BLK%|
00003a50  20 b8 20 46 49 4e 25 0d  12 8e 05 ce 0d 12 98 05  | . FIN%.........|
00003a60  e1 0d 12 a2 04 0d 12 ac  0e dd a4 67 72 61 66 69  |...........grafi|
00003a70  6c 6e 6f 0d 12 b6 17 e7  20 a4 68 69 67 68 28 31  |lno..... .high(1|
00003a80  33 2c 39 35 29 20 8c 20  3d 30 0d 12 c0 17 e7 20  |3,95) . =0..... |
00003a90  a4 68 69 67 68 28 31 33  2c 39 39 29 20 8c 20 3d  |.high(13,99) . =|
00003aa0  31 0d 12 ca 18 e7 20 a4  68 69 67 68 28 31 33 2c  |1..... .high(13,|
00003ab0  31 30 31 29 20 8c 20 3d  32 0d 12 d4 18 e7 20 a4  |101) . =2..... .|
00003ac0  68 69 67 68 28 31 33 2c  31 30 33 29 20 8c 20 3d  |high(13,103) . =|
00003ad0  33 0d 12 de 17 e7 20 a4  68 69 67 68 28 31 33 2c  |3..... .high(13,|
00003ae0  39 37 29 20 8c 20 3d 34  0d 12 e8 07 3d 2d 31 0d  |97) . =4....=-1.|
00003af0  12 f2 04 0d 12 fc 10 dd  f2 72 65 64 72 61 77 66  |.........redrawf|
00003b00  69 6c 6c 0d 13 06 27 c8  99 20 22 57 69 6d 70 5f  |ill...'.. "Wimp_|
00003b10  52 65 64 72 61 77 57 69  6e 64 6f 77 22 2c 2c 42  |RedrawWindow",,B|
00003b20  4c 4b 25 20 b8 20 46 49  4e 25 0d 13 10 11 f2 67  |LK% . FIN%.....g|
00003b30  65 74 72 64 6f 72 28 34  38 34 29 0d 13 1a 71 c8  |etrdor(484)...q.|
00003b40  95 20 46 49 4e 25 3a 57  4f 59 25 2b 3d 32 33 36  |. FIN%:WOY%+=236|
00003b50  3a 57 4f 58 25 2b 3d 34  32 32 3a f2 70 6c 6f 74  |:WOX%+=422:.plot|
00003b60  70 61 6c 28 4f 50 41 4c  25 29 3a f2 63 6f 6c 28  |pal(OPAL%):.col(|
00003b70  30 2c 30 2c 30 29 3a 86  20 57 4f 58 25 2c 57 4f  |0,0,0):. WOX%,WO|
00003b80  59 25 2b 32 32 34 2c 57  4f 58 25 2b 37 37 30 2c  |Y%+224,WOX%+770,|
00003b90  57 4f 59 25 2b 32 32 34  3a 57 4f 58 25 2d 3d 31  |WOY%+224:WOX%-=1|
00003ba0  34 30 3a 57 4f 59 25 2d  3d 31 34 30 0d 13 24 78  |40:WOY%-=140..$x|
00003bb0  46 49 58 25 3d 57 4f 58  25 2b 32 30 30 3a 47 52  |FIX%=WOX%+200:GR|
00003bc0  46 49 4e 25 3d a4 67 72  61 66 69 6c 6e 6f 3a e3  |FIN%=.grafilno:.|
00003bd0  4c 25 3d 30 20 b8 20 31  35 3a e7 20 47 52 46 49  |L%=0 . 15:. GRFI|
00003be0  4e 25 3c 3e 2d 31 20 8c  20 f2 63 6f 6c 28 47 52  |N%<>-1 . .col(GR|
00003bf0  46 49 25 28 4c 25 2c 30  2c 47 52 46 49 4e 25 29  |FI%(L%,0,GRFIN%)|
00003c00  2c 47 52 46 49 25 28 4c  25 2c 31 2c 47 52 46 49  |,GRFI%(L%,1,GRFI|
00003c10  4e 25 29 2c 30 29 20 8b  20 f2 63 6f 6c 28 30 2c  |N%),0) . .col(0,|
00003c20  30 2c 30 29 0d 13 2e 27  c8 93 20 c8 90 20 46 49  |0,0)...'.. .. FI|
00003c30  58 25 2c 57 4f 59 25 2d  32 38 2c 34 32 2c 33 32  |X%,WOY%-28,42,32|
00003c40  3a 46 49 58 25 2b 3d 34  34 3a ed 0d 13 38 3a 57  |:FIX%+=44:...8:W|
00003c50  4f 58 25 2d 3d 32 38 32  3a 57 4f 59 25 2d 3d 39  |OX%-=282:WOY%-=9|
00003c60  36 3a c8 99 20 22 57 69  6d 70 5f 47 65 74 52 65  |6:.. "Wimp_GetRe|
00003c70  63 74 61 6e 67 6c 65 22  2c 2c 42 4c 4b 25 20 b8  |ctangle",,BLK% .|
00003c80  20 46 49 4e 25 0d 13 42  05 ce 0d 13 4c 05 e1 0d  | FIN%..B....L...|
00003c90  13 56 04 0d 13 60 13 dd  f2 66 6f 72 63 65 64 72  |.V...`...forcedr|
00003ca0  61 77 66 69 6c 6c 0d 13  6a 13 21 42 4c 4b 25 3d  |awfill..j.!BLK%=|
00003cb0  48 41 4e 44 25 28 31 33  29 0d 13 74 0c 42 4c 4b  |HAND%(13)..t.BLK|
00003cc0  25 21 34 3d 30 0d 13 7e  0f 42 4c 4b 25 21 38 3d  |%!4=0..~.BLK%!8=|
00003cd0  2d 35 30 30 0d 13 88 10  42 4c 4b 25 21 31 32 3d  |-500....BLK%!12=|
00003ce0  31 32 30 30 0d 13 92 10  42 4c 4b 25 21 31 36 3d  |1200....BLK%!16=|
00003cf0  2d 33 36 30 0d 13 9c 27  c8 99 20 22 57 69 6d 70  |-360...'.. "Wimp|
00003d00  5f 55 70 64 61 74 65 57  69 6e 64 6f 77 22 2c 2c  |_UpdateWindow",,|
00003d10  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 13 a6 11 f2  |BLK% . FIN%.....|
00003d20  67 65 74 72 64 6f 72 28  34 38 34 29 0d 13 b0 0b  |getrdor(484)....|
00003d30  c8 95 20 46 49 4e 25 0d  13 ba 78 46 49 58 25 3d  |.. FIN%...xFIX%=|
00003d40  57 4f 58 25 2b 34 38 32  3a 47 52 46 49 4e 25 3d  |WOX%+482:GRFIN%=|
00003d50  a4 67 72 61 66 69 6c 6e  6f 3a e3 4c 25 3d 30 20  |.grafilno:.L%=0 |
00003d60  b8 20 31 35 3a e7 20 47  52 46 49 4e 25 3c 3e 2d  |. 15:. GRFIN%<>-|
00003d70  31 20 8c 20 f2 63 6f 6c  28 47 52 46 49 25 28 4c  |1 . .col(GRFI%(L|
00003d80  25 2c 30 2c 47 52 46 49  4e 25 29 2c 47 52 46 49  |%,0,GRFIN%),GRFI|
00003d90  25 28 4c 25 2c 31 2c 47  52 46 49 4e 25 29 2c 30  |%(L%,1,GRFIN%),0|
00003da0  29 20 8b 20 f2 63 6f 6c  28 30 2c 30 2c 30 29 0d  |) . .col(0,0,0).|
00003db0  13 c4 27 c8 93 20 c8 90  20 46 49 58 25 2c 57 4f  |..'.. .. FIX%,WO|
00003dc0  59 25 2b 36 38 2c 34 32  2c 33 32 3a 46 49 58 25  |Y%+68,42,32:FIX%|
00003dd0  2b 3d 34 34 3a ed 0d 13  ce 27 c8 99 20 22 57 69  |+=44:....'.. "Wi|
00003de0  6d 70 5f 47 65 74 52 65  63 74 61 6e 67 6c 65 22  |mp_GetRectangle"|
00003df0  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 13 d8  |,,BLK% . FIN%...|
00003e00  05 ce 0d 13 e2 05 e1 0d  13 ec 04 0d 13 f6 12 dd  |................|
00003e10  f2 66 6f 72 63 65 64 72  61 77 70 61 74 0d 14 00  |.forcedrawpat...|
00003e20  13 21 42 4c 4b 25 3d 48  41 4e 44 25 28 31 31 29  |.!BLK%=HAND%(11)|
00003e30  0d 14 0a 0c 42 4c 4b 25  21 34 3d 30 0d 14 14 0f  |....BLK%!4=0....|
00003e40  42 4c 4b 25 21 38 3d 2d  33 35 36 0d 14 1e 0f 42  |BLK%!8=-356....B|
00003e50  4c 4b 25 21 31 32 3d 31  30 30 0d 14 28 0d 42 4c  |LK%!12=100..(.BL|
00003e60  4b 25 21 31 36 3d 30 0d  14 32 27 c8 99 20 22 57  |K%!16=0..2'.. "W|
00003e70  69 6d 70 5f 55 70 64 61  74 65 57 69 6e 64 6f 77  |imp_UpdateWindow|
00003e80  22 2c 2c 42 4c 4b 25 20  b8 20 46 49 4e 25 0d 14  |",,BLK% . FIN%..|
00003e90  3c 0d f2 67 65 74 70 61  74 6f 72 0d 14 46 0b c8  |<..getpator..F..|
00003ea0  95 20 46 49 4e 25 0d 14  50 41 f2 70 6c 6f 74 70  |. FIN%..PA.plotp|
00003eb0  61 6c 28 4f 50 41 4c 25  29 3a f2 63 6f 6c 28 30  |al(OPAL%):.col(0|
00003ec0  2c 30 2c 30 29 3a 86 20  57 4f 58 25 2c 57 4f 59  |,0,0):. WOX%,WOY|
00003ed0  25 2b 32 32 34 2c 57 4f  58 25 2b 37 37 30 2c 57  |%+224,WOX%+770,W|
00003ee0  4f 59 25 2b 32 32 34 0d  14 5a 0f 43 45 43 46 25  |OY%+224..Z.CECF%|
00003ef0  3d a4 63 65 63 66 0d 14  64 0f e3 20 52 4b 25 3d  |=.cecf..d.. RK%=|
00003f00  30 20 b8 20 37 0d 14 6e  18 4c 25 3d 45 43 46 25  |0 . 7..n.L%=ECF%|
00003f10  28 52 4b 25 2b 31 2c 43  45 43 46 25 29 0d 14 78  |(RK%+1,CECF%)..x|
00003f20  64 50 45 25 3d 42 54 43  25 3f 4c 25 3a f2 63 6f  |dPE%=BTC%?L%:.co|
00003f30  6c 28 50 41 4c 54 41 42  25 3f 28 50 45 25 2a 32  |l(PALTAB%?(PE%*2|
00003f40  29 2c 50 41 4c 54 41 42  25 3f 28 28 50 45 25 2a  |),PALTAB%?((PE%*|
00003f50  32 29 2b 31 29 2c 30 29  3a c8 93 20 c8 90 20 57  |2)+1),0):.. .. W|
00003f60  4f 58 25 2d 31 34 36 2c  28 57 4f 59 25 2b 32 37  |OX%-146,(WOY%+27|
00003f70  36 29 2d 28 52 4b 25 2a  34 30 29 2c 33 38 2c 33  |6)-(RK%*40),38,3|
00003f80  36 0d 14 82 2c c8 93 20  c8 90 20 57 4f 58 25 2d  |6...,.. .. WOX%-|
00003f90  31 34 36 2c 28 57 4f 59  25 2b 32 37 36 29 2d 28  |146,(WOY%+276)-(|
00003fa0  52 4b 25 2a 34 30 29 2c  33 38 2c 33 36 0d 14 8c  |RK%*40),38,36...|
00003fb0  05 ed 0d 14 96 27 c8 99  20 22 57 69 6d 70 5f 47  |.....'.. "Wimp_G|
00003fc0  65 74 52 65 63 74 61 6e  67 6c 65 22 2c 2c 42 4c  |etRectangle",,BL|
00003fd0  4b 25 20 b8 20 46 49 4e  25 0d 14 a0 05 ce 0d 14  |K% . FIN%.......|
00003fe0  aa 05 e1 0d 14 b4 04 0d  14 be 26 dd a4 63 74 62  |..........&..ctb|
00003ff0  28 63 6f 25 2c 74 69 25  29 3a 62 79 25 3d 2d 31  |(co%,ti%):by%=-1|
00004000  3a e3 4c 25 3d 30 20 74  6f 20 32 35 35 0d 14 c8  |:.L%=0 to 255...|
00004010  04 0d 14 d2 11 dd f2 64  72 61 77 70 69 63 69 6e  |.......drawpicin|
00004020  69 74 0d 14 dc 12 21 42  4c 4b 25 3d 48 41 4e 44  |it....!BLK%=HAND|
00004030  25 28 32 29 0d 14 e6 0c  42 4c 4b 25 21 34 3d 30  |%(2)....BLK%!4=0|
00004040  0d 14 f0 0f 42 4c 4b 25  21 38 3d 2d 39 33 36 0d  |....BLK%!8=-936.|
00004050  14 fa 10 42 4c 4b 25 21  31 32 3d 31 32 33 36 0d  |...BLK%!12=1236.|
00004060  15 04 0d 42 4c 4b 25 21  31 36 3d 30 0d 15 0e 27  |...BLK%!16=0...'|
00004070  c8 99 20 22 57 69 6d 70  5f 55 70 64 61 74 65 57  |.. "Wimp_UpdateW|
00004080  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 20 b8 20 46  |indow",,BLK% . F|
00004090  49 4e 25 0d 15 18 18 f2  67 65 74 72 64 6f 72 28  |IN%.....getrdor(|
000040a0  31 30 32 34 2a 5a 4f 4f  4d 25 29 0d 15 22 05 e1  |1024*ZOOM%).."..|
000040b0  0d 15 2c 04 0d 15 36 18  dd f2 66 6f 72 63 65 64  |..,...6...forced|
000040c0  72 61 77 70 61 6c 28 50  54 55 25 29 0d 15 40 12  |rawpal(PTU%)..@.|
000040d0  21 42 4c 4b 25 3d 48 41  4e 44 25 28 33 29 0d 15  |!BLK%=HAND%(3)..|
000040e0  4a 0c 42 4c 4b 25 21 34  3d 30 0d 15 54 0f 42 4c  |J.BLK%!4=0..T.BL|
000040f0  4b 25 21 38 3d 2d 32 32  38 0d 15 5e 0f 42 4c 4b  |K%!8=-228..^.BLK|
00004100  25 21 31 32 3d 37 37 30  0d 15 68 0d 42 4c 4b 25  |%!12=770..h.BLK%|
00004110  21 31 36 3d 30 0d 15 72  27 c8 99 20 22 57 69 6d  |!16=0..r'.. "Wim|
00004120  70 5f 55 70 64 61 74 65  57 69 6e 64 6f 77 22 2c  |p_UpdateWindow",|
00004130  2c 42 4c 4b 25 20 b8 20  46 49 4e 25 0d 15 7c 11  |,BLK% . FIN%..|.|
00004140  f2 67 65 74 72 64 6f 72  28 32 32 38 29 0d 15 86  |.getrdor(228)...|
00004150  0b c8 95 20 46 49 4e 25  0d 15 90 12 f2 70 6c 6f  |... FIN%.....plo|
00004160  74 70 61 6c 28 50 54 55  25 29 0d 15 9a 27 c8 99  |tpal(PTU%)...'..|
00004170  20 22 57 69 6d 70 5f 47  65 74 52 65 63 74 61 6e  | "Wimp_GetRectan|
00004180  67 6c 65 22 2c 2c 42 4c  4b 25 20 b8 20 46 49 4e  |gle",,BLK% . FIN|
00004190  25 0d 15 a4 05 ce 0d 15  ae 05 e1 0d 15 b8 04 0d  |%...............|
000041a0  15 c2 14 dd f2 66 6f 72  63 65 64 72 61 77 74 62  |.....forcedrawtb|
000041b0  61 63 6b 0d 15 cc 13 21  42 4c 4b 25 3d 48 41 4e  |ack....!BLK%=HAN|
000041c0  44 25 28 31 35 29 0d 15  d6 0c 42 4c 4b 25 21 34  |D%(15)....BLK%!4|
000041d0  3d 30 0d 15 e0 0f 42 4c  4b 25 21 38 3d 2d 32 32  |=0....BLK%!8=-22|
000041e0  38 0d 15 ea 0f 42 4c 4b  25 21 31 32 3d 37 37 30  |8....BLK%!12=770|
000041f0  0d 15 f4 0d 42 4c 4b 25  21 31 36 3d 30 0d 15 fe  |....BLK%!16=0...|
00004200  27 c8 99 20 22 57 69 6d  70 5f 55 70 64 61 74 65  |'.. "Wimp_Update|
00004210  57 69 6e 64 6f 77 22 2c  2c 42 4c 4b 25 20 b8 20  |Window",,BLK% . |
00004220  46 49 4e 25 0d 16 08 11  f2 67 65 74 72 64 6f 72  |FIN%.....getrdor|
00004230  28 32 32 38 29 0d 16 12  0b c8 95 20 46 49 4e 25  |(228)...... FIN%|
00004240  0d 16 1c 13 f2 70 6c 6f  74 70 61 6c 28 4f 50 41  |.....plotpal(OPA|
00004250  4c 25 29 0d 16 26 4b f2  63 6f 6c 28 36 33 2c 31  |L%)..&K.col(63,1|
00004260  39 32 2c 30 29 3a c8 93  20 57 4f 58 25 2b 28 28  |92,0):.. WOX%+((|
00004270  46 4f 4e 54 42 25 20 83  20 33 32 29 2a 32 34 29  |FONTB% . 32)*24)|
00004280  2c 57 4f 59 25 2b 28 28  46 4f 4e 54 42 25 20 81  |,WOY%+((FONTB% .|
00004290  20 33 32 29 2a 32 38 29  2c 32 34 2c 32 38 0d 16  | 32)*28),24,28..|
000042a0  30 27 c8 99 20 22 57 69  6d 70 5f 47 65 74 52 65  |0'.. "Wimp_GetRe|
000042b0  63 74 61 6e 67 6c 65 22  2c 2c 42 4c 4b 25 20 b8  |ctangle",,BLK% .|
000042c0  20 46 49 4e 25 0d 16 3a  05 ce 0d 16 44 05 e1 0d  | FIN%..:....D...|
000042d0  16 4e 04 0d 16 58 19 dd  f2 66 6f 72 63 65 64 72  |.N...X...forcedr|
000042e0  61 77 67 72 61 70 68 28  57 48 25 29 0d 16 62 14  |awgraph(WH%)..b.|
000042f0  21 42 4c 4b 25 3d 48 41  4e 44 25 28 57 48 25 29  |!BLK%=HAND%(WH%)|
00004300  0d 16 6c 3e 42 4c 4b 25  21 34 3d 30 3a 42 4c 4b  |..l>BLK%!4=0:BLK|
00004310  25 21 38 3d 2d 33 30 30  3a e7 20 57 48 25 3c 3e  |%!8=-300:. WH%<>|
00004320  32 38 20 8c 20 42 4c 4b  25 21 31 32 3d 33 30 30  |28 . BLK%!12=300|
00004330  20 8b 20 42 4c 4b 25 21  31 32 3d 39 30 30 0d 16  | . BLK%!12=900..|
00004340  76 0d 42 4c 4b 25 21 31  36 3d 30 0d 16 80 33 c8  |v.BLK%!16=0...3.|
00004350  99 20 22 57 69 6d 70 5f  55 70 64 61 74 65 57 69  |. "Wimp_UpdateWi|
00004360  6e 64 6f 77 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ndow",,BLK% . FI|
00004370  4e 25 3a f2 67 65 74 67  72 61 70 68 6f 72 0d 16  |N%:.getgraphor..|
00004380  8a 3e c8 95 20 46 49 4e  25 3a f2 64 72 61 77 67  |.>.. FIN%:.drawg|
00004390  72 61 70 68 3a c8 99 20  22 57 69 6d 70 5f 47 65  |raph:.. "Wimp_Ge|
000043a0  74 52 65 63 74 61 6e 67  6c 65 22 2c 2c 42 4c 4b  |tRectangle",,BLK|
000043b0  25 20 b8 20 46 49 4e 25  3a ce 3a e1 0d 16 94 04  |% . FIN%:.:.....|
000043c0  0d 16 9e 11 dd f2 72 65  64 72 61 77 67 72 61 70  |......redrawgrap|
000043d0  68 0d 16 a8 27 c8 99 20  22 57 69 6d 70 5f 52 65  |h...'.. "Wimp_Re|
000043e0  64 72 61 77 57 69 6e 64  6f 77 22 2c 2c 42 4c 4b  |drawWindow",,BLK|
000043f0  25 20 b8 20 46 49 4e 25  0d 16 b2 0f f2 67 65 74  |% . FIN%.....get|
00004400  67 72 61 70 68 6f 72 0d  16 bc 3e c8 95 20 46 49  |graphor...>.. FI|
00004410  4e 25 3a f2 64 72 61 77  67 72 61 70 68 3a c8 99  |N%:.drawgraph:..|
00004420  20 22 57 69 6d 70 5f 47  65 74 52 65 63 74 61 6e  | "Wimp_GetRectan|
00004430  67 6c 65 22 2c 2c 42 4c  4b 25 20 b8 20 46 49 4e  |gle",,BLK% . FIN|
00004440  25 3a ce 3a e1 0d 16 c6  04 0d 16 d0 10 dd f2 67  |%:.:...........g|
00004450  65 74 67 72 61 70 68 6f  72 0d 16 da 1c 57 4f 58  |etgraphor....WOX|
00004460  25 3d 28 42 4c 4b 25 21  34 2d 42 4c 4b 25 21 32  |%=(BLK%!4-BLK%!2|
00004470  30 29 2b 34 34 0d 16 e4  1e 57 4f 59 25 3d 28 42  |0)+44....WOY%=(B|
00004480  4c 4b 25 21 31 36 2d 42  4c 4b 25 21 32 34 29 2d  |LK%!16-BLK%!24)-|
00004490  32 35 36 0d 16 ee 05 e1  0d 16 f8 04 0d 17 02 0f  |256.............|
000044a0  dd f2 64 72 61 77 67 72  61 70 68 0d 17 0c 6e f2  |..drawgraph...n.|
000044b0  63 6f 6c 28 36 33 2c 31  39 32 2c 30 29 3a c8 93  |col(63,192,0):..|
000044c0  20 c8 90 20 57 4f 58 25  2b 32 2c 57 4f 59 25 2b  | .. WOX%+2,WOY%+|
000044d0  34 2c 32 35 32 2c 32 34  38 3a f2 63 6f 6c 28 30  |4,252,248:.col(0|
000044e0  2c 30 2c 30 29 3a 86 20  57 4f 58 25 2c 57 4f 59  |,0,0):. WOX%,WOY|
000044f0  25 2c 57 4f 58 25 2c 57  4f 59 25 2b 32 35 32 3a  |%,WOX%,WOY%+252:|
00004500  86 20 57 4f 58 25 2c 57  4f 59 25 2c 57 4f 58 25  |. WOX%,WOY%,WOX%|
00004510  2b 32 35 34 2c 57 4f 59  25 0d 17 16 0e c8 8e 20  |+254,WOY%...... |
00004520  46 55 53 45 25 20 ca 0d  17 20 9e c9 20 34 33 3a  |FUSE% ... .. 43:|
00004530  43 4f 4e 4c 25 3d bb a4  67 69 28 32 36 2c 31 38  |CONL%=..gi(26,18|
00004540  29 3a 43 4f 4e 48 25 3d  bb a4 67 69 28 32 36 2c  |):CONH%=..gi(26,|
00004550  32 30 29 3a e7 20 43 4f  4e 4c 25 3c 43 4f 4e 48  |20):. CONL%<CONH|
00004560  25 20 8c 20 f0 34 2c 57  4f 58 25 2b 43 4f 4e 4c  |% . .4,WOX%+CONL|
00004570  25 2a 31 37 2c 57 4f 59  25 3a f0 35 2c 57 4f 58  |%*17,WOY%:.5,WOX|
00004580  25 2b 43 4f 4e 48 25 2a  31 37 2c 57 4f 59 25 2b  |%+CONH%*17,WOY%+|
00004590  32 35 32 20 8b 20 f0 34  2c 57 4f 58 25 2b 43 4f  |252 . .4,WOX%+CO|
000045a0  4e 48 25 2a 31 37 2c 57  4f 59 25 2b 32 35 32 3a  |NH%*17,WOY%+252:|
000045b0  f0 35 2c 57 4f 58 25 2b  43 4f 4e 4c 25 2a 31 37  |.5,WOX%+CONL%*17|
000045c0  2c 57 4f 59 25 0d 17 2a  3b c9 20 34 34 3a 50 4f  |,WOY%..*;. 44:PO|
000045d0  4c 25 3d bb a4 67 69 28  32 37 2c 32 32 29 3a 50  |L%=..gi(27,22):P|
000045e0  4f 48 25 3d bb a4 67 69  28 32 37 2c 32 34 29 3a  |OH%=..gi(27,24):|
000045f0  50 4f 4e 25 3d bb a4 67  69 28 32 37 2c 32 36 29  |PON%=..gi(27,26)|
00004600  0d 17 34 6f 53 54 57 49  3d 50 4f 4e 25 2f 31 36  |..4oSTWI=PON%/16|
00004610  3a 53 54 48 45 3d 28 50  4f 48 25 2d 50 4f 4c 25  |:STHE=(POH%-POL%|
00004620  29 2f 28 50 4f 4e 25 2d  31 29 3a e3 4c 25 3d 30  |)/(PON%-1):.L%=0|
00004630  20 b8 20 31 35 3a 42 48  25 3d 50 4f 4c 25 2b 28  | . 15:BH%=POL%+(|
00004640  a8 28 53 54 57 49 2a 4c  25 29 2a 53 54 48 45 29  |.(STWI*L%)*STHE)|
00004650  3a c8 93 20 57 4f 58 25  2b 28 4c 25 2a 31 36 29  |:.. WOX%+(L%*16)|
00004660  2c 57 4f 59 25 2c 31 36  2c 42 48 25 2a 31 37 0d  |,WOY%,16,BH%*17.|
00004670  17 3e 05 ed 0d 17 48 05  cb 0d 17 52 05 e1 0d 17  |.>....H....R....|
00004680  5c 04 0d 17 66 0e dd f2  67 65 74 70 61 74 6f 72  |\...f...getpator|
00004690  0d 17 70 1d 57 4f 58 25  3d 28 42 4c 4b 25 21 34  |..p.WOX%=(BLK%!4|
000046a0  2d 42 4c 4b 25 21 32 30  29 2b 31 38 30 0d 17 7a  |-BLK%!20)+180..z|
000046b0  1e 57 4f 59 25 3d 28 42  4c 4b 25 21 31 36 2d 42  |.WOY%=(BLK%!16-B|
000046c0  4c 4b 25 21 32 34 29 2d  33 34 30 0d 17 84 05 e1  |LK%!24)-340.....|
000046d0  0d 17 8e 04 0d 17 98 0d  dd f2 70 69 63 70 6f 6c  |..........picpol|
000046e0  6c 0d 17 a2 22 c8 99 20  22 57 69 6d 70 5f 47 65  |l...".. "Wimp_Ge|
000046f0  74 50 6f 69 6e 74 65 72  49 6e 66 6f 22 2c 2c 42  |tPointerInfo",,B|
00004700  4c 4b 25 0d 17 ac 25 e7  20 4d 42 55 53 25 20 80  |LK%...%. MBUS% .|
00004710  20 42 4c 4b 25 21 38 3c  3e 30 20 8c 20 e1 20 8b  | BLK%!8<>0 . . .|
00004720  20 4d 42 55 53 25 3d a3  0d 17 b6 20 e7 20 42 4c  | MBUS%=.... . BL|
00004730  4b 25 21 38 3d 30 20 80  20 4c 45 47 4f 25 20 8c  |K%!8=0 . LEGO% .|
00004740  20 4c 45 47 4f 25 3d a3  0d 17 c0 22 e7 20 42 4c  | LEGO%=....". BL|
00004750  4b 25 21 38 3c 3e 30 20  80 20 4c 45 47 4f 25 20  |K%!8<>0 . LEGO% |
00004760  8c 20 42 4c 4b 25 21 38  3d 30 0d 17 ca 49 57 45  |. BLK%!8=0...IWE|
00004770  25 3d 30 3a e3 50 43 25  3d 30 20 b8 20 4e 4f 57  |%=0:.PC%=0 . NOW|
00004780  49 4e 44 25 3a e7 20 42  4c 4b 25 21 31 32 3d 48  |IND%:. BLK%!12=H|
00004790  41 4e 44 25 28 50 43 25  29 20 8c 20 57 45 25 3d  |AND%(PC%) . WE%=|
000047a0  31 3a 50 43 25 3d 4e 4f  57 49 4e 44 25 3a ed 20  |1:PC%=NOWIND%:. |
000047b0  8b 20 ed 0d 17 d4 20 e7  20 57 45 25 3d 30 20 8c  |. .... . WE%=0 .|
000047c0  20 49 44 52 41 47 25 3d  28 42 4c 4b 25 21 38 3c  | IDRAG%=(BLK%!8<|
000047d0  3e 30 29 0d 17 de 19 e7  20 42 4c 4b 25 21 38 3d  |>0)..... BLK%!8=|
000047e0  30 20 8c 20 49 44 52 41  47 25 3d a3 0d 17 e8 29  |0 . IDRAG%=....)|
000047f0  e7 20 42 4c 4b 25 21 31  32 3c 3e 48 41 4e 44 25  |. BLK%!12<>HAND%|
00004800  28 32 29 20 84 20 42 4c  4b 25 21 31 36 3c 3e 2d  |(2) . BLK%!16<>-|
00004810  31 20 8c 20 e1 0d 17 f2  1c e7 20 42 4c 4b 25 21  |1 . ...... BLK%!|
00004820  38 3c 3e 30 20 80 20 49  44 52 41 47 25 20 8c 20  |8<>0 . IDRAG% . |
00004830  e1 0d 17 fc 22 58 25 3d  21 42 4c 4b 25 3a 59 25  |...."X%=!BLK%:Y%|
00004840  3d 42 4c 4b 25 21 34 3a  42 55 54 25 3d 42 4c 4b  |=BLK%!4:BUT%=BLK|
00004850  25 21 38 0d 18 06 10 e7  20 42 55 54 25 3d 32 20  |%!8..... BUT%=2 |
00004860  8c 20 e1 0d 18 10 0e c8  8e 20 46 55 53 45 25 20  |. ....... FUSE% |
00004870  ca 0d 18 1a 46 c9 20 31  3a e7 20 46 55 53 54 25  |....F. 1:. FUST%|
00004880  3d 30 20 80 20 42 55 54  25 3c 3e 30 20 8c 20 f2  |=0 . BUT%<>0 . .|
00004890  70 69 63 70 6f 73 3a 58  25 28 30 29 3d 58 25 3a  |picpos:X%(0)=X%:|
000048a0  59 25 28 30 29 3d 59 25  3a 46 55 53 54 25 3d 31  |Y%(0)=Y%:FUST%=1|
000048b0  3a e5 20 8d 54 56 5c 0d  18 24 27 e7 20 42 55 54  |:. .TV\..$'. BUT|
000048c0  25 3d 30 20 84 20 46 55  53 54 25 3d 30 20 8c 20  |%=0 . FUST%=0 . |
000048d0  46 55 53 54 25 3d 30 3a  e5 20 8d 54 56 5c 0d 18  |FUST%=0:. .TV\..|
000048e0  2e 38 f2 70 69 63 70 6f  73 3a f2 69 6e 70 69 63  |.8.picpos:.inpic|
000048f0  3a f2 73 65 74 63 6f 6c  3a f2 6c 28 58 25 28 30  |:.setcol:.l(X%(0|
00004900  29 2c 59 25 28 30 29 2c  58 25 2c 59 25 29 3a f2  |),Y%(0),X%,Y%):.|
00004910  6f 75 74 70 69 63 0d 18  38 12 f2 71 75 69 63 6b  |outpic..8..quick|
00004920  64 72 61 77 6d 61 69 6e  0d 18 42 15 58 25 28 30  |drawmain..B.X%(0|
00004930  29 3d 58 25 3a 59 25 28  30 29 3d 59 25 0d 18 4c  |)=X%:Y%(0)=Y%..L|
00004940  7e c9 20 34 3a e7 20 46  55 53 54 25 3d 30 20 8c  |~. 4:. FUST%=0 .|
00004950  20 f2 70 61 69 6e 74 73  63 61 6c 65 3a f2 70 69  | .paintscale:.pi|
00004960  63 70 6f 73 3a f2 69 6e  70 69 63 3a f2 65 6f 72  |cpos:.inpic:.eor|
00004970  62 61 63 6b 3a f2 70 61  69 6e 74 62 72 75 73 68  |back:.paintbrush|
00004980  28 58 25 2c 59 25 29 3a  f2 6f 75 74 70 69 63 3a  |(X%,Y%):.outpic:|
00004990  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 3a 4f  |.quickdrawmain:O|
000049a0  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a 46 55 53  |X%=X%:OY%=Y%:FUS|
000049b0  54 25 3d 31 3a e5 20 8d  54 56 5c 0d 18 56 0b f2  |T%=1:. .TV\..V..|
000049c0  70 69 63 70 6f 73 0d 18  60 82 e7 20 58 25 3c 3e  |picpos..`.. X%<>|
000049d0  4f 58 25 20 84 20 59 25  3c 3e 4f 59 25 20 8c 20  |OX% . Y%<>OY% . |
000049e0  f2 70 61 69 6e 74 73 63  61 6c 65 3a f2 69 6e 70  |.paintscale:.inp|
000049f0  69 63 3a f2 65 6f 72 62  61 63 6b 3a f2 70 61 69  |ic:.eorback:.pai|
00004a00  6e 74 62 72 75 73 68 28  4f 58 25 2c 4f 59 25 29  |ntbrush(OX%,OY%)|
00004a10  3a f2 70 61 69 6e 74 62  72 75 73 68 28 58 25 2c  |:.paintbrush(X%,|
00004a20  59 25 29 3a 4f 58 25 3d  58 25 3a 4f 59 25 3d 59  |Y%):OX%=X%:OY%=Y|
00004a30  25 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |%:.outpic:.quick|
00004a40  64 72 61 77 6d 61 69 6e  0d 18 6a 95 c9 20 31 31  |drawmain..j.. 11|
00004a50  3a e7 20 46 55 53 54 25  3d 30 20 80 20 42 55 54  |:. FUST%=0 . BUT|
00004a60  25 3c 3e 30 20 8c 20 f2  70 69 63 70 6f 73 3a 58  |%<>0 . .picpos:X|
00004a70  25 28 30 29 3d 58 25 3a  59 25 28 30 29 3d 59 25  |%(0)=X%:Y%(0)=Y%|
00004a80  3a 46 55 53 54 25 3d 31  3a 4f 58 25 3d 58 25 3a  |:FUST%=1:OX%=X%:|
00004a90  4f 59 25 3d 59 25 3a f2  69 6e 70 69 63 3a f2 65  |OY%=Y%:.inpic:.e|
00004aa0  6f 63 3a 86 20 58 25 28  30 29 2c 59 25 28 30 29  |oc:. X%(0),Y%(0)|
00004ab0  2c 4f 58 25 2c 4f 59 25  3a f2 6f 75 74 70 69 63  |,OX%,OY%:.outpic|
00004ac0  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 3a  |:.quickdrawmain:|
00004ad0  f2 6c 65 74 67 6f 3a e5  20 8d 54 56 5c 0d 18 74  |.letgo:. .TV\..t|
00004ae0  16 e7 20 46 55 53 54 25  3d 30 20 8c 20 e5 20 8d  |.. FUST%=0 . . .|
00004af0  54 56 5c 0d 18 7e 7d e7  20 42 55 54 25 3d 31 20  |TV\..~}. BUT%=1 |
00004b00  80 20 46 55 53 54 25 3d  31 20 8c 20 f2 69 6e 70  |. FUST%=1 . .inp|
00004b10  69 63 3a f2 65 6f 63 3a  86 20 58 25 28 30 29 2c  |ic:.eoc:. X%(0),|
00004b20  59 25 28 30 29 2c 4f 58  25 2c 4f 59 25 3a f2 70  |Y%(0),OX%,OY%:.p|
00004b30  69 63 70 6f 73 3a 4f 58  25 3d 58 25 3a 4f 59 25  |icpos:OX%=X%:OY%|
00004b40  3d 59 25 3a 46 55 53 54  25 3d 30 3a f2 6f 75 74  |=Y%:FUST%=0:.out|
00004b50  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00004b60  69 6e 3a f2 6c 65 74 67  6f 3a e5 20 8d 54 56 5c  |in:.letgo:. .TV\|
00004b70  0d 18 88 6c e7 20 42 55  54 25 3d 31 20 80 20 46  |...l. BUT%=1 . F|
00004b80  55 53 54 25 3d 32 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=2 . .inpic:|
00004b90  f2 65 6f 63 3a f2 65 6c  69 70 28 26 43 35 2c 4f  |.eoc:.elip(&C5,O|
00004ba0  58 25 2c 4f 59 25 29 3a  f2 70 69 63 70 6f 73 3a  |X%,OY%):.picpos:|
00004bb0  46 55 53 54 25 3d 30 3a  f2 6f 75 74 70 69 63 3a  |FUST%=0:.outpic:|
00004bc0  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 3a f2  |.quickdrawmain:.|
00004bd0  6c 65 74 67 6f 3a e5 20  8d 54 56 5c 0d 18 92 be  |letgo:. .TV\....|
00004be0  e7 20 42 55 54 25 3d 34  20 80 20 28 4f 58 25 3c  |. BUT%=4 . (OX%<|
00004bf0  3e 58 25 28 30 29 20 84  20 4f 59 25 3c 3e 59 25  |>X%(0) . OY%<>Y%|
00004c00  28 30 29 29 20 80 20 46  55 53 54 25 3d 31 20 8c  |(0)) . FUST%=1 .|
00004c10  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a 58 25 28  | .inpic:.eoc:X%(|
00004c20  31 29 3d 4f 58 25 3a 59  25 28 31 29 3d 4f 59 25  |1)=OX%:Y%(1)=OY%|
00004c30  3a 86 20 58 25 28 30 29  2c 59 25 28 30 29 2c 4f  |:. X%(0),Y%(0),O|
00004c40  58 25 2c 4f 59 25 3a f2  70 69 63 70 6f 73 3a 4f  |X%,OY%:.picpos:O|
00004c50  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a f2 65 6c  |X%=X%:OY%=Y%:.el|
00004c60  69 70 28 26 43 35 2c 58  25 2c 59 25 29 3a f2 6f  |ip(&C5,X%,Y%):.o|
00004c70  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
00004c80  6d 61 69 6e 3a f2 6c 65  74 67 6f 3a 46 55 53 54  |main:.letgo:FUST|
00004c90  25 3d 32 3a e5 20 8d 54  56 5c 0d 18 9c af e7 20  |%=2:. .TV\..... |
00004ca0  42 55 54 25 3d 34 20 80  20 28 4f 58 25 3c 3e 58  |BUT%=4 . (OX%<>X|
00004cb0  25 28 31 29 20 84 20 4f  59 25 3c 3e 59 25 28 31  |%(1) . OY%<>Y%(1|
00004cc0  29 29 20 80 20 46 55 53  54 25 3d 32 20 8c 20 f2  |)) . FUST%=2 . .|
00004cd0  69 6e 70 69 63 3a f2 65  6f 63 3a f2 70 69 63 70  |inpic:.eoc:.picp|
00004ce0  6f 73 3a f2 65 6c 69 70  28 26 43 35 2c 4f 58 25  |os:.elip(&C5,OX%|
00004cf0  2c 4f 59 25 29 3a f2 73  65 74 63 6f 6c 3a f2 65  |,OY%):.setcol:.e|
00004d00  6c 69 70 28 26 43 35 2c  58 25 2c 59 25 29 3a 4f  |lip(&C5,X%,Y%):O|
00004d10  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a f2 6f 75  |X%=X%:OY%=Y%:.ou|
00004d20  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00004d30  61 69 6e 3a f2 6c 65 74  67 6f 3a 46 55 53 54 25  |ain:.letgo:FUST%|
00004d40  3d 30 3a e5 20 8d 54 56  5c 0d 18 a6 26 f2 70 69  |=0:. .TV\...&.pi|
00004d50  63 70 6f 73 3a e7 20 58  25 3d 4f 58 25 20 80 20  |cpos:. X%=OX% . |
00004d60  59 25 3d 4f 59 25 20 8c  20 e5 20 8d 54 56 5c 0d  |Y%=OY% . . .TV\.|
00004d70  18 b0 6a e7 20 46 55 53  54 25 3d 31 20 8c 20 f2  |..j. FUST%=1 . .|
00004d80  69 6e 70 69 63 3a f2 65  6f 63 3a 86 20 58 25 28  |inpic:.eoc:. X%(|
00004d90  30 29 2c 59 25 28 30 29  2c 4f 58 25 2c 4f 59 25  |0),Y%(0),OX%,OY%|
00004da0  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 3a 86  |:OX%=X%:OY%=Y%:.|
00004db0  20 58 25 28 30 29 2c 59  25 28 30 29 2c 58 25 2c  | X%(0),Y%(0),X%,|
00004dc0  59 25 3a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |Y%:.outpic:.quic|
00004dd0  6b 64 72 61 77 6d 61 69  6e 0d 18 ba 64 e7 20 46  |kdrawmain...d. F|
00004de0  55 53 54 25 3d 32 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=2 . .inpic:|
00004df0  f2 65 6f 63 3a f2 65 6c  69 70 28 26 43 35 2c 4f  |.eoc:.elip(&C5,O|
00004e00  58 25 2c 4f 59 25 29 3a  4f 58 25 3d 58 25 3a 4f  |X%,OY%):OX%=X%:O|
00004e10  59 25 3d 59 25 3a f2 65  6c 69 70 28 26 43 35 2c  |Y%=Y%:.elip(&C5,|
00004e20  58 25 2c 59 25 29 3a f2  6f 75 74 70 69 63 3a f2  |X%,Y%):.outpic:.|
00004e30  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 0d 18 c4  |quickdrawmain...|
00004e40  95 c9 20 31 33 3a e7 20  46 55 53 54 25 3d 30 20  |.. 13:. FUST%=0 |
00004e50  80 20 42 55 54 25 3c 3e  30 20 8c 20 f2 70 69 63  |. BUT%<>0 . .pic|
00004e60  70 6f 73 3a 58 25 28 30  29 3d 58 25 3a 59 25 28  |pos:X%(0)=X%:Y%(|
00004e70  30 29 3d 59 25 3a 46 55  53 54 25 3d 31 3a 4f 58  |0)=Y%:FUST%=1:OX|
00004e80  25 3d 58 25 3a 4f 59 25  3d 59 25 3a f2 69 6e 70  |%=X%:OY%=Y%:.inp|
00004e90  69 63 3a f2 65 6f 63 3a  86 20 58 25 28 30 29 2c  |ic:.eoc:. X%(0),|
00004ea0  59 25 28 30 29 2c 4f 58  25 2c 4f 59 25 3a f2 6f  |Y%(0),OX%,OY%:.o|
00004eb0  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
00004ec0  6d 61 69 6e 3a f2 6c 65  74 67 6f 3a e5 20 8d 54  |main:.letgo:. .T|
00004ed0  56 5c 0d 18 ce 16 e7 20  46 55 53 54 25 3d 30 20  |V\..... FUST%=0 |
00004ee0  8c 20 e5 20 8d 54 56 5c  0d 18 d8 7d e7 20 42 55  |. . .TV\...}. BU|
00004ef0  54 25 3d 31 20 80 20 46  55 53 54 25 3d 31 20 8c  |T%=1 . FUST%=1 .|
00004f00  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a 86 20 58  | .inpic:.eoc:. X|
00004f10  25 28 30 29 2c 59 25 28  30 29 2c 4f 58 25 2c 4f  |%(0),Y%(0),OX%,O|
00004f20  59 25 3a f2 70 69 63 70  6f 73 3a 4f 58 25 3d 58  |Y%:.picpos:OX%=X|
00004f30  25 3a 4f 59 25 3d 59 25  3a 46 55 53 54 25 3d 30  |%:OY%=Y%:FUST%=0|
00004f40  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
00004f50  72 61 77 6d 61 69 6e 3a  f2 6c 65 74 67 6f 3a e5  |rawmain:.letgo:.|
00004f60  20 8d 54 56 5c 0d 18 e2  6c e7 20 42 55 54 25 3d  | .TV\...l. BUT%=|
00004f70  31 20 80 20 46 55 53 54  25 3d 32 20 8c 20 f2 69  |1 . FUST%=2 . .i|
00004f80  6e 70 69 63 3a f2 65 6f  63 3a f2 70 61 72 61 28  |npic:.eoc:.para(|
00004f90  30 2c 30 2c 4f 58 25 2c  4f 59 25 29 3a f2 70 69  |0,0,OX%,OY%):.pi|
00004fa0  63 70 6f 73 3a 46 55 53  54 25 3d 30 3a f2 6f 75  |cpos:FUST%=0:.ou|
00004fb0  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00004fc0  61 69 6e 3a f2 6c 65 74  67 6f 3a e5 20 8d 54 56  |ain:.letgo:. .TV|
00004fd0  5c 0d 18 ec be e7 20 42  55 54 25 3d 34 20 80 20  |\..... BUT%=4 . |
00004fe0  28 4f 58 25 3c 3e 58 25  28 30 29 20 84 20 4f 59  |(OX%<>X%(0) . OY|
00004ff0  25 3c 3e 59 25 28 30 29  29 20 80 20 46 55 53 54  |%<>Y%(0)) . FUST|
00005000  25 3d 31 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=1 . .inpic:.eo|
00005010  63 3a 58 25 28 31 29 3d  4f 58 25 3a 59 25 28 31  |c:X%(1)=OX%:Y%(1|
00005020  29 3d 4f 59 25 3a 86 20  58 25 28 30 29 2c 59 25  |)=OY%:. X%(0),Y%|
00005030  28 30 29 2c 4f 58 25 2c  4f 59 25 3a f2 70 69 63  |(0),OX%,OY%:.pic|
00005040  70 6f 73 3a 4f 58 25 3d  58 25 3a 4f 59 25 3d 59  |pos:OX%=X%:OY%=Y|
00005050  25 3a f2 70 61 72 61 28  30 2c 30 2c 58 25 2c 59  |%:.para(0,0,X%,Y|
00005060  25 29 3a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |%):.outpic:.quic|
00005070  6b 64 72 61 77 6d 61 69  6e 3a f2 6c 65 74 67 6f  |kdrawmain:.letgo|
00005080  3a 46 55 53 54 25 3d 32  3a e5 20 8d 54 56 5c 0d  |:FUST%=2:. .TV\.|
00005090  18 f6 af e7 20 42 55 54  25 3d 34 20 80 20 28 4f  |.... BUT%=4 . (O|
000050a0  58 25 3c 3e 58 25 28 31  29 20 84 20 4f 59 25 3c  |X%<>X%(1) . OY%<|
000050b0  3e 59 25 28 31 29 29 20  80 20 46 55 53 54 25 3d  |>Y%(1)) . FUST%=|
000050c0  32 20 8c 20 f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |2 . .inpic:.eoc:|
000050d0  f2 70 69 63 70 6f 73 3a  f2 70 61 72 61 28 30 2c  |.picpos:.para(0,|
000050e0  30 2c 4f 58 25 2c 4f 59  25 29 3a f2 73 65 74 63  |0,OX%,OY%):.setc|
000050f0  6f 6c 3a f2 70 61 72 61  28 31 2c 30 2c 58 25 2c  |ol:.para(1,0,X%,|
00005100  59 25 29 3a 4f 58 25 3d  58 25 3a 4f 59 25 3d 59  |Y%):OX%=X%:OY%=Y|
00005110  25 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |%:.outpic:.quick|
00005120  64 72 61 77 6d 61 69 6e  3a f2 6c 65 74 67 6f 3a  |drawmain:.letgo:|
00005130  46 55 53 54 25 3d 30 3a  e5 20 8d 54 56 5c 0d 19  |FUST%=0:. .TV\..|
00005140  00 26 f2 70 69 63 70 6f  73 3a e7 20 58 25 3d 4f  |.&.picpos:. X%=O|
00005150  58 25 20 80 20 59 25 3d  4f 59 25 20 8c 20 e5 20  |X% . Y%=OY% . . |
00005160  8d 54 56 5c 0d 19 0a 6a  e7 20 46 55 53 54 25 3d  |.TV\...j. FUST%=|
00005170  31 20 8c 20 f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |1 . .inpic:.eoc:|
00005180  86 20 58 25 28 30 29 2c  59 25 28 30 29 2c 4f 58  |. X%(0),Y%(0),OX|
00005190  25 2c 4f 59 25 3a 4f 58  25 3d 58 25 3a 4f 59 25  |%,OY%:OX%=X%:OY%|
000051a0  3d 59 25 3a 86 20 58 25  28 30 29 2c 59 25 28 30  |=Y%:. X%(0),Y%(0|
000051b0  29 2c 58 25 2c 59 25 3a  f2 6f 75 74 70 69 63 3a  |),X%,Y%:.outpic:|
000051c0  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 0d 19  |.quickdrawmain..|
000051d0  14 64 e7 20 46 55 53 54  25 3d 32 20 8c 20 f2 69  |.d. FUST%=2 . .i|
000051e0  6e 70 69 63 3a f2 65 6f  63 3a f2 70 61 72 61 28  |npic:.eoc:.para(|
000051f0  30 2c 30 2c 4f 58 25 2c  4f 59 25 29 3a 4f 58 25  |0,0,OX%,OY%):OX%|
00005200  3d 58 25 3a 4f 59 25 3d  59 25 3a f2 70 61 72 61  |=X%:OY%=Y%:.para|
00005210  28 30 2c 30 2c 58 25 2c  59 25 29 3a f2 6f 75 74  |(0,0,X%,Y%):.out|
00005220  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00005230  69 6e 0d 19 1e 95 c9 20  31 36 3a e7 20 46 55 53  |in..... 16:. FUS|
00005240  54 25 3d 30 20 80 20 42  55 54 25 3c 3e 30 20 8c  |T%=0 . BUT%<>0 .|
00005250  20 f2 70 69 63 70 6f 73  3a 58 25 28 30 29 3d 58  | .picpos:X%(0)=X|
00005260  25 3a 59 25 28 30 29 3d  59 25 3a 46 55 53 54 25  |%:Y%(0)=Y%:FUST%|
00005270  3d 31 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |=1:OX%=X%:OY%=Y%|
00005280  3a f2 69 6e 70 69 63 3a  f2 65 6f 63 3a 86 20 58  |:.inpic:.eoc:. X|
00005290  25 28 30 29 2c 59 25 28  30 29 2c 4f 58 25 2c 4f  |%(0),Y%(0),OX%,O|
000052a0  59 25 3a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |Y%:.outpic:.quic|
000052b0  6b 64 72 61 77 6d 61 69  6e 3a f2 6c 65 74 67 6f  |kdrawmain:.letgo|
000052c0  3a e5 20 8d 54 56 5c 0d  19 28 16 e7 20 46 55 53  |:. .TV\..(.. FUS|
000052d0  54 25 3d 30 20 8c 20 e5  20 8d 54 56 5c 0d 19 32  |T%=0 . . .TV\..2|
000052e0  7d e7 20 42 55 54 25 3d  31 20 80 20 46 55 53 54  |}. BUT%=1 . FUST|
000052f0  25 3d 31 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=1 . .inpic:.eo|
00005300  63 3a 86 20 58 25 28 30  29 2c 59 25 28 30 29 2c  |c:. X%(0),Y%(0),|
00005310  4f 58 25 2c 4f 59 25 3a  f2 70 69 63 70 6f 73 3a  |OX%,OY%:.picpos:|
00005320  4f 58 25 3d 58 25 3a 4f  59 25 3d 59 25 3a 46 55  |OX%=X%:OY%=Y%:FU|
00005330  53 54 25 3d 30 3a f2 6f  75 74 70 69 63 3a f2 71  |ST%=0:.outpic:.q|
00005340  75 69 63 6b 64 72 61 77  6d 61 69 6e 3a f2 6c 65  |uickdrawmain:.le|
00005350  74 67 6f 3a e5 20 8d 54  56 5c 0d 19 3c 6c e7 20  |tgo:. .TV\..<l. |
00005360  42 55 54 25 3d 31 20 80  20 46 55 53 54 25 3d 32  |BUT%=1 . FUST%=2|
00005370  20 8c 20 f2 69 6e 70 69  63 3a f2 65 6f 63 3a f2  | . .inpic:.eoc:.|
00005380  65 6c 69 70 28 26 42 35  2c 4f 58 25 2c 4f 59 25  |elip(&B5,OX%,OY%|
00005390  29 3a f2 70 69 63 70 6f  73 3a 46 55 53 54 25 3d  |):.picpos:FUST%=|
000053a0  30 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |0:.outpic:.quick|
000053b0  64 72 61 77 6d 61 69 6e  3a f2 6c 65 74 67 6f 3a  |drawmain:.letgo:|
000053c0  e5 20 8d 54 56 5c 0d 19  46 be e7 20 42 55 54 25  |. .TV\..F.. BUT%|
000053d0  3d 34 20 80 20 28 4f 58  25 3c 3e 58 25 28 30 29  |=4 . (OX%<>X%(0)|
000053e0  20 84 20 4f 59 25 3c 3e  59 25 28 30 29 29 20 80  | . OY%<>Y%(0)) .|
000053f0  20 46 55 53 54 25 3d 31  20 8c 20 f2 69 6e 70 69  | FUST%=1 . .inpi|
00005400  63 3a f2 65 6f 63 3a 58  25 28 31 29 3d 4f 58 25  |c:.eoc:X%(1)=OX%|
00005410  3a 59 25 28 31 29 3d 4f  59 25 3a 86 20 58 25 28  |:Y%(1)=OY%:. X%(|
00005420  30 29 2c 59 25 28 30 29  2c 4f 58 25 2c 4f 59 25  |0),Y%(0),OX%,OY%|
00005430  3a f2 70 69 63 70 6f 73  3a 4f 58 25 3d 58 25 3a  |:.picpos:OX%=X%:|
00005440  4f 59 25 3d 59 25 3a f2  65 6c 69 70 28 26 42 35  |OY%=Y%:.elip(&B5|
00005450  2c 58 25 2c 59 25 29 3a  f2 6f 75 74 70 69 63 3a  |,X%,Y%):.outpic:|
00005460  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 3a f2  |.quickdrawmain:.|
00005470  6c 65 74 67 6f 3a 46 55  53 54 25 3d 32 3a e5 20  |letgo:FUST%=2:. |
00005480  8d 54 56 5c 0d 19 50 af  e7 20 42 55 54 25 3d 34  |.TV\..P.. BUT%=4|
00005490  20 80 20 28 4f 58 25 3c  3e 58 25 28 31 29 20 84  | . (OX%<>X%(1) .|
000054a0  20 4f 59 25 3c 3e 59 25  28 31 29 29 20 80 20 46  | OY%<>Y%(1)) . F|
000054b0  55 53 54 25 3d 32 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=2 . .inpic:|
000054c0  f2 65 6f 63 3a f2 70 69  63 70 6f 73 3a f2 65 6c  |.eoc:.picpos:.el|
000054d0  69 70 28 26 42 35 2c 4f  58 25 2c 4f 59 25 29 3a  |ip(&B5,OX%,OY%):|
000054e0  f2 73 65 74 63 6f 6c 3a  f2 65 6c 69 70 28 26 42  |.setcol:.elip(&B|
000054f0  35 2c 58 25 2c 59 25 29  3a 4f 58 25 3d 58 25 3a  |5,X%,Y%):OX%=X%:|
00005500  4f 59 25 3d 59 25 3a f2  6f 75 74 70 69 63 3a f2  |OY%=Y%:.outpic:.|
00005510  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 3a f2 6c  |quickdrawmain:.l|
00005520  65 74 67 6f 3a 46 55 53  54 25 3d 30 3a e5 20 8d  |etgo:FUST%=0:. .|
00005530  54 56 5c 0d 19 5a 26 f2  70 69 63 70 6f 73 3a e7  |TV\..Z&.picpos:.|
00005540  20 58 25 3d 4f 58 25 20  80 20 59 25 3d 4f 59 25  | X%=OX% . Y%=OY%|
00005550  20 8c 20 e5 20 8d 54 56  5c 0d 19 64 6a e7 20 46  | . . .TV\..dj. F|
00005560  55 53 54 25 3d 31 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=1 . .inpic:|
00005570  f2 65 6f 63 3a 86 20 58  25 28 30 29 2c 59 25 28  |.eoc:. X%(0),Y%(|
00005580  30 29 2c 4f 58 25 2c 4f  59 25 3a 4f 58 25 3d 58  |0),OX%,OY%:OX%=X|
00005590  25 3a 4f 59 25 3d 59 25  3a 86 20 58 25 28 30 29  |%:OY%=Y%:. X%(0)|
000055a0  2c 59 25 28 30 29 2c 58  25 2c 59 25 3a f2 6f 75  |,Y%(0),X%,Y%:.ou|
000055b0  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
000055c0  61 69 6e 0d 19 6e 64 e7  20 46 55 53 54 25 3d 32  |ain..nd. FUST%=2|
000055d0  20 8c 20 f2 69 6e 70 69  63 3a f2 65 6f 63 3a f2  | . .inpic:.eoc:.|
000055e0  65 6c 69 70 28 26 42 35  2c 4f 58 25 2c 4f 59 25  |elip(&B5,OX%,OY%|
000055f0  29 3a 4f 58 25 3d 58 25  3a 4f 59 25 3d 59 25 3a  |):OX%=X%:OY%=Y%:|
00005600  f2 65 6c 69 70 28 26 42  35 2c 58 25 2c 59 25 29  |.elip(&B5,X%,Y%)|
00005610  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
00005620  72 61 77 6d 61 69 6e 0d  19 78 11 c9 20 32 33 3a  |rawmain..x.. 23:|
00005630  f2 70 6f 6c 6c 5f 32 33  0d 19 82 11 c9 20 32 35  |.poll_23..... 25|
00005640  3a f2 70 6f 6c 6c 5f 32  35 0d 19 8c 25 c9 20 32  |:.poll_25...%. 2|
00005650  37 3a e7 20 46 55 53 54  25 3c 32 20 8c 20 f2 72  |7:. FUST%<2 . .r|
00005660  65 63 74 70 6f 6c 6c 3a  e5 20 8d 54 56 5c 0d 19  |ectpoll:. .TV\..|
00005670  96 2d f2 73 70 69 6e 69  74 3a f2 73 70 62 75 66  |.-.spinit:.spbuf|
00005680  28 31 36 31 2a 31 30 32  34 29 3a e7 20 51 25 20  |(161*1024):. Q% |
00005690  8c 20 f2 73 70 62 75 66  65 72 72 0d 19 a0 19 f2  |. .spbuferr.....|
000056a0  62 61 63 6b 75 70 70 69  63 3a f2 73 77 61 70 63  |backuppic:.swapc|
000056b0  6f 72 6e 73 0d 19 aa 20  56 41 52 53 21 32 30 3d  |orns... VARS!20=|
000056c0  42 54 43 25 3a 56 41 52  53 21 32 34 3d 50 41 4c  |BTC%:VARS!24=PAL|
000056d0  54 41 42 25 0d 19 b4 1f  56 41 52 53 21 32 38 3d  |TAB%....VARS!28=|
000056e0  50 49 43 25 3a 56 41 52  53 21 33 32 3d 53 50 42  |PIC%:VARS!32=SPB|
000056f0  55 46 25 0d 19 be 1f 56  41 52 53 21 33 36 3d 58  |UF%....VARS!36=X|
00005700  25 28 30 29 3a 56 41 52  53 21 34 30 3d 59 25 28  |%(0):VARS!40=Y%(|
00005710  30 29 0d 19 c8 1b 56 41  52 53 21 34 34 3d 4f 58  |0)....VARS!44=OX|
00005720  25 3a 56 41 52 53 21 34  38 3d 4f 59 25 0d 19 d2  |%:VARS!48=OY%...|
00005730  5c 41 25 3d 56 41 52 53  3a c8 99 20 22 48 6f 75  |\A%=VARS:.. "Hou|
00005740  72 67 6c 61 73 73 5f 4f  6e 22 3a d6 20 70 69 78  |rglass_On":. pix|
00005750  61 76 65 72 61 67 65 3a  c8 99 20 22 48 6f 75 72  |average:.. "Hour|
00005760  67 6c 61 73 73 5f 4f 66  66 22 3a f2 73 70 69 6e  |glass_Off":.spin|
00005770  69 74 3a f2 66 6f 72 63  65 64 72 61 77 6d 61 69  |it:.forcedrawmai|
00005780  6e 3a 46 55 53 54 25 3d  30 0d 19 dc 80 c9 20 32  |n:FUST%=0..... 2|
00005790  39 3a e7 20 46 55 53 54  25 3d 30 20 8c 20 f2 70  |9:. FUST%=0 . .p|
000057a0  61 69 6e 74 73 63 61 6c  65 32 3a f2 70 69 63 70  |aintscale2:.picp|
000057b0  6f 73 3a f2 69 6e 70 69  63 3a f2 65 6f 72 62 61  |os:.inpic:.eorba|
000057c0  63 6b 3a f2 70 61 69 6e  74 62 72 75 73 68 28 58  |ck:.paintbrush(X|
000057d0  25 2c 59 25 29 3a f2 6f  75 74 70 69 63 3a f2 71  |%,Y%):.outpic:.q|
000057e0  75 69 63 6b 64 72 61 77  6d 61 69 6e 3a 4f 58 25  |uickdrawmain:OX%|
000057f0  3d 58 25 3a 4f 59 25 3d  59 25 3a 46 55 53 54 25  |=X%:OY%=Y%:FUST%|
00005800  3d 31 3a e5 20 8d 54 56  5c 0d 19 e6 0b f2 70 69  |=1:. .TV\.....pi|
00005810  63 70 6f 73 0d 19 f0 83  e7 20 58 25 3c 3e 4f 58  |cpos..... X%<>OX|
00005820  25 20 84 20 59 25 3c 3e  4f 59 25 20 8c 20 f2 70  |% . Y%<>OY% . .p|
00005830  61 69 6e 74 73 63 61 6c  65 32 3a f2 69 6e 70 69  |aintscale2:.inpi|
00005840  63 3a f2 65 6f 72 62 61  63 6b 3a f2 70 61 69 6e  |c:.eorback:.pain|
00005850  74 62 72 75 73 68 28 4f  58 25 2c 4f 59 25 29 3a  |tbrush(OX%,OY%):|
00005860  f2 70 61 69 6e 74 62 72  75 73 68 28 58 25 2c 59  |.paintbrush(X%,Y|
00005870  25 29 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |%):OX%=X%:OY%=Y%|
00005880  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
00005890  72 61 77 6d 61 69 6e 0d  19 fa 80 c9 20 33 30 3a  |rawmain..... 30:|
000058a0  e7 20 46 55 53 54 25 3d  30 20 8c 20 f2 70 61 69  |. FUST%=0 . .pai|
000058b0  6e 74 73 63 61 6c 65 32  3a f2 70 69 63 70 6f 73  |ntscale2:.picpos|
000058c0  3a f2 69 6e 70 69 63 3a  f2 65 6f 72 62 61 63 6b  |:.inpic:.eorback|
000058d0  3a f2 70 61 69 6e 74 62  72 75 73 68 28 58 25 2c  |:.paintbrush(X%,|
000058e0  59 25 29 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |Y%):.outpic:.qui|
000058f0  63 6b 64 72 61 77 6d 61  69 6e 3a 4f 58 25 3d 58  |ckdrawmain:OX%=X|
00005900  25 3a 4f 59 25 3d 59 25  3a 46 55 53 54 25 3d 31  |%:OY%=Y%:FUST%=1|
00005910  3a e5 20 8d 54 56 5c 0d  1a 04 0b f2 70 69 63 70  |:. .TV\.....picp|
00005920  6f 73 0d 1a 0e 83 e7 20  58 25 3c 3e 4f 58 25 20  |os..... X%<>OX% |
00005930  84 20 59 25 3c 3e 4f 59  25 20 8c 20 f2 70 61 69  |. Y%<>OY% . .pai|
00005940  6e 74 73 63 61 6c 65 32  3a f2 69 6e 70 69 63 3a  |ntscale2:.inpic:|
00005950  f2 65 6f 72 62 61 63 6b  3a f2 70 61 69 6e 74 62  |.eorback:.paintb|
00005960  72 75 73 68 28 4f 58 25  2c 4f 59 25 29 3a f2 70  |rush(OX%,OY%):.p|
00005970  61 69 6e 74 62 72 75 73  68 28 58 25 2c 59 25 29  |aintbrush(X%,Y%)|
00005980  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 3a f2  |:OX%=X%:OY%=Y%:.|
00005990  6f 75 74 70 69 63 3a f2  71 75 69 63 6b 64 72 61  |outpic:.quickdra|
000059a0  77 6d 61 69 6e 0d 1a 18  15 c9 20 33 32 3a e7 20  |wmain..... 32:. |
000059b0  46 4f 4e 54 25 3c 3e 30  20 8c 0d 1a 22 6f f2 70  |FONT%<>0 ..."o.p|
000059c0  69 63 70 6f 73 3a e7 20  42 55 54 25 3d 34 20 80  |icpos:. BUT%=4 .|
000059d0  20 46 55 53 54 25 3c 3e  30 20 8c 20 f2 69 6e 62  | FUST%<>0 . .inb|
000059e0  61 63 6b 75 70 3a c8 99  20 22 46 6f 6e 74 5f 53  |ackup:.. "Font_S|
000059f0  65 74 46 6f 6e 74 22 2c  46 48 41 4e 44 25 3a c8  |etFont",FHAND%:.|
00005a00  99 20 22 46 6f 6e 74 5f  50 61 69 6e 74 22 2c 2c  |. "Font_Paint",,|
00005a10  54 45 58 54 24 2c 31 36  2c 58 25 2c 59 25 3a f2  |TEXT$,16,X%,Y%:.|
00005a20  6f 75 74 62 61 63 6b 75  70 0d 1a 2c d9 e7 20 46  |outbackup..,.. F|
00005a30  55 53 54 25 3c 3e 30 20  80 20 28 58 25 3c 3e 4f  |UST%<>0 . (X%<>O|
00005a40  58 25 20 84 20 59 25 3c  3e 4f 59 25 29 20 8c 20  |X% . Y%<>OY%) . |
00005a50  45 54 25 3d 31 3a f2 72  65 73 74 70 69 63 3a 45  |ET%=1:.restpic:E|
00005a60  54 25 3d 32 3a 45 54 25  3d 33 3a f2 69 6e 70 69  |T%=2:ET%=3:.inpi|
00005a70  63 52 3a c8 99 20 22 46  6f 6e 74 5f 53 65 74 46  |cR:.. "Font_SetF|
00005a80  6f 6e 74 22 2c 46 48 41  4e 44 25 3a 45 54 25 3d  |ont",FHAND%:ET%=|
00005a90  34 3a c8 99 20 22 46 6f  6e 74 5f 50 61 69 6e 74  |4:.. "Font_Paint|
00005aa0  22 2c 2c 54 45 58 54 24  2c 31 36 2c 58 25 2c 59  |",,TEXT$,16,X%,Y|
00005ab0  25 3a f2 6f 75 74 62 61  63 6b 75 70 3a 4e 54 54  |%:.outbackup:NTT|
00005ac0  50 25 2b 3d 31 3a 45 54  25 3d 35 3a 45 54 25 3d  |P%+=1:ET%=5:ET%=|
00005ad0  36 3a 4f 58 25 3d 58 25  3a 4f 59 25 3d 59 25 3a  |6:OX%=X%:OY%=Y%:|
00005ae0  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 3a 45  |.forcedrawmain:E|
00005af0  54 25 3d 37 3a 4f 58 25  3d 58 25 3a 4f 59 25 3d  |T%=7:OX%=X%:OY%=|
00005b00  59 25 0d 1a 36 05 cc 0d  1a 40 45 f2 70 69 63 70  |Y%..6....@E.picp|
00005b10  6f 73 3a e7 20 42 55 54  25 3d 34 20 80 20 46 55  |os:. BUT%=4 . FU|
00005b20  53 54 25 3c 3e 30 20 8c  20 f2 69 6e 62 61 63 6b  |ST%<>0 . .inback|
00005b30  75 70 3a f2 6f 73 74 65  78 74 28 58 25 2c 59 25  |up:.ostext(X%,Y%|
00005b40  29 3a f2 6f 75 74 62 61  63 6b 75 70 0d 1a 4a 6a  |):.outbackup..Jj|
00005b50  e7 20 46 55 53 54 25 3c  3e 30 20 80 20 28 58 25  |. FUST%<>0 . (X%|
00005b60  3c 3e 4f 58 25 20 84 20  59 25 3c 3e 4f 59 25 29  |<>OX% . Y%<>OY%)|
00005b70  20 8c 20 f2 72 65 73 74  70 69 63 3a f2 69 6e 70  | . .restpic:.inp|
00005b80  69 63 3a f2 6f 73 74 65  78 74 28 58 25 2c 59 25  |ic:.ostext(X%,Y%|
00005b90  29 3a f2 6f 75 74 70 69  63 3a f2 66 6f 72 63 65  |):.outpic:.force|
00005ba0  64 72 61 77 6d 61 69 6e  3a 4f 58 25 3d 58 25 3a  |drawmain:OX%=X%:|
00005bb0  4f 59 25 3d 59 25 0d 1a  54 0c cd 3a e5 20 8d 54  |OY%=Y%..T..:. .T|
00005bc0  56 5c 0d 1a 5e 25 c9 20  33 31 3a e7 20 46 55 53  |V\..^%. 31:. FUS|
00005bd0  54 25 3c 32 20 8c 20 f2  72 65 63 74 70 6f 6c 6c  |T%<2 . .rectpoll|
00005be0  3a e5 20 8d 54 56 5c 0d  1a 68 3e f2 73 77 61 70  |:. .TV\..h>.swap|
00005bf0  63 6f 72 6e 73 3a 46 4d  49 4e 58 25 3d 58 25 28  |corns:FMINX%=X%(|
00005c00  30 29 3a 46 4d 49 4e 59  25 3d 59 25 28 30 29 3a  |0):FMINY%=Y%(0):|
00005c10  46 4d 41 58 58 25 3d 4f  58 25 3a 46 4d 41 58 59  |FMAXX%=OX%:FMAXY|
00005c20  25 3d 4f 59 25 0d 1a 72  36 c8 99 20 22 48 6f 75  |%=OY%..r6.. "Hou|
00005c30  72 67 6c 61 73 73 5f 4f  6e 22 3a f2 66 69 6c 6c  |rglass_On":.fill|
00005c40  3a c8 99 20 22 48 6f 75  72 67 6c 61 73 73 5f 4f  |:.. "Hourglass_O|
00005c50  66 66 22 3a 46 55 53 54  25 3d 30 0d 1a 7c 1c c9  |ff":FUST%=0..|..|
00005c60  20 33 33 3a e7 20 46 55  53 54 25 3e 3d 32 20 8c  | 33:. FUST%>=2 .|
00005c70  20 e5 20 8d 74 50 5a 0d  1a 86 8f e7 20 46 55 53  | . .tPZ..... FUS|
00005c80  54 25 3d 30 20 80 20 42  55 54 25 3d 31 20 8c 20  |T%=0 . BUT%=1 . |
00005c90  f2 70 69 63 70 6f 73 3a  f2 69 6e 70 69 63 3a 43  |.picpos:.inpic:C|
00005ca0  4f 25 3d b0 58 25 2c 59  25 29 3a 54 49 25 3d c8  |O%=.X%,Y%):TI%=.|
00005cb0  9c 28 58 25 2c 59 25 29  3a f2 6f 75 74 70 69 63  |.(X%,Y%):.outpic|
00005cc0  3a 53 52 45 50 25 3d a4  66 69 6e 64 70 61 6c 65  |:SREP%=.findpale|
00005cd0  6e 74 28 43 4f 25 2c 54  49 25 29 3a f2 66 6f 72  |nt(CO%,TI%):.for|
00005ce0  63 65 64 72 61 77 63 6f  6c 72 65 70 3a e5 20 8d  |cedrawcolrep:. .|
00005cf0  54 56 5c 20 8b 20 f2 72  65 63 74 70 6f 6c 6c 3a  |TV\ . .rectpoll:|
00005d00  e5 20 8d 54 56 5c 0d 1a  90 3e f2 73 77 61 70 63  |. .TV\...>.swapc|
00005d10  6f 72 6e 73 3a 46 4d 49  4e 58 25 3d 58 25 28 30  |orns:FMINX%=X%(0|
00005d20  29 3a 46 4d 49 4e 59 25  3d 59 25 28 30 29 3a 46  |):FMINY%=Y%(0):F|
00005d30  4d 41 58 58 25 3d 4f 58  25 3a 46 4d 41 58 59 25  |MAXX%=OX%:FMAXY%|
00005d40  3d 4f 59 25 0d 1a 9a c2  c8 99 20 22 48 6f 75 72  |=OY%...... "Hour|
00005d50  67 6c 61 73 73 5f 4f 6e  22 3a 21 56 41 52 53 3d  |glass_On":!VARS=|
00005d60  50 49 43 25 3a 56 41 52  53 21 34 3d 50 49 43 25  |PIC%:VARS!4=PIC%|
00005d70  3a 56 41 52 53 21 38 3d  58 25 28 30 29 3a 56 41  |:VARS!8=X%(0):VA|
00005d80  52 53 21 31 32 3d 59 25  28 30 29 3a 56 41 52 53  |RS!12=Y%(0):VARS|
00005d90  21 31 36 3d 4f 58 25 3a  56 41 52 53 21 32 30 3d  |!16=OX%:VARS!20=|
00005da0  4f 59 25 3a 56 41 52 53  21 32 34 3d 42 54 43 25  |OY%:VARS!24=BTC%|
00005db0  3a 56 41 52 53 21 32 38  3d 54 54 42 25 3a 56 41  |:VARS!28=TTB%:VA|
00005dc0  52 53 21 33 32 3d 52 45  50 53 25 3a 41 25 3d 56  |RS!32=REPS%:A%=V|
00005dd0  41 52 53 3a d6 20 63 6f  6c 72 65 70 3a c8 99 20  |ARS:. colrep:.. |
00005de0  22 48 6f 75 72 67 6c 61  73 73 5f 4f 66 66 22 3a  |"Hourglass_Off":|
00005df0  46 55 53 54 25 3d 30 3a  f2 66 6f 72 63 65 64 72  |FUST%=0:.forcedr|
00005e00  61 77 6d 61 69 6e 0d 1a  a4 2d c9 20 33 34 3a e7  |awmain...-. 34:.|
00005e10  20 a4 68 69 67 68 28 33  31 2c 33 29 20 84 20 a4  | .high(31,3) . .|
00005e20  68 69 67 68 28 33 31 2c  34 29 20 8c 20 e5 20 8d  |high(31,4) . . .|
00005e30  54 56 5c 0d 1a ae 14 e7  20 46 55 53 54 25 3d 30  |TV\..... FUST%=0|
00005e40  20 8c 20 8d 64 42 5a 0d  1a b8 7a e7 20 42 55 54  | . .dBZ...z. BUT|
00005e50  25 3d 34 20 8c 20 f2 69  6e 70 69 63 3a f2 70 69  |%=4 . .inpic:.pi|
00005e60  63 70 6f 73 3a f2 70 69  6d 70 6f 72 74 28 4f 58  |cpos:.pimport(OX|
00005e70  25 2c 4f 59 25 2c 33 29  3a f2 69 6d 70 74 69 6c  |%,OY%,3):.imptil|
00005e80  65 3a 4f 58 25 3d 58 25  3a 4f 59 25 3d 59 25 3a  |e:OX%=X%:OY%=Y%:|
00005e90  f2 70 69 6d 70 6f 72 74  28 4f 58 25 2c 4f 59 25  |.pimport(OX%,OY%|
00005ea0  2c 33 29 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |,3):.outpic:.qui|
00005eb0  63 6b 64 72 61 77 6d 61  69 6e 3a e5 20 8d 54 56  |ckdrawmain:. .TV|
00005ec0  5c 0d 1a c2 64 e7 20 46  55 53 54 25 3d 30 20 8c  |\...d. FUST%=0 .|
00005ed0  20 46 55 53 54 25 3d 31  3a f2 70 69 63 70 6f 73  | FUST%=1:.picpos|
00005ee0  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 3a f2  |:OX%=X%:OY%=Y%:.|
00005ef0  69 6e 70 69 63 3a f2 70  69 6d 70 6f 72 74 28 58  |inpic:.pimport(X|
00005f00  25 2c 59 25 2c 33 29 3a  f2 6f 75 74 70 69 63 3a  |%,Y%,3):.outpic:|
00005f10  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 3a e5  |.quickdrawmain:.|
00005f20  20 8d 54 56 5c 0d 1a cc  26 f2 70 69 63 70 6f 73  | .TV\...&.picpos|
00005f30  3a e7 20 58 25 3d 4f 58  25 20 80 20 59 25 3d 4f  |:. X%=OX% . Y%=O|
00005f40  59 25 20 8c 20 e5 20 8d  54 56 5c 0d 1a d6 55 f2  |Y% . . .TV\...U.|
00005f50  69 6e 70 69 63 3a f2 70  69 6d 70 6f 72 74 28 4f  |inpic:.pimport(O|
00005f60  58 25 2c 4f 59 25 2c 33  29 3a 4f 58 25 3d 58 25  |X%,OY%,3):OX%=X%|
00005f70  3a 4f 59 25 3d 59 25 3a  f2 70 69 6d 70 6f 72 74  |:OY%=Y%:.pimport|
00005f80  28 58 25 2c 59 25 2c 33  29 3a f2 6f 75 74 70 69  |(X%,Y%,3):.outpi|
00005f90  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00005fa0  0d 1a e0 6c c9 20 33 36  3a e7 20 46 55 53 54 25  |...l. 36:. FUST%|
00005fb0  3d 30 20 8c 20 f2 70 69  63 70 6f 73 3a f2 69 6e  |=0 . .picpos:.in|
00005fc0  70 69 63 3a f2 65 6f 63  3a c8 93 20 58 25 2c 59  |pic:.eoc:.. X%,Y|
00005fd0  25 2c 46 52 57 25 2a 32  2c 46 52 48 25 2a 34 3a  |%,FRW%*2,FRH%*4:|
00005fe0  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00005ff0  61 77 6d 61 69 6e 3a 4f  58 25 3d 58 25 3a 4f 59  |awmain:OX%=X%:OY|
00006000  25 3d 59 25 3a 46 55 53  54 25 3d 31 0d 1a ea 84  |%=Y%:FUST%=1....|
00006010  f2 70 69 63 70 6f 73 3a  e7 20 58 25 3c 3e 4f 58  |.picpos:. X%<>OX|
00006020  25 20 84 20 59 25 3c 3e  4f 59 25 20 8c 20 f2 69  |% . Y%<>OY% . .i|
00006030  6e 70 69 63 3a f2 65 6f  63 3a c8 93 20 4f 58 25  |npic:.eoc:.. OX%|
00006040  2c 4f 59 25 2c 46 52 57  25 2a 32 2c 46 52 48 25  |,OY%,FRW%*2,FRH%|
00006050  2a 34 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |*4:OX%=X%:OY%=Y%|
00006060  3a c8 93 20 4f 58 25 2c  4f 59 25 2c 46 52 57 25  |:.. OX%,OY%,FRW%|
00006070  2a 32 2c 46 52 48 25 2a  34 3a f2 6f 75 74 70 69  |*2,FRH%*4:.outpi|
00006080  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00006090  0d 1a f4 14 e7 20 42 55  54 25 3c 3e 34 20 8c 20  |..... BUT%<>4 . |
000060a0  8d 54 56 5c 0d 1a fe 7e  f2 69 6e 70 69 63 3a f2  |.TV\...~.inpic:.|
000060b0  65 6f 63 3a c8 93 20 4f  58 25 2c 4f 59 25 2c 46  |eoc:.. OX%,OY%,F|
000060c0  52 57 25 2a 32 2c 46 52  48 25 2a 34 3a f2 73 65  |RW%*2,FRH%*4:.se|
000060d0  74 63 6f 6c 3a c8 93 20  4f 58 25 2c 4f 59 25 2c  |tcol:.. OX%,OY%,|
000060e0  46 52 57 25 2a 32 2c 46  52 48 25 2a 34 3a f2 65  |FRW%*2,FRH%*4:.e|
000060f0  6f 63 3a c8 93 20 4f 58  25 2c 4f 59 25 2c 46 52  |oc:.. OX%,OY%,FR|
00006100  57 25 2a 32 2c 46 52 48  25 2a 34 3a f2 6f 75 74  |W%*2,FRH%*4:.out|
00006110  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00006120  69 6e 0d 1b 08 11 c9 20  33 38 3a f2 70 6f 6c 6c  |in..... 38:.poll|
00006130  5f 33 38 0d 1b 12 11 c9  20 33 39 3a f2 70 6f 6c  |_38..... 39:.pol|
00006140  6c 5f 33 39 0d 1b 1c 11  c9 20 34 30 3a f2 70 6f  |l_39..... 40:.po|
00006150  6c 6c 5f 34 30 0d 1b 26  11 c9 20 34 31 3a f2 70  |ll_40..&.. 41:.p|
00006160  6f 6c 6c 5f 34 31 0d 1b  30 25 c9 20 34 32 3a e7  |oll_41..0%. 42:.|
00006170  20 46 55 53 54 25 3c 32  20 8c 20 f2 72 65 63 74  | FUST%<2 . .rect|
00006180  70 6f 6c 6c 3a e5 20 8d  54 56 5c 0d 1b 3a 0f f2  |poll:. .TV\..:..|
00006190  73 75 70 69 78 74 72 61  6e 73 0d 1b 44 6b 52 57  |supixtrans..DkRW|
000061a0  25 3d bb a4 67 69 28 32  35 2c 31 33 29 3a 47 57  |%=..gi(25,13):GW|
000061b0  25 3d bb a4 67 69 28 32  35 2c 31 35 29 3a 42 57  |%=..gi(25,15):BW|
000061c0  25 3d bb a4 67 69 28 32  35 2c 31 37 29 3a e3 4c  |%=..gi(25,17):.L|
000061d0  25 3d 30 20 b8 20 32 35  35 3a c8 99 20 22 43 6f  |%=0 . 255:.. "Co|
000061e0  6c 6f 75 72 54 72 61 6e  73 5f 43 6f 6c 6f 75 72  |lourTrans_Colour|
000061f0  4e 75 6d 62 65 72 54 6f  47 43 4f 4c 22 2c 4c 25  |NumberToGCOL",L%|
00006200  20 b8 20 47 25 0d 1b 4e  53 52 43 25 3d 28 47 25  | . G%..NSRC%=(G%|
00006210  80 25 31 31 31 31 29 2a  52 57 25 3a 47 43 25 3d  |.%1111)*RW%:GC%=|
00006220  28 28 28 47 25 80 34 38  29 3e 3e 32 29 2b 28 47  |(((G%.48)>>2)+(G|
00006230  25 80 33 29 29 2a 47 57  25 3a 42 43 25 3d 28 28  |%.3))*GW%:BC%=((|
00006240  28 47 25 80 31 39 32 29  3e 3e 34 29 2b 28 47 25  |(G%.192)>>4)+(G%|
00006250  80 33 29 29 2a 42 57 25  0d 1b 58 2b 54 43 25 3d  |.3))*BW%..X+TC%=|
00006260  28 28 52 43 25 2b 47 43  25 2b 42 43 25 29 81 33  |((RC%+GC%+BC%).3|
00006270  29 3a e7 20 54 43 25 3e  31 35 20 8c 20 54 43 25  |):. TC%>15 . TC%|
00006280  3d 31 35 0d 1b 62 78 54  43 25 3d 28 54 43 25 20  |=15..bxTC%=(TC% |
00006290  80 20 33 29 2b 28 28 54  43 25 80 31 32 29 2a 52  |. 3)+((TC%.12)*R|
000062a0  53 4d 25 29 2b 28 28 28  54 43 25 80 31 32 29 3c  |SM%)+(((TC%.12)<|
000062b0  3c 32 29 2a 47 53 4d 25  29 2b 28 28 28 54 43 25  |<2)*GSM%)+(((TC%|
000062c0  80 31 32 29 3c 3c 34 29  2a 42 53 4d 25 29 3a c8  |.12)<<4)*BSM%):.|
000062d0  99 22 43 6f 6c 6f 75 72  54 72 61 6e 73 5f 47 43  |."ColourTrans_GC|
000062e0  4f 4c 54 6f 43 6f 6c 6f  75 72 4e 75 6d 62 65 72  |OLToColourNumber|
000062f0  22 2c 54 43 25 20 b8 20  54 43 25 0d 1b 6c 16 54  |",TC% . TC%..l.T|
00006300  52 41 4e 53 54 41 42 25  3f 4c 25 3d 54 43 25 3a  |RANSTAB%?L%=TC%:|
00006310  ed 0d 1b 76 41 41 25 3d  56 41 52 53 3a d6 20 74  |...vAA%=VARS:. t|
00006320  72 61 6e 73 61 72 65 61  3a c8 99 20 22 48 6f 75  |ransarea:.. "Hou|
00006330  72 67 6c 61 73 73 5f 4f  66 66 22 3a 46 55 53 54  |rglass_Off":FUST|
00006340  25 3d 30 3a f2 66 6f 72  63 65 64 72 61 77 6d 61  |%=0:.forcedrawma|
00006350  69 6e 0d 1b 80 11 c9 20  34 33 3a f2 70 6f 6c 6c  |in..... 43:.poll|
00006360  5f 34 33 0d 1b 8a 11 c9  20 34 34 3a f2 70 6f 6c  |_43..... 44:.pol|
00006370  6c 5f 34 34 0d 1b 94 25  c9 20 34 37 3a e7 20 46  |l_44...%. 47:. F|
00006380  55 53 54 25 3c 32 20 8c  20 f2 72 65 63 74 70 6f  |UST%<2 . .rectpo|
00006390  6c 6c 3a e5 20 8d 54 56  5c 0d 1b 9e 2d f2 73 70  |ll:. .TV\...-.sp|
000063a0  69 6e 69 74 3a f2 73 70  62 75 66 28 31 36 31 2a  |init:.spbuf(161*|
000063b0  31 30 32 34 29 3a e7 20  51 25 20 8c 20 f2 73 70  |1024):. Q% . .sp|
000063c0  62 75 66 65 72 72 0d 1b  a8 19 f2 62 61 63 6b 75  |buferr.....backu|
000063d0  70 70 69 63 3a f2 73 77  61 70 63 6f 72 6e 73 0d  |ppic:.swapcorns.|
000063e0  1b b2 af 56 41 52 53 21  38 3d 58 25 28 30 29 3a  |...VARS!8=X%(0):|
000063f0  56 41 52 53 21 31 32 3d  59 25 28 30 29 3a 56 41  |VARS!12=Y%(0):VA|
00006400  52 53 21 31 36 3d 4f 58  25 3a 56 41 52 53 21 32  |RS!16=OX%:VARS!2|
00006410  30 3d 4f 59 25 3a 56 41  52 53 21 32 34 3d bb 28  |0=OY%:VARS!24=.(|
00006420  a4 67 69 28 32 39 2c 35  29 29 3a 56 41 52 53 21  |.gi(29,5)):VARS!|
00006430  32 38 3d 42 4c 4b 25 2b  35 31 32 3a 41 25 3d 56  |28=BLK%+512:A%=V|
00006440  41 52 53 3a c8 99 22 48  6f 75 72 67 6c 61 73 73  |ARS:.."Hourglass|
00006450  5f 4f 6e 22 3a d6 20 66  69 6c 74 65 72 3a c8 99  |_On":. filter:..|
00006460  22 48 6f 75 72 67 6c 61  73 73 5f 4f 66 66 22 3a  |"Hourglass_Off":|
00006470  f2 73 70 69 6e 69 74 3a  f2 66 6f 72 63 65 64 72  |.spinit:.forcedr|
00006480  61 77 6d 61 69 6e 3a 46  55 53 54 25 3d 30 0d 1b  |awmain:FUST%=0..|
00006490  bc 25 c9 20 34 38 3a e7  20 46 55 53 54 25 3c 32  |.%. 48:. FUST%<2|
000064a0  20 8c 20 f2 72 65 63 74  70 6f 6c 6c 3a e5 20 8d  | . .rectpoll:. .|
000064b0  54 56 5c 0d 1b c6 2d f2  73 70 69 6e 69 74 3a f2  |TV\...-.spinit:.|
000064c0  73 70 62 75 66 28 31 36  31 2a 31 30 32 34 29 3a  |spbuf(161*1024):|
000064d0  e7 20 51 25 20 8c 20 f2  73 70 62 75 66 65 72 72  |. Q% . .spbuferr|
000064e0  0d 1b d0 19 f2 62 61 63  6b 75 70 70 69 63 3a f2  |.....backuppic:.|
000064f0  73 77 61 70 63 6f 72 6e  73 0d 1b da 10 57 45 25  |swapcorns....WE%|
00006500  3d 31 3a e5 20 8d 54 7e  5c 0d 1b e4 2d e7 20 a4  |=1:. .T~\...-. .|
00006510  68 69 67 68 28 33 30 2c  32 35 29 20 8c 20 56 41  |high(30,25) . VA|
00006520  52 53 21 33 36 3d 31 20  8b 20 56 41 52 53 21 33  |RS!36=1 . VARS!3|
00006530  36 3d 26 32 38 30 0d 1b  ee 28 56 41 52 53 21 34  |6=&280...(VARS!4|
00006540  30 3d 30 3a e7 20 a4 68  69 67 68 28 33 30 2c 34  |0=0:. .high(30,4|
00006550  34 29 20 8c 20 56 41 52  53 21 34 30 3d 31 0d 1b  |4) . VARS!40=1..|
00006560  f8 2a e7 20 a4 68 69 67  68 28 33 30 2c 33 32 29  |.*. .high(30,32)|
00006570  20 8c 20 56 41 52 53 21  34 34 3d 31 20 8b 20 56  | . VARS!44=1 . V|
00006580  41 52 53 21 34 34 3d 30  0d 1c 02 a6 56 41 52 53  |ARS!44=0....VARS|
00006590  21 38 3d 58 25 28 30 29  3a 56 41 52 53 21 31 32  |!8=X%(0):VARS!12|
000065a0  3d 59 25 28 30 29 3a 56  41 52 53 21 31 36 3d 4f  |=Y%(0):VARS!16=O|
000065b0  58 25 3a 56 41 52 53 21  32 30 3d 4f 59 25 3a 56  |X%:VARS!20=OY%:V|
000065c0  41 52 53 21 32 34 3d 54  41 53 25 2b 35 31 32 3a  |ARS!24=TAS%+512:|
000065d0  56 41 52 53 21 32 38 3d  42 54 43 25 3a 56 41 52  |VARS!28=BTC%:VAR|
000065e0  53 21 33 32 3d 54 52 41  53 50 25 3a 41 25 3d 56  |S!32=TRASP%:A%=V|
000065f0  41 52 53 3a d6 20 77 6f  62 62 6c 65 3a c8 99 20  |ARS:. wobble:.. |
00006600  22 48 6f 75 72 67 6c 61  73 73 5f 4f 66 66 22 3a  |"Hourglass_Off":|
00006610  f2 73 70 69 6e 69 74 3a  f2 66 6f 72 63 65 64 72  |.spinit:.forcedr|
00006620  61 77 6d 61 69 6e 3a 46  55 53 54 25 3d 30 0d 1c  |awmain:FUST%=0..|
00006630  0c 23 e7 20 57 45 52 25  20 8c 20 f2 6b 69 6c 6c  |.#. WER% . .kill|
00006640  66 3a 46 55 53 45 25 3d  2d 31 3a e5 20 8d 44 5a  |f:FUSE%=-1:. .DZ|
00006650  40 0d 1c 16 05 cb 0d 1c  20 05 e1 0d 1c 2a 04 0d  |@....... ....*..|
00006660  1c 34 44 f4 20 2a 2a 20  54 68 69 73 20 69 73 20  |.4D. ** This is |
00006670  6a 75 6d 70 65 64 20 73  74 72 61 69 67 68 74 20  |jumped straight |
00006680  74 6f 20 62 65 63 61 75  73 65 20 6f 66 20 65 72  |to because of er|
00006690  72 6f 72 20 63 6f 6e 74  72 6f 6c 20 28 66 6c 75  |ror control (flu|
000066a0  62 21 29 0d 1c 3e 71 41  3d bb 28 a4 67 69 28 33  |b!)..>qA=.(.gi(3|
000066b0  30 2c 34 32 29 29 3a 4b  25 3d 54 41 53 25 2b 35  |0,42)):K%=TAS%+5|
000066c0  31 32 3a 4c 25 3d 30 3a  57 45 52 25 3d a3 3a 45  |12:L%=0:WER%=.:E|
000066d0  52 25 3d a3 3a 46 24 3d  a4 67 69 28 33 30 2c 32  |R%=.:F$=.gi(30,2|
000066e0  37 29 3a 4d 47 25 3d bb  28 a4 67 69 28 33 30 2c  |7):MG%=.(.gi(30,|
000066f0  35 29 29 3a c8 99 20 22  48 6f 75 72 67 6c 61 73  |5)):.. "Hourglas|
00006700  73 5f 4f 6e 22 3a f2 73  69 28 33 30 2c 33 36 2c  |s_On":.si(30,36,|
00006710  22 20 22 29 0d 1c 48 1b  ee 20 85 20 45 52 25 3d  |" ")..H.. . ER%=|
00006720  b9 3a 57 45 52 25 3d b9  3a e5 20 8d 44 5c 5c 0d  |.:WER%=.:. .D\\.|
00006730  1c 52 17 4b 25 21 28 4c  25 2a 34 29 3d a0 28 46  |.R.K%!(L%*4)=.(F|
00006740  24 29 2a 4d 47 25 0d 1c  5c 39 e7 20 45 52 25 3d  |$)*MG%..\9. ER%=|
00006750  b9 20 8c 20 f2 73 69 28  33 30 2c 33 36 2c 22 45  |. . .si(30,36,"E|
00006760  72 72 6f 72 20 61 74 20  41 3d 22 2b c3 28 41 29  |rror at A="+.(A)|
00006770  29 3a 4b 25 21 4c 25 3d  30 3a 45 52 25 3d a3 0d  |):K%!L%=0:ER%=..|
00006780  1c 66 2c 41 2b 3d bb 28  a4 67 69 28 33 30 2c 31  |.f,A+=.(.gi(30,1|
00006790  31 29 29 3a 4c 25 2b 3d  31 3a e7 20 4c 25 3c 36  |1)):L%+=1:. L%<6|
000067a0  31 38 20 8c 20 e5 20 8d  44 52 5c 0d 1c 70 0f ee  |18 . . .DR\..p..|
000067b0  20 85 20 f2 6d 61 6b 65  72 72 0d 1c 7a 1d e7 20  | . .makerr..z.. |
000067c0  57 45 25 3d 32 20 8c 20  e5 20 8d 44 44 6f 20 8b  |WE%=2 . . .DDo .|
000067d0  20 e5 20 8d 64 64 5b 0d  1c 84 04 0d 1c 8e 14 dd  | . .dd[.........|
000067e0  f2 63 6f 6e 74 72 61 73  74 28 f8 20 4c 25 29 0d  |.contrast(. L%).|
000067f0  1c 98 1a e7 20 43 4f 4e  4c 25 3e 43 4f 4e 48 25  |.... CONL%>CONH%|
00006800  20 8c 20 e5 20 8d 74 76  5c 0d 1c a2 30 e7 20 4c  | . . .tv\...0. L|
00006810  25 3c 3d 43 4f 4e 4c 25  20 8c 20 4c 25 3d 30 3a  |%<=CONL% . L%=0:|
00006820  e1 20 8b 20 e7 20 4c 25  3e 3d 43 4f 4e 48 25 20  |. . . L%>=CONH% |
00006830  8c 20 4c 25 3d 31 35 3a  e1 0d 1c ac 2e 4b 25 3d  |. L%=15:.....K%=|
00006840  4c 25 2d 43 4f 4e 4c 25  3a 49 25 3d 43 4f 4e 48  |L%-CONL%:I%=CONH|
00006850  25 2d 43 4f 4e 4c 25 3a  4c 25 3d 28 4b 25 2f 49  |%-CONL%:L%=(K%/I|
00006860  25 29 2a 31 35 3a e1 0d  1c b6 1a e7 20 43 4f 4e  |%)*15:...... CON|
00006870  4c 25 3d 43 4f 4e 48 25  20 8c 20 e5 20 8d 64 54  |L%=CONH% . . .dT|
00006880  5c 0d 1c c0 31 e7 20 4c  25 3c 3d 43 4f 4e 48 25  |\...1. L%<=CONH%|
00006890  20 8c 20 4c 25 3d 31 35  3a e1 20 8b 20 e7 20 4c  | . L%=15:. . . L|
000068a0  25 3e 3d 43 4f 4e 4c 25  20 8c 20 4c 25 3d 31 35  |%>=CONL% . L%=15|
000068b0  3a e1 0d 1c ca 33 4b 25  3d 4c 25 2d 43 4f 4e 48  |:....3K%=L%-CONH|
000068c0  25 3a 49 25 3d 43 4f 4e  4c 25 2d 43 4f 4e 48 25  |%:I%=CONL%-CONH%|
000068d0  3a 4c 25 3d 31 35 2d 28  28 4b 25 2f 49 25 29 2a  |:L%=15-((K%/I%)*|
000068e0  31 35 29 3a e1 0d 1c d4  1d e7 20 4c 25 3c 43 4f  |15):...... L%<CO|
000068f0  4e 4c 25 20 8c 20 4c 25  3d 30 20 8b 20 4c 25 3d  |NL% . L%=0 . L%=|
00006900  31 35 0d 1c de 05 e1 0d  1c e8 04 0d 1c f2 d7 dd  |15..............|
00006910  f2 73 75 70 69 78 74 72  61 6e 73 3a f2 73 77 61  |.supixtrans:.swa|
00006920  70 63 6f 72 6e 73 3a 46  4d 49 4e 58 25 3d 58 25  |pcorns:FMINX%=X%|
00006930  28 30 29 3a 46 4d 49 4e  59 25 3d 59 25 28 30 29  |(0):FMINY%=Y%(0)|
00006940  3a 46 4d 41 58 58 25 3d  4f 58 25 3a 46 4d 41 58  |:FMAXX%=OX%:FMAX|
00006950  59 25 3d 4f 59 25 3a c8  99 20 22 48 6f 75 72 67  |Y%=OY%:.. "Hourg|
00006960  6c 61 73 73 5f 4f 6e 22  3a 21 56 41 52 53 3d 50  |lass_On":!VARS=P|
00006970  49 43 25 3a 56 41 52 53  21 34 3d 50 49 43 25 3a  |IC%:VARS!4=PIC%:|
00006980  56 41 52 53 21 38 3d 58  25 28 30 29 3a 56 41 52  |VARS!8=X%(0):VAR|
00006990  53 21 31 32 3d 59 25 28  30 29 3a 56 41 52 53 21  |S!12=Y%(0):VARS!|
000069a0  31 36 3d 4f 58 25 3a 56  41 52 53 21 32 30 3d 4f  |16=OX%:VARS!20=O|
000069b0  59 25 3a 56 41 52 53 21  32 34 3d 54 52 41 53 50  |Y%:VARS!24=TRASP|
000069c0  25 3a 56 41 52 53 21 32  38 3d 42 54 43 25 3a 56  |%:VARS!28=BTC%:V|
000069d0  41 52 53 21 33 32 3d 54  52 41 4e 53 54 41 42 25  |ARS!32=TRANSTAB%|
000069e0  3a e1 0d 1c fc 04 0d 1d  06 b3 dd f2 70 72 6f 74  |:...........prot|
000069f0  62 6f 78 28 43 58 25 2c  43 59 25 29 3a f2 65 6f  |box(CX%,CY%):.eo|
00006a00  63 3a 52 25 3d 52 4f 54  25 3a f2 72 6f 74 70 6f  |c:R%=ROT%:.rotpo|
00006a10  69 6e 74 28 46 4d 49 4e  58 25 2c 46 4d 49 4e 59  |int(FMINX%,FMINY|
00006a20  25 2c 52 25 2c 58 31 25  2c 59 31 25 29 3a f2 72  |%,R%,X1%,Y1%):.r|
00006a30  6f 74 70 6f 69 6e 74 28  46 4d 41 58 58 25 2c 46  |otpoint(FMAXX%,F|
00006a40  4d 49 4e 59 25 2c 52 25  2c 58 32 25 2c 59 32 25  |MINY%,R%,X2%,Y2%|
00006a50  29 3a f2 72 6f 74 70 6f  69 6e 74 28 46 4d 41 58  |):.rotpoint(FMAX|
00006a60  58 25 2c 46 4d 41 58 59  25 2c 52 25 2c 58 33 25  |X%,FMAXY%,R%,X3%|
00006a70  2c 59 33 25 29 3a f2 72  6f 74 70 6f 69 6e 74 28  |,Y3%):.rotpoint(|
00006a80  46 4d 49 4e 58 25 2c 46  4d 41 58 59 25 2c 52 25  |FMINX%,FMAXY%,R%|
00006a90  2c 58 34 25 2c 59 34 25  29 0d 1d 10 51 f2 72 6f  |,X4%,Y4%)...Q.ro|
00006aa0  74 70 6f 69 6e 74 28 30  2c 28 46 4d 41 58 59 25  |tpoint(0,(FMAXY%|
00006ab0  81 33 29 2a 32 2c 52 25  2c 4d 58 31 25 2c 4d 59  |.3)*2,R%,MX1%,MY|
00006ac0  31 25 29 3a f2 72 6f 74  70 6f 69 6e 74 28 30 2c  |1%):.rotpoint(0,|
00006ad0  28 46 4d 41 58 59 25 81  33 29 2a 34 2c 52 25 2c  |(FMAXY%.3)*4,R%,|
00006ae0  4d 58 32 25 2c 4d 59 32  25 29 0d 1d 1a 27 58 31  |MX2%,MY2%)...'X1|
00006af0  25 2b 3d 43 58 25 3a 58  32 25 2b 3d 43 58 25 3a  |%+=CX%:X2%+=CX%:|
00006b00  58 33 25 2b 3d 43 58 25  3a 58 34 25 2b 3d 43 58  |X3%+=CX%:X4%+=CX|
00006b10  25 0d 1d 24 27 59 31 25  2b 3d 43 59 25 3a 59 32  |%..$'Y1%+=CY%:Y2|
00006b20  25 2b 3d 43 59 25 3a 59  33 25 2b 3d 43 59 25 3a  |%+=CY%:Y3%+=CY%:|
00006b30  59 34 25 2b 3d 43 59 25  0d 1d 2e 3a f0 34 2c 58  |Y4%+=CY%...:.4,X|
00006b40  31 25 2c 59 31 25 3a f0  35 2c 58 32 25 2c 59 32  |1%,Y1%:.5,X2%,Y2|
00006b50  25 3a f0 35 2c 58 33 25  2c 59 33 25 3a f0 35 2c  |%:.5,X3%,Y3%:.5,|
00006b60  58 34 25 2c 59 34 25 3a  f0 35 2c 58 31 25 2c 59  |X4%,Y4%:.5,X1%,Y|
00006b70  31 25 0d 1d 38 29 86 20  4d 58 31 25 2b 43 58 25  |1%..8). MX1%+CX%|
00006b80  2c 4d 59 31 25 2b 43 59  25 2c 4d 58 32 25 2b 43  |,MY1%+CY%,MX2%+C|
00006b90  58 25 2c 4d 59 32 25 2b  43 59 25 0d 1d 42 05 e1  |X%,MY2%+CY%..B..|
00006ba0  0d 1d 4c 04 0d 1d 56 28  dd f2 72 6f 74 70 6f 69  |..L...V(..rotpoi|
00006bb0  6e 74 28 52 30 25 2c 52  31 25 2c 52 25 2c f8 20  |nt(R0%,R1%,R%,. |
00006bc0  52 50 58 25 2c f8 20 52  50 59 25 29 0d 1d 60 9c  |RPX%,. RPY%)..`.|
00006bd0  52 36 25 3d 28 52 4f 54  54 41 42 25 21 28 52 25  |R6%=(ROTTAB%!(R%|
00006be0  2a 34 29 29 3e 3e 31 32  3a 52 37 25 3d 28 21 28  |*4))>>12:R7%=(!(|
00006bf0  52 4f 54 54 41 42 25 2b  28 52 25 2a 34 29 2b 26  |ROTTAB%+(R%*4)+&|
00006c00  31 36 38 29 29 3e 3e 31  32 3a 52 38 25 3d 52 30  |168))>>12:R8%=R0|
00006c10  25 2a 52 36 25 3a 52 35  25 3d 52 31 25 2a 52 37  |%*R6%:R5%=R1%*R7|
00006c20  25 3a 52 38 25 2d 3d 52  35 25 3a 52 35 25 3d 52  |%:R8%-=R5%:R5%=R|
00006c30  31 25 2a 52 36 25 3a 52  31 25 3d 52 30 25 2a 52  |1%*R6%:R1%=R0%*R|
00006c40  37 25 3a 52 31 25 2b 3d  52 35 25 3a 52 50 58 25  |7%:R1%+=R5%:RPX%|
00006c50  3d 52 31 25 3e 3e 31 38  3a 52 50 59 25 3d 2d 28  |=R1%>>18:RPY%=-(|
00006c60  52 38 25 3e 3e 31 38 29  0d 1d 6a 05 e1 0d 1d 74  |R8%>>18)..j....t|
00006c70  04 0d 1d 7e 13 dd a4 70  65 72 63 28 57 48 25 2c  |...~...perc(WH%,|
00006c80  49 48 25 29 0d 1d 88 32  49 24 3d a4 67 69 28 57  |IH%)...2I$=.gi(W|
00006c90  48 25 2c 49 48 25 29 3a  e7 20 c2 49 24 2c 31 29  |H%,IH%):. .I$,1)|
00006ca0  3d 22 25 22 20 8c 20 49  24 3d c0 49 24 2c a9 28  |="%" . I$=.I$,.(|
00006cb0  49 24 29 2d 31 29 0d 1d  92 0a 3d bb 28 49 24 29  |I$)-1)....=.(I$)|
00006cc0  0d 1d 9c 04 0d 1d a6 13  dd f2 67 72 61 62 70 6f  |..........grabpo|
00006cd0  6c 6c 28 46 54 25 29 0d  1d b0 98 e7 20 46 55 53  |ll(FT%)..... FUS|
00006ce0  54 25 3d 30 20 80 20 42  55 54 25 3c 3e 30 20 8c  |T%=0 . BUT%<>0 .|
00006cf0  20 f2 70 69 63 70 6f 73  3a 58 25 28 30 29 3d 58  | .picpos:X%(0)=X|
00006d00  25 3a 59 25 28 30 29 3d  59 25 3a 46 55 53 54 25  |%:Y%(0)=Y%:FUST%|
00006d10  3d 31 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |=1:OX%=X%:OY%=Y%|
00006d20  3a f2 69 6e 70 69 63 3a  f2 65 6f 63 3a c8 93 20  |:.inpic:.eoc:.. |
00006d30  58 25 28 30 29 2c 59 25  28 30 29 2c 4f 58 25 2d  |X%(0),Y%(0),OX%-|
00006d40  58 25 28 30 29 2c 4f 59  25 2d 59 25 28 30 29 3a  |X%(0),OY%-Y%(0):|
00006d50  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00006d60  61 77 6d 61 69 6e 3a f2  6c 65 74 67 6f 3a e1 0d  |awmain:.letgo:..|
00006d70  1d ba 11 e7 20 46 55 53  54 25 3d 30 20 8c 20 e1  |.... FUST%=0 . .|
00006d80  0d 1d c4 7b e7 20 42 55  54 25 3d 31 20 8c 20 f2  |...{. BUT%=1 . .|
00006d90  69 6e 70 69 63 3a f2 65  6f 63 3a c8 93 20 58 25  |inpic:.eoc:.. X%|
00006da0  28 30 29 2c 59 25 28 30  29 2c 4f 58 25 2d 58 25  |(0),Y%(0),OX%-X%|
00006db0  28 30 29 2c 4f 59 25 2d  59 25 28 30 29 3a f2 70  |(0),OY%-Y%(0):.p|
00006dc0  69 63 70 6f 73 3a 4f 58  25 3d 58 25 3a 4f 59 25  |icpos:OX%=X%:OY%|
00006dd0  3d 59 25 3a 46 55 53 54  25 3d 30 3a f2 6f 75 74  |=Y%:FUST%=0:.out|
00006de0  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00006df0  69 6e 3a f2 6c 65 74 67  6f 3a e1 0d 1d ce 30 e7  |in:.letgo:....0.|
00006e00  20 42 55 54 25 3c 3e 34  20 84 20 28 4f 58 25 3d  | BUT%<>4 . (OX%=|
00006e10  58 25 28 30 29 20 80 20  4f 59 25 3d 59 25 28 30  |X%(0) . OY%=Y%(0|
00006e20  29 29 20 8c 20 e5 20 8d  54 68 5e 0d 1d d8 b4 f2  |)) . . .Th^.....|
00006e30  69 6e 70 69 63 3a f2 65  6f 63 3a c8 93 20 58 25  |inpic:.eoc:.. X%|
00006e40  28 30 29 2c 59 25 28 30  29 2c 4f 58 25 2d 58 25  |(0),Y%(0),OX%-X%|
00006e50  28 30 29 2c 4f 59 25 2d  59 25 28 30 29 3a f2 70  |(0),OY%-Y%(0):.p|
00006e60  69 63 70 6f 73 3a f2 73  70 62 75 66 28 a4 73 70  |icpos:.spbuf(.sp|
00006e70  72 69 74 65 73 69 7a 65  28 58 25 2d 58 25 28 30  |ritesize(X%-X%(0|
00006e80  29 2c 59 25 2d 59 25 28  30 29 2c 94 28 a4 68 69  |),Y%-Y%(0),.(.hi|
00006e90  67 68 28 38 2c 31 34 29  29 29 29 3a e7 20 51 25  |gh(8,14)))):. Q%|
00006ea0  20 8c 20 c8 93 20 58 25  28 30 29 2c 59 25 28 30  | . .. X%(0),Y%(0|
00006eb0  29 2c 4f 58 25 2d 58 25  28 30 29 2c 4f 59 25 2d  |),OX%-X%(0),OY%-|
00006ec0  59 25 28 30 29 3a f2 6f  75 74 70 69 63 3a f2 73  |Y%(0):.outpic:.s|
00006ed0  70 69 6e 69 74 3a f2 73  70 62 75 66 65 72 72 0d  |pinit:.spbuferr.|
00006ee0  1d e2 80 47 52 4e 24 3d  22 47 52 41 42 22 3a c8  |...GRN$="GRAB":.|
00006ef0  99 26 32 45 2c 32 37 32  2c 53 50 42 55 46 25 2c  |.&2E,272,SPBUF%,|
00006f00  22 47 52 41 42 22 2c 2c  58 25 28 30 29 2c 59 25  |"GRAB",,X%(0),Y%|
00006f10  28 30 29 2c 58 25 2c 59  25 3a e7 20 a4 68 69 67  |(0),X%,Y%:. .hig|
00006f20  68 28 38 2c 31 34 29 20  8c 20 c8 99 26 32 45 2c  |h(8,14) . ..&2E,|
00006f30  32 38 35 2c 53 50 42 55  46 25 2c 22 47 52 41 42  |285,SPBUF%,"GRAB|
00006f40  22 3a 47 52 41 42 4d 25  3d 38 3a f2 66 69 6c 6c  |":GRABM%=8:.fill|
00006f50  6d 61 73 6b 20 8b 20 47  52 41 42 4d 25 3d 30 0d  |mask . GRABM%=0.|
00006f60  1d ec 27 47 52 57 49 25  3d 94 28 58 25 2d 58 25  |..'GRWI%=.(X%-X%|
00006f70  28 30 29 29 3a 47 52 48  45 25 3d 94 28 59 25 2d  |(0)):GRHE%=.(Y%-|
00006f80  59 25 28 30 29 29 0d 1d  f6 1c e7 20 58 25 3c 58  |Y%(0))..... X%<X|
00006f90  25 28 30 29 20 8c 20 c8  94 20 58 25 28 30 29 2c  |%(0) . .. X%(0),|
00006fa0  58 25 0d 1e 00 1c e7 20  59 25 3c 59 25 28 30 29  |X%..... Y%<Y%(0)|
00006fb0  20 8c 20 c8 94 20 59 25  28 30 29 2c 59 25 0d 1e  | . .. Y%(0),Y%..|
00006fc0  0a 3a e7 20 46 54 25 3d  31 20 8c 20 c8 99 26 32  |.:. FT%=1 . ..&2|
00006fd0  45 2c 32 39 30 2c 53 50  42 55 46 25 2c 22 47 52  |E,290,SPBUF%,"GR|
00006fe0  41 42 22 2c 58 25 28 30  29 2c 59 25 28 30 29 2c  |AB",X%(0),Y%(0),|
00006ff0  33 2b 47 52 41 42 4d 25  0d 1e 14 13 f2 70 67 72  |3+GRABM%.....pgr|
00007000  61 62 28 58 25 2c 59 25  2c 33 29 0d 1e 1e 39 4f  |ab(X%,Y%,3)...9O|
00007010  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a f2 6f 75  |X%=X%:OY%=Y%:.ou|
00007020  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00007030  61 69 6e 3a f2 6c 65 74  67 6f 3a 46 55 53 54 25  |ain:.letgo:FUST%|
00007040  3d 32 3a e1 0d 1e 28 21  f2 70 69 63 70 6f 73 3a  |=2:...(!.picpos:|
00007050  e7 20 58 25 3d 4f 58 25  20 80 20 59 25 3d 4f 59  |. X%=OX% . Y%=OY|
00007060  25 20 8c 20 e1 0d 1e 32  78 f2 69 6e 70 69 63 3a  |% . ...2x.inpic:|
00007070  f2 65 6f 63 3a c8 93 20  58 25 28 30 29 2c 59 25  |.eoc:.. X%(0),Y%|
00007080  28 30 29 2c 4f 58 25 2d  58 25 28 30 29 2c 4f 59  |(0),OX%-X%(0),OY|
00007090  25 2d 59 25 28 30 29 3a  4f 58 25 3d 58 25 3a 4f  |%-Y%(0):OX%=X%:O|
000070a0  59 25 3d 59 25 3a c8 93  20 58 25 28 30 29 2c 59  |Y%=Y%:.. X%(0),Y|
000070b0  25 28 30 29 2c 58 25 2d  58 25 28 30 29 2c 59 25  |%(0),X%-X%(0),Y%|
000070c0  2d 59 25 28 30 29 3a f2  6f 75 74 70 69 63 3a f2  |-Y%(0):.outpic:.|
000070d0  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 0d 1e 3c  |quickdrawmain..<|
000070e0  05 e1 0d 1e 46 04 0d 1e  50 0e dd f2 72 65 63 74  |....F...P...rect|
000070f0  70 6f 6c 6c 0d 1e 5a 98  e7 20 46 55 53 54 25 3d  |poll..Z.. FUST%=|
00007100  30 20 80 20 42 55 54 25  3c 3e 30 20 8c 20 f2 70  |0 . BUT%<>0 . .p|
00007110  69 63 70 6f 73 3a 58 25  28 30 29 3d 58 25 3a 59  |icpos:X%(0)=X%:Y|
00007120  25 28 30 29 3d 59 25 3a  46 55 53 54 25 3d 31 3a  |%(0)=Y%:FUST%=1:|
00007130  4f 58 25 3d 58 25 3a 4f  59 25 3d 59 25 3a f2 69  |OX%=X%:OY%=Y%:.i|
00007140  6e 70 69 63 3a f2 65 6f  63 3a c8 93 20 58 25 28  |npic:.eoc:.. X%(|
00007150  30 29 2c 59 25 28 30 29  2c 4f 58 25 2d 58 25 28  |0),Y%(0),OX%-X%(|
00007160  30 29 2c 4f 59 25 2d 59  25 28 30 29 3a f2 6f 75  |0),OY%-Y%(0):.ou|
00007170  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00007180  61 69 6e 3a f2 6c 65 74  67 6f 3a e1 0d 1e 64 11  |ain:.letgo:...d.|
00007190  e7 20 46 55 53 54 25 3d  30 20 8c 20 e1 0d 1e 6e  |. FUST%=0 . ...n|
000071a0  7b e7 20 42 55 54 25 3d  31 20 8c 20 f2 69 6e 70  |{. BUT%=1 . .inp|
000071b0  69 63 3a f2 65 6f 63 3a  c8 93 20 58 25 28 30 29  |ic:.eoc:.. X%(0)|
000071c0  2c 59 25 28 30 29 2c 4f  58 25 2d 58 25 28 30 29  |,Y%(0),OX%-X%(0)|
000071d0  2c 4f 59 25 2d 59 25 28  30 29 3a f2 70 69 63 70  |,OY%-Y%(0):.picp|
000071e0  6f 73 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |os:OX%=X%:OY%=Y%|
000071f0  3a 46 55 53 54 25 3d 30  3a f2 6f 75 74 70 69 63  |:FUST%=0:.outpic|
00007200  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 3a  |:.quickdrawmain:|
00007210  f2 6c 65 74 67 6f 3a e1  0d 1e 78 30 e7 20 42 55  |.letgo:...x0. BU|
00007220  54 25 3c 3e 34 20 84 20  28 4f 58 25 3d 58 25 28  |T%<>4 . (OX%=X%(|
00007230  30 29 20 80 20 4f 59 25  3d 59 25 28 30 29 29 20  |0) . OY%=Y%(0)) |
00007240  8c 20 e5 20 8d 74 6a 5e  0d 1e 82 3a f2 69 6e 70  |. . .tj^...:.inp|
00007250  69 63 3a f2 65 6f 63 3a  c8 93 20 58 25 28 30 29  |ic:.eoc:.. X%(0)|
00007260  2c 59 25 28 30 29 2c 4f  58 25 2d 58 25 28 30 29  |,Y%(0),OX%-X%(0)|
00007270  2c 4f 59 25 2d 59 25 28  30 29 3a f2 70 69 63 70  |,OY%-Y%(0):.picp|
00007280  6f 73 0d 1e 8c 1c e7 20  58 25 3c 58 25 28 30 29  |os..... X%<X%(0)|
00007290  20 8c 20 c8 94 20 58 25  28 30 29 2c 58 25 0d 1e  | . .. X%(0),X%..|
000072a0  96 1c e7 20 59 25 3c 59  25 28 30 29 20 8c 20 c8  |... Y%<Y%(0) . .|
000072b0  94 20 59 25 28 30 29 2c  59 25 0d 1e a0 39 4f 58  |. Y%(0),Y%...9OX|
000072c0  25 3d 58 25 3a 4f 59 25  3d 59 25 3a f2 6f 75 74  |%=X%:OY%=Y%:.out|
000072d0  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
000072e0  69 6e 3a f2 6c 65 74 67  6f 3a 46 55 53 54 25 3d  |in:.letgo:FUST%=|
000072f0  32 3a e1 0d 1e aa 21 f2  70 69 63 70 6f 73 3a e7  |2:....!.picpos:.|
00007300  20 58 25 3d 4f 58 25 20  80 20 59 25 3d 4f 59 25  | X%=OX% . Y%=OY%|
00007310  20 8c 20 e1 0d 1e b4 78  f2 69 6e 70 69 63 3a f2  | . ....x.inpic:.|
00007320  65 6f 63 3a c8 93 20 58  25 28 30 29 2c 59 25 28  |eoc:.. X%(0),Y%(|
00007330  30 29 2c 4f 58 25 2d 58  25 28 30 29 2c 4f 59 25  |0),OX%-X%(0),OY%|
00007340  2d 59 25 28 30 29 3a 4f  58 25 3d 58 25 3a 4f 59  |-Y%(0):OX%=X%:OY|
00007350  25 3d 59 25 3a c8 93 20  58 25 28 30 29 2c 59 25  |%=Y%:.. X%(0),Y%|
00007360  28 30 29 2c 58 25 2d 58  25 28 30 29 2c 59 25 2d  |(0),X%-X%(0),Y%-|
00007370  59 25 28 30 29 3a f2 6f  75 74 70 69 63 3a f2 71  |Y%(0):.outpic:.q|
00007380  75 69 63 6b 64 72 61 77  6d 61 69 6e 0d 1e be 05  |uickdrawmain....|
00007390  e1 0d 1e c8 04 0d 1e d2  18 dd f2 70 67 72 61 62  |...........pgrab|
000073a0  28 44 58 25 2c 44 59 25  2c 50 4c 25 29 0d 1e dc  |(DX%,DY%,PL%)...|
000073b0  12 58 52 3d 47 52 58 4d  25 2f 47 52 58 44 25 0d  |.XR=GRXM%/GRXD%.|
000073c0  1e e6 12 59 52 3d 47 52  59 4d 25 2f 47 52 59 44  |...YR=GRYM%/GRYD|
000073d0  25 0d 1e f0 11 21 53 43  41 4c 45 25 3d 47 52 58  |%....!SCALE%=GRX|
000073e0  4d 25 0d 1e fa 12 53 43  41 4c 45 25 21 34 3d 47  |M%....SCALE%!4=G|
000073f0  52 59 4d 25 0d 1f 04 12  53 43 41 4c 45 25 21 38  |RYM%....SCALE%!8|
00007400  3d 47 52 58 44 25 0d 1f  0e 13 53 43 41 4c 45 25  |=GRXD%....SCALE%|
00007410  21 31 32 3d 47 52 59 44  25 0d 1f 18 57 c8 99 26  |!12=GRYD%...W..&|
00007420  32 45 2c 33 30 38 2c 53  50 42 55 46 25 2c 22 47  |2E,308,SPBUF%,"G|
00007430  52 41 42 22 2c 44 58 25  2d 28 28 47 52 57 49 25  |RAB",DX%-((GRWI%|
00007440  20 81 20 32 29 2a 58 52  29 2c 44 59 25 2d 28 28  | . 2)*XR),DY%-((|
00007450  47 52 48 45 25 20 81 20  32 29 2a 59 52 29 2c 50  |GRHE% . 2)*YR),P|
00007460  4c 25 2b 47 52 41 42 4d  25 2c 53 43 41 4c 45 25  |L%+GRABM%,SCALE%|
00007470  0d 1f 22 05 e1 0d 1f 2c  04 0d 1f 36 1a dd f2 70  |.."....,...6...p|
00007480  69 6d 70 6f 72 74 28 44  58 25 2c 44 59 25 2c 50  |import(DX%,DY%,P|
00007490  4c 25 29 0d 1f 40 21 58  52 3d 47 52 58 4d 25 2f  |L%)..@!XR=GRXM%/|
000074a0  47 52 58 44 25 3a 59 52  3d 47 52 59 4d 25 2f 47  |GRXD%:YR=GRYM%/G|
000074b0  52 59 44 25 0d 1f 4a 17  49 4f 25 21 32 30 3d 28  |RYD%..J.IO%!20=(|
000074c0  21 49 4f 25 29 2a 47 52  58 4d 25 0d 1f 54 18 49  |!IO%)*GRXM%..T.I|
000074d0  4f 25 21 32 34 3d 28 49  4f 25 21 34 29 2a 47 52  |O%!24=(IO%!4)*GR|
000074e0  59 4d 25 0d 1f 5e 18 49  4f 25 21 32 38 3d 28 49  |YM%..^.IO%!28=(I|
000074f0  4f 25 21 38 29 2a 47 52  58 44 25 0d 1f 68 19 49  |O%!8)*GRXD%..h.I|
00007500  4f 25 21 33 32 3d 28 49  4f 25 21 31 32 29 2a 47  |O%!32=(IO%!12)*G|
00007510  52 59 44 25 0d 1f 72 b1  e7 20 ac 20 47 52 4d 41  |RYD%..r.. . GRMA|
00007520  25 20 8c 20 c8 99 26 32  45 2c 33 30 38 2c 53 50  |% . ..&2E,308,SP|
00007530  42 55 46 25 2c 47 52 4e  24 2c 44 58 25 2d 28 28  |BUF%,GRN$,DX%-((|
00007540  49 4d 57 25 20 81 20 32  29 2a 58 52 29 2c 44 59  |IMW% . 2)*XR),DY|
00007550  25 2d 28 28 49 4d 48 25  20 81 20 32 29 2a 59 52  |%-((IMH% . 2)*YR|
00007560  29 2c 50 4c 25 2c 49 4f  25 2b 32 30 2c 49 4d 50  |),PL%,IO%+20,IMP|
00007570  54 25 20 8b 20 c8 99 26  32 45 2c 33 30 38 2c 53  |T% . ..&2E,308,S|
00007580  50 42 55 46 25 2c 47 52  4e 24 2c 44 58 25 2d 28  |PBUF%,GRN$,DX%-(|
00007590  28 49 4d 57 25 20 81 20  32 29 2a 58 52 29 2c 44  |(IMW% . 2)*XR),D|
000075a0  59 25 2d 28 28 49 4d 48  25 20 81 20 32 29 2a 59  |Y%-((IMH% . 2)*Y|
000075b0  52 29 2c 50 4c 25 2b 38  2c 49 4f 25 2b 32 30 2c  |R),PL%+8,IO%+20,|
000075c0  49 4d 50 54 25 0d 1f 7c  05 e1 0d 1f 86 04 0d 1f  |IMPT%..|........|
000075d0  90 1b dd f2 70 61 72 61  28 4c 54 25 2c 50 4c 25  |....para(LT%,PL%|
000075e0  2c 44 58 25 2c 44 59 25  29 0d 1f 9a 22 e7 20 50  |,DX%,DY%)...". P|
000075f0  4c 25 3d 31 20 8c 20 f2  65 6c 69 70 28 26 37 35  |L%=1 . .elip(&75|
00007600  2c 44 58 25 2c 44 59 25  29 3a e1 0d 1f a4 0d e7  |,DX%,DY%):......|
00007610  20 4c 54 25 3d 31 20 8c  0d 1f ae 1f f2 6c 28 58  | LT%=1 ......l(X|
00007620  25 28 30 29 2c 59 25 28  30 29 2c 58 25 28 31 29  |%(0),Y%(0),X%(1)|
00007630  2c 59 25 28 31 29 29 0d  1f b8 1b f2 6c 28 58 25  |,Y%(1)).....l(X%|
00007640  28 31 29 2c 59 25 28 31  29 2c 44 58 25 2c 44 59  |(1),Y%(1),DX%,DY|
00007650  25 29 0d 1f c2 25 f0 20  4c 49 54 59 25 2d 34 2c  |%)...%. LITY%-4,|
00007660  58 25 28 30 29 2d 58 25  28 31 29 2c 59 25 28 30  |X%(0)-X%(1),Y%(0|
00007670  29 2d 59 25 28 31 29 0d  1f cc 17 f0 20 4c 49 54  |)-Y%(1)..... LIT|
00007680  59 25 2c 58 25 28 30 29  2c 59 25 28 30 29 0d 1f  |Y%,X%(0),Y%(0)..|
00007690  d6 05 cc 0d 1f e0 1d 86  20 58 25 28 30 29 2c 59  |........ X%(0),Y|
000076a0  25 28 30 29 2c 58 25 28  31 29 2c 59 25 28 31 29  |%(0),X%(1),Y%(1)|
000076b0  0d 1f ea 19 86 20 58 25  28 31 29 2c 59 25 28 31  |..... X%(1),Y%(1|
000076c0  29 2c 44 58 25 2c 44 59  25 0d 1f f4 1e f0 31 2c  |),DX%,DY%.....1,|
000076d0  58 25 28 30 29 2d 58 25  28 31 29 2c 59 25 28 30  |X%(0)-X%(1),Y%(0|
000076e0  29 2d 59 25 28 31 29 0d  1f fe 12 f0 35 2c 58 25  |)-Y%(1).....5,X%|
000076f0  28 30 29 2c 59 25 28 30  29 0d 20 08 05 cd 0d 20  |(0),Y%(0). .... |
00007700  12 05 e1 0d 20 1c 04 0d  20 26 17 dd f2 65 6c 69  |.... ... &...eli|
00007710  70 28 50 4c 25 2c 44 58  25 2c 44 59 25 29 0d 20  |p(PL%,DX%,DY%). |
00007720  30 11 ec 20 58 25 28 30  29 2c 59 25 28 30 29 0d  |0.. X%(0),Y%(0).|
00007730  20 3a 11 ec 20 58 25 28  31 29 2c 59 25 28 31 29  | :.. X%(1),Y%(1)|
00007740  0d 20 44 11 f0 20 50 4c  25 2c 44 58 25 2c 44 59  |. D.. PL%,DX%,DY|
00007750  25 0d 20 4e 05 e1 0d 20  58 04 0d 20 62 16 dd f2  |%. N... X.. b...|
00007760  74 72 69 28 50 4c 25 2c  44 58 25 2c 44 59 25 29  |tri(PL%,DX%,DY%)|
00007770  0d 20 6c 94 e7 20 50 4c  25 3d 35 20 84 20 50 4c  |. l.. PL%=5 . PL|
00007780  25 3d 38 35 20 8c 20 f0  34 2c 44 58 25 2c 44 59  |%=85 . .4,DX%,DY|
00007790  25 3a f0 20 35 2c 58 25  28 30 29 2c 59 25 28 30  |%:. 5,X%(0),Y%(0|
000077a0  29 3a f0 20 35 2c 58 25  28 31 29 2c 59 25 28 31  |):. 5,X%(1),Y%(1|
000077b0  29 3a f0 20 50 4c 25 2c  44 58 25 2c 44 59 25 20  |):. PL%,DX%,DY% |
000077c0  8b 20 f0 34 2c 44 58 25  2c 44 59 25 3a f0 20 4c  |. .4,DX%,DY%:. L|
000077d0  49 54 59 25 2c 58 25 28  30 29 2c 59 25 28 30 29  |ITY%,X%(0),Y%(0)|
000077e0  3a f0 20 4c 49 54 59 25  2c 58 25 28 31 29 2c 59  |:. LITY%,X%(1),Y|
000077f0  25 28 31 29 3a f0 20 4c  49 54 59 25 2c 44 58 25  |%(1):. LITY%,DX%|
00007800  2c 44 59 25 0d 20 76 05  e1 0d 20 80 04 0d 20 8a  |,DY%. v... ... .|
00007810  37 dd a4 64 69 73 74 28  44 58 25 2c 44 59 25 29  |7..dist(DX%,DY%)|
00007820  3a 3d b6 28 28 28 44 58  25 2d 58 25 28 30 29 29  |:=.(((DX%-X%(0))|
00007830  5e 32 29 2b 28 28 44 59  25 2d 59 25 28 30 29 29  |^2)+((DY%-Y%(0))|
00007840  5e 32 29 29 0d 20 94 04  0d 20 9e 56 dd f2 70 61  |^2)). ... .V..pa|
00007850  69 6e 74 62 72 75 73 68  28 42 58 25 2c 42 59 25  |intbrush(BX%,BY%|
00007860  29 3a c8 99 26 32 45 2c  33 30 36 2c 42 52 55 53  |):..&2E,306,BRUS|
00007870  48 25 2c c3 28 53 45 4c  42 52 25 29 2c 42 58 25  |H%,.(SELBR%),BX%|
00007880  2d 28 33 32 2a 58 52 29  2c 42 59 25 2d 28 33 32  |-(32*XR),BY%-(32|
00007890  2a 59 52 29 2c 2c 53 43  41 4c 45 25 3a e1 0d 20  |*YR),,SCALE%:.. |
000078a0  a8 04 0d 20 b2 45 dd f2  70 61 69 6e 74 62 72 75  |... .E..paintbru|
000078b0  73 68 32 28 42 58 25 2c  42 59 25 29 3a c8 99 26  |sh2(BX%,BY%):..&|
000078c0  32 45 2c 33 30 35 2c 42  52 55 53 48 25 2c c3 28  |2E,305,BRUSH%,.(|
000078d0  53 45 4c 42 52 25 29 2c  42 58 25 2d 33 32 2c 42  |SELBR%),BX%-32,B|
000078e0  59 25 2d 33 32 3a e1 0d  20 bc 04 0d 20 c6 2c dd  |Y%-32:.. ... .,.|
000078f0  f2 6c 65 74 67 6f 3a 4c  45 47 4f 25 3d b9 3a e1  |.letgo:LEGO%=.:.|
00007900  3a f5 3a c8 97 20 58 25  2c 59 25 2c 48 25 3a fd  |:.:.. X%,Y%,H%:.|
00007910  20 48 25 3d 30 3a e1 0d  20 d0 04 0d 20 da 3c dd  | H%=0:.. ... .<.|
00007920  f2 6b 69 6c 6c 66 3a 4c  41 4f 50 57 49 25 3d 2d  |.killf:LAOPWI%=-|
00007930  31 3a e7 20 54 4b 48 25  3c 3e 2d 31 20 8c 20 f2  |1:. TKH%<>-1 . .|
00007940  69 63 6f 6e 6c 6f 28 33  32 2c 54 4b 48 25 29 3a  |iconlo(32,TKH%):|
00007950  54 4b 48 25 3d 2d 31 0d  20 e4 0e c8 8e 20 46 55  |TKH%=-1. .... FU|
00007960  53 45 25 20 ca 0d 20 ee  1b e7 20 46 55 53 45 25  |SE% .. ... FUSE%|
00007970  3c 3e 33 32 20 8c 20 f2  73 70 62 75 66 28 30 29  |<>32 . .spbuf(0)|
00007980  0d 20 f8 04 0d 21 02 04  0d 21 0c 69 c9 20 34 3a  |. ...!...!.i. 4:|
00007990  f2 63 6c 6f 73 65 77 69  6e 64 28 35 29 3a e7 20  |.closewind(5):. |
000079a0  46 55 53 54 25 3e 30 20  8c 20 f2 69 6e 70 69 63  |FUST%>0 . .inpic|
000079b0  3a f2 70 61 69 6e 74 73  63 61 6c 65 3a f2 65 6f  |:.paintscale:.eo|
000079c0  72 62 61 63 6b 3a f2 70  61 69 6e 74 62 72 75 73  |rback:.paintbrus|
000079d0  68 28 4f 58 25 2c 4f 59  25 29 3a f2 6f 75 74 70  |h(OX%,OY%):.outp|
000079e0  69 63 3a f2 71 75 69 63  6b 64 72 61 77 6d 61 69  |ic:.quickdrawmai|
000079f0  6e 0d 21 16 04 0d 21 20  04 0d 21 2a 4d c9 20 31  |n.!...! ..!*M. 1|
00007a00  31 3a e7 20 46 55 53 54  25 3d 31 20 8c 20 f2 69  |1:. FUST%=1 . .i|
00007a10  6e 70 69 63 3a f2 65 6f  63 3a 86 20 58 25 28 30  |npic:.eoc:. X%(0|
00007a20  29 2c 59 25 28 30 29 2c  4f 58 25 2c 4f 59 25 3a  |),Y%(0),OX%,OY%:|
00007a30  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00007a40  61 77 6d 61 69 6e 0d 21  34 45 e7 20 46 55 53 54  |awmain.!4E. FUST|
00007a50  25 3d 32 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=2 . .inpic:.eo|
00007a60  63 3a f2 65 6c 69 70 28  26 43 35 2c 4f 58 25 2c  |c:.elip(&C5,OX%,|
00007a70  4f 59 25 29 3a f2 6f 75  74 70 69 63 3a f2 71 75  |OY%):.outpic:.qu|
00007a80  69 63 6b 64 72 61 77 6d  61 69 6e 0d 21 3e 4d c9  |ickdrawmain.!>M.|
00007a90  20 31 33 3a e7 20 46 55  53 54 25 3d 31 20 8c 20  | 13:. FUST%=1 . |
00007aa0  f2 69 6e 70 69 63 3a f2  65 6f 63 3a 86 20 58 25  |.inpic:.eoc:. X%|
00007ab0  28 30 29 2c 59 25 28 30  29 2c 4f 58 25 2c 4f 59  |(0),Y%(0),OX%,OY|
00007ac0  25 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |%:.outpic:.quick|
00007ad0  64 72 61 77 6d 61 69 6e  0d 21 48 45 e7 20 46 55  |drawmain.!HE. FU|
00007ae0  53 54 25 3d 32 20 8c 20  f2 69 6e 70 69 63 3a f2  |ST%=2 . .inpic:.|
00007af0  65 6f 63 3a f2 70 61 72  61 28 30 2c 30 2c 4f 58  |eoc:.para(0,0,OX|
00007b00  25 2c 4f 59 25 29 3a f2  6f 75 74 70 69 63 3a f2  |%,OY%):.outpic:.|
00007b10  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 0d 21 52  |quickdrawmain.!R|
00007b20  4d c9 20 31 36 3a e7 20  46 55 53 54 25 3d 31 20  |M. 16:. FUST%=1 |
00007b30  8c 20 f2 69 6e 70 69 63  3a f2 65 6f 63 3a 86 20  |. .inpic:.eoc:. |
00007b40  58 25 28 30 29 2c 59 25  28 30 29 2c 4f 58 25 2c  |X%(0),Y%(0),OX%,|
00007b50  4f 59 25 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |OY%:.outpic:.qui|
00007b60  63 6b 64 72 61 77 6d 61  69 6e 0d 21 5c 45 e7 20  |ckdrawmain.!\E. |
00007b70  46 55 53 54 25 3d 32 20  8c 20 f2 69 6e 70 69 63  |FUST%=2 . .inpic|
00007b80  3a f2 65 6f 63 3a f2 65  6c 69 70 28 26 42 35 2c  |:.eoc:.elip(&B5,|
00007b90  4f 58 25 2c 4f 59 25 29  3a f2 6f 75 74 70 69 63  |OX%,OY%):.outpic|
00007ba0  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 0d  |:.quickdrawmain.|
00007bb0  21 66 11 c9 20 31 38 3a  f2 6b 69 6c 6c 5f 31 38  |!f.. 18:.kill_18|
00007bc0  0d 21 70 11 c9 20 31 39  3a f2 6b 69 6c 6c 5f 31  |.!p.. 19:.kill_1|
00007bd0  39 0d 21 7a 11 c9 20 32  30 3a f2 6b 69 6c 6c 5f  |9.!z.. 20:.kill_|
00007be0  32 30 0d 21 84 11 c9 20  32 31 3a f2 6b 69 6c 6c  |20.!... 21:.kill|
00007bf0  5f 32 31 0d 21 8e 5a c9  20 32 32 3a e7 20 46 55  |_21.!.Z. 22:. FU|
00007c00  53 54 25 3d 31 20 8c 20  f2 69 6e 70 69 63 3a f2  |ST%=1 . .inpic:.|
00007c10  65 6f 63 3a c8 93 20 58  25 28 30 29 2c 59 25 28  |eoc:.. X%(0),Y%(|
00007c20  30 29 2c 4f 58 25 2d 58  25 28 30 29 2c 4f 59 25  |0),OX%-X%(0),OY%|
00007c30  2d 59 25 28 30 29 3a f2  6f 75 74 70 69 63 3a f2  |-Y%(0):.outpic:.|
00007c40  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 0d 21 98  |quickdrawmain.!.|
00007c50  11 c9 20 32 33 3a f2 6b  69 6c 6c 5f 32 33 0d 21  |.. 23:.kill_23.!|
00007c60  a2 11 c9 20 32 35 3a f2  6b 69 6c 6c 5f 32 35 0d  |... 25:.kill_25.|
00007c70  21 ac 5a c9 20 32 37 3a  e7 20 46 55 53 54 25 3d  |!.Z. 27:. FUST%=|
00007c80  31 20 8c 20 f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |1 . .inpic:.eoc:|
00007c90  c8 93 20 58 25 28 30 29  2c 59 25 28 30 29 2c 4f  |.. X%(0),Y%(0),O|
00007ca0  58 25 2d 58 25 28 30 29  2c 4f 59 25 2d 59 25 28  |X%-X%(0),OY%-Y%(|
00007cb0  30 29 3a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |0):.outpic:.quic|
00007cc0  6b 64 72 61 77 6d 61 69  6e 0d 21 b6 5a c9 20 32  |kdrawmain.!.Z. 2|
00007cd0  38 3a e7 20 46 55 53 54  25 3d 31 20 8c 20 f2 69  |8:. FUST%=1 . .i|
00007ce0  6e 70 69 63 3a f2 65 6f  63 3a c8 93 20 58 25 28  |npic:.eoc:.. X%(|
00007cf0  30 29 2c 59 25 28 30 29  2c 4f 58 25 2d 58 25 28  |0),Y%(0),OX%-X%(|
00007d00  30 29 2c 4f 59 25 2d 59  25 28 30 29 3a f2 6f 75  |0),OY%-Y%(0):.ou|
00007d10  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00007d20  61 69 6e 0d 21 c0 6b c9  20 32 39 3a f2 63 6c 6f  |ain.!.k. 29:.clo|
00007d30  73 65 77 69 6e 64 28 35  29 3a e7 20 46 55 53 54  |sewind(5):. FUST|
00007d40  25 3e 30 20 8c 20 f2 69  6e 70 69 63 3a f2 70 61  |%>0 . .inpic:.pa|
00007d50  69 6e 74 73 63 61 6c 65  32 3a f2 65 6f 72 62 61  |intscale2:.eorba|
00007d60  63 6b 3a f2 70 61 69 6e  74 62 72 75 73 68 28 4f  |ck:.paintbrush(O|
00007d70  58 25 2c 4f 59 25 29 3a  f2 6f 75 74 70 69 63 3a  |X%,OY%):.outpic:|
00007d80  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 0d 21  |.quickdrawmain.!|
00007d90  ca 6b c9 20 33 30 3a f2  63 6c 6f 73 65 77 69 6e  |.k. 30:.closewin|
00007da0  64 28 35 29 3a e7 20 46  55 53 54 25 3e 30 20 8c  |d(5):. FUST%>0 .|
00007db0  20 f2 69 6e 70 69 63 3a  f2 70 61 69 6e 74 73 63  | .inpic:.paintsc|
00007dc0  61 6c 65 32 3a f2 65 6f  72 62 61 63 6b 3a f2 70  |ale2:.eorback:.p|
00007dd0  61 69 6e 74 62 72 75 73  68 28 4f 58 25 2c 4f 59  |aintbrush(OX%,OY|
00007de0  25 29 3a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |%):.outpic:.quic|
00007df0  6b 64 72 61 77 6d 61 69  6e 0d 21 d4 4e c9 20 33  |kdrawmain.!.N. 3|
00007e00  32 3a f2 72 65 73 74 70  69 63 3a f2 66 6f 72 63  |2:.restpic:.forc|
00007e10  65 64 72 61 77 6d 61 69  6e 3a f2 63 6c 6f 73 65  |edrawmain:.close|
00007e20  77 69 6e 64 28 31 34 29  3a f2 73 70 69 6e 69 74  |wind(14):.spinit|
00007e30  3a e7 20 46 4f 4e 54 25  3c 3e 30 20 8c 20 f2 6c  |:. FONT%<>0 . .l|
00007e40  6f 73 65 66 6f 6e 74 0d  21 de 14 c9 20 33 31 3a  |osefont.!... 31:|
00007e50  e7 20 47 52 54 59 25 3d  31 20 8c 0d 21 e8 55 e7  |. GRTY%=1 ..!.U.|
00007e60  20 46 55 53 54 25 3d 31  20 8c 20 f2 69 6e 70 69  | FUST%=1 . .inpi|
00007e70  63 3a f2 65 6f 63 3a c8  93 20 58 25 28 30 29 2c  |c:.eoc:.. X%(0),|
00007e80  59 25 28 30 29 2c 4f 58  25 2d 58 25 28 30 29 2c  |Y%(0),OX%-X%(0),|
00007e90  4f 59 25 2d 59 25 28 30  29 3a f2 6f 75 74 70 69  |OY%-Y%(0):.outpi|
00007ea0  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00007eb0  0d 21 f2 05 cd 0d 21 fc  71 c9 20 33 33 3a f2 63  |.!....!.q. 33:.c|
00007ec0  6c 6f 73 65 77 69 6e 64  28 31 38 29 3a f2 73 70  |losewind(18):.sp|
00007ed0  69 6e 69 74 3a e7 20 46  55 53 54 25 3d 31 20 8c  |init:. FUST%=1 .|
00007ee0  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a c8 93 20  | .inpic:.eoc:.. |
00007ef0  58 25 28 30 29 2c 59 25  28 30 29 2c 4f 58 25 2d  |X%(0),Y%(0),OX%-|
00007f00  58 25 28 30 29 2c 4f 59  25 2d 59 25 28 30 29 3a  |X%(0),OY%-Y%(0):|
00007f10  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00007f20  61 77 6d 61 69 6e 0d 22  06 46 c9 20 33 34 3a e7  |awmain.".F. 34:.|
00007f30  20 46 55 53 54 25 3d 31  20 8c 20 f2 69 6e 70 69  | FUST%=1 . .inpi|
00007f40  63 3a f2 70 69 6d 70 6f  72 74 28 4f 58 25 2c 4f  |c:.pimport(OX%,O|
00007f50  59 25 2c 33 29 3a f2 6f  75 74 70 69 63 3a f2 71  |Y%,3):.outpic:.q|
00007f60  75 69 63 6b 64 72 61 77  6d 61 69 6e 0d 22 10 19  |uickdrawmain."..|
00007f70  f2 63 6c 6f 73 65 77 69  6e 64 28 38 29 3a f2 73  |.closewind(8):.s|
00007f80  70 69 6e 69 74 0d 22 1a  22 c9 20 33 35 3a e7 20  |pinit.".". 35:. |
00007f90  46 55 53 54 25 3c 32 20  8c 20 f2 63 6c 6f 73 65  |FUST%<2 . .close|
00007fa0  77 69 6e 64 28 38 29 0d  22 24 55 e7 20 46 55 53  |wind(8)."$U. FUS|
00007fb0  54 25 3d 31 20 8c 20 f2  69 6e 70 69 63 3a f2 65  |T%=1 . .inpic:.e|
00007fc0  6f 63 3a c8 93 20 58 25  28 30 29 2c 59 25 28 30  |oc:.. X%(0),Y%(0|
00007fd0  29 2c 4f 58 25 2d 58 25  28 30 29 2c 4f 59 25 2d  |),OX%-X%(0),OY%-|
00007fe0  59 25 28 30 29 3a f2 6f  75 74 70 69 63 3a f2 71  |Y%(0):.outpic:.q|
00007ff0  75 69 63 6b 64 72 61 77  6d 61 69 6e 0d 22 2e 1d  |uickdrawmain."..|
00008000  e7 20 46 55 53 54 25 3d  33 20 8c 20 f2 63 6c 6f  |. FUST%=3 . .clo|
00008010  73 65 77 69 6e 64 28 37  29 0d 22 38 51 c9 20 33  |sewind(7)."8Q. 3|
00008020  36 3a e7 20 46 55 53 54  25 3c 3e 30 20 8c 20 f2  |6:. FUST%<>0 . .|
00008030  69 6e 70 69 63 3a f2 65  6f 63 3a c8 93 20 4f 58  |inpic:.eoc:.. OX|
00008040  25 2c 4f 59 25 2c 46 52  57 25 2a 32 2c 46 52 48  |%,OY%,FRW%*2,FRH|
00008050  25 2a 34 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |%*4:.outpic:.qui|
00008060  63 6b 64 72 61 77 6d 61  69 6e 0d 22 42 04 0d 22  |ckdrawmain."B.."|
00008070  4c 11 c9 20 33 38 3a f2  6b 69 6c 6c 5f 33 38 0d  |L.. 38:.kill_38.|
00008080  22 56 11 c9 20 33 39 3a  f2 6b 69 6c 6c 5f 33 39  |"V.. 39:.kill_39|
00008090  0d 22 60 11 c9 20 34 30  3a f2 6b 69 6c 6c 5f 34  |."`.. 40:.kill_4|
000080a0  30 0d 22 6a 11 c9 20 34  31 3a f2 6b 69 6c 6c 5f  |0."j.. 41:.kill_|
000080b0  34 31 0d 22 74 1d c9 20  34 32 3a f2 63 6c 6f 73  |41."t.. 42:.clos|
000080c0  65 77 69 6e 64 28 32 35  29 3a f2 6d 65 6f 63 0d  |ewind(25):.meoc.|
000080d0  22 7e 11 c9 20 34 33 3a  f2 6b 69 6c 6c 5f 34 33  |"~.. 43:.kill_43|
000080e0  0d 22 88 11 c9 20 34 34  3a f2 6b 69 6c 6c 5f 34  |."... 44:.kill_4|
000080f0  34 0d 22 92 04 0d 22 9c  04 0d 22 a6 1d c9 20 34  |4."..."..."... 4|
00008100  37 3a f2 63 6c 6f 73 65  77 69 6e 64 28 32 39 29  |7:.closewind(29)|
00008110  3a f2 6d 65 6f 63 0d 22  b0 1d c9 20 34 38 3a f2  |:.meoc."... 48:.|
00008120  63 6c 6f 73 65 77 69 6e  64 28 33 30 29 3a f2 6d  |closewind(30):.m|
00008130  65 6f 63 0d 22 ba 05 cb  0d 22 c4 15 f2 77 69 6e  |eoc."...."...win|
00008140  64 6e 61 6d 65 28 32 2c  50 49 43 24 29 0d 22 ce  |dname(2,PIC$).".|
00008150  05 e1 0d 22 d8 04 0d 22  e2 64 dd f2 6d 65 6f 63  |..."...".d..meoc|
00008160  3a f2 73 70 69 6e 69 74  3a e7 20 46 55 53 54 25  |:.spinit:. FUST%|
00008170  3d 31 20 8c 20 f2 69 6e  70 69 63 3a f2 65 6f 63  |=1 . .inpic:.eoc|
00008180  3a c8 93 20 58 25 28 30  29 2c 59 25 28 30 29 2c  |:.. X%(0),Y%(0),|
00008190  4f 58 25 2d 58 25 28 30  29 2c 4f 59 25 2d 59 25  |OX%-X%(0),OY%-Y%|
000081a0  28 30 29 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |(0):.outpic:.qui|
000081b0  63 6b 64 72 61 77 6d 61  69 6e 0d 22 ec 05 e1 0d  |ckdrawmain."....|
000081c0  22 f6 04 0d 23 00 18 dd  f2 65 6f 63 3a e6 33 2c  |"...#....eoc:.3,|
000081d0  36 33 20 c8 9c 20 31 39  32 3a e1 0d 23 0a 04 0d  |63 .. 192:..#...|
000081e0  23 14 1d dd f2 65 6f 72  62 61 63 6b 3a e6 33 2c  |#....eorback:.3,|
000081f0  31 39 31 20 c8 9c 20 31  39 32 3a e1 0d 23 1e 04  |191 .. 192:..#..|
00008200  0d 23 28 0d dd f2 70 69  63 6b 63 6f 6c 0d 23 32  |.#(...pickcol.#2|
00008210  4b 58 4f 46 25 3d 21 42  4c 4b 25 3a 59 4f 46 25  |KXOF%=!BLK%:YOF%|
00008220  3d 42 4c 4b 25 21 34 3a  f2 73 63 72 65 65 6e 74  |=BLK%!4:.screent|
00008230  6f 77 6f 72 6b 28 48 41  4e 44 25 28 33 29 2c 20  |owork(HAND%(3), |
00008240  58 4f 46 25 2c 59 4f 46  25 29 3a 59 4f 46 25 3d  |XOF%,YOF%):YOF%=|
00008250  32 32 38 2b 59 4f 46 25  0d 23 3c 19 e7 20 58 4f  |228+YOF%.#<.. XO|
00008260  46 25 3e 37 36 36 20 8c  20 58 4f 46 25 3d 37 36  |F%>766 . XOF%=76|
00008270  36 0d 23 46 19 e7 20 59  4f 46 25 3e 32 32 30 20  |6.#F.. YOF%>220 |
00008280  8c 20 59 4f 46 25 3d 32  32 30 0d 23 50 64 e7 20  |. YOF%=220.#Pd. |
00008290  4d 4f 55 42 25 3d 34 20  8c 20 43 4f 4c 25 3d 28  |MOUB%=4 . COL%=(|
000082a0  58 4f 46 25 20 81 20 32  34 29 2b 28 28 59 4f 46  |XOF% . 24)+((YOF|
000082b0  25 20 81 20 32 38 29 2a  33 32 29 20 8b 20 e7 20  |% . 28)*32) . . |
000082c0  4d 4f 55 42 25 3d 31 20  8c 20 f2 74 72 61 73 70  |MOUB%=1 . .trasp|
000082d0  28 28 58 4f 46 25 20 81  20 32 34 29 2b 28 28 59  |((XOF% . 24)+((Y|
000082e0  4f 46 25 20 81 20 32 38  29 2a 33 32 29 29 0d 23  |OF% . 28)*32)).#|
000082f0  5a 17 f2 66 6f 72 63 65  64 72 61 77 70 61 6c 28  |Z..forcedrawpal(|
00008300  50 41 4c 25 29 0d 23 64  05 e1 0d 23 6e 04 0d 23  |PAL%).#d...#n..#|
00008310  78 10 dd f2 74 62 61 63  6b 63 6c 69 63 6b 0d 23  |x...tbackclick.#|
00008320  82 35 42 4c 4b 25 21 38  3d 48 41 4e 44 25 28 31  |.5BLK%!8=HAND%(1|
00008330  35 29 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 57  |5):.. "Wimp_GetW|
00008340  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 42 4c 4b  |indowState",,BLK|
00008350  25 2b 38 0d 23 8c 30 58  4f 46 25 3d 28 21 42 4c  |%+8.#.0XOF%=(!BL|
00008360  4b 25 29 2d 28 42 4c 4b  25 21 31 32 29 3a e7 20  |K%)-(BLK%!12):. |
00008370  58 4f 46 25 3e 37 36 36  20 8c 20 58 4f 46 25 3d  |XOF%>766 . XOF%=|
00008380  37 36 36 0d 23 96 31 59  4f 46 25 3d 28 42 4c 4b  |766.#.1YOF%=(BLK|
00008390  25 21 34 29 2d 28 42 4c  4b 25 21 31 36 29 3a e7  |%!4)-(BLK%!16):.|
000083a0  20 59 4f 46 25 3e 32 32  30 20 8c 20 59 4f 46 25  | YOF%>220 . YOF%|
000083b0  3d 32 32 30 0d 23 a0 27  46 4f 4e 54 42 25 3d 28  |=220.#.'FONTB%=(|
000083c0  58 4f 46 25 20 81 20 32  34 29 2b 28 28 59 4f 46  |XOF% . 24)+((YOF|
000083d0  25 20 81 20 32 38 29 2a  33 32 29 0d 23 aa 13 f2  |% . 28)*32).#...|
000083e0  66 6f 72 63 65 64 72 61  77 74 62 61 63 6b 0d 23  |forcedrawtback.#|
000083f0  b4 05 e1 0d 23 be 04 0d  23 c8 0c dd f2 70 69 63  |....#...#....pic|
00008400  70 6f 73 0d 23 d2 1c 53  43 52 58 25 3d 21 42 4c  |pos.#..SCRX%=!BL|
00008410  4b 25 3a 53 43 52 59 25  3d 42 4c 4b 25 21 34 0d  |K%:SCRY%=BLK%!4.|
00008420  23 dc 34 42 4c 4b 25 21  38 3d 48 41 4e 44 25 28  |#.4BLK%!8=HAND%(|
00008430  32 29 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 57  |2):.. "Wimp_GetW|
00008440  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 42 4c 4b  |indowState",,BLK|
00008450  25 2b 38 0d 23 e6 2e 58  25 3d 28 28 28 21 42 4c  |%+8.#..X%=(((!BL|
00008460  4b 25 29 2d 28 42 4c 4b  25 21 31 32 29 29 2b 28  |K%)-(BLK%!12))+(|
00008470  42 4c 4b 25 21 32 38 29  29 20 81 20 5a 4f 4f 4d  |BLK%!28)) . ZOOM|
00008480  25 0d 23 f0 36 59 25 3d  31 30 32 34 2d 28 28 28  |%.#.6Y%=1024-(((|
00008490  28 42 4c 4b 25 21 32 34  29 2d 28 42 4c 4b 25 21  |(BLK%!24)-(BLK%!|
000084a0  34 29 29 2d 28 42 4c 4b  25 21 33 32 29 29 20 81  |4))-(BLK%!32)) .|
000084b0  20 5a 4f 4f 4d 25 29 0d  23 fa 11 e7 20 58 25 3c  | ZOOM%).#... X%<|
000084c0  30 20 8c 20 58 25 3d 30  0d 24 04 17 e7 20 58 25  |0 . X%=0.$... X%|
000084d0  3e 31 32 37 39 20 8c 20  58 25 3d 31 32 37 39 0d  |>1279 . X%=1279.|
000084e0  24 0e 11 e7 20 59 25 3c  30 20 8c 20 59 25 3d 30  |$... Y%<0 . Y%=0|
000084f0  0d 24 18 17 e7 20 59 25  3e 31 30 32 33 20 8c 20  |.$... Y%>1023 . |
00008500  59 25 3d 31 30 32 33 0d  24 22 11 e7 20 ac 20 47  |Y%=1023.$".. . G|
00008510  52 4c 4f 25 20 8c 20 e1  0d 24 2c 19 58 4f 46 25  |RLO% . ..$,.XOF%|
00008520  3d 28 47 52 49 57 49 25  2d 47 52 42 58 25 29 2a  |=(GRIWI%-GRBX%)*|
00008530  32 0d 24 36 19 59 4f 46  25 3d 28 47 52 49 48 45  |2.$6.YOF%=(GRIHE|
00008540  25 2d 47 52 42 59 25 29  2a 34 0d 24 40 15 58 25  |%-GRBY%)*4.$@.X%|
00008550  2b 3d 58 4f 46 25 3a 59  25 2b 3d 59 4f 46 25 0d  |+=XOF%:Y%+=YOF%.|
00008560  24 4a 29 58 25 3d 2d 58  4f 46 25 2b 28 28 58 25  |$J)X%=-XOF%+((X%|
00008570  20 81 20 28 32 2a 47 52  49 57 49 25 29 29 2a 32  | . (2*GRIWI%))*2|
00008580  2a 47 52 49 57 49 25 29  0d 24 54 29 59 25 3d 2d  |*GRIWI%).$T)Y%=-|
00008590  59 4f 46 25 2b 28 28 59  25 20 81 20 28 34 2a 47  |YOF%+((Y% . (4*G|
000085a0  52 49 48 45 25 29 29 2a  34 2a 47 52 49 48 45 25  |RIHE%))*4*GRIHE%|
000085b0  29 0d 24 5e 05 e1 0d 24  68 04 0d 24 72 12 dd f2  |).$^...$h..$r...|
000085c0  67 65 74 72 64 6f 72 28  57 45 25 29 0d 24 7c 34  |getrdor(WE%).$|4|
000085d0  57 4f 58 25 3d 42 4c 4b  25 21 34 2d 42 4c 4b 25  |WOX%=BLK%!4-BLK%|
000085e0  21 32 30 3a 57 4f 59 25  3d 28 42 4c 4b 25 21 31  |!20:WOY%=(BLK%!1|
000085f0  36 2d 42 4c 4b 25 21 32  34 29 2d 57 45 25 3a e1  |6-BLK%!24)-WE%:.|
00008600  0d 24 86 04 0d 24 90 15  dd f2 6f 70 65 6e 6d 61  |.$...$....openma|
00008610  69 6e 3a 4d 4f 50 25 3d  b9 0d 24 9a 7a 21 42 4c  |in:MOP%=..$.z!BL|
00008620  4b 25 3d 48 41 4e 44 25  28 32 29 3a 42 4c 4b 25  |K%=HAND%(2):BLK%|
00008630  21 34 3d 30 3a 42 4c 4b  25 21 38 3d 33 30 30 3a  |!4=0:BLK%!8=300:|
00008640  42 4c 4b 25 21 31 32 3d  31 32 37 39 3a 42 4c 4b  |BLK%!12=1279:BLK|
00008650  25 21 31 36 3d 31 30 32  33 3a 42 4c 4b 25 21 32  |%!16=1023:BLK%!2|
00008660  30 3d 30 3a 42 4c 4b 25  21 32 34 3d 30 3a 42 4c  |0=0:BLK%!24=0:BL|
00008670  4b 25 21 32 38 3d 2d 31  3a c8 99 20 22 57 69 6d  |K%!28=-1:.. "Wim|
00008680  70 5f 4f 70 65 6e 57 69  6e 64 6f 77 22 2c 2c 42  |p_OpenWindow",,B|
00008690  4c 4b 25 0d 24 a4 05 e1  0d 24 ae 04 0d 24 b8 0d  |LK%.$....$...$..|
000086a0  dd f2 6f 70 65 6e 70 61  6c 0d 24 c2 7b 21 42 4c  |..openpal.$.{!BL|
000086b0  4b 25 3d 48 41 4e 44 25  28 33 29 3a 42 4c 4b 25  |K%=HAND%(3):BLK%|
000086c0  21 34 3d 31 30 30 3a 42  4c 4b 25 21 38 3d 33 30  |!4=100:BLK%!8=30|
000086d0  30 3a 42 4c 4b 25 21 31  32 3d 31 32 37 39 3a 42  |0:BLK%!12=1279:B|
000086e0  4c 4b 25 21 31 36 3d 36  30 30 3a 42 4c 4b 25 21  |LK%!16=600:BLK%!|
000086f0  32 30 3d 30 3a 42 4c 4b  25 21 32 34 3d 30 3a 42  |20=0:BLK%!24=0:B|
00008700  4c 4b 25 21 32 38 3d 2d  31 3a c8 99 20 22 57 69  |LK%!28=-1:.. "Wi|
00008710  6d 70 5f 4f 70 65 6e 57  69 6e 64 6f 77 22 2c 2c  |mp_OpenWindow",,|
00008720  42 4c 4b 25 0d 24 cc 05  e1 0d 24 d6 04 0d 24 e0  |BLK%.$....$...$.|
00008730  29 dd f2 6f 70 65 6e 77  69 6e 64 28 57 48 25 29  |)..openwind(WH%)|
00008740  3a e7 20 57 48 25 3e 32  20 8c 20 4c 41 4f 50 57  |:. WH%>2 . LAOPW|
00008750  49 25 3d 57 48 25 0d 24  ea 33 21 42 4c 4b 25 3d  |I%=WH%.$.3!BLK%=|
00008760  48 41 4e 44 25 28 57 48  25 29 3a c8 99 20 22 57  |HAND%(WH%):.. "W|
00008770  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
00008780  74 65 22 2c 2c 42 4c 4b  25 0d 24 f4 29 42 4c 4b  |te",,BLK%.$.)BLK|
00008790  25 21 32 38 3d 2d 31 3a  c8 99 20 22 57 69 6d 70  |%!28=-1:.. "Wimp|
000087a0  5f 4f 70 65 6e 57 69 6e  64 6f 77 22 2c 2c 42 4c  |_OpenWindow",,BL|
000087b0  4b 25 0d 24 fe 05 e1 0d  25 08 04 0d 25 12 14 dd  |K%.$....%...%...|
000087c0  f2 63 6c 6f 73 65 77 69  6e 64 28 57 48 25 29 0d  |.closewind(WH%).|
000087d0  25 1c 30 21 42 4c 4b 25  3d 48 41 4e 44 25 28 57  |%.0!BLK%=HAND%(W|
000087e0  48 25 29 3a c8 99 20 22  57 69 6d 70 5f 43 6c 6f  |H%):.. "Wimp_Clo|
000087f0  73 65 57 69 6e 64 6f 77  22 2c 2c 42 4c 4b 25 0d  |seWindow",,BLK%.|
00008800  25 26 05 e1 0d 25 30 04  0d 25 3a 0c dd f2 6f 70  |%&...%0..%:...op|
00008810  6d 61 69 6e 0d 25 44 1e  c8 99 20 22 57 69 6d 70  |main.%D... "Wimp|
00008820  5f 4f 70 65 6e 57 69 6e  64 6f 77 22 2c 2c 42 4c  |_OpenWindow",,BL|
00008830  4b 25 0d 25 4e 05 e1 0d  25 58 04 0d 25 62 13 dd  |K%.%N...%X..%b..|
00008840  f2 63 6c 6d 61 69 6e 3a  4d 4f 50 25 3d a3 0d 25  |.clmain:MOP%=..%|
00008850  6c 1f c8 99 20 22 57 69  6d 70 5f 43 6c 6f 73 65  |l... "Wimp_Close|
00008860  57 69 6e 64 6f 77 22 2c  2c 42 4c 4b 25 0d 25 76  |Window",,BLK%.%v|
00008870  05 e1 0d 25 80 04 0d 25  8a 0c dd f2 61 69 72 6e  |...%...%....airn|
00008880  6f 7a 0d 25 94 35 48 25  3d 2d 31 3a e3 4c 25 3d  |oz.%.5H%=-1:.L%=|
00008890  32 31 20 b8 20 33 33 20  88 20 32 3a e7 20 a4 68  |21 . 33 . 2:. .h|
000088a0  69 67 68 28 34 2c 4c 25  29 20 8c 20 48 25 3d 4c  |igh(4,L%) . H%=L|
000088b0  25 3a 4c 25 3d 33 33 0d  25 9e 05 ed 0d 25 a8 0b  |%:L%=33.%....%..|
000088c0  c8 8e 20 48 25 20 ca 0d  25 b2 14 c9 20 32 31 3a  |.. H% ..%... 21:|
000088d0  58 52 3d 31 3a 59 52 3d  2e 32 35 0d 25 bc 13 c9  |XR=1:YR=.25.%...|
000088e0  20 32 33 3a 58 52 3d 31  3a 59 52 3d 2e 35 0d 25  | 23:XR=1:YR=.5.%|
000088f0  c6 14 c9 20 32 35 3a 58  52 3d 31 3a 59 52 3d 2e  |... 25:XR=1:YR=.|
00008900  37 35 0d 25 d0 12 c9 20  32 37 3a 58 52 3d 31 3a  |75.%... 27:XR=1:|
00008910  59 52 3d 31 0d 25 da 14  c9 20 32 39 3a 58 52 3d  |YR=1.%... 29:XR=|
00008920  2e 37 35 3a 59 52 3d 31  0d 25 e4 13 c9 20 33 31  |.75:YR=1.%... 31|
00008930  3a 58 52 3d 2e 35 3a 59  52 3d 31 0d 25 ee 14 c9  |:XR=.5:YR=1.%...|
00008940  20 33 33 3a 58 52 3d 2e  32 35 3a 59 52 3d 31 0d  | 33:XR=.25:YR=1.|
00008950  25 f8 05 cb 0d 26 02 05  e1 0d 26 0c 04 0d 26 16  |%....&....&...&.|
00008960  10 dd f2 70 61 69 6e 74  73 63 61 6c 65 0d 26 20  |...paintscale.& |
00008970  10 21 53 43 41 4c 45 25  3d 42 58 4d 25 0d 26 2a  |.!SCALE%=BXM%.&*|
00008980  11 53 43 41 4c 45 25 21  34 3d 42 59 4d 25 0d 26  |.SCALE%!4=BYM%.&|
00008990  34 11 53 43 41 4c 45 25  21 38 3d 42 58 44 25 0d  |4.SCALE%!8=BXD%.|
000089a0  26 3e 12 53 43 41 4c 45  25 21 31 32 3d 42 59 44  |&>.SCALE%!12=BYD|
000089b0  25 0d 26 48 10 58 52 3d  42 58 4d 25 2f 42 58 44  |%.&H.XR=BXM%/BXD|
000089c0  25 0d 26 52 10 59 52 3d  42 59 4d 25 2f 42 59 44  |%.&R.YR=BYM%/BYD|
000089d0  25 0d 26 5c 05 e1 0d 26  66 04 0d 26 70 11 dd f2  |%.&\...&f..&p...|
000089e0  70 61 69 6e 74 73 63 61  6c 65 32 0d 26 7a 0d 21  |paintscale2.&z.!|
000089f0  53 43 41 4c 45 25 3d 31  0d 26 84 0e 53 43 41 4c  |SCALE%=1.&..SCAL|
00008a00  45 25 21 34 3d 31 0d 26  8e 0e 53 43 41 4c 45 25  |E%!4=1.&..SCALE%|
00008a10  21 38 3d 31 0d 26 98 0f  53 43 41 4c 45 25 21 31  |!8=1.&..SCALE%!1|
00008a20  32 3d 31 0d 26 a2 08 58  52 3d 31 0d 26 ac 08 59  |2=1.&..XR=1.&..Y|
00008a30  52 3d 31 0d 26 b6 05 e1  0d 26 c0 04 0d 26 ca 0e  |R=1.&....&...&..|
00008a40  dd f2 70 69 63 63 6c 69  63 6b 0d 26 d4 24 e7 20  |..picclick.&.$. |
00008a50  4d 42 55 53 25 20 80 20  4d 4f 55 42 25 3c 3e 30  |MBUS% . MOUB%<>0|
00008a60  20 8c 20 e1 20 8b 20 4d  42 55 53 25 3d a3 0d 26  | . . . MBUS%=..&|
00008a70  de 0e c8 8e 20 46 55 53  45 25 20 ca 0d 26 e8 a2  |.... FUSE% ..&..|
00008a80  c9 20 2d 31 3a e7 20 4d  4f 55 42 25 3d 31 20 8c  |. -1:. MOUB%=1 .|
00008a90  20 f2 70 69 63 70 6f 73  3a f2 69 6e 70 69 63 3a  | .picpos:.inpic:|
00008aa0  43 4f 25 3d b0 58 25 2c  59 25 29 3a 54 49 25 3d  |CO%=.X%,Y%):TI%=|
00008ab0  c8 9c 28 58 25 2c 59 25  29 3a e6 33 2c 36 33 20  |..(X%,Y%):.3,63 |
00008ac0  c8 9c 20 31 39 32 3a f0  36 39 2c 34 30 30 2c 34  |.. 192:.69,400,4|
00008ad0  30 30 3a f0 36 39 2c 34  30 30 2c 34 30 30 3a f2  |00:.69,400,400:.|
00008ae0  6f 75 74 70 69 63 3a f2  74 72 61 73 70 28 a4 66  |outpic:.trasp(.f|
00008af0  69 6e 64 70 61 6c 65 6e  74 28 43 4f 25 2c 54 49  |indpalent(CO%,TI|
00008b00  25 29 29 3a f2 66 6f 72  63 65 64 72 61 77 70 61  |%)):.forcedrawpa|
00008b10  6c 28 50 41 4c 25 29 3a  e5 20 8d 74 60 68 0d 26  |l(PAL%):. .t`h.&|
00008b20  f2 1b e7 20 4d 4f 55 42  25 3d 34 20 8c 20 f2 6f  |... MOUB%=4 . .o|
00008b30  70 31 3a e5 20 8d 74 60  68 0d 26 fc 3f c9 20 30  |p1:. .t`h.&.?. 0|
00008b40  3a f2 70 69 63 70 6f 73  3a f2 69 6e 70 69 63 3a  |:.picpos:.inpic:|
00008b50  f2 73 65 74 63 6f 6c 3a  f0 36 39 2c 58 25 2c 59  |.setcol:.69,X%,Y|
00008b60  25 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |%:.outpic:.quick|
00008b70  64 72 61 77 6d 61 69 6e  0d 27 06 22 c9 20 34 3a  |drawmain.'.". 4:|
00008b80  f2 70 61 69 6e 74 73 63  61 6c 65 3a f2 69 6e 70  |.paintscale:.inp|
00008b90  69 63 3a f2 70 69 63 70  6f 73 0d 27 10 2e e7 20  |ic:.picpos.'... |
00008ba0  46 55 53 54 25 3c 3e 30  20 8c 20 f2 65 6f 72 62  |FUST%<>0 . .eorb|
00008bb0  61 63 6b 3a f2 70 61 69  6e 74 62 72 75 73 68 28  |ack:.paintbrush(|
00008bc0  4f 58 25 2c 4f 59 25 29  0d 27 1a 38 f2 73 65 74  |OX%,OY%).'.8.set|
00008bd0  62 61 63 6b 63 6f 6c 3a  f2 70 61 69 6e 74 62 72  |backcol:.paintbr|
00008be0  75 73 68 28 58 25 2c 59  25 29 3a 4f 58 25 3d 58  |ush(X%,Y%):OX%=X|
00008bf0  25 3a 4f 59 25 3d 59 25  3a 46 55 53 54 25 3d 31  |%:OY%=Y%:FUST%=1|
00008c00  0d 27 24 21 f2 65 6f 72  62 61 63 6b 3a f2 70 61  |.'$!.eorback:.pa|
00008c10  69 6e 74 62 72 75 73 68  28 4f 58 25 2c 4f 59 25  |intbrush(OX%,OY%|
00008c20  29 0d 27 2e 1a f2 6f 75  74 70 69 63 3a f2 71 75  |).'...outpic:.qu|
00008c30  69 63 6b 64 72 61 77 6d  61 69 6e 0d 27 38 1c c9  |ickdrawmain.'8..|
00008c40  20 32 34 3a e7 20 4d 4f  55 42 25 3c 3e 34 20 8c  | 24:. MOUB%<>4 .|
00008c50  20 e5 20 8d 74 60 68 0d  27 42 c6 f2 70 69 63 70  | . .t`h.'B..picp|
00008c60  6f 73 3a f2 69 6e 70 69  63 3a e6 33 2c 36 33 20  |os:.inpic:.3,63 |
00008c70  c8 9c 20 31 39 32 3a f0  36 39 2c 34 30 30 2c 34  |.. 192:.69,400,4|
00008c80  30 30 3a f0 36 39 2c 34  30 30 2c 34 30 30 3a f2  |00:.69,400,400:.|
00008c90  73 65 74 63 6f 6c 3a 54  43 4f 25 3d b0 58 25 2d  |setcol:TCO%=.X%-|
00008ca0  32 2c 59 25 29 3a 54 54  49 25 3d c8 9c 28 58 25  |2,Y%):TTI%=..(X%|
00008cb0  2d 32 2c 59 25 29 3a 54  50 45 25 3d a4 66 69 6e  |-2,Y%):TPE%=.fin|
00008cc0  64 70 61 6c 65 6e 74 28  54 43 4f 25 2c 54 54 49  |dpalent(TCO%,TTI|
00008cd0  25 29 3a e7 20 54 50 45  25 3d 43 4f 4c 25 20 8c  |%):. TPE%=COL% .|
00008ce0  20 f2 6f 75 74 70 69 63  3a f2 6d 65 73 73 61 67  | .outpic:.messag|
00008cf0  65 28 30 2c 22 43 61 6e  6e 6f 74 20 74 72 61 63  |e(0,"Cannot trac|
00008d00  65 20 74 68 65 20 63 6f  6c 6f 75 72 20 79 6f 75  |e the colour you|
00008d10  20 61 72 65 20 75 73 69  6e 67 2e 22 29 0d 27 4c  | are using.").'L|
00008d20  32 f2 74 72 61 63 65 28  58 25 2c 59 25 2c 54 43  |2.trace(X%,Y%,TC|
00008d30  4f 25 2c 54 54 49 25 29  3a f2 6f 75 74 70 69 63  |O%,TTI%):.outpic|
00008d40  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 0d  |:.quickdrawmain.|
00008d50  27 56 24 c9 20 32 39 3a  f2 70 61 69 6e 74 73 63  |'V$. 29:.paintsc|
00008d60  61 6c 65 32 3a f2 69 6e  70 69 63 3a f2 70 69 63  |ale2:.inpic:.pic|
00008d70  70 6f 73 0d 27 60 2f e7  20 46 55 53 54 25 3c 3e  |pos.'`/. FUST%<>|
00008d80  30 20 8c 20 f2 65 6f 72  62 61 63 6b 3a f2 70 61  |0 . .eorback:.pa|
00008d90  69 6e 74 62 72 75 73 68  32 28 4f 58 25 2c 4f 59  |intbrush2(OX%,OY|
00008da0  25 29 0d 27 6a 20 56 41  52 53 21 32 30 3d 42 54  |%).'j VARS!20=BT|
00008db0  43 25 3a 56 41 52 53 21  32 34 3d 50 41 4c 54 41  |C%:VARS!24=PALTA|
00008dc0  42 25 0d 27 74 1f 56 41  52 53 21 32 38 3d 50 49  |B%.'t.VARS!28=PI|
00008dd0  43 25 3a 56 41 52 53 21  33 32 3d 53 50 42 55 46  |C%:VARS!32=SPBUF|
00008de0  25 0d 27 7e 1f 56 41 52  53 21 33 36 3d 58 25 2d  |%.'~.VARS!36=X%-|
00008df0  33 32 3a 56 41 52 53 21  34 30 3d 59 25 2d 33 32  |32:VARS!40=Y%-32|
00008e00  0d 27 88 21 56 41 52 53  21 34 34 3d 53 45 4c 42  |.'.!VARS!44=SELB|
00008e10  52 25 3a 56 41 52 53 21  34 38 3d 42 52 55 53 48  |R%:VARS!48=BRUSH|
00008e20  25 0d 27 92 1a 41 25 3d  56 41 52 53 3a d6 20 61  |%.'..A%=VARS:. a|
00008e30  76 65 72 61 67 65 62 72  75 73 68 0d 27 9c 33 e6  |veragebrush.'.3.|
00008e40  33 2c 36 33 3a c8 93 20  58 25 2d 33 32 2c 59 25  |3,63:.. X%-32,Y%|
00008e50  2d 33 32 2c 36 34 2c 36  34 3a c8 93 20 58 25 2d  |-32,64,64:.. X%-|
00008e60  33 32 2c 59 25 2d 33 32  2c 36 34 2c 36 34 0d 27  |32,Y%-32,64,64.'|
00008e70  a6 38 4f 58 25 3d 58 25  3a 4f 59 25 3d 59 25 3a  |.8OX%=X%:OY%=Y%:|
00008e80  46 55 53 54 25 3d 31 3a  f2 65 6f 72 62 61 63 6b  |FUST%=1:.eorback|
00008e90  3a f2 70 61 69 6e 74 62  72 75 73 68 32 28 4f 58  |:.paintbrush2(OX|
00008ea0  25 2c 4f 59 25 29 0d 27  b0 1a f2 6f 75 74 70 69  |%,OY%).'...outpi|
00008eb0  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00008ec0  0d 27 ba 24 c9 20 33 30  3a f2 70 61 69 6e 74 73  |.'.$. 30:.paints|
00008ed0  63 61 6c 65 32 3a f2 69  6e 70 69 63 3a f2 70 69  |cale2:.inpic:.pi|
00008ee0  63 70 6f 73 0d 27 c4 2f  e7 20 46 55 53 54 25 3c  |cpos.'./. FUST%<|
00008ef0  3e 30 20 8c 20 f2 65 6f  72 62 61 63 6b 3a f2 70  |>0 . .eorback:.p|
00008f00  61 69 6e 74 62 72 75 73  68 32 28 4f 58 25 2c 4f  |aintbrush2(OX%,O|
00008f10  59 25 29 0d 27 ce 20 56  41 52 53 21 32 30 3d 42  |Y%).'. VARS!20=B|
00008f20  54 43 25 3a 56 41 52 53  21 32 34 3d 50 41 4c 54  |TC%:VARS!24=PALT|
00008f30  41 42 25 0d 27 d8 1f 56  41 52 53 21 32 38 3d 50  |AB%.'..VARS!28=P|
00008f40  49 43 25 3a 56 41 52 53  21 33 32 3d 53 50 42 55  |IC%:VARS!32=SPBU|
00008f50  46 25 0d 27 e2 1f 56 41  52 53 21 33 36 3d 58 25  |F%.'..VARS!36=X%|
00008f60  2d 33 32 3a 56 41 52 53  21 34 30 3d 59 25 2d 33  |-32:VARS!40=Y%-3|
00008f70  32 0d 27 ec 21 56 41 52  53 21 34 34 3d 53 45 4c  |2.'.!VARS!44=SEL|
00008f80  42 52 25 3a 56 41 52 53  21 34 38 3d 42 52 55 53  |BR%:VARS!48=BRUS|
00008f90  48 25 0d 27 f6 39 56 41  52 53 21 38 34 3d 50 41  |H%.'.9VARS!84=PA|
00008fa0  4c 54 41 42 25 3f 28 43  4f 4c 25 2a 32 29 3a 56  |LTAB%?(COL%*2):V|
00008fb0  41 52 53 21 38 38 3d 50  41 4c 54 41 42 25 3f 28  |ARS!88=PALTAB%?(|
00008fc0  28 43 4f 4c 25 2a 32 29  2b 31 29 0d 28 00 17 41  |(COL%*2)+1).(..A|
00008fd0  25 3d 56 41 52 53 3a d6  20 74 69 6e 74 62 72 75  |%=VARS:. tintbru|
00008fe0  73 68 0d 28 0a 33 e6 33  2c 36 33 3a c8 93 20 58  |sh.(.3.3,63:.. X|
00008ff0  25 2d 33 32 2c 59 25 2d  33 32 2c 36 34 2c 36 34  |%-32,Y%-32,64,64|
00009000  3a c8 93 20 58 25 2d 33  32 2c 59 25 2d 33 32 2c  |:.. X%-32,Y%-32,|
00009010  36 34 2c 36 34 0d 28 14  38 4f 58 25 3d 58 25 3a  |64,64.(.8OX%=X%:|
00009020  4f 59 25 3d 59 25 3a 46  55 53 54 25 3d 31 3a f2  |OY%=Y%:FUST%=1:.|
00009030  65 6f 72 62 61 63 6b 3a  f2 70 61 69 6e 74 62 72  |eorback:.paintbr|
00009040  75 73 68 32 28 4f 58 25  2c 4f 59 25 29 0d 28 1e  |ush2(OX%,OY%).(.|
00009050  1a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |..outpic:.quickd|
00009060  72 61 77 6d 61 69 6e 0d  28 28 21 c9 20 33 31 3a  |rawmain.((!. 31:|
00009070  e7 20 4d 4f 55 42 25 3c  3e 34 20 84 20 47 52 54  |. MOUB%<>4 . GRT|
00009080  59 25 3d 31 20 8c 20 e1  0d 28 32 2d f2 73 70 69  |Y%=1 . ..(2-.spi|
00009090  6e 69 74 3a f2 73 70 62  75 66 28 31 36 31 2a 31  |nit:.spbuf(161*1|
000090a0  30 32 34 29 3a e7 20 51  25 20 8c 20 f2 73 70 62  |024):. Q% . .spb|
000090b0  75 66 65 72 72 0d 28 3c  0e f2 62 61 63 6b 75 70  |uferr.(<..backup|
000090c0  70 69 63 0d 28 46 58 f2  69 6e 62 61 63 6b 75 70  |pic.(FX.inbackup|
000090d0  3a f2 70 69 63 70 6f 73  3a 46 42 43 25 3d b0 58  |:.picpos:FBC%=.X|
000090e0  25 2c 59 25 29 3a 46 42  54 25 3d c8 9c 28 58 25  |%,Y%):FBT%=..(X%|
000090f0  2c 59 25 29 3a e6 30 2c  46 42 43 25 2b 31 32 38  |,Y%):.0,FBC%+128|
00009100  20 c8 9c 20 46 42 54 25  3a 46 55 54 25 3d 28 46  | .. FBT%:FUT%=(F|
00009110  42 43 25 2b 31 29 20 83  20 36 34 0d 28 50 39 e6  |BC%+1) . 64.(P9.|
00009120  30 2c 46 55 54 25 20 c8  9c 20 46 42 54 25 3a c8  |0,FUT% .. FBT%:.|
00009130  99 20 22 48 6f 75 72 67  6c 61 73 73 5f 4f 6e 22  |. "Hourglass_On"|
00009140  3a c8 90 20 58 25 2c 59  25 3a f2 6f 75 74 62 61  |:.. X%,Y%:.outba|
00009150  63 6b 75 70 0d 28 5a 2d  41 25 3d 56 41 52 53 3a  |ckup.(Z-A%=VARS:|
00009160  42 25 3d 50 49 43 25 3a  43 25 3d 53 50 42 55 46  |B%=PIC%:C%=SPBUF|
00009170  25 3a d6 20 66 69 6e 64  63 68 61 6e 67 65 62 6f  |%:. findchangebo|
00009180  78 0d 28 64 14 46 4d 49  4e 58 25 3d 28 21 56 41  |x.(d.FMINX%=(!VA|
00009190  52 53 29 2a 32 0d 28 6e  15 46 4d 49 4e 59 25 3d  |RS)*2.(n.FMINY%=|
000091a0  28 56 41 52 53 21 34 29  2a 34 0d 28 78 15 46 4d  |(VARS!4)*4.(x.FM|
000091b0  41 58 58 25 3d 28 56 41  52 53 21 38 29 2a 32 0d  |AXX%=(VARS!8)*2.|
000091c0  28 82 16 46 4d 41 58 59  25 3d 28 56 41 52 53 21  |(..FMAXY%=(VARS!|
000091d0  31 32 29 2a 34 0d 28 8c  09 f2 66 69 6c 6c 0d 28  |12)*4.(...fill.(|
000091e0  96 16 c8 99 20 22 48 6f  75 72 67 6c 61 73 73 5f  |.... "Hourglass_|
000091f0  4f 66 66 22 0d 28 a0 05  cb 0d 28 aa 05 e1 0d 28  |Off".(....(....(|
00009200  b4 04 0d 28 be 0a dd f2  66 69 6c 6c 0d 28 c8 14  |...(....fill.(..|
00009210  4e 4f 53 25 3d bb a4 67  69 28 31 33 2c 38 33 29  |NOS%=..gi(13,83)|
00009220  0d 28 d2 0e 4e 4f 46 25  3d 47 52 46 4e 25 0d 28  |.(..NOF%=GRFN%.(|
00009230  dc 09 45 54 25 3d 30 0d  28 e6 1a e7 20 a4 68 69  |..ET%=0.(... .hi|
00009240  67 68 28 31 33 2c 38 37  29 20 8c 20 45 54 25 3d  |gh(13,87) . ET%=|
00009250  31 0d 28 f0 1a e7 20 a4  68 69 67 68 28 31 33 2c  |1.(... .high(13,|
00009260  38 39 29 20 8c 20 45 54  25 3d 32 0d 28 fa 1a e7  |89) . ET%=2.(...|
00009270  20 a4 68 69 67 68 28 31  33 2c 39 31 29 20 8c 20  | .high(13,91) . |
00009280  45 54 25 3d 33 0d 29 04  1a e7 20 a4 68 69 67 68  |ET%=3.)... .high|
00009290  28 31 33 2c 39 33 29 20  8c 20 45 54 25 3d 34 0d  |(13,93) . ET%=4.|
000092a0  29 0e 0b 46 49 54 25 3d  2d 31 0d 29 18 1b e7 20  |)..FIT%=-1.)... |
000092b0  a4 68 69 67 68 28 31 33  2c 36 37 29 20 8c 20 46  |.high(13,67) . F|
000092c0  49 54 25 3d 31 0d 29 22  1b e7 20 a4 68 69 67 68  |IT%=1.)".. .high|
000092d0  28 31 33 2c 36 39 29 20  8c 20 46 49 54 25 3d 32  |(13,69) . FIT%=2|
000092e0  0d 29 2c 1b e7 20 a4 68  69 67 68 28 31 33 2c 37  |.),.. .high(13,7|
000092f0  31 29 20 8c 20 46 49 54  25 3d 33 0d 29 36 1b e7  |1) . FIT%=3.)6..|
00009300  20 a4 68 69 67 68 28 31  33 2c 37 33 29 20 8c 20  | .high(13,73) . |
00009310  46 49 54 25 3d 34 0d 29  40 1b e7 20 a4 68 69 67  |FIT%=4.)@.. .hig|
00009320  68 28 31 33 2c 37 35 29  20 8c 20 46 49 54 25 3d  |h(13,75) . FIT%=|
00009330  35 0d 29 4a 1b e7 20 a4  68 69 67 68 28 31 33 2c  |5.)J.. .high(13,|
00009340  37 37 29 20 8c 20 46 49  54 25 3d 36 0d 29 54 1c  |77) . FIT%=6.)T.|
00009350  e7 20 45 54 25 3d 31 20  84 20 45 54 25 3d 32 20  |. ET%=1 . ET%=2 |
00009360  8c 20 46 49 54 25 3d 31  0d 29 5e 1c e7 20 45 54  |. FIT%=1.)^.. ET|
00009370  25 3d 33 20 84 20 45 54  25 3d 34 20 8c 20 46 49  |%=3 . ET%=4 . FI|
00009380  54 25 3d 34 0d 29 68 45  e7 20 46 49 54 25 3d 2d  |T%=4.)hE. FIT%=-|
00009390  31 20 8c 20 f2 73 70 69  6e 69 74 3a f2 6d 65 73  |1 . .spinit:.mes|
000093a0  73 61 67 65 28 30 2c 22  59 6f 75 20 6d 75 73 74  |sage(0,"You must|
000093b0  20 63 68 6f 6f 73 65 20  61 20 74 79 70 65 20 6f  | choose a type o|
000093c0  66 20 66 69 6c 6c 2e 22  29 0d 29 72 0d c8 8e 20  |f fill.").)r... |
000093d0  46 49 54 25 20 ca 0d 29  7c 33 c9 20 31 3a 46 49  |FIT% ..)|3. 1:FI|
000093e0  57 25 3d 46 4d 41 58 58  25 2d 46 4d 49 4e 58 25  |W%=FMAXX%-FMINX%|
000093f0  3a 46 49 46 43 25 3d 30  3a 4c 41 46 43 25 3d 32  |:FIFC%=0:LAFC%=2|
00009400  35 35 3a 46 49 44 25 3d  31 0d 29 86 34 c9 20 32  |55:FID%=1.).4. 2|
00009410  3a 46 49 57 25 3d 46 4d  41 58 58 25 2d 46 4d 49  |:FIW%=FMAXX%-FMI|
00009420  4e 58 25 3a 46 49 46 43  25 3d 32 35 35 3a 4c 41  |NX%:FIFC%=255:LA|
00009430  46 43 25 3d 30 3a 46 49  44 25 3d 2d 31 0d 29 90  |FC%=0:FID%=-1.).|
00009440  33 c9 20 34 3a 46 49 57  25 3d 46 4d 41 58 59 25  |3. 4:FIW%=FMAXY%|
00009450  2d 46 4d 49 4e 59 25 3a  46 49 46 43 25 3d 30 3a  |-FMINY%:FIFC%=0:|
00009460  4c 41 46 43 25 3d 32 35  35 3a 46 49 44 25 3d 31  |LAFC%=255:FID%=1|
00009470  0d 29 9a 34 c9 20 33 3a  46 49 57 25 3d 46 4d 41  |.).4. 3:FIW%=FMA|
00009480  58 59 25 2d 46 4d 49 4e  59 25 3a 46 49 46 43 25  |XY%-FMINY%:FIFC%|
00009490  3d 32 35 35 3a 4c 41 46  43 25 3d 30 3a 46 49 44  |=255:LAFC%=0:FID|
000094a0  25 3d 2d 31 0d 29 a4 20  c9 20 35 3a 46 49 46 43  |%=-1.). . 5:FIFC|
000094b0  25 3d 30 3a 4c 41 46 43  25 3d 32 35 35 3a 46 49  |%=0:LAFC%=255:FI|
000094c0  44 25 3d 31 0d 29 ae 21  c9 20 36 3a 46 49 46 43  |D%=1.).!. 6:FIFC|
000094d0  25 3d 32 35 35 3a 4c 41  46 43 25 3d 30 3a 46 49  |%=255:LAFC%=0:FI|
000094e0  44 25 3d 2d 31 0d 29 b8  05 cb 0d 29 c2 17 e7 20  |D%=-1.)....)... |
000094f0  46 49 54 25 3d 35 20 84  20 46 49 54 25 3d 36 20  |FIT%=5 . FIT%=6 |
00009500  8c 0d 29 cc 3f e7 20 28  46 4d 41 58 58 25 2d 58  |..).?. (FMAXX%-X|
00009510  25 29 3e 28 58 25 2d 46  4d 49 4e 58 25 29 20 8c  |%)>(X%-FMINX%) .|
00009520  20 58 4f 46 25 3d 46 4d  41 58 58 25 2d 58 25 20  | XOF%=FMAXX%-X% |
00009530  8b 20 58 4f 46 25 3d 58  25 2d 46 4d 49 4e 58 25  |. XOF%=X%-FMINX%|
00009540  0d 29 d6 3f e7 20 28 46  4d 41 58 59 25 2d 59 25  |.).?. (FMAXY%-Y%|
00009550  29 3e 28 59 25 2d 46 4d  49 4e 59 25 29 20 8c 20  |)>(Y%-FMINY%) . |
00009560  59 4f 46 25 3d 46 4d 41  58 59 25 2d 59 25 20 8b  |YOF%=FMAXY%-Y% .|
00009570  20 59 4f 46 25 3d 59 25  2d 46 4d 49 4e 59 25 0d  | YOF%=Y%-FMINY%.|
00009580  29 e0 35 46 49 57 25 3d  b6 28 28 58 4f 46 25 5e  |).5FIW%=.((XOF%^|
00009590  32 29 2b 28 59 4f 46 25  5e 32 29 29 3a e7 20 47  |2)+(YOF%^2)):. G|
000095a0  52 54 59 25 3d 31 20 8c  20 46 49 57 25 3d 46 49  |RTY%=1 . FIW%=FI|
000095b0  57 25 2f 32 0d 29 ea 05  cd 0d 29 f4 5c e7 20 46  |W%/2.)....).\. F|
000095c0  49 57 25 3d 30 20 84 20  4e 4f 53 25 3d 31 20 8c  |IW%=0 . NOS%=1 .|
000095d0  20 f2 6d 65 73 73 61 67  65 28 35 2c 22 59 6f 75  | .message(5,"You|
000095e0  20 63 61 6e 6e 6f 74 20  75 73 65 20 61 20 67 72  | cannot use a gr|
000095f0  61 64 75 61 74 65 64 20  66 69 6c 6c 20 6f 6e 20  |aduated fill on |
00009600  61 6e 20 61 72 65 61 20  74 68 61 74 20 73 6d 61  |an area that sma|
00009610  6c 6c 2e 22 29 0d 29 fe  31 43 50 50 25 3d 28 32  |ll.").).1CPP%=(2|
00009620  35 35 3c 3c 38 29 20 81  20 46 49 57 25 3a 43 50  |55<<8) . FIW%:CP|
00009630  53 25 3d 28 32 35 35 3c  3c 38 29 20 81 20 28 4e  |S%=(255<<8) . (N|
00009640  4f 53 25 2d 31 29 0d 2a  08 48 49 25 3d 49 4f 25  |OS%-1).*.HI%=IO%|
00009650  3a e3 4c 25 3d 30 20 b8  20 31 35 3a 3f 49 25 3d  |:.L%=0 . 15:?I%=|
00009660  47 52 46 49 25 28 4c 25  2c 30 2c 4e 4f 46 25 29  |GRFI%(L%,0,NOF%)|
00009670  3a 49 25 3f 31 3d 47 52  46 49 25 28 4c 25 2c 31  |:I%?1=GRFI%(L%,1|
00009680  2c 4e 4f 46 25 29 3a 49  25 2b 3d 32 3a ed 0d 2a  |,NOF%):I%+=2:..*|
00009690  12 36 21 56 41 52 53 3d  50 49 43 25 3a e7 20 47  |.6!VARS=PIC%:. G|
000096a0  52 54 59 25 3d 30 20 8c  20 56 41 52 53 21 34 3d  |RTY%=0 . VARS!4=|
000096b0  53 50 42 55 46 25 20 8b  20 56 41 52 53 21 34 3d  |SPBUF% . VARS!4=|
000096c0  50 49 43 25 0d 2a 1c cd  56 41 52 53 21 38 3d 49  |PIC%.*..VARS!8=I|
000096d0  4f 25 3a 56 41 52 53 21  31 32 3d 4e 4f 53 25 3a  |O%:VARS!12=NOS%:|
000096e0  56 41 52 53 21 31 36 3d  46 49 46 43 25 3a 56 41  |VARS!16=FIFC%:VA|
000096f0  52 53 21 32 30 3d 4c 41  46 43 25 3a 56 41 52 53  |RS!20=LAFC%:VARS|
00009700  21 32 34 3d 46 49 44 25  3a 56 41 52 53 21 32 38  |!24=FID%:VARS!28|
00009710  3d 43 50 50 25 3a 56 41  52 53 21 33 32 3d 43 50  |=CPP%:VARS!32=CP|
00009720  53 25 3a 56 41 52 53 21  33 36 3d 58 25 3a 56 41  |S%:VARS!36=X%:VA|
00009730  52 53 21 34 30 3d 59 25  3a 56 41 52 53 21 34 34  |RS!40=Y%:VARS!44|
00009740  3d 52 4f 54 54 41 42 25  3a 56 41 52 53 21 34 38  |=ROTTAB%:VARS!48|
00009750  3d 46 49 54 25 3a 56 41  52 53 21 35 32 3d 46 4d  |=FIT%:VARS!52=FM|
00009760  49 4e 58 25 3a 56 41 52  53 21 35 36 3d 46 4d 49  |INX%:VARS!56=FMI|
00009770  4e 59 25 3a 56 41 52 53  21 36 30 3d 46 4d 41 58  |NY%:VARS!60=FMAX|
00009780  58 25 3a 56 41 52 53 21  36 34 3d 46 4d 41 58 59  |X%:VARS!64=FMAXY|
00009790  25 0d 2a 26 43 e7 20 47  52 54 59 25 3d 31 20 8c  |%.*&C. GRTY%=1 .|
000097a0  20 56 41 52 53 21 33 36  3d 28 46 4d 49 4e 58 25  | VARS!36=(FMINX%|
000097b0  2b 46 4d 41 58 58 25 29  81 32 3a 56 41 52 53 21  |+FMAXX%).2:VARS!|
000097c0  34 30 3d 28 46 4d 49 4e  59 25 2b 46 4d 41 58 59  |40=(FMINY%+FMAXY|
000097d0  25 29 81 32 0d 2a 30 1b  56 41 52 53 21 36 38 3d  |%).2.*0.VARS!68=|
000097e0  52 41 4e 44 25 3a 56 41  52 53 21 37 32 3d 30 0d  |RAND%:VARS!72=0.|
000097f0  2a 3a 17 56 41 52 53 21  37 36 3d bb a4 67 69 28  |*:.VARS!76=..gi(|
00009800  31 33 2c 38 31 29 0d 2a  44 2a e7 20 a4 68 69 67  |13,81).*D*. .hig|
00009810  68 28 31 33 2c 35 34 29  20 8c 20 56 41 52 53 21  |h(13,54) . VARS!|
00009820  38 30 3d 31 20 8b 20 56  41 52 53 21 38 30 3d 30  |80=1 . VARS!80=0|
00009830  0d 2a 4e 39 56 41 52 53  21 38 34 3d 45 54 25 3a  |.*N9VARS!84=ET%:|
00009840  56 41 52 53 21 38 38 3d  54 52 41 53 50 25 3a 56  |VARS!88=TRASP%:V|
00009850  41 52 53 21 39 32 3d 47  52 54 59 25 3a 56 41 52  |ARS!92=GRTY%:VAR|
00009860  53 21 39 36 3d 42 54 43  25 0d 2a 58 27 e3 4c 25  |S!96=BTC%.*X'.L%|
00009870  3d 30 20 b8 20 34 30 39  32 20 88 20 34 3a 52 41  |=0 . 4092 . 4:RA|
00009880  4e 44 25 21 4c 25 3d b3  28 43 50 53 25 29 3a ed  |ND%!L%=.(CPS%):.|
00009890  0d 2a 62 0b 41 25 3d 56  41 52 53 0d 2a 6c 13 d6  |.*b.A%=VARS.*l..|
000098a0  20 67 72 61 64 75 61 74  65 64 66 69 6c 6c 0d 2a  | graduatedfill.*|
000098b0  76 1a f2 73 70 69 6e 69  74 3a f2 66 6f 72 63 65  |v..spinit:.force|
000098c0  64 72 61 77 6d 61 69 6e  0d 2a 80 05 e1 0d 2a 8a  |drawmain.*....*.|
000098d0  04 0d 2a 94 1f dd f2 68  67 3a c8 99 20 22 48 6f  |..*....hg:.. "Ho|
000098e0  75 72 67 6c 61 73 73 5f  53 6d 61 73 68 22 3a e1  |urglass_Smash":.|
000098f0  0d 2a 9e 04 0d 2a a8 0f  dd f2 73 77 61 70 63 6f  |.*...*....swapco|
00009900  72 6e 73 0d 2a b2 1e e7  20 58 25 28 30 29 3e 4f  |rns.*... X%(0)>O|
00009910  58 25 20 8c 20 c8 94 20  58 25 28 30 29 2c 4f 58  |X% . .. X%(0),OX|
00009920  25 0d 2a bc 1e e7 20 59  25 28 30 29 3e 4f 59 25  |%.*... Y%(0)>OY%|
00009930  20 8c 20 c8 94 20 59 25  28 30 29 2c 4f 59 25 0d  | . .. Y%(0),OY%.|
00009940  2a c6 05 e1 0d 2a d0 04  0d 2a da 45 dd a4 73 61  |*....*...*.E..sa|
00009950  6d 65 63 6f 6c 28 78 31  25 2c 79 31 25 2c 63 6f  |mecol(x1%,y1%,co|
00009960  6c 25 2c 74 69 6e 25 29  3a 3d 28 b0 78 31 25 2c  |l%,tin%):=(.x1%,|
00009970  79 31 25 29 3d 63 6f 6c  25 20 80 20 c8 9c 28 78  |y1%)=col% . ..(x|
00009980  31 25 2c 79 31 25 29 3d  74 69 6e 25 29 0d 2a e4  |1%,y1%)=tin%).*.|
00009990  04 0d 2a ee 35 dd f2 6c  28 78 31 25 2c 79 31 25  |..*.5..l(x1%,y1%|
000099a0  2c 78 32 25 2c 79 32 25  29 3a f0 34 2c 78 31 25  |,x2%,y2%):.4,x1%|
000099b0  2c 79 31 25 3a f0 20 4c  49 54 59 25 2c 78 32 25  |,y1%:. LITY%,x2%|
000099c0  2c 79 32 25 3a e1 0d 2a  f8 04 0d 2b 02 67 dd f2  |,y2%:..*...+.g..|
000099d0  72 28 78 31 25 2c 79 31  25 2c 78 32 25 2c 79 32  |r(x1%,y1%,x2%,y2|
000099e0  25 29 3a f0 34 2c 78 31  25 2c 79 31 25 3a f0 20  |%):.4,x1%,y1%:. |
000099f0  4c 49 54 59 25 2d 34 2c  78 32 25 2c 30 3a f0 20  |LITY%-4,x2%,0:. |
00009a00  4c 49 54 59 25 2d 34 2c  30 2c 79 32 25 3a f0 20  |LITY%-4,0,y2%:. |
00009a10  4c 49 54 59 25 2d 34 2c  2d 78 32 25 2c 30 3a f0  |LITY%-4,-x2%,0:.|
00009a20  20 4c 49 54 59 25 2d 34  2c 30 2c 2d 79 32 25 3a  | LITY%-4,0,-y2%:|
00009a30  e1 0d 2b 0c 04 0d 2b 16  1c dd f2 74 72 61 63 65  |..+...+....trace|
00009a40  28 58 25 2c 59 25 2c 54  43 4f 25 2c 54 54 49 25  |(X%,Y%,TCO%,TTI%|
00009a50  29 0d 2b 20 05 e1 0d 2b  2a 04 0d 2b 34 19 dd a4  |).+ ...+*..+4...|
00009a60  66 69 6e 64 70 61 6c 65  6e 74 28 43 4f 25 2c 54  |findpalent(CO%,T|
00009a70  49 25 29 0d 2b 3e 1e 3d  43 54 54 25 3f 28 28 43  |I%).+>.=CTT%?((C|
00009a80  4f 25 2a 34 29 2b 28 54  49 25 20 81 20 36 34 29  |O%*4)+(TI% . 64)|
00009a90  29 0d 2b 48 04 0d 2b 52  3e dd f2 73 65 74 63 6f  |).+H..+R>..setco|
00009aa0  6c 3a e6 20 55 53 45 25  2c 50 41 4c 54 41 42 25  |l:. USE%,PALTAB%|
00009ab0  3f 28 43 4f 4c 25 2a 32  29 20 c8 9c 20 50 41 4c  |?(COL%*2) .. PAL|
00009ac0  54 41 42 25 3f 28 28 43  4f 4c 25 2a 32 29 2b 31  |TAB%?((COL%*2)+1|
00009ad0  29 3a e1 0d 2b 5c 04 0d  2b 66 48 dd f2 73 65 74  |):..+\..+fH..set|
00009ae0  62 61 63 6b 63 6f 6c 3a  e6 20 55 53 45 25 2c 28  |backcol:. USE%,(|
00009af0  50 41 4c 54 41 42 25 3f  28 43 4f 4c 25 2a 32 29  |PALTAB%?(COL%*2)|
00009b00  29 2b 31 32 38 20 c8 9c  20 50 41 4c 54 41 42 25  |)+128 .. PALTAB%|
00009b10  3f 28 28 43 4f 4c 25 2a  32 29 2b 31 29 3a e1 0d  |?((COL%*2)+1):..|
00009b20  2b 70 04 0d 2b 7a 13 dd  f2 63 6f 6c 28 43 25 2c  |+p..+z...col(C%,|
00009b30  54 25 2c 55 25 29 0d 2b  84 16 c8 99 26 33 35 2c  |T%,U%).+....&35,|
00009b40  2d 31 2c 39 20 b8 20 2c  2c 42 50 25 0d 2b 8e 1c  |-1,9 . ,,BP%.+..|
00009b50  e7 20 42 50 25 3d 33 20  8c 20 e6 55 25 2c 43 25  |. BP%=3 . .U%,C%|
00009b60  20 c8 9c 20 54 25 3a e1  0d 2b 98 2b 52 25 3d 28  | .. T%:..+.+R%=(|
00009b70  28 43 25 20 80 20 25 31  31 29 2a 34 29 2b 28 54  |(C% . %11)*4)+(T|
00009b80  25 20 81 20 36 34 29 3a  52 25 2b 3d 28 52 25 3c  |% . 64):R%+=(R%<|
00009b90  3c 34 29 0d 2b a2 32 47  25 3d 28 28 28 43 25 20  |<4).+.2G%=(((C% |
00009ba0  80 20 25 31 31 30 30 29  3e 3e 32 29 2a 34 29 2b  |. %1100)>>2)*4)+|
00009bb0  28 54 25 20 81 20 36 34  29 3a 47 25 2b 3d 28 47  |(T% . 64):G%+=(G|
00009bc0  25 3c 3c 34 29 0d 2b ac  34 42 25 3d 28 28 28 43  |%<<4).+.4B%=(((C|
00009bd0  25 20 80 20 25 31 31 30  30 30 30 29 3e 3e 34 29  |% . %110000)>>4)|
00009be0  2a 34 29 2b 28 54 25 20  81 20 36 34 29 3a 42 25  |*4)+(T% . 64):B%|
00009bf0  2b 3d 28 42 25 3c 3c 34  29 0d 2b b6 3e c8 99 20  |+=(B%<<4).+.>.. |
00009c00  22 43 6f 6c 6f 75 72 54  72 61 6e 73 5f 53 65 74  |"ColourTrans_Set|
00009c10  47 43 4f 4c 22 2c 28 28  42 25 3c 3c 32 34 29 2b  |GCOL",((B%<<24)+|
00009c20  28 47 25 3c 3c 31 36 29  2b 28 52 25 3c 3c 38 29  |(G%<<16)+(R%<<8)|
00009c30  29 2c 2c 2c 2c 55 25 0d  2b c0 05 e1 0d 2b ca 04  |),,,,U%.+....+..|
00009c40  0d 2b d4 17 dd f2 61 6e  74 69 63 6f 6c 28 43 25  |.+....anticol(C%|
00009c50  2c 54 25 2c 55 25 29 0d  2b de 2b 52 25 3d 28 28  |,T%,U%).+.+R%=((|
00009c60  43 25 20 80 20 25 31 31  29 2a 34 29 2b 28 54 25  |C% . %11)*4)+(T%|
00009c70  20 81 20 36 34 29 3a 52  25 2b 3d 28 52 25 3c 3c  | . 64):R%+=(R%<<|
00009c80  34 29 0d 2b e8 32 47 25  3d 28 28 28 43 25 20 80  |4).+.2G%=(((C% .|
00009c90  20 25 31 31 30 30 29 3e  3e 32 29 2a 34 29 2b 28  | %1100)>>2)*4)+(|
00009ca0  54 25 20 81 20 36 34 29  3a 47 25 2b 3d 28 47 25  |T% . 64):G%+=(G%|
00009cb0  3c 3c 34 29 0d 2b f2 34  42 25 3d 28 28 28 43 25  |<<4).+.4B%=(((C%|
00009cc0  20 80 20 25 31 31 30 30  30 30 29 3e 3e 34 29 2a  | . %110000)>>4)*|
00009cd0  34 29 2b 28 54 25 20 81  20 36 34 29 3a 42 25 2b  |4)+(T% . 64):B%+|
00009ce0  3d 28 42 25 3c 3c 34 29  0d 2b fc 4e c8 99 20 22  |=(B%<<4).+.N.. "|
00009cf0  43 6f 6c 6f 75 72 54 72  61 6e 73 5f 52 65 74 75  |ColourTrans_Retu|
00009d00  72 6e 4f 70 70 47 43 4f  4c 46 6f 72 4d 6f 64 65  |rnOppGCOLForMode|
00009d10  22 2c 28 28 42 25 3c 3c  32 34 29 2b 28 47 25 3c  |",((B%<<24)+(G%<|
00009d20  3c 31 36 29 2b 28 52 25  3c 3c 38 29 29 2c 31 35  |<16)+(R%<<8)),15|
00009d30  20 b8 20 47 43 25 0d 2c  06 23 e6 20 55 25 2c 28  | . GC%.,.#. U%,(|
00009d40  47 43 25 3e 3e 32 29 20  c8 9c 20 28 47 43 25 20  |GC%>>2) .. (GC% |
00009d50  80 20 25 31 31 29 2a 36  34 0d 2c 10 05 e1 0d 2c  |. %11)*64.,....,|
00009d60  1a 04 0d 2c 24 0d dd f2  67 72 69 64 63 6f 6c 0d  |...,$...gridcol.|
00009d70  2c 2e 17 f2 63 6f 6c 28  47 52 43 4f 25 2c 47 52  |,...col(GRCO%,GR|
00009d80  54 49 25 2c 30 29 0d 2c  38 05 e1 0d 2c 42 04 0d  |TI%,0).,8...,B..|
00009d90  2c 4c 1c dd f2 6d 61 6b  65 72 72 3a f2 6b 69 6c  |,L...makerr:.kil|
00009da0  6c 66 3a 46 55 53 45 25  3d 2d 31 0d 2c 56 18 c8  |lf:FUSE%=-1.,V..|
00009db0  99 20 22 57 69 6d 70 5f  44 72 61 67 42 6f 78 22  |. "Wimp_DragBox"|
00009dc0  2c 2c 30 0d 2c 60 0b 21  42 4c 4b 25 3d 9f 0d 2c  |,,0.,`.!BLK%=..,|
00009dd0  6a 08 45 52 3d b9 0d 2c  74 26 24 28 42 4c 4b 25  |j.ER=..,t&$(BLK%|
00009de0  2b 34 29 3d f6 24 2b 22  20 61 74 20 6c 69 6e 65  |+4)=.$+" at line|
00009df0  20 22 2b c3 28 9e 29 2b  bd 28 30 29 0d 2c 7e 4b  | "+.(.)+.(0).,~K|
00009e00  f4 20 24 28 42 4c 4b 25  2b 34 29 3d 22 49 6e 74  |. $(BLK%+4)="Int|
00009e10  65 72 6e 61 6c 20 65 72  72 6f 72 20 27 22 2b 52  |ernal error '"+R|
00009e20  45 50 4f 52 54 24 2b 22  27 20 61 74 20 6c 69 6e  |EPORT$+"' at lin|
00009e30  65 20 22 2b 53 54 52 24  45 52 4c 2b 22 2e 22 2b  |e "+STR$ERL+"."+|
00009e40  43 48 52 24 28 30 29 0d  2c 88 32 e7 20 9f 3c 3e  |CHR$(0).,.2. .<>|
00009e50  31 37 20 c8 99 20 22 57  69 6d 70 5f 52 65 70 6f  |17 .. "Wimp_Repo|
00009e60  72 74 45 72 72 6f 72 22  2c 42 4c 4b 25 2c 31 2c  |rtError",BLK%,1,|
00009e70  22 49 6d 61 67 65 72 79  22 0d 2c 92 14 f4 20 50  |"Imagery".,... P|
00009e80  52 4f 43 61 63 74 69 6f  6e 3a 45 4e 44 0d 2c 93  |ROCaction:END.,.|
00009e90  05 e0 0d 2c 9c 05 e1 0d  2c a6 04 0d 2c b0 1c dd  |...,....,...,...|
00009ea0  f2 6d 65 73 73 61 67 65  28 4d 25 2c 4d 24 29 3a  |.message(M%,M$):|
00009eb0  f2 6f 75 74 70 69 63 0d  2c ba 5a c8 99 20 22 57  |.outpic.,.Z.. "W|
00009ec0  69 6d 70 5f 44 72 61 67  42 6f 78 22 2c 2c 30 3a  |imp_DragBox",,0:|
00009ed0  21 42 4c 4b 25 3d 4d 25  3a 24 28 42 4c 4b 25 2b  |!BLK%=M%:$(BLK%+|
00009ee0  34 29 3d 4d 24 2b bd 28  30 29 3a c8 99 20 22 57  |4)=M$+.(0):.. "W|
00009ef0  69 6d 70 5f 52 65 70 6f  72 74 45 72 72 6f 72 22  |imp_ReportError"|
00009f00  2c 42 4c 4b 25 2c 31 2c  22 49 6d 61 67 65 72 79  |,BLK%,1,"Imagery|
00009f10  22 0d 2c c4 12 f2 66 6f  72 63 65 64 72 61 77 6d  |".,...forcedrawm|
00009f20  61 69 6e 0d 2c ce 0d f2  61 63 74 69 6f 6e 3a e0  |ain.,...action:.|
00009f30  0d 2c d8 05 e1 0d 2c e2  04 0d 2c ec 0b dd f2 6d  |.,....,...,....m|
00009f40  6f 75 73 65 0d 2c f6 46  4d 4f 55 58 25 3d 21 42  |ouse.,.FMOUX%=!B|
00009f50  4c 4b 25 3a 4d 4f 55 59  25 3d 42 4c 4b 25 21 34  |LK%:MOUY%=BLK%!4|
00009f60  3a 4d 4f 55 42 25 3d 42  4c 4b 25 21 38 3a 4d 4f  |:MOUB%=BLK%!8:MO|
00009f70  55 48 25 3d 42 4c 4b 25  21 31 32 3a 4d 4f 55 49  |UH%=BLK%!12:MOUI|
00009f80  43 25 3d 42 4c 4b 25 21  31 36 0d 2d 00 0e c8 8e  |C%=BLK%!16.-....|
00009f90  20 4d 4f 55 42 25 20 ca  0d 2d 0a 14 c9 20 34 2c  | MOUB% ..-... 4,|
00009fa0  31 3a c8 8e 20 4d 4f 55  48 25 20 ca 0d 2d 14 12  |1:.. MOUH% ..-..|
00009fb0  c9 20 2d 32 3a f2 6f 70  65 6e 6d 61 69 6e 0d 2d  |. -2:.openmain.-|
00009fc0  1e 24 c9 20 48 41 4e 44  25 28 30 29 3a e7 20 42  |.$. HAND%(0):. B|
00009fd0  4c 4b 25 21 31 36 3d 38  20 8c 20 f2 73 61 76 65  |LK%!16=8 . .save|
00009fe0  6f 6b 0d 2d 28 2a c9 20  48 41 4e 44 25 28 37 29  |ok.-(*. HAND%(7)|
00009ff0  3a e7 20 42 4c 4b 25 21  31 36 3d 38 20 8c 20 f2  |:. BLK%!16=8 . .|
0000a000  73 70 72 69 74 65 73 61  76 65 6f 6b 0d 2d 32 18  |spritesaveok.-2.|
0000a010  c9 20 48 41 4e 44 25 28  32 29 3a f2 70 69 63 63  |. HAND%(2):.picc|
0000a020  6c 69 63 6b 0d 2d 3c 17  c9 20 48 41 4e 44 25 28  |lick.-<.. HAND%(|
0000a030  33 29 3a f2 70 69 63 6b  63 6f 6c 0d 2d 46 19 c9  |3):.pickcol.-F..|
0000a040  20 48 41 4e 44 25 28 34  29 3a f2 61 69 72 62 63  | HAND%(4):.airbc|
0000a050  6c 69 63 6b 0d 2d 50 1a  c9 20 48 41 4e 44 25 28  |lick.-P.. HAND%(|
0000a060  35 29 3a f2 62 72 75 73  68 63 6c 69 63 6b 0d 2d  |5):.brushclick.-|
0000a070  5a 19 c9 20 48 41 4e 44  25 28 36 29 3a f2 67 72  |Z.. HAND%(6):.gr|
0000a080  69 64 63 6c 69 63 6b 0d  2d 64 19 c9 20 48 41 4e  |idclick.-d.. HAN|
0000a090  44 25 28 38 29 3a f2 67  72 61 62 63 6c 69 63 6b  |D%(8):.grabclick|
0000a0a0  0d 2d 6e 1d c9 20 48 41  4e 44 25 28 31 30 29 3a  |.-n.. HAND%(10):|
0000a0b0  f2 6c 69 6e 65 70 61 74  63 6c 69 63 6b 0d 2d 78  |.linepatclick.-x|
0000a0c0  19 c9 20 48 41 4e 44 25  28 31 31 29 3a f2 65 63  |.. HAND%(11):.ec|
0000a0d0  66 63 6c 69 63 6b 0d 2d  82 1b c9 20 48 41 4e 44  |fclick.-... HAND|
0000a0e0  25 28 31 32 29 3a f2 65  64 62 72 75 63 6c 69 63  |%(12):.edbruclic|
0000a0f0  6b 0d 2d 8c 1a c9 20 48  41 4e 44 25 28 31 33 29  |k.-... HAND%(13)|
0000a100  3a f2 66 69 6c 6c 63 6c  69 63 6b 0d 2d 96 1a c9  |:.fillclick.-...|
0000a110  20 48 41 4e 44 25 28 31  34 29 3a f2 74 65 78 74  | HAND%(14):.text|
0000a120  63 6c 69 63 6b 0d 2d a0  1b c9 20 48 41 4e 44 25  |click.-... HAND%|
0000a130  28 31 35 29 3a f2 74 62  61 63 6b 63 6c 69 63 6b  |(15):.tbackclick|
0000a140  0d 2d aa 1a c9 20 48 41  4e 44 25 28 31 36 29 3a  |.-... HAND%(16):|
0000a150  f2 74 70 61 72 63 6c 69  63 6b 0d 2d b4 1e c9 20  |.tparclick.-... |
0000a160  48 41 4e 44 25 28 31 37  29 3a f2 66 69 6c 6c 63  |HAND%(17):.fillc|
0000a170  6f 6e 74 63 6c 69 63 6b  0d 2d be 1c c9 20 48 41  |ontclick.-... HA|
0000a180  4e 44 25 28 31 38 29 3a  f2 63 6f 6c 72 65 70 63  |ND%(18):.colrepc|
0000a190  6c 69 63 6b 0d 2d c8 1b  c9 20 48 41 4e 44 25 28  |lick.-... HAND%(|
0000a1a0  31 39 29 3a f2 66 72 61  6d 65 63 6c 69 63 6b 0d  |19):.frameclick.|
0000a1b0  2d d2 1d c9 20 48 41 4e  44 25 28 32 30 29 3a f2  |-... HAND%(20):.|
0000a1c0  70 61 74 66 69 6c 6c 63  6c 69 63 6b 0d 2d dc 1d  |patfillclick.-..|
0000a1d0  c9 20 48 41 4e 44 25 28  32 31 29 3a f2 72 67 62  |. HAND%(21):.rgb|
0000a1e0  63 6f 6e 74 63 6c 69 63  6b 0d 2d e6 1f c9 20 48  |contclick.-... H|
0000a1f0  41 4e 44 25 28 32 32 29  3a f2 67 72 65 79 73 63  |AND%(22):.greysc|
0000a200  61 6c 65 63 6c 69 63 6b  0d 2d f0 1e c9 20 48 41  |aleclick.-... HA|
0000a210  4e 44 25 28 32 33 29 3a  f2 70 69 78 65 6c 61 74  |ND%(23):.pixelat|
0000a220  65 63 6c 69 63 6b 0d 2d  fa 1c c9 20 48 41 4e 44  |eclick.-... HAND|
0000a230  25 28 32 34 29 3a f2 72  6f 74 61 74 65 63 6c 69  |%(24):.rotatecli|
0000a240  63 6b 0d 2e 04 1e c9 20  48 41 4e 44 25 28 32 35  |ck..... HAND%(25|
0000a250  29 3a f2 63 6f 6c 73 63  61 6c 65 63 6c 69 63 6b  |):.colscaleclick|
0000a260  0d 2e 0e 1e c9 20 48 41  4e 44 25 28 32 36 29 3a  |..... HAND%(26):|
0000a270  f2 63 6f 6e 74 72 61 73  74 63 6c 69 63 6b 0d 2e  |.contrastclick..|
0000a280  18 1f c9 20 48 41 4e 44  25 28 32 37 29 3a f2 70  |... HAND%(27):.p|
0000a290  6f 73 74 65 72 69 73 65  63 6c 69 63 6b 0d 2e 22  |osteriseclick.."|
0000a2a0  1c c9 20 48 41 4e 44 25  28 32 39 29 3a f2 66 69  |.. HAND%(29):.fi|
0000a2b0  6c 74 65 72 63 6c 69 63  6b 0d 2e 2c 1c c9 20 48  |lterclick..,.. H|
0000a2c0  41 4e 44 25 28 33 30 29  3a f2 77 6f 62 62 6c 65  |AND%(30):.wobble|
0000a2d0  63 6c 69 63 6b 0d 2e 36  1a c9 20 48 41 4e 44 25  |click..6.. HAND%|
0000a2e0  28 33 32 29 3a f2 74 6f  6f 6c 63 6c 69 63 6b 0d  |(32):.toolclick.|
0000a2f0  2e 40 1a c9 20 48 41 4e  44 25 28 33 33 29 3a f2  |.@.. HAND%(33):.|
0000a300  7a 6f 6f 6d 63 6c 69 63  6b 0d 2e 4a 28 c9 20 48  |zoomclick..J(. H|
0000a310  41 4e 44 25 28 33 34 29  3a e7 20 42 4c 4b 25 21  |AND%(34):. BLK%!|
0000a320  31 36 3d 38 20 8c 20 f2  73 61 76 65 73 65 74 6f  |16=8 . .saveseto|
0000a330  6b 0d 2e 54 05 cb 0d 2e  5e 3d c9 20 32 3a e7 20  |k..T....^=. 2:. |
0000a340  4d 4f 55 48 25 3d 2d 32  20 8c 20 f2 69 63 6f 6e  |MOUH%=-2 . .icon|
0000a350  6d 65 6e 75 20 8b 20 e7  20 4d 4f 55 48 25 3d 48  |menu . . MOUH%=H|
0000a360  41 4e 44 25 28 32 29 20  8c 20 f2 77 69 6e 64 6d  |AND%(2) . .windm|
0000a370  65 6e 75 0d 2e 68 31 c9  20 31 36 2c 36 34 3a e7  |enu..h1. 16,64:.|
0000a380  20 4d 4f 55 48 25 3d 48  41 4e 44 25 28 30 29 20  | MOUH%=HAND%(0) |
0000a390  8c 20 44 52 41 47 25 3d  30 3a f2 73 74 61 72 74  |. DRAG%=0:.start|
0000a3a0  64 72 61 67 0d 2e 72 29  e7 20 4d 4f 55 48 25 3d  |drag..r). MOUH%=|
0000a3b0  48 41 4e 44 25 28 37 29  20 8c 20 44 52 41 47 25  |HAND%(7) . DRAG%|
0000a3c0  3d 37 3a f2 73 74 61 72  74 64 72 61 67 0d 2e 7c  |=7:.startdrag..||
0000a3d0  2b e7 20 4d 4f 55 48 25  3d 48 41 4e 44 25 28 33  |+. MOUH%=HAND%(3|
0000a3e0  34 29 20 8c 20 44 52 41  47 25 3d 33 34 3a f2 73  |4) . DRAG%=34:.s|
0000a3f0  74 61 72 74 64 72 61 67  0d 2e 86 05 cb 0d 2e 90  |tartdrag........|
0000a400  05 e1 0d 2e 9a 04 0d 2e  a4 11 dd f2 77 6f 62 62  |............wobb|
0000a410  6c 65 63 6c 69 63 6b 0d  2e ae 1d f2 61 72 72 6f  |leclick.....arro|
0000a420  77 73 28 33 30 2c 32 2c  33 2c 35 2c 31 2c 39 39  |ws(30,2,3,5,1,99|
0000a430  39 2c 31 29 0d 2e b8 1e  f2 61 72 72 6f 77 73 28  |9,1).....arrows(|
0000a440  33 30 2c 37 2c 38 2c 31  31 2c 31 2c 39 39 39 2c  |30,7,8,11,1,999,|
0000a450  31 29 0d 2e c2 20 f2 61  72 72 6f 77 73 28 33 30  |1)... .arrows(30|
0000a460  2c 33 38 2c 33 39 2c 34  32 2c 30 2c 33 35 39 2c  |,38,39,42,0,359,|
0000a470  31 29 0d 2e cc 2a e7 20  4d 4f 55 49 43 25 3d 31  |1)...*. MOUIC%=1|
0000a480  39 20 8c 20 f2 73 69 28  33 30 2c 32 37 2c 22 43  |9 . .si(30,27,"C|
0000a490  4f 53 28 52 41 44 28 41  29 29 22 29 0d 2e d6 2a  |OS(RAD(A))")...*|
0000a4a0  e7 20 4d 4f 55 49 43 25  3d 32 31 20 8c 20 f2 73  |. MOUIC%=21 . .s|
0000a4b0  69 28 33 30 2c 32 37 2c  22 53 49 4e 28 52 41 44  |i(30,27,"SIN(RAD|
0000a4c0  28 41 29 29 22 29 0d 2e  e0 2a e7 20 4d 4f 55 49  |(A))")...*. MOUI|
0000a4d0  43 25 3d 32 33 20 8c 20  f2 73 69 28 33 30 2c 32  |C%=23 . .si(30,2|
0000a4e0  37 2c 22 54 41 4e 28 52  41 44 28 41 29 29 22 29  |7,"TAN(RAD(A))")|
0000a4f0  0d 2e ea 14 e7 20 4d 4f  55 49 43 25 3c 3e 34 37  |..... MOUIC%<>47|
0000a500  20 8c 20 e1 0d 2e f4 9e  c8 99 26 32 45 2c 32 35  | . .......&2E,25|
0000a510  36 2b 39 2c 53 48 4f 57  25 3a 53 48 4f 57 25 21  |6+9,SHOW%:SHOW%!|
0000a520  33 32 3d 26 31 32 33 34  35 3a c8 99 26 32 45 2c  |32=&12345:..&2E,|
0000a530  32 36 36 2c 53 48 4f 57  25 2c 22 3c 49 6d 61 67  |266,SHOW%,"<Imag|
0000a540  65 72 79 24 44 69 72 3e  2e 53 68 6f 77 22 3a e7  |ery$Dir>.Show":.|
0000a550  20 53 48 4f 57 25 21 33  32 3d 26 31 32 33 34 35  | SHOW%!32=&12345|
0000a560  20 8c 20 f2 6d 65 73 73  61 67 65 28 30 2c 22 43  | . .message(0,"C|
0000a570  6f 75 6c 64 20 6e 6f 74  20 6c 6f 61 64 20 27 53  |ould not load 'S|
0000a580  68 6f 77 27 20 73 70 72  69 74 65 20 66 72 6f 6d  |how' sprite from|
0000a590  20 21 49 6d 61 67 65 72  79 20 66 6f 6c 64 65 72  | !Imagery folder|
0000a5a0  22 29 0d 2e fe 2d f2 73  70 69 6e 69 74 3a f2 73  |")...-.spinit:.s|
0000a5b0  70 62 75 66 28 31 36 31  2a 31 30 32 34 29 3a e7  |pbuf(161*1024):.|
0000a5c0  20 51 25 20 8c 20 f2 73  70 62 75 66 65 72 72 0d  | Q% . .spbuferr.|
0000a5d0  2f 08 0e f2 62 61 63 6b  75 70 70 69 63 0d 2f 12  |/...backuppic./.|
0000a5e0  14 c8 99 26 32 45 2c 32  35 36 2b 39 2c 50 49 43  |...&2E,256+9,PIC|
0000a5f0  25 0d 2f 1c 63 f2 69 6e  62 61 63 6b 75 70 3a c8  |%./.c.inbackup:.|
0000a600  99 20 26 32 45 2c 32 35  36 2b 31 36 2c 50 49 43  |. &2E,256+16,PIC|
0000a610  25 2c 22 53 48 4f 57 22  2c 30 2c 34 30 30 2c 34  |%,"SHOW",0,400,4|
0000a620  30 30 2c 38 30 30 2c 35  39 32 3a c8 99 26 32 45  |00,800,592:..&2E|
0000a630  2c 32 39 30 2c 53 48 4f  57 25 2c 22 53 48 4f 57  |,290,SHOW%,"SHOW|
0000a640  22 2c 34 30 30 2c 34 30  30 3a f2 6f 75 74 62 61  |",400,400:.outba|
0000a650  63 6b 75 70 0d 2f 26 3e  f2 69 6e 73 70 72 69 74  |ckup./&>.insprit|
0000a660  65 28 30 2c 53 48 4f 57  25 2c 22 53 48 4f 57 22  |e(0,SHOW%,"SHOW"|
0000a670  29 3a c8 99 26 32 45 2c  32 39 30 2c 50 49 43 25  |):..&2E,290,PIC%|
0000a680  2c 22 53 48 4f 57 22 3a  f2 6f 75 74 73 70 72 69  |,"SHOW":.outspri|
0000a690  74 65 0d 2f 30 53 21 50  49 43 25 3d 31 36 31 2a  |te./0S!PIC%=161*|
0000a6a0  31 30 32 34 3a 50 49 43  25 21 34 3d 30 3a 50 49  |1024:PIC%!4=0:PI|
0000a6b0  43 25 21 38 3d 32 34 3a  50 49 43 25 21 31 32 3d  |C%!8=24:PIC%!12=|
0000a6c0  32 34 3a c8 99 20 26 32  45 2c 32 37 31 2c 50 49  |24:.. &2E,271,PI|
0000a6d0  43 25 2c 22 50 49 43 22  2c 30 2c 36 34 30 2c 32  |C%,"PIC",0,640,2|
0000a6e0  35 36 2c 31 35 0d 2f 3a  10 57 45 25 3d 32 3a e5  |56,15./:.WE%=2:.|
0000a6f0  20 8d 54 7e 5c 0d 2f 44  2d e7 20 a4 68 69 67 68  | .T~\./D-. .high|
0000a700  28 33 30 2c 32 35 29 20  8c 20 56 41 52 53 21 33  |(30,25) . VARS!3|
0000a710  36 3d 31 20 8b 20 56 41  52 53 21 33 36 3d 26 32  |6=1 . VARS!36=&2|
0000a720  38 30 0d 2f 4e 28 56 41  52 53 21 34 30 3d 30 3a  |80./N(VARS!40=0:|
0000a730  e7 20 a4 68 69 67 68 28  33 30 2c 34 34 29 20 8c  |. .high(30,44) .|
0000a740  20 56 41 52 53 21 34 30  3d 31 0d 2f 58 43 e3 4c  | VARS!40=1./XC.L|
0000a750  25 3d 30 20 b8 20 32 35  35 3a 3f 28 54 41 53 25  |%=0 . 255:?(TAS%|
0000a760  2b 32 35 36 2b 4c 25 29  3d 54 52 41 53 50 25 3f  |+256+L%)=TRASP%?|
0000a770  4c 25 3a 54 52 41 53 50  25 3f 4c 25 3d 31 3a ed  |L%:TRASP%?L%=1:.|
0000a780  3a 54 52 41 53 50 25 3f  32 35 34 3d 30 0d 2f 62  |:TRASP%?254=0./b|
0000a790  c1 56 41 52 53 21 34 34  3d 30 3a 56 41 52 53 21  |.VARS!44=0:VARS!|
0000a7a0  38 3d 34 30 30 3a 56 41  52 53 21 31 32 3d 34 30  |8=400:VARS!12=40|
0000a7b0  30 3a 56 41 52 53 21 31  36 3d 38 30 32 3a 56 41  |0:VARS!16=802:VA|
0000a7c0  52 53 21 32 30 3d 35 39  36 3a 56 41 52 53 21 32  |RS!20=596:VARS!2|
0000a7d0  34 3d 54 41 53 25 2b 35  31 32 3a 56 41 52 53 21  |4=TAS%+512:VARS!|
0000a7e0  32 38 3d 42 54 43 25 3a  56 41 52 53 21 33 32 3d  |28=BTC%:VARS!32=|
0000a7f0  54 52 41 53 50 25 3a 41  25 3d 56 41 52 53 3a d6  |TRASP%:A%=VARS:.|
0000a800  20 77 6f 62 62 6c 65 3a  c8 99 20 22 48 6f 75 72  | wobble:.. "Hour|
0000a810  67 6c 61 73 73 5f 4f 66  66 22 3a f2 69 6e 62 61  |glass_Off":.inba|
0000a820  63 6b 75 70 3a c8 99 26  32 45 2c 32 39 30 2c 53  |ckup:..&2E,290,S|
0000a830  48 4f 57 25 2c 22 53 48  4f 57 22 2c 34 30 30 2c  |HOW%,"SHOW",400,|
0000a840  34 30 30 3a f2 6f 75 74  62 61 63 6b 75 70 0d 2f  |400:.outbackup./|
0000a850  6c 48 c8 99 26 32 45 2c  32 35 36 2b 39 2c 53 48  |lH..&2E,256+9,SH|
0000a860  4f 57 25 3a f2 69 6e 70  69 63 3a c8 99 26 32 45  |OW%:.inpic:..&2E|
0000a870  2c 32 35 36 2b 31 36 2c  53 48 4f 57 25 2c 22 53  |,256+16,SHOW%,"S|
0000a880  48 4f 57 22 2c 30 2c 34  30 30 2c 34 30 30 2c 38  |HOW",0,400,400,8|
0000a890  30 30 2c 35 39 32 0d 2f  76 1e c8 99 26 32 45 2c  |00,592./v...&2E,|
0000a8a0  32 39 30 2c 53 50 42 55  46 25 2c 22 50 49 43 22  |290,SPBUF%,"PIC"|
0000a8b0  2c 30 2c 30 0d 2f 80 58  f2 6f 75 74 70 69 63 3a  |,0,0./.X.outpic:|
0000a8c0  f2 73 70 69 6e 69 74 3a  e3 4c 25 3d 30 20 b8 20  |.spinit:.L%=0 . |
0000a8d0  32 35 35 3a 54 52 41 53  50 25 3f 4c 25 3d 3f 28  |255:TRASP%?L%=?(|
0000a8e0  54 41 53 25 2b 32 35 36  2b 4c 25 29 3a ed 3a f2  |TAS%+256+L%):.:.|
0000a8f0  66 6f 72 63 65 64 72 61  77 77 6f 62 3a e7 20 57  |forcedrawwob:. W|
0000a900  45 52 25 20 8c 20 e5 20  8d 44 5a 40 0d 2f 8a 05  |ER% . . .DZ@./..|
0000a910  e1 0d 2f 94 04 0d 2f 9e  11 dd f2 66 69 6c 74 65  |../.../....filte|
0000a920  72 63 6c 69 63 6b 0d 2f  a8 1b f2 61 72 72 6f 77  |rclick./...arrow|
0000a930  73 28 32 39 2c 32 2c 33  2c 35 2c 30 2c 38 2c 31  |s(29,2,3,5,0,8,1|
0000a940  29 0d 2f b2 05 e1 0d 2f  bc 04 0d 2f c6 11 dd f2  |)./..../.../....|
0000a950  72 6f 74 61 74 65 63 6c  69 63 6b 0d 2f d0 05 e1  |rotateclick./...|
0000a960  0d 2f da 04 0d 2f e4 12  dd f2 72 67 62 63 6f 6e  |./.../....rgbcon|
0000a970  74 63 6c 69 63 6b 0d 2f  ee 36 52 50 25 3d a4 70  |tclick./.6RP%=.p|
0000a980  65 72 63 28 32 31 2c 31  33 29 3a 47 50 25 3d a4  |erc(21,13):GP%=.|
0000a990  70 65 72 63 28 32 31 2c  31 35 29 3a 42 50 25 3d  |perc(21,15):BP%=|
0000a9a0  a4 70 65 72 63 28 32 31  2c 31 37 29 0d 2f f8 1e  |.perc(21,17)./..|
0000a9b0  49 52 50 25 3d 52 50 25  3a 49 47 50 25 3d 47 50  |IRP%=RP%:IGP%=GP|
0000a9c0  25 3a 49 42 50 25 3d 42  50 25 0d 30 02 1f f2 61  |%:IBP%=BP%.0...a|
0000a9d0  72 72 6f 77 73 28 32 31  2c 20 33 2c 35 2c 31 33  |rrows(21, 3,5,13|
0000a9e0  2c 30 2c 31 30 30 2c 31  29 0d 30 0c 1f f2 61 72  |,0,100,1).0...ar|
0000a9f0  72 6f 77 73 28 32 31 2c  20 36 2c 38 2c 31 35 2c  |rows(21, 6,8,15,|
0000aa00  30 2c 31 30 30 2c 31 29  0d 30 16 20 f2 61 72 72  |0,100,1).0. .arr|
0000aa10  6f 77 73 28 32 31 2c 20  39 2c 31 31 2c 31 37 2c  |ows(21, 9,11,17,|
0000aa20  30 2c 31 30 30 2c 31 29  0d 30 20 36 52 50 25 3d  |0,100,1).0 6RP%=|
0000aa30  a4 70 65 72 63 28 32 31  2c 31 33 29 3a 47 50 25  |.perc(21,13):GP%|
0000aa40  3d a4 70 65 72 63 28 32  31 2c 31 35 29 3a 42 50  |=.perc(21,15):BP|
0000aa50  25 3d a4 70 65 72 63 28  32 31 2c 31 37 29 0d 30  |%=.perc(21,17).0|
0000aa60  2a 50 e7 20 52 50 25 3c  3e 49 52 50 25 20 8c 20  |*P. RP%<>IRP% . |
0000aa70  52 53 4c 25 3d 52 50 25  3a f2 73 6c 69 64 75 64  |RSL%=RP%:.slidud|
0000aa80  28 31 2c 52 50 25 29 3a  f2 67 65 74 73 6c 6f 72  |(1,RP%):.getslor|
0000aa90  28 32 31 2c 33 30 29 3a  f2 72 65 64 72 61 77 73  |(21,30):.redraws|
0000aaa0  6c 69 64 28 32 31 2c 31  31 2c 52 50 25 29 0d 30  |lid(21,11,RP%).0|
0000aab0  34 50 e7 20 47 50 25 3c  3e 49 47 50 25 20 8c 20  |4P. GP%<>IGP% . |
0000aac0  47 53 4c 25 3d 47 50 25  3a f2 73 6c 69 64 75 64  |GSL%=GP%:.slidud|
0000aad0  28 32 2c 47 50 25 29 3a  f2 67 65 74 73 6c 6f 72  |(2,GP%):.getslor|
0000aae0  28 32 31 2c 33 31 29 3a  f2 72 65 64 72 61 77 73  |(21,31):.redraws|
0000aaf0  6c 69 64 28 32 31 2c 31  30 2c 47 50 25 29 0d 30  |lid(21,10,GP%).0|
0000ab00  3e 4f e7 20 42 50 25 3c  3e 49 42 50 25 20 8c 20  |>O. BP%<>IBP% . |
0000ab10  42 53 4c 25 3d 42 50 25  3a f2 73 6c 69 64 75 64  |BSL%=BP%:.slidud|
0000ab20  28 33 2c 42 50 25 29 3a  f2 67 65 74 73 6c 6f 72  |(3,BP%):.getslor|
0000ab30  28 32 31 2c 33 32 29 3a  f2 72 65 64 72 61 77 73  |(21,32):.redraws|
0000ab40  6c 69 64 28 32 31 2c 38  2c 42 50 25 29 0d 30 48  |lid(21,8,BP%).0H|
0000ab50  40 e7 20 4d 4f 55 49 43  25 3d 33 30 20 8c 20 52  |@. MOUIC%=30 . R|
0000ab60  53 4c 25 3d a4 73 6c 69  64 68 69 74 28 32 31 2c  |SL%=.slidhit(21,|
0000ab70  33 30 2c 4d 4f 55 58 25  2c 4d 4f 55 59 25 2c 31  |30,MOUX%,MOUY%,1|
0000ab80  31 2c 31 29 3a 52 50 25  3d 52 53 4c 25 0d 30 52  |1,1):RP%=RSL%.0R|
0000ab90  40 e7 20 4d 4f 55 49 43  25 3d 33 31 20 8c 20 47  |@. MOUIC%=31 . G|
0000aba0  53 4c 25 3d a4 73 6c 69  64 68 69 74 28 32 31 2c  |SL%=.slidhit(21,|
0000abb0  33 31 2c 4d 4f 55 58 25  2c 4d 4f 55 59 25 2c 31  |31,MOUX%,MOUY%,1|
0000abc0  30 2c 32 29 3a 47 50 25  3d 47 53 4c 25 0d 30 5c  |0,2):GP%=GSL%.0\|
0000abd0  3f e7 20 4d 4f 55 49 43  25 3d 33 32 20 8c 20 42  |?. MOUIC%=32 . B|
0000abe0  53 4c 25 3d a4 73 6c 69  64 68 69 74 28 32 31 2c  |SL%=.slidhit(21,|
0000abf0  33 32 2c 4d 4f 55 58 25  2c 4d 4f 55 59 25 2c 38  |32,MOUX%,MOUY%,8|
0000ac00  2c 33 29 3a 42 50 25 3d  42 53 4c 25 0d 30 66 05  |,3):BP%=BSL%.0f.|
0000ac10  e1 0d 30 70 04 0d 30 7a  14 dd f2 73 6c 69 64 75  |..0p..0z...slidu|
0000ac20  64 28 57 45 25 2c 56 25  29 0d 30 84 22 e7 20 57  |d(WE%,V%).0.". W|
0000ac30  45 25 3d 31 20 8c 20 f2  75 69 28 32 31 2c 31 33  |E%=1 . .ui(21,13|
0000ac40  2c c3 28 56 25 29 2b 22  25 22 29 0d 30 8e 22 e7  |,.(V%)+"%").0.".|
0000ac50  20 57 45 25 3d 32 20 8c  20 f2 75 69 28 32 31 2c  | WE%=2 . .ui(21,|
0000ac60  31 35 2c c3 28 56 25 29  2b 22 25 22 29 0d 30 98  |15,.(V%)+"%").0.|
0000ac70  22 e7 20 57 45 25 3d 33  20 8c 20 f2 75 69 28 32  |". WE%=3 . .ui(2|
0000ac80  31 2c 31 37 2c c3 28 56  25 29 2b 22 25 22 29 0d  |1,17,.(V%)+"%").|
0000ac90  30 a2 0d e7 20 57 45 25  3d 34 20 8c 0d 30 ac 1e  |0... WE%=4 ..0..|
0000aca0  56 32 25 3d 28 56 25 81  34 29 3a e7 20 56 32 25  |V2%=(V%.4):. V2%|
0000acb0  3d 30 20 8c 20 56 32 25  3d 31 0d 30 b6 15 f2 75  |=0 . V2%=1.0...u|
0000acc0  69 28 33 33 2c 38 2c 20  c3 28 56 32 25 29 29 0d  |i(33,8, .(V2%)).|
0000acd0  30 c0 05 cd 0d 30 ca 05  e1 0d 30 d4 04 0d 30 de  |0....0....0...0.|
0000ace0  14 dd f2 67 72 65 79 73  63 61 6c 65 63 6c 69 63  |...greyscaleclic|
0000acf0  6b 0d 30 e8 4f f2 61 72  72 6f 77 73 28 32 32 2c  |k.0.O.arrows(22,|
0000ad00  33 2c 35 2c 31 33 2c 30  2c 39 2c 31 29 3a f2 61  |3,5,13,0,9,1):.a|
0000ad10  72 72 6f 77 73 28 32 32  2c 36 2c 38 2c 31 35 2c  |rrows(22,6,8,15,|
0000ad20  30 2c 39 2c 31 29 3a f2  61 72 72 6f 77 73 28 32  |0,9,1):.arrows(2|
0000ad30  32 2c 39 2c 31 31 2c 31  37 2c 30 2c 39 2c 31 29  |2,9,11,17,0,9,1)|
0000ad40  0d 30 f2 05 e1 0d 30 fc  04 0d 31 06 13 dd f2 63  |.0....0...1....c|
0000ad50  6f 6c 73 63 61 6c 65 63  6c 69 63 6b 0d 31 10 4f  |olscaleclick.1.O|
0000ad60  f2 61 72 72 6f 77 73 28  32 35 2c 33 2c 35 2c 31  |.arrows(25,3,5,1|
0000ad70  33 2c 30 2c 39 2c 31 29  3a f2 61 72 72 6f 77 73  |3,0,9,1):.arrows|
0000ad80  28 32 35 2c 36 2c 38 2c  31 35 2c 30 2c 39 2c 31  |(25,6,8,15,0,9,1|
0000ad90  29 3a f2 61 72 72 6f 77  73 28 32 35 2c 39 2c 31  |):.arrows(25,9,1|
0000ada0  31 2c 31 37 2c 30 2c 39  2c 31 29 0d 31 1a 05 e1  |1,17,0,9,1).1...|
0000adb0  0d 31 24 04 0d 31 2e 13  dd f2 63 6f 6e 74 72 61  |.1$..1....contra|
0000adc0  73 74 63 6c 69 63 6b 0d  31 38 27 43 4f 4e 4c 25  |stclick.18'CONL%|
0000add0  3d bb a4 67 69 28 32 36  2c 31 38 29 3a 43 4f 4e  |=..gi(26,18):CON|
0000ade0  48 25 3d bb a4 67 69 28  32 36 2c 32 30 29 0d 31  |H%=..gi(26,20).1|
0000adf0  42 3b f2 61 72 72 6f 77  73 28 32 36 2c 31 31 2c  |B;.arrows(26,11,|
0000ae00  31 33 2c 31 38 2c 30 2c  31 35 2c 31 29 3a f2 61  |13,18,0,15,1):.a|
0000ae10  72 72 6f 77 73 28 32 36  2c 31 34 2c 31 36 2c 32  |rrows(26,14,16,2|
0000ae20  30 2c 30 2c 31 35 2c 31  29 0d 31 4c 43 e7 20 43  |0,0,15,1).1LC. C|
0000ae30  4f 4e 4c 25 3c 3e bb a4  67 69 28 32 36 2c 31 38  |ONL%<>..gi(26,18|
0000ae40  29 20 84 20 43 4f 4e 48  25 3c 3e bb a4 67 69 28  |) . CONH%<>..gi(|
0000ae50  32 36 2c 32 30 29 20 8c  20 f2 66 6f 72 63 65 64  |26,20) . .forced|
0000ae60  72 61 77 67 72 61 70 68  28 32 36 29 0d 31 56 05  |rawgraph(26).1V.|
0000ae70  e1 0d 31 60 04 0d 31 6a  14 dd f2 70 6f 73 74 65  |..1`..1j...poste|
0000ae80  72 69 73 65 63 6c 69 63  6b 0d 31 74 36 50 4f 4c  |riseclick.1t6POL|
0000ae90  25 3d bb a4 67 69 28 32  37 2c 32 32 29 3a 50 4f  |%=..gi(27,22):PO|
0000aea0  48 25 3d bb a4 67 69 28  32 37 2c 32 34 29 3a 50  |H%=..gi(27,24):P|
0000aeb0  4f 4e 25 3d bb a4 67 69  28 32 37 2c 32 36 29 0d  |ON%=..gi(27,26).|
0000aec0  31 7e 57 f2 61 72 72 6f  77 73 28 32 37 2c 31 31  |1~W.arrows(27,11|
0000aed0  2c 31 33 2c 32 32 2c 30  2c 31 35 2c 31 29 3a f2  |,13,22,0,15,1):.|
0000aee0  61 72 72 6f 77 73 28 32  37 2c 31 34 2c 31 36 2c  |arrows(27,14,16,|
0000aef0  32 34 2c 30 2c 31 35 2c  31 29 3a f2 61 72 72 6f  |24,0,15,1):.arro|
0000af00  77 73 28 32 37 2c 31 38  2c 32 30 2c 32 36 2c 32  |ws(27,18,20,26,2|
0000af10  2c 31 36 2c 31 29 0d 31  88 55 e7 20 50 4f 4c 25  |,16,1).1.U. POL%|
0000af20  3c 3e bb a4 67 69 28 32  37 2c 32 32 29 20 84 20  |<>..gi(27,22) . |
0000af30  50 4f 48 25 3c 3e bb a4  67 69 28 32 37 2c 32 34  |POH%<>..gi(27,24|
0000af40  29 20 84 20 50 4f 4e 25  3c 3e bb a4 67 69 28 32  |) . PON%<>..gi(2|
0000af50  37 2c 32 36 29 20 8c 20  f2 66 6f 72 63 65 64 72  |7,26) . .forcedr|
0000af60  61 77 67 72 61 70 68 28  32 37 29 0d 31 92 05 e1  |awgraph(27).1...|
0000af70  0d 31 9c 04 0d 31 a6 13  dd f2 70 69 78 65 6c 61  |.1...1....pixela|
0000af80  74 65 63 6c 69 63 6b 0d  31 b0 38 f2 61 72 72 6f  |teclick.1.8.arro|
0000af90  77 73 28 32 33 2c 32 2c  34 2c 39 2c 31 2c 31 30  |ws(23,2,4,9,1,10|
0000afa0  30 2c 31 29 3a f2 61 72  72 6f 77 73 28 32 33 2c  |0,1):.arrows(23,|
0000afb0  35 2c 37 2c 31 31 2c 31  2c 31 30 30 2c 31 29 0d  |5,7,11,1,100,1).|
0000afc0  31 ba 05 e1 0d 31 c4 04  0d 31 ce 10 dd f2 66 72  |1....1...1....fr|
0000afd0  61 6d 65 63 6c 69 63 6b  0d 31 d8 39 f2 61 72 72  |ameclick.1.9.arr|
0000afe0  6f 77 73 28 31 39 2c 35  2c 37 2c 31 30 2c 31 2c  |ows(19,5,7,10,1,|
0000aff0  36 34 30 2c 31 29 3a f2  61 72 72 6f 77 73 28 31  |640,1):.arrows(1|
0000b000  39 2c 36 2c 38 2c 31 32  2c 31 2c 32 35 36 2c 31  |9,6,8,12,1,256,1|
0000b010  29 0d 31 e2 14 e7 20 4d  4f 55 49 43 25 3c 3e 31  |).1... MOUIC%<>1|
0000b020  34 20 8c 20 e1 0d 31 ec  0a f2 6b 69 6c 6c 66 0d  |4 . ..1...killf.|
0000b030  31 f6 20 56 25 3d bb a4  67 69 28 31 39 2c 31 30  |1. V%=..gi(19,10|
0000b040  29 3a e7 20 56 25 3c 31  20 8c 20 56 25 3d 31 0d  |):. V%<1 . V%=1.|
0000b050  32 00 15 e7 20 56 25 3e  36 34 30 20 8c 20 56 25  |2... V%>640 . V%|
0000b060  3d 36 34 30 0d 32 0a 12  f2 73 69 28 31 39 2c 31  |=640.2...si(19,1|
0000b070  30 2c c3 56 25 29 0d 32  14 20 57 25 3d bb a4 67  |0,.V%).2. W%=..g|
0000b080  69 28 31 39 2c 31 32 29  3a e7 20 57 25 3c 31 20  |i(19,12):. W%<1 |
0000b090  8c 20 57 25 3d 31 0d 32  1e 15 e7 20 57 25 3e 32  |. W%=1.2... W%>2|
0000b0a0  35 36 20 8c 20 57 25 3d  32 35 36 0d 32 28 12 f2  |56 . W%=256.2(..|
0000b0b0  73 69 28 31 39 2c 31 32  2c c3 57 25 29 0d 32 32  |si(19,12,.W%).22|
0000b0c0  4d 46 52 57 25 3d 56 25  2b 31 3a 46 52 48 25 3d  |MFRW%=V%+1:FRH%=|
0000b0d0  57 25 2b 31 3a 46 55 53  45 25 3d 33 36 3a 46 55  |W%+1:FUSE%=36:FU|
0000b0e0  53 54 25 3d 30 3a f2 75  64 3a f2 77 69 6e 64 6e  |ST%=0:.ud:.windn|
0000b0f0  61 6d 65 28 32 2c 50 49  43 24 2b 22 20 5b 53 65  |ame(2,PIC$+" [Se|
0000b100  74 20 66 72 61 6d 65 5d  22 29 0d 32 3c 17 e7 20  |t frame]").2<.. |
0000b110  4d 4f 55 42 25 3d 34 20  8c 20 f2 6d 65 6e 6f 66  |MOUB%=4 . .menof|
0000b120  66 0d 32 46 05 e1 0d 32  50 04 0d 32 5a 11 dd f2  |f.2F...2P..2Z...|
0000b130  63 6f 6c 72 65 70 63 6c  69 63 6b 0d 32 64 89 e7  |colrepclick.2d..|
0000b140  20 4d 4f 55 49 43 25 3d  35 20 8c 20 c8 99 20 22  | MOUIC%=5 . .. "|
0000b150  48 6f 75 72 67 6c 61 73  73 5f 4f 6e 22 3a e3 4c  |Hourglass_On":.L|
0000b160  25 3d 30 20 b8 20 32 32  35 39 36 20 88 20 34 3a  |%=0 . 22596 . 4:|
0000b170  53 50 42 55 46 25 21 4c  25 3d 4f 50 41 4c 25 21  |SPBUF%!L%=OPAL%!|
0000b180  4c 25 3a ed 3a e3 4c 25  3d 30 20 b8 20 32 35 35  |L%:.:.L%=0 . 255|
0000b190  3a 52 45 50 53 25 3f 4c  25 3d 4c 25 3a ed 3a c8  |:REPS%?L%=L%:.:.|
0000b1a0  99 20 22 48 6f 75 72 67  6c 61 73 73 5f 4f 66 66  |. "Hourglass_Off|
0000b1b0  22 3a f2 66 6f 72 63 65  64 72 61 77 63 6f 6c 72  |":.forcedrawcolr|
0000b1c0  65 70 3a e1 0d 32 6e 35  42 4c 4b 25 21 38 3d 48  |ep:..2n5BLK%!8=H|
0000b1d0  41 4e 44 25 28 31 38 29  3a c8 99 20 22 57 69 6d  |AND%(18):.. "Wim|
0000b1e0  70 5f 47 65 74 57 69 6e  64 6f 77 53 74 61 74 65  |p_GetWindowState|
0000b1f0  22 2c 2c 42 4c 4b 25 2b  38 0d 32 78 3c 58 4f 46  |",,BLK%+8.2x<XOF|
0000b200  25 3d 28 21 42 4c 4b 25  29 2d 28 28 42 4c 4b 25  |%=(!BLK%)-((BLK%|
0000b210  21 31 32 29 2d 28 42 4c  4b 25 21 32 38 29 29 3a  |!12)-(BLK%!28)):|
0000b220  e7 20 58 4f 46 25 3e 37  36 36 20 8c 20 58 4f 46  |. XOF%>766 . XOF|
0000b230  25 3d 37 36 36 0d 32 82  43 59 4f 46 25 3d 28 42  |%=766.2.CYOF%=(B|
0000b240  4c 4b 25 21 34 29 2d 28  28 28 42 4c 4b 25 21 32  |LK%!4)-(((BLK%!2|
0000b250  34 29 2d 28 42 4c 4b 25  21 33 32 29 29 2d 35 35  |4)-(BLK%!32))-55|
0000b260  36 29 3a e7 20 59 4f 46  25 3e 35 35 30 20 8c 20  |6):. YOF%>550 . |
0000b270  59 4f 46 25 3d 35 35 30  0d 32 8c 11 e7 20 59 4f  |YOF%=550.2... YO|
0000b280  46 25 3c 3d 32 32 30 20  8c 0d 32 96 99 43 25 3d  |F%<=220 ..2..C%=|
0000b290  28 58 4f 46 25 20 81 20  32 34 29 2b 28 28 59 4f  |(XOF% . 24)+((YO|
0000b2a0  46 25 20 81 20 32 38 29  2a 33 32 29 3a f2 69 6e  |F% . 28)*32):.in|
0000b2b0  73 70 72 69 74 65 28 30  2c 53 50 42 55 46 25 2c  |sprite(0,SPBUF%,|
0000b2c0  22 50 61 6c 65 74 74 65  22 29 3a 46 58 25 3d 28  |"Palette"):FX%=(|
0000b2d0  28 53 52 45 50 25 20 83  20 33 32 29 2a 32 34 29  |(SREP% . 32)*24)|
0000b2e0  2b 32 3a 46 59 25 3d 28  28 53 52 45 50 25 20 81  |+2:FY%=((SREP% .|
0000b2f0  20 33 32 29 2a 32 38 29  2b 34 3a e6 30 2c 50 41  | 32)*28)+4:.0,PA|
0000b300  4c 54 41 42 25 3f 28 43  25 2a 32 29 20 c8 9c 20  |LTAB%?(C%*2) .. |
0000b310  50 41 4c 54 41 42 25 3f  28 28 43 25 2a 32 29 2b  |PALTAB%?((C%*2)+|
0000b320  31 29 0d 32 a0 42 c8 93  20 c8 90 20 46 58 25 2c  |1).2.B.. .. FX%,|
0000b330  46 59 25 2c 32 30 2c 32  30 3a f2 6f 75 74 73 70  |FY%,20,20:.outsp|
0000b340  72 69 74 65 3a 52 45 50  53 25 3f 53 52 45 50 25  |rite:REPS%?SREP%|
0000b350  3d 43 25 3a f2 66 6f 72  63 65 64 72 61 77 63 6f  |=C%:.forcedrawco|
0000b360  6c 72 65 70 0d 32 aa 05  cd 0d 32 b4 5a e7 20 59  |lrep.2....2.Z. Y|
0000b370  4f 46 25 3e 3d 32 39 30  20 80 20 59 4f 46 25 3c  |OF%>=290 . YOF%<|
0000b380  35 31 34 20 8c 20 59 4f  46 25 2d 3d 32 39 30 3a  |514 . YOF%-=290:|
0000b390  53 52 45 50 25 3d 28 58  4f 46 25 20 81 20 32 34  |SREP%=(XOF% . 24|
0000b3a0  29 2b 28 28 59 4f 46 25  20 81 20 32 38 29 2a 33  |)+((YOF% . 28)*3|
0000b3b0  32 29 3a f2 66 6f 72 63  65 64 72 61 77 63 6f 6c  |2):.forcedrawcol|
0000b3c0  72 65 70 0d 32 be 05 e1  0d 32 c8 04 0d 32 d2 27  |rep.2....2...2.'|
0000b3d0  dd f2 61 72 72 6f 77 73  28 57 25 2c 44 49 25 2c  |..arrows(W%,DI%,|
0000b3e0  55 49 25 2c 54 49 25 2c  4c 56 25 2c 55 56 25 2c  |UI%,TI%,LV%,UV%,|
0000b3f0  49 25 29 0d 32 dc 35 56  25 3d bb a4 67 69 28 57  |I%).2.5V%=..gi(W|
0000b400  25 2c 54 49 25 29 3a 4f  56 25 3d 56 25 3a e7 20  |%,TI%):OV%=V%:. |
0000b410  4d 4f 55 42 25 3d 31 20  8c 20 57 45 25 3d 2d 31  |MOUB%=1 . WE%=-1|
0000b420  20 8b 20 57 45 25 3d 31  0d 32 e6 1f e7 20 4d 4f  | . WE%=1.2... MO|
0000b430  55 49 43 25 3d 44 49 25  20 8c 20 56 25 2d 3d 28  |UIC%=DI% . V%-=(|
0000b440  49 25 2a 57 45 25 29 0d  32 f0 1f e7 20 4d 4f 55  |I%*WE%).2... MOU|
0000b450  49 43 25 3d 55 49 25 20  8c 20 56 25 2b 3d 28 49  |IC%=UI% . V%+=(I|
0000b460  25 2a 57 45 25 29 0d 32  fa 15 e7 20 56 25 3c 4c  |%*WE%).2... V%<L|
0000b470  56 25 20 8c 20 56 25 3d  4c 56 25 0d 33 04 15 e7  |V% . V%=LV%.3...|
0000b480  20 56 25 3e 55 56 25 20  8c 20 56 25 3d 55 56 25  | V%>UV% . V%=UV%|
0000b490  0d 33 0e 2a e7 20 56 25  3c 3e 4f 56 25 20 80 20  |.3.*. V%<>OV% . |
0000b4a0  57 25 3c 3e 32 31 20 8c  20 f2 73 69 28 57 25 2c  |W%<>21 . .si(W%,|
0000b4b0  54 49 25 2c c3 28 56 25  29 29 0d 33 18 2d e7 20  |TI%,.(V%)).3.-. |
0000b4c0  56 25 3c 3e 4f 56 25 20  80 20 57 25 3d 32 31 20  |V%<>OV% . W%=21 |
0000b4d0  8c 20 f2 73 69 28 57 25  2c 54 49 25 2c c3 28 56  |. .si(W%,TI%,.(V|
0000b4e0  25 29 2b 22 25 22 29 0d  33 22 05 e1 0d 33 2c 04  |%)+"%").3"...3,.|
0000b4f0  0d 33 36 0f dd f2 74 70  61 72 63 6c 69 63 6b 0d  |.36...tparclick.|
0000b500  33 40 05 e1 0d 33 4a 04  0d 33 54 0e dd f2 6c 6f  |3@...3J..3T...lo|
0000b510  73 65 66 6f 6e 74 0d 33  5e 38 e7 20 46 4f 4e 54  |sefont.3^8. FONT|
0000b520  25 3c 3e 30 20 80 20 46  54 4c 25 20 8c 20 c8 99  |%<>0 . FTL% . ..|
0000b530  20 22 46 6f 6e 74 5f 4c  6f 73 65 46 6f 6e 74 22  | "Font_LoseFont"|
0000b540  2c 46 48 41 4e 44 25 3a  46 54 4c 25 3d a3 0d 33  |,FHAND%:FTL%=..3|
0000b550  68 05 e1 0d 33 72 04 0d  33 7c 0d dd f2 67 65 74  |h...3r..3|...get|
0000b560  66 6f 6e 74 0d 33 86 24  e7 20 bb a4 67 69 28 31  |font.3.$. ..gi(1|
0000b570  34 2c 32 30 29 3c 36 20  8c 20 f2 73 69 28 31 34  |4,20)<6 . .si(14|
0000b580  2c 32 30 2c 22 36 22 29  0d 33 90 24 e7 20 bb a4  |,20,"6").3.$. ..|
0000b590  67 69 28 31 34 2c 32 32  29 3c 36 20 8c 20 f2 73  |gi(14,22)<6 . .s|
0000b5a0  69 28 31 34 2c 32 32 2c  22 36 22 29 0d 33 9a 29  |i(14,22,"6").3.)|
0000b5b0  46 4f 4e 54 58 25 3d bb  a4 67 69 28 31 34 2c 32  |FONTX%=..gi(14,2|
0000b5c0  30 29 3a 46 4f 4e 54 59  25 3d bb a4 67 69 28 31  |0):FONTY%=..gi(1|
0000b5d0  34 2c 32 32 29 0d 33 a4  4c e7 20 46 4f 4e 54 25  |4,22).3.L. FONT%|
0000b5e0  3c 3e 30 20 8c 20 46 54  4c 25 3d b9 3a c8 99 20  |<>0 . FTL%=.:.. |
0000b5f0  22 46 6f 6e 74 5f 46 69  6e 64 46 6f 6e 74 22 2c  |"Font_FindFont",|
0000b600  2c 46 4f 24 2c 46 4f 4e  54 58 25 2a 31 36 2c 46  |,FO$,FONTX%*16,F|
0000b610  4f 4e 54 59 25 2a 31 36  20 b8 20 46 48 41 4e 44  |ONTY%*16 . FHAND|
0000b620  25 0d 33 ae 05 e1 0d 33  b8 04 0d 33 c2 0d dd f2  |%.3....3...3....|
0000b630  72 65 73 74 70 69 63 0d  33 cc 0a f2 69 6e 70 69  |restpic.3...inpi|
0000b640  63 0d 33 d6 1e c8 99 26  32 45 2c 32 39 30 2c 53  |c.3....&2E,290,S|
0000b650  50 42 55 46 25 2c 22 50  49 43 22 2c 30 2c 30 0d  |PBUF%,"PIC",0,0.|
0000b660  33 e0 0b f2 6f 75 74 70  69 63 0d 33 ea 05 e1 0d  |3...outpic.3....|
0000b670  33 f4 04 0d 33 fe 0f dd  f2 74 65 78 74 63 6c 69  |3...3....textcli|
0000b680  63 6b 0d 34 08 05 e1 0d  34 12 04 0d 34 1c 0e dd  |ck.4....4...4...|
0000b690  f2 65 63 66 63 6c 69 63  6b 0d 34 26 2d e7 20 4d  |.ecfclick.4&-. M|
0000b6a0  4f 55 49 43 25 3e 32 35  20 80 20 4d 4f 55 49 43  |OUIC%>25 . MOUIC|
0000b6b0  25 3c 33 33 20 8c 20 f2  66 6f 72 63 65 64 72 61  |%<33 . .forcedra|
0000b6c0  77 70 61 74 3a e1 0d 34  30 13 e7 20 4d 4f 55 49  |wpat:..40.. MOUI|
0000b6d0  43 25 3c 3e 38 20 8c 20  e1 0d 34 3a 1d e7 20 4d  |C%<>8 . ..4:.. M|
0000b6e0  4f 55 42 25 3c 3e 31 20  80 20 4d 4f 55 42 25 3c  |OUB%<>1 . MOUB%<|
0000b6f0  3e 34 20 8c 20 e1 0d 34  44 35 42 4c 4b 25 21 38  |>4 . ..4D5BLK%!8|
0000b700  3d 48 41 4e 44 25 28 31  31 29 3a c8 99 20 22 57  |=HAND%(11):.. "W|
0000b710  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
0000b720  74 65 22 2c 2c 42 4c 4b  25 2b 38 0d 34 4e 36 58  |te",,BLK%+8.4N6X|
0000b730  4f 46 25 3d 28 28 21 42  4c 4b 25 29 2d 28 42 4c  |OF%=((!BLK%)-(BL|
0000b740  4b 25 21 31 32 29 29 2d  31 38 30 3a e7 20 58 4f  |K%!12))-180:. XO|
0000b750  46 25 3e 37 36 36 20 8c  20 58 4f 46 25 3d 37 36  |F%>766 . XOF%=76|
0000b760  36 0d 34 58 36 59 4f 46  25 3d 28 28 42 4c 4b 25  |6.4X6YOF%=((BLK%|
0000b770  21 34 29 2d 28 42 4c 4b  25 21 31 36 29 29 2d 32  |!4)-(BLK%!16))-2|
0000b780  30 3a e7 20 59 4f 46 25  3e 32 32 30 20 8c 20 59  |0:. YOF%>220 . Y|
0000b790  4f 46 25 3d 32 32 30 0d  34 62 25 63 6f 6c 25 3d  |OF%=220.4b%col%=|
0000b7a0  28 58 4f 46 25 20 81 20  32 34 29 2b 28 28 59 4f  |(XOF% . 24)+((YO|
0000b7b0  46 25 20 81 20 32 38 29  2a 33 32 29 0d 34 6c 12  |F% . 28)*32).4l.|
0000b7c0  63 62 79 25 3d 54 54 42  25 3f 63 6f 6c 25 0d 34  |cby%=TTB%?col%.4|
0000b7d0  76 0f 43 45 43 46 25 3d  a4 63 65 63 66 0d 34 80  |v.CECF%=.cecf.4.|
0000b7e0  45 4c 25 3d 30 3a f4 20  46 4f 52 4b 25 3d 38 20  |EL%=0:. FORK%=8 |
0000b7f0  54 4f 20 31 35 3a 49 46  20 46 4e 68 69 67 68 28  |TO 15:IF FNhigh(|
0000b800  31 31 2c 4b 25 29 20 54  48 45 4e 20 4c 25 3d 4b  |11,K%) THEN L%=K|
0000b810  25 2d 37 3a 4e 45 58 54  20 45 4c 53 45 20 4e 45  |%-7:NEXT ELSE NE|
0000b820  58 54 0d 34 8a 19 e7 20  a4 68 69 67 68 28 31 31  |XT.4... .high(11|
0000b830  2c 32 33 29 20 8c 20 4c  25 3d 31 0d 34 94 19 e7  |,23) . L%=1.4...|
0000b840  20 a4 68 69 67 68 28 31  31 2c 32 34 29 20 8c 20  | .high(11,24) . |
0000b850  4c 25 3d 32 0d 34 9e 19  e7 20 a4 68 69 67 68 28  |L%=2.4... .high(|
0000b860  31 31 2c 31 36 29 20 8c  20 4c 25 3d 33 0d 34 a8  |11,16) . L%=3.4.|
0000b870  2e e3 4b 25 3d 31 31 20  b8 20 31 35 3a e7 20 a4  |..K%=11 . 15:. .|
0000b880  68 69 67 68 28 31 31 2c  4b 25 29 20 8c 20 4c 25  |high(11,K%) . L%|
0000b890  3d 4b 25 2d 37 3a ed 20  8b 20 ed 0d 34 b2 0e e7  |=K%-7:. . ..4...|
0000b8a0  20 4c 25 3d 30 20 8c 20  e1 0d 34 bc 17 45 43 46  | L%=0 . ..4..ECF|
0000b8b0  25 28 4c 25 2c 43 45 43  46 25 29 3d 63 62 79 25  |%(L%,CECF%)=cby%|
0000b8c0  0d 34 c6 11 f2 66 6f 72  63 65 64 72 61 77 70 61  |.4...forcedrawpa|
0000b8d0  74 0d 34 d0 05 e1 0d 34  da 04 0d 34 e4 14 dd f2  |t.4....4...4....|
0000b8e0  72 65 6c 6f 61 64 70 61  74 66 69 6c 6c 73 0d 34  |reloadpatfills.4|
0000b8f0  ee 2e c8 99 26 32 45 2c  32 36 36 2c 50 46 49 4c  |....&2E,266,PFIL|
0000b900  4c 53 25 2c 22 3c 49 6d  61 67 65 72 79 24 44 69  |LS%,"<Imagery$Di|
0000b910  72 3e 2e 50 61 74 46 69  6c 6c 73 22 0d 34 f8 05  |r>.PatFills".4..|
0000b920  e1 0d 35 02 04 0d 35 0c  12 dd f2 70 61 74 66 69  |..5...5....patfi|
0000b930  6c 6c 63 6c 69 63 6b 0d  35 16 22 e7 20 4d 4f 55  |llclick.5.". MOU|
0000b940  49 43 25 3d 32 20 8c 20  f2 72 65 6c 6f 61 64 70  |IC%=2 . .reloadp|
0000b950  61 74 66 69 6c 6c 73 3a  e1 0d 35 20 35 42 4c 4b  |atfills:..5 5BLK|
0000b960  25 21 38 3d 48 41 4e 44  25 28 32 30 29 3a c8 99  |%!8=HAND%(20):..|
0000b970  20 22 57 69 6d 70 5f 47  65 74 57 69 6e 64 6f 77  | "Wimp_GetWindow|
0000b980  53 74 61 74 65 22 2c 2c  42 4c 4b 25 2b 38 0d 35  |State",,BLK%+8.5|
0000b990  2a 36 58 4f 46 25 3d 28  28 21 42 4c 4b 25 29 2d  |*6XOF%=((!BLK%)-|
0000b9a0  28 42 4c 4b 25 21 31 32  29 29 3a 59 4f 46 25 3d  |(BLK%!12)):YOF%=|
0000b9b0  28 28 42 4c 4b 25 21 34  29 2d 28 42 4c 4b 25 21  |((BLK%!4)-(BLK%!|
0000b9c0  31 36 29 29 0d 35 34 74  4b 25 3d 2d 31 3a e3 4c  |16)).54tK%=-1:.L|
0000b9d0  25 3d 31 20 b8 20 31 32  3a 42 58 25 3d 28 28 4c  |%=1 . 12:BX%=((L|
0000b9e0  25 2d 31 29 2a 38 34 29  2b 32 34 3a 42 59 25 3d  |%-1)*84)+24:BY%=|
0000b9f0  35 32 3a e7 20 58 4f 46  25 3e 3d 42 58 25 20 80  |52:. XOF%>=BX% .|
0000ba00  20 59 4f 46 25 3e 3d 42  59 25 20 80 20 58 4f 46  | YOF%>=BY% . XOF|
0000ba10  25 3c 28 42 58 25 2b 36  34 29 20 80 20 59 4f 46  |%<(BX%+64) . YOF|
0000ba20  25 3c 28 42 59 25 2b 36  34 29 20 8c 20 4b 25 3d  |%<(BY%+64) . K%=|
0000ba30  4c 25 3a ed 20 8b 20 ed  0d 35 3e 2b e7 20 4b 25  |L%:. . ..5>+. K%|
0000ba40  3d 2d 31 20 8c 20 e1 20  8b 20 43 50 46 25 3d 4b  |=-1 . . . CPF%=K|
0000ba50  25 3a f2 66 6f 72 63 65  64 72 61 77 70 61 74 66  |%:.forcedrawpatf|
0000ba60  69 6c 6c 0d 35 48 05 e1  0d 35 52 04 0d 35 5c 0d  |ill.5H...5R..5\.|
0000ba70  dd f2 66 69 6c 6c 75 73  65 0d 35 66 20 53 4e 4f  |..filluse.5f SNO|
0000ba80  25 3d a4 67 72 61 66 69  6c 6e 6f 3a e7 20 53 4e  |%=.grafilno:. SN|
0000ba90  4f 25 3d 2d 31 20 8c 20  e1 0d 35 70 77 f2 6b 69  |O%=-1 . ..5pw.ki|
0000baa0  6c 6c 66 3a 46 55 53 45  25 3d 33 31 3a 46 55 53  |llf:FUSE%=31:FUS|
0000bab0  54 25 3d 30 3a 47 52 46  4e 25 3d 53 4e 4f 25 3a  |T%=0:GRFN%=SNO%:|
0000bac0  47 52 54 59 25 3d 30 3a  f2 75 64 3a f2 77 69 6e  |GRTY%=0:.ud:.win|
0000bad0  64 6e 61 6d 65 28 32 2c  50 49 43 24 2b 22 20 5b  |dname(2,PIC$+" [|
0000bae0  47 72 61 64 75 61 74 65  64 20 66 69 6c 6c 20 28  |Graduated fill (|
0000baf0  22 2b a4 66 69 6c 6c 64  65 74 28 53 4e 4f 25 2b  |"+.filldet(SNO%+|
0000bb00  31 29 2b 22 29 5d 22 29  3a f2 73 70 69 6e 69 74  |1)+")]"):.spinit|
0000bb10  0d 35 7a 17 e7 20 4d 4f  55 42 25 3d 34 20 8c 20  |.5z.. MOUB%=4 . |
0000bb20  f2 6d 65 6e 6f 66 66 0d  35 84 05 e1 0d 35 8e 04  |.menoff.5....5..|
0000bb30  0d 35 98 3a dd a4 66 69  6c 6c 64 65 74 28 53 25  |.5.:..filldet(S%|
0000bb40  29 3a e7 20 47 52 54 59  25 3d 30 20 8c 20 3d 22  |):. GRTY%=0 . ="|
0000bb50  66 6c 6f 6f 64 20 22 2b  c3 53 25 20 8b 20 3d 22  |flood "+.S% . ="|
0000bb60  61 72 65 61 20 22 2b c3  53 25 0d 35 a2 04 0d 35  |area "+.S%.5...5|
0000bb70  ac 10 dd f2 69 6e 76 65  72 74 66 69 6c 6c 0d 35  |....invertfill.5|
0000bb80  b6 12 4e 4f 53 25 3d a4  67 72 61 66 69 6c 6e 6f  |..NOS%=.grafilno|
0000bb90  0d 35 c0 20 49 41 25 3d  30 3a 49 42 25 3d bb a4  |.5. IA%=0:IB%=..|
0000bba0  67 69 28 31 33 2c 38 33  29 3a 49 42 25 2d 3d 31  |gi(13,83):IB%-=1|
0000bbb0  0d 35 ca 6b f5 3a c8 94  20 47 52 46 49 25 28 49  |.5.k.:.. GRFI%(I|
0000bbc0  41 25 2c 30 2c 4e 4f 53  25 29 2c 47 52 46 49 25  |A%,0,NOS%),GRFI%|
0000bbd0  28 49 42 25 2c 30 2c 4e  4f 53 25 29 3a c8 94 20  |(IB%,0,NOS%):.. |
0000bbe0  47 52 46 49 25 28 49 41  25 2c 31 2c 4e 4f 53 25  |GRFI%(IA%,1,NOS%|
0000bbf0  29 2c 47 52 46 49 25 28  49 42 25 2c 31 2c 4e 4f  |),GRFI%(IB%,1,NO|
0000bc00  53 25 29 3a 49 41 25 2b  3d 31 3a 49 42 25 2d 3d  |S%):IA%+=1:IB%-=|
0000bc10  31 3a fd 20 49 41 25 3e  49 42 25 0d 35 d4 12 f2  |1:. IA%>IB%.5...|
0000bc20  66 6f 72 63 65 64 72 61  77 66 69 6c 6c 0d 35 de  |forcedrawfill.5.|
0000bc30  05 e1 0d 35 e8 04 0d 35  f2 10 dd f2 69 6e 74 65  |...5...5....inte|
0000bc40  72 70 66 69 6c 6c 0d 35  fc 12 4e 4f 53 25 3d a4  |rpfill.5..NOS%=.|
0000bc50  67 72 61 66 69 6c 6e 6f  0d 36 06 15 49 41 25 3d  |grafilno.6..IA%=|
0000bc60  30 3a f5 3a 49 42 25 3d  49 41 25 2b 31 0d 36 10  |0:.:IB%=IA%+1.6.|
0000bc70  1f e7 20 49 42 25 3d 31  36 20 8c 20 f2 66 6f 72  |.. IB%=16 . .for|
0000bc80  63 65 64 72 61 77 66 69  6c 6c 3a e1 0d 36 1a 3f  |cedrawfill:..6.?|
0000bc90  e7 20 47 52 46 49 25 28  49 42 25 2c 30 2c 4e 4f  |. GRFI%(IB%,0,NO|
0000bca0  53 25 29 3d 30 20 80 20  47 52 46 49 25 28 49 42  |S%)=0 . GRFI%(IB|
0000bcb0  25 2c 31 2c 4e 4f 53 25  29 3d 30 20 8c 20 49 42  |%,1,NOS%)=0 . IB|
0000bcc0  25 2b 3d 31 3a e5 20 8d  54 50 76 0d 36 24 27 e7  |%+=1:. .TPv.6$'.|
0000bcd0  20 49 42 25 3d 49 41 25  2b 31 20 8c 20 49 41 25  | IB%=IA%+1 . IA%|
0000bce0  3d 49 42 25 3a 49 42 25  2b 3d 31 3a e5 20 8d 54  |=IB%:IB%+=1:. .T|
0000bcf0  50 76 0d 36 2e 1c 54 31  25 3d 47 52 46 49 25 28  |Pv.6..T1%=GRFI%(|
0000bd00  49 41 25 2c 31 2c 4e 4f  53 25 29 3e 3e 36 0d 36  |IA%,1,NOS%)>>6.6|
0000bd10  38 2a 52 31 25 3d 28 28  47 52 46 49 25 28 49 41  |8*R1%=((GRFI%(IA|
0000bd20  25 2c 30 2c 4e 4f 53 25  29 20 80 20 25 31 31 29  |%,0,NOS%) . %11)|
0000bd30  3c 3c 32 29 2b 54 31 25  0d 36 42 27 47 31 25 3d  |<<2)+T1%.6B'G1%=|
0000bd40  28 47 52 46 49 25 28 49  41 25 2c 30 2c 4e 4f 53  |(GRFI%(IA%,0,NOS|
0000bd50  25 29 20 80 20 25 31 31  30 30 29 2b 54 31 25 0d  |%) . %1100)+T1%.|
0000bd60  36 4c 2e 42 31 25 3d 28  28 47 52 46 49 25 28 49  |6L.B1%=((GRFI%(I|
0000bd70  41 25 2c 30 2c 4e 4f 53  25 29 20 80 20 25 31 31  |A%,0,NOS%) . %11|
0000bd80  30 30 30 30 29 3e 3e 32  29 2b 54 31 25 0d 36 56  |0000)>>2)+T1%.6V|
0000bd90  1c 54 32 25 3d 47 52 46  49 25 28 49 42 25 2c 31  |.T2%=GRFI%(IB%,1|
0000bda0  2c 4e 4f 53 25 29 3e 3e  36 0d 36 60 3b 52 44 3d  |,NOS%)>>6.6`;RD=|
0000bdb0  28 28 28 28 47 52 46 49  25 28 49 42 25 2c 30 2c  |((((GRFI%(IB%,0,|
0000bdc0  4e 4f 53 25 29 20 80 20  25 31 31 29 3c 3c 32 29  |NOS%) . %11)<<2)|
0000bdd0  2b 54 32 25 29 2d 52 31  25 29 2f 28 49 42 25 2d  |+T2%)-R1%)/(IB%-|
0000bde0  49 41 25 29 0d 36 6a 38  47 44 3d 28 28 28 47 52  |IA%).6j8GD=(((GR|
0000bdf0  46 49 25 28 49 42 25 2c  30 2c 4e 4f 53 25 29 20  |FI%(IB%,0,NOS%) |
0000be00  80 20 25 31 31 30 30 29  2b 54 32 25 29 2d 47 31  |. %1100)+T2%)-G1|
0000be10  25 29 2f 28 49 42 25 2d  49 41 25 29 0d 36 74 3f  |%)/(IB%-IA%).6t?|
0000be20  42 44 3d 28 28 28 28 47  52 46 49 25 28 49 42 25  |BD=((((GRFI%(IB%|
0000be30  2c 30 2c 4e 4f 53 25 29  20 80 20 25 31 31 30 30  |,0,NOS%) . %1100|
0000be40  30 30 29 3e 3e 32 29 2b  54 32 25 29 2d 42 31 25  |00)>>2)+T2%)-B1%|
0000be50  29 2f 28 49 42 25 2d 49  41 25 29 0d 36 7e 1a 49  |)/(IB%-IA%).6~.I|
0000be60  41 25 2b 3d 31 3a e3 4c  25 3d 31 20 b8 20 49 42  |A%+=1:.L%=1 . IB|
0000be70  25 2d 49 41 25 0d 36 88  30 52 25 3d 52 31 25 2b  |%-IA%.6.0R%=R1%+|
0000be80  28 52 44 2a 4c 25 29 3a  47 25 3d 47 31 25 2b 28  |(RD*L%):G%=G1%+(|
0000be90  47 44 2a 4c 25 29 3a 42  25 3d 42 31 25 2b 28 42  |GD*L%):B%=B1%+(B|
0000bea0  44 2a 4c 25 29 0d 36 92  49 c8 99 20 22 43 6f 6c  |D*L%).6.I.. "Col|
0000beb0  6f 75 72 54 72 61 6e 73  5f 52 65 74 75 72 6e 47  |ourTrans_ReturnG|
0000bec0  43 4f 4c 46 6f 72 4d 6f  64 65 22 2c 28 42 25 3c  |COLForMode",(B%<|
0000bed0  3c 32 38 29 2b 28 47 25  3c 3c 32 30 29 2b 28 52  |<28)+(G%<<20)+(R|
0000bee0  25 3c 3c 31 32 29 2c 31  35 20 b8 20 47 25 0d 36  |%<<12),15 . G%.6|
0000bef0  9c 3b 47 52 46 49 25 28  49 41 25 2c 30 2c 4e 4f  |.;GRFI%(IA%,0,NO|
0000bf00  53 25 29 3d 47 25 3e 3e  32 3a 47 52 46 49 25 28  |S%)=G%>>2:GRFI%(|
0000bf10  49 41 25 2c 31 2c 4e 4f  53 25 29 3d 28 47 25 20  |IA%,1,NOS%)=(G% |
0000bf20  80 20 25 31 31 29 3c 3c  36 0d 36 a6 0c 49 41 25  |. %11)<<6.6..IA%|
0000bf30  2b 3d 31 3a ed 0d 36 b0  14 49 42 25 3d 49 41 25  |+=1:..6..IB%=IA%|
0000bf40  2b 31 3a e5 20 8d 54 50  76 0d 36 ba 04 0d 36 c4  |+1:. .TPv.6...6.|
0000bf50  0e dd f2 77 69 70 65 66  69 6c 6c 0d 36 ce 12 4e  |...wipefill.6..N|
0000bf60  4f 53 25 3d a4 67 72 61  66 69 6c 6e 6f 0d 36 d8  |OS%=.grafilno.6.|
0000bf70  30 e3 4c 25 3d 30 20 b8  20 31 35 3a e3 4b 25 3d  |0.L%=0 . 15:.K%=|
0000bf80  30 20 b8 20 31 3a 47 52  46 49 25 28 4c 25 2c 4b  |0 . 1:GRFI%(L%,K|
0000bf90  25 2c 4e 4f 53 25 29 3d  30 3a ed 3a ed 0d 36 e2  |%,NOS%)=0:.:..6.|
0000bfa0  14 f2 66 6f 72 63 65 64  72 61 77 66 69 6c 6c 3a  |..forcedrawfill:|
0000bfb0  e1 0d 36 ec 04 0d 36 f6  0e dd f2 63 6f 6d 70 66  |..6...6....compf|
0000bfc0  69 6c 6c 0d 37 00 12 4e  4f 53 25 3d a4 67 72 61  |ill.7..NOS%=.gra|
0000bfd0  66 69 6c 6e 6f 0d 37 0a  37 43 41 25 3d 47 52 46  |filno.7.7CA%=GRF|
0000bfe0  49 25 28 30 2c 30 2c 4e  4f 53 25 29 3a 54 41 25  |I%(0,0,NOS%):TA%|
0000bff0  3d 47 52 46 49 25 28 30  2c 31 2c 4e 4f 53 25 29  |=GRFI%(0,1,NOS%)|
0000c000  3a 49 41 25 3d 31 3a 49  42 25 3d 31 0d 37 14 0d  |:IA%=1:IB%=1.7..|
0000c010  c8 95 20 49 42 25 3c 31  36 0d 37 1e b2 e7 20 47  |.. IB%<16.7... G|
0000c020  52 46 49 25 28 49 42 25  2c 30 2c 4e 4f 53 25 29  |RFI%(IB%,0,NOS%)|
0000c030  3c 3e 43 41 25 20 84 20  47 52 46 49 25 28 49 42  |<>CA% . GRFI%(IB|
0000c040  25 2c 31 2c 4e 4f 53 25  29 3c 3e 54 41 25 20 8c  |%,1,NOS%)<>TA% .|
0000c050  20 47 52 46 49 25 28 49  41 25 2c 30 2c 4e 4f 53  | GRFI%(IA%,0,NOS|
0000c060  25 29 3d 47 52 46 49 25  28 49 42 25 2c 30 2c 4e  |%)=GRFI%(IB%,0,N|
0000c070  4f 53 25 29 3a 47 52 46  49 25 28 49 41 25 2c 31  |OS%):GRFI%(IA%,1|
0000c080  2c 4e 4f 53 25 29 3d 47  52 46 49 25 28 49 42 25  |,NOS%)=GRFI%(IB%|
0000c090  2c 31 2c 4e 4f 53 25 29  3a 43 41 25 3d 47 52 46  |,1,NOS%):CA%=GRF|
0000c0a0  49 25 28 49 41 25 2c 30  2c 4e 4f 53 25 29 3a 54  |I%(IA%,0,NOS%):T|
0000c0b0  41 25 3d 47 52 46 49 25  28 49 41 25 2c 31 2c 4e  |A%=GRFI%(IA%,1,N|
0000c0c0  4f 53 25 29 3a 49 41 25  2b 3d 31 0d 37 28 0c 49  |OS%):IA%+=1.7(.I|
0000c0d0  42 25 2b 3d 31 3a ce 0d  37 32 3e c8 95 20 49 41  |B%+=1:..72>.. IA|
0000c0e0  25 3c 31 36 3a 47 52 46  49 25 28 49 41 25 2c 30  |%<16:GRFI%(IA%,0|
0000c0f0  2c 4e 4f 53 25 29 3d 30  3a 47 52 46 49 25 28 49  |,NOS%)=0:GRFI%(I|
0000c100  41 25 2c 31 2c 4e 4f 53  25 29 3d 30 3a 49 41 25  |A%,1,NOS%)=0:IA%|
0000c110  2b 3d 31 3a ce 0d 37 3c  12 f2 66 6f 72 63 65 64  |+=1:..7<..forced|
0000c120  72 61 77 66 69 6c 6c 0d  37 46 05 e1 0d 37 50 04  |rawfill.7F...7P.|
0000c130  0d 37 5a 0f dd f2 66 69  6c 6c 63 6c 69 63 6b 0d  |.7Z...fillclick.|
0000c140  37 64 17 e7 20 4d 4f 55  49 43 25 3c 30 20 8c 20  |7d.. MOUIC%<0 . |
0000c150  e5 20 8d 54 60 7a 0d 37  6e 1d e7 20 4d 4f 55 49  |. .T`z.7n.. MOUI|
0000c160  43 25 3d 31 30 35 20 8c  20 f2 66 69 6c 6c 75 73  |C%=105 . .fillus|
0000c170  65 3a e1 0d 37 78 1f e7  20 4d 4f 55 49 43 25 3d  |e:..7x.. MOUIC%=|
0000c180  36 32 20 8c 20 f2 69 6e  76 65 72 74 66 69 6c 6c  |62 . .invertfill|
0000c190  3a e1 0d 37 82 1f e7 20  4d 4f 55 49 43 25 3d 36  |:..7... MOUIC%=6|
0000c1a0  33 20 8c 20 f2 69 6e 74  65 72 70 66 69 6c 6c 3a  |3 . .interpfill:|
0000c1b0  e1 0d 37 8c 1e e7 20 4d  4f 55 49 43 25 3d 31 31  |..7... MOUIC%=11|
0000c1c0  30 20 8c 20 f2 77 69 70  65 66 69 6c 6c 3a e1 0d  |0 . .wipefill:..|
0000c1d0  37 96 1e e7 20 4d 4f 55  49 43 25 3d 31 31 31 20  |7... MOUIC%=111 |
0000c1e0  8c 20 f2 63 6f 6d 70 66  69 6c 6c 3a e1 0d 37 a0  |. .compfill:..7.|
0000c1f0  40 e7 20 4d 4f 55 49 43  25 3c 3e 38 37 20 80 20  |@. MOUIC%<>87 . |
0000c200  4d 4f 55 49 43 25 3c 3e  38 39 20 80 20 4d 4f 55  |MOUIC%<>89 . MOU|
0000c210  49 43 25 3c 3e 39 31 20  80 20 4d 4f 55 49 43 25  |IC%<>91 . MOUIC%|
0000c220  3c 3e 39 33 20 8c 20 e5  20 8d 74 7e 77 0d 37 aa  |<>93 . . .t~w.7.|
0000c230  2d e7 20 a4 68 69 67 68  28 31 33 2c 4d 4f 55 49  |-. .high(13,MOUI|
0000c240  43 25 29 20 8c 20 f2 69  63 6f 6e 6c 6f 28 31 33  |C%) . .iconlo(13|
0000c250  2c 4d 4f 55 49 43 25 29  3a e1 0d 37 b4 b7 e7 20  |,MOUIC%):..7... |
0000c260  a4 68 69 67 68 28 31 33  2c 37 35 29 20 84 20 a4  |.high(13,75) . .|
0000c270  68 69 67 68 28 31 33 2c  37 37 29 20 8c 20 f2 6d  |high(13,77) . .m|
0000c280  65 73 73 61 67 65 28 31  33 2c 22 59 6f 75 20 63  |essage(13,"You c|
0000c290  61 6e 6e 6f 74 20 75 73  65 20 61 6e 20 65 64 67  |annot use an edg|
0000c2a0  65 20 70 72 69 6f 72 69  74 79 20 77 69 74 68 20  |e priority with |
0000c2b0  61 20 72 61 64 69 61 6c  20 66 69 6c 6c 2e 22 29  |a radial fill.")|
0000c2c0  20 8b 20 f2 69 63 6f 6e  6c 6f 28 31 33 2c 38 37  | . .iconlo(13,87|
0000c2d0  29 3a f2 69 63 6f 6e 6c  6f 28 31 33 2c 38 39 29  |):.iconlo(13,89)|
0000c2e0  3a f2 69 63 6f 6e 6c 6f  28 31 33 2c 39 31 29 3a  |:.iconlo(13,91):|
0000c2f0  f2 69 63 6f 6e 6c 6f 28  31 33 2c 39 33 29 3a f2  |.iconlo(13,93):.|
0000c300  69 63 6f 6e 68 69 28 31  33 2c 4d 4f 55 49 43 25  |iconhi(13,MOUIC%|
0000c310  29 0d 37 be 28 e7 20 4d  4f 55 49 43 25 3c 3e 37  |).7.(. MOUIC%<>7|
0000c320  35 20 84 20 a4 68 69 67  68 28 31 33 2c 37 35 29  |5 . .high(13,75)|
0000c330  20 8c 20 e5 20 8d 64 5c  77 0d 37 c8 83 e7 20 a4  | . . .d\w.7... .|
0000c340  68 69 67 68 28 31 33 2c  38 37 29 20 84 20 a4 68  |high(13,87) . .h|
0000c350  69 67 68 28 31 33 2c 38  39 29 20 84 20 a4 68 69  |igh(13,89) . .hi|
0000c360  67 68 28 31 33 2c 39 31  29 20 84 20 a4 68 69 67  |gh(13,91) . .hig|
0000c370  68 28 31 33 2c 39 33 29  20 8c 20 f2 6d 65 73 73  |h(13,93) . .mess|
0000c380  61 67 65 28 34 2c 22 59  6f 75 20 63 61 6e 6e 6f  |age(4,"You canno|
0000c390  74 20 75 73 65 20 61 20  72 61 64 69 61 6c 20 66  |t use a radial f|
0000c3a0  69 6c 6c 20 77 69 74 68  20 61 6e 20 65 64 67 65  |ill with an edge|
0000c3b0  20 70 72 69 6f 72 69 74  79 2e 22 29 0d 37 d2 5f  | priority.").7._|
0000c3c0  f2 69 63 6f 6e 68 69 28  31 33 2c 37 35 29 3a f2  |.iconhi(13,75):.|
0000c3d0  69 63 6f 6e 6c 6f 28 31  33 2c 36 37 29 3a f2 69  |iconlo(13,67):.i|
0000c3e0  63 6f 6e 6c 6f 28 31 33  2c 36 39 29 3a f2 69 63  |conlo(13,69):.ic|
0000c3f0  6f 6e 6c 6f 28 31 33 2c  37 31 29 3a f2 69 63 6f  |onlo(13,71):.ico|
0000c400  6e 6c 6f 28 31 33 2c 37  33 29 3a f2 69 63 6f 6e  |nlo(13,73):.icon|
0000c410  6c 6f 28 31 33 2c 37 37  29 3a e1 0d 37 dc 53 e7  |lo(13,77):..7.S.|
0000c420  20 28 4d 4f 55 49 43 25  3e 3d 32 20 80 20 4d 4f  | (MOUIC%>=2 . MO|
0000c430  55 49 43 25 3c 3d 31 34  29 20 84 20 4d 4f 55 49  |UIC%<=14) . MOUI|
0000c440  43 25 3d 37 38 20 84 20  4d 4f 55 49 43 25 3d 37  |C%=78 . MOUIC%=7|
0000c450  39 20 84 20 4d 4f 55 49  43 25 3d 38 35 20 8c 20  |9 . MOUIC%=85 . |
0000c460  f2 73 65 74 67 72 61 64  66 69 6c 6c 3a e1 0d 37  |.setgradfill:..7|
0000c470  e6 28 e7 20 4d 4f 55 49  43 25 3c 3e 37 37 20 84  |.(. MOUIC%<>77 .|
0000c480  20 a4 68 69 67 68 28 31  33 2c 37 37 29 20 8c 20  | .high(13,77) . |
0000c490  e5 20 8d 54 44 78 0d 37  f0 83 e7 20 a4 68 69 67  |. .TDx.7... .hig|
0000c4a0  68 28 31 33 2c 38 37 29  20 84 20 a4 68 69 67 68  |h(13,87) . .high|
0000c4b0  28 31 33 2c 38 39 29 20  84 20 a4 68 69 67 68 28  |(13,89) . .high(|
0000c4c0  31 33 2c 39 31 29 20 84  20 a4 68 69 67 68 28 31  |13,91) . .high(1|
0000c4d0  33 2c 39 33 29 20 8c 20  f2 6d 65 73 73 61 67 65  |3,93) . .message|
0000c4e0  28 34 2c 22 59 6f 75 20  63 61 6e 6e 6f 74 20 75  |(4,"You cannot u|
0000c4f0  73 65 20 61 20 72 61 64  69 61 6c 20 66 69 6c 6c  |se a radial fill|
0000c500  20 77 69 74 68 20 61 6e  20 65 64 67 65 20 70 72  | with an edge pr|
0000c510  69 6f 72 69 74 79 2e 22  29 0d 37 fa 5f f2 69 63  |iority.").7._.ic|
0000c520  6f 6e 68 69 28 31 33 2c  37 37 29 3a f2 69 63 6f  |onhi(13,77):.ico|
0000c530  6e 6c 6f 28 31 33 2c 36  37 29 3a f2 69 63 6f 6e  |nlo(13,67):.icon|
0000c540  6c 6f 28 31 33 2c 36 39  29 3a f2 69 63 6f 6e 6c  |lo(13,69):.iconl|
0000c550  6f 28 31 33 2c 37 31 29  3a f2 69 63 6f 6e 6c 6f  |o(13,71):.iconlo|
0000c560  28 31 33 2c 37 33 29 3a  f2 69 63 6f 6e 6c 6f 28  |(13,73):.iconlo(|
0000c570  31 33 2c 37 35 29 3a e1  0d 38 04 54 e7 20 4d 4f  |13,75):..8.T. MO|
0000c580  55 49 43 25 3d 39 35 20  84 20 4d 4f 55 49 43 25  |UIC%=95 . MOUIC%|
0000c590  3d 39 39 20 84 20 4d 4f  55 49 43 25 3d 31 30 31  |=99 . MOUIC%=101|
0000c5a0  20 84 20 4d 4f 55 49 43  25 3d 31 30 33 20 84 20  | . MOUIC%=103 . |
0000c5b0  4d 4f 55 49 43 25 3d 39  37 20 8c 20 f2 66 6f 72  |MOUIC%=97 . .for|
0000c5c0  63 65 64 72 61 77 66 69  6c 6c 3a e1 0d 38 0e 21  |cedrawfill:..8.!|
0000c5d0  f2 61 72 72 6f 77 73 28  31 33 2c 20 34 30 2c 34  |.arrows(13, 40,4|
0000c5e0  31 2c 38 31 2c 30 2c 33  35 39 2c 31 29 0d 38 18  |1,81,0,359,1).8.|
0000c5f0  49 e7 20 4d 4f 55 42 25  3d 31 20 80 20 4d 4f 55  |I. MOUB%=1 . MOU|
0000c600  49 43 25 3d 34 33 20 8c  20 4d 4f 55 49 43 25 3d  |IC%=43 . MOUIC%=|
0000c610  34 35 20 8b 20 e7 20 4d  4f 55 42 25 3d 31 20 80  |45 . . MOUB%=1 .|
0000c620  20 4d 4f 55 49 43 25 3d  34 35 20 8c 20 4d 4f 55  | MOUIC%=45 . MOU|
0000c630  49 43 25 3d 34 33 0d 38  22 19 e7 20 4d 4f 55 49  |IC%=43.8".. MOUI|
0000c640  43 25 3c 3e 34 33 20 8c  20 e5 20 8d 44 40 78 0d  |C%<>43 . . .D@x.|
0000c650  38 2c 21 4e 4f 53 25 3d  bb a4 67 69 28 31 33 2c  |8,!NOS%=..gi(13,|
0000c660  38 33 29 3a e7 20 4e 4f  53 25 3d 32 20 8c 20 e1  |83):. NOS%=2 . .|
0000c670  0d 38 36 3e f2 73 68 61  64 65 69 63 6f 6e 28 31  |.86>.shadeicon(1|
0000c680  33 2c a4 66 69 6c 69 63  28 4e 4f 53 25 2d 31 29  |3,.filic(NOS%-1)|
0000c690  29 3a 4e 4f 53 25 2d 3d  31 3a f2 73 69 28 31 33  |):NOS%-=1:.si(13|
0000c6a0  2c 38 33 2c c3 28 4e 4f  53 25 29 29 3a e1 0d 38  |,83,.(NOS%)):..8|
0000c6b0  40 19 e7 20 4d 4f 55 49  43 25 3c 3e 34 35 20 8c  |@.. MOUIC%<>45 .|
0000c6c0  20 e5 20 8d 44 5e 78 0d  38 4a 22 4e 4f 53 25 3d  | . .D^x.8J"NOS%=|
0000c6d0  bb a4 67 69 28 31 33 2c  38 33 29 3a e7 20 4e 4f  |..gi(13,83):. NO|
0000c6e0  53 25 3d 31 36 20 8c 20  e1 0d 38 54 3c f2 63 6c  |S%=16 . ..8T<.cl|
0000c6f0  65 61 72 69 63 6f 6e 28  31 33 2c a4 66 69 6c 69  |earicon(13,.fili|
0000c700  63 28 4e 4f 53 25 29 29  3a 4e 4f 53 25 2b 3d 31  |c(NOS%)):NOS%+=1|
0000c710  3a f2 73 69 28 31 33 2c  38 33 2c c3 28 4e 4f 53  |:.si(13,83,.(NOS|
0000c720  25 29 29 3a e1 0d 38 5e  05 e1 0d 38 68 04 0d 38  |%)):..8^...8h..8|
0000c730  72 11 dd f2 73 65 74 67  72 61 64 66 69 6c 6c 0d  |r...setgradfill.|
0000c740  38 7c 12 53 4e 4f 25 3d  a4 67 72 61 66 69 6c 6e  |8|.SNO%=.grafiln|
0000c750  6f 0d 38 86 0f c8 8e 20  4d 4f 55 49 43 25 20 ca  |o.8.... MOUIC% .|
0000c760  0d 38 90 0f c9 20 37 38  3a f7 20 8d 44 76 79 0d  |.8... 78:. .Dvy.|
0000c770  38 9a 0f c9 20 37 39 3a  f7 20 8d 74 40 79 0d 38  |8... 79:. .t@y.8|
0000c780  a4 0e c9 20 32 3a f7 20  8d 74 4a 79 0d 38 ae 0e  |... 2:. .tJy.8..|
0000c790  c9 20 33 3a f7 20 8d 74  54 79 0d 38 b8 0e c9 20  |. 3:. .tTy.8... |
0000c7a0  34 3a f7 20 8d 74 5e 79  0d 38 c2 0e c9 20 35 3a  |4:. .t^y.8... 5:|
0000c7b0  f7 20 8d 74 68 79 0d 38  cc 0e c9 20 36 3a f7 20  |. .thy.8... 6:. |
0000c7c0  8d 74 72 79 0d 38 d6 0e  c9 20 37 3a f7 20 8d 64  |.try.8... 7:. .d|
0000c7d0  46 79 0d 38 e0 0e c9 20  38 3a f7 20 8d 64 50 79  |Fy.8... 8:. .dPy|
0000c7e0  0d 38 ea 0e c9 20 39 3a  f7 20 8d 64 5a 79 0d 38  |.8... 9:. .dZy.8|
0000c7f0  f4 0f c9 20 31 30 3a f7  20 8d 64 64 79 0d 38 fe  |... 10:. .ddy.8.|
0000c800  0f c9 20 31 31 3a f7 20  8d 74 7c 79 0d 39 08 0f  |.. 11:. .t|y.9..|
0000c810  c9 20 31 32 3a f7 20 8d  64 6e 79 0d 39 12 0f c9  |. 12:. .dny.9...|
0000c820  20 31 33 3a f7 20 8d 64  78 79 0d 39 1c 0f c9 20  | 13:. .dxy.9... |
0000c830  31 34 3a f7 20 8d 54 42  7a 0d 39 26 0f c9 20 38  |14:. .TBz.9&.. 8|
0000c840  35 3a f7 20 8d 54 4c 7a  0d 39 30 05 cb 0d 39 3a  |5:. .TLz.90...9:|
0000c850  4a e3 4c 25 3d 30 20 b8  20 31 35 3a f2 73 68 61  |J.L%=0 . 15:.sha|
0000c860  64 65 69 63 6f 6e 28 31  33 2c a4 66 69 6c 69 63  |deicon(13,.filic|
0000c870  28 4c 25 29 29 3a e3 4b  25 3d 30 20 b8 20 31 3a  |(L%)):.K%=0 . 1:|
0000c880  47 52 46 49 25 28 4c 25  2c 4b 25 2c 53 4e 4f 25  |GRFI%(L%,K%,SNO%|
0000c890  29 3d 30 3a ed 3a ed 0d  39 44 51 f3 20 53 25 3a  |)=0:.:..9DQ. S%:|
0000c8a0  e3 4c 25 3d 30 20 b8 20  53 25 2d 31 3a f2 63 6c  |.L%=0 . S%-1:.cl|
0000c8b0  65 61 72 69 63 6f 6e 28  31 33 2c a4 66 69 6c 69  |earicon(13,.fili|
0000c8c0  63 28 4c 25 29 29 3a e3  4b 25 3d 30 20 b8 20 31  |c(L%)):.K%=0 . 1|
0000c8d0  3a f3 20 47 52 46 49 25  28 4c 25 2c 4b 25 2c 53  |:. GRFI%(L%,K%,S|
0000c8e0  4e 4f 25 29 3a ed 3a ed  0d 39 4e 12 f2 73 69 28  |NO%):.:..9N..si(|
0000c8f0  31 33 2c 38 33 2c c3 53  25 29 0d 39 58 12 f2 66  |13,83,.S%).9X..f|
0000c900  6f 72 63 65 64 72 61 77  66 69 6c 6c 0d 39 62 05  |orcedrawfill.9b.|
0000c910  e1 0d 39 6c 04 0d 39 76  48 dc 20 31 32 2c 20 31  |..9l..9vH. 12, 1|
0000c920  2c 30 2c 31 2c 36 34 2c  31 2c 31 32 38 2c 31 2c  |,0,1,64,1,128,1,|
0000c930  31 39 32 2c 32 2c 30 2c  32 2c 36 34 2c 32 2c 31  |192,2,0,2,64,2,1|
0000c940  32 38 2c 32 2c 31 39 32  2c 33 2c 30 2c 33 2c 36  |28,2,192,3,0,3,6|
0000c950  34 2c 33 2c 31 32 38 2c  33 2c 31 39 32 0d 39 80  |4,3,128,3,192.9.|
0000c960  4c dc 20 31 32 2c 20 34  2c 30 2c 34 2c 36 34 2c  |L. 12, 4,0,4,64,|
0000c970  34 2c 31 32 38 2c 34 2c  31 39 32 2c 38 2c 30 2c  |4,128,4,192,8,0,|
0000c980  38 2c 36 34 2c 38 2c 31  32 38 2c 38 2c 31 39 32  |8,64,8,128,8,192|
0000c990  2c 31 32 2c 30 2c 31 32  2c 36 34 2c 31 32 2c 31  |,12,0,12,64,12,1|
0000c9a0  32 38 2c 31 32 2c 31 39  32 0d 39 8a 50 dc 20 31  |28,12,192.9.P. 1|
0000c9b0  32 2c 20 35 2c 30 2c 35  2c 36 34 2c 35 2c 31 32  |2, 5,0,5,64,5,12|
0000c9c0  38 2c 35 2c 31 39 32 2c  31 30 2c 30 2c 31 30 2c  |8,5,192,10,0,10,|
0000c9d0  36 34 2c 31 30 2c 31 32  38 2c 31 30 2c 31 39 32  |64,10,128,10,192|
0000c9e0  2c 31 35 2c 30 2c 31 35  2c 36 34 2c 31 35 2c 31  |,15,0,15,64,15,1|
0000c9f0  32 38 2c 31 35 2c 31 39  32 0d 39 94 54 dc 20 31  |28,15,192.9.T. 1|
0000ca00  32 2c 20 31 36 2c 30 2c  31 36 2c 36 34 2c 31 36  |2, 16,0,16,64,16|
0000ca10  2c 31 32 38 2c 31 36 2c  31 39 32 2c 33 32 2c 30  |,128,16,192,32,0|
0000ca20  2c 33 32 2c 36 34 2c 33  32 2c 31 32 38 2c 33 32  |,32,64,32,128,32|
0000ca30  2c 31 39 32 2c 34 38 2c  30 2c 34 38 2c 36 34 2c  |,192,48,0,48,64,|
0000ca40  34 38 2c 31 32 38 2c 34  38 2c 31 39 32 0d 39 9e  |48,128,48,192.9.|
0000ca50  54 dc 20 31 32 2c 20 31  37 2c 30 2c 31 37 2c 36  |T. 12, 17,0,17,6|
0000ca60  34 2c 31 37 2c 31 32 38  2c 31 37 2c 31 39 32 2c  |4,17,128,17,192,|
0000ca70  33 34 2c 30 2c 33 34 2c  36 34 2c 33 34 2c 31 32  |34,0,34,64,34,12|
0000ca80  38 2c 33 34 2c 31 39 32  2c 35 31 2c 30 2c 35 31  |8,34,192,51,0,51|
0000ca90  2c 36 34 2c 35 31 2c 31  32 38 2c 35 31 2c 31 39  |,64,51,128,51,19|
0000caa0  32 0d 39 a8 54 dc 20 31  32 2c 20 32 30 2c 30 2c  |2.9.T. 12, 20,0,|
0000cab0  32 30 2c 36 34 2c 32 30  2c 31 32 38 2c 32 30 2c  |20,64,20,128,20,|
0000cac0  31 39 32 2c 34 30 2c 30  2c 34 30 2c 36 34 2c 34  |192,40,0,40,64,4|
0000cad0  30 2c 31 32 38 2c 34 30  2c 31 39 32 2c 36 30 2c  |0,128,40,192,60,|
0000cae0  30 2c 36 30 2c 36 34 2c  36 30 2c 31 32 38 2c 36  |0,60,64,60,128,6|
0000caf0  30 2c 31 39 32 0d 39 b2  65 dc 20 31 35 2c 20 30  |0,192.9.e. 15, 0|
0000cb00  2c 36 34 2c 30 2c 31 32  38 2c 30 2c 31 39 32 2c  |,64,0,128,0,192,|
0000cb10  32 31 2c 30 2c 32 31 2c  36 34 2c 32 31 2c 31 32  |21,0,21,64,21,12|
0000cb20  38 2c 32 31 2c 31 39 32  2c 34 32 2c 30 2c 34 32  |8,21,192,42,0,42|
0000cb30  2c 36 34 2c 34 32 2c 31  32 38 2c 34 32 2c 31 39  |,64,42,128,42,19|
0000cb40  32 2c 36 33 2c 30 2c 36  33 2c 36 34 2c 36 33 2c  |2,63,0,63,64,63,|
0000cb50  31 32 38 2c 36 33 2c 31  39 32 0d 39 bc 4c dc 20  |128,63,192.9.L. |
0000cb60  31 32 2c 20 31 2c 30 2c  31 2c 36 34 2c 31 2c 31  |12, 1,0,1,64,1,1|
0000cb70  32 38 2c 31 2c 31 39 32  2c 36 2c 30 2c 36 2c 36  |28,1,192,6,0,6,6|
0000cb80  34 2c 36 2c 31 32 38 2c  36 2c 31 39 32 2c 32 37  |4,6,128,6,192,27|
0000cb90  2c 30 2c 32 37 2c 36 34  2c 32 37 2c 31 32 38 2c  |,0,27,64,27,128,|
0000cba0  32 37 2c 31 39 32 0d 39  c6 3a dc 20 38 2c 20 31  |27,192.9.:. 8, 1|
0000cbb0  38 2c 30 2c 31 38 2c 36  34 2c 31 38 2c 31 32 38  |8,0,18,64,18,128|
0000cbc0  2c 31 38 2c 31 39 32 2c  33 39 2c 30 2c 33 39 2c  |,18,192,39,0,39,|
0000cbd0  36 34 2c 33 39 2c 31 32  38 2c 33 39 2c 31 39 32  |64,39,128,39,192|
0000cbe0  0d 39 d0 32 dc 20 38 2c  20 32 2c 30 2c 32 2c 36  |.9.2. 8, 2,0,2,6|
0000cbf0  34 2c 32 2c 31 32 38 2c  32 2c 31 39 32 2c 37 2c  |4,2,128,2,192,7,|
0000cc00  30 2c 37 2c 36 34 2c 37  2c 31 32 38 2c 37 2c 31  |0,7,64,7,128,7,1|
0000cc10  39 32 0d 39 da 54 dc 20  31 32 2c 20 31 37 2c 30  |92.9.T. 12, 17,0|
0000cc20  2c 31 37 2c 36 34 2c 31  37 2c 31 32 38 2c 31 37  |,17,64,17,128,17|
0000cc30  2c 31 39 32 2c 33 38 2c  30 2c 33 38 2c 36 34 2c  |,192,38,0,38,64,|
0000cc40  33 38 2c 31 32 38 2c 33  38 2c 31 39 32 2c 35 39  |38,128,38,192,59|
0000cc50  2c 30 2c 35 39 2c 36 34  2c 35 39 2c 31 32 38 2c  |,0,59,64,59,128,|
0000cc60  35 39 2c 31 39 32 0d 39  e4 50 dc 20 31 32 2c 20  |59,192.9.P. 12, |
0000cc70  35 2c 30 2c 35 2c 36 34  2c 35 2c 31 32 38 2c 35  |5,0,5,64,5,128,5|
0000cc80  2c 31 39 32 2c 31 30 2c  30 2c 32 36 2c 36 34 2c  |,192,10,0,26,64,|
0000cc90  32 36 2c 31 32 38 2c 32  36 2c 31 39 32 2c 34 37  |26,128,26,192,47|
0000cca0  2c 30 2c 34 37 2c 36 34  2c 34 37 2c 31 32 38 2c  |,0,47,64,47,128,|
0000ccb0  34 37 2c 31 39 32 0d 39  ee 54 dc 20 31 32 2c 20  |47,192.9.T. 12, |
0000ccc0  32 30 2c 30 2c 32 30 2c  36 34 2c 32 30 2c 31 32  |20,0,20,64,20,12|
0000ccd0  38 2c 32 30 2c 31 39 32  2c 34 31 2c 30 2c 34 31  |8,20,192,41,0,41|
0000cce0  2c 36 34 2c 34 31 2c 31  32 38 2c 34 31 2c 31 39  |,64,41,128,41,19|
0000ccf0  32 2c 36 32 2c 30 2c 36  32 2c 36 34 2c 36 32 2c  |2,62,0,62,64,62,|
0000cd00  31 32 38 2c 36 32 2c 31  39 32 0d 39 f8 50 dc 20  |128,62,192.9.P. |
0000cd10  31 32 2c 20 31 2c 30 2c  31 2c 36 34 2c 31 2c 31  |12, 1,0,1,64,1,1|
0000cd20  32 38 2c 31 2c 31 39 32  2c 32 32 2c 30 2c 32 32  |28,1,192,22,0,22|
0000cd30  2c 36 34 2c 32 32 2c 31  32 38 2c 32 32 2c 31 39  |,64,22,128,22,19|
0000cd40  32 2c 34 33 2c 30 2c 34  33 2c 36 34 2c 34 33 2c  |2,43,0,43,64,43,|
0000cd50  31 32 38 2c 34 33 2c 31  39 32 0d 3a 02 38 dc 20  |128,43,192.:.8. |
0000cd60  38 2c 20 39 2c 30 2c 39  2c 36 34 2c 39 2c 31 32  |8, 9,0,9,64,9,12|
0000cd70  38 2c 39 2c 31 39 32 2c  31 34 2c 30 2c 31 34 2c  |8,9,192,14,0,14,|
0000cd80  36 34 2c 31 34 2c 31 32  38 2c 31 34 2c 31 39 32  |64,14,128,14,192|
0000cd90  2c 30 0d 3a 0c 3a dc 20  38 2c 20 32 31 2c 30 2c  |,0.:.:. 8, 21,0,|
0000cda0  32 31 2c 36 34 2c 32 31  2c 31 32 38 2c 32 31 2c  |21,64,21,128,21,|
0000cdb0  31 39 32 2c 34 32 2c 30  2c 34 32 2c 36 34 2c 34  |192,42,0,42,64,4|
0000cdc0  32 2c 31 32 38 2c 34 32  2c 31 39 32 0d 3a 16 04  |2,128,42,192.:..|
0000cdd0  0d 3a 20 49 58 4f 46 25  3d 21 42 4c 4b 25 3a 59  |.: IXOF%=!BLK%:Y|
0000cde0  4f 46 25 3d 42 4c 4b 25  21 34 3a 21 42 4c 4b 25  |OF%=BLK%!4:!BLK%|
0000cdf0  3d 48 41 4e 44 25 28 31  33 29 3a c8 99 20 22 57  |=HAND%(13):.. "W|
0000ce00  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
0000ce10  74 65 22 2c 2c 42 4c 4b  25 0d 3a 2a 11 f2 67 65  |te",,BLK%.:*..ge|
0000ce20  74 72 64 6f 72 28 34 38  34 29 0d 3a 34 30 58 4f  |trdor(484).:40XO|
0000ce30  46 25 3d 28 58 4f 46 25  2d 57 4f 58 25 29 2d 34  |F%=(XOF%-WOX%)-4|
0000ce40  32 32 3a e7 20 58 4f 46  25 3e 37 36 36 20 84 20  |22:. XOF%>766 . |
0000ce50  58 4f 46 25 3c 30 20 8c  20 e1 0d 3a 3e 30 59 4f  |XOF%<0 . ..:>0YO|
0000ce60  46 25 3d 28 59 4f 46 25  2d 57 4f 59 25 29 2d 32  |F%=(YOF%-WOY%)-2|
0000ce70  33 36 3a e7 20 59 4f 46  25 3e 32 32 30 20 84 20  |36:. YOF%>220 . |
0000ce80  59 4f 46 25 3c 30 20 8c  20 e1 0d 3a 48 25 63 6f  |YOF%<0 . ..:H%co|
0000ce90  6c 25 3d 28 58 4f 46 25  20 81 20 32 34 29 2b 28  |l%=(XOF% . 24)+(|
0000cea0  28 59 4f 46 25 20 81 20  32 38 29 2a 33 32 29 0d  |(YOF% . 28)*32).|
0000ceb0  3a 52 1d 74 69 6e 25 3d  50 41 4c 54 41 42 25 3f  |:R.tin%=PALTAB%?|
0000cec0  28 28 63 6f 6c 25 2a 32  29 2b 31 29 0d 3a 5c 19  |((col%*2)+1).:\.|
0000ced0  63 6f 6c 25 3d 50 41 4c  54 41 42 25 3f 28 63 6f  |col%=PALTAB%?(co|
0000cee0  6c 25 2a 32 29 0d 3a 66  3d 46 50 45 25 3d 2d 31  |l%*2).:f=FPE%=-1|
0000cef0  3a e3 4c 25 3d 30 20 b8  20 31 35 3a e7 20 a4 68  |:.L%=0 . 15:. .h|
0000cf00  69 67 68 28 31 33 2c a4  66 69 6c 69 63 28 4c 25  |igh(13,.filic(L%|
0000cf10  29 29 20 8c 20 46 50 45  25 3d 4c 25 3a ed 20 8b  |)) . FPE%=L%:. .|
0000cf20  20 ed 0d 3a 70 12 53 4e  4f 25 3d a4 67 72 61 66  | ..:p.SNO%=.graf|
0000cf30  69 6c 6e 6f 0d 3a 7a 1b  e7 20 46 50 45 25 3d 2d  |ilno.:z.. FPE%=-|
0000cf40  31 20 84 20 53 4e 4f 25  3d 2d 31 20 8c 20 e1 0d  |1 . SNO%=-1 . ..|
0000cf50  3a 84 42 47 52 46 49 25  28 46 50 45 25 2c 30 2c  |:.BGRFI%(FPE%,0,|
0000cf60  53 4e 4f 25 29 3d 63 6f  6c 25 3a 47 52 46 49 25  |SNO%)=col%:GRFI%|
0000cf70  28 46 50 45 25 2c 31 2c  53 4e 4f 25 29 3d 74 69  |(FPE%,1,SNO%)=ti|
0000cf80  6e 25 3a f2 66 6f 72 63  65 64 72 61 77 66 69 6c  |n%:.forcedrawfil|
0000cf90  6c 0d 3a 8e 05 e1 0d 3a  98 04 0d 3a a2 37 dd a4  |l.:....:...:.7..|
0000cfa0  66 69 6c 69 63 28 46 53  4e 25 29 3a e7 20 46 53  |filic(FSN%):. FS|
0000cfb0  4e 25 3c 3d 31 31 20 8c  20 3d 46 53 4e 25 2b 32  |N%<=11 . =FSN%+2|
0000cfc0  36 20 8b 20 3d 28 46 53  4e 25 2d 31 32 29 2b 34  |6 . =(FSN%-12)+4|
0000cfd0  36 0d 3a ac 04 0d 3a b6  2d dd a4 6c 69 70 61 61  |6.:...:.-..lipaa|
0000cfe0  64 6a 28 4c 49 54 41 25  29 3a e7 20 4c 49 54 41  |dj(LITA%):. LITA|
0000cff0  25 3d 37 20 8c 20 3d 35  31 20 8b 20 3d 4c 49 54  |%=7 . =51 . =LIT|
0000d000  41 25 0d 3a c0 04 0d 3a  ca 12 dd f2 6c 69 6e 65  |A%.:...:....line|
0000d010  70 61 74 63 6c 69 63 6b  0d 3a d4 0f e7 20 4d 4f  |patclick.:... MO|
0000d020  55 42 25 3d 31 20 8c 0d  3a de 31 e7 20 4d 4f 55  |UB%=1 ..:.1. MOU|
0000d030  49 43 25 3d 32 20 8c 20  4d 4f 55 49 43 25 3d 33  |IC%=2 . MOUIC%=3|
0000d040  20 8b 20 e7 20 4d 4f 55  49 43 25 3d 33 20 8c 20  | . . MOUIC%=3 . |
0000d050  4d 4f 55 49 43 25 3d 32  0d 3a e8 05 cd 0d 3a f2  |MOUIC%=2.:....:.|
0000d060  0f c8 8e 20 4d 4f 55 49  43 25 20 ca 0d 3a fc 57  |... MOUIC% ..:.W|
0000d070  c9 20 33 3a 50 4c 25 3d  bb a4 67 69 28 31 30 2c  |. 3:PL%=..gi(10,|
0000d080  34 38 29 3a e7 20 50 4c  25 3e 31 20 8c 20 f2 73  |48):. PL%>1 . .s|
0000d090  68 61 64 65 69 63 6f 6e  28 31 30 2c a4 6c 69 70  |hadeicon(10,.lip|
0000d0a0  61 61 64 6a 28 50 4c 25  2b 36 29 29 3a 50 4c 25  |aadj(PL%+6)):PL%|
0000d0b0  2d 3d 31 3a f2 73 69 28  31 30 2c 34 38 2c c3 50  |-=1:.si(10,48,.P|
0000d0c0  4c 25 29 0d 3b 06 58 c9  20 32 3a 50 4c 25 3d bb  |L%).;.X. 2:PL%=.|
0000d0d0  a4 67 69 28 31 30 2c 34  38 29 3a e7 20 50 4c 25  |.gi(10,48):. PL%|
0000d0e0  3c 34 30 20 8c 20 f2 63  6c 65 61 72 69 63 6f 6e  |<40 . .clearicon|
0000d0f0  28 31 30 2c a4 6c 69 70  61 61 64 6a 28 50 4c 25  |(10,.lipaadj(PL%|
0000d100  2b 37 29 29 3a 50 4c 25  2b 3d 31 3a f2 73 69 28  |+7)):PL%+=1:.si(|
0000d110  31 30 2c 34 38 2c c3 50  4c 25 29 0d 3b 10 21 c9  |10,48,.PL%).;.!.|
0000d120  20 35 30 3a 50 41 4c 45  25 3d bb a4 67 69 28 31  | 50:PALE%=..gi(1|
0000d130  30 2c 34 38 29 3a ef 32  33 2c 36 2c 0d 3b 1a 4c  |0,48):.23,6,.;.L|
0000d140  49 4e 25 3d 37 3a e3 4c  25 3d 31 20 b8 20 35 3a  |IN%=7:.L%=1 . 5:|
0000d150  4e 25 3d 30 3a 49 25 3d  31 32 38 3a e3 4b 25 3d  |N%=0:I%=128:.K%=|
0000d160  31 20 b8 20 38 3a e7 20  a4 68 69 67 68 28 31 30  |1 . 8:. .high(10|
0000d170  2c a4 6c 69 70 61 61 64  6a 28 49 4e 25 29 29 20  |,.lipaadj(IN%)) |
0000d180  8c 20 4e 25 2b 3d 49 25  0d 3b 24 2e 49 25 3d 49  |. N%+=I%.;$.I%=I|
0000d190  25 20 81 20 32 3a 49 4e  25 2b 3d 31 3a ed 3a ef  |% . 2:IN%+=1:.:.|
0000d1a0  20 4e 25 3a 50 41 54 25  28 4c 25 29 3d 4e 25 3a  | N%:PAT%(L%)=N%:|
0000d1b0  ed 3a ef 20 30 7c 0d 3b  2e 17 e7 20 4d 4f 55 42  |.:. 0|.;... MOUB|
0000d1c0  25 3d 34 20 8c 20 f2 6d  65 6e 6f 66 66 0d 3b 38  |%=4 . .menoff.;8|
0000d1d0  05 cb 0d 3b 42 05 e1 0d  3b 4c 04 0d 3b 56 3b dd  |...;B...;L..;V;.|
0000d1e0  f2 67 72 61 62 63 6c 69  63 6b 3a 49 4e 47 25 3d  |.grabclick:ING%=|
0000d1f0  28 a4 68 69 67 68 28 33  31 2c 33 29 20 84 20 a4  |(.high(31,3) . .|
0000d200  68 69 67 68 28 33 31 2c  34 29 29 20 80 20 46 55  |high(31,4)) . FU|
0000d210  53 45 25 3d 33 34 0d 3b  60 14 e7 20 4d 4f 55 49  |SE%=34.;`.. MOUI|
0000d220  43 25 3c 3e 31 36 20 8c  20 e1 0d 3b 6a 61 e7 20  |C%<>16 . ..;ja. |
0000d230  46 55 53 45 25 3c 3e 33  34 20 80 20 46 55 53 54  |FUSE%<>34 . FUST|
0000d240  25 3c 32 20 8c 20 f2 6d  65 73 73 61 67 65 28 31  |%<2 . .message(1|
0000d250  2c 22 53 65 6c 65 63 74  20 61 6e 20 61 72 65 61  |,"Select an area|
0000d260  20 6f 66 20 70 69 63 74  75 72 65 20 62 65 66 6f  | of picture befo|
0000d270  72 65 20 73 65 74 74 69  6e 67 20 74 68 65 73 65  |re setting these|
0000d280  20 6f 70 74 69 6f 6e 73  2e 22 29 0d 3b 74 13 e7  | options.").;t..|
0000d290  20 49 4e 47 25 20 8c 20  e5 20 8d 74 7a 7b 0d 3b  | ING% . . .tz{.;|
0000d2a0  7e 0a f2 69 6e 70 69 63  0d 3b 88 11 e7 20 46 55  |~..inpic.;... FU|
0000d2b0  53 45 25 3c 3e 33 34 20  8c 0d 3b 92 15 f2 70 67  |SE%<>34 ..;...pg|
0000d2c0  72 61 62 28 4f 58 25 2c  4f 59 25 2c 33 29 0d 3b  |rab(OX%,OY%,3).;|
0000d2d0  9c 05 cc 0d 3b a6 24 e7  20 46 55 53 54 25 3c 3e  |....;.$. FUST%<>|
0000d2e0  30 20 8c 20 f2 70 69 6d  70 6f 72 74 28 4f 58 25  |0 . .pimport(OX%|
0000d2f0  2c 4f 59 25 2c 33 29 0d  3b b0 05 cd 0d 3b ba 3b  |,OY%,3).;....;.;|
0000d300  47 52 58 4d 25 3d bb 28  a4 67 69 28 38 2c 31 37  |GRXM%=.(.gi(8,17|
0000d310  29 29 3a e7 20 47 52 58  4d 25 3c 31 20 8c 20 47  |)):. GRXM%<1 . G|
0000d320  52 58 4d 25 3d 31 3a f2  73 69 28 38 2c 31 37 2c  |RXM%=1:.si(8,17,|
0000d330  c3 47 52 58 4d 25 29 0d  3b c4 3b 47 52 59 4d 25  |.GRXM%).;.;GRYM%|
0000d340  3d bb 28 a4 67 69 28 38  2c 31 39 29 29 3a e7 20  |=.(.gi(8,19)):. |
0000d350  47 52 59 4d 25 3c 31 20  8c 20 47 52 59 4d 25 3d  |GRYM%<1 . GRYM%=|
0000d360  31 3a f2 73 69 28 38 2c  31 39 2c c3 47 52 59 4d  |1:.si(8,19,.GRYM|
0000d370  25 29 0d 3b ce 3b 47 52  58 44 25 3d bb 28 a4 67  |%).;.;GRXD%=.(.g|
0000d380  69 28 38 2c 31 38 29 29  3a e7 20 47 52 58 44 25  |i(8,18)):. GRXD%|
0000d390  3c 31 20 8c 20 47 52 58  44 25 3d 31 3a f2 73 69  |<1 . GRXD%=1:.si|
0000d3a0  28 38 2c 31 38 2c c3 47  52 58 44 25 29 0d 3b d8  |(8,18,.GRXD%).;.|
0000d3b0  3b 47 52 59 44 25 3d bb  28 a4 67 69 28 38 2c 32  |;GRYD%=.(.gi(8,2|
0000d3c0  30 29 29 3a e7 20 47 52  59 44 25 3c 31 20 8c 20  |0)):. GRYD%<1 . |
0000d3d0  47 52 59 44 25 3d 31 3a  f2 73 69 28 38 2c 32 30  |GRYD%=1:.si(8,20|
0000d3e0  2c c3 47 52 59 44 25 29  0d 3b e2 0d f2 67 72 61  |,.GRYD%).;...gra|
0000d3f0  62 66 6c 69 70 0d 3b ec  15 47 52 4d 41 25 3d a4  |bflip.;..GRMA%=.|
0000d400  68 69 67 68 28 38 2c 31  34 29 0d 3b f6 15 e7 20  |high(8,14).;... |
0000d410  ac 20 49 4e 47 25 20 8c  20 e5 20 8d 54 54 7c 0d  |. ING% . . .TT|.|
0000d420  3c 00 27 e7 20 a4 68 69  67 68 28 33 31 2c 33 29  |<.'. .high(31,3)|
0000d430  20 8c 20 f2 69 6d 70 63  65 6e 20 8b 20 f2 69 6d  | . .impcen . .im|
0000d440  70 73 63 61 6c 65 0d 3c  0a 05 e1 0d 3c 14 11 e7  |pscale.<....<...|
0000d450  20 46 55 53 45 25 3c 3e  33 34 20 8c 0d 3c 1e 15  | FUSE%<>34 ..<..|
0000d460  f2 70 67 72 61 62 28 4f  58 25 2c 4f 59 25 2c 33  |.pgrab(OX%,OY%,3|
0000d470  29 0d 3c 28 05 cc 0d 3c  32 24 e7 20 46 55 53 54  |).<(...<2$. FUST|
0000d480  25 3c 3e 30 20 8c 20 f2  70 69 6d 70 6f 72 74 28  |%<>0 . .pimport(|
0000d490  4f 58 25 2c 4f 59 25 2c  33 29 0d 3c 3c 05 cd 0d  |OX%,OY%,3).<<...|
0000d4a0  3c 46 1a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |<F..outpic:.quic|
0000d4b0  6b 64 72 61 77 6d 61 69  6e 0d 3c 50 05 e1 0d 3c  |kdrawmain.<P...<|
0000d4c0  5a 04 0d 3c 64 0e dd f2  67 72 61 62 66 6c 69 70  |Z..<d...grabflip|
0000d4d0  0d 3c 6e 5f e7 20 28 a4  68 69 67 68 28 38 2c 31  |.<n_. (.high(8,1|
0000d4e0  30 29 20 80 20 ac 20 47  52 46 58 25 29 20 84 20  |0) . . GRFX%) . |
0000d4f0  28 28 ac 20 a4 68 69 67  68 28 38 2c 31 30 29 29  |((. .high(8,10))|
0000d500  20 80 20 47 52 46 58 25  29 20 8c 20 c8 99 26 32  | . GRFX%) . ..&2|
0000d510  45 2c 32 38 39 2c 53 50  42 55 46 25 2c 47 52 4e  |E,289,SPBUF%,GRN|
0000d520  24 3a 47 52 46 58 25 3d  ac 20 47 52 46 58 25 0d  |$:GRFX%=. GRFX%.|
0000d530  3c 78 5f e7 20 28 a4 68  69 67 68 28 38 2c 31 31  |<x_. (.high(8,11|
0000d540  29 20 80 20 ac 20 47 52  46 59 25 29 20 84 20 28  |) . . GRFY%) . (|
0000d550  28 ac 20 a4 68 69 67 68  28 38 2c 31 31 29 29 20  |(. .high(8,11)) |
0000d560  80 20 47 52 46 59 25 29  20 8c 20 c8 99 26 32 45  |. GRFY%) . ..&2E|
0000d570  2c 33 30 33 2c 53 50 42  55 46 25 2c 47 52 4e 24  |,303,SPBUF%,GRN$|
0000d580  3a 47 52 46 59 25 3d ac  20 47 52 46 59 25 0d 3c  |:GRFY%=. GRFY%.<|
0000d590  82 05 e1 0d 3c 8c 04 0d  3c 96 0f dd f2 67 72 69  |....<...<....gri|
0000d5a0  64 63 6c 69 63 6b 0d 3c  a0 1e f2 61 72 72 6f 77  |dclick.<...arrow|
0000d5b0  73 28 36 2c 20 32 2c 36  2c 31 39 2c 31 2c 39 39  |s(6, 2,6,19,1,99|
0000d5c0  39 2c 31 29 0d 3c aa 1e  f2 61 72 72 6f 77 73 28  |9,1).<...arrows(|
0000d5d0  36 2c 20 33 2c 37 2c 32  31 2c 31 2c 39 39 39 2c  |6, 3,7,21,1,999,|
0000d5e0  31 29 0d 3c b4 20 f2 61  72 72 6f 77 73 28 36 2c  |1).<. .arrows(6,|
0000d5f0  20 31 30 2c 31 34 2c 32  33 2c 30 2c 39 39 39 2c  | 10,14,23,0,999,|
0000d600  31 29 0d 3c be 20 f2 61  72 72 6f 77 73 28 36 2c  |1).<. .arrows(6,|
0000d610  20 31 31 2c 31 35 2c 32  35 2c 30 2c 39 39 39 2c  | 11,15,25,0,999,|
0000d620  31 29 0d 3c c8 4b e7 20  4d 4f 55 49 43 25 3d 32  |1).<.K. MOUIC%=2|
0000d630  37 20 8c 20 f2 73 69 28  36 2c 31 39 2c 22 31 22  |7 . .si(6,19,"1"|
0000d640  29 3a f2 73 69 28 36 2c  32 31 2c 22 31 22 29 3a  |):.si(6,21,"1"):|
0000d650  f2 73 69 28 36 2c 32 33  2c 22 30 22 29 3a f2 73  |.si(6,23,"0"):.s|
0000d660  69 28 36 2c 32 35 2c 22  30 22 29 3a e1 0d 3c d2  |i(6,25,"0"):..<.|
0000d670  14 e7 20 4d 4f 55 49 43  25 3c 3e 32 39 20 8c 20  |.. MOUIC%<>29 . |
0000d680  e1 0d 3c dc 2d 47 52 49  57 49 25 3d bb 28 a4 67  |..<.-GRIWI%=.(.g|
0000d690  69 28 36 2c 31 39 29 29  3a e7 20 47 52 49 57 49  |i(6,19)):. GRIWI|
0000d6a0  25 3c 31 20 8c 20 47 52  49 57 49 25 3d 31 0d 3c  |%<1 . GRIWI%=1.<|
0000d6b0  e6 2d 47 52 49 48 45 25  3d bb 28 a4 67 69 28 36  |.-GRIHE%=.(.gi(6|
0000d6c0  2c 32 31 29 29 3a e7 20  47 52 49 48 45 25 3c 31  |,21)):. GRIHE%<1|
0000d6d0  20 8c 20 47 52 49 48 45  25 3d 31 0d 3c f0 57 47  | . GRIHE%=1.<.WG|
0000d6e0  52 42 58 25 3d bb 28 a4  67 69 28 36 2c 32 33 29  |RBX%=.(.gi(6,23)|
0000d6f0  29 3a e7 20 47 52 42 58  25 3e 47 52 49 57 49 25  |):. GRBX%>GRIWI%|
0000d700  20 8c 20 f5 3a 47 52 42  58 25 2d 3d 47 52 49 57  | . .:GRBX%-=GRIW|
0000d710  49 25 3a fd 20 47 52 42  58 25 3c 47 52 49 57 49  |I%:. GRBX%<GRIWI|
0000d720  25 3a f2 73 69 28 36 2c  32 33 2c c3 47 52 42 58  |%:.si(6,23,.GRBX|
0000d730  25 29 0d 3c fa 57 47 52  42 59 25 3d bb 28 a4 67  |%).<.WGRBY%=.(.g|
0000d740  69 28 36 2c 32 35 29 29  3a e7 20 47 52 42 59 25  |i(6,25)):. GRBY%|
0000d750  3e 47 52 49 48 45 25 20  8c 20 f5 3a 47 52 42 59  |>GRIHE% . .:GRBY|
0000d760  25 2d 3d 47 52 49 48 45  25 3a fd 20 47 52 42 59  |%-=GRIHE%:. GRBY|
0000d770  25 3c 47 52 49 48 45 25  3a f2 73 69 28 36 2c 32  |%<GRIHE%:.si(6,2|
0000d780  35 2c c3 47 52 42 59 25  29 0d 3d 04 17 e7 20 4d  |5,.GRBY%).=... M|
0000d790  4f 55 42 25 3d 34 20 8c  20 f2 6d 65 6e 6f 66 66  |OUB%=4 . .menoff|
0000d7a0  0d 3d 0e 12 f2 66 6f 72  63 65 64 72 61 77 6d 61  |.=...forcedrawma|
0000d7b0  69 6e 0d 3d 18 05 e1 0d  3d 22 04 0d 3d 2c 10 dd  |in.=....="..=,..|
0000d7c0  f2 62 72 75 73 68 63 6c  69 63 6b 0d 3d 36 1e e7  |.brushclick.=6..|
0000d7d0  20 4d 4f 55 49 43 25 3e  3d 30 20 80 20 4d 4f 55  | MOUIC%>=0 . MOU|
0000d7e0  49 43 25 3c 3d 31 31 20  8c 0d 3d 40 40 e7 20 46  |IC%<=11 ..=@@. F|
0000d7f0  55 53 54 25 3e 30 20 8c  20 f2 69 6e 70 69 63 3a  |UST%>0 . .inpic:|
0000d800  f2 70 61 69 6e 74 73 63  61 6c 65 3a f2 65 6f 72  |.paintscale:.eor|
0000d810  62 61 63 6b 3a f2 70 61  69 6e 74 62 72 75 73 68  |back:.paintbrush|
0000d820  28 4f 58 25 2c 4f 59 25  29 0d 3d 4a 13 53 45 4c  |(OX%,OY%).=J.SEL|
0000d830  42 52 25 3d 4d 4f 55 49  43 25 2b 31 0d 3d 54 44  |BR%=MOUIC%+1.=TD|
0000d840  e7 20 46 55 53 54 25 3e  30 20 8c 20 f2 65 6f 72  |. FUST%>0 . .eor|
0000d850  62 61 63 6b 3a f2 70 61  69 6e 74 62 72 75 73 68  |back:.paintbrush|
0000d860  28 4f 58 25 2c 4f 59 25  29 3a f2 6f 75 74 70 69  |(OX%,OY%):.outpi|
0000d870  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
0000d880  0d 3d 5e 13 f2 66 6f 72  63 65 64 72 61 77 62 72  |.=^..forcedrawbr|
0000d890  75 73 68 0d 3d 68 05 cd  0d 3d 72 2a e7 20 4d 4f  |ush.=h...=r*. MO|
0000d8a0  55 49 43 25 3c 3e 32 36  20 84 20 46 55 53 45 25  |UIC%<>26 . FUSE%|
0000d8b0  3d 32 39 20 84 20 46 55  53 45 25 3d 33 30 20 8c  |=29 . FUSE%=30 .|
0000d8c0  20 e1 0d 3d 7c 40 e7 20  46 55 53 54 25 3e 30 20  | ..=|@. FUST%>0 |
0000d8d0  8c 20 f2 69 6e 70 69 63  3a f2 70 61 69 6e 74 73  |. .inpic:.paints|
0000d8e0  63 61 6c 65 3a f2 65 6f  72 62 61 63 6b 3a f2 70  |cale:.eorback:.p|
0000d8f0  61 69 6e 74 62 72 75 73  68 28 4f 58 25 2c 4f 59  |aintbrush(OX%,OY|
0000d900  25 29 0d 3d 86 35 42 58  4d 25 3d bb 28 a4 67 69  |%).=.5BXM%=.(.gi|
0000d910  28 35 2c 32 33 29 29 3a  e7 20 42 58 4d 25 3c 31  |(5,23)):. BXM%<1|
0000d920  20 8c 20 42 58 4d 25 3d  31 3a f2 73 69 28 35 2c  | . BXM%=1:.si(5,|
0000d930  32 33 2c 22 31 22 29 0d  3d 90 35 42 59 4d 25 3d  |23,"1").=.5BYM%=|
0000d940  bb 28 a4 67 69 28 35 2c  32 30 29 29 3a e7 20 42  |.(.gi(5,20)):. B|
0000d950  59 4d 25 3c 31 20 8c 20  42 59 4d 25 3d 31 3a f2  |YM%<1 . BYM%=1:.|
0000d960  73 69 28 35 2c 32 30 2c  22 31 22 29 0d 3d 9a 35  |si(5,20,"1").=.5|
0000d970  42 58 44 25 3d bb 28 a4  67 69 28 35 2c 32 34 29  |BXD%=.(.gi(5,24)|
0000d980  29 3a e7 20 42 58 44 25  3c 31 20 8c 20 42 58 44  |):. BXD%<1 . BXD|
0000d990  25 3d 31 3a f2 73 69 28  35 2c 32 34 2c 22 31 22  |%=1:.si(5,24,"1"|
0000d9a0  29 0d 3d a4 35 42 59 44  25 3d bb 28 a4 67 69 28  |).=.5BYD%=.(.gi(|
0000d9b0  35 2c 31 39 29 29 3a e7  20 42 59 44 25 3c 31 20  |5,19)):. BYD%<1 |
0000d9c0  8c 20 42 59 44 25 3d 31  3a f2 73 69 28 35 2c 31  |. BYD%=1:.si(5,1|
0000d9d0  39 2c 22 31 22 29 0d 3d  ae 50 e7 20 46 55 53 54  |9,"1").=.P. FUST|
0000d9e0  25 3e 30 20 8c 20 f2 70  61 69 6e 74 73 63 61 6c  |%>0 . .paintscal|
0000d9f0  65 3a f2 65 6f 72 62 61  63 6b 3a f2 70 61 69 6e  |e:.eorback:.pain|
0000da00  74 62 72 75 73 68 28 4f  58 25 2c 4f 59 25 29 3a  |tbrush(OX%,OY%):|
0000da10  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
0000da20  61 77 6d 61 69 6e 0d 3d  b8 05 e1 0d 3d c2 04 0d  |awmain.=....=...|
0000da30  3d cc 0f dd f2 61 69 72  62 63 6c 69 63 6b 0d 3d  |=....airbclick.=|
0000da40  d6 39 f2 61 72 72 6f 77  73 28 34 2c 20 34 2c 36  |.9.arrows(4, 4,6|
0000da50  2c 31 37 2c 31 2c 39 39  39 2c 31 29 3a f2 61 72  |,17,1,999,1):.ar|
0000da60  72 6f 77 73 28 34 2c 20  35 2c 37 2c 31 39 2c 34  |rows(4, 5,7,19,4|
0000da70  2c 39 39 39 2c 31 29 0d  3d e0 05 e1 0d 3d ea 04  |,999,1).=....=..|
0000da80  0d 3d f4 26 dd f2 6d 65  6e 6f 66 66 3a c8 99 20  |.=.&..menoff:.. |
0000da90  22 57 69 6d 70 5f 43 72  65 61 74 65 4d 65 6e 75  |"Wimp_CreateMenu|
0000daa0  22 2c 2d 31 3a e1 0d 3d  fe 04 0d 3e 08 13 dd f2  |",-1:..=...>....|
0000dab0  62 75 69 6c 64 69 63 6f  6e 6d 65 6e 75 0d 3e 12  |buildiconmenu.>.|
0000dac0  15 f2 62 6d 28 33 30 2c  22 49 6d 61 67 65 72 79  |..bm(30,"Imagery|
0000dad0  22 29 0d 3e 1c 18 f2 61  74 6d 28 33 30 2c 22 49  |").>...atm(30,"I|
0000dae0  6e 66 6f 22 2c 31 2c 22  22 29 0d 3e 26 25 f2 61  |nfo",1,"").>&%.a|
0000daf0  74 6d 28 33 30 2c 22 53  61 76 65 22 2b a4 6b 28  |tm(30,"Save"+.k(|
0000db00  22 20 20 66 33 22 29 2c  30 2c 22 53 4c 22 29 0d  |"  f3"),0,"SL").|
0000db10  3e 30 1a f2 61 74 6d 28  33 30 2c 22 51 75 69 74  |>0..atm(30,"Quit|
0000db20  22 2c 2d 31 2c 22 46 22  29 0d 3e 3a 05 e1 0d 3e  |",-1,"F").>:...>|
0000db30  44 04 0d 3e 4e 46 dd f2  69 63 6f 6e 6d 65 6e 75  |D..>NF..iconmenu|
0000db40  3a 4d 45 4e 4f 25 3d 33  30 3a c8 99 20 22 57 69  |:MENO%=30:.. "Wi|
0000db50  6d 70 5f 43 72 65 61 74  65 4d 65 6e 75 22 2c 2c  |mp_CreateMenu",,|
0000db60  a4 63 6d 61 64 28 33 30  29 2c 4d 4f 55 58 25 2d  |.cmad(30),MOUX%-|
0000db70  36 34 2c 32 35 32 3a e1  0d 3e 58 04 0d 3e 62 4b  |64,252:..>X..>bK|
0000db80  dd f2 77 69 6e 64 6d 65  6e 75 3a 4d 4d 45 58 25  |..windmenu:MMEX%|
0000db90  3d 4d 4f 55 58 25 3a 4d  4d 45 59 25 3d 4d 4f 55  |=MOUX%:MMEY%=MOU|
0000dba0  59 25 3a 4d 45 4e 4f 25  3d 30 3a 4d 45 42 41 25  |Y%:MENO%=0:MEBA%|
0000dbb0  3d 4d 45 4e 55 25 3a 4d  45 49 4e 42 41 25 3d 4d  |=MENU%:MEINBA%=M|
0000dbc0  45 4e 55 49 4e 44 25 0d  3e 6c 6f 4c 25 3d 31 3a  |ENUIND%.>loL%=1:|
0000dbd0  e7 20 a4 63 6d 61 64 28  4c 25 29 3c 3e 2d 31 20  |. .cmad(L%)<>-1 |
0000dbe0  8c 20 54 41 44 25 3d 28  a4 63 6d 61 64 28 4c 25  |. TAD%=(.cmad(L%|
0000dbf0  29 29 2b 32 38 2b 28 35  2a 32 34 29 3a 21 54 41  |))+28+(5*24):!TA|
0000dc00  44 25 3d 28 21 54 41 44  25 29 20 80 20 31 33 30  |D%=(!TAD%) . 130|
0000dc10  3a 54 41 44 25 21 38 3d  28 54 41 44 25 21 38 29  |:TAD%!8=(TAD%!8)|
0000dc20  20 80 20 28 26 46 46 46  46 46 46 46 46 2d 28 31  | . (&FFFFFFFF-(1|
0000dc30  3c 3c 32 32 29 29 0d 3e  76 04 0d 3e 80 20 e7 20  |<<22)).>v..>. . |
0000dc40  4c 49 54 59 25 3d 32 31  20 8c 20 f2 74 69 63 6b  |LITY%=21 . .tick|
0000dc50  69 74 65 6d 28 31 32 2c  31 29 0d 3e 8a 20 e7 20  |item(12,1).>. . |
0000dc60  4c 49 54 59 25 3d 35 33  20 8c 20 f2 74 69 63 6b  |LITY%=53 . .tick|
0000dc70  69 74 65 6d 28 31 32 2c  32 29 0d 3e 94 1f e7 20  |item(12,2).>... |
0000dc80  4c 49 54 59 25 3d 35 20  8c 20 f2 74 69 63 6b 69  |LITY%=5 . .ticki|
0000dc90  74 65 6d 28 31 31 2c 31  29 0d 3e 9e 25 e7 20 28  |tem(11,1).>.%. (|
0000dca0  55 53 45 25 20 80 20 31  35 29 3d 30 20 8c 20 f2  |USE% . 15)=0 . .|
0000dcb0  74 69 63 6b 69 74 65 6d  28 31 31 2c 33 29 0d 3e  |tickitem(11,3).>|
0000dcc0  a8 25 e7 20 28 55 53 45  25 20 80 20 31 35 29 3d  |.%. (USE% . 15)=|
0000dcd0  31 20 8c 20 f2 74 69 63  6b 69 74 65 6d 28 31 31  |1 . .tickitem(11|
0000dce0  2c 34 29 0d 3e b2 25 e7  20 28 55 53 45 25 20 80  |,4).>.%. (USE% .|
0000dcf0  20 31 35 29 3d 32 20 8c  20 f2 74 69 63 6b 69 74  | 15)=2 . .tickit|
0000dd00  65 6d 28 31 31 2c 35 29  0d 3e bc 25 e7 20 28 55  |em(11,5).>.%. (U|
0000dd10  53 45 25 20 80 20 31 35  29 3d 33 20 8c 20 f2 74  |SE% . 15)=3 . .t|
0000dd20  69 63 6b 69 74 65 6d 28  31 31 2c 36 29 0d 3e c6  |ickitem(11,6).>.|
0000dd30  25 e7 20 28 55 53 45 25  20 80 20 31 35 29 3d 34  |%. (USE% . 15)=4|
0000dd40  20 8c 20 f2 74 69 63 6b  69 74 65 6d 28 31 31 2c  | . .tickitem(11,|
0000dd50  37 29 0d 3e d0 25 e7 20  28 55 53 45 25 20 80 20  |7).>.%. (USE% . |
0000dd60  31 35 29 3d 36 20 8c 20  f2 74 69 63 6b 69 74 65  |15)=6 . .tickite|
0000dd70  6d 28 31 31 2c 38 29 0d  3e da 25 e7 20 28 55 53  |m(11,8).>.%. (US|
0000dd80  45 25 20 80 20 31 35 29  3d 37 20 8c 20 f2 74 69  |E% . 15)=7 . .ti|
0000dd90  63 6b 69 74 65 6d 28 31  31 2c 39 29 0d 3e e4 28  |ckitem(11,9).>.(|
0000dda0  e7 20 28 55 53 45 25 20  80 20 31 31 32 29 3d 31  |. (USE% . 112)=1|
0000ddb0  36 20 8c 20 f2 74 69 63  6b 69 74 65 6d 28 31 31  |6 . .tickitem(11|
0000ddc0  2c 31 30 29 0d 3e ee 28  e7 20 28 55 53 45 25 20  |,10).>.(. (USE% |
0000ddd0  80 20 31 31 32 29 3d 33  32 20 8c 20 f2 74 69 63  |. 112)=32 . .tic|
0000dde0  6b 69 74 65 6d 28 31 31  2c 31 31 29 0d 3e f8 28  |kitem(11,11).>.(|
0000ddf0  e7 20 28 55 53 45 25 20  80 20 31 31 32 29 3d 34  |. (USE% . 112)=4|
0000de00  38 20 8c 20 f2 74 69 63  6b 69 74 65 6d 28 31 31  |8 . .tickitem(11|
0000de10  2c 31 32 29 0d 3f 02 28  e7 20 28 55 53 45 25 20  |,12).?.(. (USE% |
0000de20  80 20 31 31 32 29 3d 36  34 20 8c 20 f2 74 69 63  |. 112)=64 . .tic|
0000de30  6b 69 74 65 6d 28 31 31  2c 31 33 29 0d 3f 0c 28  |kitem(11,13).?.(|
0000de40  e7 20 28 55 53 45 25 20  80 20 31 31 32 29 3d 38  |. (USE% . 112)=8|
0000de50  30 20 8c 20 f2 74 69 63  6b 69 74 65 6d 28 31 31  |0 . .tickitem(11|
0000de60  2c 31 34 29 0d 3f 16 28  e7 20 46 4f 4e 54 53 25  |,14).?.(. FONTS%|
0000de70  3d 30 20 8c 20 f2 73 68  61 64 65 69 74 65 6d 28  |=0 . .shadeitem(|
0000de80  31 34 2c 46 4f 4e 54 53  25 2b 33 29 0d 3f 20 21  |14,FONTS%+3).? !|
0000de90  e7 20 46 4f 4e 54 41 25  3d 2d 31 20 8c 20 f2 73  |. FONTA%=-1 . .s|
0000dea0  68 61 64 65 69 74 65 6d  28 30 2c 34 29 0d 3f 2a  |hadeitem(0,4).?*|
0000deb0  42 e7 20 47 52 43 4f 25  3d 2d 31 20 8c 20 f2 73  |B. GRCO%=-1 . .s|
0000dec0  68 61 64 65 69 74 65 6d  28 35 2c 32 29 20 8b 20  |hadeitem(5,2) . |
0000ded0  f2 73 68 61 64 65 69 74  65 6d 28 35 2c 31 29 3a  |.shadeitem(5,1):|
0000dee0  f2 74 69 63 6b 69 74 65  6d 28 30 2c 31 30 29 0d  |.tickitem(0,10).|
0000def0  3f 34 1c e7 20 47 52 4c  4f 25 20 8c 20 f2 74 69  |?4.. GRLO% . .ti|
0000df00  63 6b 69 74 65 6d 28 35  2c 33 29 0d 3f 3e 1e e7  |ckitem(5,3).?>..|
0000df10  20 5a 4f 4f 4d 25 3e 31  20 8c 20 f2 74 69 63 6b  | ZOOM%>1 . .tick|
0000df20  69 74 65 6d 28 30 2c 39  29 0d 3f 48 22 e7 20 a4  |item(0,9).?H". .|
0000df30  77 6f 70 65 6e 28 33 32  29 20 8c 20 f2 74 69 63  |wopen(32) . .tic|
0000df40  6b 69 74 65 6d 28 30 2c  31 31 29 0d 3f 52 1d e7  |kitem(0,11).?R..|
0000df50  20 4b 55 4b 45 25 20 8c  20 f2 74 69 63 6b 69 74  | KUKE% . .tickit|
0000df60  65 6d 28 31 30 2c 35 29  0d 3f 5c 1c e7 20 4b 53  |em(10,5).?\.. KS|
0000df70  43 25 20 8c 20 f2 74 69  63 6b 69 74 65 6d 28 31  |C% . .tickitem(1|
0000df80  30 2c 36 29 0d 3f 66 45  e7 20 55 4e 44 4f 25 3c  |0,6).?fE. UNDO%<|
0000df90  3e 2d 31 20 8c 20 f2 73  68 61 64 65 69 74 65 6d  |>-1 . .shadeitem|
0000dfa0  28 31 30 2c 32 29 20 8b  20 f2 73 68 61 64 65 69  |(10,2) . .shadei|
0000dfb0  74 65 6d 28 31 30 2c 33  29 3a f2 73 68 61 64 65  |tem(10,3):.shade|
0000dfc0  69 74 65 6d 28 37 2c 31  29 0d 3f 70 20 e7 20 46  |item(7,1).?p . F|
0000dfd0  55 53 45 25 3d 33 34 20  8c 20 f2 73 68 61 64 65  |USE%=34 . .shade|
0000dfe0  69 74 65 6d 28 31 2c 36  29 0d 3f 7a 04 0d 3f 84  |item(1,6).?z..?.|
0000dff0  34 c8 99 20 22 57 69 6d  70 5f 43 72 65 61 74 65  |4.. "Wimp_Create|
0000e000  4d 65 6e 75 22 2c 2c a4  63 6d 61 64 28 30 29 2c  |Menu",,.cmad(0),|
0000e010  4d 4f 55 58 25 2d 36 34  2c 4d 4f 55 59 25 2b 36  |MOUX%-64,MOUY%+6|
0000e020  30 0d 3f 8e 05 e1 0d 3f  98 04 0d 3f a2 13 dd f2  |0.?....?...?....|
0000e030  62 75 69 6c 64 6d 61 69  6e 6d 65 6e 75 0d 3f ac  |buildmainmenu.?.|
0000e040  13 4d 45 4f 46 25 3d 30  3a 4d 45 49 4e 25 3d 30  |.MEOF%=0:MEIN%=0|
0000e050  0d 3f b6 1e f4 20 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |.?... ----------|
0000e060  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 0d 3f  |--------------.?|
0000e070  c0 04 0d 3f ca 0f f2 62  75 69 6c 64 6d 6d 32 3a  |...?...buildmm2:|
0000e080  e1 0d 3f d4 04 0d 3f de  20 dd a4 6b 28 49 54 24  |..?...?. ..k(IT$|
0000e090  29 3a e7 20 4b 53 43 25  20 8c 20 3d 49 54 24 20  |):. KSC% . =IT$ |
0000e0a0  8b 20 3d 22 22 0d 3f e8  04 0d 3f f2 0e dd f2 62  |. ="".?...?....b|
0000e0b0  75 69 6c 64 6d 6d 32 0d  3f fc 13 4d 45 4f 46 25  |uildmm2.?..MEOF%|
0000e0c0  3d 30 3a 4d 45 49 4e 25  3d 30 0d 40 06 04 0d 40  |=0:MEIN%=0.@...@|
0000e0d0  10 13 f2 62 6d 28 31 35  2c 22 53 70 65 65 64 22  |...bm(15,"Speed"|
0000e0e0  29 0d 40 1a 1e f2 61 74  6d 28 31 35 2c 22 56 65  |).@...atm(15,"Ve|
0000e0f0  72 79 20 66 61 73 74 22  2c 2d 31 2c 22 22 29 0d  |ry fast",-1,"").|
0000e100  40 24 19 f2 61 74 6d 28  31 35 2c 22 46 61 73 74  |@$..atm(15,"Fast|
0000e110  22 2c 2d 31 2c 22 22 29  0d 40 2e 1b f2 61 74 6d  |",-1,"").@...atm|
0000e120  28 31 35 2c 22 4d 65 64  69 75 6d 22 2c 2d 31 2c  |(15,"Medium",-1,|
0000e130  22 22 29 0d 40 38 1a f2  61 74 6d 28 31 35 2c 22  |"").@8..atm(15,"|
0000e140  53 6c 6f 77 22 2c 2d 31  2c 22 46 22 29 0d 40 42  |Slow",-1,"F").@B|
0000e150  04 0d 40 4c 16 f2 62 6d  28 31 39 2c 22 50 72 65  |..@L..bm(19,"Pre|
0000e160  73 65 72 76 65 22 29 0d  40 56 25 f2 61 74 6d 28  |serve").@V%.atm(|
0000e170  31 39 2c 22 2d 3e 20 31  22 2b a4 6b 28 22 20 20  |19,"-> 1"+.k("  |
0000e180  8b 66 31 22 29 2c 2d 31  2c 22 22 29 0d 40 60 25  |.f1"),-1,"").@`%|
0000e190  f2 61 74 6d 28 31 39 2c  22 2d 3e 20 32 22 2b a4  |.atm(19,"-> 2"+.|
0000e1a0  6b 28 22 20 20 8b 66 32  22 29 2c 2d 31 2c 22 22  |k("  .f2"),-1,""|
0000e1b0  29 0d 40 6a 25 f2 61 74  6d 28 31 39 2c 22 2d 3e  |).@j%.atm(19,"->|
0000e1c0  20 33 22 2b a4 6b 28 22  20 20 8b 66 33 22 29 2c  | 3"+.k("  .f3"),|
0000e1d0  2d 31 2c 22 22 29 0d 40  74 26 f2 61 74 6d 28 31  |-1,"").@t&.atm(1|
0000e1e0  39 2c 22 2d 3e 20 34 22  2b a4 6b 28 22 20 20 8b  |9,"-> 4"+.k("  .|
0000e1f0  66 34 22 29 2c 2d 31 2c  22 46 22 29 0d 40 7e 04  |f4"),-1,"F").@~.|
0000e200  0d 40 88 15 f2 62 6d 28  32 30 2c 22 52 65 73 74  |.@...bm(20,"Rest|
0000e210  6f 72 65 22 29 0d 40 92  25 f2 61 74 6d 28 32 30  |ore").@.%.atm(20|
0000e220  2c 22 3c 2d 20 31 22 2b  a4 6b 28 22 20 20 5e 66  |,"<- 1"+.k("  ^f|
0000e230  31 22 29 2c 2d 31 2c 22  22 29 0d 40 9c 25 f2 61  |1"),-1,"").@.%.a|
0000e240  74 6d 28 32 30 2c 22 3c  2d 20 32 22 2b a4 6b 28  |tm(20,"<- 2"+.k(|
0000e250  22 20 20 5e 66 32 22 29  2c 2d 31 2c 22 22 29 0d  |"  ^f2"),-1,"").|
0000e260  40 a6 25 f2 61 74 6d 28  32 30 2c 22 3c 2d 20 33  |@.%.atm(20,"<- 3|
0000e270  22 2b a4 6b 28 22 20 20  5e 66 33 22 29 2c 2d 31  |"+.k("  ^f3"),-1|
0000e280  2c 22 22 29 0d 40 b0 26  f2 61 74 6d 28 32 30 2c  |,"").@.&.atm(20,|
0000e290  22 3c 2d 20 34 22 2b a4  6b 28 22 20 20 5e 66 34  |"<- 4"+.k("  ^f4|
0000e2a0  22 29 2c 2d 31 2c 22 46  22 29 0d 40 ba 04 0d 40  |"),-1,"F").@...@|
0000e2b0  c4 11 f2 62 6d 28 31 2c  22 46 69 6c 65 22 29 0d  |...bm(1,"File").|
0000e2c0  40 ce 2d f2 61 74 6d 28  31 2c 22 53 61 76 65 22  |@.-.atm(1,"Save"|
0000e2d0  2b a4 6b 28 22 20 20 20  20 20 20 20 20 20 20 20  |+.k("           |
0000e2e0  20 66 33 22 29 2c 30 2c  22 53 22 29 0d 40 d8 22  | f3"),0,"S").@."|
0000e2f0  f2 61 74 6d 28 31 2c 22  53 61 76 65 20 61 73 20  |.atm(1,"Save as |
0000e300  73 70 72 69 74 65 22 2c  37 2c 22 53 22 29 0d 40  |sprite",7,"S").@|
0000e310  e2 22 f2 61 74 6d 28 31  2c 22 53 61 76 65 20 64  |.".atm(1,"Save d|
0000e320  65 66 61 75 6c 74 73 22  2c 2d 31 2c 22 53 22 29  |efaults",-1,"S")|
0000e330  0d 40 ec 22 f2 61 74 6d  28 31 2c 22 53 61 76 65  |.@.".atm(1,"Save|
0000e340  20 73 65 74 74 69 6e 67  73 22 2c 33 34 2c 22 53  | settings",34,"S|
0000e350  22 29 0d 40 f6 1b f2 61  74 6d 28 31 2c 22 45 78  |").@...atm(1,"Ex|
0000e360  70 6f 72 74 22 2c 2d 31  2c 22 53 22 29 0d 41 00  |port",-1,"S").A.|
0000e370  1b f2 61 74 6d 28 31 2c  22 49 6d 70 6f 72 74 22  |..atm(1,"Import"|
0000e380  2c 33 31 2c 22 4c 22 29  0d 41 0a 24 f2 61 74 6d  |,31,"L").A.$.atm|
0000e390  28 31 2c 22 50 72 65 73  65 72 76 65 22 2c a4 63  |(1,"Preserve",.c|
0000e3a0  6d 61 64 28 31 39 29 2c  22 53 22 29 0d 41 14 24  |mad(19),"S").A.$|
0000e3b0  f2 61 74 6d 28 31 2c 22  52 65 73 74 6f 72 65 22  |.atm(1,"Restore"|
0000e3c0  2c a4 63 6d 61 64 28 32  30 29 2c 22 53 46 22 29  |,.cmad(20),"SF")|
0000e3d0  0d 41 1e 04 0d 41 28 15  f2 62 6d 28 31 32 2c 22  |.A...A(..bm(12,"|
0000e3e0  50 61 74 74 65 72 6e 22  29 0d 41 32 1e f2 61 74  |Pattern").A2..at|
0000e3f0  6d 28 31 32 2c 22 52 65  73 74 61 72 74 65 64 22  |m(12,"Restarted"|
0000e400  2c 2d 31 2c 22 22 29 0d  41 3c 20 f2 61 74 6d 28  |,-1,"").A< .atm(|
0000e410  31 32 2c 22 43 6f 6e 74  69 6e 75 6f 75 73 22 2c  |12,"Continuous",|
0000e420  2d 31 2c 22 46 22 29 0d  41 46 04 0d 41 50 14 f2  |-1,"F").AF..AP..|
0000e430  62 6d 28 31 31 2c 22 53  74 79 6c 65 73 22 29 0d  |bm(11,"Styles").|
0000e440  41 5a 1f f2 61 74 6d 28  31 31 2c 22 53 6f 6c 69  |AZ..atm(11,"Soli|
0000e450  64 20 6c 69 6e 65 22 2c  2d 31 2c 22 22 29 0d 41  |d line",-1,"").A|
0000e460  64 29 f2 61 74 6d 28 31  31 2c 22 4c 69 6e 65 20  |d).atm(11,"Line |
0000e470  70 61 74 74 65 72 6e 22  2c a4 63 6d 61 64 28 31  |pattern",.cmad(1|
0000e480  32 29 2c 22 4c 22 29 0d  41 6e 1e f2 61 74 6d 28  |2),"L").An..atm(|
0000e490  31 31 2c 22 4f 76 65 72  77 72 69 74 65 22 2c 2d  |11,"Overwrite",-|
0000e4a0  31 2c 22 22 29 0d 41 78  17 f2 61 74 6d 28 31 31  |1,"").Ax..atm(11|
0000e4b0  2c 22 4f 52 22 2c 2d 31  2c 22 22 29 0d 41 82 18  |,"OR",-1,"").A..|
0000e4c0  f2 61 74 6d 28 31 31 2c  22 41 4e 44 22 2c 2d 31  |.atm(11,"AND",-1|
0000e4d0  2c 22 22 29 0d 41 8c 18  f2 61 74 6d 28 31 31 2c  |,"").A...atm(11,|
0000e4e0  22 45 4f 52 22 2c 2d 31  2c 22 22 29 0d 41 96 1b  |"EOR",-1,"").A..|
0000e4f0  f2 61 74 6d 28 31 31 2c  22 49 6e 76 65 72 74 22  |.atm(11,"Invert"|
0000e500  2c 2d 31 2c 22 22 29 0d  41 a0 19 f2 61 74 6d 28  |,-1,"").A...atm(|
0000e510  31 31 2c 22 4e 41 4e 44  22 2c 2d 31 2c 22 22 29  |11,"NAND",-1,"")|
0000e520  0d 41 aa 19 f2 61 74 6d  28 31 31 2c 22 4e 4f 52  |.A...atm(11,"NOR|
0000e530  22 2c 2d 31 2c 22 4c 22  29 0d 41 b4 1a f2 61 74  |",-1,"L").A...at|
0000e540  6d 28 31 31 2c 22 45 43  46 20 31 22 2c 2d 31 2c  |m(11,"ECF 1",-1,|
0000e550  22 22 29 0d 41 be 1a f2  61 74 6d 28 31 31 2c 22  |"").A...atm(11,"|
0000e560  45 43 46 20 32 22 2c 2d  31 2c 22 22 29 0d 41 c8  |ECF 2",-1,"").A.|
0000e570  1a f2 61 74 6d 28 31 31  2c 22 45 43 46 20 33 22  |..atm(11,"ECF 3"|
0000e580  2c 2d 31 2c 22 22 29 0d  41 d2 1a f2 61 74 6d 28  |,-1,"").A...atm(|
0000e590  31 31 2c 22 45 43 46 20  34 22 2c 2d 31 2c 22 22  |11,"ECF 4",-1,""|
0000e5a0  29 0d 41 dc 1f f2 61 74  6d 28 31 31 2c 22 47 69  |).A...atm(11,"Gi|
0000e5b0  61 6e 74 20 45 43 46 22  2c 2d 31 2c 22 46 22 29  |ant ECF",-1,"F")|
0000e5c0  0d 41 e6 04 0d 41 f0 12  f2 62 6d 28 31 33 2c 22  |.A...A...bm(13,"|
0000e5d0  46 69 6c 6c 22 29 0d 41  fa 20 f2 61 74 6d 28 31  |Fill").A. .atm(1|
0000e5e0  33 2c 22 46 6c 6f 6f 64  20 66 69 6c 6c 22 2c 2d  |3,"Flood fill",-|
0000e5f0  31 2c 22 53 22 29 0d 42  04 23 f2 61 74 6d 28 31  |1,"S").B.#.atm(1|
0000e600  33 2c 22 50 61 74 74 65  72 6e 20 66 69 6c 6c 22  |3,"Pattern fill"|
0000e610  2c 2d 31 2c 22 53 4c 22  29 0d 42 0e 24 f2 61 74  |,-1,"SL").B.$.at|
0000e620  6d 28 31 33 2c 22 47 72  61 64 75 61 74 65 64 20  |m(13,"Graduated |
0000e630  66 69 6c 6c 22 2c 31 37  2c 22 46 22 29 0d 42 18  |fill",17,"F").B.|
0000e640  04 0d 42 22 12 f2 62 6d  28 32 2c 22 50 61 69 6e  |..B"..bm(2,"Pain|
0000e650  74 22 29 0d 42 2c 31 f2  61 74 6d 28 32 2c 22 53  |t").B,1.atm(2,"S|
0000e660  68 6f 77 20 70 61 6c 65  74 74 65 22 2b a4 6b 28  |how palette"+.k(|
0000e670  22 20 20 20 20 20 20 20  20 66 31 22 29 2c 2d 31  |"        f1"),-1|
0000e680  2c 22 22 29 0d 42 36 32  f2 61 74 6d 28 32 2c 22  |,"").B62.atm(2,"|
0000e690  53 65 6c 65 63 74 20 63  6f 6c 6f 75 72 22 2b a4  |Select colour"+.|
0000e6a0  6b 28 22 20 20 20 20 20  20 20 66 32 22 29 2c 2d  |k("       f2"),-|
0000e6b0  31 2c 22 53 22 29 0d 42  40 27 f2 61 74 6d 28 32  |1,"S").B@'.atm(2|
0000e6c0  2c 22 55 6e 73 65 74 20  74 72 61 6e 73 70 61 72  |,"Unset transpar|
0000e6d0  65 6e 74 73 22 2c 2d 31  2c 22 53 22 29 0d 42 4a  |ents",-1,"S").BJ|
0000e6e0  26 f2 61 74 6d 28 32 2c  22 53 65 74 20 74 72 61  |&.atm(2,"Set tra|
0000e6f0  6e 73 70 61 72 65 6e 74  73 22 2c 2d 31 2c 22 53  |nsparents",-1,"S|
0000e700  4c 22 29 0d 42 54 32 f2  61 74 6d 28 32 2c 22 50  |L").BT2.atm(2,"P|
0000e710  69 78 65 6c 73 22 2b a4  6b 28 22 20 20 20 20 20  |ixels"+.k("     |
0000e720  20 20 20 20 20 20 20 20  20 66 34 22 29 2c 2d 31  |         f4"),-1|
0000e730  2c 22 53 22 29 0d 42 5e  32 f2 61 74 6d 28 32 2c  |,"S").B^2.atm(2,|
0000e740  22 53 6b 65 74 63 68 22  2b a4 6b 28 22 20 20 20  |"Sketch"+.k("   |
0000e750  20 20 20 20 20 20 20 20  20 20 20 66 35 22 29 2c  |           f5"),|
0000e760  2d 31 2c 22 53 22 29 0d  42 68 32 f2 61 74 6d 28  |-1,"S").Bh2.atm(|
0000e770  32 2c 22 52 75 62 62 65  72 20 6c 69 6e 65 22 2b  |2,"Rubber line"+|
0000e780  a4 6b 28 22 20 20 20 20  20 20 20 20 20 66 36 22  |.k("         f6"|
0000e790  29 2c 2d 31 2c 22 53 22  29 0d 42 72 32 f2 61 74  |),-1,"S").Br2.at|
0000e7a0  6d 28 32 2c 22 41 69 72  62 72 75 73 68 2e 2e 2e  |m(2,"Airbrush...|
0000e7b0  22 2b a4 6b 28 22 20 20  20 20 20 20 20 20 20 66  |"+.k("         f|
0000e7c0  37 22 29 2c 2d 31 2c 22  53 22 29 0d 42 7c 32 f2  |7"),-1,"S").B|2.|
0000e7d0  61 74 6d 28 32 2c 22 50  61 69 6e 74 62 72 75 73  |atm(2,"Paintbrus|
0000e7e0  68 2e 2e 2e 22 2b a4 6b  28 22 20 20 20 20 20 20  |h..."+.k("      |
0000e7f0  20 66 38 22 29 2c 2d 31  2c 22 4c 22 29 0d 42 86  | f8"),-1,"L").B.|
0000e800  20 f2 61 74 6d 28 32 2c  22 46 69 6c 6c 22 2c a4  | .atm(2,"Fill",.|
0000e810  63 6d 61 64 28 31 33 29  2c 22 4c 22 29 0d 42 90  |cmad(13),"L").B.|
0000e820  26 f2 61 74 6d 28 32 2c  22 4c 69 6e 65 20 73 74  |&.atm(2,"Line st|
0000e830  79 6c 65 22 2c a4 63 6d  61 64 28 31 31 29 2c 22  |yle",.cmad(11),"|
0000e840  46 22 29 0d 42 9a 04 0d  42 a4 13 f2 62 6d 28 34  |F").B...B...bm(4|
0000e850  2c 22 53 68 61 70 65 73  22 29 0d 42 ae 34 f2 61  |,"Shapes").B.4.a|
0000e860  74 6d 28 34 2c 22 57 69  72 65 20 72 65 63 74 61  |tm(4,"Wire recta|
0000e870  6e 67 6c 65 22 2b a4 6b  28 22 20 20 20 20 20 20  |ngle"+.k("      |
0000e880  20 8b 66 35 22 29 2c 2d  31 2c 22 53 22 29 0d 42  | .f5"),-1,"S").B|
0000e890  b8 34 f2 61 74 6d 28 34  2c 22 57 69 72 65 20 74  |.4.atm(4,"Wire t|
0000e8a0  72 69 61 6e 67 6c 65 22  2b a4 6b 28 22 20 20 20  |riangle"+.k("   |
0000e8b0  20 20 20 20 20 8b 66 36  22 29 2c 2d 31 2c 22 53  |     .f6"),-1,"S|
0000e8c0  22 29 0d 42 c2 34 f2 61  74 6d 28 34 2c 22 57 69  |").B.4.atm(4,"Wi|
0000e8d0  72 65 20 63 69 72 63 6c  65 22 2b a4 6b 28 22 20  |re circle"+.k(" |
0000e8e0  20 20 20 20 20 20 20 20  20 8b 66 37 22 29 2c 2d  |         .f7"),-|
0000e8f0  31 2c 22 53 22 29 0d 42  cc 33 f2 61 74 6d 28 34  |1,"S").B.3.atm(4|
0000e900  2c 22 57 69 72 65 20 65  6c 6c 69 70 73 65 22 2b  |,"Wire ellipse"+|
0000e910  a4 6b 28 22 20 20 20 20  20 20 20 20 20 8b 66 38  |.k("         .f8|
0000e920  22 29 2c 2d 31 2c 22 22  29 0d 42 d6 33 f2 61 74  |"),-1,"").B.3.at|
0000e930  6d 28 34 2c 22 57 69 72  65 20 70 61 72 61 6c 6c  |m(4,"Wire parall|
0000e940  65 6c 6f 67 72 61 6d 22  2b a4 6b 28 22 20 20 20  |elogram"+.k("   |
0000e950  8b 66 39 22 29 2c 2d 31  2c 22 22 29 0d 42 e0 36  |.f9"),-1,"").B.6|
0000e960  f2 61 74 6d 28 34 2c 22  57 69 72 65 20 61 72 63  |.atm(4,"Wire arc|
0000e970  22 2b a4 6b 28 22 20 20  20 20 20 20 20 20 20 20  |"+.k("          |
0000e980  20 20 20 8b 66 31 30 22  29 2c 2d 31 2c 22 53 4c  |   .f10"),-1,"SL|
0000e990  22 29 0d 42 ea 34 f2 61  74 6d 28 34 2c 22 53 6f  |").B.4.atm(4,"So|
0000e9a0  6c 69 64 20 72 65 63 74  61 6e 67 6c 65 22 2b a4  |lid rectangle"+.|
0000e9b0  6b 28 22 20 20 20 20 20  20 5e 66 35 22 29 2c 2d  |k("      ^f5"),-|
0000e9c0  31 2c 22 53 22 29 0d 42  f4 34 f2 61 74 6d 28 34  |1,"S").B.4.atm(4|
0000e9d0  2c 22 53 6f 6c 69 64 20  74 72 69 61 6e 67 6c 65  |,"Solid triangle|
0000e9e0  22 2b a4 6b 28 22 20 20  20 20 20 20 20 5e 66 36  |"+.k("       ^f6|
0000e9f0  22 29 2c 2d 31 2c 22 53  22 29 0d 42 fe 34 f2 61  |"),-1,"S").B.4.a|
0000ea00  74 6d 28 34 2c 22 53 6f  6c 69 64 20 63 69 72 63  |tm(4,"Solid circ|
0000ea10  6c 65 22 2b a4 6b 28 22  20 20 20 20 20 20 20 20  |le"+.k("        |
0000ea20  20 5e 66 37 22 29 2c 2d  31 2c 22 53 22 29 0d 43  | ^f7"),-1,"S").C|
0000ea30  08 34 f2 61 74 6d 28 34  2c 22 53 6f 6c 69 64 20  |.4.atm(4,"Solid |
0000ea40  65 6c 6c 69 70 73 65 22  2b a4 6b 28 22 20 20 20  |ellipse"+.k("   |
0000ea50  20 20 20 20 20 5e 66 38  22 29 2c 2d 31 2c 22 53  |     ^f8"),-1,"S|
0000ea60  22 29 0d 43 12 34 f2 61  74 6d 28 34 2c 22 53 6f  |").C.4.atm(4,"So|
0000ea70  6c 69 64 20 70 61 72 61  6c 6c 65 6c 6f 67 72 61  |lid parallelogra|
0000ea80  6d 22 2b a4 6b 28 22 20  20 5e 66 39 22 29 2c 2d  |m"+.k("  ^f9"),-|
0000ea90  31 2c 22 53 22 29 0d 43  1c 34 f2 61 74 6d 28 34  |1,"S").C.4.atm(4|
0000eaa0  2c 22 53 6f 6c 69 64 20  73 65 63 74 6f 72 22 2b  |,"Solid sector"+|
0000eab0  a4 6b 28 22 20 20 20 20  20 20 20 20 20 5e 66 31  |.k("         ^f1|
0000eac0  30 22 29 2c 2d 31 2c 22  22 29 0d 43 26 36 f2 61  |0"),-1,"").C&6.a|
0000ead0  74 6d 28 34 2c 22 53 6f  6c 69 64 20 73 65 67 6d  |tm(4,"Solid segm|
0000eae0  65 6e 74 22 2b a4 6b 28  22 20 20 20 20 20 20 20  |ent"+.k("       |
0000eaf0  20 5e 66 31 31 22 29 2c  2d 31 2c 22 53 46 22 29  | ^f11"),-1,"SF")|
0000eb00  0d 43 30 04 0d 43 3a 14  f2 62 6d 28 36 2c 22 50  |.C0..C:..bm(6,"P|
0000eb10  72 65 73 65 74 73 22 29  0d 43 44 1c f2 61 74 6d  |resets").CD..atm|
0000eb20  28 36 2c 22 32 78 32 20  67 72 69 64 22 2c 2d 31  |(6,"2x2 grid",-1|
0000eb30  2c 22 22 29 0d 43 4e 1c  f2 61 74 6d 28 36 2c 22  |,"").CN..atm(6,"|
0000eb40  33 78 33 20 67 72 69 64  22 2c 2d 31 2c 22 22 29  |3x3 grid",-1,"")|
0000eb50  0d 43 58 1c f2 61 74 6d  28 36 2c 22 34 78 34 20  |.CX..atm(6,"4x4 |
0000eb60  67 72 69 64 22 2c 2d 31  2c 22 22 29 0d 43 62 1c  |grid",-1,"").Cb.|
0000eb70  f2 61 74 6d 28 36 2c 22  36 78 36 20 67 72 69 64  |.atm(6,"6x6 grid|
0000eb80  22 2c 2d 31 2c 22 22 29  0d 43 6c 1c f2 61 74 6d  |",-1,"").Cl..atm|
0000eb90  28 36 2c 22 38 78 38 20  67 72 69 64 22 2c 2d 31  |(6,"8x8 grid",-1|
0000eba0  2c 22 22 29 0d 43 76 1e  f2 61 74 6d 28 36 2c 22  |,"").Cv..atm(6,"|
0000ebb0  31 36 78 31 36 20 67 72  69 64 22 2c 2d 31 2c 22  |16x16 grid",-1,"|
0000ebc0  22 29 0d 43 80 1e f2 61  74 6d 28 36 2c 22 33 32  |").C...atm(6,"32|
0000ebd0  78 33 32 20 67 72 69 64  22 2c 2d 31 2c 22 22 29  |x32 grid",-1,"")|
0000ebe0  0d 43 8a 1f f2 61 74 6d  28 36 2c 22 33 32 78 31  |.C...atm(6,"32x1|
0000ebf0  36 20 67 72 69 64 22 2c  2d 31 2c 22 46 22 29 0d  |6 grid",-1,"F").|
0000ec00  43 94 04 0d 43 9e 11 f2  62 6d 28 35 2c 22 47 72  |C...C...bm(5,"Gr|
0000ec10  69 64 22 29 0d 43 a8 2e  f2 61 74 6d 28 35 2c 22  |id").C...atm(5,"|
0000ec20  53 68 6f 77 20 67 72 69  64 22 2b a4 6b 28 22 20  |Show grid"+.k(" |
0000ec30  20 20 20 20 5e 66 31 32  22 29 2c 2d 31 2c 22 53  |    ^f12"),-1,"S|
0000ec40  22 29 0d 43 b2 2e f2 61  74 6d 28 35 2c 22 48 69  |").C...atm(5,"Hi|
0000ec50  64 65 20 67 72 69 64 22  2b a4 6b 28 22 20 20 20  |de grid"+.k("   |
0000ec60  20 20 8b 66 31 32 22 29  2c 2d 31 2c 22 53 22 29  |  .f12"),-1,"S")|
0000ec70  0d 43 bc 1e f2 61 74 6d  28 35 2c 22 47 72 69 64  |.C...atm(5,"Grid|
0000ec80  20 6c 6f 63 6b 22 2c 2d  31 2c 22 53 22 29 0d 43  | lock",-1,"S").C|
0000ec90  c6 26 f2 61 74 6d 28 35  2c 22 50 72 65 73 65 74  |.&.atm(5,"Preset|
0000eca0  20 67 72 69 64 73 22 2c  a4 63 6d 61 64 28 36 29  | grids",.cmad(6)|
0000ecb0  2c 22 22 29 0d 43 d0 1d  f2 61 74 6d 28 35 2c 22  |,"").C...atm(5,"|
0000ecc0  45 64 69 74 20 67 72 69  64 22 2c 36 2c 22 46 22  |Edit grid",6,"F"|
0000ecd0  29 0d 43 da 04 0d 43 e4  17 f2 62 6d 28 37 2c 22  |).C...C...bm(7,"|
0000ece0  4d 61 6e 69 70 75 6c 61  74 65 22 29 0d 43 ee 19  |Manipulate").C..|
0000ecf0  f2 61 74 6d 28 37 2c 22  55 6e 64 6f 22 2c 2d 31  |.atm(7,"Undo",-1|
0000ed00  2c 22 4c 22 29 0d 43 f8  21 f2 61 74 6d 28 37 2c  |,"L").C.!.atm(7,|
0000ed10  22 43 6f 70 79 20 61 72  65 61 2e 2e 2e 22 2c 2d  |"Copy area...",-|
0000ed20  31 2c 22 53 22 29 0d 44  02 21 f2 61 74 6d 28 37  |1,"S").D.!.atm(7|
0000ed30  2c 22 4d 6f 76 65 20 61  72 65 61 2e 2e 2e 22 2c  |,"Move area...",|
0000ed40  2d 31 2c 22 53 22 29 0d  44 0c 20 f2 61 74 6d 28  |-1,"S").D. .atm(|
0000ed50  37 2c 22 4d 69 72 72 6f  72 20 61 72 65 61 22 2c  |7,"Mirror area",|
0000ed60  2d 31 2c 22 53 22 29 0d  44 16 20 f2 61 74 6d 28  |-1,"S").D. .atm(|
0000ed70  37 2c 22 49 6e 76 65 72  74 20 61 72 65 61 22 2c  |7,"Invert area",|
0000ed80  2d 31 2c 22 53 22 29 0d  44 20 1f f2 61 74 6d 28  |-1,"S").D ..atm(|
0000ed90  37 2c 22 53 74 72 69 70  20 61 72 65 61 22 2c 2d  |7,"Strip area",-|
0000eda0  31 2c 22 53 22 29 0d 44  2a 1e f2 61 74 6d 28 37  |1,"S").D*..atm(7|
0000edb0  2c 22 52 6f 74 61 74 65  2e 2e 2e 22 2c 2d 31 2c  |,"Rotate...",-1,|
0000edc0  22 53 22 29 0d 44 34 24  f2 61 74 6d 28 37 2c 22  |"S").D4$.atm(7,"|
0000edd0  53 63 61 6c 65 20 74 6f  20 66 69 74 2e 2e 2e 22  |Scale to fit..."|
0000ede0  2c 2d 31 2c 22 4c 22 29  0d 44 3e 1d f2 61 74 6d  |,-1,"L").D>..atm|
0000edf0  28 37 2c 22 57 6f 62 62  6c 65 2e 2e 2e 22 2c 2d  |(7,"Wobble...",-|
0000ee00  31 2c 22 22 29 0d 44 48  22 f2 61 74 6d 28 37 2c  |1,"").DH".atm(7,|
0000ee10  22 50 69 78 65 6c 20 6d  61 70 70 69 6e 67 22 2c  |"Pixel mapping",|
0000ee20  2d 31 2c 22 46 22 29 0d  44 52 04 0d 44 5c 1b f2  |-1,"F").DR..D\..|
0000ee30  62 6d 28 31 37 2c 22 43  6f 6c 6f 75 72 20 73 63  |bm(17,"Colour sc|
0000ee40  61 6c 65 73 22 29 0d 44  66 18 f2 61 74 6d 28 31  |ales").Df..atm(1|
0000ee50  37 2c 22 52 65 64 22 2c  2d 31 2c 22 22 29 0d 44  |7,"Red",-1,"").D|
0000ee60  70 1a f2 61 74 6d 28 31  37 2c 22 47 72 65 65 6e  |p..atm(17,"Green|
0000ee70  22 2c 2d 31 2c 22 22 29  0d 44 7a 19 f2 61 74 6d  |",-1,"").Dz..atm|
0000ee80  28 31 37 2c 22 42 6c 75  65 22 2c 2d 31 2c 22 22  |(17,"Blue",-1,""|
0000ee90  29 0d 44 84 19 f2 61 74  6d 28 31 37 2c 22 43 79  |).D...atm(17,"Cy|
0000eea0  61 6e 22 2c 2d 31 2c 22  22 29 0d 44 8e 1c f2 61  |an",-1,"").D...a|
0000eeb0  74 6d 28 31 37 2c 22 4d  61 67 65 6e 74 61 22 2c  |tm(17,"Magenta",|
0000eec0  2d 31 2c 22 22 29 0d 44  98 1c f2 61 74 6d 28 31  |-1,"").D...atm(1|
0000eed0  37 2c 22 59 65 6c 6c 6f  77 22 2c 2d 31 2c 22 46  |7,"Yellow",-1,"F|
0000eee0  22 29 0d 44 a2 04 0d 44  ac 12 f2 62 6d 28 31 38  |").D...D...bm(18|
0000eef0  2c 22 54 69 6e 74 22 29  0d 44 b6 16 f2 61 74 6d  |,"Tint").D...atm|
0000ef00  28 31 38 2c 22 30 22 2c  2d 31 2c 22 22 29 0d 44  |(18,"0",-1,"").D|
0000ef10  c0 16 f2 61 74 6d 28 31  38 2c 22 31 22 2c 2d 31  |...atm(18,"1",-1|
0000ef20  2c 22 22 29 0d 44 ca 16  f2 61 74 6d 28 31 38 2c  |,"").D...atm(18,|
0000ef30  22 32 22 2c 2d 31 2c 22  22 29 0d 44 d4 17 f2 61  |"2",-1,"").D...a|
0000ef40  74 6d 28 31 38 2c 22 33  22 2c 2d 31 2c 22 46 22  |tm(18,"3",-1,"F"|
0000ef50  29 0d 44 de 04 0d 44 e8  14 f2 62 6d 28 38 2c 22  |).D...D...bm(8,"|
0000ef60  53 70 65 63 69 61 6c 22  29 0d 44 f2 1a f2 61 74  |Special").D...at|
0000ef70  6d 28 38 2c 22 54 72 61  63 65 22 2c 2d 31 2c 22  |m(8,"Trace",-1,"|
0000ef80  53 22 29 0d 44 fc 1f f2  61 74 6d 28 38 2c 22 53  |S").D...atm(8,"S|
0000ef90  6d 75 64 67 65 20 61 72  65 61 22 2c 2d 31 2c 22  |mudge area",-1,"|
0000efa0  22 29 0d 45 06 21 f2 61  74 6d 28 38 2c 22 57 65  |").E.!.atm(8,"We|
0000efb0  74 20 62 72 75 73 68 2e  2e 2e 22 2c 2d 31 2c 22  |t brush...",-1,"|
0000efc0  53 22 29 0d 45 10 1e f2  61 74 6d 28 38 2c 22 54  |S").E...atm(8,"T|
0000efd0  69 6e 74 20 61 72 65 61  22 2c 2d 31 2c 22 53 22  |int area",-1,"S"|
0000efe0  29 0d 45 1a 22 f2 61 74  6d 28 38 2c 22 54 69 6e  |).E.".atm(8,"Tin|
0000eff0  74 20 62 72 75 73 68 2e  2e 2e 22 2c 2d 31 2c 22  |t brush...",-1,"|
0000f000  53 22 29 0d 45 24 1f f2  61 74 6d 28 38 2c 22 53  |S").E$..atm(8,"S|
0000f010  65 74 20 66 72 61 6d 65  22 2c 31 39 2c 22 53 4c  |et frame",19,"SL|
0000f020  22 29 0d 45 2e 22 f2 61  74 6d 28 38 2c 22 52 47  |").E.".atm(8,"RG|
0000f030  42 20 63 6f 6e 74 72 6f  6c 2e 2e 2e 22 2c 2d 31  |B control...",-1|
0000f040  2c 22 22 29 0d 45 38 22  f2 61 74 6d 28 38 2c 22  |,"").E8".atm(8,"|
0000f050  47 72 65 79 20 73 63 61  6c 65 2e 2e 2e 22 2c 2d  |Grey scale...",-|
0000f060  31 2c 22 53 22 29 0d 45  42 27 f2 61 74 6d 28 38  |1,"S").EB'.atm(8|
0000f070  2c 22 43 6f 6e 74 72 61  73 74 20 63 6f 6e 74 72  |,"Contrast contr|
0000f080  6f 6c 2e 2e 2e 22 2c 2d  31 2c 22 22 29 0d 45 4c  |ol...",-1,"").EL|
0000f090  25 f2 61 74 6d 28 38 2c  22 50 6f 73 74 65 72 69  |%.atm(8,"Posteri|
0000f0a0  7a 61 74 69 6f 6e 2e 2e  2e 22 2c 2d 31 2c 22 53  |zation...",-1,"S|
0000f0b0  22 29 0d 45 56 23 f2 61  74 6d 28 38 2c 22 44 65  |").EV#.atm(8,"De|
0000f0c0  2d 74 69 6e 74 22 2c a4  63 6d 61 64 28 31 38 29  |-tint",.cmad(18)|
0000f0d0  2c 22 53 22 29 0d 45 60  1e f2 61 74 6d 28 38 2c  |,"S").E`..atm(8,|
0000f0e0  22 52 47 42 20 67 72 61  70 68 22 2c 2d 31 2c 22  |"RGB graph",-1,"|
0000f0f0  53 22 29 0d 45 6a 29 f2  61 74 6d 28 38 2c 22 43  |S").Ej).atm(8,"C|
0000f100  6f 6c 6f 75 72 20 73 63  61 6c 65 22 2c a4 63 6d  |olour scale",.cm|
0000f110  61 64 28 31 37 29 2c 22  53 4c 22 29 0d 45 74 20  |ad(17),"SL").Et |
0000f120  f2 61 74 6d 28 38 2c 22  50 69 78 65 6c 61 74 65  |.atm(8,"Pixelate|
0000f130  2e 2e 2e 22 2c 2d 31 2c  22 53 22 29 0d 45 7e 1d  |...",-1,"S").E~.|
0000f140  f2 61 74 6d 28 38 2c 22  46 69 6c 74 65 72 2e 2e  |.atm(8,"Filter..|
0000f150  2e 22 2c 2d 31 2c 22 22  29 0d 45 88 27 f2 61 74  |.",-1,"").E.'.at|
0000f160  6d 28 38 2c 22 43 6f 6c  6f 75 72 20 72 65 70 6c  |m(8,"Colour repl|
0000f170  61 63 65 2e 2e 2e 22 2c  2d 31 2c 22 53 46 22 29  |ace...",-1,"SF")|
0000f180  0d 45 92 04 0d 45 9c 11  f2 62 6d 28 39 2c 22 45  |.E...E...bm(9,"E|
0000f190  64 69 74 22 29 0d 45 a6  21 f2 61 74 6d 28 39 2c  |dit").E.!.atm(9,|
0000f1a0  22 4c 69 6e 65 20 70 61  74 74 65 72 6e 22 2c 31  |"Line pattern",1|
0000f1b0  30 2c 22 53 22 29 0d 45  b0 22 f2 61 74 6d 28 39  |0,"S").E.".atm(9|
0000f1c0  2c 22 46 69 6c 6c 20 70  61 74 74 65 72 6e 73 22  |,"Fill patterns"|
0000f1d0  2c 31 31 2c 22 53 22 29  0d 45 ba 24 f2 61 74 6d  |,11,"S").E.$.atm|
0000f1e0  28 39 2c 22 45 64 69 74  20 62 72 75 73 68 2f 66  |(9,"Edit brush/f|
0000f1f0  69 6c 6c 22 2c 31 32 2c  22 53 22 29 0d 45 c4 24  |ill",12,"S").E.$|
0000f200  f2 61 74 6d 28 39 2c 22  47 72 61 64 75 61 74 65  |.atm(9,"Graduate|
0000f210  64 20 66 69 6c 6c 73 22  2c 31 33 2c 22 46 22 29  |d fills",13,"F")|
0000f220  0d 45 ce 04 0d 45 d8 12  f2 62 6d 28 31 30 2c 22  |.E...E...bm(10,"|
0000f230  4d 69 73 63 22 29 0d 45  e2 19 f2 61 74 6d 28 31  |Misc").E...atm(1|
0000f240  30 2c 22 49 6e 66 6f 22  2c 31 2c 22 4c 22 29 0d  |0,"Info",1,"L").|
0000f250  45 ec 21 f2 61 74 6d 28  31 30 2c 22 45 6e 61 62  |E.!.atm(10,"Enab|
0000f260  6c 65 20 75 6e 64 6f 22  2c 2d 31 2c 22 53 22 29  |le undo",-1,"S")|
0000f270  0d 45 f6 22 f2 61 74 6d  28 31 30 2c 22 44 69 73  |.E.".atm(10,"Dis|
0000f280  61 62 6c 65 20 75 6e 64  6f 22 2c 2d 31 2c 22 53  |able undo",-1,"S|
0000f290  22 29 0d 46 00 27 f2 61  74 6d 28 31 30 2c 22 4d  |").F.'.atm(10,"M|
0000f2a0  6f 75 73 65 20 73 70 65  65 64 22 2c a4 63 6d 61  |ouse speed",.cma|
0000f2b0  64 28 31 35 29 2c 22 22  29 0d 46 0a 20 f2 61 74  |d(15),"").F. .at|
0000f2c0  6d 28 31 30 2c 22 43 75  72 73 6f 72 20 6b 65 79  |m(10,"Cursor key|
0000f2d0  73 22 2c 2d 31 2c 22 22  29 0d 46 14 1f f2 61 74  |s",-1,"").F...at|
0000f2e0  6d 28 31 30 2c 22 46 75  6c 6c 20 6d 65 6e 75 73  |m(10,"Full menus|
0000f2f0  22 2c 2d 31 2c 22 22 29  0d 46 1e 2e f2 61 74 6d  |",-1,"").F...atm|
0000f300  28 31 30 2c 22 42 72 69  6e 67 20 74 6f 20 74 6f  |(10,"Bring to to|
0000f310  70 20 20 22 2b a4 6b 28  22 66 31 31 22 29 2c 2d  |p  "+.k("f11"),-|
0000f320  31 2c 22 4c 22 29 0d 46  28 22 f2 61 74 6d 28 31  |1,"L").F(".atm(1|
0000f330  30 2c 22 57 69 70 65 20  70 69 63 74 75 72 65 22  |0,"Wipe picture"|
0000f340  2c 2d 31 2c 22 46 22 29  0d 46 32 04 0d 46 3c 14  |,-1,"F").F2..F<.|
0000f350  f2 62 6d 28 30 2c 22 49  6d 61 67 65 72 79 22 29  |.bm(0,"Imagery")|
0000f360  0d 46 46 1f f2 61 74 6d  28 30 2c 22 4d 69 73 63  |.FF..atm(0,"Misc|
0000f370  22 2c a4 63 6d 61 64 28  31 30 29 2c 22 22 29 0d  |",.cmad(10),"").|
0000f380  46 50 1f f2 61 74 6d 28  30 2c 22 46 69 6c 65 22  |FP..atm(0,"File"|
0000f390  2c a4 63 6d 61 64 28 31  29 2c 22 4c 22 29 0d 46  |,.cmad(1),"L").F|
0000f3a0  5a 2f f2 61 74 6d 28 30  2c 22 50 61 69 6e 74 22  |Z/.atm(0,"Paint"|
0000f3b0  2b a4 6b 28 22 20 20 20  20 20 20 20 66 39 22 29  |+.k("       f9")|
0000f3c0  2c a4 63 6d 61 64 28 32  29 2c 22 22 29 0d 46 64  |,.cmad(2),"").Fd|
0000f3d0  18 f2 61 74 6d 28 30 2c  22 54 65 78 74 22 2c 30  |..atm(0,"Text",0|
0000f3e0  2c 22 53 22 29 0d 46 6e  20 f2 61 74 6d 28 30 2c  |,"S").Fn .atm(0,|
0000f3f0  22 53 68 61 70 65 73 22  2c a4 63 6d 61 64 28 34  |"Shapes",.cmad(4|
0000f400  29 2c 22 22 29 0d 46 78  21 f2 61 74 6d 28 30 2c  |),"").Fx!.atm(0,|
0000f410  22 53 70 65 63 69 61 6c  22 2c a4 63 6d 61 64 28  |"Special",.cmad(|
0000f420  38 29 2c 22 22 29 0d 46  82 1e f2 61 74 6d 28 30  |8),"").F...atm(0|
0000f430  2c 22 45 64 69 74 22 2c  a4 63 6d 61 64 28 39 29  |,"Edit",.cmad(9)|
0000f440  2c 22 22 29 0d 46 8c 25  f2 61 74 6d 28 30 2c 22  |,"").F.%.atm(0,"|
0000f450  4d 61 6e 69 70 75 6c 61  74 65 22 2c a4 63 6d 61  |Manipulate",.cma|
0000f460  64 28 37 29 2c 22 4c 22  29 0d 46 96 2b f2 61 74  |d(7),"L").F.+.at|
0000f470  6d 28 30 2c 22 5a 6f 6f  6d 22 2b a4 6b 28 22 20  |m(0,"Zoom"+.k(" |
0000f480  20 20 20 20 20 20 20 66  31 30 22 29 2c 33 33 2c  |       f10"),33,|
0000f490  22 53 22 29 0d 46 a0 1e  f2 61 74 6d 28 30 2c 22  |"S").F...atm(0,"|
0000f4a0  47 72 69 64 22 2c a4 63  6d 61 64 28 35 29 2c 22  |Grid",.cmad(5),"|
0000f4b0  22 29 0d 46 aa 1d f2 61  74 6d 28 30 2c 22 54 6f  |").F...atm(0,"To|
0000f4c0  6f 6c 6b 69 74 22 2c 2d  31 2c 22 53 46 22 29 0d  |olkit",-1,"SF").|
0000f4d0  46 b4 04 0d 46 be 05 e1  0d 46 c8 04 0d 46 d2 53  |F...F....F...F.S|
0000f4e0  dd a4 66 6f 6e 74 28 46  25 29 3a e7 20 46 4f 4e  |..font(F%):. FON|
0000f4f0  54 41 25 3d 2d 31 20 84  20 46 25 3e 46 4f 4e 54  |TA%=-1 . F%>FONT|
0000f500  53 25 20 8c 20 3d 22 22  20 8b 20 3d 24 28 46 4f  |S% . ="" . =$(FO|
0000f510  4e 54 41 25 2b 46 4f 4e  54 4f 25 2b 28 21 28 46  |NTA%+FONTO%+(!(F|
0000f520  4f 4e 54 41 25 2b 28 46  25 2a 34 29 29 29 29 0d  |ONTA%+(F%*4)))).|
0000f530  46 dc 04 0d 46 e6 25 dd  a4 66 6f 6e 74 72 6f 6f  |F...F.%..fontroo|
0000f540  74 28 46 24 29 3a e7 20  a7 46 24 2c 22 2e 22 29  |t(F$):. .F$,".")|
0000f550  3d 30 20 8c 20 3d 46 24  0d 46 f0 4c 49 50 46 25  |=0 . =F$.F.LIPF%|
0000f560  3d 31 3a 49 50 46 24 3d  22 22 3a c8 95 20 c1 46  |=1:IPF$="":.. .F|
0000f570  24 2c 49 50 46 25 2c 31  29 3c 3e 22 2e 22 3a 49  |$,IPF%,1)<>".":I|
0000f580  50 46 24 3d 49 50 46 24  2b c1 46 24 2c 49 50 46  |PF$=IPF$+.F$,IPF|
0000f590  25 2c 31 29 3a 49 50 46  25 2b 3d 31 3a ce 3a 3d  |%,1):IPF%+=1:.:=|
0000f5a0  49 50 46 24 0d 46 fa 04  0d 47 04 26 f4 20 2a 2a  |IPF$.F...G.&. **|
0000f5b0  20 43 72 65 61 74 65 20  61 20 6d 65 6e 75 20 28  | Create a menu (|
0000f5c0  4e 75 6d 62 65 72 2c 20  54 69 74 6c 65 29 0d 47  |Number, Title).G|
0000f5d0  0e 11 dd f2 62 6d 28 4d  4e 25 2c 4d 54 24 29 0d  |....bm(MN%,MT$).|
0000f5e0  47 18 2b 21 a4 6d 61 64  28 4d 4e 25 29 3d 4d 45  |G.+!.mad(MN%)=ME|
0000f5f0  4e 55 25 2b 4d 45 4f 46  25 3a 54 41 44 25 3d 4d  |NU%+MEOF%:TAD%=M|
0000f600  45 4e 55 25 2b 4d 45 4f  46 25 0d 47 22 54 24 54  |ENU%+MEOF%.G"T$T|
0000f610  41 44 25 3d 4d 54 24 3a  54 41 44 25 3f 31 32 3d  |AD%=MT$:TAD%?12=|
0000f620  37 3a 54 41 44 25 3f 31  33 3d 32 3a 54 41 44 25  |7:TAD%?13=2:TAD%|
0000f630  3f 31 34 3d 37 3a 54 41  44 25 3f 31 35 3d 30 3a  |?14=7:TAD%?15=0:|
0000f640  54 41 44 25 21 31 36 3d  30 3a 54 41 44 25 21 32  |TAD%!16=0:TAD%!2|
0000f650  30 3d 34 34 3a 54 41 44  25 21 32 34 3d 30 0d 47  |0=44:TAD%!24=0.G|
0000f660  2c 0d 4d 45 4f 46 25 2b  3d 32 38 0d 47 36 40 e7  |,.MEOF%+=28.G6@.|
0000f670  20 4d 45 4f 46 25 3e 4d  45 53 49 25 20 8c 20 f2  | MEOF%>MESI% . .|
0000f680  6d 65 73 73 61 67 65 28  30 2c 22 4d 65 6e 75 20  |message(0,"Menu |
0000f690  74 72 65 65 20 68 61 73  20 72 75 6e 20 6f 75 74  |tree has run out|
0000f6a0  20 6f 66 20 72 6f 6f 6d  2e 22 29 0d 47 40 05 e1  | of room.").G@..|
0000f6b0  0d 47 4a 04 0d 47 54 33  f4 20 2a 2a 20 46 65 61  |.GJ..GT3. ** Fea|
0000f6c0  74 75 72 65 20 66 6f 72  6d 61 74 20 3a 20 4c 20  |ture format : L |
0000f6d0  3d 20 46 6f 6c 6c 6f 77  20 62 79 20 64 6f 74 74  |= Follow by dott|
0000f6e0  65 64 20 6c 69 6e 65 0d  47 5e 27 f4 20 2a 2a 20  |ed line.G^'. ** |
0000f6f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 3a  |               :|
0000f700  20 46 20 3d 20 4c 61 73  74 20 69 74 65 6d 0d 47  | F = Last item.G|
0000f710  68 1a dd f2 61 74 6d 28  4d 4e 25 2c 49 54 24 2c  |h...atm(MN%,IT$,|
0000f720  48 41 25 2c 46 45 24 29  0d 47 72 14 54 41 44 25  |HA%,FE$).Gr.TAD%|
0000f730  3d 4d 45 4e 55 25 2b 4d  45 4f 46 25 0d 47 7c 09  |=MENU%+MEOF%.G|.|
0000f740  46 45 25 3d 30 0d 47 86  18 e7 20 a7 46 45 24 2c  |FE%=0.G... .FE$,|
0000f750  22 4c 22 29 20 8c 20 46  45 25 2b 3d 32 0d 47 90  |"L") . FE%+=2.G.|
0000f760  1a e7 20 a7 46 45 24 2c  22 46 22 29 20 8c 20 46  |.. .FE$,"F") . F|
0000f770  45 25 2b 3d 31 32 38 0d  47 9a 0d 21 54 41 44 25  |E%+=128.G..!TAD%|
0000f780  3d 46 45 25 0d 47 a4 2c  e7 20 48 41 25 3e 2d 31  |=FE%.G.,. HA%>-1|
0000f790  20 80 20 48 41 25 3c 26  38 30 30 30 20 8c 20 54  | . HA%<&8000 . T|
0000f7a0  41 44 25 21 34 3d 48 41  4e 44 25 28 48 41 25 29  |AD%!4=HAND%(HA%)|
0000f7b0  0d 47 ae 18 e7 20 48 41  25 3d 2d 31 20 8c 20 54  |.G... HA%=-1 . T|
0000f7c0  41 44 25 21 34 3d 2d 31  0d 47 b8 1c e7 20 48 41  |AD%!4=-1.G... HA|
0000f7d0  25 3e 26 38 30 30 30 20  8c 20 54 41 44 25 21 34  |%>&8000 . TAD%!4|
0000f7e0  3d 48 41 25 0d 47 c2 1c  54 41 44 25 21 38 3d 31  |=HA%.G..TAD%!8=1|
0000f7f0  20 84 20 28 37 3c 3c 32  34 29 20 84 20 32 35 36  | . (7<<24) . 256|
0000f800  0d 47 cc 29 e7 20 a7 46  45 24 2c 22 53 22 29 20  |.G.). .FE$,"S") |
0000f810  8c 20 54 41 44 25 21 38  3d 28 54 41 44 25 21 38  |. TAD%!8=(TAD%!8|
0000f820  29 2b 28 31 3c 3c 32 32  29 0d 47 d6 19 24 28 4d  |)+(1<<22).G..$(M|
0000f830  45 4e 55 49 4e 44 25 2b  4d 45 49 4e 25 29 3d 49  |ENUIND%+MEIN%)=I|
0000f840  54 24 0d 47 e0 11 49 4c  45 25 3d a9 28 49 54 24  |T$.G..ILE%=.(IT$|
0000f850  29 2b 31 0d 47 ea 2a e7  20 28 49 4c 45 25 20 83  |)+1.G.*. (ILE% .|
0000f860  20 34 29 3e 30 20 8c 20  49 4c 45 25 3d 28 28 49  | 4)>0 . ILE%=((I|
0000f870  4c 45 25 20 81 20 34 29  2b 31 29 2a 34 0d 47 f4  |LE% . 4)+1)*4.G.|
0000f880  1a 54 41 44 25 21 31 32  3d 4d 45 4e 55 49 4e 44  |.TAD%!12=MENUIND|
0000f890  25 2b 4d 45 49 4e 25 0d  47 fe 12 54 41 44 25 21  |%+MEIN%.G..TAD%!|
0000f8a0  32 30 3d a9 28 49 54 24  29 0d 48 08 13 54 41 44  |20=.(IT$).H..TAD|
0000f8b0  25 21 31 36 3d 4d 45 4e  41 4c 4f 25 0d 48 12 0f  |%!16=MENALO%.H..|
0000f8c0  4d 45 49 4e 25 2b 3d 49  4c 45 25 0d 48 1c 43 e7  |MEIN%+=ILE%.H.C.|
0000f8d0  20 4d 45 49 4e 25 3e 4d  45 53 49 25 20 8c 20 f2  | MEIN%>MESI% . .|
0000f8e0  6d 65 73 73 61 67 65 28  31 2c 22 4d 65 6e 75 20  |message(1,"Menu |
0000f8f0  69 6e 64 69 72 65 63 74  69 6f 6e 20 62 75 66 66  |indirection buff|
0000f900  65 72 20 6f 76 65 72 66  6c 6f 77 2e 22 29 0d 48  |er overflow.").H|
0000f910  26 0d 4d 45 4f 46 25 2b  3d 32 34 0d 48 30 3f e7  |&.MEOF%+=24.H0?.|
0000f920  20 4d 45 4f 46 25 3e 4d  45 53 49 25 20 8c 20 f2  | MEOF%>MESI% . .|
0000f930  6d 65 73 73 61 67 65 28  30 2c 22 4d 65 6e 75 20  |message(0,"Menu |
0000f940  74 72 65 65 20 68 61 73  20 72 75 6e 20 6f 75 74  |tree has run out|
0000f950  20 6f 66 20 72 6f 6f 6d  22 29 0d 48 3a 4b e7 20  | of room").H:K. |
0000f960  28 28 21 28 a4 63 6d 61  64 28 4d 4e 25 29 2b 31  |((!(.cmad(MN%)+1|
0000f970  36 29 29 2d 33 32 29 3c  28 a9 28 49 54 24 29 2a  |6))-32)<(.(IT$)*|
0000f980  31 36 29 20 8c 20 21 28  a4 63 6d 61 64 28 4d 4e  |16) . !(.cmad(MN|
0000f990  25 29 2b 31 36 29 3d 28  a9 28 49 54 24 29 2a 31  |%)+16)=(.(IT$)*1|
0000f9a0  36 29 2b 33 32 0d 48 44  05 e1 0d 48 4e 04 0d 48  |6)+32.HD...HN..H|
0000f9b0  58 54 dd f2 73 68 61 64  65 69 74 65 6d 28 4d 4e  |XT..shadeitem(MN|
0000f9c0  25 2c 49 4e 25 29 3a 54  41 44 25 3d a4 63 6d 61  |%,IN%):TAD%=.cma|
0000f9d0  64 28 4d 4e 25 29 2b 32  38 2b 28 28 49 4e 25 2d  |d(MN%)+28+((IN%-|
0000f9e0  31 29 2a 32 34 29 3a 54  41 44 25 21 38 3d 28 54  |1)*24):TAD%!8=(T|
0000f9f0  41 44 25 21 38 29 20 84  20 28 31 3c 3c 32 32 29  |AD%!8) . (1<<22)|
0000fa00  3a e1 0d 48 62 04 0d 48  6c 4b dd f2 74 69 63 6b  |:..Hb..HlK..tick|
0000fa10  69 74 65 6d 28 4d 4e 25  2c 49 4e 25 29 3a 54 41  |item(MN%,IN%):TA|
0000fa20  44 25 3d a4 63 6d 61 64  28 4d 4e 25 29 2b 32 38  |D%=.cmad(MN%)+28|
0000fa30  2b 28 28 49 4e 25 2d 31  29 2a 32 34 29 3a 21 54  |+((IN%-1)*24):!T|
0000fa40  41 44 25 3d 28 21 54 41  44 25 29 20 84 20 31 3a  |AD%=(!TAD%) . 1:|
0000fa50  e1 0d 48 76 04 0d 48 80  12 dd f2 6d 65 6e 75 3a  |..Hv..H....menu:|
0000fa60  c8 99 36 2c 32 32 39 0d  48 8a 34 c8 99 20 22 57  |..6,229.H.4.. "W|
0000fa70  69 6d 70 5f 47 65 74 50  6f 69 6e 74 65 72 49 6e  |imp_GetPointerIn|
0000fa80  66 6f 22 2c 2c 42 4c 4b  25 2b 31 32 38 3a 4d 42  |fo",,BLK%+128:MB|
0000fa90  55 25 3d 42 4c 4b 25 21  31 33 36 0d 48 94 30 c8  |U%=BLK%!136.H.0.|
0000faa0  99 20 22 57 69 6d 70 5f  44 65 63 6f 64 65 4d 65  |. "Wimp_DecodeMe|
0000fab0  6e 75 22 2c 2c a4 63 6d  61 64 28 4d 45 4e 4f 25  |nu",,.cmad(MENO%|
0000fac0  29 2c 42 4c 4b 25 2c 53  45 4c 25 0d 48 9e 0a 44  |),BLK%,SEL%.H..D|
0000fad0  53 49 25 3d a3 0d 48 a8  5c 53 45 4c 24 3d 24 53  |SI%=..H.\SEL$=$S|
0000fae0  45 4c 25 3a 49 54 24 3d  22 22 3a 48 45 25 3d a9  |EL%:IT$="":HE%=.|
0000faf0  28 53 45 4c 24 29 3a c8  95 20 c1 53 45 4c 24 2c  |(SEL$):.. .SEL$,|
0000fb00  48 45 25 2c 31 29 3c 3e  22 20 22 20 80 20 48 45  |HE%,1)<>" " . HE|
0000fb10  25 3e 31 3a 49 54 24 3d  c1 53 45 4c 24 2c 48 45  |%>1:IT$=.SEL$,HE|
0000fb20  25 2c 31 29 2b 49 54 24  3a 48 45 25 2d 3d 31 3a  |%,1)+IT$:HE%-=1:|
0000fb30  ce 0d 48 b2 77 e7 20 a7  49 54 24 2c 22 5e 22 29  |..H.w. .IT$,"^")|
0000fb40  3c 3e 30 20 84 20 a7 49  54 24 2c 22 8b 22 29 3c  |<>0 . .IT$,".")<|
0000fb50  3e 30 20 84 20 28 a9 28  49 54 24 29 3c 3d 33 20  |>0 . (.(IT$)<=3 |
0000fb60  80 20 c0 49 54 24 2c 31  29 3d 22 66 22 29 20 8c  |. .IT$,1)="f") .|
0000fb70  20 53 45 4c 24 3d c0 53  45 4c 24 2c 48 45 25 29  | SEL$=.SEL$,HE%)|
0000fb80  3a f5 3a 53 45 4c 24 3d  c0 53 45 4c 24 2c a9 28  |:.:SEL$=.SEL$,.(|
0000fb90  53 45 4c 24 29 2d 31 29  3a fd 20 c2 53 45 4c 24  |SEL$)-1):. .SEL$|
0000fba0  2c 31 29 3c 3e 22 20 22  0d 48 bc 2c e7 20 c2 53  |,1)<>" ".H.,. .S|
0000fbb0  45 4c 24 2c 33 29 3d 22  2e 2e 2e 22 20 8c 20 53  |EL$,3)="..." . S|
0000fbc0  45 4c 24 3d c0 53 45 4c  24 2c a9 28 53 45 4c 24  |EL$=.SEL$,.(SEL$|
0000fbd0  29 2d 33 29 0d 48 c6 84  e7 20 a7 53 45 4c 24 2c  |)-3).H... .SEL$,|
0000fbe0  22 2e 22 29 3c 3e 30 20  80 20 c0 53 45 4c 24 2c  |".")<>0 . .SEL$,|
0000fbf0  35 29 3c 3e 22 54 65 78  74 2e 22 20 80 20 c0 53  |5)<>"Text." . .S|
0000fc00  45 4c 24 2c 31 36 29 3c  3e 22 53 70 65 63 69 61  |EL$,16)<>"Specia|
0000fc10  6c 2e 44 65 2d 74 69 6e  74 2e 22 20 80 20 c0 53  |l.De-tint." . .S|
0000fc20  45 4c 24 2c 31 34 29 3c  3e 22 46 69 6c 65 2e 50  |EL$,14)<>"File.P|
0000fc30  72 65 73 65 72 76 65 2e  22 20 80 20 c0 53 45 4c  |reserve." . .SEL|
0000fc40  24 2c 31 33 29 3c 3e 22  46 69 6c 65 2e 52 65 73  |$,13)<>"File.Res|
0000fc50  74 6f 72 65 2e 22 20 8c  0d 48 d0 49 42 24 3d 22  |tore." ..H.IB$="|
0000fc60  22 3a c8 95 20 c2 53 45  4c 24 2c 31 29 3c 3e 22  |":.. .SEL$,1)<>"|
0000fc70  2e 22 3a 42 24 3d c2 53  45 4c 24 2c 31 29 2b 42  |.":B$=.SEL$,1)+B|
0000fc80  24 3a 53 45 4c 24 3d c0  53 45 4c 24 2c a9 28 53  |$:SEL$=.SEL$,.(S|
0000fc90  45 4c 24 29 2d 31 29 3a  ce 3a 53 45 4c 24 3d 42  |EL$)-1):.:SEL$=B|
0000fca0  24 0d 48 da 05 cd 0d 48  e4 0e 24 53 45 4c 25 3d  |$.H....H..$SEL%=|
0000fcb0  53 45 4c 24 0d 48 ee 56  e7 20 24 53 45 4c 25 3d  |SEL$.H.V. $SEL%=|
0000fcc0  22 51 75 69 74 22 20 8c  20 f2 6b 69 6c 6c 66 3a  |"Quit" . .killf:|
0000fcd0  46 55 53 45 25 3d 2d 31  3a f2 77 69 6e 64 6e 61  |FUSE%=-1:.windna|
0000fce0  6d 65 28 32 2c 50 49 43  24 29 3a f2 66 6f 72 63  |me(2,PIC$):.forc|
0000fcf0  65 64 72 61 77 6d 61 69  6e 3a e7 20 a4 71 75 69  |edrawmain:. .qui|
0000fd00  74 79 6e 20 8c 20 f2 64  69 65 0d 48 f8 23 e7 20  |tyn . .die.H.#. |
0000fd10  24 53 45 4c 25 3d 22 50  61 69 6e 74 22 20 8c 20  |$SEL%="Paint" . |
0000fd20  f2 6e 66 28 22 22 2c 2d  31 2c 2d 31 29 0d 49 02  |.nf("",-1,-1).I.|
0000fd30  2c e7 20 24 53 45 4c 25  3d 22 53 68 6f 77 20 70  |,. $SEL%="Show p|
0000fd40  61 6c 65 74 74 65 22 20  8c 20 44 53 49 25 3d b9  |alette" . DSI%=.|
0000fd50  3a f2 6f 70 65 6e 70 61  6c 0d 49 0c 04 0d 49 16  |:.openpal.I...I.|
0000fd60  39 e7 20 24 53 45 4c 25  3d 22 50 61 69 6e 74 62  |9. $SEL%="Paintb|
0000fd70  72 75 73 68 22 20 8c 20  f2 6e 66 28 22 50 61 69  |rush" . .nf("Pai|
0000fd80  6e 74 62 72 75 73 68 22  2c 34 2c 35 29 3a f2 74  |ntbrush",4,5):.t|
0000fd90  6b 68 28 31 30 29 0d 49  20 04 0d 49 2a 49 e7 20  |kh(10).I ..I*I. |
0000fda0  24 53 45 4c 25 3d 22 32  78 32 20 67 72 69 64 22  |$SEL%="2x2 grid"|
0000fdb0  20 8c 20 44 53 49 25 3d  b9 3a 47 52 49 57 49 25  | . DSI%=.:GRIWI%|
0000fdc0  3d 32 3a 47 52 49 48 45  25 3d 32 3a f2 73 65 74  |=2:GRIHE%=2:.set|
0000fdd0  67 72 69 63 3a f2 66 6f  72 63 65 64 72 61 77 6d  |gric:.forcedrawm|
0000fde0  61 69 6e 0d 49 34 49 e7  20 24 53 45 4c 25 3d 22  |ain.I4I. $SEL%="|
0000fdf0  33 78 33 20 67 72 69 64  22 20 8c 20 44 53 49 25  |3x3 grid" . DSI%|
0000fe00  3d b9 3a 47 52 49 57 49  25 3d 33 3a 47 52 49 48  |=.:GRIWI%=3:GRIH|
0000fe10  45 25 3d 33 3a f2 73 65  74 67 72 69 63 3a f2 66  |E%=3:.setgric:.f|
0000fe20  6f 72 63 65 64 72 61 77  6d 61 69 6e 0d 49 3e 49  |orcedrawmain.I>I|
0000fe30  e7 20 24 53 45 4c 25 3d  22 34 78 34 20 67 72 69  |. $SEL%="4x4 gri|
0000fe40  64 22 20 8c 20 44 53 49  25 3d b9 3a 47 52 49 57  |d" . DSI%=.:GRIW|
0000fe50  49 25 3d 34 3a 47 52 49  48 45 25 3d 34 3a f2 73  |I%=4:GRIHE%=4:.s|
0000fe60  65 74 67 72 69 63 3a f2  66 6f 72 63 65 64 72 61  |etgric:.forcedra|
0000fe70  77 6d 61 69 6e 0d 49 48  49 e7 20 24 53 45 4c 25  |wmain.IHI. $SEL%|
0000fe80  3d 22 36 78 36 20 67 72  69 64 22 20 8c 20 44 53  |="6x6 grid" . DS|
0000fe90  49 25 3d b9 3a 47 52 49  57 49 25 3d 36 3a 47 52  |I%=.:GRIWI%=6:GR|
0000fea0  49 48 45 25 3d 36 3a f2  73 65 74 67 72 69 63 3a  |IHE%=6:.setgric:|
0000feb0  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 0d 49  |.forcedrawmain.I|
0000fec0  52 49 e7 20 24 53 45 4c  25 3d 22 38 78 38 20 67  |RI. $SEL%="8x8 g|
0000fed0  72 69 64 22 20 8c 20 44  53 49 25 3d b9 3a 47 52  |rid" . DSI%=.:GR|
0000fee0  49 57 49 25 3d 38 3a 47  52 49 48 45 25 3d 38 3a  |IWI%=8:GRIHE%=8:|
0000fef0  f2 73 65 74 67 72 69 63  3a f2 66 6f 72 63 65 64  |.setgric:.forced|
0000ff00  72 61 77 6d 61 69 6e 0d  49 5c 4d e7 20 24 53 45  |rawmain.I\M. $SE|
0000ff10  4c 25 3d 22 31 36 78 31  36 20 67 72 69 64 22 20  |L%="16x16 grid" |
0000ff20  8c 20 44 53 49 25 3d b9  3a 47 52 49 57 49 25 3d  |. DSI%=.:GRIWI%=|
0000ff30  31 36 3a 47 52 49 48 45  25 3d 31 36 3a f2 73 65  |16:GRIHE%=16:.se|
0000ff40  74 67 72 69 63 3a f2 66  6f 72 63 65 64 72 61 77  |tgric:.forcedraw|
0000ff50  6d 61 69 6e 0d 49 66 4d  e7 20 24 53 45 4c 25 3d  |main.IfM. $SEL%=|
0000ff60  22 33 32 78 33 32 20 67  72 69 64 22 20 8c 20 44  |"32x32 grid" . D|
0000ff70  53 49 25 3d b9 3a 47 52  49 57 49 25 3d 33 32 3a  |SI%=.:GRIWI%=32:|
0000ff80  47 52 49 48 45 25 3d 33  32 3a f2 73 65 74 67 72  |GRIHE%=32:.setgr|
0000ff90  69 63 3a f2 66 6f 72 63  65 64 72 61 77 6d 61 69  |ic:.forcedrawmai|
0000ffa0  6e 0d 49 70 4d e7 20 24  53 45 4c 25 3d 22 33 32  |n.IpM. $SEL%="32|
0000ffb0  78 31 36 20 67 72 69 64  22 20 8c 20 44 53 49 25  |x16 grid" . DSI%|
0000ffc0  3d b9 3a 47 52 49 57 49  25 3d 33 32 3a 47 52 49  |=.:GRIWI%=32:GRI|
0000ffd0  48 45 25 3d 31 36 3a f2  73 65 74 67 72 69 63 3a  |HE%=16:.setgric:|
0000ffe0  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 0d 49  |.forcedrawmain.I|
0000fff0  7a 36 e7 20 24 53 45 4c  25 3d 22 57 69 72 65 20  |z6. $SEL%="Wire |
00010000  65 6c 6c 69 70 73 65 22  20 8c 20 f2 6e 66 28 22  |ellipse" . .nf("|
00010010  57 69 72 65 20 65 6c 6c  69 70 73 65 22 2c 31 31  |Wire ellipse",11|
00010020  2c 2d 31 29 0d 49 84 04  0d 49 8e 4b e7 20 24 53  |,-1).I...I.K. $S|
00010030  45 4c 25 3d 22 57 69 72  65 20 70 61 72 61 6c 6c  |EL%="Wire parall|
00010040  65 6c 6f 67 72 61 6d 22  20 8c 20 f2 6e 66 28 22  |elogram" . .nf("|
00010050  57 69 72 65 20 70 61 72  61 6c 6c 65 6c 6f 67 72  |Wire parallelogr|
00010060  61 6d 22 2c 31 33 2c 2d  31 29 3a f2 74 6b 68 28  |am",13,-1):.tkh(|
00010070  31 37 29 0d 49 98 04 0d  49 a2 36 e7 20 24 53 45  |17).I...I.6. $SE|
00010080  4c 25 3d 22 53 6f 6c 69  64 20 73 65 63 74 6f 72  |L%="Solid sector|
00010090  22 20 8c 20 f2 6e 66 28  22 53 6f 6c 69 64 20 73  |" . .nf("Solid s|
000100a0  65 63 74 6f 72 22 2c 31  36 2c 2d 31 29 0d 49 ac  |ector",16,-1).I.|
000100b0  04 0d 49 b6 48 e7 20 24  53 45 4c 25 3d 22 53 63  |..I.H. $SEL%="Sc|
000100c0  61 6c 65 20 74 6f 20 66  69 74 22 20 8c 20 f2 6e  |ale to fit" . .n|
000100d0  66 28 22 53 63 61 6c 65  20 74 6f 20 66 69 74 22  |f("Scale to fit"|
000100e0  2c 32 33 2c 38 29 3a 46  55 43 4f 25 3d 30 3a f2  |,23,8):FUCO%=0:.|
000100f0  70 61 74 63 68 28 32 33  29 0d 49 c0 04 0d 49 ca  |patch(23).I...I.|
00010100  59 e7 20 24 53 45 4c 25  3d 22 50 69 78 65 6c 20  |Y. $SEL%="Pixel |
00010110  6d 61 70 70 69 6e 67 22  20 8c 20 f2 6e 66 28 22  |mapping" . .nf("|
00010120  50 69 78 65 6c 20 6d 61  70 70 69 6e 67 22 2c 32  |Pixel mapping",2|
00010130  35 2c 2d 31 29 3a 46 55  43 4f 25 3d 31 3a 4f 58  |5,-1):FUCO%=1:OX|
00010140  25 3d 2d 31 3a 4f 59 25  3d 2d 31 3a f2 70 61 74  |%=-1:OY%=-1:.pat|
00010150  63 68 28 32 35 29 0d 49  d4 28 e7 20 53 45 4c 24  |ch(25).I.(. SEL$|
00010160  3d 22 53 6f 6c 69 64 20  6c 69 6e 65 22 20 8c 20  |="Solid line" . |
00010170  44 53 49 25 3d b9 3a 4c  49 54 59 25 3d 35 0d 49  |DSI%=.:LITY%=5.I|
00010180  de 28 e7 20 53 45 4c 24  3d 22 52 65 73 74 61 72  |.(. SEL$="Restar|
00010190  74 65 64 22 20 8c 20 44  53 49 25 3d b9 3a 4c 49  |ted" . DSI%=.:LI|
000101a0  54 59 25 3d 32 31 0d 49  e8 29 e7 20 53 45 4c 24  |TY%=21.I.). SEL$|
000101b0  3d 22 43 6f 6e 74 69 6e  75 6f 75 73 22 20 8c 20  |="Continuous" . |
000101c0  44 53 49 25 3d b9 3a 4c  49 54 59 25 3d 35 33 0d  |DSI%=.:LITY%=53.|
000101d0  49 f2 31 e7 20 53 45 4c  24 3d 22 4f 76 65 72 77  |I.1. SEL$="Overw|
000101e0  72 69 74 65 22 20 8c 20  44 53 49 25 3d b9 3a 55  |rite" . DSI%=.:U|
000101f0  53 45 25 3d 28 55 53 45  25 20 80 20 31 31 32 29  |SE%=(USE% . 112)|
00010200  0d 49 fc 2c e7 20 53 45  4c 24 3d 22 4f 52 22 20  |.I.,. SEL$="OR" |
00010210  8c 20 44 53 49 25 3d b9  3a 55 53 45 25 3d 28 55  |. DSI%=.:USE%=(U|
00010220  53 45 25 20 80 20 31 31  32 29 2b 31 0d 4a 06 2d  |SE% . 112)+1.J.-|
00010230  e7 20 53 45 4c 24 3d 22  41 4e 44 22 20 8c 20 44  |. SEL$="AND" . D|
00010240  53 49 25 3d b9 3a 55 53  45 25 3d 28 55 53 45 25  |SI%=.:USE%=(USE%|
00010250  20 80 20 31 31 32 29 2b  32 0d 4a 10 2d e7 20 53  | . 112)+2.J.-. S|
00010260  45 4c 24 3d 22 45 4f 52  22 20 8c 20 44 53 49 25  |EL$="EOR" . DSI%|
00010270  3d b9 3a 55 53 45 25 3d  28 55 53 45 25 20 80 20  |=.:USE%=(USE% . |
00010280  31 31 32 29 2b 33 0d 4a  1a 30 e7 20 53 45 4c 24  |112)+3.J.0. SEL$|
00010290  3d 22 49 6e 76 65 72 74  22 20 8c 20 44 53 49 25  |="Invert" . DSI%|
000102a0  3d b9 3a 55 53 45 25 3d  28 55 53 45 25 20 80 20  |=.:USE%=(USE% . |
000102b0  31 31 32 29 2b 34 0d 4a  24 2e e7 20 53 45 4c 24  |112)+4.J$.. SEL$|
000102c0  3d 22 4e 41 4e 44 22 20  8c 20 44 53 49 25 3d b9  |="NAND" . DSI%=.|
000102d0  3a 55 53 45 25 3d 28 55  53 45 25 20 80 20 31 31  |:USE%=(USE% . 11|
000102e0  32 29 2b 36 0d 4a 2e 2d  e7 20 53 45 4c 24 3d 22  |2)+6.J.-. SEL$="|
000102f0  4e 4f 52 22 20 8c 20 44  53 49 25 3d b9 3a 55 53  |NOR" . DSI%=.:US|
00010300  45 25 3d 28 55 53 45 25  20 80 20 31 31 32 29 2b  |E%=(USE% . 112)+|
00010310  37 0d 4a 38 6c e7 20 53  45 4c 24 3d 22 45 43 46  |7.J8l. SEL$="ECF|
00010320  20 31 22 20 80 20 28 55  53 45 25 20 80 20 31 31  | 1" . (USE% . 11|
00010330  32 29 3d 31 36 20 8c 20  44 53 49 25 3d b9 3a 55  |2)=16 . DSI%=.:U|
00010340  53 45 25 3d 28 55 53 45  25 20 80 20 31 35 29 20  |SE%=(USE% . 15) |
00010350  8b 20 e7 20 53 45 4c 24  3d 22 45 43 46 20 31 22  |. . SEL$="ECF 1"|
00010360  20 8c 20 44 53 49 25 3d  b9 3a 55 53 45 25 3d 28  | . DSI%=.:USE%=(|
00010370  55 53 45 25 20 80 20 31  35 29 2b 31 36 0d 4a 42  |USE% . 15)+16.JB|
00010380  6c e7 20 53 45 4c 24 3d  22 45 43 46 20 32 22 20  |l. SEL$="ECF 2" |
00010390  80 20 28 55 53 45 25 20  80 20 31 31 32 29 3d 33  |. (USE% . 112)=3|
000103a0  32 20 8c 20 44 53 49 25  3d b9 3a 55 53 45 25 3d  |2 . DSI%=.:USE%=|
000103b0  28 55 53 45 25 20 80 20  31 35 29 20 8b 20 e7 20  |(USE% . 15) . . |
000103c0  53 45 4c 24 3d 22 45 43  46 20 32 22 20 8c 20 44  |SEL$="ECF 2" . D|
000103d0  53 49 25 3d b9 3a 55 53  45 25 3d 28 55 53 45 25  |SI%=.:USE%=(USE%|
000103e0  20 80 20 31 35 29 2b 33  32 0d 4a 4c 6c e7 20 53  | . 15)+32.JLl. S|
000103f0  45 4c 24 3d 22 45 43 46  20 33 22 20 80 20 28 55  |EL$="ECF 3" . (U|
00010400  53 45 25 20 80 20 31 31  32 29 3d 34 38 20 8c 20  |SE% . 112)=48 . |
00010410  44 53 49 25 3d b9 3a 55  53 45 25 3d 28 55 53 45  |DSI%=.:USE%=(USE|
00010420  25 20 80 20 31 35 29 20  8b 20 e7 20 53 45 4c 24  |% . 15) . . SEL$|
00010430  3d 22 45 43 46 20 33 22  20 8c 20 44 53 49 25 3d  |="ECF 3" . DSI%=|
00010440  b9 3a 55 53 45 25 3d 28  55 53 45 25 20 80 20 31  |.:USE%=(USE% . 1|
00010450  35 29 2b 34 38 0d 4a 56  6c e7 20 53 45 4c 24 3d  |5)+48.JVl. SEL$=|
00010460  22 45 43 46 20 34 22 20  80 20 28 55 53 45 25 20  |"ECF 4" . (USE% |
00010470  80 20 31 31 32 29 3d 36  34 20 8c 20 44 53 49 25  |. 112)=64 . DSI%|
00010480  3d b9 3a 55 53 45 25 3d  28 55 53 45 25 20 80 20  |=.:USE%=(USE% . |
00010490  31 35 29 20 8b 20 e7 20  53 45 4c 24 3d 22 45 43  |15) . . SEL$="EC|
000104a0  46 20 34 22 20 8c 20 44  53 49 25 3d b9 3a 55 53  |F 4" . DSI%=.:US|
000104b0  45 25 3d 28 55 53 45 25  20 80 20 31 35 29 2b 36  |E%=(USE% . 15)+6|
000104c0  34 0d 4a 60 74 e7 20 53  45 4c 24 3d 22 47 69 61  |4.J`t. SEL$="Gia|
000104d0  6e 74 20 45 43 46 22 20  80 20 28 55 53 45 25 20  |nt ECF" . (USE% |
000104e0  80 20 31 31 32 29 3d 38  30 20 8c 20 44 53 49 25  |. 112)=80 . DSI%|
000104f0  3d b9 3a 55 53 45 25 3d  28 55 53 45 25 20 80 20  |=.:USE%=(USE% . |
00010500  31 35 29 20 8b 20 e7 20  53 45 4c 24 3d 22 47 69  |15) . . SEL$="Gi|
00010510  61 6e 74 20 45 43 46 22  20 8c 20 44 53 49 25 3d  |ant ECF" . DSI%=|
00010520  b9 3a 55 53 45 25 3d 28  55 53 45 25 20 80 20 31  |.:USE%=(USE% . 1|
00010530  35 29 2b 38 30 0d 4a 6a  33 e7 20 53 45 4c 24 3d  |5)+80.Jj3. SEL$=|
00010540  22 53 6d 75 64 67 65 20  61 72 65 61 22 20 8c 20  |"Smudge area" . |
00010550  f2 6e 66 28 22 53 6d 75  64 67 65 20 61 72 65 61  |.nf("Smudge area|
00010560  22 2c 32 37 2c 2d 31 29  0d 4a 74 36 e7 20 24 53  |",27,-1).Jt6. $S|
00010570  45 4c 25 3d 22 56 65 72  79 20 66 61 73 74 22 20  |EL%="Very fast" |
00010580  8c 20 4d 4d 59 25 3d 34  3a 4d 4d 58 25 3d 34 3a  |. MMY%=4:MMX%=4:|
00010590  c8 97 20 88 20 4d 4d 58  25 2c 4d 4d 59 25 0d 4a  |.. . MMX%,MMY%.J|
000105a0  7e 31 e7 20 24 53 45 4c  25 3d 22 46 61 73 74 22  |~1. $SEL%="Fast"|
000105b0  20 8c 20 4d 4d 59 25 3d  33 3a 4d 4d 58 25 3d 33  | . MMY%=3:MMX%=3|
000105c0  3a c8 97 20 88 20 4d 4d  58 25 2c 4d 4d 59 25 0d  |:.. . MMX%,MMY%.|
000105d0  4a 88 33 e7 20 24 53 45  4c 25 3d 22 4d 65 64 69  |J.3. $SEL%="Medi|
000105e0  75 6d 22 20 8c 20 4d 4d  59 25 3d 32 3a 4d 4d 58  |um" . MMY%=2:MMX|
000105f0  25 3d 32 3a c8 97 20 88  20 4d 4d 58 25 2c 4d 4d  |%=2:.. . MMX%,MM|
00010600  59 25 0d 4a 92 31 e7 20  24 53 45 4c 25 3d 22 53  |Y%.J.1. $SEL%="S|
00010610  6c 6f 77 22 20 8c 20 4d  4d 59 25 3d 31 3a 4d 4d  |low" . MMY%=1:MM|
00010620  58 25 3d 31 3a c8 97 20  88 20 4d 4d 58 25 2c 4d  |X%=1:.. . MMX%,M|
00010630  4d 59 25 0d 4a 9c 3f e7  20 24 53 45 4c 25 3d 22  |MY%.J.?. $SEL%="|
00010640  52 47 42 20 63 6f 6e 74  72 6f 6c 22 20 8c 20 f2  |RGB control" . .|
00010650  6e 66 28 22 52 47 42 20  63 6f 6e 74 72 6f 6c 22  |nf("RGB control"|
00010660  2c 33 38 2c 32 31 29 3a  f2 70 61 74 63 68 28 33  |,38,21):.patch(3|
00010670  38 29 0d 4a a6 33 e7 20  24 53 45 4c 25 3d 22 57  |8).J.3. $SEL%="W|
00010680  69 70 65 20 70 69 63 74  75 72 65 22 20 8c 20 f2  |ipe picture" . .|
00010690  6e 66 28 22 22 2c 2d 31  2c 2d 31 29 3a f2 77 69  |nf("",-1,-1):.wi|
000106a0  70 65 70 69 63 0d 4a b0  30 e7 20 24 53 45 4c 25  |pepic.J.0. $SEL%|
000106b0  3d 22 43 75 72 73 6f 72  20 6b 65 79 73 22 20 8c  |="Cursor keys" .|
000106c0  20 4b 55 4b 45 25 3d ac  20 4b 55 4b 45 25 3a 44  | KUKE%=. KUKE%:D|
000106d0  53 49 25 3d b9 0d 4a ba  49 e7 20 24 53 45 4c 25  |SI%=..J.I. $SEL%|
000106e0  3d 22 43 6f 6e 74 72 61  73 74 20 63 6f 6e 74 72  |="Contrast contr|
000106f0  6f 6c 22 20 8c 20 f2 6e  66 28 22 43 6f 6e 74 72  |ol" . .nf("Contr|
00010700  61 73 74 20 63 6f 6e 74  72 6f 6c 22 2c 34 33 2c  |ast control",43,|
00010710  32 36 29 3a f2 70 61 74  63 68 28 34 33 29 0d 4a  |26):.patch(43).J|
00010720  c4 04 0d 4a ce 29 e7 20  53 45 4c 24 3d 22 46 69  |...J.). SEL$="Fi|
00010730  6c 74 65 72 22 20 8c 20  f2 6e 66 28 22 46 69 6c  |lter" . .nf("Fil|
00010740  74 65 72 22 2c 34 37 2c  32 39 29 0d 4a d8 60 e7  |ter",47,29).J.`.|
00010750  20 53 45 4c 24 3d 22 57  6f 62 62 6c 65 22 20 8c  | SEL$="Wobble" .|
00010760  20 c8 99 26 32 45 2c 32  35 36 2b 39 2c 53 48 4f  | ..&2E,256+9,SHO|
00010770  57 25 3a c8 99 26 32 45  2c 32 36 36 2c 53 48 4f  |W%:..&2E,266,SHO|
00010780  57 25 2c 22 3c 49 6d 61  67 65 72 79 24 44 69 72  |W%,"<Imagery$Dir|
00010790  3e 2e 53 68 6f 77 22 3a  f2 6e 66 28 22 57 6f 62  |>.Show":.nf("Wob|
000107a0  62 6c 65 22 2c 34 38 2c  33 30 29 0d 4a e2 3d e7  |ble",48,30).J.=.|
000107b0  20 24 53 45 4c 25 3d 22  42 72 69 6e 67 20 74 6f  | $SEL%="Bring to|
000107c0  20 74 6f 70 22 20 80 20  4c 41 4f 50 57 49 25 3c  | top" . LAOPWI%<|
000107d0  3e 2d 31 20 8c 20 f2 6f  70 65 6e 77 69 6e 64 28  |>-1 . .openwind(|
000107e0  4c 41 4f 50 57 49 25 29  0d 4a ec 04 0d 4a f6 45  |LAOPWI%).J...J.E|
000107f0  e7 20 53 45 4c 24 3d 22  46 75 6c 6c 20 6d 65 6e  |. SEL$="Full men|
00010800  75 73 22 20 8c 20 4b 53  43 25 3d ac 20 4b 53 43  |us" . KSC%=. KSC|
00010810  25 3a f2 62 75 69 6c 64  6d 6d 32 3a f2 62 75 69  |%:.buildmm2:.bui|
00010820  6c 64 69 63 6f 6e 6d 65  6e 75 3a 44 53 49 25 3d  |ldiconmenu:DSI%=|
00010830  b9 0d 4b 00 1f e7 20 44  53 49 25 20 80 20 4d 42  |..K... DSI% . MB|
00010840  55 25 3d 31 20 8c 20 f2  77 69 6e 64 6d 65 6e 75  |U%=1 . .windmenu|
00010850  0d 4b 0a 05 e1 0d 4b 14  04 0d 4b 1e 42 dd f2 75  |.K....K...K.B..u|
00010860  64 3a e7 20 55 4e 44 4f  25 3c 3e 2d 31 20 8c 20  |d:. UNDO%<>-1 . |
00010870  21 56 41 52 53 3d 50 49  43 25 3a 56 41 52 53 21  |!VARS=PIC%:VARS!|
00010880  34 3d 55 4e 44 4f 25 3a  41 25 3d 56 41 52 53 3a  |4=UNDO%:A%=VARS:|
00010890  d6 20 62 61 63 6b 75 70  70 69 63 0d 4b 28 05 e1  |. backuppic.K(..|
000108a0  0d 4b 32 04 0d 4b 3c 12  dd f2 6e 66 28 46 24 2c  |.K2..K<...nf(F$,|
000108b0  46 25 2c 57 25 29 0d 4b  46 4b f2 6b 69 6c 6c 66  |F%,W%).KFK.killf|
000108c0  3a e7 20 46 24 3c 3e 22  22 20 8c 20 f2 75 64 3a  |:. F$<>"" . .ud:|
000108d0  f2 77 69 6e 64 6e 61 6d  65 28 32 2c 50 49 43 24  |.windname(2,PIC$|
000108e0  2b 22 20 5b 22 2b 46 24  2b 22 5d 22 29 20 8b 20  |+" ["+F$+"]") . |
000108f0  f2 77 69 6e 64 6e 61 6d  65 28 32 2c 50 49 43 24  |.windname(2,PIC$|
00010900  29 0d 4b 50 3c 46 55 53  45 25 3d 46 25 3a 46 55  |).KP<FUSE%=F%:FU|
00010910  53 54 25 3d 30 3a 44 53  49 25 3d b9 3a f2 73 70  |ST%=0:DSI%=.:.sp|
00010920  69 6e 69 74 3a e7 20 57  25 3c 3e 2d 31 20 8c 20  |init:. W%<>-1 . |
00010930  f2 6f 70 65 6e 77 69 6e  64 28 57 25 29 0d 4b 5a  |.openwind(W%).KZ|
00010940  05 e1 0d 4b 64 04 0d 4b  6e 0d dd f2 77 69 70 65  |...Kd..Kn...wipe|
00010950  70 69 63 0d 4b 78 43 21  49 4f 25 3d 35 3a 24 28  |pic.KxC!IO%=5:$(|
00010960  49 4f 25 2b 34 29 3d 22  41 72 65 20 79 6f 75 20  |IO%+4)="Are you |
00010970  73 75 72 65 20 79 6f 75  20 77 61 6e 74 20 74 6f  |sure you want to|
00010980  20 77 69 70 65 20 74 68  65 20 70 69 63 74 75 72  | wipe the pictur|
00010990  65 3f 22 2b bd 30 0d 4b  82 38 c8 99 20 22 57 69  |e?"+.0.K.8.. "Wi|
000109a0  6d 70 5f 52 65 70 6f 72  74 45 72 72 6f 72 22 2c  |mp_ReportError",|
000109b0  49 4f 25 2c 25 31 31 30  31 31 2c 22 21 49 6d 61  |IO%,%11011,"!Ima|
000109c0  67 65 72 79 22 2b bd 30  20 b8 20 2c 52 25 0d 4b  |gery"+.0 . ,R%.K|
000109d0  8c 13 e7 20 52 25 3d 30  20 8c 20 e5 20 8d 70 42  |... R%=0 . . .pB|
000109e0  4b 0d 4b 96 0e e7 20 52  25 3d 32 20 8c 20 e1 0d  |K.K... R%=2 . ..|
000109f0  4b a0 33 f2 69 6e 70 69  63 3a ef 32 36 3a e6 30  |K.3.inpic:.26:.0|
00010a00  2c 31 32 38 20 c8 9c 20  30 3a da 3a f2 6f 75 74  |,128 .. 0:.:.out|
00010a10  70 69 63 3a f2 66 6f 72  63 65 64 72 61 77 6d 61  |pic:.forcedrawma|
00010a20  69 6e 0d 4b aa 05 e1 0d  4b b4 04 0d 4b be 0c dd  |in.K....K...K...|
00010a30  a4 71 75 69 74 79 6e 0d  4b c8 37 21 49 4f 25 3d  |.quityn.K.7!IO%=|
00010a40  35 3a 24 28 49 4f 25 2b  34 29 3d 22 41 72 65 20  |5:$(IO%+4)="Are |
00010a50  79 6f 75 20 73 75 72 65  20 79 6f 75 20 77 61 6e  |you sure you wan|
00010a60  74 20 74 6f 20 71 75 69  74 3f 22 2b bd 30 0d 4b  |t to quit?"+.0.K|
00010a70  d2 38 c8 99 20 22 57 69  6d 70 5f 52 65 70 6f 72  |.8.. "Wimp_Repor|
00010a80  74 45 72 72 6f 72 22 2c  49 4f 25 2c 25 31 31 30  |tError",IO%,%110|
00010a90  31 31 2c 22 21 49 6d 61  67 65 72 79 22 2b bd 30  |11,"!Imagery"+.0|
00010aa0  20 b8 20 2c 52 25 0d 4b  dc 13 e7 20 52 25 3d 30  | . ,R%.K... R%=0|
00010ab0  20 8c 20 e5 20 8d 60 52  4b 0d 4b e6 0b 3d 28 52  | . . .`RK.K..=(R|
00010ac0  25 3d 31 29 0d 4b f0 04  0d 4b fa 0c dd f2 69 6d  |%=1).K...K....im|
00010ad0  70 6f 72 74 0d 4c 04 56  41 24 3d a4 67 65 74 6e  |port.L.VA$=.getn|
00010ae0  61 6d 65 3a 42 4c 4b 25  21 31 32 3d 42 4c 4b 25  |ame:BLK%!12=BLK%|
00010af0  21 38 3a 42 4c 4b 25 21  31 36 3d 34 3a 21 42 4c  |!8:BLK%!16=4:!BL|
00010b00  4b 25 3d 36 34 3a c8 99  20 22 57 69 6d 70 5f 53  |K%=64:.. "Wimp_S|
00010b10  65 6e 64 4d 65 73 73 61  67 65 22 2c 31 37 2c 42  |endMessage",17,B|
00010b20  4c 4b 25 2c 42 4c 4b 25  21 34 0d 4c 0e 30 f2 6b  |LK%,BLK%!4.L.0.k|
00010b30  69 6c 6c 66 3a 46 55 53  45 25 3d 33 34 3a 46 55  |illf:FUSE%=34:FU|
00010b40  53 54 25 3d 30 3a f2 6f  70 65 6e 77 69 6e 64 28  |ST%=0:.openwind(|
00010b50  38 29 3a f2 73 70 69 6e  69 74 0d 4c 18 1b 46 25  |8):.spinit.L..F%|
00010b60  3d ad 28 41 24 29 3a 49  4d 53 25 3d a2 23 46 25  |=.(A$):IMS%=.#F%|
00010b70  3a d9 23 46 25 0d 4c 22  43 f2 73 70 62 75 66 28  |:.#F%.L"C.spbuf(|
00010b80  49 4d 53 25 2b 36 34 29  3a e7 20 51 25 20 8c 20  |IMS%+64):. Q% . |
00010b90  46 55 53 45 25 3d 2d 31  3a f2 63 6c 6f 73 65 77  |FUSE%=-1:.closew|
00010ba0  69 6e 64 28 38 29 3a f2  73 70 69 6e 69 74 3a f2  |ind(8):.spinit:.|
00010bb0  73 70 62 75 66 65 72 72  0d 4c 2c 17 c8 99 26 32  |spbuferr.L,...&2|
00010bc0  45 2c 32 36 36 2c 53 50  42 55 46 25 2c 41 24 0d  |E,266,SPBUF%,A$.|
00010bd0  4c 36 25 c8 99 26 32 45  2c 32 36 39 2c 53 50 42  |L6%..&2E,269,SPB|
00010be0  55 46 25 2c 49 4f 25 2c  31 36 2c 31 20 b8 20 2c  |UF%,IO%,16,1 . ,|
00010bf0  2c 2c 4c 25 0d 4c 40 2e  49 4d 50 24 3d 22 22 3a  |,,L%.L@.IMP$="":|
00010c00  e3 4b 25 3d 30 20 b8 20  4c 25 2d 31 3a 49 4d 50  |.K%=0 . L%-1:IMP|
00010c10  24 3d 49 4d 50 24 2b bd  28 49 4f 25 3f 4b 25 29  |$=IMP$+.(IO%?K%)|
00010c20  3a ed 0d 4c 4a 2e c8 99  26 32 45 2c 32 39 36 2c  |:..LJ...&2E,296,|
00010c30  53 50 42 55 46 25 2c 49  4d 50 24 20 b8 20 2c 2c  |SPBUF%,IMP$ . ,,|
00010c40  2c 49 4d 57 25 2c 49 4d  48 25 2c 2c 49 4d 4d 25  |,IMW%,IMH%,,IMM%|
00010c50  0d 4c 54 23 e7 20 47 52  46 58 25 20 8c 20 c8 99  |.LT#. GRFX% . ..|
00010c60  26 32 45 2c 32 38 39 2c  53 50 42 55 46 25 2c 49  |&2E,289,SPBUF%,I|
00010c70  4d 50 24 0d 4c 5e 23 e7  20 47 52 46 59 25 20 8c  |MP$.L^#. GRFY% .|
00010c80  20 c8 99 26 32 45 2c 33  30 33 2c 53 50 42 55 46  | ..&2E,303,SPBUF|
00010c90  25 2c 49 4d 50 24 0d 4c  68 17 c8 99 26 33 35 2c  |%,IMP$.Lh...&35,|
00010ca0  49 4d 4d 25 2c 35 20 b8  20 2c 2c 45 25 0d 4c 72  |IMM%,5 . ,,E%.Lr|
00010cb0  48 50 48 45 25 3d 32 5e  45 25 3a e7 20 45 25 3c  |HPHE%=2^E%:. E%<|
00010cc0  32 20 8c 20 49 4f 25 21  34 3d 31 3a 49 4f 25 21  |2 . IO%!4=1:IO%!|
00010cd0  31 32 3d 32 5e 28 32 2d  45 25 29 20 8b 20 49 4f  |12=2^(2-E%) . IO|
00010ce0  25 21 34 3d 32 5e 28 45  25 2d 32 29 3a 49 4f 25  |%!4=2^(E%-2):IO%|
00010cf0  21 31 32 3d 31 0d 4c 7c  17 c8 99 26 33 35 2c 49  |!12=1.L|...&35,I|
00010d00  4d 4d 25 2c 34 20 b8 20  2c 2c 45 25 0d 4c 86 0d  |MM%,4 . ,,E%.L..|
00010d10  50 57 49 25 3d 32 5e 45  25 0d 4c 90 21 53 58 25  |PWI%=2^E%.L.!SX%|
00010d20  3d 32 5e 28 45 25 2d 31  29 3a 21 49 4f 25 3d 53  |=2^(E%-1):!IO%=S|
00010d30  58 25 3a 49 4f 25 21 38  3d 31 0d 4c 9a 27 4c 25  |X%:IO%!8=1.L.'L%|
00010d40  3d 28 53 50 42 55 46 25  2b 28 53 50 42 55 46 25  |=(SPBUF%+(SPBUF%|
00010d50  21 38 29 29 3a e7 20 4c  25 21 33 32 3d 34 34 20  |!8)):. L%!32=44 |
00010d60  8c 0d 4c a4 0b 49 4d 50  41 25 3d 30 0d 4c ae 05  |..L..IMPA%=0.L..|
00010d70  cc 0d 4c b8 43 49 4d 50  41 25 3d 4c 25 2b 34 34  |..L.CIMPA%=L%+44|
00010d80  3a 4b 25 3d 34 38 3a 49  25 3d 35 32 3a c8 95 20  |:K%=48:I%=52:.. |
00010d90  49 25 3c 28 4c 25 21 33  32 29 3a 4c 25 21 4b 25  |I%<(L%!32):L%!K%|
00010da0  3d 4c 25 21 49 25 3a 49  25 2b 3d 38 3a 4b 25 2b  |=L%!I%:I%+=8:K%+|
00010db0  3d 34 3a ce 0d 4c c2 05  cd 0d 4c cc 56 e7 20 49  |=4:..L....L.V. I|
00010dc0  4d 4d 25 3c 3e 31 35 20  84 20 49 4d 50 41 25 3c  |MM%<>15 . IMPA%<|
00010dd0  3e 30 20 8c 20 c8 99 26  34 30 37 34 30 2c 49 4d  |>0 . ..&40740,IM|
00010de0  4d 25 2c 49 4d 50 41 25  2c 31 35 2c 30 2c 50 49  |M%,IMPA%,15,0,PI|
00010df0  58 54 41 42 32 25 3a 49  4d 50 54 25 3d 50 49 58  |XTAB2%:IMPT%=PIX|
00010e00  54 41 42 32 25 20 8b 20  49 4d 50 54 25 3d 30 0d  |TAB2% . IMPT%=0.|
00010e10  4c d6 30 f2 75 64 3a f2  77 69 6e 64 6e 61 6d 65  |L.0.ud:.windname|
00010e20  28 32 2c 50 49 43 24 2b  22 20 5b 49 6d 70 6f 72  |(2,PIC$+" [Impor|
00010e30  74 20 27 22 2b 49 4d 50  24 2b 22 27 5d 22 29 0d  |t '"+IMP$+"']").|
00010e40  4c e0 21 49 4d 48 25 3d  49 4d 48 25 2a 50 48 45  |L.!IMH%=IMH%*PHE|
00010e50  25 3a 49 4d 57 25 3d 49  4d 57 25 2a 50 57 49 25  |%:IMW%=IMW%*PWI%|
00010e60  0d 4c ea 0d 47 52 4e 24  3d 49 4d 50 24 0d 4c f4  |.L..GRN$=IMP$.L.|
00010e70  05 e1 0d 4c fe 04 0d 4d  08 0c dd f2 69 6d 70 63  |...L...M....impc|
00010e80  65 6e 0d 4d 12 45 f2 69  6e 70 69 63 3a f2 70 69  |en.M.E.inpic:.pi|
00010e90  6d 70 6f 72 74 28 36 34  30 2c 35 31 32 2c 30 29  |mport(640,512,0)|
00010ea0  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
00010eb0  72 61 77 6d 61 69 6e 3a  f2 6b 69 6c 6c 66 3a 46  |rawmain:.killf:F|
00010ec0  55 53 45 25 3d 2d 31 0d  4d 1c 05 e1 0d 4d 26 04  |USE%=-1.M....M&.|
00010ed0  0d 4d 30 0e dd f2 69 6d  70 73 63 61 6c 65 0d 4d  |.M0...impscale.M|
00010ee0  3a 5b 4f 58 4d 25 3d 47  52 58 4d 25 3a 4f 59 4d  |:[OXM%=GRXM%:OYM|
00010ef0  25 3d 47 52 59 4d 25 3a  4f 58 44 25 3d 47 52 58  |%=GRYM%:OXD%=GRX|
00010f00  44 25 3a 4f 59 44 25 3d  47 52 59 44 25 3a 47 52  |D%:OYD%=GRYD%:GR|
00010f10  58 4d 25 3d 31 32 38 30  3a 47 52 59 4d 25 3d 31  |XM%=1280:GRYM%=1|
00010f20  30 32 34 3a 47 52 58 44  25 3d 49 4d 57 25 3a 47  |024:GRXD%=IMW%:G|
00010f30  52 59 44 25 3d 49 4d 48  25 0d 4d 44 71 f2 69 6e  |RYD%=IMH%.MDq.in|
00010f40  70 69 63 3a f2 70 69 6d  70 6f 72 74 28 36 34 30  |pic:.pimport(640|
00010f50  2c 35 31 32 2c 30 29 3a  f2 6f 75 74 70 69 63 3a  |,512,0):.outpic:|
00010f60  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 3a f2  |.forcedrawmain:.|
00010f70  6b 69 6c 6c 66 3a 46 55  53 45 25 3d 2d 31 3a 47  |killf:FUSE%=-1:G|
00010f80  52 58 44 25 3d 4f 58 44  25 3a 47 52 59 44 25 3d  |RXD%=OXD%:GRYD%=|
00010f90  4f 59 44 25 3a 47 52 58  4d 25 3d 4f 58 4d 25 3a  |OYD%:GRXM%=OXM%:|
00010fa0  47 52 59 4d 25 3d 4f 59  4d 25 0d 4d 4e 05 e1 0d  |GRYM%=OYM%.MN...|
00010fb0  4d 58 04 0d 4d 62 33 dd  f2 69 6d 70 74 69 6c 65  |MX..Mb3..imptile|
00010fc0  3a f2 70 69 6d 70 6f 72  74 28 58 25 2c 59 25 2c  |:.pimport(X%,Y%,|
00010fd0  30 29 3a e7 20 ac 20 a4  68 69 67 68 28 33 31 2c  |0):. . .high(31,|
00010fe0  35 29 20 8c 20 e1 0d 4d  6c 2b c8 99 20 22 48 6f  |5) . ..Ml+.. "Ho|
00010ff0  75 72 67 6c 61 73 73 5f  4f 6e 22 3a 41 57 3d 58  |urglass_On":AW=X|
00011000  52 2a 49 4d 57 25 3a 41  48 3d 59 52 2a 49 4d 48  |R*IMW%:AH=YR*IMH|
00011010  25 0d 4d 76 b3 4b 25 3d  30 3a f5 3a 4c 25 3d 30  |%.Mv.K%=0:.:L%=0|
00011020  3a f5 3a 4f 58 3d 4b 25  2a 41 57 3a 4f 59 3d 4c  |:.:OX=K%*AW:OY=L|
00011030  25 2a 41 48 3a f2 70 69  6d 70 6f 72 74 28 58 25  |%*AH:.pimport(X%|
00011040  2b 4f 58 2c 59 25 2b 4f  59 2c 30 29 3a f2 70 69  |+OX,Y%+OY,0):.pi|
00011050  6d 70 6f 72 74 28 58 25  2b 4f 58 2c 59 25 2d 4f  |mport(X%+OX,Y%-O|
00011060  59 2c 30 29 3a f2 70 69  6d 70 6f 72 74 28 58 25  |Y,0):.pimport(X%|
00011070  2d 4f 58 2c 59 25 2b 4f  59 2c 30 29 3a f2 70 69  |-OX,Y%+OY,0):.pi|
00011080  6d 70 6f 72 74 28 58 25  2d 4f 58 2c 59 25 2d 4f  |mport(X%-OX,Y%-O|
00011090  59 2c 30 29 3a 4c 25 2b  3d 31 3a fd 20 28 59 25  |Y,0):L%+=1:. (Y%|
000110a0  2b 28 4c 25 2a 41 48 29  29 3e 31 30 32 33 2b 41  |+(L%*AH))>1023+A|
000110b0  48 20 80 20 28 59 25 2d  28 4c 25 2a 41 48 29 29  |H . (Y%-(L%*AH))|
000110c0  3c 2d 41 48 0d 4d 80 33  4b 25 2b 3d 31 3a fd 20  |<-AH.M.3K%+=1:. |
000110d0  28 58 25 2b 28 4b 25 2a  41 57 29 29 3e 31 32 37  |(X%+(K%*AW))>127|
000110e0  39 2b 41 57 20 80 20 28  58 25 2d 28 4b 25 2a 41  |9+AW . (X%-(K%*A|
000110f0  57 29 29 3c 2d 41 57 0d  4d 8a 18 c8 99 20 22 48  |W))<-AW.M.... "H|
00011100  6f 75 72 67 6c 61 73 73  5f 4f 66 66 22 3a e1 0d  |ourglass_Off":..|
00011110  4d 94 04 0d 4d 9e 13 dd  f2 66 69 6c 6c 63 6f 6e  |M...M....fillcon|
00011120  74 63 6c 69 63 6b 0d 4d  a8 14 e7 20 4d 4f 55 49  |tclick.M... MOUI|
00011130  43 25 3c 3e 32 34 20 8c  20 e1 0d 4d b2 0c 47 52  |C%<>24 . ..M..GR|
00011140  46 4e 25 3d 2d 31 0d 4d  bc 1b e7 20 a4 68 69 67  |FN%=-1.M... .hig|
00011150  68 28 31 37 2c 33 29 20  8c 20 47 52 46 4e 25 3d  |h(17,3) . GRFN%=|
00011160  30 0d 4d c6 1b e7 20 a4  68 69 67 68 28 31 37 2c  |0.M... .high(17,|
00011170  39 29 20 8c 20 47 52 46  4e 25 3d 31 0d 4d d0 1c  |9) . GRFN%=1.M..|
00011180  e7 20 a4 68 69 67 68 28  31 37 2c 31 32 29 20 8c  |. .high(17,12) .|
00011190  20 47 52 46 4e 25 3d 32  0d 4d da 1c e7 20 a4 68  | GRFN%=2.M... .h|
000111a0  69 67 68 28 31 37 2c 31  35 29 20 8c 20 47 52 46  |igh(17,15) . GRF|
000111b0  4e 25 3d 33 0d 4d e4 1c  e7 20 a4 68 69 67 68 28  |N%=3.M... .high(|
000111c0  31 37 2c 31 38 29 20 8c  20 47 52 46 4e 25 3d 34  |17,18) . GRFN%=4|
000111d0  0d 4d ee 46 e7 20 47 52  46 4e 25 3d 2d 31 20 8c  |.M.F. GRFN%=-1 .|
000111e0  20 f2 6d 65 73 73 61 67  65 28 30 2c 22 59 6f 75  | .message(0,"You|
000111f0  20 6d 75 73 74 20 73 65  6c 65 63 74 20 61 20 66  | must select a f|
00011200  69 6c 6c 20 73 65 71 75  65 6e 63 65 20 74 6f 20  |ill sequence to |
00011210  75 73 65 2e 22 29 0d 4d  f8 10 e7 20 46 55 53 45  |use.").M... FUSE|
00011220  25 3d 33 31 20 8c 0d 4e  02 16 e7 20 47 52 54 59  |%=31 ..N... GRTY|
00011230  25 3d 31 20 8c 20 f2 6b  69 6c 6c 66 0d 4e 0c 05  |%=1 . .killf.N..|
00011240  cd 0d 4e 16 0c 47 52 54  59 25 3d 2d 31 0d 4e 20  |..N..GRTY%=-1.N |
00011250  1c e7 20 a4 68 69 67 68  28 31 37 2c 32 30 29 20  |.. .high(17,20) |
00011260  8c 20 47 52 54 59 25 3d  30 0d 4e 2a 24 e7 20 a4  |. GRTY%=0.N*$. .|
00011270  68 69 67 68 28 31 37 2c  32 32 29 20 8c 20 47 52  |high(17,22) . GR|
00011280  54 59 25 3d 31 3a 46 55  53 54 25 3d 30 0d 4e 34  |TY%=1:FUST%=0.N4|
00011290  47 e7 20 47 52 54 59 25  3d 2d 31 20 8c 20 f2 6d  |G. GRTY%=-1 . .m|
000112a0  65 73 73 61 67 65 28 30  2c 22 59 6f 75 20 6d 75  |essage(0,"You mu|
000112b0  73 74 20 73 65 6c 65 63  74 20 74 68 65 20 74 79  |st select the ty|
000112c0  70 65 20 6f 66 20 66 69  6c 6c 20 74 6f 20 75 73  |pe of fill to us|
000112d0  65 2e 22 29 0d 4e 3e 6e  f2 6b 69 6c 6c 66 3a 46  |e.").N>n.killf:F|
000112e0  55 53 45 25 3d 33 31 3a  46 55 53 54 25 3d 30 3a  |USE%=31:FUST%=0:|
000112f0  f2 75 64 3a f2 77 69 6e  64 6e 61 6d 65 28 32 2c  |.ud:.windname(2,|
00011300  50 49 43 24 2b 22 20 5b  47 72 61 64 75 61 74 65  |PIC$+" [Graduate|
00011310  64 20 66 69 6c 6c 20 28  22 2b a4 66 69 6c 6c 64  |d fill ("+.filld|
00011320  65 74 28 47 52 46 4e 25  2b 31 29 2b 22 29 5d 22  |et(GRFN%+1)+")]"|
00011330  29 3a f2 73 70 69 6e 69  74 3a f2 74 6b 68 28 31  |):.spinit:.tkh(1|
00011340  32 29 0d 4e 48 17 e7 20  4d 4f 55 42 25 3d 34 20  |2).NH.. MOUB%=4 |
00011350  8c 20 f2 6d 65 6e 6f 66  66 0d 4e 52 05 e1 0d 4e  |. .menoff.NR...N|
00011360  5c 04 0d 4e 66 11 dd f2  75 6e 73 65 74 72 61 73  |\..Nf...unsetras|
00011370  70 3a e1 0d 4e 70 04 0d  4e 7a 0f dd f2 73 65 74  |p:..Np..Nz...set|
00011380  72 61 73 70 3a e1 0d 4e  84 04 0d 4e 8e 0c dd f2  |rasp:..N...N....|
00011390  73 70 69 6e 69 74 0d 4e  98 0d f2 73 70 62 75 66  |spinit.N...spbuf|
000113a0  28 30 29 0d 4e a2 05 e1  0d 4e ac 04 0d 4e b6 0d  |(0).N....N...N..|
000113b0  dd f2 73 65 74 67 72 69  63 0d 4e c0 15 f2 73 69  |..setgric.N...si|
000113c0  28 36 2c 31 39 2c c3 47  52 49 57 49 25 29 0d 4e  |(6,19,.GRIWI%).N|
000113d0  ca 15 f2 73 69 28 36 2c  32 31 2c c3 47 52 49 48  |...si(6,21,.GRIH|
000113e0  45 25 29 0d 4e d4 57 47  52 42 58 25 3d bb 28 a4  |E%).N.WGRBX%=.(.|
000113f0  67 69 28 36 2c 32 33 29  29 3a e7 20 47 52 42 58  |gi(6,23)):. GRBX|
00011400  25 3e 47 52 49 57 49 25  20 8c 20 f5 3a 47 52 42  |%>GRIWI% . .:GRB|
00011410  58 25 2d 3d 47 52 49 57  49 25 3a fd 20 47 52 42  |X%-=GRIWI%:. GRB|
00011420  58 25 3c 47 52 49 57 49  25 3a f2 73 69 28 36 2c  |X%<GRIWI%:.si(6,|
00011430  32 33 2c c3 47 52 42 58  25 29 0d 4e de 57 47 52  |23,.GRBX%).N.WGR|
00011440  42 59 25 3d bb 28 a4 67  69 28 36 2c 32 35 29 29  |BY%=.(.gi(6,25))|
00011450  3a e7 20 47 52 42 59 25  3e 47 52 49 48 45 25 20  |:. GRBY%>GRIHE% |
00011460  8c 20 f5 3a 47 52 42 59  25 2d 3d 47 52 49 48 45  |. .:GRBY%-=GRIHE|
00011470  25 3a fd 20 47 52 42 59  25 3c 47 52 49 48 45 25  |%:. GRBY%<GRIHE%|
00011480  3a f2 73 69 28 36 2c 32  35 2c c3 47 52 42 59 25  |:.si(6,25,.GRBY%|
00011490  29 0d 4e e8 05 e1 0d 4e  f2 04 0d 4e fc 0e dd f2  |).N....N...N....|
000114a0  7a 6f 6f 6d 73 69 7a 65  0d 4f 06 3e 21 42 4c 4b  |zoomsize.O.>!BLK|
000114b0  25 3d 48 41 4e 44 25 28  32 29 3a c8 99 20 22 57  |%=HAND%(2):.. "W|
000114c0  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
000114d0  74 65 22 2c 2c 42 4c 4b  25 3a 57 49 46 25 3d 42  |te",,BLK%:WIF%=B|
000114e0  4c 4b 25 21 32 38 0d 4f  10 2e 21 42 4c 4b 25 3d  |LK%!28.O..!BLK%=|
000114f0  48 41 4e 44 25 28 32 29  3a c8 99 20 22 57 69 6d  |HAND%(2):.. "Wim|
00011500  70 5f 43 6c 6f 73 65 57  69 6e 64 6f 77 22 2c 2c  |p_CloseWindow",,|
00011510  42 4c 4b 25 0d 4f 1a 5c  21 42 4c 4b 25 3d 30 3a  |BLK%.O.\!BLK%=0:|
00011520  42 4c 4b 25 21 34 3d 2d  31 30 32 33 2a 5a 4f 4f  |BLK%!4=-1023*ZOO|
00011530  4d 25 3a 42 4c 4b 25 21  38 3d 31 32 37 39 2a 5a  |M%:BLK%!8=1279*Z|
00011540  4f 4f 4d 25 3a 42 4c 4b  25 21 31 32 3d 30 3a c8  |OOM%:BLK%!12=0:.|
00011550  99 20 22 57 69 6d 70 5f  53 65 74 45 78 74 65 6e  |. "Wimp_SetExten|
00011560  74 22 2c 48 41 4e 44 25  28 32 29 2c 42 4c 4b 25  |t",HAND%(2),BLK%|
00011570  0d 4f 24 31 21 42 4c 4b  25 3d 48 41 4e 44 25 28  |.O$1!BLK%=HAND%(|
00011580  32 29 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 57  |2):.. "Wimp_GetW|
00011590  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 42 4c 4b  |indowState",,BLK|
000115a0  25 0d 4f 2e 2d 42 4c 4b  25 21 32 38 3d 57 49 46  |%.O.-BLK%!28=WIF|
000115b0  25 3a c8 99 20 22 57 69  6d 70 5f 4f 70 65 6e 57  |%:.. "Wimp_OpenW|
000115c0  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 3a e1 0d 4f  |indow",,BLK%:..O|
000115d0  38 04 0d 4f 42 23 dd f2  77 69 6e 64 5f 65 78 74  |8..OB#..wind_ext|
000115e0  28 57 48 25 2c 54 58 25  2c 54 59 25 2c 53 58 25  |(WH%,TX%,TY%,SX%|
000115f0  2c 53 59 25 29 0d 4f 4c  40 21 42 4c 4b 25 3d 48  |,SY%).OL@!BLK%=H|
00011600  41 4e 44 25 28 57 48 25  29 3a c8 99 20 22 57 69  |AND%(WH%):.. "Wi|
00011610  6d 70 5f 47 65 74 57 69  6e 64 6f 77 53 74 61 74  |mp_GetWindowStat|
00011620  65 22 2c 2c 42 4c 4b 25  3a 57 49 46 25 3d 42 4c  |e",,BLK%:WIF%=BL|
00011630  4b 25 21 32 38 0d 4f 56  30 21 42 4c 4b 25 3d 48  |K%!28.OV0!BLK%=H|
00011640  41 4e 44 25 28 57 48 25  29 3a c8 99 20 22 57 69  |AND%(WH%):.. "Wi|
00011650  6d 70 5f 43 6c 6f 73 65  57 69 6e 64 6f 77 22 2c  |mp_CloseWindow",|
00011660  2c 42 4c 4b 25 0d 4f 60  53 21 42 4c 4b 25 3d 54  |,BLK%.O`S!BLK%=T|
00011670  58 25 3a 42 4c 4b 25 21  34 3d 54 59 25 3a 42 4c  |X%:BLK%!4=TY%:BL|
00011680  4b 25 21 38 3d 53 58 25  3a 42 4c 4b 25 21 31 32  |K%!8=SX%:BLK%!12|
00011690  3d 53 59 25 3a c8 99 20  22 57 69 6d 70 5f 53 65  |=SY%:.. "Wimp_Se|
000116a0  74 45 78 74 65 6e 74 22  2c 48 41 4e 44 25 28 57  |tExtent",HAND%(W|
000116b0  48 25 29 2c 42 4c 4b 25  0d 4f 6a 33 21 42 4c 4b  |H%),BLK%.Oj3!BLK|
000116c0  25 3d 48 41 4e 44 25 28  57 48 25 29 3a c8 99 20  |%=HAND%(WH%):.. |
000116d0  22 57 69 6d 70 5f 47 65  74 57 69 6e 64 6f 77 53  |"Wimp_GetWindowS|
000116e0  74 61 74 65 22 2c 2c 42  4c 4b 25 0d 4f 74 2d e7  |tate",,BLK%.Ot-.|
000116f0  20 57 48 25 3d 31 32 20  80 20 54 59 25 3d 2d 39  | WH%=12 . TY%=-9|
00011700  30 30 20 8c 20 42 4c 4b  25 21 38 3d 28 42 4c 4b  |00 . BLK%!8=(BLK|
00011710  25 21 38 29 2d 32 36 30  0d 4f 7e 2d 42 4c 4b 25  |%!8)-260.O~-BLK%|
00011720  21 32 38 3d 57 49 46 25  3a c8 99 20 22 57 69 6d  |!28=WIF%:.. "Wim|
00011730  70 5f 4f 70 65 6e 57 69  6e 64 6f 77 22 2c 2c 42  |p_OpenWindow",,B|
00011740  4c 4b 25 3a e1 0d 4f 88  05 e1 0d 4f 92 04 0d 4f  |LK%:..O....O...O|
00011750  9c 0c dd f2 65 64 5f 62  72 75 0d 4f a6 27 f2 77  |....ed_bru.O.'.w|
00011760  69 6e 64 5f 65 78 74 28  31 32 2c 30 2c 2d 36 34  |ind_ext(12,0,-64|
00011770  30 2c 31 30 32 34 2c 30  29 3a 45 44 54 59 25 3d  |0,1024,0):EDTY%=|
00011780  30 0d 4f b0 05 e1 0d 4f  ba 04 0d 4f c4 0d dd f2  |0.O....O...O....|
00011790  65 64 5f 66 69 6c 6c 0d  4f ce 27 f2 77 69 6e 64  |ed_fill.O.'.wind|
000117a0  5f 65 78 74 28 31 32 2c  30 2c 2d 39 30 30 2c 31  |_ext(12,0,-900,1|
000117b0  30 32 34 2c 30 29 3a 45  44 54 59 25 3d 31 0d 4f  |024,0):EDTY%=1.O|
000117c0  d8 05 e1 0d 4f e2 04 0d  4f ec 4c dd a4 67 73 74  |....O...O.L..gst|
000117d0  72 28 41 44 25 29 3a 57  24 3d 22 22 3a e7 20 3f  |r(AD%):W$="":. ?|
000117e0  41 44 25 3c 33 32 20 8c  20 3d 57 24 20 8b 20 f5  |AD%<32 . =W$ . .|
000117f0  3a 57 24 3d 57 24 2b bd  28 3f 41 44 25 29 3a 41  |:W$=W$+.(?AD%):A|
00011800  44 25 2b 3d 31 3a fd 20  3f 41 44 25 3c 33 32 3a  |D%+=1:. ?AD%<32:|
00011810  3d 57 24 0d 4f f6 04 0d  50 00 77 dd a4 67 69 28  |=W$.O...P.w..gi(|
00011820  57 48 25 2c 49 43 25 29  3a 4c 57 47 25 3d 57 48  |WH%,IC%):LWG%=WH|
00011830  25 3a 4c 49 47 25 3d 49  43 25 3a 21 49 43 42 4c  |%:LIG%=IC%:!ICBL|
00011840  4b 25 3d 48 41 4e 44 25  28 57 48 25 29 3a 49 43  |K%=HAND%(WH%):IC|
00011850  42 4c 4b 25 21 34 3d 49  43 25 3a c8 99 20 22 57  |BLK%!4=IC%:.. "W|
00011860  69 6d 70 5f 47 65 74 49  63 6f 6e 53 74 61 74 65  |imp_GetIconState|
00011870  22 2c 2c 49 43 42 4c 4b  25 3a 3d a4 67 73 74 72  |",,ICBLK%:=.gstr|
00011880  28 21 28 49 43 42 4c 4b  25 2b 32 38 29 29 0d 50  |(!(ICBLK%+28)).P|
00011890  0a 04 0d 50 14 a3 dd f2  73 69 28 57 48 32 25 2c  |...P....si(WH2%,|
000118a0  49 43 32 25 2c 53 45 54  24 29 3a 21 49 43 42 4c  |IC2%,SET$):!ICBL|
000118b0  4b 25 3d 48 41 4e 44 25  28 57 48 32 25 29 3a 49  |K%=HAND%(WH2%):I|
000118c0  43 42 4c 4b 25 21 34 3d  49 43 32 25 3a c8 99 20  |CBLK%!4=IC2%:.. |
000118d0  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
000118e0  74 65 22 2c 2c 49 43 42  4c 4b 25 3a 49 43 42 4c  |te",,ICBLK%:ICBL|
000118f0  4b 25 21 38 3d 30 3a 49  43 42 4c 4b 25 21 31 32  |K%!8=0:ICBLK%!12|
00011900  3d 30 3a 24 28 49 43 42  4c 4b 25 21 32 38 29 3d  |=0:$(ICBLK%!28)=|
00011910  53 45 54 24 3a c8 99 20  22 57 69 6d 70 5f 53 65  |SET$:.. "Wimp_Se|
00011920  74 49 63 6f 6e 53 74 61  74 65 22 2c 2c 49 43 42  |tIconState",,ICB|
00011930  4c 4b 25 3a e1 0d 50 1e  04 0d 50 28 71 dd a4 68  |LK%:..P...P(q..h|
00011940  69 67 68 28 57 48 25 2c  49 43 25 29 3a 21 49 43  |igh(WH%,IC%):!IC|
00011950  42 4c 4b 25 3d 48 41 4e  44 25 28 57 48 25 29 3a  |BLK%=HAND%(WH%):|
00011960  49 43 42 4c 4b 25 21 34  3d 49 43 25 3a c8 99 20  |ICBLK%!4=IC%:.. |
00011970  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00011980  74 65 22 2c 2c 49 43 42  4c 4b 25 3a 3d 28 28 3f  |te",,ICBLK%:=((?|
00011990  28 49 43 42 4c 4b 25 2b  32 36 29 29 20 80 20 25  |(ICBLK%+26)) . %|
000119a0  31 30 30 30 30 30 29 3d  33 32 0d 50 32 04 0d 50  |100000)=32.P2..P|
000119b0  3c 59 dd a4 77 6f 70 65  6e 28 57 48 25 29 3a 21  |<Y..wopen(WH%):!|
000119c0  49 43 42 4c 4b 25 3d 48  41 4e 44 25 28 57 48 25  |ICBLK%=HAND%(WH%|
000119d0  29 3a c8 99 20 22 57 69  6d 70 5f 47 65 74 57 69  |):.. "Wimp_GetWi|
000119e0  6e 64 6f 77 53 74 61 74  65 22 2c 2c 49 43 42 4c  |ndowState",,ICBL|
000119f0  4b 25 3a 3d 28 28 49 43  42 4c 4b 25 3f 33 34 29  |K%:=((ICBLK%?34)|
00011a00  20 80 20 31 29 3d 31 0d  50 46 04 0d 50 50 33 dd  | . 1)=1.PF..PP3.|
00011a10  f2 73 68 61 64 65 69 63  6f 6e 28 57 48 25 2c 49  |.shadeicon(WH%,I|
00011a20  43 25 29 3a f2 69 63 66  6c 61 67 28 57 48 25 2c  |C%):.icflag(WH%,|
00011a30  49 43 25 2c 31 3c 3c 32  32 2c 30 29 3a e1 0d 50  |IC%,1<<22,0):..P|
00011a40  5a 04 0d 50 64 33 dd f2  63 6c 65 61 72 69 63 6f  |Z..Pd3..clearico|
00011a50  6e 28 57 48 25 2c 49 43  25 29 3a f2 69 63 66 6c  |n(WH%,IC%):.icfl|
00011a60  61 67 28 57 48 25 2c 49  43 25 2c 30 2c 31 3c 3c  |ag(WH%,IC%,0,1<<|
00011a70  32 32 29 3a e1 0d 50 6e  04 0d 50 78 30 dd f2 69  |22):..Pn..Px0..i|
00011a80  63 6f 6e 68 69 28 57 48  25 2c 49 43 25 29 3a f2  |conhi(WH%,IC%):.|
00011a90  69 63 66 6c 61 67 28 57  48 25 2c 49 43 25 2c 31  |icflag(WH%,IC%,1|
00011aa0  3c 3c 32 31 2c 30 29 3a  e1 0d 50 82 04 0d 50 8c  |<<21,0):..P...P.|
00011ab0  30 dd f2 69 63 6f 6e 6c  6f 28 57 48 25 2c 49 43  |0..iconlo(WH%,IC|
00011ac0  25 29 3a f2 69 63 66 6c  61 67 28 57 48 25 2c 49  |%):.icflag(WH%,I|
00011ad0  43 25 2c 30 2c 31 3c 3c  32 31 29 3a e1 0d 50 96  |C%,0,1<<21):..P.|
00011ae0  04 0d 50 a0 1d dd f2 69  63 66 6c 61 67 28 57 48  |..P....icflag(WH|
00011af0  25 2c 49 43 25 2c 57 45  25 2c 57 4d 25 29 0d 50  |%,IC%,WE%,WM%).P|
00011b00  aa 23 21 49 43 42 4c 4b  25 3d 48 41 4e 44 25 28  |.#!ICBLK%=HAND%(|
00011b10  57 48 25 29 3a 49 43 42  4c 4b 25 21 34 3d 49 43  |WH%):ICBLK%!4=IC|
00011b20  25 0d 50 b4 3e 49 43 42  4c 4b 25 21 38 3d 57 45  |%.P.>ICBLK%!8=WE|
00011b30  25 3a e7 20 57 4d 25 3c  3e 30 20 8c 20 49 43 42  |%:. WM%<>0 . ICB|
00011b40  4c 4b 25 21 31 32 3d 57  4d 25 20 8b 20 49 43 42  |LK%!12=WM% . ICB|
00011b50  4c 4b 25 21 31 32 3d 49  43 42 4c 4b 25 21 38 0d  |LK%!12=ICBLK%!8.|
00011b60  50 be 22 c8 99 20 22 57  69 6d 70 5f 53 65 74 49  |P.".. "Wimp_SetI|
00011b70  63 6f 6e 53 74 61 74 65  22 2c 2c 49 43 42 4c 4b  |conState",,ICBLK|
00011b80  25 0d 50 c8 05 e1 0d 50  d2 04 0d 50 dc 5c dd f2  |%.P....P...P.\..|
00011b90  70 6f 69 6e 74 3a c8 99  20 22 57 69 6d 70 5f 47  |point:.. "Wimp_G|
00011ba0  65 74 50 6f 69 6e 74 65  72 49 6e 66 6f 22 2c 2c  |etPointerInfo",,|
00011bb0  50 4f 49 25 3a 4d 4f 58  25 3d 21 50 4f 49 25 3a  |POI%:MOX%=!POI%:|
00011bc0  4d 4f 59 25 3d 50 4f 49  25 21 34 3a 4d 4f 42 25  |MOY%=POI%!4:MOB%|
00011bd0  3d 50 4f 49 25 21 38 3a  4d 4f 48 25 3d 50 4f 49  |=POI%!8:MOH%=POI|
00011be0  25 21 31 32 3a e1 0d 50  e6 04 0d 50 f0 8e dd f2  |%!12:..P...P....|
00011bf0  77 69 6e 64 6e 61 6d 65  28 57 48 25 2c 53 45 54  |windname(WH%,SET|
00011c00  24 29 3a 21 42 4c 4b 25  3d 48 41 4e 44 25 28 57  |$):!BLK%=HAND%(W|
00011c10  48 25 29 3a c8 99 20 22  57 69 6d 70 5f 47 65 74  |H%):.. "Wimp_Get|
00011c20  57 69 6e 64 6f 77 53 74  61 74 65 22 2c 2c 42 4c  |WindowState",,BL|
00011c30  4b 25 3a 57 49 46 25 3d  42 4c 4b 25 21 32 38 3a  |K%:WIF%=BLK%!28:|
00011c40  c8 99 20 22 57 69 6d 70  5f 47 65 74 57 69 6e 64  |.. "Wimp_GetWind|
00011c50  6f 77 49 6e 66 6f 22 2c  2c 42 4c 4b 25 3a c8 99  |owInfo",,BLK%:..|
00011c60  22 57 69 6d 70 5f 43 6c  6f 73 65 57 69 6e 64 6f  |"Wimp_CloseWindo|
00011c70  77 22 2c 2c 42 4c 4b 25  0d 50 fa 43 41 44 25 3d  |w",,BLK%.P.CAD%=|
00011c80  42 4c 4b 25 21 37 36 3a  42 4c 4b 25 21 32 38 3d  |BLK%!76:BLK%!28=|
00011c90  57 49 46 25 3a 24 41 44  25 3d 53 45 54 24 3a c8  |WIF%:$AD%=SET$:.|
00011ca0  99 20 22 57 69 6d 70 5f  4f 70 65 6e 57 69 6e 64  |. "Wimp_OpenWind|
00011cb0  6f 77 22 2c 2c 42 4c 4b  25 3a e1 0d 51 04 04 0d  |ow",,BLK%:..Q...|
00011cc0  51 0e 0d dd f2 64 72 61  67 66 69 6e 0d 51 18 05  |Q....dragfin.Q..|
00011cd0  e1 0d 51 22 04 0d 51 2c  0f dd f2 73 74 61 72 74  |..Q"..Q,...start|
00011ce0  64 72 61 67 0d 51 36 25  c8 99 20 22 57 69 6d 70  |drag.Q6%.. "Wimp|
00011cf0  5f 47 65 74 57 69 6e 64  6f 77 53 74 61 74 65 22  |_GetWindowState"|
00011d00  2c 2c 42 4c 4b 25 2b 31  32 0d 51 40 43 58 25 3d  |,,BLK%+12.Q@CX%=|
00011d10  42 4c 4b 25 21 31 36 3a  59 25 3d 42 4c 4b 25 21  |BLK%!16:Y%=BLK%!|
00011d20  32 38 3a 42 4c 4b 25 21  31 36 3d 30 3a c8 99 20  |28:BLK%!16=0:.. |
00011d30  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00011d40  74 65 22 2c 2c 42 4c 4b  25 2b 31 32 0d 51 4a 29  |te",,BLK%+12.QJ)|
00011d50  42 4c 4b 25 21 31 36 3d  35 3a 42 4c 4b 25 21 32  |BLK%!16=5:BLK%!2|
00011d60  30 2b 3d 58 25 2d 32 3a  42 4c 4b 25 21 32 34 2b  |0+=X%-2:BLK%!24+|
00011d70  3d 59 25 2d 34 0d 51 54  1d 42 4c 4b 25 21 32 38  |=Y%-4.QT.BLK%!28|
00011d80  2b 3d 58 25 2b 32 3a 42  4c 4b 25 21 33 32 2b 3d  |+=X%+2:BLK%!32+=|
00011d90  59 25 0d 51 5e 58 42 4c  4b 25 21 33 36 3d 30 3a  |Y%.Q^XBLK%!36=0:|
00011da0  42 4c 4b 25 21 34 30 3d  30 3a 42 4c 4b 25 21 34  |BLK%!40=0:BLK%!4|
00011db0  34 3d 26 37 46 46 46 46  46 46 46 3a 42 4c 4b 25  |4=&7FFFFFFF:BLK%|
00011dc0  21 34 38 3d 26 37 46 46  46 46 46 46 46 3a c8 99  |!48=&7FFFFFFF:..|
00011dd0  20 22 57 69 6d 70 5f 44  72 61 67 42 6f 78 22 2c  | "Wimp_DragBox",|
00011de0  2c 42 4c 4b 25 2b 31 32  3a e1 0d 51 68 04 0d 51  |,BLK%+12:..Qh..Q|
00011df0  72 13 dd f2 69 6e 6d 65  73 73 61 67 65 28 4d 25  |r...inmessage(M%|
00011e00  29 0d 51 7c 0b c8 8e 20  4d 25 20 ca 0d 51 86 0c  |).Q|... M% ..Q..|
00011e10  c9 20 30 3a f2 64 69 65  0d 51 90 10 c9 20 31 3a  |. 0:.die.Q... 1:|
00011e20  f2 72 61 6d 6c 6f 61 64  0d 51 9a 11 c9 20 32 3a  |.ramload.Q... 2:|
00011e30  f2 64 72 61 67 73 61 76  65 0d 51 a4 2e c9 20 35  |.dragsave.Q... 5|
00011e40  3a e7 20 42 4c 4b 25 21  31 32 3d 30 20 80 20 42  |:. BLK%!12=0 . B|
00011e50  4c 4b 25 21 34 30 3d 26  43 31 31 20 f2 6c 6f 61  |LK%!40=&C11 .loa|
00011e60  64 28 26 43 31 31 29 0d  51 ae 1d c9 20 36 3a e7  |d(&C11).Q... 6:.|
00011e70  20 44 52 41 47 25 3d 37  20 8c 20 f2 72 61 6d 66  | DRAG%=7 . .ramf|
00011e80  65 74 63 68 0d 51 b8 13  c9 20 37 3a f2 72 61 6d  |etch.Q... 7:.ram|
00011e90  72 65 63 65 69 76 65 0d  51 c2 7e c9 20 33 3a e7  |receive.Q.~. 3:.|
00011ea0  20 42 4c 4b 25 21 31 32  3d 30 20 80 20 42 4c 4b  | BLK%!12=0 . BLK|
00011eb0  25 21 34 30 3d 26 35 35  36 20 f2 6c 6f 61 64 28  |%!40=&556 .load(|
00011ec0  26 35 35 36 29 20 8b 20  e7 20 42 4c 4b 25 21 31  |&556) . . BLK%!1|
00011ed0  32 3d 30 20 80 20 42 4c  4b 25 21 34 30 3d 26 43  |2=0 . BLK%!40=&C|
00011ee0  31 31 20 f2 6c 6f 61 64  28 26 43 31 31 29 20 8b  |11 .load(&C11) .|
00011ef0  20 e7 20 42 4c 4b 25 21  31 32 3d 30 20 80 20 42  | . BLK%!12=0 . B|
00011f00  4c 4b 25 21 34 30 3d 26  46 46 39 20 8c 20 f2 69  |LK%!40=&FF9 . .i|
00011f10  6d 70 6f 72 74 0d 51 cc  07 cb 3a e1 0d 51 d6 04  |mport.Q...:..Q..|
00011f20  0d 51 e0 0d dd f2 72 61  6d 6c 6f 61 64 0d 51 ea  |.Q....ramload.Q.|
00011f30  1f 54 58 25 3d 42 4c 4b  25 21 34 30 3a e7 20 54  |.TX%=BLK%!40:. T|
00011f40  58 25 3c 3e 26 46 46 39  20 8c 20 e1 0d 51 f4 35  |X%<>&FF9 . ..Q.5|
00011f50  49 4d 53 25 3d 42 4c 4b  25 21 33 36 3a 41 24 3d  |IMS%=BLK%!36:A$=|
00011f60  a4 67 65 74 6e 61 6d 65  3a 4d 52 45 46 25 3d 42  |.getname:MREF%=B|
00011f70  4c 4b 25 21 38 3a 53 44  48 25 3d 42 4c 4b 25 21  |LK%!8:SDH%=BLK%!|
00011f80  34 0d 51 fe 30 f2 6b 69  6c 6c 66 3a 46 55 53 45  |4.Q.0.killf:FUSE|
00011f90  25 3d 33 34 3a 46 55 53  54 25 3d 30 3a f2 6f 70  |%=34:FUST%=0:.op|
00011fa0  65 6e 77 69 6e 64 28 38  29 3a f2 73 70 69 6e 69  |enwind(8):.spini|
00011fb0  74 0d 52 08 42 f2 73 70  62 75 66 28 49 4d 53 25  |t.R.B.spbuf(IMS%|
00011fc0  2b 38 29 3a e7 20 51 25  20 8c 20 46 55 53 45 25  |+8):. Q% . FUSE%|
00011fd0  3d 2d 31 3a f2 63 6c 6f  73 65 77 69 6e 64 28 38  |=-1:.closewind(8|
00011fe0  29 3a f2 73 70 69 6e 69  74 3a f2 73 70 62 75 66  |):.spinit:.spbuf|
00011ff0  65 72 72 0d 52 12 17 52  41 54 4f 46 25 3d 30 3a  |err.R..RATOF%=0:|
00012000  52 44 54 53 25 3d 49 4d  53 25 0d 52 1c 1d 42 4c  |RDTS%=IMS%.R..BL|
00012010  4b 25 21 38 3d 4d 52 45  46 25 3a f2 72 61 6d 74  |K%!8=MREF%:.ramt|
00012020  72 61 6e 73 6d 69 74 0d  52 26 05 e1 0d 52 30 04  |ransmit.R&...R0.|
00012030  0d 52 3a 11 dd f2 72 61  6d 74 72 61 6e 73 6d 69  |.R:...ramtransmi|
00012040  74 0d 52 44 70 21 42 4c  4b 25 3d 36 34 3a 42 4c  |t.RDp!BLK%=64:BL|
00012050  4b 25 21 31 32 3d 42 4c  4b 25 21 38 3a 42 4c 4b  |K%!12=BLK%!8:BLK|
00012060  25 21 31 36 3d 36 3a 42  4c 4b 25 21 32 30 3d 53  |%!16=6:BLK%!20=S|
00012070  50 42 55 46 25 2b 34 2b  52 41 54 4f 46 25 3a 42  |PBUF%+4+RATOF%:B|
00012080  4c 4b 25 21 32 34 3d 52  44 54 53 25 3a c8 99 20  |LK%!24=RDTS%:.. |
00012090  22 57 69 6d 70 5f 53 65  6e 64 4d 65 73 73 61 67  |"Wimp_SendMessag|
000120a0  65 22 2c 31 38 2c 42 4c  4b 25 2c 53 44 48 25 3a  |e",18,BLK%,SDH%:|
000120b0  e1 0d 52 4e 04 0d 52 58  10 dd f2 72 61 6d 72 65  |..RN..RX...ramre|
000120c0  63 65 69 76 65 0d 52 62  40 54 58 25 3d 42 4c 4b  |ceive.Rb@TX%=BLK|
000120d0  25 21 32 34 3a e7 20 54  58 25 3d 52 44 54 53 25  |%!24:. TX%=RDTS%|
000120e0  20 8c 20 52 44 54 53 25  3d 34 3a 52 41 54 4f 46  | . RDTS%=4:RATOF|
000120f0  25 2b 3d 54 58 25 3a f2  72 61 6d 74 72 61 6e 73  |%+=TX%:.ramtrans|
00012100  6d 69 74 3a e1 0d 52 6c  0a e5 20 8d 50 76 4c 0d  |mit:..Rl.. .PvL.|
00012110  52 76 04 0d 52 80 0e dd  f2 72 61 6d 66 65 74 63  |Rv..R....ramfetc|
00012120  68 0d 52 8a 2e 42 55 41  44 25 3d 42 4c 4b 25 21  |h.R..BUAD%=BLK%!|
00012130  32 30 20 3a 20 f4 20 72  61 6d 20 66 65 74 63 68  |20 : . ram fetch|
00012140  20 62 75 66 66 65 72 20  61 64 64 72 65 73 73 0d  | buffer address.|
00012150  52 94 23 42 55 4c 45 25  3d 42 4c 4b 25 21 32 34  |R.#BULE%=BLK%!24|
00012160  20 3a 20 f4 20 62 75 66  66 65 72 20 6c 65 6e 67  | : . buffer leng|
00012170  74 68 0d 52 9e 2b 53 44  48 25 3d 42 4c 4b 25 21  |th.R.+SDH%=BLK%!|
00012180  34 20 20 20 3a 20 f4 20  68 61 6e 64 6c 65 20 6f  |4   : . handle o|
00012190  66 20 73 65 6e 64 65 72  20 74 61 73 6b 0d 52 a8  |f sender task.R.|
000121a0  1c 4d 52 45 46 25 3d 42  4c 4b 25 21 38 20 20 3a  |.MREF%=BLK%!8  :|
000121b0  20 f4 20 6d 79 2d 72 65  66 0d 52 b2 11 42 4c 4b  | . my-ref.R..BLK|
000121c0  25 21 31 32 3d 4d 52 45  46 25 0d 52 bc 22 42 4c  |%!12=MREF%.R."BL|
000121d0  4b 25 21 31 36 3d 37 20  20 20 20 20 3a 20 f4 20  |K%!16=7     : . |
000121e0  52 61 6d 5f 74 72 61 6e  73 6d 69 74 0d 52 c6 20  |Ram_transmit.R. |
000121f0  21 42 4c 4b 25 3d 36 34  3a 20 20 20 20 20 3a 20  |!BLK%=64:     : |
00012200  f4 20 62 6c 6f 63 6b 20  73 69 7a 65 0d 52 d0 24  |. block size.R.$|
00012210  42 4c 4b 25 21 32 30 3d  42 55 41 44 25 20 3a 20  |BLK%!20=BUAD% : |
00012220  f4 20 62 75 66 66 65 72  20 61 64 64 72 65 73 73  |. buffer address|
00012230  0d 52 da 38 e7 20 42 55  4c 45 25 3c 3d 52 44 54  |.R.8. BULE%<=RDT|
00012240  53 25 20 8c 20 57 45 25  3d 52 44 54 53 25 3a 54  |S% . WE%=RDTS%:T|
00012250  58 25 3d 31 37 20 8b 20  57 45 25 3d 42 55 4c 45  |X%=17 . WE%=BULE|
00012260  25 3a 54 58 25 3d 31 38  0d 52 e4 1c e7 20 52 44  |%:TX%=18.R... RD|
00012270  54 53 25 3d 30 20 8c 20  57 45 25 3d 30 3a 54 58  |TS%=0 . WE%=0:TX|
00012280  25 3d 31 37 0d 52 ee 2e  42 4c 4b 25 21 32 34 3d  |%=17.R..BLK%!24=|
00012290  57 45 25 20 20 20 3a 20  f4 20 23 62 79 74 65 73  |WE%   : . #bytes|
000122a0  20 77 72 69 74 74 65 6e  20 74 6f 20 62 75 66 66  | written to buff|
000122b0  65 72 0d 52 f8 42 c8 99  20 22 57 69 6d 70 5f 54  |er.R.B.. "Wimp_T|
000122c0  72 61 6e 73 66 65 72 42  6c 6f 63 6b 22 2c 54 48  |ransferBlock",TH|
000122d0  41 4e 44 25 2c 52 54 53  42 25 2b 34 2b 52 41 54  |AND%,RTSB%+4+RAT|
000122e0  4f 46 25 2c 53 44 48 25  2c 42 55 41 44 25 2c 42  |OF%,SDH%,BUAD%,B|
000122f0  55 4c 45 25 0d 53 02 1a  52 44 54 53 25 2d 3d 57  |ULE%.S..RDTS%-=W|
00012300  45 25 3a 52 41 54 4f 46  25 2b 3d 57 45 25 0d 53  |E%:RATOF%+=WE%.S|
00012310  0c 43 c8 99 20 22 57 69  6d 70 5f 53 65 6e 64 4d  |.C.. "Wimp_SendM|
00012320  65 73 73 61 67 65 22 2c  54 58 25 2c 42 4c 4b 25  |essage",TX%,BLK%|
00012330  2c 53 44 57 25 2c 53 44  49 25 20 20 3a 20 f4 20  |,SDW%,SDI%  : . |
00012340  73 65 6e 64 20 52 41 4d  20 74 72 61 6e 73 6d 69  |send RAM transmi|
00012350  74 0d 53 16 05 e1 0d 53  20 04 0d 53 2a 63 dd f2  |t.S....S ..S*c..|
00012360  73 61 76 65 6f 6b 3a 41  24 3d a4 67 69 28 30 2c  |saveok:A$=.gi(0,|
00012370  36 29 3a e7 20 a7 41 24  2c 22 2e 22 29 3d 30 20  |6):. .A$,".")=0 |
00012380  8c 20 f2 6d 65 73 73 61  67 65 28 34 2c 22 54 6f  |. .message(4,"To|
00012390  20 73 61 76 65 2c 20 64  72 61 67 20 74 68 65 20  | save, drag the |
000123a0  69 63 6f 6e 20 74 6f 20  61 20 64 69 72 65 63 74  |icon to a direct|
000123b0  6f 72 79 20 76 69 65 77  65 72 2e 22 29 0d 53 34  |ory viewer.").S4|
000123c0  1d f4 20 2a 2a 20 53 41  56 45 20 52 4f 55 54 49  |.. ** SAVE ROUTI|
000123d0  4e 45 20 48 45 52 45 20  2a 2a 0d 53 3e 0a e5 20  |NE HERE **.S>.. |
000123e0  8d 70 4e 53 0d 53 48 05  e1 0d 53 52 04 0d 53 5c  |.pNS.SH...SR..S\|
000123f0  4e dd f2 64 72 61 67 73  61 76 65 3a 53 44 57 25  |N..dragsave:SDW%|
00012400  3d 42 4c 4b 25 21 32 30  3a 53 44 49 25 3d 42 4c  |=BLK%!20:SDI%=BL|
00012410  4b 25 21 32 34 3a 53 44  58 25 3d 42 4c 4b 25 21  |K%!24:SDX%=BLK%!|
00012420  32 38 3a 53 44 59 25 3d  42 4c 4b 25 21 33 32 3a  |28:SDY%=BLK%!32:|
00012430  41 24 3d a4 67 65 74 6e  61 6d 65 0d 53 66 17 e7  |A$=.getname.Sf..|
00012440  20 44 52 41 47 25 3d 33  34 20 8c 20 e5 20 8d 70  | DRAG%=34 . . .p|
00012450  6c 53 0d 53 70 0f f2 73  69 28 30 2c 36 2c 41 24  |lS.Sp..si(0,6,A$|
00012460  29 0d 53 7a 26 e7 20 4d  4f 55 42 25 3c 3e 31 20  |).Sz&. MOUB%<>1 |
00012470  c8 99 20 22 57 69 6d 70  5f 43 72 65 61 74 65 4d  |.. "Wimp_CreateM|
00012480  65 6e 75 22 2c 2d 31 0d  53 84 81 42 4c 4b 25 21  |enu",-1.S..BLK%!|
00012490  31 32 3d 42 4c 4b 25 21  38 3a 42 4c 4b 25 21 31  |12=BLK%!8:BLK%!1|
000124a0  36 3d 33 3a 21 42 4c 4b  25 3d 36 34 3a 42 4c 4b  |6=3:!BLK%=64:BLK|
000124b0  25 21 32 30 3d 53 44 57  25 3a 42 4c 4b 25 21 32  |%!20=SDW%:BLK%!2|
000124c0  34 3d 53 44 49 25 3a 42  4c 4b 25 21 32 38 3d 53  |4=SDI%:BLK%!28=S|
000124d0  44 58 25 3a 42 4c 4b 25  21 33 32 3d 53 44 59 25  |DX%:BLK%!32=SDY%|
000124e0  3a c8 99 20 22 57 69 6d  70 5f 53 65 6e 64 4d 65  |:.. "Wimp_SendMe|
000124f0  73 73 61 67 65 22 2c 31  37 2c 42 4c 4b 25 2c 53  |ssage",17,BLK%,S|
00012500  44 57 25 2c 53 44 49 25  0d 53 8e 05 e1 0d 53 98  |DW%,SDI%.S....S.|
00012510  04 0d 53 a2 70 dd f2 73  61 76 65 73 65 74 6f 6b  |..S.p..savesetok|
00012520  3a 41 24 3d a4 67 69 28  33 34 2c 36 29 3a e7 20  |:A$=.gi(34,6):. |
00012530  a7 41 24 2c 22 2e 22 29  3d 30 20 8c 20 f2 6d 65  |.A$,".")=0 . .me|
00012540  73 73 61 67 65 28 34 2c  22 54 6f 20 73 61 76 65  |ssage(4,"To save|
00012550  2c 20 64 72 61 67 20 74  68 65 20 69 63 6f 6e 20  |, drag the icon |
00012560  74 6f 20 61 20 64 69 72  65 63 74 6f 72 79 20 76  |to a directory v|
00012570  69 65 77 65 72 2e 22 29  20 8b 20 e5 20 8d 60 4a  |iewer.") . . .`J|
00012580  53 0d 53 ac 11 f2 73 69  28 33 34 2c 36 2c 41 24  |S.S...si(34,6,A$|
00012590  29 3a 0d 53 b6 26 e7 20  4d 4f 55 42 25 3c 3e 31  |):.S.&. MOUB%<>1|
000125a0  20 c8 99 20 22 57 69 6d  70 5f 43 72 65 61 74 65  | .. "Wimp_Create|
000125b0  4d 65 6e 75 22 2c 2d 31  0d 53 c0 81 42 4c 4b 25  |Menu",-1.S..BLK%|
000125c0  21 31 32 3d 42 4c 4b 25  21 38 3a 42 4c 4b 25 21  |!12=BLK%!8:BLK%!|
000125d0  31 36 3d 33 3a 21 42 4c  4b 25 3d 36 34 3a 42 4c  |16=3:!BLK%=64:BL|
000125e0  4b 25 21 32 30 3d 53 44  57 25 3a 42 4c 4b 25 21  |K%!20=SDW%:BLK%!|
000125f0  32 34 3d 53 44 49 25 3a  42 4c 4b 25 21 32 38 3d  |24=SDI%:BLK%!28=|
00012600  53 44 58 25 3a 42 4c 4b  25 21 33 32 3d 53 44 59  |SDX%:BLK%!32=SDY|
00012610  25 3a c8 99 20 22 57 69  6d 70 5f 53 65 6e 64 4d  |%:.. "Wimp_SendM|
00012620  65 73 73 61 67 65 22 2c  31 37 2c 42 4c 4b 25 2c  |essage",17,BLK%,|
00012630  53 44 57 25 2c 53 44 49  25 0d 53 ca 13 f2 73 61  |SDW%,SDI%.S...sa|
00012640  76 65 73 65 74 73 28 41  24 29 3a e1 0d 53 d4 04  |vesets(A$):..S..|
00012650  0d 53 de 1f dd f2 73 61  76 65 28 53 24 29 3a f2  |.S....save(S$):.|
00012660  6b 69 6c 6c 66 3a 46 55  53 45 25 3d 2d 31 3a 0d  |killf:FUSE%=-1:.|
00012670  53 e8 05 e1 0d 53 f2 04  0d 53 fc 42 dd a4 6e 75  |S....S...S.B..nu|
00012680  6c 6c 73 74 72 69 6e 67  28 41 44 25 29 3a 4e 24  |llstring(AD%):N$|
00012690  3d 22 22 3a c8 95 20 3f  41 44 25 3e 3d 33 32 3a  |="":.. ?AD%>=32:|
000126a0  4e 24 3d 4e 24 2b bd 28  3f 41 44 25 29 3a 41 44  |N$=N$+.(?AD%):AD|
000126b0  25 2b 3d 31 3a ce 3a 3d  4e 24 0d 54 06 04 0d 54  |%+=1:.:=N$.T...T|
000126c0  10 69 dd f2 73 70 72 69  74 65 73 61 76 65 6f 6b  |.i..spritesaveok|
000126d0  3a 41 24 3d a4 67 69 28  37 2c 36 29 3a e7 20 a7  |:A$=.gi(7,6):. .|
000126e0  41 24 2c 22 2e 22 29 3d  30 20 8c 20 f2 6d 65 73  |A$,".")=0 . .mes|
000126f0  73 61 67 65 28 34 2c 22  54 6f 20 73 61 76 65 2c  |sage(4,"To save,|
00012700  20 64 72 61 67 20 74 68  65 20 69 63 6f 6e 20 74  | drag the icon t|
00012710  6f 20 61 20 64 69 72 65  63 74 6f 72 79 20 76 69  |o a directory vi|
00012720  65 77 65 72 2e 22 29 0d  54 1a 05 e1 0d 54 24 04  |ewer.").T....T$.|
00012730  0d 54 2e 4b dd a4 67 65  74 6e 61 6d 65 3a 57 24  |.T.K..getname:W$|
00012740  3d 22 22 3a 50 25 3d 42  4c 4b 25 2b 34 34 3a c8  |="":P%=BLK%+44:.|
00012750  95 20 3f 50 25 3c 3e 30  20 80 20 3f 50 25 3c 3e  |. ?P%<>0 . ?P%<>|
00012760  31 33 3a 57 24 3d 57 24  2b bd 28 3f 50 25 29 3a  |13:W$=W$+.(?P%):|
00012770  50 25 2b 3d 31 3a ce 3a  3d 57 24 0d 54 38 04 0d  |P%+=1:.:=W$.T8..|
00012780  54 42 7f dd f2 64 74 6c  6f 61 64 73 65 74 3a 41  |TB...dtloadset:A|
00012790  24 3d a4 67 65 74 6e 61  6d 65 3a 42 4c 4b 25 21  |$=.getname:BLK%!|
000127a0  31 32 3d 42 4c 4b 25 21  38 3a 42 4c 4b 25 21 31  |12=BLK%!8:BLK%!1|
000127b0  36 3d 34 3a 21 42 4c 4b  25 3d 36 34 3a c8 99 20  |6=4:!BLK%=64:.. |
000127c0  22 57 69 6d 70 5f 53 65  6e 64 4d 65 73 73 61 67  |"Wimp_SendMessag|
000127d0  65 22 2c 31 37 2c 42 4c  4b 25 2c 42 4c 4b 25 21  |e",17,BLK%,BLK%!|
000127e0  34 3a f2 73 69 28 33 34  2c 36 2c 41 24 29 3a f2  |4:.si(34,6,A$):.|
000127f0  6c 6f 61 64 73 65 74 73  28 41 24 29 3a e1 0d 54  |loadsets(A$):..T|
00012800  4c 04 0d 54 56 0f dd f2  6c 6f 61 64 28 46 54 25  |L..TV...load(FT%|
00012810  29 0d 54 60 56 41 24 3d  a4 67 65 74 6e 61 6d 65  |).T`VA$=.getname|
00012820  3a 42 4c 4b 25 21 31 32  3d 42 4c 4b 25 21 38 3a  |:BLK%!12=BLK%!8:|
00012830  42 4c 4b 25 21 31 36 3d  34 3a 21 42 4c 4b 25 3d  |BLK%!16=4:!BLK%=|
00012840  36 34 3a c8 99 20 22 57  69 6d 70 5f 53 65 6e 64  |64:.. "Wimp_Send|
00012850  4d 65 73 73 61 67 65 22  2c 31 37 2c 42 4c 4b 25  |Message",17,BLK%|
00012860  2c 42 4c 4b 25 21 34 0d  54 6a 17 46 25 3d ad 28  |,BLK%!4.Tj.F%=.(|
00012870  41 24 29 3a e7 20 46 25  3d 30 20 8c 20 e1 0d 54  |A$):. F%=0 . ..T|
00012880  74 23 54 24 3d bd 28 9a  23 46 25 29 2b bd 28 9a  |t#T$=.(.#F%)+.(.|
00012890  23 46 25 29 2b bd 28 9a  23 46 25 29 3a d9 23 46  |#F%)+.(.#F%):.#F|
000128a0  25 0d 54 7e 2d e7 20 54  24 3d 22 53 45 54 22 20  |%.T~-. T$="SET" |
000128b0  8c 20 f2 73 69 28 33 34  2c 36 2c 41 24 29 3a f2  |. .si(34,6,A$):.|
000128c0  6c 6f 61 64 73 65 74 73  28 41 24 29 3a e1 0d 54  |loadsets(A$):..T|
000128d0  88 0f f2 73 69 28 30 2c  36 2c 41 24 29 0d 54 92  |...si(0,6,A$).T.|
000128e0  05 e1 0d 54 9c 04 0d 54  a6 13 dd f2 71 61 74 6c  |...T...T....qatl|
000128f0  6f 61 64 28 53 24 29 3a  e1 0d 54 b0 04 0d 54 ba  |oad(S$):..T...T.|
00012900  04 0d 54 c4 15 dd f2 6c  6f 61 64 70 69 63 28 46  |..T....loadpic(F|
00012910  54 25 2c 53 24 29 0d 54  ce 05 e1 0d 54 d8 04 0d  |T%,S$).T....T...|
00012920  54 e2 0b dd f2 63 68 61  72 73 0d 54 ec eb ef 32  |T....chars.T...2|
00012930  33 2c 32 34 38 2c 30 2c  30 2c 30 2c 32 35 35 2c  |3,248,0,0,0,255,|
00012940  32 35 35 2c 30 2c 30 2c  30 3a ef 32 33 2c 32 34  |255,0,0,0:.23,24|
00012950  39 2c 30 2c 30 2c 31 32  36 2c 32 35 35 2c 32 35  |9,0,0,126,255,25|
00012960  35 2c 31 32 36 2c 30 2c  30 3a ef 32 33 2c 32 35  |5,126,0,0:.23,25|
00012970  30 2c 30 2c 36 30 2c 31  32 36 2c 32 35 35 2c 32  |0,0,60,126,255,2|
00012980  35 35 2c 31 32 36 2c 36  30 2c 30 3a ef 32 33 2c  |55,126,60,0:.23,|
00012990  32 35 31 2c 36 30 2c 31  32 36 2c 32 35 35 2c 32  |251,60,126,255,2|
000129a0  35 35 2c 32 35 35 2c 32  35 35 2c 31 32 36 2c 36  |55,255,255,126,6|
000129b0  30 3a ef 32 33 2c 32 35  32 2c 32 34 2c 36 30 2c  |0:.23,252,24,60,|
000129c0  31 32 36 2c 31 32 36 2c  31 32 36 2c 31 32 36 2c  |126,126,126,126,|
000129d0  36 30 2c 32 34 3a ef 32  33 2c 32 35 33 2c 32 34  |60,24:.23,253,24|
000129e0  2c 36 30 2c 36 30 2c 36  30 2c 36 30 2c 36 30 2c  |,60,60,60,60,60,|
000129f0  36 30 2c 32 34 3a ef 32  33 2c 32 35 34 2c 32 34  |60,24:.23,254,24|
00012a00  2c 32 34 2c 32 34 2c 32  34 2c 32 34 2c 32 34 2c  |,24,24,24,24,24,|
00012a10  32 34 2c 32 34 0d 54 f6  05 e1 0d 55 00 04 0d 55  |24,24.T....U...U|
00012a20  0a 3e dd f2 62 61 63 6b  75 70 70 69 63 3a 21 56  |.>..backuppic:!V|
00012a30  41 52 53 3d 50 49 43 25  3a 56 41 52 53 21 34 3d  |ARS=PIC%:VARS!4=|
00012a40  53 50 42 55 46 25 3a 41  25 3d 56 41 52 53 3a d6  |SPBUF%:A%=VARS:.|
00012a50  20 62 61 63 6b 75 70 70  69 63 3a e1 0d 55 14 04  | backuppic:..U..|
00012a60  0d 55 1e 4d dd f2 66 69  6c 6c 6d 61 73 6b 3a 56  |.U.M..fillmask:V|
00012a70  41 52 53 21 38 3d 53 50  42 55 46 25 3a 56 41 52  |ARS!8=SPBUF%:VAR|
00012a80  53 21 31 32 3d 54 52 41  53 50 25 3a 56 41 52 53  |S!12=TRASP%:VARS|
00012a90  21 31 36 3d 42 54 43 25  3a 41 25 3d 56 41 52 53  |!16=BTC%:A%=VARS|
00012aa0  3a d6 20 66 69 6c 6c 6d  61 73 6b 3a e1 0d 55 28  |:. fillmask:..U(|
00012ab0  04 0d 55 32 0e dd a4 6c  65 61 66 28 46 24 29 0d  |..U2...leaf(F$).|
00012ac0  55 3c 16 e7 20 a7 46 24  2c 22 2e 22 29 3d 30 20  |U<.. .F$,".")=0 |
00012ad0  8c 20 3d 46 24 0d 55 46  09 54 24 3d 22 22 0d 55  |. =F$.UF.T$="".U|
00012ae0  50 0b 4c 50 25 3d a9 46  24 0d 55 5a 16 c8 95 20  |P.LP%=.F$.UZ... |
00012af0  c1 46 24 2c 4c 50 25 2c  31 29 3c 3e 22 2e 22 0d  |.F$,LP%,1)<>".".|
00012b00  55 64 14 54 24 3d c1 46  24 2c 4c 50 25 2c 31 29  |Ud.T$=.F$,LP%,1)|
00012b10  2b 54 24 0d 55 6e 0a 4c  50 25 2d 3d 31 0d 55 78  |+T$.Un.LP%-=1.Ux|
00012b20  05 ce 0d 55 82 07 3d 54  24 0d 55 8c 04 0d 55 96  |...U..=T$.U...U.|
00012b30  10 dd f2 73 70 62 75 66  28 42 53 25 29 0d 55 a0  |...spbuf(BS%).U.|
00012b40  2b e7 20 42 53 25 3d 30  20 8c 20 c8 99 20 22 57  |+. BS%=0 . .. "W|
00012b50  69 6d 70 5f 53 6c 6f 74  53 69 7a 65 22 2c 43 55  |imp_SlotSize",CU|
00012b60  53 4c 25 2c 2d 31 3a e1  0d 55 aa 23 c8 99 20 22  |SL%,-1:..U.#.. "|
00012b70  57 69 6d 70 5f 53 6c 6f  74 53 69 7a 65 22 2c 43  |Wimp_SlotSize",C|
00012b80  55 53 4c 25 2b 42 53 25  2c 2d 31 0d 55 b4 23 c8  |USL%+BS%,-1.U.#.|
00012b90  99 20 22 57 69 6d 70 5f  53 6c 6f 74 53 69 7a 65  |. "Wimp_SlotSize|
00012ba0  22 2c 2d 31 2c 2d 31 20  b8 20 53 50 4c 25 0d 55  |",-1,-1 . SPL%.U|
00012bb0  be 4c e7 20 53 50 4c 25  3c 28 43 55 53 4c 25 2b  |.L. SPL%<(CUSL%+|
00012bc0  42 53 25 29 20 8c 20 c8  99 20 22 57 69 6d 70 5f  |BS%) . .. "Wimp_|
00012bd0  53 6c 6f 74 53 69 7a 65  22 2c 43 55 53 4c 25 2c  |SlotSize",CUSL%,|
00012be0  2d 31 3a 53 50 4e 45 25  3d 42 53 25 3a 51 25 3d  |-1:SPNE%=BS%:Q%=|
00012bf0  b9 3a e1 20 8b 20 51 25  3d a3 0d 55 c8 0f 21 53  |.:. . Q%=..U..!S|
00012c00  50 42 55 46 25 3d 42 53  25 0d 55 d2 0f 53 50 42  |PBUF%=BS%.U..SPB|
00012c10  55 46 25 21 38 3d 31 36  0d 55 dc 14 c8 99 26 32  |UF%!8=16.U....&2|
00012c20  45 2c 32 36 35 2c 53 50  42 55 46 25 0d 55 e6 0e  |E,265,SPBUF%.U..|
00012c30  53 50 53 49 5a 25 3d 42  53 25 0d 55 f0 05 e1 0d  |SPSIZ%=BS%.U....|
00012c40  55 fa 04 0d 56 04 7c dd  f2 73 70 62 75 66 65 72  |U...V.|..spbufer|
00012c50  72 3a f2 6b 69 6c 6c 66  3a 46 55 53 54 25 3d 2d  |r:.killf:FUST%=-|
00012c60  31 3a 46 55 53 45 25 3d  2d 31 3a f2 77 69 6e 64  |1:FUSE%=-1:.wind|
00012c70  6e 61 6d 65 28 32 2c 50  49 43 24 29 3a f2 6d 65  |name(2,PIC$):.me|
00012c80  73 73 61 67 65 28 30 2c  22 4e 6f 20 72 6f 6f 6d  |ssage(0,"No room|
00012c90  20 74 6f 20 73 74 6f 72  65 20 73 70 72 69 74 65  | to store sprite|
00012ca0  2e 20 28 22 2b c3 28 53  50 4e 45 25 29 2b 22 20  |. ("+.(SPNE%)+" |
00012cb0  62 79 74 65 73 20 6e 65  65 64 65 64 29 22 29 0d  |bytes needed)").|
00012cc0  56 0e 04 0d 56 18 1d dd  a4 73 70 72 69 74 65 73  |V...V....sprites|
00012cd0  69 7a 65 28 44 58 25 2c  44 59 25 2c 50 4c 25 29  |ize(DX%,DY%,PL%)|
00012ce0  0d 56 22 21 44 58 25 3d  94 28 44 58 25 29 20 81  |.V"!DX%=.(DX%) .|
00012cf0  20 32 3a 44 59 25 3d 94  28 44 59 25 29 20 81 20  | 2:DY%=.(DY%) . |
00012d00  34 0d 56 2c 27 e7 20 28  44 58 25 20 83 20 34 29  |4.V,'. (DX% . 4)|
00012d10  3e 30 20 8c 20 44 58 25  3d 28 28 44 58 25 20 81  |>0 . DX%=((DX% .|
00012d20  20 34 29 2b 31 29 2a 34  0d 56 36 0b 44 58 25 2b  | 4)+1)*4.V6.DX%+|
00012d30  3d 31 36 0d 56 40 1b 3d  28 44 58 25 2a 44 59 25  |=16.V@.=(DX%*DY%|
00012d40  2a 28 50 4c 25 2b 31 29  29 2b 31 30 32 34 0d 56  |*(PL%+1))+1024.V|
00012d50  4a 04 0d 56 54 09 dd f2  6b 65 79 0d 56 5e 27 4b  |J..VT...key.V^'K|
00012d60  57 48 25 3d 21 42 4c 4b  25 3a 4b 49 43 25 3d 42  |WH%=!BLK%:KIC%=B|
00012d70  4c 4b 25 21 34 3a 4b 45  59 25 3d 42 4c 4b 25 21  |LK%!4:KEY%=BLK%!|
00012d80  32 34 0d 56 68 0a 50 4f  4b 25 3d b9 0d 56 72 0d  |24.Vh.POK%=..Vr.|
00012d90  c8 8e 20 4b 57 48 25 20  ca 0d 56 7c 17 c9 20 48  |.. KWH% ..V|.. H|
00012da0  41 4e 44 25 28 35 29 3a  f2 62 72 75 73 6b 65 79  |AND%(5):.bruskey|
00012db0  0d 56 86 17 c9 20 48 41  4e 44 25 28 36 29 3a f2  |.V... HAND%(6):.|
00012dc0  67 72 69 64 6b 65 79 0d  56 90 17 c9 20 48 41 4e  |gridkey.V... HAN|
00012dd0  44 25 28 38 29 3a f2 61  72 65 61 6b 65 79 0d 56  |D%(8):.areakey.V|
00012de0  9a 05 cb 0d 56 a4 15 e7  20 50 4f 4b 25 20 8c 20  |....V... POK% . |
00012df0  f2 68 6f 74 6b 65 79 73  0d 56 ae 25 e7 20 50 4f  |.hotkeys.V.%. PO|
00012e00  4b 25 20 8c 20 c8 99 22  57 69 6d 70 5f 50 72 6f  |K% . .."Wimp_Pro|
00012e10  63 65 73 73 4b 65 79 22  2c 4b 45 59 25 0d 56 b8  |cessKey",KEY%.V.|
00012e20  05 e1 0d 56 c2 04 0d 56  cc 0c dd f2 72 6f 74 6b  |...V...V....rotk|
00012e30  65 79 0d 56 d6 05 e1 0d  56 e0 04 0d 56 ea 0f dd  |ey.V....V...V...|
00012e40  f2 74 6f 6f 6c 63 6c 69  63 6b 0d 56 f4 05 e1 0d  |.toolclick.V....|
00012e50  56 fe 04 0d 57 08 0d dd  f2 68 6f 74 6b 65 79 73  |V...W....hotkeys|
00012e60  0d 57 12 0d c8 8e 20 4b  45 59 25 20 ca 0d 57 1c  |.W.... KEY% ..W.|
00012e70  1a c9 20 26 31 38 31 3a  50 4f 4b 25 3d a3 3a f2  |.. &181:POK%=.:.|
00012e80  6f 70 65 6e 70 61 6c 0d  57 26 1e c9 20 26 31 38  |openpal.W&.. &18|
00012e90  33 3a 50 4f 4b 25 3d a3  3a f2 6f 70 65 6e 77 69  |3:POK%=.:.openwi|
00012ea0  6e 64 28 30 29 0d 57 30  30 c9 20 26 31 38 38 3a  |nd(0).W00. &188:|
00012eb0  50 4f 4b 25 3d a3 3a f2  6e 66 28 22 50 61 69 6e  |POK%=.:.nf("Pain|
00012ec0  74 62 72 75 73 68 22 2c  34 2c 35 29 3a f2 74 6b  |tbrush",4,5):.tk|
00012ed0  68 28 31 30 29 0d 57 3a  1f c9 20 26 31 38 39 3a  |h(10).W:.. &189:|
00012ee0  50 4f 4b 25 3d a3 3a f2  6e 66 28 22 22 2c 2d 31  |POK%=.:.nf("",-1|
00012ef0  2c 2d 31 29 0d 57 44 04  0d 57 4e 34 c9 20 26 31  |,-1).WD..WN4. &1|
00012f00  43 42 3a 50 4f 4b 25 3d  a3 3a e7 20 4c 41 4f 50  |CB:POK%=.:. LAOP|
00012f10  57 49 25 3c 3e 2d 31 20  8c 20 f2 6f 70 65 6e 77  |WI%<>-1 . .openw|
00012f20  69 6e 64 28 4c 41 4f 50  57 49 25 29 0d 57 58 04  |ind(LAOPWI%).WX.|
00012f30  0d 57 62 2b c9 20 26 31  39 38 3a 50 4f 4b 25 3d  |.Wb+. &198:POK%=|
00012f40  a3 3a f2 6e 66 28 22 57  69 72 65 20 65 6c 6c 69  |.:.nf("Wire elli|
00012f50  70 73 65 22 2c 31 31 2c  2d 31 29 0d 57 6c 3a c9  |pse",11,-1).Wl:.|
00012f60  20 26 31 39 39 3a 50 4f  4b 25 3d a3 3a f2 6e 66  | &199:POK%=.:.nf|
00012f70  28 22 57 69 72 65 20 70  61 72 61 6c 6c 65 6c 6f  |("Wire parallelo|
00012f80  67 72 61 6d 22 2c 31 33  2c 2d 31 29 3a f2 74 6b  |gram",13,-1):.tk|
00012f90  68 28 31 37 29 0d 57 76  04 0d 57 80 5e c9 20 26  |h(17).Wv..W.^. &|
00012fa0  31 44 42 3a 50 4f 4b 25  3d a3 3a f2 73 69 28 36  |1DB:POK%=.:.si(6|
00012fb0  2c 31 39 2c 22 31 22 29  3a f2 73 69 28 36 2c 32  |,19,"1"):.si(6,2|
00012fc0  31 2c 22 31 22 29 3a f2  73 69 28 36 2c 32 33 2c  |1,"1"):.si(6,23,|
00012fd0  22 30 22 29 3a f2 73 69  28 36 2c 32 35 2c 22 30  |"0"):.si(6,25,"0|
00012fe0  22 29 3a 4d 4f 55 49 43  25 3d 32 39 3a f2 67 72  |"):MOUIC%=29:.gr|
00012ff0  69 64 63 6c 69 63 6b 0d  57 8a 29 c9 20 26 31 44  |idclick.W.). &1D|
00013000  43 3a 50 4f 4b 25 3d a3  3a 47 52 43 4f 25 3d 2d  |C:POK%=.:GRCO%=-|
00013010  31 3a f2 66 6f 72 63 65  64 72 61 77 6d 61 69 6e  |1:.forcedrawmain|
00013020  0d 57 94 51 c9 20 26 31  41 31 2c 26 31 41 32 2c  |.W.Q. &1A1,&1A2,|
00013030  26 31 41 33 2c 26 31 41  34 3a 50 4f 4b 25 3d a3  |&1A3,&1A4:POK%=.|
00013040  3a f2 6c 6f 61 64 70 69  63 28 26 43 31 31 2c 22  |:.loadpic(&C11,"|
00013050  3c 49 6d 61 67 65 72 79  24 44 69 72 3e 2e 58 50  |<Imagery$Dir>.XP|
00013060  49 43 22 2b c3 28 4b 45  59 25 2d 26 31 41 30 29  |IC"+.(KEY%-&1A0)|
00013070  29 0d 57 9e 2b c9 20 26  31 45 41 3a 50 4f 4b 25  |).W.+. &1EA:POK%|
00013080  3d a3 3a f2 6e 66 28 22  53 6f 6c 69 64 20 73 65  |=.:.nf("Solid se|
00013090  63 74 6f 72 22 2c 31 36  2c 2d 31 29 0d 57 a8 04  |ctor",16,-1).W..|
000130a0  0d 57 b2 05 cb 0d 57 bc  05 e1 0d 57 c6 04 0d 57  |.W....W....W...W|
000130b0  d0 0d dd f2 7a 6f 6f 6d  74 6f 67 0d 57 da 38 50  |....zoomtog.W.8P|
000130c0  4f 49 25 21 31 32 30 3d  48 41 4e 44 25 28 32 29  |OI%!120=HAND%(2)|
000130d0  3a c8 99 20 22 57 69 6d  70 5f 47 65 74 57 69 6e  |:.. "Wimp_GetWin|
000130e0  64 6f 77 53 74 61 74 65  22 2c 2c 50 4f 49 25 2b  |dowState",,POI%+|
000130f0  31 32 30 0d 57 e4 10 e7  20 5a 4f 4f 4d 25 3c 3e  |120.W... ZOOM%<>|
00013100  31 20 8c 0d 57 ee 0b 5a  4f 4f 4d 25 3d 31 0d 57  |1 ..W..ZOOM%=1.W|
00013110  f8 05 cc 0d 58 02 28 5a  4f 4f 4d 25 3d bb a4 67  |....X.(ZOOM%=..g|
00013120  69 28 33 33 2c 38 29 3a  e7 20 5a 4f 4f 4d 25 3d  |i(33,8):. ZOOM%=|
00013130  30 20 8c 20 5a 4f 4f 4d  25 3d 31 0d 58 0c 05 cd  |0 . ZOOM%=1.X...|
00013140  0d 58 16 2e 21 42 4c 4b  25 3d 48 41 4e 44 25 28  |.X..!BLK%=HAND%(|
00013150  32 29 3a c8 99 20 22 57  69 6d 70 5f 43 6c 6f 73  |2):.. "Wimp_Clos|
00013160  65 57 69 6e 64 6f 77 22  2c 2c 42 4c 4b 25 0d 58  |eWindow",,BLK%.X|
00013170  20 5c 21 42 4c 4b 25 3d  30 3a 42 4c 4b 25 21 34  | \!BLK%=0:BLK%!4|
00013180  3d 2d 31 30 32 33 2a 5a  4f 4f 4d 25 3a 42 4c 4b  |=-1023*ZOOM%:BLK|
00013190  25 21 38 3d 31 32 37 39  2a 5a 4f 4f 4d 25 3a 42  |%!8=1279*ZOOM%:B|
000131a0  4c 4b 25 21 31 32 3d 30  3a c8 99 20 22 57 69 6d  |LK%!12=0:.. "Wim|
000131b0  70 5f 53 65 74 45 78 74  65 6e 74 22 2c 48 41 4e  |p_SetExtent",HAN|
000131c0  44 25 28 32 29 2c 42 4c  4b 25 0d 58 2a 8a 21 42  |D%(2),BLK%.X*.!B|
000131d0  4c 4b 25 3d 48 41 4e 44  25 28 32 29 3a 42 4c 4b  |LK%=HAND%(2):BLK|
000131e0  25 21 34 3d 57 4c 58 25  3a 42 4c 4b 25 21 38 3d  |%!4=WLX%:BLK%!8=|
000131f0  57 4c 59 25 3a 42 4c 4b  25 21 31 32 3d 57 55 58  |WLY%:BLK%!12=WUX|
00013200  25 3a 42 4c 4b 25 21 31  36 3d 57 55 59 25 3a 42  |%:BLK%!16=WUY%:B|
00013210  4c 4b 25 21 32 30 3d 57  53 58 25 3a 42 4c 4b 25  |LK%!20=WSX%:BLK%|
00013220  21 32 34 3d 57 53 59 25  3a 42 4c 4b 25 21 32 38  |!24=WSY%:BLK%!28|
00013230  3d 50 4f 49 25 21 31 34  38 3a c8 99 20 22 57 69  |=POI%!148:.. "Wi|
00013240  6d 70 5f 4f 70 65 6e 57  69 6e 64 6f 77 22 2c 2c  |mp_OpenWindow",,|
00013250  42 4c 4b 25 0d 58 34 57  57 4c 58 25 3d 50 4f 49  |BLK%.X4WWLX%=POI|
00013260  25 21 31 32 34 3a 57 4c  59 25 3d 50 4f 49 25 21  |%!124:WLY%=POI%!|
00013270  31 32 38 3a 57 55 58 25  3d 50 4f 49 25 21 31 33  |128:WUX%=POI%!13|
00013280  32 3a 57 55 59 25 3d 50  4f 49 25 21 31 33 36 3a  |2:WUY%=POI%!136:|
00013290  57 53 58 25 3d 50 4f 49  25 21 31 34 30 3a 57 53  |WSX%=POI%!140:WS|
000132a0  59 25 3d 50 4f 49 25 21  31 34 34 0d 58 3e 14 f2  |Y%=POI%!144.X>..|
000132b0  66 6f 72 63 65 64 72 61  77 6d 61 69 6e 3a e1 0d  |forcedrawmain:..|
000132c0  58 48 04 0d 58 52 09 dd  f2 6f 70 31 0d 58 5c 05  |XH..XR...op1.X\.|
000132d0  e1 0d 58 66 04 0d 58 70  0d dd f2 61 69 72 62 6b  |..Xf..Xp...airbk|
000132e0  65 79 0d 58 7a 27 f2 69  63 66 62 28 34 2c 31 37  |ey.Xz'.icfb(4,17|
000132f0  2c 31 39 2c 31 39 29 3a  f2 69 63 66 62 28 34 2c  |,19,19):.icfb(4,|
00013300  31 39 2c 31 37 2c 31 37  29 0d 58 84 05 e1 0d 58  |19,17,17).X....X|
00013310  8e 04 0d 58 98 0d dd f2  62 72 75 73 6b 65 79 0d  |...X....bruskey.|
00013320  58 a2 15 f2 69 63 66 62  28 35 2c 32 33 2c 32 34  |X...icfb(5,23,24|
00013330  2c 31 39 29 0d 58 ac 15  f2 69 63 66 62 28 35 2c  |,19).X...icfb(5,|
00013340  32 34 2c 32 30 2c 32 33  29 0d 58 b6 15 f2 69 63  |24,20,23).X...ic|
00013350  66 62 28 35 2c 32 30 2c  31 39 2c 32 34 29 0d 58  |fb(5,20,19,24).X|
00013360  c0 15 f2 69 63 66 62 28  35 2c 31 39 2c 32 33 2c  |...icfb(5,19,23,|
00013370  32 30 29 0d 58 ca 36 e7  20 4b 49 43 25 3d 31 39  |20).X.6. KIC%=19|
00013380  20 80 20 4b 45 59 25 3d  31 33 20 8c 20 50 4f 4b  | . KEY%=13 . POK|
00013390  25 3d a3 3a 4d 4f 55 49  43 25 3d 32 36 3a f2 62  |%=.:MOUIC%=26:.b|
000133a0  72 75 73 68 63 6c 69 63  6b 0d 58 d4 05 e1 0d 58  |rushclick.X....X|
000133b0  de 04 0d 58 e8 0d dd f2  67 72 69 64 6b 65 79 0d  |...X....gridkey.|
000133c0  58 f2 15 f2 69 63 66 62  28 36 2c 31 39 2c 32 31  |X...icfb(6,19,21|
000133d0  2c 32 35 29 0d 58 fc 15  f2 69 63 66 62 28 36 2c  |,25).X...icfb(6,|
000133e0  32 31 2c 32 33 2c 31 39  29 0d 59 06 15 f2 69 63  |21,23,19).Y...ic|
000133f0  66 62 28 36 2c 32 33 2c  32 35 2c 32 31 29 0d 59  |fb(6,23,25,21).Y|
00013400  10 15 f2 69 63 66 62 28  36 2c 32 35 2c 31 39 2c  |...icfb(6,25,19,|
00013410  32 33 29 0d 59 1a 35 e7  20 4b 49 43 25 3d 32 35  |23).Y.5. KIC%=25|
00013420  20 80 20 4b 45 59 25 3d  31 33 20 8c 20 50 4f 4b  | . KEY%=13 . POK|
00013430  25 3d a3 3a 4d 4f 55 49  43 25 3d 32 39 3a f2 67  |%=.:MOUIC%=29:.g|
00013440  72 69 64 63 6c 69 63 6b  0d 59 24 05 e1 0d 59 2e  |ridclick.Y$...Y.|
00013450  04 0d 59 38 0d dd f2 61  72 65 61 6b 65 79 0d 59  |..Y8...areakey.Y|
00013460  42 15 f2 69 63 66 62 28  38 2c 31 37 2c 31 38 2c  |B..icfb(8,17,18,|
00013470  32 30 29 0d 59 4c 15 f2  69 63 66 62 28 38 2c 31  |20).YL..icfb(8,1|
00013480  38 2c 31 39 2c 31 37 29  0d 59 56 15 f2 69 63 66  |8,19,17).YV..icf|
00013490  62 28 38 2c 31 39 2c 32  30 2c 31 38 29 0d 59 60  |b(8,19,20,18).Y`|
000134a0  15 f2 69 63 66 62 28 38  2c 32 30 2c 31 37 2c 31  |..icfb(8,20,17,1|
000134b0  39 29 0d 59 6a 35 e7 20  4b 49 43 25 3d 32 30 20  |9).Yj5. KIC%=20 |
000134c0  80 20 4b 45 59 25 3d 31  33 20 8c 20 50 4f 4b 25  |. KEY%=13 . POK%|
000134d0  3d a3 3a 4d 4f 55 49 43  25 3d 31 36 3a f2 67 72  |=.:MOUIC%=16:.gr|
000134e0  61 62 63 6c 69 63 6b 0d  59 74 05 e1 0d 59 7e 04  |abclick.Yt...Y~.|
000134f0  0d 59 88 0d dd f2 74 65  78 74 6b 65 79 0d 59 92  |.Y....textkey.Y.|
00013500  05 e1 0d 59 9c 04 0d 59  a6 0d dd f2 66 72 61 6d  |...Y...Y....fram|
00013510  6b 65 79 0d 59 b0 16 f2  69 63 66 62 28 31 39 2c  |key.Y...icfb(19,|
00013520  31 30 2c 31 32 2c 31 32  29 0d 59 ba 16 f2 69 63  |10,12,12).Y...ic|
00013530  66 62 28 31 39 2c 31 32  2c 31 30 2c 31 30 29 0d  |fb(19,12,10,10).|
00013540  59 c4 36 e7 20 4b 45 59  25 3d 31 33 20 80 20 4b  |Y.6. KEY%=13 . K|
00013550  49 43 25 3d 31 32 20 8c  20 50 4f 4b 25 3d a3 3a  |IC%=12 . POK%=.:|
00013560  4d 4f 55 49 43 25 3d 31  34 3a f2 66 72 61 6d 65  |MOUIC%=14:.frame|
00013570  63 6c 69 63 6b 0d 59 ce  05 e1 0d 59 d8 04 0d 59  |click.Y....Y...Y|
00013580  e2 1d dd f2 69 63 66 62  28 57 48 25 2c 49 43 25  |....icfb(WH%,IC%|
00013590  2c 49 43 46 25 2c 49 43  42 25 29 0d 59 ec 41 e7  |,ICF%,ICB%).Y.A.|
000135a0  20 4b 49 43 25 3d 49 43  25 20 80 20 28 4b 45 59  | KIC%=IC% . (KEY|
000135b0  25 3d 26 31 38 45 20 84  20 4b 45 59 25 3d 31 33  |%=&18E . KEY%=13|
000135c0  29 20 8c 20 50 4f 4b 25  3d a3 3a f2 63 74 69 63  |) . POK%=.:.ctic|
000135d0  28 57 48 25 2c 49 43 46  25 29 3a e1 0d 59 f6 33  |(WH%,ICF%):..Y.3|
000135e0  e7 20 4b 49 43 25 3d 49  43 25 20 80 20 4b 45 59  |. KIC%=IC% . KEY|
000135f0  25 3d 26 31 38 46 20 8c  20 50 4f 4b 25 3d a3 3a  |%=&18F . POK%=.:|
00013600  f2 63 74 69 63 28 57 48  25 2c 49 43 42 25 29 0d  |.ctic(WH%,ICB%).|
00013610  5a 00 05 e1 0d 5a 0a 04  0d 5a 14 5a dd f2 63 74  |Z....Z...Z.Z..ct|
00013620  69 63 28 57 48 25 2c 49  43 25 29 3a 41 24 3d a4  |ic(WH%,IC%):A$=.|
00013630  67 69 28 57 48 25 2c 49  43 25 29 3a c8 99 20 22  |gi(WH%,IC%):.. "|
00013640  57 69 6d 70 5f 53 65 74  43 61 72 65 74 50 6f 73  |Wimp_SetCaretPos|
00013650  69 74 69 6f 6e 22 2c 48  41 4e 44 25 28 57 48 25  |ition",HAND%(WH%|
00013660  29 2c 49 43 25 2c 2c 2c  2d 31 2c a9 28 41 24 29  |),IC%,,,-1,.(A$)|
00013670  3a e1 0d 5a 1e 04 0d 5a  28 23 dd f2 70 61 74 63  |:..Z...Z(#..patc|
00013680  68 28 50 4e 25 29 3a e7  20 4c 41 50 41 54 43 48  |h(PN%):. LAPATCH|
00013690  25 3d 50 4e 25 20 8c 20  e1 0d 5a 32 3b ff 28 22  |%=PN% . ..Z2;.("|
000136a0  4c 4f 41 44 20 3c 49 6d  61 67 65 72 79 24 44 69  |LOAD <Imagery$Di|
000136b0  72 3e 2e 4f 76 65 72 6c  61 79 73 2e 22 2b c3 50  |r>.Overlays."+.P|
000136c0  4e 25 2b 22 20 22 2b c3  7e 28 50 41 54 43 48 25  |N%+" "+.~(PATCH%|
000136d0  2d 32 29 29 0d 5a 3c 10  4c 41 50 41 54 43 48 25  |-2)).Z<.LAPATCH%|
000136e0  3d 50 4e 25 0d 5a 46 05  e1 0d 5a 50 04 0d 5a 5a  |=PN%.ZF...ZP..ZZ|
000136f0  20 dd f2 7a 6f 6f 6d 63  6c 69 63 6b 3a 49 52 50  | ..zoomclick:IRP|
00013700  25 3d a4 70 65 72 63 28  33 33 2c 38 29 0d 5a 64  |%=.perc(33,8).Zd|
00013710  1c f2 61 72 72 6f 77 73  28 33 33 2c 35 2c 36 2c  |..arrows(33,5,6,|
00013720  38 2c 31 2c 32 35 2c 31  29 0d 5a 6e 38 e7 20 4d  |8,1,25,1).Zn8. M|
00013730  4f 55 49 43 25 3e 32 34  20 80 20 4d 4f 55 49 43  |OUIC%>24 . MOUIC|
00013740  25 3c 33 33 20 8c 20 f2  73 69 28 33 33 2c 38 2c  |%<33 . .si(33,8,|
00013750  c3 28 28 4d 4f 55 49 43  25 2d 32 34 29 2a 32 29  |.((MOUIC%-24)*2)|
00013760  29 0d 5a 78 5b 49 47 50  25 3d a4 70 65 72 63 28  |).Zx[IGP%=.perc(|
00013770  33 33 2c 38 29 3a e7 20  49 52 50 25 3c 3e 49 47  |33,8):. IRP%<>IG|
00013780  50 25 20 8c 20 5a 4f 4f  4d 53 25 3d 49 47 50 25  |P% . ZOOMS%=IGP%|
00013790  2a 34 3a f2 67 65 74 73  6c 6f 72 28 33 33 2c 33  |*4:.getslor(33,3|
000137a0  39 29 3a f2 72 65 64 72  61 77 73 6c 69 64 28 33  |9):.redrawslid(3|
000137b0  33 2c 31 31 2c 49 47 50  25 2a 34 29 0d 5a 82 39  |3,11,IGP%*4).Z.9|
000137c0  e7 20 4d 4f 55 49 43 25  3d 33 39 20 8c 20 5a 4f  |. MOUIC%=39 . ZO|
000137d0  4f 4d 53 25 3d a4 73 6c  69 64 68 69 74 28 33 33  |OMS%=.slidhit(33|
000137e0  2c 33 39 2c 4d 4f 55 58  25 2c 4d 4f 55 59 25 2c  |,39,MOUX%,MOUY%,|
000137f0  31 31 2c 34 29 0d 5a 8c  14 e7 20 4d 4f 55 49 43  |11,4).Z... MOUIC|
00013800  25 3c 3e 34 32 20 8c 20  e1 0d 5a 96 2a 5a 4f 4f  |%<>42 . ..Z.*ZOO|
00013810  4d 25 3d bb 28 a4 67 69  28 33 33 2c 38 29 29 3a  |M%=.(.gi(33,8)):|
00013820  e7 20 5a 4f 4f 4d 25 3c  31 20 8c 20 5a 4f 4f 4d  |. ZOOM%<1 . ZOOM|
00013830  25 3d 31 0d 5a a0 1c f2  7a 6f 6f 6d 73 69 7a 65  |%=1.Z...zoomsize|
00013840  3a f2 66 6f 72 63 65 64  72 61 77 6d 61 69 6e 0d  |:.forcedrawmain.|
00013850  5a aa 18 e7 20 4d 4f 55  42 25 3c 3e 31 20 8c 20  |Z... MOUB%<>1 . |
00013860  f2 6d 65 6e 6f 66 66 0d  5a b4 05 e1 0d 5a be 04  |.menoff.Z....Z..|
00013870  0d 5a c8 10 dd f2 72 65  64 72 61 77 7a 6f 6f 6d  |.Z....redrawzoom|
00013880  0d 5a d2 27 c8 99 20 22  57 69 6d 70 5f 52 65 64  |.Z.'.. "Wimp_Red|
00013890  72 61 77 57 69 6e 64 6f  77 22 2c 2c 42 4c 4b 25  |rawWindow",,BLK%|
000138a0  20 b8 20 46 49 4e 25 0d  5a dc 2e 57 4f 58 25 3d  | . FIN%.Z..WOX%=|
000138b0  42 4c 4b 25 21 34 2d 42  4c 4b 25 21 32 30 3a 57  |BLK%!4-BLK%!20:W|
000138c0  4f 59 25 3d 28 42 4c 4b  25 21 31 36 2d 42 4c 4b  |OY%=(BLK%!16-BLK|
000138d0  25 21 32 34 29 0d 5a e6  4c c8 95 20 46 49 4e 25  |%!24).Z.L.. FIN%|
000138e0  3a f2 73 6c 69 64 70 6c  6f 74 28 33 33 2c 33 39  |:.slidplot(33,39|
000138f0  2c 5a 4f 4f 4d 53 25 2c  31 31 29 3a c8 99 20 22  |,ZOOMS%,11):.. "|
00013900  57 69 6d 70 5f 47 65 74  52 65 63 74 61 6e 67 6c  |Wimp_GetRectangl|
00013910  65 22 2c 2c 42 4c 4b 25  20 b8 20 46 49 4e 25 3a  |e",,BLK% . FIN%:|
00013920  ce 0d 5a f0 05 e1 0d 5a  fa 04 0d 5b 04 0f dd f2  |..Z....Z...[....|
00013930  72 65 64 72 61 77 72 67  62 0d 5b 0e 27 c8 99 20  |redrawrgb.[.'.. |
00013940  22 57 69 6d 70 5f 52 65  64 72 61 77 57 69 6e 64  |"Wimp_RedrawWind|
00013950  6f 77 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |ow",,BLK% . FIN%|
00013960  0d 5b 18 2e 57 4f 58 25  3d 42 4c 4b 25 21 34 2d  |.[..WOX%=BLK%!4-|
00013970  42 4c 4b 25 21 32 30 3a  57 4f 59 25 3d 28 42 4c  |BLK%!20:WOY%=(BL|
00013980  4b 25 21 31 36 2d 42 4c  4b 25 21 32 34 29 0d 5b  |K%!16-BLK%!24).[|
00013990  22 7b c8 95 20 46 49 4e  25 3a f2 73 6c 69 64 70  |"{.. FIN%:.slidp|
000139a0  6c 6f 74 28 32 31 2c 33  30 2c 52 53 4c 25 2c 31  |lot(21,30,RSL%,1|
000139b0  31 29 3a f2 73 6c 69 64  70 6c 6f 74 28 32 31 2c  |1):.slidplot(21,|
000139c0  33 31 2c 47 53 4c 25 2c  31 30 29 3a f2 73 6c 69  |31,GSL%,10):.sli|
000139d0  64 70 6c 6f 74 28 32 31  2c 33 32 2c 42 53 4c 25  |dplot(21,32,BSL%|
000139e0  2c 38 29 3a c8 99 20 22  57 69 6d 70 5f 47 65 74  |,8):.. "Wimp_Get|
000139f0  52 65 63 74 61 6e 67 6c  65 22 2c 2c 42 4c 4b 25  |Rectangle",,BLK%|
00013a00  20 b8 20 46 49 4e 25 3a  ce 0d 5b 2c 05 e1 0d 5b  | . FIN%:..[,...[|
00013a10  36 04 0d 5b 40 1e dd f2  73 6c 69 64 70 6c 6f 74  |6..[@...slidplot|
00013a20  28 57 48 25 2c 49 48 25  2c 56 25 2c 43 4f 25 29  |(WH%,IH%,V%,CO%)|
00013a30  0d 5b 4a 42 21 49 43 42  4c 4b 25 3d 48 41 4e 44  |.[JB!ICBLK%=HAND|
00013a40  25 28 57 48 25 29 3a 49  43 42 4c 4b 25 21 34 3d  |%(WH%):ICBLK%!4=|
00013a50  49 48 25 3a c8 99 20 22  57 69 6d 70 5f 47 65 74  |IH%:.. "Wimp_Get|
00013a60  49 63 6f 6e 53 74 61 74  65 22 2c 2c 49 43 42 4c  |IconState",,ICBL|
00013a70  4b 25 0d 5b 54 1b c8 99  20 22 57 69 6d 70 5f 53  |K%.[T... "Wimp_S|
00013a80  65 74 43 6f 6c 6f 75 72  22 2c 43 4f 25 0d 5b 5e  |etColour",CO%.[^|
00013a90  30 4d 58 25 3d 57 4f 58  25 2b 28 49 43 42 4c 4b  |0MX%=WOX%+(ICBLK|
00013aa0  25 21 38 29 2b 32 3a 4d  59 25 3d 57 4f 59 25 2b  |%!8)+2:MY%=WOY%+|
00013ab0  28 49 43 42 4c 4b 25 21  31 32 29 2b 34 0d 5b 68  |(ICBLK%!12)+4.[h|
00013ac0  5d c8 93 20 c8 90 20 4d  58 25 2c 4d 59 25 2c 56  |].. .. MX%,MY%,V|
00013ad0  25 2a 32 2c 31 35 3a e7  20 56 25 3c 31 30 30 20  |%*2,15:. V%<100 |
00013ae0  8c 20 c8 99 20 22 57 69  6d 70 5f 53 65 74 43 6f  |. .. "Wimp_SetCo|
00013af0  6c 6f 75 72 22 2c 31 3a  c8 93 20 c8 90 20 4d 58  |lour",1:.. .. MX|
00013b00  25 2b 28 56 25 2a 32 29  2c 4d 59 25 2c 28 31 30  |%+(V%*2),MY%,(10|
00013b10  30 2d 56 25 29 2a 32 2c  31 35 0d 5b 72 05 e1 0d  |0-V%)*2,15.[r...|
00013b20  5b 7c 04 0d 5b 86 26 dd  a4 73 6c 69 64 68 69 74  |[|..[.&..slidhit|
00013b30  28 57 48 25 2c 49 48 25  2c 4d 58 25 2c 4d 59 25  |(WH%,IH%,MX%,MY%|
00013b40  2c 43 4f 25 2c 57 45 25  29 0d 5b 90 1b f2 67 65  |,CO%,WE%).[...ge|
00013b50  74 73 6c 6f 72 28 57 48  25 2c 49 48 25 29 3a 4d  |tslor(WH%,IH%):M|
00013b60  42 25 3d 34 0d 5b 9a 05  f5 0d 5b a4 1c c8 97 20  |B%=4.[....[.... |
00013b70  c8 93 20 57 4f 58 25 2d  32 2c 57 4f 59 25 2c 32  |.. WOX%-2,WOY%,2|
00013b80  30 32 2c 31 34 0d 5b ae  27 56 25 3d 28 28 4d 58  |02,14.[.'V%=((MX|
00013b90  25 2d 28 57 4f 58 25 2d  32 29 29 81 32 29 3a e7  |%-(WOX%-2)).2):.|
00013ba0  20 56 25 3c 30 20 8c 20  56 25 3d 30 0d 5b b8 15  | V%<0 . V%=0.[..|
00013bb0  e7 20 56 25 3e 31 30 30  20 8c 20 56 25 3d 31 30  |. V%>100 . V%=10|
00013bc0  30 0d 5b c2 2d f2 67 65  74 73 6c 6f 72 28 57 48  |0.[.-.getslor(WH|
00013bd0  25 2c 49 48 25 29 3a f2  72 65 64 72 61 77 73 6c  |%,IH%):.redrawsl|
00013be0  69 64 28 57 48 25 2c 43  4f 25 2c 56 25 29 0d 5b  |id(WH%,CO%,V%).[|
00013bf0  cc 13 f2 73 6c 69 64 75  64 28 57 45 25 2c 56 25  |...slidud(WE%,V%|
00013c00  29 0d 5b d6 12 c8 97 20  4d 58 25 2c 4d 59 25 2c  |).[.... MX%,MY%,|
00013c10  4d 42 25 0d 5b e0 0b fd  20 4d 42 25 3d 30 0d 5b  |MB%.[... MB%=0.[|
00013c20  ea 65 c8 99 20 22 4f 53  5f 52 65 61 64 4d 6f 64  |.e.. "OS_ReadMod|
00013c30  65 56 61 72 69 61 62 6c  65 22 2c 2d 31 2c 34 20  |eVariable",-1,4 |
00013c40  b8 20 2c 2c 4d 58 25 3a  c8 99 20 22 4f 53 5f 52  |. ,,MX%:.. "OS_R|
00013c50  65 61 64 4d 6f 64 65 56  61 72 69 61 62 6c 65 22  |eadModeVariable"|
00013c60  2c 2d 31 2c 35 20 b8 20  2c 2c 4d 59 25 3a 4d 58  |,-1,5 . ,,MY%:MX|
00013c70  25 3d 31 3c 3c 4d 58 25  3a 4d 59 25 3d 31 3c 3c  |%=1<<MX%:MY%=1<<|
00013c80  4d 59 25 0d 5b f4 51 c8  99 20 22 4f 53 5f 52 65  |MY%.[.Q.. "OS_Re|
00013c90  61 64 4d 6f 64 65 56 61  72 69 61 62 6c 65 22 2c  |adModeVariable",|
00013ca0  2d 31 2c 31 31 20 b8 20  2c 2c 43 4f 25 3a c8 99  |-1,11 . ,,CO%:..|
00013cb0  20 22 4f 53 5f 52 65 61  64 4d 6f 64 65 56 61 72  | "OS_ReadModeVar|
00013cc0  69 61 62 6c 65 22 2c 2d  31 2c 31 32 20 b8 20 2c  |iable",-1,12 . ,|
00013cd0  2c 57 45 25 0d 5b fe 1d  c8 97 20 c8 93 20 30 2c  |,WE%.[.... .. 0,|
00013ce0  30 2c 43 4f 25 2a 4d 58  25 2c 57 45 25 2a 4d 59  |0,CO%*MX%,WE%*MY|
00013cf0  25 0d 5c 08 07 3d 56 25  0d 5c 12 04 0d 5c 1c 16  |%.\..=V%.\...\..|
00013d00  dd f2 67 65 74 73 6c 6f  72 28 57 48 25 2c 49 48  |..getslor(WH%,IH|
00013d10  25 29 0d 5c 26 37 21 49  43 42 4c 4b 25 3d 48 41  |%).\&7!ICBLK%=HA|
00013d20  4e 44 25 28 57 48 25 29  3a c8 99 20 22 57 69 6d  |ND%(WH%):.. "Wim|
00013d30  70 5f 47 65 74 57 69 6e  64 6f 77 53 74 61 74 65  |p_GetWindowState|
00013d40  22 2c 2c 49 43 42 4c 4b  25 0d 5c 30 36 57 4f 58  |",,ICBLK%.\06WOX|
00013d50  25 3d 49 43 42 4c 4b 25  21 34 2d 49 43 42 4c 4b  |%=ICBLK%!4-ICBLK|
00013d60  25 21 32 30 3a 57 4f 59  25 3d 28 49 43 42 4c 4b  |%!20:WOY%=(ICBLK|
00013d70  25 21 31 36 2d 49 43 42  4c 4b 25 21 32 34 29 0d  |%!16-ICBLK%!24).|
00013d80  5c 3a 42 21 49 43 42 4c  4b 25 3d 48 41 4e 44 25  |\:B!ICBLK%=HAND%|
00013d90  28 57 48 25 29 3a 49 43  42 4c 4b 25 21 34 3d 49  |(WH%):ICBLK%!4=I|
00013da0  48 25 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 49  |H%:.. "Wimp_GetI|
00013db0  63 6f 6e 53 74 61 74 65  22 2c 2c 49 43 42 4c 4b  |conState",,ICBLK|
00013dc0  25 0d 5c 44 2a 57 4f 58  25 2b 3d 28 49 43 42 4c  |%.\D*WOX%+=(ICBL|
00013dd0  4b 25 21 38 29 2b 32 3a  57 4f 59 25 2b 3d 28 49  |K%!8)+2:WOY%+=(I|
00013de0  43 42 4c 4b 25 21 31 32  29 2b 34 0d 5c 4e 05 e1  |CBLK%!12)+4.\N..|
00013df0  0d 5c 58 04 0d 5c 62 1c  dd f2 72 65 64 72 61 77  |.\X..\b...redraw|
00013e00  73 6c 69 64 28 57 48 25  2c 43 4f 25 2c 56 25 29  |slid(WH%,CO%,V%)|
00013e10  0d 5c 6c 73 21 49 43 42  4c 4b 25 3d 48 41 4e 44  |.\ls!ICBLK%=HAND|
00013e20  25 28 57 48 25 29 3a 49  43 42 4c 4b 25 21 34 3d  |%(WH%):ICBLK%!4=|
00013e30  28 49 43 42 4c 4b 25 21  38 29 2b 32 3a 49 43 42  |(ICBLK%!8)+2:ICB|
00013e40  4c 4b 25 21 38 3d 28 49  43 42 4c 4b 25 21 31 32  |LK%!8=(ICBLK%!12|
00013e50  29 2b 34 3a 49 43 42 4c  4b 25 21 31 32 3d 28 49  |)+4:ICBLK%!12=(I|
00013e60  43 42 4c 4b 25 21 31 36  29 2d 32 3a 49 43 42 4c  |CBLK%!16)-2:ICBL|
00013e70  4b 25 21 31 36 3d 28 49  43 42 4c 4b 25 21 32 30  |K%!16=(ICBLK%!20|
00013e80  29 2d 34 0d 5c 76 29 c8  99 20 22 57 69 6d 70 5f  |)-4.\v).. "Wimp_|
00013e90  55 70 64 61 74 65 57 69  6e 64 6f 77 22 2c 2c 49  |UpdateWindow",,I|
00013ea0  43 42 4c 4b 25 20 b8 20  46 49 4e 25 0d 5c 80 83  |CBLK% . FIN%.\..|
00013eb0  c8 95 20 46 49 4e 25 3a  c8 99 20 22 57 69 6d 70  |.. FIN%:.. "Wimp|
00013ec0  5f 53 65 74 43 6f 6c 6f  75 72 22 2c 43 4f 25 3a  |_SetColour",CO%:|
00013ed0  c8 93 20 c8 90 20 57 4f  58 25 2c 57 4f 59 25 2c  |.. .. WOX%,WOY%,|
00013ee0  56 25 2a 32 2c 31 35 3a  e7 20 56 25 3c 31 30 30  |V%*2,15:. V%<100|
00013ef0  20 8c 20 c8 99 20 22 57  69 6d 70 5f 53 65 74 43  | . .. "Wimp_SetC|
00013f00  6f 6c 6f 75 72 22 2c 31  3a c8 93 20 c8 90 20 57  |olour",1:.. .. W|
00013f10  4f 58 25 2b 28 56 25 2a  32 29 2b 32 2c 57 4f 59  |OX%+(V%*2)+2,WOY|
00013f20  25 2c 28 31 30 30 2d 56  25 29 2a 32 2c 31 35 0d  |%,(100-V%)*2,15.|
00013f30  5c 8a 2b c8 99 20 22 57  69 6d 70 5f 47 65 74 52  |\.+.. "Wimp_GetR|
00013f40  65 63 74 61 6e 67 6c 65  22 2c 2c 49 43 42 4c 4b  |ectangle",,ICBLK|
00013f50  25 20 b8 20 46 49 4e 25  3a ce 0d 5c 94 05 e1 0d  |% . FIN%:..\....|
00013f60  5c 9e 04 0d 5c a8 17 dd  f2 75 69 28 57 48 32 25  |\...\....ui(WH2%|
00013f70  2c 49 48 32 25 2c 49 54  24 29 0d 5c b2 16 f2 73  |,IH2%,IT$).\...s|
00013f80  69 28 57 48 32 25 2c 49  48 32 25 2c 49 54 24 29  |i(WH2%,IH2%,IT$)|
00013f90  0d 5c bc 3b 50 4f 49 25  21 31 32 30 3d 48 41 4e  |.\.;POI%!120=HAN|
00013fa0  44 25 28 57 48 32 25 29  3a c8 99 20 22 57 69 6d  |D%(WH2%):.. "Wim|
00013fb0  70 5f 47 65 74 57 69 6e  64 6f 77 53 74 61 74 65  |p_GetWindowState|
00013fc0  22 2c 2c 50 4f 49 25 2b  31 32 30 0d 5c c6 35 57  |",,POI%+120.\.5W|
00013fd0  4f 58 32 25 3d 50 4f 49  25 21 31 32 34 2d 50 4f  |OX2%=POI%!124-PO|
00013fe0  49 25 21 31 34 30 3a 57  4f 59 32 25 3d 28 50 4f  |I%!140:WOY2%=(PO|
00013ff0  49 25 21 31 33 36 2d 50  4f 49 25 21 31 34 34 29  |I%!136-POI%!144)|
00014000  0d 5c d0 47 50 4f 49 25  21 31 32 30 3d 48 41 4e  |.\.GPOI%!120=HAN|
00014010  44 25 28 57 48 32 25 29  3a 50 4f 49 25 21 31 32  |D%(WH2%):POI%!12|
00014020  34 3d 49 48 32 25 3a c8  99 20 22 57 69 6d 70 5f  |4=IH2%:.. "Wimp_|
00014030  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 50  |GetIconState",,P|
00014040  4f 49 25 2b 31 32 30 0d  5c da 2b 57 4f 58 32 25  |OI%+120.\.+WOX2%|
00014050  2b 3d 28 50 4f 49 25 21  31 32 38 29 2b 32 3a 57  |+=(POI%!128)+2:W|
00014060  4f 59 32 25 2b 3d 28 50  4f 49 25 21 31 33 32 29  |OY2%+=(POI%!132)|
00014070  2b 34 0d 5c e4 2b c8 99  20 22 57 69 6d 70 5f 55  |+4.\.+.. "Wimp_U|
00014080  70 64 61 74 65 57 69 6e  64 6f 77 22 2c 2c 50 4f  |pdateWindow",,PO|
00014090  49 25 2b 31 32 30 20 b8  20 46 49 4e 25 0d 5c ee  |I%+120 . FIN%.\.|
000140a0  35 c8 95 20 46 49 4e 25  3a c8 99 20 22 57 69 6d  |5.. FIN%:.. "Wim|
000140b0  70 5f 47 65 74 52 65 63  74 61 6e 67 6c 65 22 2c  |p_GetRectangle",|
000140c0  2c 50 4f 49 25 2b 31 32  30 20 b8 20 46 49 4e 25  |,POI%+120 . FIN%|
000140d0  3a ce 0d 5c f8 05 e1 0d  5d 02 04 0d 5d 0c 24 dd  |:..\....]...].$.|
000140e0  f2 73 63 72 65 65 6e 74  6f 77 6f 72 6b 28 57 45  |.screentowork(WE|
000140f0  25 2c 20 f8 20 54 58 25  2c f8 20 54 59 25 29 0d  |%, . TX%,. TY%).|
00014100  5d 16 32 50 4f 49 25 21  31 32 38 3d 57 45 25 3a  |].2POI%!128=WE%:|
00014110  c8 99 22 57 69 6d 70 5f  47 65 74 57 69 6e 64 6f  |.."Wimp_GetWindo|
00014120  77 53 74 61 74 65 22 2c  2c 50 4f 49 25 2b 31 32  |wState",,POI%+12|
00014130  38 0d 5d 20 23 54 58 25  3d 28 54 58 25 2d 28 50  |8.] #TX%=(TX%-(P|
00014140  4f 49 25 21 31 33 32 29  29 2b 28 50 4f 49 25 21  |OI%!132))+(POI%!|
00014150  31 34 38 29 0d 5d 2a 23  54 59 25 3d 28 54 59 25  |148).]*#TY%=(TY%|
00014160  2d 28 50 4f 49 25 21 31  34 34 29 29 2b 28 50 4f  |-(POI%!144))+(PO|
00014170  49 25 21 31 35 32 29 0d  5d 34 05 e1 0d 5d 3e 04  |I%!152).]4...]>.|
00014180  0d 5d 48 13 dd f2 73 61  76 65 73 65 74 73 28 49  |.]H...savesets(I|
00014190  54 24 29 0d 5d 52 05 e1  0d 5d 5c 04 0d 5d 66 36  |T$).]R...]\..]f6|
000141a0  dd f2 6c 6f 61 64 73 65  74 73 28 49 54 24 29 3a  |..loadsets(IT$):|
000141b0  e7 20 ac 20 4e 4f 4c 25  20 8c 20 f2 6b 69 6c 6c  |. . NOL% . .kill|
000141c0  66 3a 46 55 53 45 25 3d  2d 31 3a f2 6d 65 6e 6f  |f:FUSE%=-1:.meno|
000141d0  66 66 0d 5d 70 19 e7 20  55 4e 44 4f 25 3c 3e 2d  |ff.]p.. UNDO%<>-|
000141e0  31 20 8c 20 f2 64 69 75  6e 64 6f 0d 5d 7a 3e 57  |1 . .diundo.]z>W|
000141f0  45 25 3d 8e 28 49 54 24  29 3a e7 20 57 45 25 3d  |E%=.(IT$):. WE%=|
00014200  30 20 8c 20 f2 6d 65 73  73 61 67 65 28 32 2c 22  |0 . .message(2,"|
00014210  43 6f 75 6c 64 20 6e 6f  74 20 6c 6f 61 64 20 73  |Could not load s|
00014220  65 74 74 69 6e 67 73 22  29 0d 5d 84 0d 49 54 24  |ettings").]..IT$|
00014230  3d be 23 57 45 25 0d 5d  8e 3e e3 4c 25 3d 30 20  |=.#WE%.].>.L%=0 |
00014240  b8 20 31 35 3a e3 4b 25  3d 30 20 b8 20 31 3a e3  |. 15:.K%=0 . 1:.|
00014250  49 25 3d 30 20 b8 20 34  3a e8 23 57 45 25 2c 47  |I%=0 . 4:.#WE%,G|
00014260  52 46 49 25 28 4c 25 2c  4b 25 2c 49 25 29 3a ed  |RFI%(L%,K%,I%):.|
00014270  3a ed 3a ed 0d 5d 98 23  c8 99 20 22 4f 53 5f 47  |:.:..].#.. "OS_G|
00014280  42 50 42 22 2c 34 2c 57  45 25 2c 42 52 55 53 48  |BPB",4,WE%,BRUSH|
00014290  25 2c 31 33 30 30 30 0d  5d a2 21 c8 99 20 22 4f  |%,13000.].!.. "O|
000142a0  53 5f 47 42 50 42 22 2c  34 2c 57 45 25 2c 54 52  |S_GBPB",4,WE%,TR|
000142b0  41 53 50 25 2c 32 35 36  0d 5d ac 23 c8 99 20 22  |ASP%,256.].#.. "|
000142c0  4f 53 5f 47 42 50 42 22  2c 34 2c 57 45 25 2c 50  |OS_GBPB",4,WE%,P|
000142d0  46 49 4c 4c 53 25 2c 37  30 30 30 0d 5d b6 5b e8  |FILLS%,7000.].[.|
000142e0  23 57 45 25 2c 47 52 4c  4f 25 2c 4b 55 4b 45 25  |#WE%,GRLO%,KUKE%|
000142f0  2c 4b 53 43 25 2c 55 4e  44 4f 25 2c 47 52 43 4f  |,KSC%,UNDO%,GRCO|
00014300  25 2c 50 41 4c 45 25 2c  54 58 25 2c 47 52 49 57  |%,PALE%,TX%,GRIW|
00014310  49 25 2c 47 52 49 48 45  25 2c 47 52 42 58 25 2c  |I%,GRIHE%,GRBX%,|
00014320  47 52 42 59 25 2c 46 24  3a f2 73 69 28 33 30 2c  |GRBY%,F$:.si(30,|
00014330  32 37 2c 46 24 29 0d 5d  c0 7b f2 73 69 28 31 30  |27,F$).].{.si(10|
00014340  2c 34 38 2c c3 28 54 58  25 29 29 3a e3 4c 25 3d  |,48,.(TX%)):.L%=|
00014350  31 20 b8 20 54 58 25 3a  f2 63 6c 65 61 72 69 63  |1 . TX%:.clearic|
00014360  6f 6e 28 31 30 2c a4 6c  69 70 61 61 64 6a 28 4c  |on(10,.lipaadj(L|
00014370  25 2b 36 29 29 3a ed 3a  e7 20 54 58 25 3c 34 30  |%+6)):.:. TX%<40|
00014380  20 8c 20 e3 4c 25 3d 54  58 25 2b 31 20 b8 20 34  | . .L%=TX%+1 . 4|
00014390  30 3a f2 73 68 61 64 65  69 63 6f 6e 28 31 30 2c  |0:.shadeicon(10,|
000143a0  a4 6c 69 70 61 61 64 6a  28 4c 25 2b 36 29 29 3a  |.lipaadj(L%+6)):|
000143b0  ed 0d 5d ca 58 e3 4c 25  3d 30 20 b8 20 33 39 3a  |..].X.L%=0 . 39:|
000143c0  e8 23 57 45 25 2c 54 58  25 3a e7 20 54 58 25 20  |.#WE%,TX%:. TX% |
000143d0  8c 20 f2 69 63 6f 6e 68  69 28 31 30 2c a4 6c 69  |. .iconhi(10,.li|
000143e0  70 61 61 64 6a 28 4c 25  2b 37 29 29 20 8b 20 f2  |paadj(L%+7)) . .|
000143f0  69 63 6f 6e 6c 6f 28 31  30 2c a4 6c 69 70 61 61  |iconlo(10,.lipaa|
00014400  64 6a 28 4c 25 2b 37 29  29 0d 5d d4 05 ed 0d 5d  |dj(L%+7)).]....]|
00014410  de 1e e3 4c 25 3d 30 20  b8 20 35 3a e8 23 57 45  |...L%=0 . 5:.#WE|
00014420  25 2c 50 41 54 25 28 4c  25 29 3a ed 0d 5d e8 2d  |%,PAT%(L%):..].-|
00014430  e3 4c 25 3d 30 20 b8 20  38 3a e3 4b 25 3d 30 20  |.L%=0 . 8:.K%=0 |
00014440  b8 20 34 3a e8 23 57 45  25 2c 45 43 46 25 28 4c  |. 4:.#WE%,ECF%(L|
00014450  25 2c 4b 25 29 3a ed 3a  ed 0d 5d f2 1f d9 23 57  |%,K%):.:..]...#W|
00014460  45 25 3a e7 20 55 4e 44  4f 25 3c 3e 2d 31 20 8c  |E%:. UNDO%<>-1 .|
00014470  20 f2 65 6e 75 6e 64 6f  0d 5d fc 1c f2 62 75 69  | .enundo.]...bui|
00014480  6c 64 69 63 6f 6e 6d 65  6e 75 3a f2 62 75 69 6c  |ldiconmenu:.buil|
00014490  64 6d 6d 32 0d 5e 06 1d  e7 20 ac 20 4e 4f 4c 25  |dmm2.^... . NOL%|
000144a0  20 8c 20 f2 66 6f 72 63  65 64 72 61 77 6d 61 69  | . .forcedrawmai|
000144b0  6e 0d 5e 10 05 e1 0d 5e  1a 04 0d 5e 24 29 dd f2  |n.^....^...^$)..|
000144c0  74 6b 68 28 49 43 25 29  3a 54 4b 48 25 3d 49 43  |tkh(IC%):TKH%=IC|
000144d0  25 3a f2 69 63 6f 6e 68  69 28 33 32 2c 49 43 25  |%:.iconhi(32,IC%|
000144e0  29 3a e1 0d 5e 2e 04 0d  5e 38 15 f4 20 2d 2d 2d  |):..^...^8.. ---|
000144f0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 0d ff        |------------..|
000144fe