Home » Archimedes archive » Acorn Computing » 1993 01 Mega Disk.adf » !_93_01 » Imagery/!TinyImage/!RunImage

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 » Acorn Computing » 1993 01 Mega Disk.adf » !_93_01
Filename: Imagery/!TinyImage/!RunImage
Read OK:
File size: 14086 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
  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
  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
  700DEFFNmad(MAD%):=MENAD%+(MAD%*4)
  710DEFFNcmad(MAD%):=MENAD%!(MAD%*4)
  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
  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
 1070DEFPROCloadfonts
 1080FONTS%=0:ENDPROC
 1100DEFPROCloadsprites
 1110ENDPROC
 1130DEFPROCaction:SYS "Wimp_ForceRedraw",-1,0,0,&3000,&3000
 1150REPEAT
 1160PROCpoll
 1170UNTIL (REAS%=17 OR REAS%=18) AND BLK%!16=0
 1180ENDPROC
 1200DEFPROCdie:OP%=0:PROCspbuf(0)
 1210FORL%=1 TO 4:OSCLI("*REMOVE <Imagery$Dir>.XPIC"+STR$L%):NEXT
 1220SYS "Wimp_CloseDown",THAND%,!TAS%
 1230END
 1240ENDPROC
 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
 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
 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
 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
 1930DEFPROCforcedrawwob:SYS "Wimp_ForceRedraw",HAND%(30),0,-564,480,220:ENDPROC
 1950DEFPROCredrawbrush
 1960SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 1970PROCgetrdor(260)
 1980WHILE FIN%:PROCplotbrushes:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 1990ENDWHILE
 2000ENDPROC
 2020DEFPROCredrawedbru
 2030SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 2040PROCgetrdor(640+(EDTY%*260))
 2050WHILE FIN%:PROCplotedbru:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 2060ENDWHILE
 2070ENDPROC
 2090DEFPROCredrawpatfill
 2100SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 2110PROCgetrdor(108)
 2120WHILE FIN%:PROCplotpatfill:SYS "Wimp_GetRectangle",,BLK% TO FIN%
 2130ENDWHILE
 2140ENDPROC
 2160DEFPROCforcedrawpatfill:SYS "Wimp_ForceRedraw",HAND%(20),0,-108,1100,0:ENDPROC
 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
 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
 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
 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
 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
 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
 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
 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
 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
 3270DEFPROCinpicR:SYS "OS_SpriteOp",316,PIC%,"PIC" TO B1,B2,B3,B4:ENDPROC
 3290DEFPROCinbackup:SYS "OS_SpriteOp",316,SPBUF%,"PIC" TO B1,B2,B3,B4:ENDPROC
 3310DEFPROCinsprite(ma%,sa%,sn$):SYS &2E,316+ma%,sa%,sn$ TO IS1,IS2,IS3,IS4:ENDPROC
 3330DEFPROCoutsprite:SYS &2E,IS1,IS2,IS3,IS4:ENDPROC
 3350DEFPROCoutbackup:SYS "OS_SpriteOp",B1,B2,B3,B4:ENDPROC
 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
 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
 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
 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
 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
 4020DEFPROCinpal:SYS "OS_SpriteOp",316,PAL%,"Palette" TO V1,V2,V3,V4:ENDPROC
 4040DEFPROCoutpal:SYS "OS_SpriteOp",V1,V2,V3,V4:ENDPROC
 4060DEFPROCtrasp(TC%)
 4070PROCinpal:PROCtrasp2(TC%):PROCoutpal
 4080ENDPROC
 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
 4180DEFPROCredrawpal
 4190SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 4200PROCgetrdor(228)
 4210WHILE FIN%:PROCplotpal(PAL%):SYS "Wimp_GetRectangle",,BLK% TO FIN%
 4220ENDWHILE
 4230ENDPROC
 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
 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
 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
 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
 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
 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
 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
 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
 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
 5310DEFFNctb(co%,ti%):by%=-1:FORL%=0 to 255
 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
 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
 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
 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
 5790DEFPROCredrawgraph
 5800SYS "Wimp_RedrawWindow",,BLK% TO FIN%
 5810PROCgetgraphor
 5820WHILE FIN%:PROCdrawgraph:SYS "Wimp_GetRectangle",,BLK% TO FIN%:ENDWHILE:ENDPROC
 5840DEFPROCgetgraphor
 5850WOX%=(BLK%!4-BLK%!20)+44
 5860WOY%=(BLK%!16-BLK%!24)-256
 5870ENDPROC
 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
 5990DEFPROCgetpator
 6000WOX%=(BLK%!4-BLK%!20)+180
 6010WOY%=(BLK%!16-BLK%!24)-340
 6020ENDPROC
 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
 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
 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
 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
 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
 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
 7550DEFFNperc(WH%,IH%)
 7560I$=FNgi(WH%,IH%):IF RIGHT$(I$,1)="%" THEN I$=LEFT$(I$,LEN(I$)-1)
 7570=VAL(I$)
 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
 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
 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
 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
 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
 8230DEFPROCelip(PL%,DX%,DY%)
 8240MOVE X%(0),Y%(0)
 8250MOVE X%(1),Y%(1)
 8260PLOT PL%,DX%,DY%
 8270ENDPROC
 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
 8330DEFFNdist(DX%,DY%):=SQR(((DX%-X%(0))^2)+((DY%-Y%(0))^2))
 8350DEFPROCpaintbrush(BX%,BY%):SYS&2E,306,BRUSH%,STR$(SELBR%),BX%-(32*XR),BY%-(32*YR),,SCALE%:ENDPROC
 8370DEFPROCpaintbrush2(BX%,BY%):SYS&2E,305,BRUSH%,STR$(SELBR%),BX%-32,BY%-32:ENDPROC
 8390DEFPROCletgo:LEGO%=TRUE:ENDPROC:REPEAT:MOUSE X%,Y%,H%:UNTIL H%=0:ENDPROC
 8410DEFPROCkillf:LAOPWI%=-1:IF TKH%<>-1 THEN PROCiconlo(32,TKH%):TKH%=-1
 8420CASE FUSE% OF
 8430IF FUSE%<>32 THEN PROCspbuf(0)
 8450
 8460WHEN 4:PROCclosewind(5):IF FUST%>0 THEN PROCinpic:PROCpaintscale:PROCeorback:PROCpaintbrush(OX%,OY%):PROCoutpic:PROCquickdrawmain
 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
 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
 8860
 8870WHEN 47:PROCclosewind(29):PROCmeoc
 8880WHEN 48:PROCclosewind(30):PROCmeoc
 8890ENDCASE
 8900PROCwindname(2,PIC$)
 8910ENDPROC
 8930DEFPROCmeoc:PROCspinit:IF FUST%=1 THEN PROCinpic:PROCeoc:RECTANGLE X%(0),Y%(0),OX%-X%(0),OY%-Y%(0):PROCoutpic:PROCquickdrawmain
 8940ENDPROC
 8960DEFPROCeoc:GCOL3,63 TINT 192:ENDPROC
 8980DEFPROCeorback:GCOL3,191 TINT 192:ENDPROC
 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
 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
 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
 9330DEFPROCgetrdor(WE%)
 9340WOX%=BLK%!4-BLK%!20:WOY%=(BLK%!16-BLK%!24)-WE%:ENDPROC
 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
 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
 9440DEFPROCopenwind(WH%):IF WH%>2 THEN LAOPWI%=WH%
 9450!BLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,BLK%
 9460BLK%!28=-1:SYS "Wimp_OpenWindow",,BLK%
 9470ENDPROC
 9490DEFPROCclosewind(WH%)
 9500!BLK%=HAND%(WH%):SYS "Wimp_CloseWindow",,BLK%
 9510ENDPROC
 9530DEFPROCopmain
 9540SYS "Wimp_OpenWindow",,BLK%
 9550ENDPROC
 9570DEFPROCclmain:MOP%=FALSE
 9580SYS "Wimp_CloseWindow",,BLK%
 9590ENDPROC
 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
 9750DEFPROCpaintscale
 9760!SCALE%=BXM%
 9770SCALE%!4=BYM%
 9780SCALE%!8=BXD%
 9790SCALE%!12=BYD%
 9800XR=BXM%/BXD%
 9810YR=BYM%/BYD%
 9820ENDPROC
 9840DEFPROCpaintscale2
 9850!SCALE%=1
 9860SCALE%!4=1
 9870SCALE%!8=1
 9880SCALE%!12=1
 9890XR=1
 9900YR=1
 9910ENDPROC
 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
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
10900DEFPROChg:SYS "Hourglass_Smash":ENDPROC
10920DEFPROCswapcorns
10930IF X%(0)>OX% THEN SWAP X%(0),OX%
10940IF Y%(0)>OY% THEN SWAP Y%(0),OY%
10950ENDPROC
10970DEFFNsamecol(x1%,y1%,col%,tin%):=(POINT(x1%,y1%)=col% AND TINT(x1%,y1%)=tin%)
10990DEFPROCl(x1%,y1%,x2%,y2%):PLOT4,x1%,y1%:PLOT LITY%,x2%,y2%:ENDPROC
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
11030DEFPROCtrace(X%,Y%,TCO%,TTI%)
11040ENDPROC
11060DEFFNfindpalent(CO%,TI%)
11070=CTT%?((CO%*4)+(TI% DIV 64))
11090DEFPROCsetcol:GCOL USE%,PALTAB%?(COL%*2) TINT PALTAB%?((COL%*2)+1):ENDPROC
11110DEFPROCsetbackcol:GCOL USE%,(PALTAB%?(COL%*2))+128 TINT PALTAB%?((COL%*2)+1):ENDPROC
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
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
11300DEFPROCgridcol
11310PROCcol(GRCO%,GRTI%,0)
11320ENDPROC
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
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
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
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
12190DEFPROCfilterclick
12200PROCarrows(29,2,3,5,0,8,1)
12210ENDPROC
12230DEFPROCrotateclick
12240ENDPROC
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
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
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
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
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
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
12710DEFPROCpixelateclick
12720PROCarrows(23,2,4,9,1,100,1):PROCarrows(23,5,7,11,1,100,1)
12730ENDPROC
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
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
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
13110DEFPROCtparclick
13120ENDPROC
13140DEFPROClosefont
13150IF FONT%<>0 AND FTL% THEN SYS "Font_LoseFont",FHAND%:FTL%=FALSE
13160ENDPROC
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
13250DEFPROCrestpic
13260PROCinpic
13270SYS&2E,290,SPBUF%,"PIC",0,0
13280PROCoutpic
13290ENDPROC
13310DEFPROCtextclick
13320ENDPROC
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
13540DEFPROCreloadpatfills
13550SYS&2E,266,PFILLS%,"<Imagery$Dir>.PatFills"
13560ENDPROC
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
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
13720DEFFNfilldet(S%):IF GRTY%=0 THEN ="flood "+STR$S% ELSE ="area "+STR$S%
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
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
14020DEFPROCwipefill
14030NOS%=FNgrafilno
14040FORL%=0 TO 15:FORK%=0 TO 1:GRFI%(L%,K%,NOS%)=0:NEXT:NEXT
14050PROCforcedrawfill:ENDPROC
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
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
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
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
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
15010DEFFNfilic(FSN%):IF FSN%<=11 THEN =FSN%+26 ELSE =(FSN%-12)+46
15030DEFFNlipaadj(LITA%):IF LITA%=7 THEN =51 ELSE =LITA%
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
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
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
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
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
15820DEFPROCairbclick
15830PROCarrows(4, 4,6,17,1,999,1):PROCarrows(4, 5,7,19,4,999,1)
15840ENDPROC
15860DEFPROCmenoff:SYS "Wimp_CreateMenu",-1:ENDPROC
15880DEFPROCbuildiconmenu
15890PROCbm(30,"Imagery")
15900PROCatm(30,"Info",1,"")
15910PROCatm(30,"Save"+FNk("  f3"),0,"SL")
15920PROCatm(30,"Quit",-1,"F")
15930ENDPROC
15950DEFPROCiconmenu:MENO%=30:SYS "Wimp_CreateMenu",,FNcmad(30),MOUX%-64,252:ENDPROC
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))
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)
16260SYS "Wimp_CreateMenu",,FNcmad(0),MOUX%-64,MOUY%+60
16270ENDPROC
16290DEFPROCbuildmainmenu
16300MEOF%=0:MEIN%=0
16310REM ------------------------
16330PROCbuildmm2:ENDPROC
16350DEFFNk(IT$):IF KSC% THEN =IT$ ELSE =""
16370DEFPROCbuildmm2
16380MEOF%=0:MEIN%=0
16400PROCbm(15,"Speed")
16410PROCatm(15,"Very fast",-1,"")
16420PROCatm(15,"Fast",-1,"")
16430PROCatm(15,"Medium",-1,"")
16440PROCatm(15,"Slow",-1,"F")
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")
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")
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")
16680PROCbm(12,"Pattern")
16690PROCatm(12,"Restarted",-1,"")
16700PROCatm(12,"Continuous",-1,"F")
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")
16880PROCbm(13,"Fill")
16890PROCatm(13,"Flood fill",-1,"S")
16900PROCatm(13,"Pattern fill",-1,"SL")
16910PROCatm(13,"Graduated fill",17,"F")
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")
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")
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")
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")
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")
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")
17580PROCbm(18,"Tint")
17590PROCatm(18,"0",-1,"")
17600PROCatm(18,"1",-1,"")
17610PROCatm(18,"2",-1,"")
17620PROCatm(18,"3",-1,"F")
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")
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")
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")
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")
18110ENDPROC
18130DEFFNfont(F%):IF FONTA%=-1 OR F%>FONTS% THEN ="" ELSE =$(FONTA%+FONTO%+(!(FONTA%+(F%*4))))
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$
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
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
18520DEFPROCshadeitem(MN%,IN%):TAD%=FNcmad(MN%)+28+((IN%-1)*24):TAD%!8=(TAD%!8) OR (1<<22):ENDPROC
18540DEFPROCtickitem(MN%,IN%):TAD%=FNcmad(MN%)+28+((IN%-1)*24):!TAD%=(!TAD%) OR 1:ENDPROC
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
18710IF $SEL%="Paintbrush" THEN PROCnf("Paintbrush",4,5):PROCtkh(10)
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)
18830IF $SEL%="Wire parallelogram" THEN PROCnf("Wire parallelogram",13,-1):PROCtkh(17)
18850IF $SEL%="Solid sector" THEN PROCnf("Solid sector",16,-1)
18870IF $SEL%="Scale to fit" THEN PROCnf("Scale to fit",23,8):FUCO%=0:PROCpatch(23)
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)
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%)
19190IF SEL$="Full menus" THEN KSC%=NOT KSC%:PROCbuildmm2:PROCbuildiconmenu:DSI%=TRUE
19200IF DSI% AND MBU%=1 THEN PROCwindmenu
19210ENDPROC
19230DEFPROCud:IF UNDO%<>-1 THEN !VARS=PIC%:VARS!4=UNDO%:A%=VARS:CALL backuppic
19240ENDPROC
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
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
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)
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
19720DEFPROCimpcen
19730PROCinpic:PROCpimport(640,512,0):PROCoutpic:PROCquickdrawmain:PROCkillf:FUSE%=-1
19740ENDPROC
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
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
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
20070DEFPROCunsetrasp:ENDPROC
20090DEFPROCsetrasp:ENDPROC
20110DEFPROCspinit
20120PROCspbuf(0)
20130ENDPROC
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
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
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
20380DEFPROCed_bru
20390PROCwind_ext(12,0,-640,1024,0):EDTY%=0
20400ENDPROC
20420DEFPROCed_fill
20430PROCwind_ext(12,0,-900,1024,0):EDTY%=1
20440ENDPROC
20460DEFFNgstr(AD%):W$="":IF ?AD%<32 THEN =W$ ELSE REPEAT:W$=W$+CHR$(?AD%):AD%+=1:UNTIL ?AD%<32:=W$
20480DEFFNgi(WH%,IC%):LWG%=WH%:LIG%=IC%:!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:SYS "Wimp_GetIconState",,ICBLK%:=FNgstr(!(ICBLK%+28))
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
20520DEFFNhigh(WH%,IC%):!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:SYS "Wimp_GetIconState",,ICBLK%:=((?(ICBLK%+26)) AND %100000)=32
20540DEFFNwopen(WH%):!ICBLK%=HAND%(WH%):SYS "Wimp_GetWindowState",,ICBLK%:=((ICBLK%?34) AND 1)=1
20560DEFPROCshadeicon(WH%,IC%):PROCicflag(WH%,IC%,1<<22,0):ENDPROC
20580DEFPROCclearicon(WH%,IC%):PROCicflag(WH%,IC%,0,1<<22):ENDPROC
20600DEFPROCiconhi(WH%,IC%):PROCicflag(WH%,IC%,1<<21,0):ENDPROC
20620DEFPROCiconlo(WH%,IC%):PROCicflag(WH%,IC%,0,1<<21):ENDPROC
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
20700DEFPROCpoint:SYS "Wimp_GetPointerInfo",,POI%:MOX%=!POI%:MOY%=POI%!4:MOB%=POI%!8:MOH%=POI%!12:ENDPROC
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
20750DEFPROCdragfin
20760ENDPROC
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
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
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
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
21080DEFPROCramreceive
21090TX%=BLK%!24:IF TX%=RDTS% THEN RDTS%=4:RATOF%+=TX%:PROCramtransmit:ENDPROC
21100GOTO 19510
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
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
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
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
21470DEFPROCsave(S$):PROCkillf:FUSE%=-1:
21480ENDPROC
21500DEFFNnullstring(AD%):N$="":WHILE ?AD%>=32:N$=N$+CHR$(?AD%):AD%+=1:ENDWHILE:=N$
21520DEFPROCspritesaveok:A$=FNgi(7,6):IF INSTR(A$,".")=0 THEN PROCmessage(4,"To save, drag the icon to a directory viewer.")
21530ENDPROC
21550DEFFNgetname:W$="":P%=BLK%+44:WHILE ?P%<>0 AND ?P%<>13:W$=W$+CHR$(?P%):P%+=1:ENDWHILE:=W$
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
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
21670DEFPROCqatload(S$):ENDPROC
21690
21700DEFPROCloadpic(FT%,S$)
21710ENDPROC
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
21770DEFPROCbackuppic:!VARS=PIC%:VARS!4=SPBUF%:A%=VARS:CALL backuppic:ENDPROC
21790DEFPROCfillmask:VARS!8=SPBUF%:VARS!12=TRASP%:VARS!16=BTC%:A%=VARS:CALL fillmask:ENDPROC
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$
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
22020DEFPROCspbuferr:PROCkillf:FUST%=-1:FUSE%=-1:PROCwindname(2,PIC$):PROCmessage(0,"No room to store sprite. ("+STR$(SPNE%)+" bytes needed)")
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
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
22220DEFPROCrotkey
22230ENDPROC
22250DEFPROCtoolclick
22260ENDPROC
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)
22350WHEN &1CB:POK%=FALSE:IF LAOPWI%<>-1 THEN PROCopenwind(LAOPWI%)
22370WHEN &198:POK%=FALSE:PROCnf("Wire ellipse",11,-1)
22380WHEN &199:POK%=FALSE:PROCnf("Wire parallelogram",13,-1):PROCtkh(17)
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)
22450ENDCASE
22460ENDPROC
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
22610DEFPROCop1
22620ENDPROC
22640DEFPROCairbkey
22650PROCicfb(4,17,19,19):PROCicfb(4,19,17,17)
22660ENDPROC
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
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
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
22920DEFPROCtextkey
22930ENDPROC
22950DEFPROCframkey
22960PROCicfb(19,10,12,12)
22970PROCicfb(19,12,10,10)
22980IF KEY%=13 AND KIC%=12 THEN POK%=FALSE:MOUIC%=14:PROCframeclick
22990ENDPROC
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
23060DEFPROCctic(WH%,IC%):A$=FNgi(WH%,IC%):SYS "Wimp_SetCaretPosition",HAND%(WH%),IC%,,,-1,LEN(A$):ENDPROC
23080DEFPROCpatch(PN%):IF LAPATCH%=PN% THEN ENDPROC
23090OSCLI("LOAD <Imagery$Dir>.Overlays."+STR$PN%+" "+STR$~(PATCH%-2))
23100LAPATCH%=PN%
23110ENDPROC
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
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
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
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
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%
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
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
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
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
23880DEFPROCsavesets(IT$)
23890ENDPROC
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
24100DEFPROCtkh(IC%):TKH%=IC%:PROCiconhi(32,IC%):ENDPROC
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:�
L��loadsprites
V�
j5��action:ș "Wimp_ForceRedraw",-1,0,0,&3000,&3000
~�
�	�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�
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�
\�
pF��forcedrawpatfill:ș "Wimp_ForceRedraw",HAND%(20),0,-108,1100,0:�
�%��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
�
(�
<��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�
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
@�
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�
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
>��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�
`��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�
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�
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�
~ݤ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
<�
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�
 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
"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�
#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%)
$^�
$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%
%&�
%:��opmain
%Dș "Wimp_OpenWindow",,BLK%
%N�
%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%
&\�
&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))
+R>��setcol:� USE%,PALTAB%?(COL%*2) Ȝ PALTAB%?((COL%*2)+1):�
+fH��setbackcol:� USE%,(PALTAB%?(COL%*2))+128 Ȝ PALTAB%?((COL%*2)+1):�
+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�
,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�
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���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��
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.��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�
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���pixelateclick
1�8�arrows(23,2,4,9,1,100,1):�arrows(23,5,7,11,1,100,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�
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�'��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"�
36��tparclick
3@�
3T��losefont
3^8� FONT%<>0 � FTL% � ș "Font_LoseFont",FHAND%:FTL%=�
3h�
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�
��restpic
3�
�inpic
3�ș&2E,290,SPBUF%,"PIC",0,0
3��outpic
3��
3���textclick
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���reloadpatfills
4�.ș&2E,266,PFILLS%,"<Imagery$Dir>.PatFills"
4��
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�
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�:ݤfilldet(S%):� GRTY%=0 � ="flood "+�S% � ="area "+�S%
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���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���wipefill
6�NOS%=�grafilno
6�0�L%=0 � 15:�K%=0 � 1:GRFI%(L%,K%,NOS%)=0:�:�
6��forcedrawfill:�
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�
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^�
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�
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�
;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�
<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")
>:�
>NF��iconmenu:MENO%=30:ș "Wimp_CreateMenu",,�cmad(30),MOUX%-64,252:�
>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))
>� � 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)
?�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")
@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(�bm(12,"Pattern")
A2�atm(12,"Restarted",-1,"")
A< �atm(12,"Continuous",-1,"F")
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��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"�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��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")
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��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��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")
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��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��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��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��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")
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�Sݤfont(F%):� FONTA%=-1 � F%>FONTS% � ="" � =$(FONTA%+FONTO%+(!(FONTA%+(F%*4))))
F�%ݤfontroot(F$):� �F$,".")=0 � =F$
F�LIPF%=1:IPF$="":ȕ �F$,IPF%,1)<>".":IPF$=IPF$+�F$,IPF%,1):IPF%+=1:�:=IPF$
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@�
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�
HXT��shadeitem(MN%,IN%):TAD%=�cmad(MN%)+28+((IN%-1)*24):TAD%!8=(TAD%!8) � (1<<22):�
HlK��tickitem(MN%,IN%):TAD%=�cmad(MN%)+28+((IN%-1)*24):!TAD%=(!TAD%) � 1:�
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
I9� $SEL%="Paintbrush" � �nf("Paintbrush",4,5):�tkh(10)
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�K� $SEL%="Wire parallelogram" � �nf("Wire parallelogram",13,-1):�tkh(17)
I�6� $SEL%="Solid sector" � �nf("Solid sector",16,-1)
I�H� $SEL%="Scale to fit" � �nf("Scale to fit",23,8):FUCO%=0:�patch(23)
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�)� 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�E� SEL$="Full menus" � KSC%=� KSC%:�buildmm2:�buildiconmenu:DSI%=�
K� DSI% � MBU%=1 � �windmenu
K
�
KB��ud:� UNDO%<>-1 � !VARS=PIC%:VARS!4=UNDO%:A%=VARS:� backuppic
K(�
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�
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�ݤ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���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��
M��impcen
ME�inpic:�pimport(640,512,0):�outpic:�quickdrawmain:�killf:FUSE%=-1
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�
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���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�
Nf��unsetrasp:�
Nz��setrasp:�
N���spinit
N�
�spbuf(0)
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���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%:�
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���ed_bru
O�'�wind_ext(12,0,-640,1024,0):EDTY%=0
O��
O�
��ed_fill
O�'�wind_ext(12,0,-900,1024,0):EDTY%=1
O��
O�Lݤgstr(AD%):W$="":� ?AD%<32 � =W$ � �:W$=W$+�(?AD%):AD%+=1:� ?AD%<32:=W$
Pwݤgi(WH%,IC%):LWG%=WH%:LIG%=IC%:!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:ș "Wimp_GetIconState",,ICBLK%:=�gstr(!(ICBLK%+28))
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(qݤhigh(WH%,IC%):!ICBLK%=HAND%(WH%):ICBLK%!4=IC%:ș "Wimp_GetIconState",,ICBLK%:=((?(ICBLK%+26)) � %100000)=32
P<Yݤwopen(WH%):!ICBLK%=HAND%(WH%):ș "Wimp_GetWindowState",,ICBLK%:=((ICBLK%?34) � 1)=1
PP3��shadeicon(WH%,IC%):�icflag(WH%,IC%,1<<22,0):�
Pd3��clearicon(WH%,IC%):�icflag(WH%,IC%,0,1<<22):�
Px0��iconhi(WH%,IC%):�icflag(WH%,IC%,1<<21,0):�
P�0��iconlo(WH%,IC%):�icflag(WH%,IC%,0,1<<21):�
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�\��point:ș "Wimp_GetPointerInfo",,POI%:MOX%=!POI%:MOY%=POI%!4:MOB%=POI%!8:MOH%=POI%!12:�
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
��dragfin
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:�
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�
��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&�
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%:�
RX��ramreceive
Rb@TX%=BLK%!24:� TX%=RDTS% � RDTS%=4:RATOF%+=TX%:�ramtransmit:�
Rl
� �PvL
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*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�
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�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���save(S$):�killf:FUSE%=-1:
S��
S�Bݤnullstring(AD%):N$="":ȕ ?AD%>=32:N$=N$+�(?AD%):AD%+=1:�:=N$
Ti��spritesaveok:A$=�gi(7,6):� �A$,".")=0 � �message(4,"To save, drag the icon to a directory viewer.")
T�
T.Kݤgetname:W$="":P%=BLK%+44:ȕ ?P%<>0 � ?P%<>13:W$=W$+�(?P%):P%+=1:�:=W$
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$):�
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���qatload(S$):�
T�
T���loadpic(FT%,S$)
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
>��backuppic:!VARS=PIC%:VARS!4=SPBUF%:A%=VARS:� backuppic:�
UM��fillmask:VARS!8=SPBUF%:VARS!12=TRASP%:VARS!16=BTC%:A%=VARS:� fillmask:�
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���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��
V|��spbuferr:�killf:FUST%=-1:FUSE%=-1:�windname(2,PIC$):�message(0,"No room to store sprite. ("+�(SPNE%)+" bytes needed)")
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
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���rotkey
V��
V���toolclick
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)
WN4� &1CB:POK%=�:� LAOPWI%<>-1 � �openwind(LAOPWI%)
Wb+� &198:POK%=�:�nf("Wire ellipse",11,-1)
Wl:� &199:POK%=�:�nf("Wire parallelogram",13,-1):�tkh(17)
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�
��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:�
XR	��op1
X\�
Xp
��airbkey
Xz'�icfb(4,17,19,19):�icfb(4,19,17,17)
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�
��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$�
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�
��textkey
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���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�
ZZ��ctic(WH%,IC%):A$=�gi(WH%,IC%):ș "Wimp_SetCaretPosition",HAND%(WH%),IC%,,,-1,�(A$):�
Z(#��patch(PN%):� LAPATCH%=PN% � �
Z2;�("LOAD <Imagery$Dir>.Overlays."+�PN%+" "+�~(PATCH%-2))
Z<LAPATCH%=PN%
ZF�
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���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��
[��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%:�
[,�
[@��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�
\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 a0 6c c8 99 20  22 4f 53 5f 52 65 61 64  |0...l.. "OS_Read|
000001c0  56 61 72 56 61 6c 22 2c  22 49 6d 61 67 65 72 79  |VarVal","Imagery|
000001d0  24 46 69 6c 65 22 2c 49  4f 25 2c 32 35 36 2c 30  |$File",IO%,256,0|
000001e0  2c 30 20 b8 20 2c 2c 4b  25 3a 4c 25 3d 30 3a 4c  |,0 . ,,K%:L%=0:L|
000001f0  46 24 3d 22 22 3a c8 95  20 4b 25 3e 30 3a 4c 46  |F$="":.. K%>0:LF|
00000200  24 3d 4c 46 24 2b bd 28  49 4f 25 3f 4c 25 29 3a  |$=LF$+.(IO%?L%):|
00000210  4c 25 2b 3d 31 3a 4b 25  2d 3d 31 3a ce 0d 00 b4  |L%+=1:K%-=1:....|
00000220  20 e3 4c 25 3d 30 20 b8  20 31 38 38 20 88 20 34  | .L%=0 . 188 . 4|
00000230  3a 52 47 42 47 25 21 4c  25 3d 30 3a ed 0d 00 be  |:RGBG%!L%=0:....|
00000240  26 4d 45 4f 46 25 3d 30  3a 4d 45 49 4e 25 3d 30  |&MEOF%=0:MEIN%=0|
00000250  3a 4d 42 55 53 25 3d a3  3a 4c 41 4f 50 57 49 25  |:MBUS%=.:LAOPWI%|
00000260  3d 2d 31 0d 00 c8 13 24  4d 45 4e 41 4c 4f 25 3d  |=-1....$MENALO%=|
00000270  22 41 20 2d 7e 22 0d 00  d2 16 46 54 4c 25 3d a3  |"A -~"....FTL%=.|
00000280  3a 4c 41 50 41 54 43 48  25 3d 2d 31 0d 00 dc 42  |:LAPATCH%=-1...B|
00000290  de 20 50 49 43 25 20 31  36 31 2a 31 30 32 34 2c  |. PIC% 161*1024,|
000002a0  53 43 41 4c 45 25 20 33  32 2c 50 49 58 54 41 42  |SCALE% 32,PIXTAB|
000002b0  25 20 32 35 36 2c 50 49  58 54 41 42 32 25 20 32  |% 256,PIXTAB2% 2|
000002c0  35 36 2c 58 25 28 38 29  2c 59 25 28 38 29 0d 00  |56,X%(8),Y%(8)..|
000002d0  e6 36 53 50 42 55 46 25  3d 93 3a 53 50 53 49 5a  |.6SPBUF%=.:SPSIZ|
000002e0  25 3d 30 3a c8 99 20 22  57 69 6d 70 5f 53 6c 6f  |%=0:.. "Wimp_Slo|
000002f0  74 53 69 7a 65 22 2c 2d  31 2c 2d 31 20 b8 20 43  |tSize",-1,-1 . C|
00000300  55 53 4c 25 0d 00 f0 a8  de 20 50 41 4c 25 20 32  |USL%..... PAL% 2|
00000310  32 36 30 30 2c 4f 50 41  4c 25 20 32 32 36 30 30  |2600,OPAL% 22600|
00000320  2c 53 48 4f 57 25 20 31  30 32 34 30 2c 50 41 4c  |,SHOW% 10240,PAL|
00000330  54 41 42 25 20 35 31 32  2c 42 54 43 25 20 32 35  |TAB% 512,BTC% 25|
00000340  36 2c 43 54 54 25 20 32  35 36 2c 54 54 42 25 20  |6,CTT% 256,TTB% |
00000350  32 35 36 2c 52 4f 54 54  41 42 25 20 31 38 30 30  |256,ROTTAB% 1800|
00000360  2c 52 41 4e 44 25 20 34  30 39 36 2c 50 46 49 4c  |,RAND% 4096,PFIL|
00000370  4c 53 25 20 37 30 30 30  3a 21 50 41 4c 25 3d 32  |LS% 7000:!PAL%=2|
00000380  32 36 30 30 3a 21 4f 50  41 4c 25 3d 32 32 36 30  |2600:!OPAL%=2260|
00000390  30 3a 21 50 46 49 4c 4c  53 25 3d 37 30 30 30 3a  |0:!PFILLS%=7000:|
000003a0  21 53 48 4f 57 25 3d 31  30 32 34 30 0d 00 fa 20  |!SHOW%=10240... |
000003b0  de 20 42 52 55 53 48 25  20 31 33 30 30 30 3a 21  |. BRUSH% 13000:!|
000003c0  42 52 55 53 48 25 3d 31  33 30 30 30 0d 01 04 2c  |BRUSH%=13000...,|
000003d0  c8 99 26 32 45 2c 32 36  36 2c 42 52 55 53 48 25  |..&2E,266,BRUSH%|
000003e0  2c 22 3c 49 6d 61 67 65  72 79 24 44 69 72 3e 2e  |,"<Imagery$Dir>.|
000003f0  42 72 75 73 68 65 73 22  0d 01 0e 2a c8 99 26 32  |Brushes"...*..&2|
00000400  45 2c 32 36 36 2c 50 41  4c 25 2c 22 3c 49 6d 61  |E,266,PAL%,"<Ima|
00000410  67 65 72 79 24 44 69 72  3e 2e 50 61 6c 65 74 74  |gery$Dir>.Palett|
00000420  65 22 0d 01 18 2b c8 99  26 32 45 2c 32 36 36 2c  |e"...+..&2E,266,|
00000430  4f 50 41 4c 25 2c 22 3c  49 6d 61 67 65 72 79 24  |OPAL%,"<Imagery$|
00000440  44 69 72 3e 2e 50 61 6c  65 74 74 65 22 0d 01 22  |Dir>.Palette".."|
00000450  2e c8 99 26 32 45 2c 32  36 36 2c 50 46 49 4c 4c  |...&2E,266,PFILL|
00000460  53 25 2c 22 3c 49 6d 61  67 65 72 79 24 44 69 72  |S%,"<Imagery$Dir|
00000470  3e 2e 50 61 74 46 69 6c  6c 73 22 0d 01 2c 28 c8  |>.PatFills"..,(.|
00000480  99 26 32 45 2c 32 36 36  2c 53 48 4f 57 25 2c 22  |.&2E,266,SHOW%,"|
00000490  3c 49 6d 61 67 65 72 79  24 44 69 72 3e 2e 53 68  |<Imagery$Dir>.Sh|
000004a0  6f 77 22 0d 01 36 2d ff  28 22 4c 4f 41 44 20 3c  |ow"..6-.("LOAD <|
000004b0  49 6d 61 67 65 72 79 24  44 69 72 3e 2e 50 61 6c  |Imagery$Dir>.Pal|
000004c0  54 61 62 20 22 2b c3 7e  50 41 4c 54 41 42 25 29  |Tab "+.~PALTAB%)|
000004d0  0d 01 40 35 ff 28 22 4c  4f 41 44 20 3c 49 6d 61  |..@5.("LOAD <Ima|
000004e0  67 65 72 79 24 44 69 72  3e 2e 42 54 43 20 22 2b  |gery$Dir>.BTC "+|
000004f0  c3 7e 42 54 43 25 29 3a  f4 20 62 79 74 65 20 2d  |.~BTC%):. byte -|
00000500  3e 20 70 61 6c 0d 01 4a  35 ff 28 22 4c 4f 41 44  |> pal..J5.("LOAD|
00000510  20 3c 49 6d 61 67 65 72  79 24 44 69 72 3e 2e 43  | <Imagery$Dir>.C|
00000520  54 54 20 22 2b c3 7e 43  54 54 25 29 3a f4 20 70  |TT "+.~CTT%):. p|
00000530  61 6c 20 2d 3e 20 62 79  74 65 0d 01 54 3e ff 28  |al -> byte..T>.(|
00000540  22 4c 4f 41 44 20 3c 49  6d 61 67 65 72 79 24 44  |"LOAD <Imagery$D|
00000550  69 72 3e 2e 54 54 42 20  22 2b c3 7e 54 54 42 25  |ir>.TTB "+.~TTB%|
00000560  29 3a f4 20 28 63 6f 6c  2a 36 34 29 2b 74 69 6e  |):. (col*64)+tin|
00000570  74 20 2d 3e 20 70 61 6c  0d 01 5e 2d ff 28 22 4c  |t -> pal..^-.("L|
00000580  4f 41 44 20 3c 49 6d 61  67 65 72 79 24 44 69 72  |OAD <Imagery$Dir|
00000590  3e 2e 52 6f 74 54 61 62  20 22 2b c3 7e 52 4f 54  |>.RotTab "+.~ROT|
000005a0  54 41 42 25 29 0d 01 68  29 ff 28 22 4c 4f 41 44  |TAB%)..h).("LOAD|
000005b0  20 3c 49 6d 61 67 65 72  79 24 44 69 72 3e 2e 43  | <Imagery$Dir>.C|
000005c0  6f 64 65 20 22 2b c3 7e  43 4f 44 45 25 29 0d 01  |ode "+.~CODE%)..|
000005d0  72 2d ff 28 22 4c 4f 41  44 20 3c 49 6d 61 67 65  |r-.("LOAD <Image|
000005e0  72 79 24 44 69 72 3e 2e  52 6f 74 54 61 62 20 22  |ry$Dir>.RotTab "|
000005f0  2b c3 7e 52 4f 54 54 41  42 25 29 0d 01 7c 2f 43  |+.~ROTTAB%)..|/C|
00000600  4f 4c 25 3d 32 35 35 3a  46 55 53 45 25 3d 2d 31  |OL%=255:FUSE%=-1|
00000610  3a 46 55 53 54 25 3d 2d  31 3a 46 55 43 4f 25 3d  |:FUST%=-1:FUCO%=|
00000620  30 3a 42 55 54 44 4f 25  3d a3 0d 01 86 42 24 54  |0:BUTDO%=....B$T|
00000630  41 53 25 3d 22 54 41 53  4b 22 3a c8 99 22 57 69  |AS%="TASK":.."Wi|
00000640  6d 70 5f 49 6e 69 74 69  61 6c 69 73 65 22 2c 32  |mp_Initialise",2|
00000650  30 30 2c 21 54 41 53 25  2c 22 49 6d 61 67 65 72  |00,!TAS%,"Imager|
00000660  79 22 20 b8 20 2c 54 48  41 4e 44 25 0d 01 90 10  |y" . ,THAND%....|
00000670  f2 6c 6f 61 64 73 70 72  69 74 65 73 0d 01 9a 0d  |.loadsprites....|
00000680  f2 6c 6f 61 64 76 61 72  73 0d 01 a4 42 21 42 4c  |.loadvars...B!BL|
00000690  4b 25 3d 2d 31 3a 42 4c  4b 25 21 34 3d 30 3a 42  |K%=-1:BLK%!4=0:B|
000006a0  4c 4b 25 21 38 3d 30 3a  42 4c 4b 25 21 31 32 3d  |LK%!8=0:BLK%!12=|
000006b0  36 34 3a 42 4c 4b 25 21  31 36 3d 36 34 3a 42 4c  |64:BLK%!16=64:BL|
000006c0  4b 25 21 32 30 3d 26 32  31 30 32 0d 01 ae 3c de  |K%!20=&2102...<.|
000006d0  20 42 4c 4b 25 21 32 34  20 31 30 3a 24 28 42 4c  | BLK%!24 10:$(BL|
000006e0  4b 25 21 32 34 29 3d 22  21 54 69 6e 79 49 6d 61  |K%!24)="!TinyIma|
000006f0  67 65 22 3a 42 4c 4b 25  21 32 38 3d 31 3a 42 4c  |ge":BLK%!28=1:BL|
00000700  4b 25 21 33 32 3d 38 0d  01 b8 28 c8 99 20 22 57  |K%!32=8...(.. "W|
00000710  69 6d 70 5f 43 72 65 61  74 65 49 63 6f 6e 22 2c  |imp_CreateIcon",|
00000720  2c 42 4c 4b 25 20 b8 20  49 43 48 41 4e 44 25 0d  |,BLK% . ICHAND%.|
00000730  01 c2 19 4e 4f 57 49 4e  44 25 3d 33 34 3a 4e 4f  |...NOWIND%=34:NO|
00000740  4d 45 4e 53 25 3d 32 30  0d 01 cc 2d de 20 53 54  |MENS%=20...-. ST|
00000750  4f 52 45 25 20 31 35 2a  31 30 32 34 2c 42 55 46  |ORE% 15*1024,BUF|
00000760  25 20 35 30 34 38 2c 48  41 4e 44 25 28 4e 4f 57  |% 5048,HAND%(NOW|
00000770  49 4e 44 25 29 0d 01 d6  0f 53 4f 46 25 3d 53 54  |IND%)....SOF%=ST|
00000780  4f 52 45 25 0d 01 e0 fd  dc 20 53 61 76 65 2c 49  |ORE%..... Save,I|
00000790  6e 66 6f 2c 4d 61 69 6e  2c 50 61 6c 65 74 74 65  |nfo,Main,Palette|
000007a0  2c 41 69 72 62 72 75 73  68 2c 42 72 75 73 68 65  |,Airbrush,Brushe|
000007b0  73 2c 47 72 69 64 2c 53  70 72 69 74 65 53 61 76  |s,Grid,SpriteSav|
000007c0  65 2c 41 72 65 61 2c 48  65 6c 70 2c 4c 69 6e 65  |e,Area,Help,Line|
000007d0  70 61 74 2c 46 69 6c 6c  70 61 74 2c 45 64 42 72  |pat,Fillpat,EdBr|
000007e0  75 73 68 2c 45 64 46 69  6c 6c 2c 54 65 78 74 2c  |ush,EdFill,Text,|
000007f0  54 62 61 63 6b 2c 46 6f  6e 74 50 61 72 61 6d 73  |Tback,FontParams|
00000800  2c 46 69 6c 6c 43 6f 6e  74 2c 43 6f 6c 52 65 70  |,FillCont,ColRep|
00000810  2c 46 72 61 6d 65 2c 50  66 69 6c 6c 73 2c 52 47  |,Frame,Pfills,RG|
00000820  42 63 6f 6e 74 2c 47 72  65 79 73 63 61 6c 65 2c  |Bcont,Greyscale,|
00000830  50 69 78 65 6c 61 74 65  2c 52 6f 74 61 74 65 2c  |Pixelate,Rotate,|
00000840  43 6f 6c 73 63 61 6c 65  2c 43 6f 6e 74 72 61 73  |Colscale,Contras|
00000850  74 2c 50 6f 73 74 65 72  69 73 65 2c 52 47 42 67  |t,Posterise,RGBg|
00000860  72 61 70 68 2c 46 69 6c  74 65 72 2c 57 6f 62 62  |raph,Filter,Wobb|
00000870  6c 65 2c 49 6d 70 6f 72  74 2c 54 6f 6f 6c 6b 69  |le,Import,Toolki|
00000880  74 0d 01 ea 12 dc 20 5a  6f 6f 6d 2c 53 65 74 53  |t..... Zoom,SetS|
00000890  61 76 65 0d 01 f4 0a f7  20 8d 64 60 41 0d 01 fe  |ave..... .d`A...|
000008a0  3a c8 99 20 22 57 69 6d  70 5f 4f 70 65 6e 54 65  |:.. "Wimp_OpenTe|
000008b0  6d 70 6c 61 74 65 22 2c  2c 22 3c 49 6d 61 67 65  |mplate",,"<Image|
000008c0  72 79 24 44 69 72 3e 2e  54 65 6d 70 6c 61 74 65  |ry$Dir>.Template|
000008d0  73 22 3a 4b 25 3d 30 0d  02 08 12 f5 3a f3 20 41  |s":K%=0.....:. A|
000008e0  24 3a 24 49 4f 25 3d 41  24 0d 02 12 48 c8 99 20  |$:$IO%=A$...H.. |
000008f0  22 57 69 6d 70 5f 4c 6f  61 64 54 65 6d 70 6c 61  |"Wimp_LoadTempla|
00000900  74 65 22 2c 2c 42 55 46  25 2c 53 4f 46 25 2c 53  |te",,BUF%,SOF%,S|
00000910  54 4f 52 45 25 2b 28 31  35 2a 31 30 32 34 29 2c  |TORE%+(15*1024),|
00000920  2d 31 2c 49 4f 25 2c 30  20 b8 20 2c 2c 53 4f 46  |-1,IO%,0 . ,,SOF|
00000930  25 0d 02 1c 18 e7 20 4b  25 3d 32 20 8c 20 42 55  |%..... K%=2 . BU|
00000940  46 25 3f 33 35 3d 26 46  46 0d 02 26 2c c8 99 20  |F%?35=&FF..&,.. |
00000950  22 57 69 6d 70 5f 43 72  65 61 74 65 57 69 6e 64  |"Wimp_CreateWind|
00000960  6f 77 22 2c 2c 42 55 46  25 20 b8 20 48 41 4e 44  |ow",,BUF% . HAND|
00000970  25 28 4b 25 29 0d 02 30  16 4b 25 2b 3d 31 3a fd  |%(K%)..0.K%+=1:.|
00000980  20 4b 25 3e 4e 4f 57 49  4e 44 25 0d 02 3a 1b c8  | K%>NOWIND%..:..|
00000990  99 20 22 57 69 6d 70 5f  43 6c 6f 73 65 54 65 6d  |. "Wimp_CloseTem|
000009a0  70 6c 61 74 65 22 0d 02  44 23 e3 4c 25 3d 31 35  |plate"..D#.L%=15|
000009b0  20 b8 20 34 36 3a f2 73  68 61 64 65 69 63 6f 6e  | . 46:.shadeicon|
000009c0  28 31 30 2c 4c 25 29 3a  ed 0d 02 4e 13 f2 73 69  |(10,L%):...N..si|
000009d0  28 31 33 2c 38 33 2c 22  31 36 22 29 0d 02 58 0c  |(13,83,"16")..X.|
000009e0  ef 32 33 2c 36 2c 30 7c  0d 02 62 0f f2 73 79 73  |.23,6,0|..b..sys|
000009f0  74 65 6d 76 61 72 73 0d  02 6c 0a f2 63 68 61 72  |temvars..l..char|
00000a00  73 0d 02 76 0e f2 6c 6f  61 64 66 6f 6e 74 73 0d  |s..v..loadfonts.|
00000a10  02 80 40 e3 4c 25 3d 30  20 b8 20 4e 4f 4d 45 4e  |..@.L%=0 . NOMEN|
00000a20  53 25 3a 21 a4 6d 61 64  28 4c 25 29 3d 2d 31 3a  |S%:!.mad(L%)=-1:|
00000a30  ed 3a f2 62 75 69 6c 64  6d 61 69 6e 6d 65 6e 75  |.:.buildmainmenu|
00000a40  3a f2 62 75 69 6c 64 69  63 6f 6e 6d 65 6e 75 0d  |:.buildiconmenu.|
00000a50  02 8a 13 4c 57 47 25 3d  2d 31 3a 4c 49 47 25 3d  |...LWG%=-1:LIG%=|
00000a60  2d 31 0d 02 94 35 57 4c  58 25 3d 30 3a 57 4c 59  |-1...5WLX%=0:WLY|
00000a70  25 3d 33 30 30 3a 57 55  58 25 3d 31 32 37 39 3a  |%=300:WUX%=1279:|
00000a80  57 55 59 25 3d 31 30 32  33 3a 57 53 58 25 3d 30  |WUY%=1023:WSX%=0|
00000a90  3a 57 53 59 25 3d 30 0d  02 9e 16 45 44 54 59 25  |:WSY%=0....EDTY%|
00000aa0  3d 30 3a 45 46 43 4f 4c  25 3d 32 35 35 0d 02 a8  |=0:EFCOL%=255...|
00000ab0  05 e1 0d 02 bc 20 dd a4  6d 61 64 28 4d 41 44 25  |..... ..mad(MAD%|
00000ac0  29 3a 3d 4d 45 4e 41 44  25 2b 28 4d 41 44 25 2a  |):=MENAD%+(MAD%*|
00000ad0  34 29 0d 02 c6 21 dd a4  63 6d 61 64 28 4d 41 44  |4)...!..cmad(MAD|
00000ae0  25 29 3a 3d 4d 45 4e 41  44 25 21 28 4d 41 44 25  |%):=MENAD%!(MAD%|
00000af0  2a 34 29 0d 02 da 10 dd  f2 73 79 73 74 65 6d 76  |*4)......systemv|
00000b00  61 72 73 0d 02 e4 30 21  50 49 43 25 3d 31 36 31  |ars...0!PIC%=161|
00000b10  2a 31 30 32 34 3a 50 49  43 25 21 34 3d 30 3a 50  |*1024:PIC%!4=0:P|
00000b20  49 43 25 21 38 3d 32 34  3a 50 49 43 25 21 31 32  |IC%!8=24:PIC%!12|
00000b30  3d 32 34 0d 02 ee 26 c8  99 20 26 32 45 2c 32 37  |=24...&.. &2E,27|
00000b40  31 2c 50 49 43 25 2c 22  50 49 43 22 2c 30 2c 36  |1,PIC%,"PIC",0,6|
00000b50  34 30 2c 32 35 36 2c 31  35 0d 02 f8 15 50 49 43  |40,256,15....PIC|
00000b60  24 3d 22 3c 55 6e 74 69  74 6c 65 64 3e 22 0d 03  |$="<Untitled>"..|
00000b70  02 13 45 53 4d 25 3d 2d  31 3a 45 50 4d 25 3d 2d  |..ESM%=-1:EPM%=-|
00000b80  31 0d 03 0c 3f 47 52 43  4f 25 3d 2d 31 3a 47 52  |1...?GRCO%=-1:GR|
00000b90  54 49 25 3d 2d 31 3a 47  52 4c 4f 25 3d a3 3a 47  |TI%=-1:GRLO%=.:G|
00000ba0  52 49 57 49 25 3d 31 3a  47 52 49 48 45 25 3d 31  |RIWI%=1:GRIHE%=1|
00000bb0  3a 47 52 42 58 25 3d 30  3a 47 52 42 59 25 3d 30  |:GRBX%=0:GRBY%=0|
00000bc0  0d 03 16 33 47 52 58 4d  25 3d 31 3a 47 52 58 44  |...3GRXM%=1:GRXD|
00000bd0  25 3d 31 3a 47 52 59 4d  25 3d 31 3a 47 52 59 44  |%=1:GRYM%=1:GRYD|
00000be0  25 3d 31 3a 47 52 46 58  25 3d a3 3a 47 52 46 59  |%=1:GRFX%=.:GRFY|
00000bf0  25 3d a3 0d 03 20 14 5a  4f 4f 4d 25 3d 31 3a 5a  |%=... .ZOOM%=1:Z|
00000c00  4f 4f 4d 53 25 3d 31 0d  03 2a 23 55 53 45 25 3d  |OOMS%=1..*#USE%=|
00000c10  30 3a 4c 49 54 59 25 3d  35 3a 47 52 4d 41 25 3d  |0:LITY%=5:GRMA%=|
00000c20  a3 3a 55 4e 44 4f 25 3d  2d 31 0d 03 34 1e de 20  |.:UNDO%=-1..4.. |
00000c30  50 41 54 25 28 35 29 3a  50 41 54 25 28 29 3d 30  |PAT%(5):PAT%()=0|
00000c40  3a 50 41 4c 45 25 3d 38  0d 03 3e 1f de 20 45 43  |:PALE%=8..>.. EC|
00000c50  46 25 28 38 2c 34 29 3a  45 43 46 25 28 29 3d 30  |F%(8,4):ECF%()=0|
00000c60  3a 52 4f 54 25 3d 30 0d  03 48 1d de 20 47 52 46  |:ROT%=0..H.. GRF|
00000c70  49 25 28 31 35 2c 31 2c  34 29 3a 47 52 46 49 25  |I%(15,1,4):GRFI%|
00000c80  28 29 3d 30 0d 03 52 30  46 49 46 43 25 3d 36 33  |()=0..R0FIFC%=63|
00000c90  3a 46 49 46 54 25 3d 31  39 32 3a 46 49 4c 43 25  |:FIFT%=192:FILC%|
00000ca0  3d 33 3a 46 49 4c 54 25  3d 31 39 32 3a 46 49 4c  |=3:FILT%=192:FIL|
00000cb0  52 25 3d 30 0d 03 5c 09  49 50 25 3d a3 0d 03 66  |R%=0..\.IP%=...f|
00000cc0  28 53 45 4c 42 52 25 3d  31 3a 42 58 4d 25 3d 31  |(SELBR%=1:BXM%=1|
00000cd0  3a 42 58 44 25 3d 31 3a  42 59 4d 25 3d 31 3a 42  |:BXD%=1:BYM%=1:B|
00000ce0  59 44 25 3d 31 0d 03 70  1b 45 44 42 52 25 3d 31  |YD%=1..p.EDBR%=1|
00000cf0  3a 49 44 52 41 47 25 3d  a3 3a 43 50 46 25 3d 31  |:IDRAG%=.:CPF%=1|
00000d00  0d 03 7a 56 e7 20 4c 46  24 3c 3e 22 22 20 8c 20  |..zV. LF$<>"" . |
00000d10  f2 71 61 74 6c 6f 61 64  28 4c 46 24 29 3a 50 49  |.qatload(LF$):PI|
00000d20  43 24 3d a4 6c 65 61 66  28 4c 46 24 29 3a f2 73  |C$=.leaf(LF$):.s|
00000d30  69 28 30 2c 36 2c 4c 46  24 29 3a f2 6f 70 65 6e  |i(0,6,LF$):.open|
00000d40  6d 61 69 6e 3a f2 77 69  6e 64 6e 61 6d 65 28 32  |main:.windname(2|
00000d50  2c 50 49 43 24 29 0d 03  84 1b de 20 54 52 41 53  |,PIC$)..... TRAS|
00000d60  50 25 20 32 35 36 2c 20  52 45 50 53 25 20 32 35  |P% 256, REPS% 25|
00000d70  36 0d 03 8e 1d e3 4c 25  3d 30 20 b8 20 32 35 35  |6.....L%=0 . 255|
00000d80  3a 52 45 50 53 25 3f 4c  25 3d 4c 25 3a ed 0d 03  |:REPS%?L%=L%:...|
00000d90  98 21 e3 4c 25 3d 30 20  b8 20 32 35 32 20 88 20  |.!.L%=0 . 252 . |
00000da0  34 3a 54 52 41 53 50 25  21 4c 25 3d 30 3a ed 0d  |4:TRASP%!L%=0:..|
00000db0  03 a2 24 de 20 46 4f 4e  54 54 24 28 36 34 29 3a  |..$. FONTT$(64):|
00000dc0  46 4f 4e 54 41 25 3d 2d  31 3a 46 4f 4e 54 4f 25  |FONTA%=-1:FONTO%|
00000dd0  3d 2d 31 0d 03 ac 16 46  4f 4e 54 42 25 3d 30 3a  |=-1....FONTB%=0:|
00000de0  53 52 45 50 25 3d 32 35  35 0d 03 b6 38 4d 4d 58  |SREP%=255...8MMX|
00000df0  25 3d 31 3a 4d 4d 59 25  3d 31 3a 4d 4f 50 25 3d  |%=1:MMY%=1:MOP%=|
00000e00  a3 3a 4b 55 4b 45 25 3d  a3 3a 4b 55 4b 44 25 3d  |.:KUKE%=.:KUKD%=|
00000e10  30 3a 4b 55 4b 4c 25 3d  2d 31 3a 4b 53 43 25 3d  |0:KUKL%=-1:KSC%=|
00000e20  b9 0d 03 c0 1e 52 53 4c  25 3d 31 30 30 3a 47 53  |.....RSL%=100:GS|
00000e30  4c 25 3d 31 30 30 3a 42  53 4c 25 3d 31 30 30 0d  |L%=100:BSL%=100.|
00000e40  03 ca 05 e1 0d 03 de 0e  dd f2 6c 6f 61 64 76 61  |..........loadva|
00000e50  72 73 0d 03 e8 1e 46 25  3d 8e 28 22 3c 49 6d 61  |rs....F%=.("<Ima|
00000e60  67 65 72 79 24 44 69 72  3e 2e 56 61 72 73 22 29  |gery$Dir>.Vars")|
00000e70  0d 03 f2 ce e8 23 46 25  2c 62 61 63 6b 75 70 70  |.....#F%,backupp|
00000e80  69 63 2c 66 69 6c 6c 6d  61 73 6b 2c 67 65 74 70  |ic,fillmask,getp|
00000e90  69 63 62 79 74 65 2c 67  65 74 62 72 75 73 68 62  |icbyte,getbrushb|
00000ea0  79 74 65 2c 73 65 74 70  69 63 62 79 74 65 2c 70  |yte,setpicbyte,p|
00000eb0  69 78 61 76 65 72 61 67  65 2c 74 69 6e 74 61 72  |ixaverage,tintar|
00000ec0  65 61 2c 61 76 65 72 61  67 65 62 72 75 73 68 2c  |ea,averagebrush,|
00000ed0  74 69 6e 74 62 72 75 73  68 2c 66 69 6e 64 63 68  |tintbrush,findch|
00000ee0  61 6e 67 65 62 6f 78 2c  67 72 61 64 75 61 74 65  |angebox,graduate|
00000ef0  64 66 69 6c 6c 2c 63 6f  6c 72 65 70 2c 70 61 74  |dfill,colrep,pat|
00000f00  66 69 6c 6c 2c 72 67 62  63 6f 6e 74 2c 67 72 65  |fill,rgbcont,gre|
00000f10  79 73 63 61 6c 65 2c 72  6f 74 61 74 65 2c 74 72  |yscale,rotate,tr|
00000f20  61 6e 73 61 72 65 61 2c  72 67 62 67 72 61 70 68  |ansarea,rgbgraph|
00000f30  2c 66 69 6c 74 65 72 2c  77 6f 62 62 6c 65 0d 03  |,filter,wobble..|
00000f40  fc 08 d9 23 46 25 0d 04  06 db 62 61 63 6b 75 70  |...#F%....backup|
00000f50  70 69 63 2b 3d 43 4f 44  45 25 3a 66 69 6c 6c 6d  |pic+=CODE%:fillm|
00000f60  61 73 6b 2b 3d 43 4f 44  45 25 3a 67 65 74 70 69  |ask+=CODE%:getpi|
00000f70  63 62 79 74 65 2b 3d 43  4f 44 45 25 3a 67 65 74  |cbyte+=CODE%:get|
00000f80  62 72 75 73 68 62 79 74  65 2b 3d 43 4f 44 45 25  |brushbyte+=CODE%|
00000f90  3a 73 65 74 70 69 63 62  79 74 65 2b 3d 43 4f 44  |:setpicbyte+=COD|
00000fa0  45 25 3a 70 69 78 61 76  65 72 61 67 65 2b 3d 43  |E%:pixaverage+=C|
00000fb0  4f 44 45 25 3a 74 69 6e  74 61 72 65 61 2b 3d 43  |ODE%:tintarea+=C|
00000fc0  4f 44 45 25 3a 61 76 65  72 61 67 65 62 72 75 73  |ODE%:averagebrus|
00000fd0  68 2b 3d 43 4f 44 45 25  3a 74 69 6e 74 62 72 75  |h+=CODE%:tintbru|
00000fe0  73 68 2b 3d 43 4f 44 45  25 3a 66 69 6e 64 63 68  |sh+=CODE%:findch|
00000ff0  61 6e 67 65 62 6f 78 2b  3d 43 4f 44 45 25 3a 67  |angebox+=CODE%:g|
00001000  72 61 64 75 61 74 65 64  66 69 6c 6c 2b 3d 43 4f  |raduatedfill+=CO|
00001010  44 45 25 3a 63 6f 6c 72  65 70 2b 3d 43 4f 44 45  |DE%:colrep+=CODE|
00001020  25 0d 04 10 7d 70 61 74  66 69 6c 6c 2b 3d 43 4f  |%...}patfill+=CO|
00001030  44 45 25 3a 72 67 62 63  6f 6e 74 2b 3d 43 4f 44  |DE%:rgbcont+=COD|
00001040  45 25 3a 67 72 65 79 73  63 61 6c 65 2b 3d 43 4f  |E%:greyscale+=CO|
00001050  44 45 25 3a 72 6f 74 61  74 65 2b 3d 43 4f 44 45  |DE%:rotate+=CODE|
00001060  25 3a 74 72 61 6e 73 61  72 65 61 2b 3d 43 4f 44  |%:transarea+=COD|
00001070  45 25 3a 72 67 62 67 72  61 70 68 2b 3d 43 4f 44  |E%:rgbgraph+=COD|
00001080  45 25 3a 66 69 6c 74 65  72 2b 3d 43 4f 44 45 25  |E%:filter+=CODE%|
00001090  3a 77 6f 62 62 6c 65 2b  3d 43 4f 44 45 25 0d 04  |:wobble+=CODE%..|
000010a0  1a 05 e1 0d 04 2e 0f dd  f2 6c 6f 61 64 66 6f 6e  |.........loadfon|
000010b0  74 73 0d 04 38 0e 46 4f  4e 54 53 25 3d 30 3a e1  |ts..8.FONTS%=0:.|
000010c0  0d 04 4c 11 dd f2 6c 6f  61 64 73 70 72 69 74 65  |..L...loadsprite|
000010d0  73 0d 04 56 05 e1 0d 04  6a 35 dd f2 61 63 74 69  |s..V....j5..acti|
000010e0  6f 6e 3a c8 99 20 22 57  69 6d 70 5f 46 6f 72 63  |on:.. "Wimp_Forc|
000010f0  65 52 65 64 72 61 77 22  2c 2d 31 2c 30 2c 30 2c  |eRedraw",-1,0,0,|
00001100  26 33 30 30 30 2c 26 33  30 30 30 0d 04 7e 05 f5  |&3000,&3000..~..|
00001110  0d 04 88 09 f2 70 6f 6c  6c 0d 04 92 27 fd 20 28  |.....poll...'. (|
00001120  52 45 41 53 25 3d 31 37  20 84 20 52 45 41 53 25  |REAS%=17 . REAS%|
00001130  3d 31 38 29 20 80 20 42  4c 4b 25 21 31 36 3d 30  |=18) . BLK%!16=0|
00001140  0d 04 9c 05 e1 0d 04 b0  19 dd f2 64 69 65 3a 4f  |...........die:O|
00001150  50 25 3d 30 3a f2 73 70  62 75 66 28 30 29 0d 04  |P%=0:.spbuf(0)..|
00001160  ba 33 e3 4c 25 3d 31 20  b8 20 34 3a ff 28 22 2a  |.3.L%=1 . 4:.("*|
00001170  52 45 4d 4f 56 45 20 3c  49 6d 61 67 65 72 79 24  |REMOVE <Imagery$|
00001180  44 69 72 3e 2e 58 50 49  43 22 2b c3 4c 25 29 3a  |Dir>.XPIC"+.L%):|
00001190  ed 0d 04 c4 24 c8 99 20  22 57 69 6d 70 5f 43 6c  |....$.. "Wimp_Cl|
000011a0  6f 73 65 44 6f 77 6e 22  2c 54 48 41 4e 44 25 2c  |oseDown",THAND%,|
000011b0  21 54 41 53 25 0d 04 ce  05 e0 0d 04 d8 05 e1 0d  |!TAS%...........|
000011c0  04 ec 0a dd f2 70 6f 6c  6c 0d 04 f6 22 c8 99 20  |.....poll...".. |
000011d0  22 57 69 6d 70 5f 47 65  74 50 6f 69 6e 74 65 72  |"Wimp_GetPointer|
000011e0  49 6e 66 6f 22 2c 2c 42  4c 4b 25 0d 05 00 21 e7  |Info",,BLK%...!.|
000011f0  20 42 4c 4b 25 21 31 32  3c 3e 48 41 4e 44 25 28  | BLK%!12<>HAND%(|
00001200  32 29 20 8c 20 4d 42 55  53 25 3d b9 0d 05 0a 1f  |2) . MBUS%=.....|
00001210  21 42 4c 4b 25 3d 25 31  30 30 31 31 31 31 31 31  |!BLK%=%100111111|
00001220  31 30 30 30 30 31 31 30  30 30 30 0d 05 14 21 c8  |10000110000...!.|
00001230  99 20 22 57 69 6d 70 5f  50 6f 6c 6c 22 2c 30 2c  |. "Wimp_Poll",0,|
00001240  42 4c 4b 25 20 b8 20 52  45 41 53 25 0d 05 1e 15  |BLK% . REAS%....|
00001250  e7 20 52 45 41 53 25 3e  2d 31 20 8c 20 f2 61 63  |. REAS%>-1 . .ac|
00001260  74 0d 05 28 05 e1 0d 05  32 09 dd f2 61 63 74 0d  |t..(....2...act.|
00001270  05 3c 0e c8 8e 20 52 45  41 53 25 20 ca 0d 05 46  |.<... REAS% ...F|
00001280  16 c9 20 30 3a f2 6b 75  6b 65 3a f2 70 69 63 70  |.. 0:.kuke:.picp|
00001290  6f 6c 6c 0d 05 50 0f c9  20 31 3a f2 72 65 64 72  |oll..P.. 1:.redr|
000012a0  61 77 0d 05 5a 0f c9 20  32 3a f2 6f 70 6d 61 69  |aw..Z.. 2:.opmai|
000012b0  6e 0d 05 64 0f c9 20 33  3a f2 63 6c 6d 61 69 6e  |n..d.. 3:.clmain|
000012c0  0d 05 6e 0e c9 20 36 3a  f2 6d 6f 75 73 65 0d 05  |..n.. 6:.mouse..|
000012d0  78 10 c9 20 37 3a f2 64  72 61 67 66 69 6e 0d 05  |x.. 7:.dragfin..|
000012e0  82 0c c9 20 38 3a f2 6b  65 79 0d 05 8c 0d c9 20  |... 8:.key..... |
000012f0  39 3a f2 6d 65 6e 75 0d  05 96 1f c9 20 31 37 2c  |9:.menu..... 17,|
00001300  31 38 3a f2 69 6e 6d 65  73 73 61 67 65 28 42 4c  |18:.inmessage(BL|
00001310  4b 25 21 31 36 29 0d 05  a0 05 cb 0d 05 aa 05 e1  |K%!16)..........|
00001320  0d 05 be 18 dd f2 6b 75  6b 65 3a e7 20 ac 20 4b  |......kuke:. . K|
00001330  55 4b 45 25 20 8c 20 e1  0d 05 c8 0c 4b 55 4c 49  |UKE% . .....KULI|
00001340  25 3d 31 30 0d 05 d2 18  c8 97 20 4d 58 25 2c 4d  |%=10...... MX%,M|
00001350  59 25 2c 4d 48 25 3a 4b  50 25 3d a3 0d 05 dc 15  |Y%,MH%:KP%=.....|
00001360  e7 20 ac 20 a6 28 2d 35  38 29 20 8c 20 8d 54 44  |. . .(-58) . .TD|
00001370  46 0d 05 e6 38 e7 20 4b  55 4b 4c 25 3c 3e 2d 35  |F...8. KUKL%<>-5|
00001380  38 20 8c 20 4b 55 4b 4c  25 3d 2d 35 38 3a 4b 55  |8 . KUKL%=-58:KU|
00001390  4b 44 25 3d 30 3a 4d 59  25 2b 3d 34 3a 4b 50 25  |KD%=0:MY%+=4:KP%|
000013a0  3d b9 3a e5 20 8d 54 44  46 0d 05 f0 29 4b 55 4b  |=.:. .TDF...)KUK|
000013b0  44 25 2b 3d 31 3a e7 20  4b 55 4b 44 25 3c 4b 55  |D%+=1:. KUKD%<KU|
000013c0  4c 49 25 20 8c 20 4b 50  25 3d b9 3a e5 20 8d 54  |LI% . KP%=.:. .T|
000013d0  44 46 0d 05 fa 1c 4b 55  4b 44 25 3d 4b 55 4c 49  |DF....KUKD%=KULI|
000013e0  25 3a 4d 59 25 2b 3d 34  3a 4b 50 25 3d b9 0d 06  |%:MY%+=4:KP%=...|
000013f0  04 15 e7 20 ac 20 a6 28  2d 34 32 29 20 8c 20 8d  |... . .(-42) . .|
00001400  54 6c 46 0d 06 0e 38 e7  20 4b 55 4b 4c 25 3c 3e  |TlF...8. KUKL%<>|
00001410  2d 35 38 20 8c 20 4b 55  4b 4c 25 3d 2d 35 38 3a  |-58 . KUKL%=-58:|
00001420  4b 55 4b 44 25 3d 30 3a  4d 59 25 2d 3d 34 3a 4b  |KUKD%=0:MY%-=4:K|
00001430  50 25 3d b9 3a e5 20 8d  54 6c 46 0d 06 18 29 4b  |P%=.:. .TlF...)K|
00001440  55 4b 44 25 2b 3d 31 3a  e7 20 4b 55 4b 44 25 3c  |UKD%+=1:. KUKD%<|
00001450  4b 55 4c 49 25 20 8c 20  4b 50 25 3d b9 3a e5 20  |KULI% . KP%=.:. |
00001460  8d 54 6c 46 0d 06 22 1c  4b 55 4b 44 25 3d 4b 55  |.TlF..".KUKD%=KU|
00001470  4c 49 25 3a 4d 59 25 2d  3d 34 3a 4b 50 25 3d b9  |LI%:MY%-=4:KP%=.|
00001480  0d 06 2c 15 e7 20 ac 20  a6 28 2d 32 36 29 20 8c  |..,.. . .(-26) .|
00001490  20 8d 44 54 46 0d 06 36  38 e7 20 4b 55 4b 4c 25  | .DTF..68. KUKL%|
000014a0  3c 3e 2d 35 38 20 8c 20  4b 55 4b 4c 25 3d 2d 35  |<>-58 . KUKL%=-5|
000014b0  38 3a 4b 55 4b 44 25 3d  30 3a 4d 58 25 2d 3d 32  |8:KUKD%=0:MX%-=2|
000014c0  3a 4b 50 25 3d b9 3a e5  20 8d 44 54 46 0d 06 40  |:KP%=.:. .DTF..@|
000014d0  29 4b 55 4b 44 25 2b 3d  31 3a e7 20 4b 55 4b 44  |)KUKD%+=1:. KUKD|
000014e0  25 3c 4b 55 4c 49 25 20  8c 20 4b 50 25 3d b9 3a  |%<KULI% . KP%=.:|
000014f0  e5 20 8d 44 54 46 0d 06  4a 1c 4b 55 4b 44 25 3d  |. .DTF..J.KUKD%=|
00001500  4b 55 4c 49 25 3a 4d 58  25 2d 3d 32 3a 4b 50 25  |KULI%:MX%-=2:KP%|
00001510  3d b9 0d 06 54 16 e7 20  ac 20 a6 28 2d 31 32 32  |=...T.. . .(-122|
00001520  29 20 8c 20 8d 44 7c 46  0d 06 5e 38 e7 20 4b 55  |) . .D|F..^8. KU|
00001530  4b 4c 25 3c 3e 2d 35 38  20 8c 20 4b 55 4b 4c 25  |KL%<>-58 . KUKL%|
00001540  3d 2d 35 38 3a 4b 55 4b  44 25 3d 30 3a 4d 58 25  |=-58:KUKD%=0:MX%|
00001550  2b 3d 32 3a 4b 50 25 3d  b9 3a e5 20 8d 44 7c 46  |+=2:KP%=.:. .D|F|
00001560  0d 06 68 29 4b 55 4b 44  25 2b 3d 31 3a e7 20 4b  |..h)KUKD%+=1:. K|
00001570  55 4b 44 25 3c 4b 55 4c  49 25 20 8c 20 4b 50 25  |UKD%<KULI% . KP%|
00001580  3d b9 3a e5 20 8d 44 7c  46 0d 06 72 1c 4b 55 4b  |=.:. .D|F..r.KUK|
00001590  44 25 3d 4b 55 4c 49 25  3a 4d 58 25 2b 3d 32 3a  |D%=KULI%:MX%+=2:|
000015a0  4b 50 25 3d b9 0d 06 7c  1e e7 20 ac 20 4b 50 25  |KP%=...|.. . KP%|
000015b0  20 8c 20 4b 55 4b 4c 25  3d 2d 31 3a 4b 55 4b 44  | . KUKL%=-1:KUKD|
000015c0  25 3d 30 0d 06 86 10 c8  97 20 b8 20 4d 58 25 2c  |%=0...... . MX%,|
000015d0  4d 59 25 0d 06 90 05 e1  0d 06 a4 0c dd f2 72 65  |MY%...........re|
000015e0  64 72 61 77 0d 06 ae 0e  c8 8e 20 21 42 4c 4b 25  |draw...... !BLK%|
000015f0  20 ca 0d 06 b8 1a c9 20  48 41 4e 44 25 28 32 29  | ...... HAND%(2)|
00001600  3a f2 72 65 64 72 61 77  6d 61 69 6e 0d 06 c2 19  |:.redrawmain....|
00001610  c9 20 48 41 4e 44 25 28  33 29 3a f2 72 65 64 72  |. HAND%(3):.redr|
00001620  61 77 70 61 6c 0d 06 cc  1b c9 20 48 41 4e 44 25  |awpal..... HAND%|
00001630  28 35 29 3a f2 72 65 64  72 61 77 62 72 75 73 68  |(5):.redrawbrush|
00001640  0d 06 d6 1a c9 20 48 41  4e 44 25 28 31 31 29 3a  |..... HAND%(11):|
00001650  f2 72 65 64 72 61 77 70  61 74 0d 06 e0 1c c9 20  |.redrawpat..... |
00001660  48 41 4e 44 25 28 31 32  29 3a f2 72 65 64 72 61  |HAND%(12):.redra|
00001670  77 65 64 62 72 75 0d 06  ea 1b c9 20 48 41 4e 44  |wedbru..... HAND|
00001680  25 28 31 33 29 3a f2 72  65 64 72 61 77 66 69 6c  |%(13):.redrawfil|
00001690  6c 0d 06 f4 1c c9 20 48  41 4e 44 25 28 31 35 29  |l..... HAND%(15)|
000016a0  3a f2 72 65 64 72 61 77  74 62 61 63 6b 0d 06 fe  |:.redrawtback...|
000016b0  1d c9 20 48 41 4e 44 25  28 31 38 29 3a f2 72 65  |.. HAND%(18):.re|
000016c0  64 72 61 77 63 6f 6c 72  65 70 0d 07 08 1e c9 20  |drawcolrep..... |
000016d0  48 41 4e 44 25 28 32 30  29 3a f2 72 65 64 72 61  |HAND%(20):.redra|
000016e0  77 70 61 74 66 69 6c 6c  0d 07 12 30 c9 20 48 41  |wpatfill...0. HA|
000016f0  4e 44 25 28 32 36 29 2c  48 41 4e 44 25 28 32 37  |ND%(26),HAND%(27|
00001700  29 2c 48 41 4e 44 25 28  32 38 29 3a f2 72 65 64  |),HAND%(28):.red|
00001710  72 61 77 67 72 61 70 68  0d 07 1c 1b c9 20 48 41  |rawgraph..... HA|
00001720  4e 44 25 28 33 33 29 3a  f2 72 65 64 72 61 77 7a  |ND%(33):.redrawz|
00001730  6f 6f 6d 0d 07 26 1a c9  20 48 41 4e 44 25 28 32  |oom..&.. HAND%(2|
00001740  31 29 3a f2 72 65 64 72  61 77 72 67 62 0d 07 30  |1):.redrawrgb..0|
00001750  1a c9 20 48 41 4e 44 25  28 33 30 29 3a f2 72 65  |.. HAND%(30):.re|
00001760  64 72 61 77 77 6f 62 0d  07 3a 05 cb 0d 07 44 05  |drawwob..:....D.|
00001770  e1 0d 07 58 0f dd f2 72  65 64 72 61 77 77 6f 62  |...X...redrawwob|
00001780  0d 07 62 27 c8 99 20 22  57 69 6d 70 5f 52 65 64  |..b'.. "Wimp_Red|
00001790  72 61 77 57 69 6e 64 6f  77 22 2c 2c 42 4c 4b 25  |rawWindow",,BLK%|
000017a0  20 b8 20 46 49 4e 25 0d  07 6c 11 f2 67 65 74 72  | . FIN%..l..getr|
000017b0  64 6f 72 28 35 36 34 29  0d 07 76 60 c8 95 20 46  |dor(564)..v`.. F|
000017c0  49 4e 25 3a f2 70 6c 6f  74 32 35 36 73 70 72 69  |IN%:.plot256spri|
000017d0  74 65 28 53 48 4f 57 25  2c 22 53 48 4f 57 22 2c  |te(SHOW%,"SHOW",|
000017e0  57 4f 58 25 2b 36 34 2c  57 4f 59 25 2b 31 36 29  |WOX%+64,WOY%+16)|
000017f0  3a c8 99 20 22 57 69 6d  70 5f 47 65 74 52 65 63  |:.. "Wimp_GetRec|
00001800  74 61 6e 67 6c 65 22 2c  2c 42 4c 4b 25 20 b8 20  |tangle",,BLK% . |
00001810  46 49 4e 25 3a ce 3a e1  0d 07 8a 43 dd f2 66 6f  |FIN%:.:....C..fo|
00001820  72 63 65 64 72 61 77 77  6f 62 3a c8 99 20 22 57  |rcedrawwob:.. "W|
00001830  69 6d 70 5f 46 6f 72 63  65 52 65 64 72 61 77 22  |imp_ForceRedraw"|
00001840  2c 48 41 4e 44 25 28 33  30 29 2c 30 2c 2d 35 36  |,HAND%(30),0,-56|
00001850  34 2c 34 38 30 2c 32 32  30 3a e1 0d 07 9e 11 dd  |4,480,220:......|
00001860  f2 72 65 64 72 61 77 62  72 75 73 68 0d 07 a8 27  |.redrawbrush...'|
00001870  c8 99 20 22 57 69 6d 70  5f 52 65 64 72 61 77 57  |.. "Wimp_RedrawW|
00001880  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 20 b8 20 46  |indow",,BLK% . F|
00001890  49 4e 25 0d 07 b2 11 f2  67 65 74 72 64 6f 72 28  |IN%.....getrdor(|
000018a0  32 36 30 29 0d 07 bc 3c  c8 95 20 46 49 4e 25 3a  |260)...<.. FIN%:|
000018b0  f2 70 6c 6f 74 62 72 75  73 68 65 73 3a c8 99 20  |.plotbrushes:.. |
000018c0  22 57 69 6d 70 5f 47 65  74 52 65 63 74 61 6e 67  |"Wimp_GetRectang|
000018d0  6c 65 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |le",,BLK% . FIN%|
000018e0  0d 07 c6 05 ce 0d 07 d0  05 e1 0d 07 e4 11 dd f2  |................|
000018f0  72 65 64 72 61 77 65 64  62 72 75 0d 07 ee 27 c8  |redrawedbru...'.|
00001900  99 20 22 57 69 6d 70 5f  52 65 64 72 61 77 57 69  |. "Wimp_RedrawWi|
00001910  6e 64 6f 77 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ndow",,BLK% . FI|
00001920  4e 25 0d 07 f8 1d f2 67  65 74 72 64 6f 72 28 36  |N%.....getrdor(6|
00001930  34 30 2b 28 45 44 54 59  25 2a 32 36 30 29 29 0d  |40+(EDTY%*260)).|
00001940  08 02 3a c8 95 20 46 49  4e 25 3a f2 70 6c 6f 74  |..:.. FIN%:.plot|
00001950  65 64 62 72 75 3a c8 99  20 22 57 69 6d 70 5f 47  |edbru:.. "Wimp_G|
00001960  65 74 52 65 63 74 61 6e  67 6c 65 22 2c 2c 42 4c  |etRectangle",,BL|
00001970  4b 25 20 b8 20 46 49 4e  25 0d 08 0c 05 ce 0d 08  |K% . FIN%.......|
00001980  16 05 e1 0d 08 2a 13 dd  f2 72 65 64 72 61 77 70  |.....*...redrawp|
00001990  61 74 66 69 6c 6c 0d 08  34 27 c8 99 20 22 57 69  |atfill..4'.. "Wi|
000019a0  6d 70 5f 52 65 64 72 61  77 57 69 6e 64 6f 77 22  |mp_RedrawWindow"|
000019b0  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 08 3e  |,,BLK% . FIN%..>|
000019c0  11 f2 67 65 74 72 64 6f  72 28 31 30 38 29 0d 08  |..getrdor(108)..|
000019d0  48 3c c8 95 20 46 49 4e  25 3a f2 70 6c 6f 74 70  |H<.. FIN%:.plotp|
000019e0  61 74 66 69 6c 6c 3a c8  99 20 22 57 69 6d 70 5f  |atfill:.. "Wimp_|
000019f0  47 65 74 52 65 63 74 61  6e 67 6c 65 22 2c 2c 42  |GetRectangle",,B|
00001a00  4c 4b 25 20 b8 20 46 49  4e 25 0d 08 52 05 ce 0d  |LK% . FIN%..R...|
00001a10  08 5c 05 e1 0d 08 70 46  dd f2 66 6f 72 63 65 64  |.\....pF..forced|
00001a20  72 61 77 70 61 74 66 69  6c 6c 3a c8 99 20 22 57  |rawpatfill:.. "W|
00001a30  69 6d 70 5f 46 6f 72 63  65 52 65 64 72 61 77 22  |imp_ForceRedraw"|
00001a40  2c 48 41 4e 44 25 28 32  30 29 2c 30 2c 2d 31 30  |,HAND%(20),0,-10|
00001a50  38 2c 31 31 30 30 2c 30  3a e1 0d 08 84 25 dd f2  |8,1100,0:....%..|
00001a60  66 6f 72 63 65 64 72 61  77 65 64 62 72 75 28 78  |forcedrawedbru(x|
00001a70  31 25 2c 79 31 25 2c 78  32 25 2c 79 32 25 29 0d  |1%,y1%,x2%,y2%).|
00001a80  08 8e 13 21 42 4c 4b 25  3d 48 41 4e 44 25 28 31  |...!BLK%=HAND%(1|
00001a90  32 29 0d 08 98 0e 42 4c  4b 25 21 34 3d 78 31 25  |2)....BLK%!4=x1%|
00001aa0  0d 08 a2 0e 42 4c 4b 25  21 38 3d 79 31 25 0d 08  |....BLK%!8=y1%..|
00001ab0  ac 0f 42 4c 4b 25 21 31  32 3d 78 32 25 0d 08 b6  |..BLK%!12=x2%...|
00001ac0  0f 42 4c 4b 25 21 31 36  3d 79 32 25 0d 08 c0 27  |.BLK%!16=y2%...'|
00001ad0  c8 99 20 22 57 69 6d 70  5f 55 70 64 61 74 65 57  |.. "Wimp_UpdateW|
00001ae0  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 20 b8 20 46  |indow",,BLK% . F|
00001af0  49 4e 25 0d 08 ca 1d f2  67 65 74 72 64 6f 72 28  |IN%.....getrdor(|
00001b00  36 34 30 2b 28 45 44 54  59 25 2a 32 36 30 29 29  |640+(EDTY%*260))|
00001b10  0d 08 d4 0b c8 95 20 46  49 4e 25 0d 08 de 0e f2  |...... FIN%.....|
00001b20  70 6c 6f 74 65 64 62 72  75 0d 08 e8 27 c8 99 20  |plotedbru...'.. |
00001b30  22 57 69 6d 70 5f 47 65  74 52 65 63 74 61 6e 67  |"Wimp_GetRectang|
00001b40  6c 65 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |le",,BLK% . FIN%|
00001b50  0d 08 f2 05 ce 0d 08 fc  05 e1 0d 09 10 14 dd f2  |................|
00001b60  66 6f 72 63 65 64 72 61  77 62 72 75 73 68 0d 09  |forcedrawbrush..|
00001b70  1a 12 21 42 4c 4b 25 3d  48 41 4e 44 25 28 35 29  |..!BLK%=HAND%(5)|
00001b80  0d 09 24 0c 42 4c 4b 25  21 34 3d 30 0d 09 2e 0f  |..$.BLK%!4=0....|
00001b90  42 4c 4b 25 21 38 3d 2d  32 36 30 0d 09 38 0f 42  |BLK%!8=-260..8.B|
00001ba0  4c 4b 25 21 31 32 3d 33  38 34 0d 09 42 0d 42 4c  |LK%!12=384..B.BL|
00001bb0  4b 25 21 31 36 3d 30 0d  09 4c 27 c8 99 20 22 57  |K%!16=0..L'.. "W|
00001bc0  69 6d 70 5f 55 70 64 61  74 65 57 69 6e 64 6f 77  |imp_UpdateWindow|
00001bd0  22 2c 2c 42 4c 4b 25 20  b8 20 46 49 4e 25 0d 09  |",,BLK% . FIN%..|
00001be0  56 11 f2 67 65 74 72 64  6f 72 28 32 36 30 29 0d  |V..getrdor(260).|
00001bf0  09 60 0b c8 95 20 46 49  4e 25 0d 09 6a 10 f2 70  |.`... FIN%..j..p|
00001c00  6c 6f 74 62 72 75 73 68  65 73 0d 09 74 27 c8 99  |lotbrushes..t'..|
00001c10  20 22 57 69 6d 70 5f 47  65 74 52 65 63 74 61 6e  | "Wimp_GetRectan|
00001c20  67 6c 65 22 2c 2c 42 4c  4b 25 20 b8 20 46 49 4e  |gle",,BLK% . FIN|
00001c30  25 0d 09 7e 05 ce 0d 09  88 05 e1 0d 09 9c 28 dd  |%..~..........(.|
00001c40  f2 70 6c 6f 74 32 35 36  73 70 72 69 74 65 28 53  |.plot256sprite(S|
00001c50  50 41 25 2c 53 50 49 24  2c 50 4f 58 25 2c 50 4f  |PA%,SPI$,POX%,PO|
00001c60  59 25 29 0d 09 a6 14 e7  20 eb 3c 3e 31 35 20 8c  |Y%)..... .<>15 .|
00001c70  20 e5 20 8d 74 7a 49 0d  09 b0 5a 21 53 43 41 4c  | . .tzI...Z!SCAL|
00001c80  45 25 3d 31 3a 53 43 41  4c 45 25 21 34 3d 31 3a  |E%=1:SCALE%!4=1:|
00001c90  53 43 41 4c 45 25 21 38  3d 31 3a 53 43 41 4c 45  |SCALE%!8=1:SCALE|
00001ca0  25 21 31 32 3d 31 3a c8  99 20 22 4f 53 5f 53 70  |%!12=1:.. "OS_Sp|
00001cb0  72 69 74 65 4f 70 22 2c  32 39 30 2c 53 50 41 25  |riteOp",290,SPA%|
00001cc0  2c 53 50 49 24 2c 50 4f  58 25 2c 50 4f 59 25 3a  |,SPI$,POX%,POY%:|
00001cd0  e1 0d 09 ba 39 e7 20 eb  3c 3e 45 53 4d 25 20 8c  |....9. .<>ESM% .|
00001ce0  20 45 53 4d 25 3d eb 3a  45 50 4d 25 3d eb 3a c8  | ESM%=.:EPM%=.:.|
00001cf0  99 26 34 30 37 34 30 2c  31 35 2c 30 2c 2d 31 2c  |.&40740,15,0,-1,|
00001d00  2d 31 2c 50 49 58 54 41  42 25 0d 09 c4 15 c8 99  |-1,PIXTAB%......|
00001d10  26 33 35 2c 2d 31 2c 35  20 b8 20 2c 2c 45 25 0d  |&35,-1,5 . ,,E%.|
00001d20  09 ce 29 53 58 25 3d 32  5e 28 32 2d 45 25 29 3a  |..)SX%=2^(2-E%):|
00001d30  53 43 41 4c 45 25 21 34  3d 53 58 25 3a 53 43 41  |SCALE%!4=SX%:SCA|
00001d40  4c 45 25 21 31 32 3d 31  0d 09 d8 15 c8 99 26 33  |LE%!12=1......&3|
00001d50  35 2c 2d 31 2c 34 20 b8  20 2c 2c 45 25 0d 09 e2  |5,-1,4 . ,,E%...|
00001d60  56 e7 20 45 25 3c 31 20  8c 20 53 58 25 3d 32 5e  |V. E%<1 . SX%=2^|
00001d70  28 31 2d 45 25 29 3a 21  53 43 41 4c 45 25 3d 53  |(1-E%):!SCALE%=S|
00001d80  58 25 3a 53 43 41 4c 45  25 21 38 3d 31 20 8b 20  |X%:SCALE%!8=1 . |
00001d90  53 58 25 3d 32 5e 28 45  25 2d 31 29 3a 21 53 43  |SX%=2^(E%-1):!SC|
00001da0  41 4c 45 25 3d 31 3a 53  43 41 4c 45 25 21 38 3d  |ALE%=1:SCALE%!8=|
00001db0  53 58 25 0d 09 ec 3d c8  99 20 22 4f 53 5f 53 70  |SX%...=.. "OS_Sp|
00001dc0  72 69 74 65 4f 70 22 2c  33 30 38 2c 53 50 41 25  |riteOp",308,SPA%|
00001dd0  2c 53 50 49 24 2c 50 4f  58 25 2c 50 4f 59 25 2c  |,SPI$,POX%,POY%,|
00001de0  30 2c 53 43 41 4c 45 25  2c 50 49 58 54 41 42 25  |0,SCALE%,PIXTAB%|
00001df0  0d 09 f6 05 e1 0d 0a 0a  11 dd f2 70 6c 6f 74 70  |...........plotp|
00001e00  61 74 66 69 6c 6c 0d 0a  14 aa e3 4c 25 3d 31 20  |atfill.....L%=1 |
00001e10  b8 20 31 32 3a f2 70 6c  6f 74 32 35 36 73 70 72  |. 12:.plot256spr|
00001e20  69 74 65 28 50 46 49 4c  4c 53 25 2c c3 4c 25 2c  |ite(PFILLS%,.L%,|
00001e30  57 4f 58 25 2b 28 28 4c  25 2d 31 29 2a 38 34 29  |WOX%+((L%-1)*84)|
00001e40  2b 32 34 2c 57 4f 59 25  2b 31 32 29 3a e7 20 43  |+24,WOY%+12):. C|
00001e50  50 46 25 3d 4c 25 20 8c  20 f2 63 6f 6c 28 30 2c  |PF%=L% . .col(0,|
00001e60  30 2c 30 29 3a c8 93 20  57 4f 58 25 2b 28 28 43  |0,0):.. WOX%+((C|
00001e70  50 46 25 2d 31 29 2a 38  34 29 2b 31 36 2c 57 4f  |PF%-1)*84)+16,WO|
00001e80  59 25 2b 34 2c 37 38 2c  37 36 3a c8 93 20 57 4f  |Y%+4,78,76:.. WO|
00001e90  58 25 2b 28 28 43 50 46  25 2d 31 29 2a 38 34 29  |X%+((CPF%-1)*84)|
00001ea0  2b 31 38 2c 57 4f 59 25  2b 34 2c 37 34 2c 37 36  |+18,WOY%+4,74,76|
00001eb0  0d 0a 1e 05 ed 0d 0a 28  05 e1 0d 0a 3c 11 dd f2  |.......(....<...|
00001ec0  70 6c 6f 74 62 72 75 73  68 65 73 0d 0a 46 0e e3  |plotbrushes..F..|
00001ed0  4c 25 3d 31 20 b8 20 31  32 0d 0a 50 44 42 4c 4b  |L%=1 . 12..PDBLK|
00001ee0  25 21 34 30 30 3d 48 41  4e 44 25 28 35 29 3a 42  |%!400=HAND%(5):B|
00001ef0  4c 4b 25 21 34 30 34 3d  4c 25 2d 31 3a c8 99 20  |LK%!404=L%-1:.. |
00001f00  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00001f10  74 65 22 2c 2c 42 4c 4b  25 2b 34 30 30 0d 0a 5a  |te",,BLK%+400..Z|
00001f20  48 f2 70 6c 6f 74 32 35  36 73 70 72 69 74 65 28  |H.plot256sprite(|
00001f30  42 52 55 53 48 25 2c c3  4c 25 2c 57 4f 58 25 2b  |BRUSH%,.L%,WOX%+|
00001f40  28 42 4c 4b 25 21 34 30  38 29 2b 32 2c 57 4f 59  |(BLK%!408)+2,WOY|
00001f50  25 2b 28 32 36 30 2b 28  42 4c 4b 25 21 34 31 32  |%+(260+(BLK%!412|
00001f60  29 29 2b 34 29 0d 0a 64  56 e7 20 53 45 4c 42 52  |))+4)..dV. SELBR|
00001f70  25 3d 4c 25 20 8c 20 f2  63 6f 6c 28 34 38 2c 31  |%=L% . .col(48,1|
00001f80  39 32 2c 33 29 3a c8 93  20 c8 90 20 57 4f 58 25  |92,3):.. .. WOX%|
00001f90  2b 28 42 4c 4b 25 21 34  30 38 29 2b 32 2c 57 4f  |+(BLK%!408)+2,WO|
00001fa0  59 25 2b 28 32 36 30 2b  28 42 4c 4b 25 21 34 31  |Y%+(260+(BLK%!41|
00001fb0  32 29 29 2b 34 2c 36 34  2c 36 30 0d 0a 6e 05 ed  |2))+4,64,60..n..|
00001fc0  0d 0a 78 05 e1 0d 0a 8c  0f dd f2 70 6c 6f 74 65  |..x........plote|
00001fd0  64 62 72 75 0d 0a 96 28  e7 20 45 44 54 59 25 3d  |dbru...(. EDTY%=|
00001fe0  30 20 8c 20 57 45 25 3d  42 52 55 53 48 25 20 8b  |0 . WE%=BRUSH% .|
00001ff0  20 57 45 25 3d 50 46 49  4c 4c 53 25 0d 0a a0 37  | WE%=PFILLS%...7|
00002000  f2 70 6c 6f 74 32 35 36  73 70 72 69 74 65 28 57  |.plot256sprite(W|
00002010  45 25 2c 22 31 22 2c 57  4f 58 25 2b 33 32 2c 57  |E%,"1",WOX%+32,W|
00002020  4f 59 25 2b 32 30 2b 28  45 44 54 59 25 2a 32 36  |OY%+20+(EDTY%*26|
00002030  30 29 29 0d 0a aa 2d e7  20 45 44 42 52 25 3c 3e  |0))...-. EDBR%<>|
00002040  31 20 8c 20 f2 63 6f 6c  28 30 2c 30 2c 30 29 20  |1 . .col(0,0,0) |
00002050  8b 20 f2 63 6f 6c 28 36  33 2c 31 39 32 2c 30 29  |. .col(63,192,0)|
00002060  0d 0a b4 50 c8 93 20 c8  90 20 57 4f 58 25 2b 33  |...P.. .. WOX%+3|
00002070  32 2c 57 4f 59 25 2b 34  2b 28 45 44 54 59 25 2a  |2,WOY%+4+(EDTY%*|
00002080  32 36 30 29 2c 36 34 2c  38 3a c8 93 20 c8 90 20  |260),64,8:.. .. |
00002090  57 4f 58 25 2b 33 32 2c  57 4f 59 25 2b 38 36 2b  |WOX%+32,WOY%+86+|
000020a0  28 45 44 54 59 25 2a 32  36 30 29 2c 36 34 2c 38  |(EDTY%*260),64,8|
000020b0  0d 0a be 2d e7 20 57 4f  59 25 2b 31 30 38 2b 28  |...-. WOY%+108+(|
000020c0  45 44 54 59 25 2a 32 36  30 29 3c 28 42 4c 4b 25  |EDTY%*260)<(BLK%|
000020d0  21 33 32 29 20 8c 20 e5  20 8d 54 44 4b 0d 0a c8  |!32) . . .TDK...|
000020e0  0e e3 4c 25 3d 32 20 b8  20 31 32 0d 0a d2 48 f4  |..L%=2 . 12...H.|
000020f0  20 42 4c 4b 25 21 34 30  30 3d 48 41 4e 44 25 28  | BLK%!400=HAND%(|
00002100  31 32 29 3a 42 4c 4b 25  21 34 30 34 3d 4c 25 2d  |12):BLK%!404=L%-|
00002110  31 3a 53 59 53 20 22 57  69 6d 70 5f 47 65 74 49  |1:SYS "Wimp_GetI|
00002120  63 6f 6e 53 74 61 74 65  22 2c 2c 42 4c 4b 25 2b  |conState",,BLK%+|
00002130  34 30 30 0d 0a dc 43 f2  70 6c 6f 74 32 35 36 73  |400...C.plot256s|
00002140  70 72 69 74 65 28 57 45  25 2c c3 4c 25 2c 57 4f  |prite(WE%,.L%,WO|
00002150  58 25 2b 28 28 4c 25 2d  31 29 2a 36 34 29 2b 33  |X%+((L%-1)*64)+3|
00002160  32 2c 57 4f 59 25 2b 32  30 2b 28 45 44 54 59 25  |2,WOY%+20+(EDTY%|
00002170  2a 32 36 30 29 29 0d 0a  e6 2e e7 20 45 44 42 52  |*260))..... EDBR|
00002180  25 3c 3e 4c 25 20 8c 20  f2 63 6f 6c 28 30 2c 30  |%<>L% . .col(0,0|
00002190  2c 30 29 20 8b 20 f2 63  6f 6c 28 36 33 2c 31 39  |,0) . .col(63,19|
000021a0  32 2c 30 29 0d 0a f0 68  c8 93 20 c8 90 20 57 4f  |2,0)...h.. .. WO|
000021b0  58 25 2b 28 28 4c 25 2d  31 29 2a 36 34 29 2b 33  |X%+((L%-1)*64)+3|
000021c0  32 2c 57 4f 59 25 2b 34  2b 28 45 44 54 59 25 2a  |2,WOY%+4+(EDTY%*|
000021d0  32 36 30 29 2c 36 34 2c  38 3a c8 93 20 c8 90 20  |260),64,8:.. .. |
000021e0  57 4f 58 25 2b 28 28 4c  25 2d 31 29 2a 36 34 29  |WOX%+((L%-1)*64)|
000021f0  2b 33 32 2c 57 4f 59 25  2b 38 36 2b 28 45 44 54  |+32,WOY%+86+(EDT|
00002200  59 25 2a 32 36 30 29 2c  36 34 2c 38 0d 0a fa 05  |Y%*260),64,8....|
00002210  ed 0d 0b 04 2e 21 53 43  41 4c 45 25 3d 28 21 53  |.....!SCALE%=(!S|
00002220  43 41 4c 45 25 29 2a 31  32 3a 53 43 41 4c 45 25  |CALE%)*12:SCALE%|
00002230  21 34 3d 28 53 43 41 4c  45 25 21 34 29 2a 38 0d  |!4=(SCALE%!4)*8.|
00002240  0b 0e 2d e7 20 57 4f 59  25 2b 31 30 38 2b 28 45  |..-. WOY%+108+(E|
00002250  44 54 59 25 2a 32 36 30  29 3e 28 42 4c 4b 25 21  |DTY%*260)>(BLK%!|
00002260  34 30 29 20 8c 20 e5 20  8d 54 6c 4b 0d 0b 18 a3  |40) . . .TlK....|
00002270  e7 20 eb 3c 3e 31 35 20  8c 20 c8 99 20 22 4f 53  |. .<>15 . .. "OS|
00002280  5f 53 70 72 69 74 65 4f  70 22 2c 33 30 38 2c 57  |_SpriteOp",308,W|
00002290  45 25 2c c3 45 44 42 52  25 2c 57 4f 58 25 2b 32  |E%,.EDBR%,WOX%+2|
000022a0  38 2c 57 4f 59 25 2b 31  31 32 2b 28 45 44 54 59  |8,WOY%+112+(EDTY|
000022b0  25 2a 32 36 30 29 2c 30  2c 53 43 41 4c 45 25 2c  |%*260),0,SCALE%,|
000022c0  50 49 58 54 41 42 25 20  8b 20 c8 99 20 22 4f 53  |PIXTAB% . .. "OS|
000022d0  5f 53 70 72 69 74 65 4f  70 22 2c 33 30 38 2c 57  |_SpriteOp",308,W|
000022e0  45 25 2c c3 45 44 42 52  25 2c 57 4f 58 25 2b 32  |E%,.EDBR%,WOX%+2|
000022f0  38 2c 57 4f 59 25 2b 31  31 32 2b 28 45 44 54 59  |8,WOY%+112+(EDTY|
00002300  25 2a 32 36 30 29 2c 30  2c 53 43 41 4c 45 25 0d  |%*260),0,SCALE%.|
00002310  0b 22 9d 45 58 25 3d 57  4f 58 25 2b 32 38 3a 45  |.".EX%=WOX%+28:E|
00002320  59 25 3d 57 4f 59 25 2b  31 31 32 2b 28 45 44 54  |Y%=WOY%+112+(EDT|
00002330  59 25 2a 32 36 30 29 3a  f2 63 6f 6c 28 32 31 2c  |Y%*260):.col(21,|
00002340  31 39 32 2c 30 29 3a e3  4c 25 3d 30 20 b8 20 33  |192,0):.L%=0 . 3|
00002350  32 3a 86 20 45 58 25 2b  28 4c 25 2a 32 34 29 2c  |2:. EX%+(L%*24),|
00002360  45 59 25 2c 45 58 25 2b  28 4c 25 2a 32 34 29 2c  |EY%,EX%+(L%*24),|
00002370  45 59 25 2b 35 31 32 3a  ed 3a e3 4c 25 3d 30 20  |EY%+512:.:.L%=0 |
00002380  b8 20 31 36 3a 86 20 45  58 25 2c 45 59 25 2b 28  |. 16:. EX%,EY%+(|
00002390  4c 25 2a 33 32 29 2c 45  58 25 2b 37 36 38 2c 45  |L%*32),EX%+768,E|
000023a0  59 25 2b 28 4c 25 2a 33  32 29 3a ed 0d 0b 2c 8b  |Y%+(L%*32):...,.|
000023b0  e7 20 45 44 54 59 25 3d  31 20 8c 20 57 4f 58 25  |. EDTY%=1 . WOX%|
000023c0  2b 3d 33 32 3a 57 4f 59  25 2b 3d 31 36 3a f2 70  |+=32:WOY%+=16:.p|
000023d0  6c 6f 74 70 61 6c 28 4f  50 41 4c 25 29 3a f2 63  |lotpal(OPAL%):.c|
000023e0  6f 6c 28 36 33 2c 31 39  32 2c 30 29 3a c8 93 20  |ol(63,192,0):.. |
000023f0  57 4f 58 25 2b 28 28 45  46 43 4f 4c 25 20 83 20  |WOX%+((EFCOL% . |
00002400  33 32 29 2a 32 34 29 2c  57 4f 59 25 2b 28 28 45  |32)*24),WOY%+((E|
00002410  46 43 4f 4c 25 20 81 20  33 32 29 2a 32 38 29 2c  |FCOL% . 32)*28),|
00002420  32 34 2c 32 38 3a 57 4f  58 25 2d 3d 33 32 3a 57  |24,28:WOX%-=32:W|
00002430  4f 59 25 2d 3d 31 36 0d  0b 36 05 e1 0d 0b 4a 13  |OY%-=16..6....J.|
00002440  dd f2 66 6f 72 63 65 64  72 61 77 6d 61 69 6e 0d  |..forcedrawmain.|
00002450  0b 54 12 21 42 4c 4b 25  3d 48 41 4e 44 25 28 32  |.T.!BLK%=HAND%(2|
00002460  29 0d 0b 5e 0c 42 4c 4b  25 21 34 3d 30 0d 0b 68  |)..^.BLK%!4=0..h|
00002470  16 42 4c 4b 25 21 38 3d  2d 31 30 32 34 2a 5a 4f  |.BLK%!8=-1024*ZO|
00002480  4f 4d 25 0d 0b 72 16 42  4c 4b 25 21 31 32 3d 31  |OM%..r.BLK%!12=1|
00002490  32 38 30 2a 5a 4f 4f 4d  25 0d 0b 7c 0d 42 4c 4b  |280*ZOOM%..|.BLK|
000024a0  25 21 31 36 3d 30 0d 0b  86 27 c8 99 20 22 57 69  |%!16=0...'.. "Wi|
000024b0  6d 70 5f 55 70 64 61 74  65 57 69 6e 64 6f 77 22  |mp_UpdateWindow"|
000024c0  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 0b 90  |,,BLK% . FIN%...|
000024d0  18 f2 67 65 74 72 64 6f  72 28 31 30 32 34 2a 5a  |..getrdor(1024*Z|
000024e0  4f 4f 4d 25 29 0d 0b 9a  0b c8 95 20 46 49 4e 25  |OOM%)...... FIN%|
000024f0  0d 0b a4 0c f2 70 6c 6f  74 70 69 63 0d 0b ae 27  |.....plotpic...'|
00002500  c8 99 20 22 57 69 6d 70  5f 47 65 74 52 65 63 74  |.. "Wimp_GetRect|
00002510  61 6e 67 6c 65 22 2c 2c  42 4c 4b 25 20 b8 20 46  |angle",,BLK% . F|
00002520  49 4e 25 0d 0b b8 05 ce  0d 0b c2 05 e1 0d 0b d6  |IN%.............|
00002530  21 dd f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |!..quickdrawmain|
00002540  3a e7 20 ac 20 56 41 43  42 25 20 8c 20 e1 0d 0b  |:. . VACB% . ...|
00002550  e0 12 21 42 4c 4b 25 3d  48 41 4e 44 25 28 32 29  |..!BLK%=HAND%(2)|
00002560  0d 0b ea 12 42 4c 4b 25  21 34 3d 43 42 4d 49 4e  |....BLK%!4=CBMIN|
00002570  58 25 0d 0b f4 12 42 4c  4b 25 21 38 3d 43 42 4d  |X%....BLK%!8=CBM|
00002580  49 4e 59 25 0d 0b fe 13  42 4c 4b 25 21 31 32 3d  |INY%....BLK%!12=|
00002590  43 42 4d 41 58 58 25 0d  0c 08 13 42 4c 4b 25 21  |CBMAXX%....BLK%!|
000025a0  31 36 3d 43 42 4d 41 58  59 25 0d 0c 12 27 c8 99  |16=CBMAXY%...'..|
000025b0  20 22 57 69 6d 70 5f 55  70 64 61 74 65 57 69 6e  | "Wimp_UpdateWin|
000025c0  64 6f 77 22 2c 2c 42 4c  4b 25 20 b8 20 46 49 4e  |dow",,BLK% . FIN|
000025d0  25 0d 0c 1c 18 f2 67 65  74 72 64 6f 72 28 31 30  |%.....getrdor(10|
000025e0  32 34 2a 5a 4f 4f 4d 25  29 0d 0c 26 0b c8 95 20  |24*ZOOM%)..&... |
000025f0  46 49 4e 25 0d 0c 30 0c  f2 70 6c 6f 74 70 69 63  |FIN%..0..plotpic|
00002600  0d 0c 3a 27 c8 99 20 22  57 69 6d 70 5f 47 65 74  |..:'.. "Wimp_Get|
00002610  52 65 63 74 61 6e 67 6c  65 22 2c 2c 42 4c 4b 25  |Rectangle",,BLK%|
00002620  20 b8 20 46 49 4e 25 0d  0c 44 05 ce 0d 0c 4e 05  | . FIN%..D....N.|
00002630  e1 0d 0c 62 15 dd f2 69  6e 70 69 63 3a e7 20 49  |...b...inpic:. I|
00002640  50 25 20 8c 20 e1 0d 0c  6c 09 49 50 25 3d b9 0d  |P% . ...l.IP%=..|
00002650  0c 76 31 c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |.v1.. "OS_Sprite|
00002660  4f 70 22 2c 33 31 36 2c  50 49 43 25 2c 22 50 49  |Op",316,PIC%,"PI|
00002670  43 22 20 b8 20 56 31 2c  56 32 2c 56 33 2c 56 34  |C" . V1,V2,V3,V4|
00002680  0d 0c 80 18 c8 99 20 22  4f 53 5f 43 68 61 6e 67  |...... "OS_Chang|
00002690  65 64 42 6f 78 22 2c 32  0d 0c 8a 18 c8 99 20 22  |edBox",2...... "|
000026a0  4f 53 5f 43 68 61 6e 67  65 64 42 6f 78 22 2c 31  |OS_ChangedBox",1|
000026b0  0d 0c 94 38 f4 20 47 43  4f 4c 33 2c 36 33 3a 4c  |...8. GCOL3,63:L|
000026c0  49 4e 45 20 33 30 30 2c  33 30 30 2c 33 32 30 2c  |INE 300,300,320,|
000026d0  33 32 30 3a 4c 49 4e 45  20 33 30 30 2c 33 30 30  |320:LINE 300,300|
000026e0  2c 33 32 30 2c 33 32 30  0d 0c 9e 25 ef 32 33 2c  |,320,320...%.23,|
000026f0  36 3a e3 4c 25 3d 31 20  b8 20 35 3a ef 20 50 41  |6:.L%=1 . 5:. PA|
00002700  54 25 28 4c 25 29 3a ed  3a ef 20 30 7c 0d 0c a8  |T%(L%):.:. 0|...|
00002710  15 c8 99 36 2c 31 36 33  2c 32 34 32 2c 50 41 4c  |...6,163,242,PAL|
00002720  45 25 0d 0c b2 05 e1 0d  0c c6 3c dd f2 69 6e 70  |E%........<..inp|
00002730  69 63 52 3a c8 99 20 22  4f 53 5f 53 70 72 69 74  |icR:.. "OS_Sprit|
00002740  65 4f 70 22 2c 33 31 36  2c 50 49 43 25 2c 22 50  |eOp",316,PIC%,"P|
00002750  49 43 22 20 b8 20 42 31  2c 42 32 2c 42 33 2c 42  |IC" . B1,B2,B3,B|
00002760  34 3a e1 0d 0c da 40 dd  f2 69 6e 62 61 63 6b 75  |4:....@..inbacku|
00002770  70 3a c8 99 20 22 4f 53  5f 53 70 72 69 74 65 4f  |p:.. "OS_SpriteO|
00002780  70 22 2c 33 31 36 2c 53  50 42 55 46 25 2c 22 50  |p",316,SPBUF%,"P|
00002790  49 43 22 20 b8 20 42 31  2c 42 32 2c 42 33 2c 42  |IC" . B1,B2,B3,B|
000027a0  34 3a e1 0d 0c ee 46 dd  f2 69 6e 73 70 72 69 74  |4:....F..insprit|
000027b0  65 28 6d 61 25 2c 73 61  25 2c 73 6e 24 29 3a c8  |e(ma%,sa%,sn$):.|
000027c0  99 20 26 32 45 2c 33 31  36 2b 6d 61 25 2c 73 61  |. &2E,316+ma%,sa|
000027d0  25 2c 73 6e 24 20 b8 20  49 53 31 2c 49 53 32 2c  |%,sn$ . IS1,IS2,|
000027e0  49 53 33 2c 49 53 34 3a  e1 0d 0d 02 28 dd f2 6f  |IS3,IS4:....(..o|
000027f0  75 74 73 70 72 69 74 65  3a c8 99 20 26 32 45 2c  |utsprite:.. &2E,|
00002800  49 53 31 2c 49 53 32 2c  49 53 33 2c 49 53 34 3a  |IS1,IS2,IS3,IS4:|
00002810  e1 0d 0d 16 2e dd f2 6f  75 74 62 61 63 6b 75 70  |.......outbackup|
00002820  3a c8 99 20 22 4f 53 5f  53 70 72 69 74 65 4f 70  |:.. "OS_SpriteOp|
00002830  22 2c 42 31 2c 42 32 2c  42 33 2c 42 34 3a e1 0d  |",B1,B2,B3,B4:..|
00002840  0d 2a 18 dd f2 6f 75 74  70 69 63 3a e7 20 ac 20  |.*...outpic:. . |
00002850  49 50 25 20 8c 20 e1 0d  0d 34 09 49 50 25 3d a3  |IP% . ...4.IP%=.|
00002860  0d 0d 3e 21 c8 99 20 22  4f 53 5f 43 68 61 6e 67  |..>!.. "OS_Chang|
00002870  65 64 42 6f 78 22 2c 2d  31 20 b8 20 2c 43 42 41  |edBox",-1 . ,CBA|
00002880  25 0d 0d 48 87 e7 20 b4  28 43 42 41 25 21 34 29  |%..H.. .(CBA%!4)|
00002890  3d 2d 31 20 84 20 b4 28  43 42 41 25 21 38 29 3d  |=-1 . .(CBA%!8)=|
000028a0  2d 31 20 84 20 b4 28 43  42 41 25 21 31 32 29 3d  |-1 . .(CBA%!12)=|
000028b0  2d 31 20 84 20 b4 28 43  42 41 25 21 31 36 29 3d  |-1 . .(CBA%!16)=|
000028c0  2d 31 20 8c 20 56 41 43  42 25 3d a3 3a c8 99 20  |-1 . VACB%=.:.. |
000028d0  22 4f 53 5f 43 68 61 6e  67 65 64 42 6f 78 22 3a  |"OS_ChangedBox":|
000028e0  c8 99 20 22 4f 53 5f 53  70 72 69 74 65 4f 70 22  |.. "OS_SpriteOp"|
000028f0  2c 56 31 2c 56 32 2c 56  33 2c 56 34 3a e1 20 8b  |,V1,V2,V3,V4:. .|
00002900  20 56 41 43 42 25 3d b9  0d 0d 52 2a 43 42 4d 49  | VACB%=...R*CBMI|
00002910  4e 58 25 3d 43 42 41 25  21 34 3a 43 42 4d 49 4e  |NX%=CBA%!4:CBMIN|
00002920  58 25 3d 43 42 4d 49 4e  58 25 2a 5a 4f 4f 4d 25  |X%=CBMINX%*ZOOM%|
00002930  2a 32 0d 0d 5c 34 43 42  4d 49 4e 59 25 3d 43 42  |*2..\4CBMINY%=CB|
00002940  41 25 21 38 3a 43 42 4d  49 4e 59 25 3d 28 2d 31  |A%!8:CBMINY%=(-1|
00002950  30 32 34 2b 28 43 42 4d  49 4e 59 25 2a 34 29 29  |024+(CBMINY%*4))|
00002960  2a 5a 4f 4f 4d 25 0d 0d  66 2b 43 42 4d 41 58 58  |*ZOOM%..f+CBMAXX|
00002970  25 3d 43 42 41 25 21 31  32 3a 43 42 4d 41 58 58  |%=CBA%!12:CBMAXX|
00002980  25 3d 43 42 4d 41 58 58  25 2a 5a 4f 4f 4d 25 2a  |%=CBMAXX%*ZOOM%*|
00002990  32 0d 0d 70 35 43 42 4d  41 58 59 25 3d 43 42 41  |2..p5CBMAXY%=CBA|
000029a0  25 21 31 36 3a 43 42 4d  41 58 59 25 3d 28 2d 31  |%!16:CBMAXY%=(-1|
000029b0  30 32 34 2b 28 43 42 4d  41 58 59 25 2a 34 29 29  |024+(CBMAXY%*4))|
000029c0  2a 5a 4f 4f 4d 25 0d 0d  7a 14 43 42 4d 41 58 58  |*ZOOM%..z.CBMAXX|
000029d0  25 2b 3d 34 2a 5a 4f 4f  4d 25 0d 0d 84 14 43 42  |%+=4*ZOOM%....CB|
000029e0  4d 41 58 59 25 2b 3d 34  2a 5a 4f 4f 4d 25 0d 0d  |MAXY%+=4*ZOOM%..|
000029f0  8e 16 c8 99 20 22 4f 53  5f 43 68 61 6e 67 65 64  |.... "OS_Changed|
00002a00  42 6f 78 22 0d 0d 98 20  c8 99 20 22 4f 53 5f 53  |Box"... .. "OS_S|
00002a10  70 72 69 74 65 4f 70 22  2c 56 31 2c 56 32 2c 56  |priteOp",V1,V2,V|
00002a20  33 2c 56 34 0d 0d a2 05  e1 0d 0d b6 10 dd f2 72  |3,V4...........r|
00002a30  65 64 72 61 77 6d 61 69  6e 0d 0d c0 10 e7 20 46  |edrawmain..... F|
00002a40  55 53 45 25 3d 33 32 20  8c 0d 0d ca 1b e7 20 46  |USE%=32 ...... F|
00002a50  4f 4e 54 25 3c 3e 30 20  80 20 45 46 4d 25 3c 3e  |ONT%<>0 . EFM%<>|
00002a60  2d 31 20 8c 0d 0d d4 6e  f4 20 49 46 20 4d 4f 44  |-1 ....n. IF MOD|
00002a70  45 3c 3e 45 46 4d 25 20  54 48 45 4e 20 50 52 4f  |E<>EFM% THEN PRO|
00002a80  43 69 6e 70 69 63 3a 53  59 53 20 22 43 6f 6c 6f  |Cinpic:SYS "Colo|
00002a90  75 72 54 72 61 6e 73 5f  53 65 74 46 6f 6e 74 43  |urTrans_SetFontC|
00002aa0  6f 6c 6f 75 72 73 22 2c  46 48 41 4e 44 25 2c 42  |olours",FHAND%,B|
00002ab0  50 41 4c 25 2c 46 50 41  4c 25 2c 31 34 3a 50 52  |PAL%,FPAL%,14:PR|
00002ac0  4f 43 6f 75 74 70 69 63  3a 45 46 4d 25 3d 4d 4f  |OCoutpic:EFM%=MO|
00002ad0  44 45 0d 0d de 05 cd 0d  0d e8 05 cd 0d 0d f2 27  |DE.............'|
00002ae0  c8 99 20 22 57 69 6d 70  5f 52 65 64 72 61 77 57  |.. "Wimp_RedrawW|
00002af0  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 20 b8 20 46  |indow",,BLK% . F|
00002b00  49 4e 25 0d 0d fc 18 f2  67 65 74 72 64 6f 72 28  |IN%.....getrdor(|
00002b10  31 30 32 34 2a 5a 4f 4f  4d 25 29 0d 0e 06 38 c8  |1024*ZOOM%)...8.|
00002b20  95 20 46 49 4e 25 3a f2  70 6c 6f 74 70 69 63 3a  |. FIN%:.plotpic:|
00002b30  c8 99 20 22 57 69 6d 70  5f 47 65 74 52 65 63 74  |.. "Wimp_GetRect|
00002b40  61 6e 67 6c 65 22 2c 2c  42 4c 4b 25 20 b8 20 46  |angle",,BLK% . F|
00002b50  49 4e 25 0d 0e 10 05 ce  0d 0e 1a 05 e1 0d 0e 2e  |IN%.............|
00002b60  0d dd f2 70 6c 6f 74 70  69 63 0d 0e 38 48 e7 20  |...plotpic..8H. |
00002b70  eb 3d 31 35 20 80 20 5a  4f 4f 4d 25 3d 31 20 8c  |.=15 . ZOOM%=1 .|
00002b80  20 c8 99 20 22 4f 53 5f  53 70 72 69 74 65 4f 70  | .. "OS_SpriteOp|
00002b90  22 2c 32 39 30 2c 50 49  43 25 2c 22 50 49 43 22  |",290,PIC%,"PIC"|
00002ba0  2c 57 4f 58 25 2c 57 4f  59 25 3a f2 67 72 69 64  |,WOX%,WOY%:.grid|
00002bb0  3a e1 0d 0e 42 39 e7 20  eb 3c 3e 45 53 4d 25 20  |:...B9. .<>ESM% |
00002bc0  8c 20 45 53 4d 25 3d eb  3a 45 50 4d 25 3d eb 3a  |. ESM%=.:EPM%=.:|
00002bd0  c8 99 26 34 30 37 34 30  2c 31 35 2c 30 2c 2d 31  |..&40740,15,0,-1|
00002be0  2c 2d 31 2c 50 49 58 54  41 42 25 0d 0e 4c 15 c8  |,-1,PIXTAB%..L..|
00002bf0  99 26 33 35 2c 2d 31 2c  35 20 b8 20 2c 2c 45 25  |.&35,-1,5 . ,,E%|
00002c00  0d 0e 56 29 53 58 25 3d  32 5e 28 32 2d 45 25 29  |..V)SX%=2^(2-E%)|
00002c10  3a 53 43 41 4c 45 25 21  34 3d 53 58 25 3a 53 43  |:SCALE%!4=SX%:SC|
00002c20  41 4c 45 25 21 31 32 3d  31 0d 0e 60 15 c8 99 26  |ALE%!12=1..`...&|
00002c30  33 35 2c 2d 31 2c 34 20  b8 20 2c 2c 45 25 0d 0e  |35,-1,4 . ,,E%..|
00002c40  6a 56 e7 20 45 25 3c 31  20 8c 20 53 58 25 3d 32  |jV. E%<1 . SX%=2|
00002c50  5e 28 31 2d 45 25 29 3a  21 53 43 41 4c 45 25 3d  |^(1-E%):!SCALE%=|
00002c60  53 58 25 3a 53 43 41 4c  45 25 21 38 3d 31 20 8b  |SX%:SCALE%!8=1 .|
00002c70  20 53 58 25 3d 32 5e 28  45 25 2d 31 29 3a 21 53  | SX%=2^(E%-1):!S|
00002c80  43 41 4c 45 25 3d 31 3a  53 43 41 4c 45 25 21 38  |CALE%=1:SCALE%!8|
00002c90  3d 53 58 25 0d 0e 74 35  21 53 43 41 4c 45 25 3d  |=SX%..t5!SCALE%=|
00002ca0  28 21 53 43 41 4c 45 25  29 2a 5a 4f 4f 4d 25 3a  |(!SCALE%)*ZOOM%:|
00002cb0  53 43 41 4c 45 25 21 34  3d 28 53 43 41 4c 45 25  |SCALE%!4=(SCALE%|
00002cc0  21 34 29 2a 5a 4f 4f 4d  25 0d 0e 7e 2a e7 20 eb  |!4)*ZOOM%..~*. .|
00002cd0  3d 31 35 20 8c 20 54 50  49 58 54 41 42 25 3d 30  |=15 . TPIXTAB%=0|
00002ce0  20 8b 20 54 50 49 58 54  41 42 25 3d 50 49 58 54  | . TPIXTAB%=PIXT|
00002cf0  41 42 25 0d 0e 88 47 c8  99 20 22 4f 53 5f 53 70  |AB%...G.. "OS_Sp|
00002d00  72 69 74 65 4f 70 22 2c  33 30 38 2c 50 49 43 25  |riteOp",308,PIC%|
00002d10  2c 22 50 49 43 22 2c 57  4f 58 25 2c 57 4f 59 25  |,"PIC",WOX%,WOY%|
00002d20  2c 30 2c 53 43 41 4c 45  25 2c 54 50 49 58 54 41  |,0,SCALE%,TPIXTA|
00002d30  42 25 3a f2 67 72 69 64  3a e1 0d 0e 9c 0a dd f2  |B%:.grid:.......|
00002d40  67 72 69 64 0d 0e a6 3e  e7 20 47 52 43 4f 25 3d  |grid...>. GRCO%=|
00002d50  2d 31 20 84 20 28 32 2a  47 52 49 57 49 25 2a 5a  |-1 . (2*GRIWI%*Z|
00002d60  4f 4f 4d 25 29 3c 31 36  20 84 20 28 34 2a 47 52  |OOM%)<16 . (4*GR|
00002d70  49 48 45 25 2a 5a 4f 4f  4d 25 29 3c 31 36 20 8c  |IHE%*ZOOM%)<16 .|
00002d80  20 e1 0d 0e b0 0c f2 67  72 69 64 63 6f 6c 0d 0e  | ......gridcol..|
00002d90  ba 0b ea 20 58 25 2c 59  25 0d 0e c4 3f 58 25 3d  |... X%,Y%...?X%=|
00002da0  28 28 28 42 4c 4b 25 21  32 38 29 2d 57 4f 58 25  |(((BLK%!28)-WOX%|
00002db0  29 20 81 20 28 5a 4f 4f  4d 25 2a 28 32 2a 47 52  |) . (ZOOM%*(2*GR|
00002dc0  49 57 49 25 29 29 29 2a  28 32 2a 47 52 49 57 49  |IWI%)))*(2*GRIWI|
00002dd0  25 2a 5a 4f 4f 4d 25 29  0d 0e ce 3f 59 25 3d 28  |%*ZOOM%)...?Y%=(|
00002de0  28 28 42 4c 4b 25 21 33  32 29 2d 57 4f 59 25 29  |((BLK%!32)-WOY%)|
00002df0  20 81 20 28 5a 4f 4f 4d  25 2a 28 34 2a 47 52 49  | . (ZOOM%*(4*GRI|
00002e00  48 45 25 29 29 29 2a 28  34 2a 47 52 49 48 45 25  |HE%)))*(4*GRIHE%|
00002e10  2a 5a 4f 4f 4d 25 29 0d  0e d8 1f 58 4f 46 25 3d  |*ZOOM%)....XOF%=|
00002e20  28 47 52 49 57 49 25 2d  47 52 42 58 25 29 2a 32  |(GRIWI%-GRBX%)*2|
00002e30  2a 5a 4f 4f 4d 25 0d 0e  e2 1f 59 4f 46 25 3d 28  |*ZOOM%....YOF%=(|
00002e40  47 52 49 48 45 25 2d 47  52 42 59 25 29 2a 34 2a  |GRIHE%-GRBY%)*4*|
00002e50  5a 4f 4f 4d 25 0d 0e ec  11 58 25 2b 3d 57 4f 58  |ZOOM%....X%+=WOX|
00002e60  25 2d 58 4f 46 25 0d 0e  f6 11 59 25 2b 3d 57 4f  |%-XOF%....Y%+=WO|
00002e70  59 25 2d 59 4f 46 25 0d  0f 00 45 f5 3a 86 20 58  |Y%-YOF%...E.:. X|
00002e80  25 2c 28 42 4c 4b 25 21  33 32 29 2c 58 25 2c 28  |%,(BLK%!32),X%,(|
00002e90  42 4c 4b 25 21 34 30 29  3a 58 25 2b 3d 28 32 2a  |BLK%!40):X%+=(2*|
00002ea0  47 52 49 57 49 25 2a 5a  4f 4f 4d 25 29 3a fd 20  |GRIWI%*ZOOM%):. |
00002eb0  58 25 3e 28 42 4c 4b 25  21 33 36 29 0d 0f 0a 45  |X%>(BLK%!36)...E|
00002ec0  f5 3a 86 20 28 42 4c 4b  25 21 32 38 29 2c 59 25  |.:. (BLK%!28),Y%|
00002ed0  2c 28 42 4c 4b 25 21 33  36 29 2c 59 25 3a 59 25  |,(BLK%!36),Y%:Y%|
00002ee0  2b 3d 28 34 2a 47 52 49  48 45 25 2a 5a 4f 4f 4d  |+=(4*GRIHE%*ZOOM|
00002ef0  25 29 3a fd 20 59 25 3e  28 42 4c 4b 25 21 34 30  |%):. Y%>(BLK%!40|
00002f00  29 0d 0f 14 05 e1 0d 0f  28 13 dd f2 70 6c 6f 74  |).......(...plot|
00002f10  70 61 6c 28 50 54 55 25  29 0d 0f 32 12 f2 63 6f  |pal(PTU%)..2..co|
00002f20  6c 28 36 33 2c 31 39 32  2c 30 29 0d 0f 3c 14 e7  |l(63,192,0)..<..|
00002f30  20 eb 3c 3e 31 35 20 8c  20 e5 20 8d 44 5a 4f 0d  | .<>15 . . .DZO.|
00002f40  0f 46 74 c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |.Ft.. "OS_Sprite|
00002f50  4f 70 22 2c 32 39 30 2c  50 54 55 25 2c 22 50 61  |Op",290,PTU%,"Pa|
00002f60  6c 65 74 74 65 22 2c 57  4f 58 25 2c 57 4f 59 25  |lette",WOX%,WOY%|
00002f70  3a e7 20 50 54 55 25 3d  50 41 4c 25 20 8c 20 c8  |:. PTU%=PAL% . .|
00002f80  93 20 57 4f 58 25 2b 28  28 43 4f 4c 25 20 83 20  |. WOX%+((COL% . |
00002f90  33 32 29 2a 32 34 29 2c  57 4f 59 25 2b 28 28 43  |32)*24),WOY%+((C|
00002fa0  4f 4c 25 20 81 20 33 32  29 2a 32 38 29 2c 32 34  |OL% . 32)*28),24|
00002fb0  2c 32 38 0d 0f 50 05 e1  0d 0f 5a 39 e7 20 eb 3c  |,28..P....Z9. .<|
00002fc0  3e 45 50 4d 25 20 8c 20  45 53 4d 25 3d eb 3a 45  |>EPM% . ESM%=.:E|
00002fd0  50 4d 25 3d eb 3a c8 99  26 34 30 37 34 30 2c 31  |PM%=.:..&40740,1|
00002fe0  35 2c 30 2c 2d 31 2c 2d  31 2c 50 49 58 54 41 42  |5,0,-1,-1,PIXTAB|
00002ff0  25 0d 0f 64 15 c8 99 26  33 35 2c 2d 31 2c 35 20  |%..d...&35,-1,5 |
00003000  b8 20 2c 2c 45 25 0d 0f  6e 29 53 58 25 3d 32 5e  |. ,,E%..n)SX%=2^|
00003010  28 32 2d 45 25 29 3a 53  43 41 4c 45 25 21 34 3d  |(2-E%):SCALE%!4=|
00003020  53 58 25 3a 53 43 41 4c  45 25 21 31 32 3d 31 0d  |SX%:SCALE%!12=1.|
00003030  0f 78 15 c8 99 26 33 35  2c 2d 31 2c 34 20 b8 20  |.x...&35,-1,4 . |
00003040  2c 2c 45 25 0d 0f 82 56  e7 20 45 25 3c 31 20 8c  |,,E%...V. E%<1 .|
00003050  20 53 58 25 3d 32 5e 28  31 2d 45 25 29 3a 21 53  | SX%=2^(1-E%):!S|
00003060  43 41 4c 45 25 3d 53 58  25 3a 53 43 41 4c 45 25  |CALE%=SX%:SCALE%|
00003070  21 38 3d 31 20 8b 20 53  58 25 3d 32 5e 28 45 25  |!8=1 . SX%=2^(E%|
00003080  2d 31 29 3a 21 53 43 41  4c 45 25 3d 31 3a 53 43  |-1):!SCALE%=1:SC|
00003090  41 4c 45 25 21 38 3d 53  58 25 0d 0f 8c 42 c8 99  |ALE%!8=SX%...B..|
000030a0  20 22 4f 53 5f 53 70 72  69 74 65 4f 70 22 2c 33  | "OS_SpriteOp",3|
000030b0  30 38 2c 50 54 55 25 2c  22 50 61 6c 65 74 74 65  |08,PTU%,"Palette|
000030c0  22 2c 57 4f 58 25 2c 57  4f 59 25 2c 30 2c 53 43  |",WOX%,WOY%,0,SC|
000030d0  41 4c 45 25 2c 50 49 58  54 41 42 25 0d 0f 96 46  |ALE%,PIXTAB%...F|
000030e0  e7 20 50 54 55 25 3d 50  41 4c 25 20 8c 20 c8 93  |. PTU%=PAL% . ..|
000030f0  20 57 4f 58 25 2b 28 28  43 4f 4c 25 20 83 20 33  | WOX%+((COL% . 3|
00003100  32 29 2a 32 34 29 2c 57  4f 59 25 2b 28 28 43 4f  |2)*24),WOY%+((CO|
00003110  4c 25 20 81 20 33 32 29  2a 32 38 29 2c 32 34 2c  |L% . 32)*28),24,|
00003120  32 38 0d 0f a0 05 e1 0d  0f b4 3f dd f2 69 6e 70  |28........?..inp|
00003130  61 6c 3a c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |al:.. "OS_Sprite|
00003140  4f 70 22 2c 33 31 36 2c  50 41 4c 25 2c 22 50 61  |Op",316,PAL%,"Pa|
00003150  6c 65 74 74 65 22 20 b8  20 56 31 2c 56 32 2c 56  |lette" . V1,V2,V|
00003160  33 2c 56 34 3a e1 0d 0f  c8 2b dd f2 6f 75 74 70  |3,V4:....+..outp|
00003170  61 6c 3a c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |al:.. "OS_Sprite|
00003180  4f 70 22 2c 56 31 2c 56  32 2c 56 33 2c 56 34 3a  |Op",V1,V2,V3,V4:|
00003190  e1 0d 0f dc 10 dd f2 74  72 61 73 70 28 54 43 25  |.......trasp(TC%|
000031a0  29 0d 0f e6 1f f2 69 6e  70 61 6c 3a f2 74 72 61  |).....inpal:.tra|
000031b0  73 70 32 28 54 43 25 29  3a f2 6f 75 74 70 61 6c  |sp2(TC%):.outpal|
000031c0  0d 0f f0 05 e1 0d 10 04  11 dd f2 74 72 61 73 70  |...........trasp|
000031d0  32 28 54 43 25 29 0d 10  0e 1f 54 52 41 53 50 25  |2(TC%)....TRASP%|
000031e0  3f 54 43 25 3d 28 54 52  41 53 50 25 3f 54 43 25  |?TC%=(TRASP%?TC%|
000031f0  29 20 82 20 31 0d 10 18  2b 54 58 25 3d 28 28 54  |) . 1...+TX%=((T|
00003200  43 25 20 83 20 33 32 29  2a 32 34 29 3a 54 59 25  |C% . 32)*24):TY%|
00003210  3d 28 28 54 43 25 20 81  20 33 32 29 2a 32 38 29  |=((TC% . 32)*28)|
00003220  0d 10 22 83 f4 20 49 46  20 28 54 52 41 53 50 25  |..".. IF (TRASP%|
00003230  3f 54 43 25 29 3d 30 20  54 48 45 4e 20 47 43 4f  |?TC%)=0 THEN GCO|
00003240  4c 30 2c 50 41 4c 54 41  42 25 3f 28 54 43 25 2a  |L0,PALTAB%?(TC%*|
00003250  32 29 20 54 49 4e 54 20  50 41 4c 54 41 42 25 3f  |2) TINT PALTAB%?|
00003260  28 28 54 43 25 2a 32 29  2b 31 29 20 45 4c 53 45  |((TC%*2)+1) ELSE|
00003270  20 50 52 4f 43 61 6e 74  69 63 6f 6c 28 50 41 4c  | PROCanticol(PAL|
00003280  54 41 42 25 3f 28 54 43  25 2a 32 29 2c 50 41 4c  |TAB%?(TC%*2),PAL|
00003290  54 41 42 25 3f 28 28 54  43 25 2a 32 29 2b 31 29  |TAB%?((TC%*2)+1)|
000032a0  2c 30 29 0d 10 2c 71 e7  20 28 54 52 41 53 50 25  |,0)..,q. (TRASP%|
000032b0  3f 54 43 25 29 3d 30 20  8c 20 e6 30 2c 50 41 4c  |?TC%)=0 . .0,PAL|
000032c0  54 41 42 25 3f 28 54 43  25 2a 32 29 20 c8 9c 20  |TAB%?(TC%*2) .. |
000032d0  50 41 4c 54 41 42 25 3f  28 28 54 43 25 2a 32 29  |PALTAB%?((TC%*2)|
000032e0  2b 31 29 20 8b 20 e6 30  2c 36 33 2d 28 50 41 4c  |+1) . .0,63-(PAL|
000032f0  54 41 42 25 3f 28 54 43  25 2a 32 29 29 20 c8 9c  |TAB%?(TC%*2)) ..|
00003300  20 50 41 4c 54 41 42 25  3f 28 28 54 43 25 2a 32  | PALTAB%?((TC%*2|
00003310  29 2b 31 29 0d 10 36 3d  86 20 54 58 25 2b 36 2c  |)+1)..6=. TX%+6,|
00003320  54 59 25 2b 32 30 2c 54  58 25 2b 31 38 2c 54 59  |TY%+20,TX%+18,TY|
00003330  25 2b 32 30 3a 86 20 54  58 25 2b 31 32 2c 54 59  |%+20:. TX%+12,TY|
00003340  25 2b 38 2c 54 58 25 2b  31 32 2c 54 59 25 2b 32  |%+8,TX%+12,TY%+2|
00003350  30 0d 10 40 05 e1 0d 10  54 0f dd f2 72 65 64 72  |0..@....T...redr|
00003360  61 77 70 61 6c 0d 10 5e  27 c8 99 20 22 57 69 6d  |awpal..^'.. "Wim|
00003370  70 5f 52 65 64 72 61 77  57 69 6e 64 6f 77 22 2c  |p_RedrawWindow",|
00003380  2c 42 4c 4b 25 20 b8 20  46 49 4e 25 0d 10 68 11  |,BLK% . FIN%..h.|
00003390  f2 67 65 74 72 64 6f 72  28 32 32 38 29 0d 10 72  |.getrdor(228)..r|
000033a0  3e c8 95 20 46 49 4e 25  3a f2 70 6c 6f 74 70 61  |>.. FIN%:.plotpa|
000033b0  6c 28 50 41 4c 25 29 3a  c8 99 20 22 57 69 6d 70  |l(PAL%):.. "Wimp|
000033c0  5f 47 65 74 52 65 63 74  61 6e 67 6c 65 22 2c 2c  |_GetRectangle",,|
000033d0  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 10 7c 05 ce  |BLK% . FIN%..|..|
000033e0  0d 10 86 05 e1 0d 10 9a  11 dd f2 72 65 64 72 61  |...........redra|
000033f0  77 74 62 61 63 6b 0d 10  a4 27 c8 99 20 22 57 69  |wtback...'.. "Wi|
00003400  6d 70 5f 52 65 64 72 61  77 57 69 6e 64 6f 77 22  |mp_RedrawWindow"|
00003410  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 10 ae  |,,BLK% . FIN%...|
00003420  11 f2 67 65 74 72 64 6f  72 28 32 32 38 29 0d 10  |..getrdor(228)..|
00003430  b8 1b c8 95 20 46 49 4e  25 3a f2 70 6c 6f 74 70  |.... FIN%:.plotp|
00003440  61 6c 28 4f 50 41 4c 25  29 0d 10 c2 4b f2 63 6f  |al(OPAL%)...K.co|
00003450  6c 28 36 33 2c 31 39 32  2c 30 29 3a c8 93 20 57  |l(63,192,0):.. W|
00003460  4f 58 25 2b 28 28 46 4f  4e 54 42 25 20 83 20 33  |OX%+((FONTB% . 3|
00003470  32 29 2a 32 34 29 2c 57  4f 59 25 2b 28 28 46 4f  |2)*24),WOY%+((FO|
00003480  4e 54 42 25 20 81 20 33  32 29 2a 32 38 29 2c 32  |NTB% . 32)*28),2|
00003490  34 2c 32 38 0d 10 cc 27  c8 99 20 22 57 69 6d 70  |4,28...'.. "Wimp|
000034a0  5f 47 65 74 52 65 63 74  61 6e 67 6c 65 22 2c 2c  |_GetRectangle",,|
000034b0  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 10 d6 05 ce  |BLK% . FIN%.....|
000034c0  0d 10 e0 05 e1 0d 10 f4  12 dd f2 72 65 64 72 61  |...........redra|
000034d0  77 63 6f 6c 72 65 70 0d  10 fe 27 c8 99 20 22 57  |wcolrep...'.. "W|
000034e0  69 6d 70 5f 52 65 64 72  61 77 57 69 6e 64 6f 77  |imp_RedrawWindow|
000034f0  22 2c 2c 42 4c 4b 25 20  b8 20 46 49 4e 25 0d 11  |",,BLK% . FIN%..|
00003500  08 11 f2 67 65 74 72 64  6f 72 28 35 35 36 29 0d  |...getrdor(556).|
00003510  11 12 5e c8 95 20 46 49  4e 25 3a 57 4f 59 25 2b  |..^.. FIN%:WOY%+|
00003520  3d 32 39 30 3a f2 70 6c  6f 74 70 61 6c 28 53 50  |=290:.plotpal(SP|
00003530  42 55 46 25 29 3a f2 63  6f 6c 28 30 2c 30 2c 30  |BUF%):.col(0,0,0|
00003540  29 3a 86 20 57 4f 58 25  2c 57 4f 59 25 2b 32 32  |):. WOX%,WOY%+22|
00003550  34 2c 57 4f 58 25 2b 37  37 30 2c 57 4f 59 25 2b  |4,WOX%+770,WOY%+|
00003560  32 32 34 3a 57 4f 59 25  2d 3d 32 39 30 0d 11 1c  |224:WOY%-=290...|
00003570  41 f2 70 6c 6f 74 70 61  6c 28 4f 50 41 4c 25 29  |A.plotpal(OPAL%)|
00003580  3a f2 63 6f 6c 28 30 2c  30 2c 30 29 3a 86 20 57  |:.col(0,0,0):. W|
00003590  4f 58 25 2c 57 4f 59 25  2b 32 32 34 2c 57 4f 58  |OX%,WOY%+224,WOX|
000035a0  25 2b 37 37 30 2c 57 4f  59 25 2b 32 32 34 0d 11  |%+770,WOY%+224..|
000035b0  26 4d f2 63 6f 6c 28 36  33 2c 31 39 32 2c 30 29  |&M.col(63,192,0)|
000035c0  3a c8 93 20 57 4f 58 25  2b 28 28 53 52 45 50 25  |:.. WOX%+((SREP%|
000035d0  20 83 20 33 32 29 2a 32  34 29 2c 57 4f 59 25 2b  | . 32)*24),WOY%+|
000035e0  32 39 30 2b 28 28 53 52  45 50 25 20 81 20 33 32  |290+((SREP% . 32|
000035f0  29 2a 32 38 29 2c 32 34  2c 32 38 0d 11 30 27 c8  |)*28),24,28..0'.|
00003600  99 20 22 57 69 6d 70 5f  47 65 74 52 65 63 74 61  |. "Wimp_GetRecta|
00003610  6e 67 6c 65 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ngle",,BLK% . FI|
00003620  4e 25 0d 11 3a 05 ce 0d  11 44 05 e1 0d 11 58 15  |N%..:....D....X.|
00003630  dd f2 66 6f 72 63 65 64  72 61 77 63 6f 6c 72 65  |..forcedrawcolre|
00003640  70 0d 11 62 13 21 42 4c  4b 25 3d 48 41 4e 44 25  |p..b.!BLK%=HAND%|
00003650  28 31 38 29 0d 11 6c 0c  42 4c 4b 25 21 34 3d 30  |(18)..l.BLK%!4=0|
00003660  0d 11 76 0f 42 4c 4b 25  21 38 3d 2d 35 35 36 0d  |..v.BLK%!8=-556.|
00003670  11 80 0f 42 4c 4b 25 21  31 32 3d 37 37 30 0d 11  |...BLK%!12=770..|
00003680  8a 0d 42 4c 4b 25 21 31  36 3d 30 0d 11 94 27 c8  |..BLK%!16=0...'.|
00003690  99 20 22 57 69 6d 70 5f  55 70 64 61 74 65 57 69  |. "Wimp_UpdateWi|
000036a0  6e 64 6f 77 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ndow",,BLK% . FI|
000036b0  4e 25 0d 11 9e 11 f2 67  65 74 72 64 6f 72 28 35  |N%.....getrdor(5|
000036c0  35 36 29 0d 11 a8 0b c8  95 20 46 49 4e 25 0d 11  |56)...... FIN%..|
000036d0  b2 56 57 4f 59 25 2b 3d  32 39 30 3a f2 70 6c 6f  |.VWOY%+=290:.plo|
000036e0  74 70 61 6c 28 53 50 42  55 46 25 29 3a f2 63 6f  |tpal(SPBUF%):.co|
000036f0  6c 28 30 2c 30 2c 30 29  3a 86 20 57 4f 58 25 2c  |l(0,0,0):. WOX%,|
00003700  57 4f 59 25 2b 32 32 34  2c 57 4f 58 25 2b 37 37  |WOY%+224,WOX%+77|
00003710  30 2c 57 4f 59 25 2b 32  32 34 3a 57 4f 59 25 2d  |0,WOY%+224:WOY%-|
00003720  3d 32 39 30 0d 11 bc 41  f2 70 6c 6f 74 70 61 6c  |=290...A.plotpal|
00003730  28 4f 50 41 4c 25 29 3a  f2 63 6f 6c 28 30 2c 30  |(OPAL%):.col(0,0|
00003740  2c 30 29 3a 86 20 57 4f  58 25 2c 57 4f 59 25 2b  |,0):. WOX%,WOY%+|
00003750  32 32 34 2c 57 4f 58 25  2b 37 37 30 2c 57 4f 59  |224,WOX%+770,WOY|
00003760  25 2b 32 32 34 0d 11 c6  4d f2 63 6f 6c 28 36 33  |%+224...M.col(63|
00003770  2c 31 39 32 2c 30 29 3a  c8 93 20 57 4f 58 25 2b  |,192,0):.. WOX%+|
00003780  28 28 53 52 45 50 25 20  83 20 33 32 29 2a 32 34  |((SREP% . 32)*24|
00003790  29 2c 57 4f 59 25 2b 32  39 30 2b 28 28 53 52 45  |),WOY%+290+((SRE|
000037a0  50 25 20 81 20 33 32 29  2a 32 38 29 2c 32 34 2c  |P% . 32)*28),24,|
000037b0  32 38 0d 11 d0 27 c8 99  20 22 57 69 6d 70 5f 47  |28...'.. "Wimp_G|
000037c0  65 74 52 65 63 74 61 6e  67 6c 65 22 2c 2c 42 4c  |etRectangle",,BL|
000037d0  4b 25 20 b8 20 46 49 4e  25 0d 11 da 05 ce 0d 11  |K% . FIN%.......|
000037e0  e4 05 e1 0d 11 f8 0a dd  a4 63 65 63 66 0d 12 02  |.........cecf...|
000037f0  17 e7 20 a4 68 69 67 68  28 31 31 2c 32 36 29 20  |.. .high(11,26) |
00003800  8c 20 3d 31 0d 12 0c 17  e7 20 a4 68 69 67 68 28  |. =1..... .high(|
00003810  31 31 2c 32 38 29 20 8c  20 3d 32 0d 12 16 17 e7  |11,28) . =2.....|
00003820  20 a4 68 69 67 68 28 31  31 2c 33 30 29 20 8c 20  | .high(11,30) . |
00003830  3d 33 0d 12 20 17 e7 20  a4 68 69 67 68 28 31 31  |=3.. .. .high(11|
00003840  2c 33 32 29 20 8c 20 3d  34 0d 12 2a 06 3d 30 0d  |,32) . =4..*.=0.|
00003850  12 3e 0f dd f2 72 65 64  72 61 77 70 61 74 0d 12  |.>...redrawpat..|
00003860  48 27 c8 99 20 22 57 69  6d 70 5f 52 65 64 72 61  |H'.. "Wimp_Redra|
00003870  77 57 69 6e 64 6f 77 22  2c 2c 42 4c 4b 25 20 b8  |wWindow",,BLK% .|
00003880  20 46 49 4e 25 0d 12 52  0d f2 67 65 74 70 61 74  | FIN%..R..getpat|
00003890  6f 72 0d 12 5c 49 c8 95  20 46 49 4e 25 3a f2 70  |or..\I.. FIN%:.p|
000038a0  6c 6f 74 70 61 6c 28 4f  50 41 4c 25 29 3a f2 63  |lotpal(OPAL%):.c|
000038b0  6f 6c 28 30 2c 30 2c 30  29 3a 86 20 57 4f 58 25  |ol(0,0,0):. WOX%|
000038c0  2c 57 4f 59 25 2b 32 32  34 2c 57 4f 58 25 2b 37  |,WOY%+224,WOX%+7|
000038d0  37 30 2c 57 4f 59 25 2b  32 32 34 0d 12 66 2d 43  |70,WOY%+224..f-C|
000038e0  45 43 46 25 3d a4 63 65  63 66 3a e3 4b 25 3d 30  |ECF%=.cecf:.K%=0|
000038f0  20 b8 20 37 3a 4c 25 3d  45 43 46 25 28 4b 25 2b  | . 7:L%=ECF%(K%+|
00003900  31 2c 43 45 43 46 25 29  0d 12 70 63 50 45 25 3d  |1,CECF%)..pcPE%=|
00003910  42 54 43 25 3f 4c 25 3a  f2 63 6f 6c 28 50 41 4c  |BTC%?L%:.col(PAL|
00003920  54 41 42 25 3f 28 50 45  25 2a 32 29 2c 50 41 4c  |TAB%?(PE%*2),PAL|
00003930  54 41 42 25 3f 28 28 50  45 25 2a 32 29 2b 31 29  |TAB%?((PE%*2)+1)|
00003940  2c 30 29 3a c8 93 20 c8  90 20 57 4f 58 25 2d 31  |,0):.. .. WOX%-1|
00003950  34 36 2c 28 57 4f 59 25  2b 32 37 36 29 2d 28 4b  |46,(WOY%+276)-(K|
00003960  25 2a 34 30 29 2c 33 38  2c 33 36 0d 12 7a 05 ed  |%*40),38,36..z..|
00003970  0d 12 84 27 c8 99 20 22  57 69 6d 70 5f 47 65 74  |...'.. "Wimp_Get|
00003980  52 65 63 74 61 6e 67 6c  65 22 2c 2c 42 4c 4b 25  |Rectangle",,BLK%|
00003990  20 b8 20 46 49 4e 25 0d  12 8e 05 ce 0d 12 98 05  | . FIN%.........|
000039a0  e1 0d 12 ac 0e dd a4 67  72 61 66 69 6c 6e 6f 0d  |.......grafilno.|
000039b0  12 b6 17 e7 20 a4 68 69  67 68 28 31 33 2c 39 35  |.... .high(13,95|
000039c0  29 20 8c 20 3d 30 0d 12  c0 17 e7 20 a4 68 69 67  |) . =0..... .hig|
000039d0  68 28 31 33 2c 39 39 29  20 8c 20 3d 31 0d 12 ca  |h(13,99) . =1...|
000039e0  18 e7 20 a4 68 69 67 68  28 31 33 2c 31 30 31 29  |.. .high(13,101)|
000039f0  20 8c 20 3d 32 0d 12 d4  18 e7 20 a4 68 69 67 68  | . =2..... .high|
00003a00  28 31 33 2c 31 30 33 29  20 8c 20 3d 33 0d 12 de  |(13,103) . =3...|
00003a10  17 e7 20 a4 68 69 67 68  28 31 33 2c 39 37 29 20  |.. .high(13,97) |
00003a20  8c 20 3d 34 0d 12 e8 07  3d 2d 31 0d 12 fc 10 dd  |. =4....=-1.....|
00003a30  f2 72 65 64 72 61 77 66  69 6c 6c 0d 13 06 27 c8  |.redrawfill...'.|
00003a40  99 20 22 57 69 6d 70 5f  52 65 64 72 61 77 57 69  |. "Wimp_RedrawWi|
00003a50  6e 64 6f 77 22 2c 2c 42  4c 4b 25 20 b8 20 46 49  |ndow",,BLK% . FI|
00003a60  4e 25 0d 13 10 11 f2 67  65 74 72 64 6f 72 28 34  |N%.....getrdor(4|
00003a70  38 34 29 0d 13 1a 71 c8  95 20 46 49 4e 25 3a 57  |84)...q.. FIN%:W|
00003a80  4f 59 25 2b 3d 32 33 36  3a 57 4f 58 25 2b 3d 34  |OY%+=236:WOX%+=4|
00003a90  32 32 3a f2 70 6c 6f 74  70 61 6c 28 4f 50 41 4c  |22:.plotpal(OPAL|
00003aa0  25 29 3a f2 63 6f 6c 28  30 2c 30 2c 30 29 3a 86  |%):.col(0,0,0):.|
00003ab0  20 57 4f 58 25 2c 57 4f  59 25 2b 32 32 34 2c 57  | WOX%,WOY%+224,W|
00003ac0  4f 58 25 2b 37 37 30 2c  57 4f 59 25 2b 32 32 34  |OX%+770,WOY%+224|
00003ad0  3a 57 4f 58 25 2d 3d 31  34 30 3a 57 4f 59 25 2d  |:WOX%-=140:WOY%-|
00003ae0  3d 31 34 30 0d 13 24 78  46 49 58 25 3d 57 4f 58  |=140..$xFIX%=WOX|
00003af0  25 2b 32 30 30 3a 47 52  46 49 4e 25 3d a4 67 72  |%+200:GRFIN%=.gr|
00003b00  61 66 69 6c 6e 6f 3a e3  4c 25 3d 30 20 b8 20 31  |afilno:.L%=0 . 1|
00003b10  35 3a e7 20 47 52 46 49  4e 25 3c 3e 2d 31 20 8c  |5:. GRFIN%<>-1 .|
00003b20  20 f2 63 6f 6c 28 47 52  46 49 25 28 4c 25 2c 30  | .col(GRFI%(L%,0|
00003b30  2c 47 52 46 49 4e 25 29  2c 47 52 46 49 25 28 4c  |,GRFIN%),GRFI%(L|
00003b40  25 2c 31 2c 47 52 46 49  4e 25 29 2c 30 29 20 8b  |%,1,GRFIN%),0) .|
00003b50  20 f2 63 6f 6c 28 30 2c  30 2c 30 29 0d 13 2e 27  | .col(0,0,0)...'|
00003b60  c8 93 20 c8 90 20 46 49  58 25 2c 57 4f 59 25 2d  |.. .. FIX%,WOY%-|
00003b70  32 38 2c 34 32 2c 33 32  3a 46 49 58 25 2b 3d 34  |28,42,32:FIX%+=4|
00003b80  34 3a ed 0d 13 38 3a 57  4f 58 25 2d 3d 32 38 32  |4:...8:WOX%-=282|
00003b90  3a 57 4f 59 25 2d 3d 39  36 3a c8 99 20 22 57 69  |:WOY%-=96:.. "Wi|
00003ba0  6d 70 5f 47 65 74 52 65  63 74 61 6e 67 6c 65 22  |mp_GetRectangle"|
00003bb0  2c 2c 42 4c 4b 25 20 b8  20 46 49 4e 25 0d 13 42  |,,BLK% . FIN%..B|
00003bc0  05 ce 0d 13 4c 05 e1 0d  13 60 13 dd f2 66 6f 72  |....L....`...for|
00003bd0  63 65 64 72 61 77 66 69  6c 6c 0d 13 6a 13 21 42  |cedrawfill..j.!B|
00003be0  4c 4b 25 3d 48 41 4e 44  25 28 31 33 29 0d 13 74  |LK%=HAND%(13)..t|
00003bf0  0c 42 4c 4b 25 21 34 3d  30 0d 13 7e 0f 42 4c 4b  |.BLK%!4=0..~.BLK|
00003c00  25 21 38 3d 2d 35 30 30  0d 13 88 10 42 4c 4b 25  |%!8=-500....BLK%|
00003c10  21 31 32 3d 31 32 30 30  0d 13 92 10 42 4c 4b 25  |!12=1200....BLK%|
00003c20  21 31 36 3d 2d 33 36 30  0d 13 9c 27 c8 99 20 22  |!16=-360...'.. "|
00003c30  57 69 6d 70 5f 55 70 64  61 74 65 57 69 6e 64 6f  |Wimp_UpdateWindo|
00003c40  77 22 2c 2c 42 4c 4b 25  20 b8 20 46 49 4e 25 0d  |w",,BLK% . FIN%.|
00003c50  13 a6 11 f2 67 65 74 72  64 6f 72 28 34 38 34 29  |....getrdor(484)|
00003c60  0d 13 b0 0b c8 95 20 46  49 4e 25 0d 13 ba 78 46  |...... FIN%...xF|
00003c70  49 58 25 3d 57 4f 58 25  2b 34 38 32 3a 47 52 46  |IX%=WOX%+482:GRF|
00003c80  49 4e 25 3d a4 67 72 61  66 69 6c 6e 6f 3a e3 4c  |IN%=.grafilno:.L|
00003c90  25 3d 30 20 b8 20 31 35  3a e7 20 47 52 46 49 4e  |%=0 . 15:. GRFIN|
00003ca0  25 3c 3e 2d 31 20 8c 20  f2 63 6f 6c 28 47 52 46  |%<>-1 . .col(GRF|
00003cb0  49 25 28 4c 25 2c 30 2c  47 52 46 49 4e 25 29 2c  |I%(L%,0,GRFIN%),|
00003cc0  47 52 46 49 25 28 4c 25  2c 31 2c 47 52 46 49 4e  |GRFI%(L%,1,GRFIN|
00003cd0  25 29 2c 30 29 20 8b 20  f2 63 6f 6c 28 30 2c 30  |%),0) . .col(0,0|
00003ce0  2c 30 29 0d 13 c4 27 c8  93 20 c8 90 20 46 49 58  |,0)...'.. .. FIX|
00003cf0  25 2c 57 4f 59 25 2b 36  38 2c 34 32 2c 33 32 3a  |%,WOY%+68,42,32:|
00003d00  46 49 58 25 2b 3d 34 34  3a ed 0d 13 ce 27 c8 99  |FIX%+=44:....'..|
00003d10  20 22 57 69 6d 70 5f 47  65 74 52 65 63 74 61 6e  | "Wimp_GetRectan|
00003d20  67 6c 65 22 2c 2c 42 4c  4b 25 20 b8 20 46 49 4e  |gle",,BLK% . FIN|
00003d30  25 0d 13 d8 05 ce 0d 13  e2 05 e1 0d 13 f6 12 dd  |%...............|
00003d40  f2 66 6f 72 63 65 64 72  61 77 70 61 74 0d 14 00  |.forcedrawpat...|
00003d50  13 21 42 4c 4b 25 3d 48  41 4e 44 25 28 31 31 29  |.!BLK%=HAND%(11)|
00003d60  0d 14 0a 0c 42 4c 4b 25  21 34 3d 30 0d 14 14 0f  |....BLK%!4=0....|
00003d70  42 4c 4b 25 21 38 3d 2d  33 35 36 0d 14 1e 0f 42  |BLK%!8=-356....B|
00003d80  4c 4b 25 21 31 32 3d 31  30 30 0d 14 28 0d 42 4c  |LK%!12=100..(.BL|
00003d90  4b 25 21 31 36 3d 30 0d  14 32 27 c8 99 20 22 57  |K%!16=0..2'.. "W|
00003da0  69 6d 70 5f 55 70 64 61  74 65 57 69 6e 64 6f 77  |imp_UpdateWindow|
00003db0  22 2c 2c 42 4c 4b 25 20  b8 20 46 49 4e 25 0d 14  |",,BLK% . FIN%..|
00003dc0  3c 0d f2 67 65 74 70 61  74 6f 72 0d 14 46 0b c8  |<..getpator..F..|
00003dd0  95 20 46 49 4e 25 0d 14  50 41 f2 70 6c 6f 74 70  |. FIN%..PA.plotp|
00003de0  61 6c 28 4f 50 41 4c 25  29 3a f2 63 6f 6c 28 30  |al(OPAL%):.col(0|
00003df0  2c 30 2c 30 29 3a 86 20  57 4f 58 25 2c 57 4f 59  |,0,0):. WOX%,WOY|
00003e00  25 2b 32 32 34 2c 57 4f  58 25 2b 37 37 30 2c 57  |%+224,WOX%+770,W|
00003e10  4f 59 25 2b 32 32 34 0d  14 5a 0f 43 45 43 46 25  |OY%+224..Z.CECF%|
00003e20  3d a4 63 65 63 66 0d 14  64 0f e3 20 52 4b 25 3d  |=.cecf..d.. RK%=|
00003e30  30 20 b8 20 37 0d 14 6e  18 4c 25 3d 45 43 46 25  |0 . 7..n.L%=ECF%|
00003e40  28 52 4b 25 2b 31 2c 43  45 43 46 25 29 0d 14 78  |(RK%+1,CECF%)..x|
00003e50  64 50 45 25 3d 42 54 43  25 3f 4c 25 3a f2 63 6f  |dPE%=BTC%?L%:.co|
00003e60  6c 28 50 41 4c 54 41 42  25 3f 28 50 45 25 2a 32  |l(PALTAB%?(PE%*2|
00003e70  29 2c 50 41 4c 54 41 42  25 3f 28 28 50 45 25 2a  |),PALTAB%?((PE%*|
00003e80  32 29 2b 31 29 2c 30 29  3a c8 93 20 c8 90 20 57  |2)+1),0):.. .. W|
00003e90  4f 58 25 2d 31 34 36 2c  28 57 4f 59 25 2b 32 37  |OX%-146,(WOY%+27|
00003ea0  36 29 2d 28 52 4b 25 2a  34 30 29 2c 33 38 2c 33  |6)-(RK%*40),38,3|
00003eb0  36 0d 14 82 2c c8 93 20  c8 90 20 57 4f 58 25 2d  |6...,.. .. WOX%-|
00003ec0  31 34 36 2c 28 57 4f 59  25 2b 32 37 36 29 2d 28  |146,(WOY%+276)-(|
00003ed0  52 4b 25 2a 34 30 29 2c  33 38 2c 33 36 0d 14 8c  |RK%*40),38,36...|
00003ee0  05 ed 0d 14 96 27 c8 99  20 22 57 69 6d 70 5f 47  |.....'.. "Wimp_G|
00003ef0  65 74 52 65 63 74 61 6e  67 6c 65 22 2c 2c 42 4c  |etRectangle",,BL|
00003f00  4b 25 20 b8 20 46 49 4e  25 0d 14 a0 05 ce 0d 14  |K% . FIN%.......|
00003f10  aa 05 e1 0d 14 be 26 dd  a4 63 74 62 28 63 6f 25  |......&..ctb(co%|
00003f20  2c 74 69 25 29 3a 62 79  25 3d 2d 31 3a e3 4c 25  |,ti%):by%=-1:.L%|
00003f30  3d 30 20 74 6f 20 32 35  35 0d 14 d2 11 dd f2 64  |=0 to 255......d|
00003f40  72 61 77 70 69 63 69 6e  69 74 0d 14 dc 12 21 42  |rawpicinit....!B|
00003f50  4c 4b 25 3d 48 41 4e 44  25 28 32 29 0d 14 e6 0c  |LK%=HAND%(2)....|
00003f60  42 4c 4b 25 21 34 3d 30  0d 14 f0 0f 42 4c 4b 25  |BLK%!4=0....BLK%|
00003f70  21 38 3d 2d 39 33 36 0d  14 fa 10 42 4c 4b 25 21  |!8=-936....BLK%!|
00003f80  31 32 3d 31 32 33 36 0d  15 04 0d 42 4c 4b 25 21  |12=1236....BLK%!|
00003f90  31 36 3d 30 0d 15 0e 27  c8 99 20 22 57 69 6d 70  |16=0...'.. "Wimp|
00003fa0  5f 55 70 64 61 74 65 57  69 6e 64 6f 77 22 2c 2c  |_UpdateWindow",,|
00003fb0  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 15 18 18 f2  |BLK% . FIN%.....|
00003fc0  67 65 74 72 64 6f 72 28  31 30 32 34 2a 5a 4f 4f  |getrdor(1024*ZOO|
00003fd0  4d 25 29 0d 15 22 05 e1  0d 15 36 18 dd f2 66 6f  |M%).."....6...fo|
00003fe0  72 63 65 64 72 61 77 70  61 6c 28 50 54 55 25 29  |rcedrawpal(PTU%)|
00003ff0  0d 15 40 12 21 42 4c 4b  25 3d 48 41 4e 44 25 28  |..@.!BLK%=HAND%(|
00004000  33 29 0d 15 4a 0c 42 4c  4b 25 21 34 3d 30 0d 15  |3)..J.BLK%!4=0..|
00004010  54 0f 42 4c 4b 25 21 38  3d 2d 32 32 38 0d 15 5e  |T.BLK%!8=-228..^|
00004020  0f 42 4c 4b 25 21 31 32  3d 37 37 30 0d 15 68 0d  |.BLK%!12=770..h.|
00004030  42 4c 4b 25 21 31 36 3d  30 0d 15 72 27 c8 99 20  |BLK%!16=0..r'.. |
00004040  22 57 69 6d 70 5f 55 70  64 61 74 65 57 69 6e 64  |"Wimp_UpdateWind|
00004050  6f 77 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |ow",,BLK% . FIN%|
00004060  0d 15 7c 11 f2 67 65 74  72 64 6f 72 28 32 32 38  |..|..getrdor(228|
00004070  29 0d 15 86 0b c8 95 20  46 49 4e 25 0d 15 90 12  |)...... FIN%....|
00004080  f2 70 6c 6f 74 70 61 6c  28 50 54 55 25 29 0d 15  |.plotpal(PTU%)..|
00004090  9a 27 c8 99 20 22 57 69  6d 70 5f 47 65 74 52 65  |.'.. "Wimp_GetRe|
000040a0  63 74 61 6e 67 6c 65 22  2c 2c 42 4c 4b 25 20 b8  |ctangle",,BLK% .|
000040b0  20 46 49 4e 25 0d 15 a4  05 ce 0d 15 ae 05 e1 0d  | FIN%...........|
000040c0  15 c2 14 dd f2 66 6f 72  63 65 64 72 61 77 74 62  |.....forcedrawtb|
000040d0  61 63 6b 0d 15 cc 13 21  42 4c 4b 25 3d 48 41 4e  |ack....!BLK%=HAN|
000040e0  44 25 28 31 35 29 0d 15  d6 0c 42 4c 4b 25 21 34  |D%(15)....BLK%!4|
000040f0  3d 30 0d 15 e0 0f 42 4c  4b 25 21 38 3d 2d 32 32  |=0....BLK%!8=-22|
00004100  38 0d 15 ea 0f 42 4c 4b  25 21 31 32 3d 37 37 30  |8....BLK%!12=770|
00004110  0d 15 f4 0d 42 4c 4b 25  21 31 36 3d 30 0d 15 fe  |....BLK%!16=0...|
00004120  27 c8 99 20 22 57 69 6d  70 5f 55 70 64 61 74 65  |'.. "Wimp_Update|
00004130  57 69 6e 64 6f 77 22 2c  2c 42 4c 4b 25 20 b8 20  |Window",,BLK% . |
00004140  46 49 4e 25 0d 16 08 11  f2 67 65 74 72 64 6f 72  |FIN%.....getrdor|
00004150  28 32 32 38 29 0d 16 12  0b c8 95 20 46 49 4e 25  |(228)...... FIN%|
00004160  0d 16 1c 13 f2 70 6c 6f  74 70 61 6c 28 4f 50 41  |.....plotpal(OPA|
00004170  4c 25 29 0d 16 26 4b f2  63 6f 6c 28 36 33 2c 31  |L%)..&K.col(63,1|
00004180  39 32 2c 30 29 3a c8 93  20 57 4f 58 25 2b 28 28  |92,0):.. WOX%+((|
00004190  46 4f 4e 54 42 25 20 83  20 33 32 29 2a 32 34 29  |FONTB% . 32)*24)|
000041a0  2c 57 4f 59 25 2b 28 28  46 4f 4e 54 42 25 20 81  |,WOY%+((FONTB% .|
000041b0  20 33 32 29 2a 32 38 29  2c 32 34 2c 32 38 0d 16  | 32)*28),24,28..|
000041c0  30 27 c8 99 20 22 57 69  6d 70 5f 47 65 74 52 65  |0'.. "Wimp_GetRe|
000041d0  63 74 61 6e 67 6c 65 22  2c 2c 42 4c 4b 25 20 b8  |ctangle",,BLK% .|
000041e0  20 46 49 4e 25 0d 16 3a  05 ce 0d 16 44 05 e1 0d  | FIN%..:....D...|
000041f0  16 58 19 dd f2 66 6f 72  63 65 64 72 61 77 67 72  |.X...forcedrawgr|
00004200  61 70 68 28 57 48 25 29  0d 16 62 14 21 42 4c 4b  |aph(WH%)..b.!BLK|
00004210  25 3d 48 41 4e 44 25 28  57 48 25 29 0d 16 6c 3e  |%=HAND%(WH%)..l>|
00004220  42 4c 4b 25 21 34 3d 30  3a 42 4c 4b 25 21 38 3d  |BLK%!4=0:BLK%!8=|
00004230  2d 33 30 30 3a e7 20 57  48 25 3c 3e 32 38 20 8c  |-300:. WH%<>28 .|
00004240  20 42 4c 4b 25 21 31 32  3d 33 30 30 20 8b 20 42  | BLK%!12=300 . B|
00004250  4c 4b 25 21 31 32 3d 39  30 30 0d 16 76 0d 42 4c  |LK%!12=900..v.BL|
00004260  4b 25 21 31 36 3d 30 0d  16 80 33 c8 99 20 22 57  |K%!16=0...3.. "W|
00004270  69 6d 70 5f 55 70 64 61  74 65 57 69 6e 64 6f 77  |imp_UpdateWindow|
00004280  22 2c 2c 42 4c 4b 25 20  b8 20 46 49 4e 25 3a f2  |",,BLK% . FIN%:.|
00004290  67 65 74 67 72 61 70 68  6f 72 0d 16 8a 3e c8 95  |getgraphor...>..|
000042a0  20 46 49 4e 25 3a f2 64  72 61 77 67 72 61 70 68  | FIN%:.drawgraph|
000042b0  3a c8 99 20 22 57 69 6d  70 5f 47 65 74 52 65 63  |:.. "Wimp_GetRec|
000042c0  74 61 6e 67 6c 65 22 2c  2c 42 4c 4b 25 20 b8 20  |tangle",,BLK% . |
000042d0  46 49 4e 25 3a ce 3a e1  0d 16 9e 11 dd f2 72 65  |FIN%:.:.......re|
000042e0  64 72 61 77 67 72 61 70  68 0d 16 a8 27 c8 99 20  |drawgraph...'.. |
000042f0  22 57 69 6d 70 5f 52 65  64 72 61 77 57 69 6e 64  |"Wimp_RedrawWind|
00004300  6f 77 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |ow",,BLK% . FIN%|
00004310  0d 16 b2 0f f2 67 65 74  67 72 61 70 68 6f 72 0d  |.....getgraphor.|
00004320  16 bc 3e c8 95 20 46 49  4e 25 3a f2 64 72 61 77  |..>.. FIN%:.draw|
00004330  67 72 61 70 68 3a c8 99  20 22 57 69 6d 70 5f 47  |graph:.. "Wimp_G|
00004340  65 74 52 65 63 74 61 6e  67 6c 65 22 2c 2c 42 4c  |etRectangle",,BL|
00004350  4b 25 20 b8 20 46 49 4e  25 3a ce 3a e1 0d 16 d0  |K% . FIN%:.:....|
00004360  10 dd f2 67 65 74 67 72  61 70 68 6f 72 0d 16 da  |...getgraphor...|
00004370  1c 57 4f 58 25 3d 28 42  4c 4b 25 21 34 2d 42 4c  |.WOX%=(BLK%!4-BL|
00004380  4b 25 21 32 30 29 2b 34  34 0d 16 e4 1e 57 4f 59  |K%!20)+44....WOY|
00004390  25 3d 28 42 4c 4b 25 21  31 36 2d 42 4c 4b 25 21  |%=(BLK%!16-BLK%!|
000043a0  32 34 29 2d 32 35 36 0d  16 ee 05 e1 0d 17 02 0f  |24)-256.........|
000043b0  dd f2 64 72 61 77 67 72  61 70 68 0d 17 0c 6e f2  |..drawgraph...n.|
000043c0  63 6f 6c 28 36 33 2c 31  39 32 2c 30 29 3a c8 93  |col(63,192,0):..|
000043d0  20 c8 90 20 57 4f 58 25  2b 32 2c 57 4f 59 25 2b  | .. WOX%+2,WOY%+|
000043e0  34 2c 32 35 32 2c 32 34  38 3a f2 63 6f 6c 28 30  |4,252,248:.col(0|
000043f0  2c 30 2c 30 29 3a 86 20  57 4f 58 25 2c 57 4f 59  |,0,0):. WOX%,WOY|
00004400  25 2c 57 4f 58 25 2c 57  4f 59 25 2b 32 35 32 3a  |%,WOX%,WOY%+252:|
00004410  86 20 57 4f 58 25 2c 57  4f 59 25 2c 57 4f 58 25  |. WOX%,WOY%,WOX%|
00004420  2b 32 35 34 2c 57 4f 59  25 0d 17 16 0e c8 8e 20  |+254,WOY%...... |
00004430  46 55 53 45 25 20 ca 0d  17 20 9e c9 20 34 33 3a  |FUSE% ... .. 43:|
00004440  43 4f 4e 4c 25 3d bb a4  67 69 28 32 36 2c 31 38  |CONL%=..gi(26,18|
00004450  29 3a 43 4f 4e 48 25 3d  bb a4 67 69 28 32 36 2c  |):CONH%=..gi(26,|
00004460  32 30 29 3a e7 20 43 4f  4e 4c 25 3c 43 4f 4e 48  |20):. CONL%<CONH|
00004470  25 20 8c 20 f0 34 2c 57  4f 58 25 2b 43 4f 4e 4c  |% . .4,WOX%+CONL|
00004480  25 2a 31 37 2c 57 4f 59  25 3a f0 35 2c 57 4f 58  |%*17,WOY%:.5,WOX|
00004490  25 2b 43 4f 4e 48 25 2a  31 37 2c 57 4f 59 25 2b  |%+CONH%*17,WOY%+|
000044a0  32 35 32 20 8b 20 f0 34  2c 57 4f 58 25 2b 43 4f  |252 . .4,WOX%+CO|
000044b0  4e 48 25 2a 31 37 2c 57  4f 59 25 2b 32 35 32 3a  |NH%*17,WOY%+252:|
000044c0  f0 35 2c 57 4f 58 25 2b  43 4f 4e 4c 25 2a 31 37  |.5,WOX%+CONL%*17|
000044d0  2c 57 4f 59 25 0d 17 2a  3b c9 20 34 34 3a 50 4f  |,WOY%..*;. 44:PO|
000044e0  4c 25 3d bb a4 67 69 28  32 37 2c 32 32 29 3a 50  |L%=..gi(27,22):P|
000044f0  4f 48 25 3d bb a4 67 69  28 32 37 2c 32 34 29 3a  |OH%=..gi(27,24):|
00004500  50 4f 4e 25 3d bb a4 67  69 28 32 37 2c 32 36 29  |PON%=..gi(27,26)|
00004510  0d 17 34 6f 53 54 57 49  3d 50 4f 4e 25 2f 31 36  |..4oSTWI=PON%/16|
00004520  3a 53 54 48 45 3d 28 50  4f 48 25 2d 50 4f 4c 25  |:STHE=(POH%-POL%|
00004530  29 2f 28 50 4f 4e 25 2d  31 29 3a e3 4c 25 3d 30  |)/(PON%-1):.L%=0|
00004540  20 b8 20 31 35 3a 42 48  25 3d 50 4f 4c 25 2b 28  | . 15:BH%=POL%+(|
00004550  a8 28 53 54 57 49 2a 4c  25 29 2a 53 54 48 45 29  |.(STWI*L%)*STHE)|
00004560  3a c8 93 20 57 4f 58 25  2b 28 4c 25 2a 31 36 29  |:.. WOX%+(L%*16)|
00004570  2c 57 4f 59 25 2c 31 36  2c 42 48 25 2a 31 37 0d  |,WOY%,16,BH%*17.|
00004580  17 3e 05 ed 0d 17 48 05  cb 0d 17 52 05 e1 0d 17  |.>....H....R....|
00004590  66 0e dd f2 67 65 74 70  61 74 6f 72 0d 17 70 1d  |f...getpator..p.|
000045a0  57 4f 58 25 3d 28 42 4c  4b 25 21 34 2d 42 4c 4b  |WOX%=(BLK%!4-BLK|
000045b0  25 21 32 30 29 2b 31 38  30 0d 17 7a 1e 57 4f 59  |%!20)+180..z.WOY|
000045c0  25 3d 28 42 4c 4b 25 21  31 36 2d 42 4c 4b 25 21  |%=(BLK%!16-BLK%!|
000045d0  32 34 29 2d 33 34 30 0d  17 84 05 e1 0d 17 98 0d  |24)-340.........|
000045e0  dd f2 70 69 63 70 6f 6c  6c 0d 17 a2 22 c8 99 20  |..picpoll...".. |
000045f0  22 57 69 6d 70 5f 47 65  74 50 6f 69 6e 74 65 72  |"Wimp_GetPointer|
00004600  49 6e 66 6f 22 2c 2c 42  4c 4b 25 0d 17 ac 25 e7  |Info",,BLK%...%.|
00004610  20 4d 42 55 53 25 20 80  20 42 4c 4b 25 21 38 3c  | MBUS% . BLK%!8<|
00004620  3e 30 20 8c 20 e1 20 8b  20 4d 42 55 53 25 3d a3  |>0 . . . MBUS%=.|
00004630  0d 17 b6 20 e7 20 42 4c  4b 25 21 38 3d 30 20 80  |... . BLK%!8=0 .|
00004640  20 4c 45 47 4f 25 20 8c  20 4c 45 47 4f 25 3d a3  | LEGO% . LEGO%=.|
00004650  0d 17 c0 22 e7 20 42 4c  4b 25 21 38 3c 3e 30 20  |...". BLK%!8<>0 |
00004660  80 20 4c 45 47 4f 25 20  8c 20 42 4c 4b 25 21 38  |. LEGO% . BLK%!8|
00004670  3d 30 0d 17 ca 49 57 45  25 3d 30 3a e3 50 43 25  |=0...IWE%=0:.PC%|
00004680  3d 30 20 b8 20 4e 4f 57  49 4e 44 25 3a e7 20 42  |=0 . NOWIND%:. B|
00004690  4c 4b 25 21 31 32 3d 48  41 4e 44 25 28 50 43 25  |LK%!12=HAND%(PC%|
000046a0  29 20 8c 20 57 45 25 3d  31 3a 50 43 25 3d 4e 4f  |) . WE%=1:PC%=NO|
000046b0  57 49 4e 44 25 3a ed 20  8b 20 ed 0d 17 d4 20 e7  |WIND%:. . .... .|
000046c0  20 57 45 25 3d 30 20 8c  20 49 44 52 41 47 25 3d  | WE%=0 . IDRAG%=|
000046d0  28 42 4c 4b 25 21 38 3c  3e 30 29 0d 17 de 19 e7  |(BLK%!8<>0).....|
000046e0  20 42 4c 4b 25 21 38 3d  30 20 8c 20 49 44 52 41  | BLK%!8=0 . IDRA|
000046f0  47 25 3d a3 0d 17 e8 29  e7 20 42 4c 4b 25 21 31  |G%=....). BLK%!1|
00004700  32 3c 3e 48 41 4e 44 25  28 32 29 20 84 20 42 4c  |2<>HAND%(2) . BL|
00004710  4b 25 21 31 36 3c 3e 2d  31 20 8c 20 e1 0d 17 f2  |K%!16<>-1 . ....|
00004720  1c e7 20 42 4c 4b 25 21  38 3c 3e 30 20 80 20 49  |.. BLK%!8<>0 . I|
00004730  44 52 41 47 25 20 8c 20  e1 0d 17 fc 22 58 25 3d  |DRAG% . ...."X%=|
00004740  21 42 4c 4b 25 3a 59 25  3d 42 4c 4b 25 21 34 3a  |!BLK%:Y%=BLK%!4:|
00004750  42 55 54 25 3d 42 4c 4b  25 21 38 0d 18 06 10 e7  |BUT%=BLK%!8.....|
00004760  20 42 55 54 25 3d 32 20  8c 20 e1 0d 18 10 0e c8  | BUT%=2 . ......|
00004770  8e 20 46 55 53 45 25 20  ca 0d 18 1a 46 c9 20 31  |. FUSE% ....F. 1|
00004780  3a e7 20 46 55 53 54 25  3d 30 20 80 20 42 55 54  |:. FUST%=0 . BUT|
00004790  25 3c 3e 30 20 8c 20 f2  70 69 63 70 6f 73 3a 58  |%<>0 . .picpos:X|
000047a0  25 28 30 29 3d 58 25 3a  59 25 28 30 29 3d 59 25  |%(0)=X%:Y%(0)=Y%|
000047b0  3a 46 55 53 54 25 3d 31  3a e5 20 8d 54 56 5c 0d  |:FUST%=1:. .TV\.|
000047c0  18 24 27 e7 20 42 55 54  25 3d 30 20 84 20 46 55  |.$'. BUT%=0 . FU|
000047d0  53 54 25 3d 30 20 8c 20  46 55 53 54 25 3d 30 3a  |ST%=0 . FUST%=0:|
000047e0  e5 20 8d 54 56 5c 0d 18  2e 38 f2 70 69 63 70 6f  |. .TV\...8.picpo|
000047f0  73 3a f2 69 6e 70 69 63  3a f2 73 65 74 63 6f 6c  |s:.inpic:.setcol|
00004800  3a f2 6c 28 58 25 28 30  29 2c 59 25 28 30 29 2c  |:.l(X%(0),Y%(0),|
00004810  58 25 2c 59 25 29 3a f2  6f 75 74 70 69 63 0d 18  |X%,Y%):.outpic..|
00004820  38 12 f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |8..quickdrawmain|
00004830  0d 18 42 15 58 25 28 30  29 3d 58 25 3a 59 25 28  |..B.X%(0)=X%:Y%(|
00004840  30 29 3d 59 25 0d 18 4c  7e c9 20 34 3a e7 20 46  |0)=Y%..L~. 4:. F|
00004850  55 53 54 25 3d 30 20 8c  20 f2 70 61 69 6e 74 73  |UST%=0 . .paints|
00004860  63 61 6c 65 3a f2 70 69  63 70 6f 73 3a f2 69 6e  |cale:.picpos:.in|
00004870  70 69 63 3a f2 65 6f 72  62 61 63 6b 3a f2 70 61  |pic:.eorback:.pa|
00004880  69 6e 74 62 72 75 73 68  28 58 25 2c 59 25 29 3a  |intbrush(X%,Y%):|
00004890  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
000048a0  61 77 6d 61 69 6e 3a 4f  58 25 3d 58 25 3a 4f 59  |awmain:OX%=X%:OY|
000048b0  25 3d 59 25 3a 46 55 53  54 25 3d 31 3a e5 20 8d  |%=Y%:FUST%=1:. .|
000048c0  54 56 5c 0d 18 56 0b f2  70 69 63 70 6f 73 0d 18  |TV\..V..picpos..|
000048d0  60 82 e7 20 58 25 3c 3e  4f 58 25 20 84 20 59 25  |`.. X%<>OX% . Y%|
000048e0  3c 3e 4f 59 25 20 8c 20  f2 70 61 69 6e 74 73 63  |<>OY% . .paintsc|
000048f0  61 6c 65 3a f2 69 6e 70  69 63 3a f2 65 6f 72 62  |ale:.inpic:.eorb|
00004900  61 63 6b 3a f2 70 61 69  6e 74 62 72 75 73 68 28  |ack:.paintbrush(|
00004910  4f 58 25 2c 4f 59 25 29  3a f2 70 61 69 6e 74 62  |OX%,OY%):.paintb|
00004920  72 75 73 68 28 58 25 2c  59 25 29 3a 4f 58 25 3d  |rush(X%,Y%):OX%=|
00004930  58 25 3a 4f 59 25 3d 59  25 3a f2 6f 75 74 70 69  |X%:OY%=Y%:.outpi|
00004940  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00004950  0d 18 6a 95 c9 20 31 31  3a e7 20 46 55 53 54 25  |..j.. 11:. FUST%|
00004960  3d 30 20 80 20 42 55 54  25 3c 3e 30 20 8c 20 f2  |=0 . BUT%<>0 . .|
00004970  70 69 63 70 6f 73 3a 58  25 28 30 29 3d 58 25 3a  |picpos:X%(0)=X%:|
00004980  59 25 28 30 29 3d 59 25  3a 46 55 53 54 25 3d 31  |Y%(0)=Y%:FUST%=1|
00004990  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 3a f2  |:OX%=X%:OY%=Y%:.|
000049a0  69 6e 70 69 63 3a f2 65  6f 63 3a 86 20 58 25 28  |inpic:.eoc:. X%(|
000049b0  30 29 2c 59 25 28 30 29  2c 4f 58 25 2c 4f 59 25  |0),Y%(0),OX%,OY%|
000049c0  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
000049d0  72 61 77 6d 61 69 6e 3a  f2 6c 65 74 67 6f 3a e5  |rawmain:.letgo:.|
000049e0  20 8d 54 56 5c 0d 18 74  16 e7 20 46 55 53 54 25  | .TV\..t.. FUST%|
000049f0  3d 30 20 8c 20 e5 20 8d  54 56 5c 0d 18 7e 7d e7  |=0 . . .TV\..~}.|
00004a00  20 42 55 54 25 3d 31 20  80 20 46 55 53 54 25 3d  | BUT%=1 . FUST%=|
00004a10  31 20 8c 20 f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |1 . .inpic:.eoc:|
00004a20  86 20 58 25 28 30 29 2c  59 25 28 30 29 2c 4f 58  |. X%(0),Y%(0),OX|
00004a30  25 2c 4f 59 25 3a f2 70  69 63 70 6f 73 3a 4f 58  |%,OY%:.picpos:OX|
00004a40  25 3d 58 25 3a 4f 59 25  3d 59 25 3a 46 55 53 54  |%=X%:OY%=Y%:FUST|
00004a50  25 3d 30 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |%=0:.outpic:.qui|
00004a60  63 6b 64 72 61 77 6d 61  69 6e 3a f2 6c 65 74 67  |ckdrawmain:.letg|
00004a70  6f 3a e5 20 8d 54 56 5c  0d 18 88 6c e7 20 42 55  |o:. .TV\...l. BU|
00004a80  54 25 3d 31 20 80 20 46  55 53 54 25 3d 32 20 8c  |T%=1 . FUST%=2 .|
00004a90  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a f2 65 6c  | .inpic:.eoc:.el|
00004aa0  69 70 28 26 43 35 2c 4f  58 25 2c 4f 59 25 29 3a  |ip(&C5,OX%,OY%):|
00004ab0  f2 70 69 63 70 6f 73 3a  46 55 53 54 25 3d 30 3a  |.picpos:FUST%=0:|
00004ac0  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00004ad0  61 77 6d 61 69 6e 3a f2  6c 65 74 67 6f 3a e5 20  |awmain:.letgo:. |
00004ae0  8d 54 56 5c 0d 18 92 be  e7 20 42 55 54 25 3d 34  |.TV\..... BUT%=4|
00004af0  20 80 20 28 4f 58 25 3c  3e 58 25 28 30 29 20 84  | . (OX%<>X%(0) .|
00004b00  20 4f 59 25 3c 3e 59 25  28 30 29 29 20 80 20 46  | OY%<>Y%(0)) . F|
00004b10  55 53 54 25 3d 31 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=1 . .inpic:|
00004b20  f2 65 6f 63 3a 58 25 28  31 29 3d 4f 58 25 3a 59  |.eoc:X%(1)=OX%:Y|
00004b30  25 28 31 29 3d 4f 59 25  3a 86 20 58 25 28 30 29  |%(1)=OY%:. X%(0)|
00004b40  2c 59 25 28 30 29 2c 4f  58 25 2c 4f 59 25 3a f2  |,Y%(0),OX%,OY%:.|
00004b50  70 69 63 70 6f 73 3a 4f  58 25 3d 58 25 3a 4f 59  |picpos:OX%=X%:OY|
00004b60  25 3d 59 25 3a f2 65 6c  69 70 28 26 43 35 2c 58  |%=Y%:.elip(&C5,X|
00004b70  25 2c 59 25 29 3a f2 6f  75 74 70 69 63 3a f2 71  |%,Y%):.outpic:.q|
00004b80  75 69 63 6b 64 72 61 77  6d 61 69 6e 3a f2 6c 65  |uickdrawmain:.le|
00004b90  74 67 6f 3a 46 55 53 54  25 3d 32 3a e5 20 8d 54  |tgo:FUST%=2:. .T|
00004ba0  56 5c 0d 18 9c af e7 20  42 55 54 25 3d 34 20 80  |V\..... BUT%=4 .|
00004bb0  20 28 4f 58 25 3c 3e 58  25 28 31 29 20 84 20 4f  | (OX%<>X%(1) . O|
00004bc0  59 25 3c 3e 59 25 28 31  29 29 20 80 20 46 55 53  |Y%<>Y%(1)) . FUS|
00004bd0  54 25 3d 32 20 8c 20 f2  69 6e 70 69 63 3a f2 65  |T%=2 . .inpic:.e|
00004be0  6f 63 3a f2 70 69 63 70  6f 73 3a f2 65 6c 69 70  |oc:.picpos:.elip|
00004bf0  28 26 43 35 2c 4f 58 25  2c 4f 59 25 29 3a f2 73  |(&C5,OX%,OY%):.s|
00004c00  65 74 63 6f 6c 3a f2 65  6c 69 70 28 26 43 35 2c  |etcol:.elip(&C5,|
00004c10  58 25 2c 59 25 29 3a 4f  58 25 3d 58 25 3a 4f 59  |X%,Y%):OX%=X%:OY|
00004c20  25 3d 59 25 3a f2 6f 75  74 70 69 63 3a f2 71 75  |%=Y%:.outpic:.qu|
00004c30  69 63 6b 64 72 61 77 6d  61 69 6e 3a f2 6c 65 74  |ickdrawmain:.let|
00004c40  67 6f 3a 46 55 53 54 25  3d 30 3a e5 20 8d 54 56  |go:FUST%=0:. .TV|
00004c50  5c 0d 18 a6 26 f2 70 69  63 70 6f 73 3a e7 20 58  |\...&.picpos:. X|
00004c60  25 3d 4f 58 25 20 80 20  59 25 3d 4f 59 25 20 8c  |%=OX% . Y%=OY% .|
00004c70  20 e5 20 8d 54 56 5c 0d  18 b0 6a e7 20 46 55 53  | . .TV\...j. FUS|
00004c80  54 25 3d 31 20 8c 20 f2  69 6e 70 69 63 3a f2 65  |T%=1 . .inpic:.e|
00004c90  6f 63 3a 86 20 58 25 28  30 29 2c 59 25 28 30 29  |oc:. X%(0),Y%(0)|
00004ca0  2c 4f 58 25 2c 4f 59 25  3a 4f 58 25 3d 58 25 3a  |,OX%,OY%:OX%=X%:|
00004cb0  4f 59 25 3d 59 25 3a 86  20 58 25 28 30 29 2c 59  |OY%=Y%:. X%(0),Y|
00004cc0  25 28 30 29 2c 58 25 2c  59 25 3a f2 6f 75 74 70  |%(0),X%,Y%:.outp|
00004cd0  69 63 3a f2 71 75 69 63  6b 64 72 61 77 6d 61 69  |ic:.quickdrawmai|
00004ce0  6e 0d 18 ba 64 e7 20 46  55 53 54 25 3d 32 20 8c  |n...d. FUST%=2 .|
00004cf0  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a f2 65 6c  | .inpic:.eoc:.el|
00004d00  69 70 28 26 43 35 2c 4f  58 25 2c 4f 59 25 29 3a  |ip(&C5,OX%,OY%):|
00004d10  4f 58 25 3d 58 25 3a 4f  59 25 3d 59 25 3a f2 65  |OX%=X%:OY%=Y%:.e|
00004d20  6c 69 70 28 26 43 35 2c  58 25 2c 59 25 29 3a f2  |lip(&C5,X%,Y%):.|
00004d30  6f 75 74 70 69 63 3a f2  71 75 69 63 6b 64 72 61  |outpic:.quickdra|
00004d40  77 6d 61 69 6e 0d 18 c4  95 c9 20 31 33 3a e7 20  |wmain..... 13:. |
00004d50  46 55 53 54 25 3d 30 20  80 20 42 55 54 25 3c 3e  |FUST%=0 . BUT%<>|
00004d60  30 20 8c 20 f2 70 69 63  70 6f 73 3a 58 25 28 30  |0 . .picpos:X%(0|
00004d70  29 3d 58 25 3a 59 25 28  30 29 3d 59 25 3a 46 55  |)=X%:Y%(0)=Y%:FU|
00004d80  53 54 25 3d 31 3a 4f 58  25 3d 58 25 3a 4f 59 25  |ST%=1:OX%=X%:OY%|
00004d90  3d 59 25 3a f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |=Y%:.inpic:.eoc:|
00004da0  86 20 58 25 28 30 29 2c  59 25 28 30 29 2c 4f 58  |. X%(0),Y%(0),OX|
00004db0  25 2c 4f 59 25 3a f2 6f  75 74 70 69 63 3a f2 71  |%,OY%:.outpic:.q|
00004dc0  75 69 63 6b 64 72 61 77  6d 61 69 6e 3a f2 6c 65  |uickdrawmain:.le|
00004dd0  74 67 6f 3a e5 20 8d 54  56 5c 0d 18 ce 16 e7 20  |tgo:. .TV\..... |
00004de0  46 55 53 54 25 3d 30 20  8c 20 e5 20 8d 54 56 5c  |FUST%=0 . . .TV\|
00004df0  0d 18 d8 7d e7 20 42 55  54 25 3d 31 20 80 20 46  |...}. BUT%=1 . F|
00004e00  55 53 54 25 3d 31 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=1 . .inpic:|
00004e10  f2 65 6f 63 3a 86 20 58  25 28 30 29 2c 59 25 28  |.eoc:. X%(0),Y%(|
00004e20  30 29 2c 4f 58 25 2c 4f  59 25 3a f2 70 69 63 70  |0),OX%,OY%:.picp|
00004e30  6f 73 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |os:OX%=X%:OY%=Y%|
00004e40  3a 46 55 53 54 25 3d 30  3a f2 6f 75 74 70 69 63  |:FUST%=0:.outpic|
00004e50  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 3a  |:.quickdrawmain:|
00004e60  f2 6c 65 74 67 6f 3a e5  20 8d 54 56 5c 0d 18 e2  |.letgo:. .TV\...|
00004e70  6c e7 20 42 55 54 25 3d  31 20 80 20 46 55 53 54  |l. BUT%=1 . FUST|
00004e80  25 3d 32 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=2 . .inpic:.eo|
00004e90  63 3a f2 70 61 72 61 28  30 2c 30 2c 4f 58 25 2c  |c:.para(0,0,OX%,|
00004ea0  4f 59 25 29 3a f2 70 69  63 70 6f 73 3a 46 55 53  |OY%):.picpos:FUS|
00004eb0  54 25 3d 30 3a f2 6f 75  74 70 69 63 3a f2 71 75  |T%=0:.outpic:.qu|
00004ec0  69 63 6b 64 72 61 77 6d  61 69 6e 3a f2 6c 65 74  |ickdrawmain:.let|
00004ed0  67 6f 3a e5 20 8d 54 56  5c 0d 18 ec be e7 20 42  |go:. .TV\..... B|
00004ee0  55 54 25 3d 34 20 80 20  28 4f 58 25 3c 3e 58 25  |UT%=4 . (OX%<>X%|
00004ef0  28 30 29 20 84 20 4f 59  25 3c 3e 59 25 28 30 29  |(0) . OY%<>Y%(0)|
00004f00  29 20 80 20 46 55 53 54  25 3d 31 20 8c 20 f2 69  |) . FUST%=1 . .i|
00004f10  6e 70 69 63 3a f2 65 6f  63 3a 58 25 28 31 29 3d  |npic:.eoc:X%(1)=|
00004f20  4f 58 25 3a 59 25 28 31  29 3d 4f 59 25 3a 86 20  |OX%:Y%(1)=OY%:. |
00004f30  58 25 28 30 29 2c 59 25  28 30 29 2c 4f 58 25 2c  |X%(0),Y%(0),OX%,|
00004f40  4f 59 25 3a f2 70 69 63  70 6f 73 3a 4f 58 25 3d  |OY%:.picpos:OX%=|
00004f50  58 25 3a 4f 59 25 3d 59  25 3a f2 70 61 72 61 28  |X%:OY%=Y%:.para(|
00004f60  30 2c 30 2c 58 25 2c 59  25 29 3a f2 6f 75 74 70  |0,0,X%,Y%):.outp|
00004f70  69 63 3a f2 71 75 69 63  6b 64 72 61 77 6d 61 69  |ic:.quickdrawmai|
00004f80  6e 3a f2 6c 65 74 67 6f  3a 46 55 53 54 25 3d 32  |n:.letgo:FUST%=2|
00004f90  3a e5 20 8d 54 56 5c 0d  18 f6 af e7 20 42 55 54  |:. .TV\..... BUT|
00004fa0  25 3d 34 20 80 20 28 4f  58 25 3c 3e 58 25 28 31  |%=4 . (OX%<>X%(1|
00004fb0  29 20 84 20 4f 59 25 3c  3e 59 25 28 31 29 29 20  |) . OY%<>Y%(1)) |
00004fc0  80 20 46 55 53 54 25 3d  32 20 8c 20 f2 69 6e 70  |. FUST%=2 . .inp|
00004fd0  69 63 3a f2 65 6f 63 3a  f2 70 69 63 70 6f 73 3a  |ic:.eoc:.picpos:|
00004fe0  f2 70 61 72 61 28 30 2c  30 2c 4f 58 25 2c 4f 59  |.para(0,0,OX%,OY|
00004ff0  25 29 3a f2 73 65 74 63  6f 6c 3a f2 70 61 72 61  |%):.setcol:.para|
00005000  28 31 2c 30 2c 58 25 2c  59 25 29 3a 4f 58 25 3d  |(1,0,X%,Y%):OX%=|
00005010  58 25 3a 4f 59 25 3d 59  25 3a f2 6f 75 74 70 69  |X%:OY%=Y%:.outpi|
00005020  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00005030  3a f2 6c 65 74 67 6f 3a  46 55 53 54 25 3d 30 3a  |:.letgo:FUST%=0:|
00005040  e5 20 8d 54 56 5c 0d 19  00 26 f2 70 69 63 70 6f  |. .TV\...&.picpo|
00005050  73 3a e7 20 58 25 3d 4f  58 25 20 80 20 59 25 3d  |s:. X%=OX% . Y%=|
00005060  4f 59 25 20 8c 20 e5 20  8d 54 56 5c 0d 19 0a 6a  |OY% . . .TV\...j|
00005070  e7 20 46 55 53 54 25 3d  31 20 8c 20 f2 69 6e 70  |. FUST%=1 . .inp|
00005080  69 63 3a f2 65 6f 63 3a  86 20 58 25 28 30 29 2c  |ic:.eoc:. X%(0),|
00005090  59 25 28 30 29 2c 4f 58  25 2c 4f 59 25 3a 4f 58  |Y%(0),OX%,OY%:OX|
000050a0  25 3d 58 25 3a 4f 59 25  3d 59 25 3a 86 20 58 25  |%=X%:OY%=Y%:. X%|
000050b0  28 30 29 2c 59 25 28 30  29 2c 58 25 2c 59 25 3a  |(0),Y%(0),X%,Y%:|
000050c0  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
000050d0  61 77 6d 61 69 6e 0d 19  14 64 e7 20 46 55 53 54  |awmain...d. FUST|
000050e0  25 3d 32 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=2 . .inpic:.eo|
000050f0  63 3a f2 70 61 72 61 28  30 2c 30 2c 4f 58 25 2c  |c:.para(0,0,OX%,|
00005100  4f 59 25 29 3a 4f 58 25  3d 58 25 3a 4f 59 25 3d  |OY%):OX%=X%:OY%=|
00005110  59 25 3a f2 70 61 72 61  28 30 2c 30 2c 58 25 2c  |Y%:.para(0,0,X%,|
00005120  59 25 29 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |Y%):.outpic:.qui|
00005130  63 6b 64 72 61 77 6d 61  69 6e 0d 19 1e 95 c9 20  |ckdrawmain..... |
00005140  31 36 3a e7 20 46 55 53  54 25 3d 30 20 80 20 42  |16:. FUST%=0 . B|
00005150  55 54 25 3c 3e 30 20 8c  20 f2 70 69 63 70 6f 73  |UT%<>0 . .picpos|
00005160  3a 58 25 28 30 29 3d 58  25 3a 59 25 28 30 29 3d  |:X%(0)=X%:Y%(0)=|
00005170  59 25 3a 46 55 53 54 25  3d 31 3a 4f 58 25 3d 58  |Y%:FUST%=1:OX%=X|
00005180  25 3a 4f 59 25 3d 59 25  3a f2 69 6e 70 69 63 3a  |%:OY%=Y%:.inpic:|
00005190  f2 65 6f 63 3a 86 20 58  25 28 30 29 2c 59 25 28  |.eoc:. X%(0),Y%(|
000051a0  30 29 2c 4f 58 25 2c 4f  59 25 3a f2 6f 75 74 70  |0),OX%,OY%:.outp|
000051b0  69 63 3a f2 71 75 69 63  6b 64 72 61 77 6d 61 69  |ic:.quickdrawmai|
000051c0  6e 3a f2 6c 65 74 67 6f  3a e5 20 8d 54 56 5c 0d  |n:.letgo:. .TV\.|
000051d0  19 28 16 e7 20 46 55 53  54 25 3d 30 20 8c 20 e5  |.(.. FUST%=0 . .|
000051e0  20 8d 54 56 5c 0d 19 32  7d e7 20 42 55 54 25 3d  | .TV\..2}. BUT%=|
000051f0  31 20 80 20 46 55 53 54  25 3d 31 20 8c 20 f2 69  |1 . FUST%=1 . .i|
00005200  6e 70 69 63 3a f2 65 6f  63 3a 86 20 58 25 28 30  |npic:.eoc:. X%(0|
00005210  29 2c 59 25 28 30 29 2c  4f 58 25 2c 4f 59 25 3a  |),Y%(0),OX%,OY%:|
00005220  f2 70 69 63 70 6f 73 3a  4f 58 25 3d 58 25 3a 4f  |.picpos:OX%=X%:O|
00005230  59 25 3d 59 25 3a 46 55  53 54 25 3d 30 3a f2 6f  |Y%=Y%:FUST%=0:.o|
00005240  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
00005250  6d 61 69 6e 3a f2 6c 65  74 67 6f 3a e5 20 8d 54  |main:.letgo:. .T|
00005260  56 5c 0d 19 3c 6c e7 20  42 55 54 25 3d 31 20 80  |V\..<l. BUT%=1 .|
00005270  20 46 55 53 54 25 3d 32  20 8c 20 f2 69 6e 70 69  | FUST%=2 . .inpi|
00005280  63 3a f2 65 6f 63 3a f2  65 6c 69 70 28 26 42 35  |c:.eoc:.elip(&B5|
00005290  2c 4f 58 25 2c 4f 59 25  29 3a f2 70 69 63 70 6f  |,OX%,OY%):.picpo|
000052a0  73 3a 46 55 53 54 25 3d  30 3a f2 6f 75 74 70 69  |s:FUST%=0:.outpi|
000052b0  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
000052c0  3a f2 6c 65 74 67 6f 3a  e5 20 8d 54 56 5c 0d 19  |:.letgo:. .TV\..|
000052d0  46 be e7 20 42 55 54 25  3d 34 20 80 20 28 4f 58  |F.. BUT%=4 . (OX|
000052e0  25 3c 3e 58 25 28 30 29  20 84 20 4f 59 25 3c 3e  |%<>X%(0) . OY%<>|
000052f0  59 25 28 30 29 29 20 80  20 46 55 53 54 25 3d 31  |Y%(0)) . FUST%=1|
00005300  20 8c 20 f2 69 6e 70 69  63 3a f2 65 6f 63 3a 58  | . .inpic:.eoc:X|
00005310  25 28 31 29 3d 4f 58 25  3a 59 25 28 31 29 3d 4f  |%(1)=OX%:Y%(1)=O|
00005320  59 25 3a 86 20 58 25 28  30 29 2c 59 25 28 30 29  |Y%:. X%(0),Y%(0)|
00005330  2c 4f 58 25 2c 4f 59 25  3a f2 70 69 63 70 6f 73  |,OX%,OY%:.picpos|
00005340  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 3a f2  |:OX%=X%:OY%=Y%:.|
00005350  65 6c 69 70 28 26 42 35  2c 58 25 2c 59 25 29 3a  |elip(&B5,X%,Y%):|
00005360  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00005370  61 77 6d 61 69 6e 3a f2  6c 65 74 67 6f 3a 46 55  |awmain:.letgo:FU|
00005380  53 54 25 3d 32 3a e5 20  8d 54 56 5c 0d 19 50 af  |ST%=2:. .TV\..P.|
00005390  e7 20 42 55 54 25 3d 34  20 80 20 28 4f 58 25 3c  |. BUT%=4 . (OX%<|
000053a0  3e 58 25 28 31 29 20 84  20 4f 59 25 3c 3e 59 25  |>X%(1) . OY%<>Y%|
000053b0  28 31 29 29 20 80 20 46  55 53 54 25 3d 32 20 8c  |(1)) . FUST%=2 .|
000053c0  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a f2 70 69  | .inpic:.eoc:.pi|
000053d0  63 70 6f 73 3a f2 65 6c  69 70 28 26 42 35 2c 4f  |cpos:.elip(&B5,O|
000053e0  58 25 2c 4f 59 25 29 3a  f2 73 65 74 63 6f 6c 3a  |X%,OY%):.setcol:|
000053f0  f2 65 6c 69 70 28 26 42  35 2c 58 25 2c 59 25 29  |.elip(&B5,X%,Y%)|
00005400  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 3a f2  |:OX%=X%:OY%=Y%:.|
00005410  6f 75 74 70 69 63 3a f2  71 75 69 63 6b 64 72 61  |outpic:.quickdra|
00005420  77 6d 61 69 6e 3a f2 6c  65 74 67 6f 3a 46 55 53  |wmain:.letgo:FUS|
00005430  54 25 3d 30 3a e5 20 8d  54 56 5c 0d 19 5a 26 f2  |T%=0:. .TV\..Z&.|
00005440  70 69 63 70 6f 73 3a e7  20 58 25 3d 4f 58 25 20  |picpos:. X%=OX% |
00005450  80 20 59 25 3d 4f 59 25  20 8c 20 e5 20 8d 54 56  |. Y%=OY% . . .TV|
00005460  5c 0d 19 64 6a e7 20 46  55 53 54 25 3d 31 20 8c  |\..dj. FUST%=1 .|
00005470  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a 86 20 58  | .inpic:.eoc:. X|
00005480  25 28 30 29 2c 59 25 28  30 29 2c 4f 58 25 2c 4f  |%(0),Y%(0),OX%,O|
00005490  59 25 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |Y%:OX%=X%:OY%=Y%|
000054a0  3a 86 20 58 25 28 30 29  2c 59 25 28 30 29 2c 58  |:. X%(0),Y%(0),X|
000054b0  25 2c 59 25 3a f2 6f 75  74 70 69 63 3a f2 71 75  |%,Y%:.outpic:.qu|
000054c0  69 63 6b 64 72 61 77 6d  61 69 6e 0d 19 6e 64 e7  |ickdrawmain..nd.|
000054d0  20 46 55 53 54 25 3d 32  20 8c 20 f2 69 6e 70 69  | FUST%=2 . .inpi|
000054e0  63 3a f2 65 6f 63 3a f2  65 6c 69 70 28 26 42 35  |c:.eoc:.elip(&B5|
000054f0  2c 4f 58 25 2c 4f 59 25  29 3a 4f 58 25 3d 58 25  |,OX%,OY%):OX%=X%|
00005500  3a 4f 59 25 3d 59 25 3a  f2 65 6c 69 70 28 26 42  |:OY%=Y%:.elip(&B|
00005510  35 2c 58 25 2c 59 25 29  3a f2 6f 75 74 70 69 63  |5,X%,Y%):.outpic|
00005520  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 0d  |:.quickdrawmain.|
00005530  19 78 11 c9 20 32 33 3a  f2 70 6f 6c 6c 5f 32 33  |.x.. 23:.poll_23|
00005540  0d 19 82 11 c9 20 32 35  3a f2 70 6f 6c 6c 5f 32  |..... 25:.poll_2|
00005550  35 0d 19 8c 25 c9 20 32  37 3a e7 20 46 55 53 54  |5...%. 27:. FUST|
00005560  25 3c 32 20 8c 20 f2 72  65 63 74 70 6f 6c 6c 3a  |%<2 . .rectpoll:|
00005570  e5 20 8d 54 56 5c 0d 19  96 2d f2 73 70 69 6e 69  |. .TV\...-.spini|
00005580  74 3a f2 73 70 62 75 66  28 31 36 31 2a 31 30 32  |t:.spbuf(161*102|
00005590  34 29 3a e7 20 51 25 20  8c 20 f2 73 70 62 75 66  |4):. Q% . .spbuf|
000055a0  65 72 72 0d 19 a0 19 f2  62 61 63 6b 75 70 70 69  |err.....backuppi|
000055b0  63 3a f2 73 77 61 70 63  6f 72 6e 73 0d 19 aa 20  |c:.swapcorns... |
000055c0  56 41 52 53 21 32 30 3d  42 54 43 25 3a 56 41 52  |VARS!20=BTC%:VAR|
000055d0  53 21 32 34 3d 50 41 4c  54 41 42 25 0d 19 b4 1f  |S!24=PALTAB%....|
000055e0  56 41 52 53 21 32 38 3d  50 49 43 25 3a 56 41 52  |VARS!28=PIC%:VAR|
000055f0  53 21 33 32 3d 53 50 42  55 46 25 0d 19 be 1f 56  |S!32=SPBUF%....V|
00005600  41 52 53 21 33 36 3d 58  25 28 30 29 3a 56 41 52  |ARS!36=X%(0):VAR|
00005610  53 21 34 30 3d 59 25 28  30 29 0d 19 c8 1b 56 41  |S!40=Y%(0)....VA|
00005620  52 53 21 34 34 3d 4f 58  25 3a 56 41 52 53 21 34  |RS!44=OX%:VARS!4|
00005630  38 3d 4f 59 25 0d 19 d2  5c 41 25 3d 56 41 52 53  |8=OY%...\A%=VARS|
00005640  3a c8 99 20 22 48 6f 75  72 67 6c 61 73 73 5f 4f  |:.. "Hourglass_O|
00005650  6e 22 3a d6 20 70 69 78  61 76 65 72 61 67 65 3a  |n":. pixaverage:|
00005660  c8 99 20 22 48 6f 75 72  67 6c 61 73 73 5f 4f 66  |.. "Hourglass_Of|
00005670  66 22 3a f2 73 70 69 6e  69 74 3a f2 66 6f 72 63  |f":.spinit:.forc|
00005680  65 64 72 61 77 6d 61 69  6e 3a 46 55 53 54 25 3d  |edrawmain:FUST%=|
00005690  30 0d 19 dc 80 c9 20 32  39 3a e7 20 46 55 53 54  |0..... 29:. FUST|
000056a0  25 3d 30 20 8c 20 f2 70  61 69 6e 74 73 63 61 6c  |%=0 . .paintscal|
000056b0  65 32 3a f2 70 69 63 70  6f 73 3a f2 69 6e 70 69  |e2:.picpos:.inpi|
000056c0  63 3a f2 65 6f 72 62 61  63 6b 3a f2 70 61 69 6e  |c:.eorback:.pain|
000056d0  74 62 72 75 73 68 28 58  25 2c 59 25 29 3a f2 6f  |tbrush(X%,Y%):.o|
000056e0  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
000056f0  6d 61 69 6e 3a 4f 58 25  3d 58 25 3a 4f 59 25 3d  |main:OX%=X%:OY%=|
00005700  59 25 3a 46 55 53 54 25  3d 31 3a e5 20 8d 54 56  |Y%:FUST%=1:. .TV|
00005710  5c 0d 19 e6 0b f2 70 69  63 70 6f 73 0d 19 f0 83  |\.....picpos....|
00005720  e7 20 58 25 3c 3e 4f 58  25 20 84 20 59 25 3c 3e  |. X%<>OX% . Y%<>|
00005730  4f 59 25 20 8c 20 f2 70  61 69 6e 74 73 63 61 6c  |OY% . .paintscal|
00005740  65 32 3a f2 69 6e 70 69  63 3a f2 65 6f 72 62 61  |e2:.inpic:.eorba|
00005750  63 6b 3a f2 70 61 69 6e  74 62 72 75 73 68 28 4f  |ck:.paintbrush(O|
00005760  58 25 2c 4f 59 25 29 3a  f2 70 61 69 6e 74 62 72  |X%,OY%):.paintbr|
00005770  75 73 68 28 58 25 2c 59  25 29 3a 4f 58 25 3d 58  |ush(X%,Y%):OX%=X|
00005780  25 3a 4f 59 25 3d 59 25  3a f2 6f 75 74 70 69 63  |%:OY%=Y%:.outpic|
00005790  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 0d  |:.quickdrawmain.|
000057a0  19 fa 80 c9 20 33 30 3a  e7 20 46 55 53 54 25 3d  |.... 30:. FUST%=|
000057b0  30 20 8c 20 f2 70 61 69  6e 74 73 63 61 6c 65 32  |0 . .paintscale2|
000057c0  3a f2 70 69 63 70 6f 73  3a f2 69 6e 70 69 63 3a  |:.picpos:.inpic:|
000057d0  f2 65 6f 72 62 61 63 6b  3a f2 70 61 69 6e 74 62  |.eorback:.paintb|
000057e0  72 75 73 68 28 58 25 2c  59 25 29 3a f2 6f 75 74  |rush(X%,Y%):.out|
000057f0  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00005800  69 6e 3a 4f 58 25 3d 58  25 3a 4f 59 25 3d 59 25  |in:OX%=X%:OY%=Y%|
00005810  3a 46 55 53 54 25 3d 31  3a e5 20 8d 54 56 5c 0d  |:FUST%=1:. .TV\.|
00005820  1a 04 0b f2 70 69 63 70  6f 73 0d 1a 0e 83 e7 20  |....picpos..... |
00005830  58 25 3c 3e 4f 58 25 20  84 20 59 25 3c 3e 4f 59  |X%<>OX% . Y%<>OY|
00005840  25 20 8c 20 f2 70 61 69  6e 74 73 63 61 6c 65 32  |% . .paintscale2|
00005850  3a f2 69 6e 70 69 63 3a  f2 65 6f 72 62 61 63 6b  |:.inpic:.eorback|
00005860  3a f2 70 61 69 6e 74 62  72 75 73 68 28 4f 58 25  |:.paintbrush(OX%|
00005870  2c 4f 59 25 29 3a f2 70  61 69 6e 74 62 72 75 73  |,OY%):.paintbrus|
00005880  68 28 58 25 2c 59 25 29  3a 4f 58 25 3d 58 25 3a  |h(X%,Y%):OX%=X%:|
00005890  4f 59 25 3d 59 25 3a f2  6f 75 74 70 69 63 3a f2  |OY%=Y%:.outpic:.|
000058a0  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 0d 1a 18  |quickdrawmain...|
000058b0  15 c9 20 33 32 3a e7 20  46 4f 4e 54 25 3c 3e 30  |.. 32:. FONT%<>0|
000058c0  20 8c 0d 1a 22 6f f2 70  69 63 70 6f 73 3a e7 20  | ..."o.picpos:. |
000058d0  42 55 54 25 3d 34 20 80  20 46 55 53 54 25 3c 3e  |BUT%=4 . FUST%<>|
000058e0  30 20 8c 20 f2 69 6e 62  61 63 6b 75 70 3a c8 99  |0 . .inbackup:..|
000058f0  20 22 46 6f 6e 74 5f 53  65 74 46 6f 6e 74 22 2c  | "Font_SetFont",|
00005900  46 48 41 4e 44 25 3a c8  99 20 22 46 6f 6e 74 5f  |FHAND%:.. "Font_|
00005910  50 61 69 6e 74 22 2c 2c  54 45 58 54 24 2c 31 36  |Paint",,TEXT$,16|
00005920  2c 58 25 2c 59 25 3a f2  6f 75 74 62 61 63 6b 75  |,X%,Y%:.outbacku|
00005930  70 0d 1a 2c d9 e7 20 46  55 53 54 25 3c 3e 30 20  |p..,.. FUST%<>0 |
00005940  80 20 28 58 25 3c 3e 4f  58 25 20 84 20 59 25 3c  |. (X%<>OX% . Y%<|
00005950  3e 4f 59 25 29 20 8c 20  45 54 25 3d 31 3a f2 72  |>OY%) . ET%=1:.r|
00005960  65 73 74 70 69 63 3a 45  54 25 3d 32 3a 45 54 25  |estpic:ET%=2:ET%|
00005970  3d 33 3a f2 69 6e 70 69  63 52 3a c8 99 20 22 46  |=3:.inpicR:.. "F|
00005980  6f 6e 74 5f 53 65 74 46  6f 6e 74 22 2c 46 48 41  |ont_SetFont",FHA|
00005990  4e 44 25 3a 45 54 25 3d  34 3a c8 99 20 22 46 6f  |ND%:ET%=4:.. "Fo|
000059a0  6e 74 5f 50 61 69 6e 74  22 2c 2c 54 45 58 54 24  |nt_Paint",,TEXT$|
000059b0  2c 31 36 2c 58 25 2c 59  25 3a f2 6f 75 74 62 61  |,16,X%,Y%:.outba|
000059c0  63 6b 75 70 3a 4e 54 54  50 25 2b 3d 31 3a 45 54  |ckup:NTTP%+=1:ET|
000059d0  25 3d 35 3a 45 54 25 3d  36 3a 4f 58 25 3d 58 25  |%=5:ET%=6:OX%=X%|
000059e0  3a 4f 59 25 3d 59 25 3a  f2 66 6f 72 63 65 64 72  |:OY%=Y%:.forcedr|
000059f0  61 77 6d 61 69 6e 3a 45  54 25 3d 37 3a 4f 58 25  |awmain:ET%=7:OX%|
00005a00  3d 58 25 3a 4f 59 25 3d  59 25 0d 1a 36 05 cc 0d  |=X%:OY%=Y%..6...|
00005a10  1a 40 45 f2 70 69 63 70  6f 73 3a e7 20 42 55 54  |.@E.picpos:. BUT|
00005a20  25 3d 34 20 80 20 46 55  53 54 25 3c 3e 30 20 8c  |%=4 . FUST%<>0 .|
00005a30  20 f2 69 6e 62 61 63 6b  75 70 3a f2 6f 73 74 65  | .inbackup:.oste|
00005a40  78 74 28 58 25 2c 59 25  29 3a f2 6f 75 74 62 61  |xt(X%,Y%):.outba|
00005a50  63 6b 75 70 0d 1a 4a 6a  e7 20 46 55 53 54 25 3c  |ckup..Jj. FUST%<|
00005a60  3e 30 20 80 20 28 58 25  3c 3e 4f 58 25 20 84 20  |>0 . (X%<>OX% . |
00005a70  59 25 3c 3e 4f 59 25 29  20 8c 20 f2 72 65 73 74  |Y%<>OY%) . .rest|
00005a80  70 69 63 3a f2 69 6e 70  69 63 3a f2 6f 73 74 65  |pic:.inpic:.oste|
00005a90  78 74 28 58 25 2c 59 25  29 3a f2 6f 75 74 70 69  |xt(X%,Y%):.outpi|
00005aa0  63 3a f2 66 6f 72 63 65  64 72 61 77 6d 61 69 6e  |c:.forcedrawmain|
00005ab0  3a 4f 58 25 3d 58 25 3a  4f 59 25 3d 59 25 0d 1a  |:OX%=X%:OY%=Y%..|
00005ac0  54 0c cd 3a e5 20 8d 54  56 5c 0d 1a 5e 25 c9 20  |T..:. .TV\..^%. |
00005ad0  33 31 3a e7 20 46 55 53  54 25 3c 32 20 8c 20 f2  |31:. FUST%<2 . .|
00005ae0  72 65 63 74 70 6f 6c 6c  3a e5 20 8d 54 56 5c 0d  |rectpoll:. .TV\.|
00005af0  1a 68 3e f2 73 77 61 70  63 6f 72 6e 73 3a 46 4d  |.h>.swapcorns:FM|
00005b00  49 4e 58 25 3d 58 25 28  30 29 3a 46 4d 49 4e 59  |INX%=X%(0):FMINY|
00005b10  25 3d 59 25 28 30 29 3a  46 4d 41 58 58 25 3d 4f  |%=Y%(0):FMAXX%=O|
00005b20  58 25 3a 46 4d 41 58 59  25 3d 4f 59 25 0d 1a 72  |X%:FMAXY%=OY%..r|
00005b30  36 c8 99 20 22 48 6f 75  72 67 6c 61 73 73 5f 4f  |6.. "Hourglass_O|
00005b40  6e 22 3a f2 66 69 6c 6c  3a c8 99 20 22 48 6f 75  |n":.fill:.. "Hou|
00005b50  72 67 6c 61 73 73 5f 4f  66 66 22 3a 46 55 53 54  |rglass_Off":FUST|
00005b60  25 3d 30 0d 1a 7c 1c c9  20 33 33 3a e7 20 46 55  |%=0..|.. 33:. FU|
00005b70  53 54 25 3e 3d 32 20 8c  20 e5 20 8d 74 50 5a 0d  |ST%>=2 . . .tPZ.|
00005b80  1a 86 8f e7 20 46 55 53  54 25 3d 30 20 80 20 42  |.... FUST%=0 . B|
00005b90  55 54 25 3d 31 20 8c 20  f2 70 69 63 70 6f 73 3a  |UT%=1 . .picpos:|
00005ba0  f2 69 6e 70 69 63 3a 43  4f 25 3d b0 58 25 2c 59  |.inpic:CO%=.X%,Y|
00005bb0  25 29 3a 54 49 25 3d c8  9c 28 58 25 2c 59 25 29  |%):TI%=..(X%,Y%)|
00005bc0  3a f2 6f 75 74 70 69 63  3a 53 52 45 50 25 3d a4  |:.outpic:SREP%=.|
00005bd0  66 69 6e 64 70 61 6c 65  6e 74 28 43 4f 25 2c 54  |findpalent(CO%,T|
00005be0  49 25 29 3a f2 66 6f 72  63 65 64 72 61 77 63 6f  |I%):.forcedrawco|
00005bf0  6c 72 65 70 3a e5 20 8d  54 56 5c 20 8b 20 f2 72  |lrep:. .TV\ . .r|
00005c00  65 63 74 70 6f 6c 6c 3a  e5 20 8d 54 56 5c 0d 1a  |ectpoll:. .TV\..|
00005c10  90 3e f2 73 77 61 70 63  6f 72 6e 73 3a 46 4d 49  |.>.swapcorns:FMI|
00005c20  4e 58 25 3d 58 25 28 30  29 3a 46 4d 49 4e 59 25  |NX%=X%(0):FMINY%|
00005c30  3d 59 25 28 30 29 3a 46  4d 41 58 58 25 3d 4f 58  |=Y%(0):FMAXX%=OX|
00005c40  25 3a 46 4d 41 58 59 25  3d 4f 59 25 0d 1a 9a c2  |%:FMAXY%=OY%....|
00005c50  c8 99 20 22 48 6f 75 72  67 6c 61 73 73 5f 4f 6e  |.. "Hourglass_On|
00005c60  22 3a 21 56 41 52 53 3d  50 49 43 25 3a 56 41 52  |":!VARS=PIC%:VAR|
00005c70  53 21 34 3d 50 49 43 25  3a 56 41 52 53 21 38 3d  |S!4=PIC%:VARS!8=|
00005c80  58 25 28 30 29 3a 56 41  52 53 21 31 32 3d 59 25  |X%(0):VARS!12=Y%|
00005c90  28 30 29 3a 56 41 52 53  21 31 36 3d 4f 58 25 3a  |(0):VARS!16=OX%:|
00005ca0  56 41 52 53 21 32 30 3d  4f 59 25 3a 56 41 52 53  |VARS!20=OY%:VARS|
00005cb0  21 32 34 3d 42 54 43 25  3a 56 41 52 53 21 32 38  |!24=BTC%:VARS!28|
00005cc0  3d 54 54 42 25 3a 56 41  52 53 21 33 32 3d 52 45  |=TTB%:VARS!32=RE|
00005cd0  50 53 25 3a 41 25 3d 56  41 52 53 3a d6 20 63 6f  |PS%:A%=VARS:. co|
00005ce0  6c 72 65 70 3a c8 99 20  22 48 6f 75 72 67 6c 61  |lrep:.. "Hourgla|
00005cf0  73 73 5f 4f 66 66 22 3a  46 55 53 54 25 3d 30 3a  |ss_Off":FUST%=0:|
00005d00  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 0d 1a  |.forcedrawmain..|
00005d10  a4 2d c9 20 33 34 3a e7  20 a4 68 69 67 68 28 33  |.-. 34:. .high(3|
00005d20  31 2c 33 29 20 84 20 a4  68 69 67 68 28 33 31 2c  |1,3) . .high(31,|
00005d30  34 29 20 8c 20 e5 20 8d  54 56 5c 0d 1a ae 14 e7  |4) . . .TV\.....|
00005d40  20 46 55 53 54 25 3d 30  20 8c 20 8d 64 42 5a 0d  | FUST%=0 . .dBZ.|
00005d50  1a b8 7a e7 20 42 55 54  25 3d 34 20 8c 20 f2 69  |..z. BUT%=4 . .i|
00005d60  6e 70 69 63 3a f2 70 69  63 70 6f 73 3a f2 70 69  |npic:.picpos:.pi|
00005d70  6d 70 6f 72 74 28 4f 58  25 2c 4f 59 25 2c 33 29  |mport(OX%,OY%,3)|
00005d80  3a f2 69 6d 70 74 69 6c  65 3a 4f 58 25 3d 58 25  |:.imptile:OX%=X%|
00005d90  3a 4f 59 25 3d 59 25 3a  f2 70 69 6d 70 6f 72 74  |:OY%=Y%:.pimport|
00005da0  28 4f 58 25 2c 4f 59 25  2c 33 29 3a f2 6f 75 74  |(OX%,OY%,3):.out|
00005db0  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00005dc0  69 6e 3a e5 20 8d 54 56  5c 0d 1a c2 64 e7 20 46  |in:. .TV\...d. F|
00005dd0  55 53 54 25 3d 30 20 8c  20 46 55 53 54 25 3d 31  |UST%=0 . FUST%=1|
00005de0  3a f2 70 69 63 70 6f 73  3a 4f 58 25 3d 58 25 3a  |:.picpos:OX%=X%:|
00005df0  4f 59 25 3d 59 25 3a f2  69 6e 70 69 63 3a f2 70  |OY%=Y%:.inpic:.p|
00005e00  69 6d 70 6f 72 74 28 58  25 2c 59 25 2c 33 29 3a  |import(X%,Y%,3):|
00005e10  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00005e20  61 77 6d 61 69 6e 3a e5  20 8d 54 56 5c 0d 1a cc  |awmain:. .TV\...|
00005e30  26 f2 70 69 63 70 6f 73  3a e7 20 58 25 3d 4f 58  |&.picpos:. X%=OX|
00005e40  25 20 80 20 59 25 3d 4f  59 25 20 8c 20 e5 20 8d  |% . Y%=OY% . . .|
00005e50  54 56 5c 0d 1a d6 55 f2  69 6e 70 69 63 3a f2 70  |TV\...U.inpic:.p|
00005e60  69 6d 70 6f 72 74 28 4f  58 25 2c 4f 59 25 2c 33  |import(OX%,OY%,3|
00005e70  29 3a 4f 58 25 3d 58 25  3a 4f 59 25 3d 59 25 3a  |):OX%=X%:OY%=Y%:|
00005e80  f2 70 69 6d 70 6f 72 74  28 58 25 2c 59 25 2c 33  |.pimport(X%,Y%,3|
00005e90  29 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |):.outpic:.quick|
00005ea0  64 72 61 77 6d 61 69 6e  0d 1a e0 6c c9 20 33 36  |drawmain...l. 36|
00005eb0  3a e7 20 46 55 53 54 25  3d 30 20 8c 20 f2 70 69  |:. FUST%=0 . .pi|
00005ec0  63 70 6f 73 3a f2 69 6e  70 69 63 3a f2 65 6f 63  |cpos:.inpic:.eoc|
00005ed0  3a c8 93 20 58 25 2c 59  25 2c 46 52 57 25 2a 32  |:.. X%,Y%,FRW%*2|
00005ee0  2c 46 52 48 25 2a 34 3a  f2 6f 75 74 70 69 63 3a  |,FRH%*4:.outpic:|
00005ef0  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 3a 4f  |.quickdrawmain:O|
00005f00  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a 46 55 53  |X%=X%:OY%=Y%:FUS|
00005f10  54 25 3d 31 0d 1a ea 84  f2 70 69 63 70 6f 73 3a  |T%=1.....picpos:|
00005f20  e7 20 58 25 3c 3e 4f 58  25 20 84 20 59 25 3c 3e  |. X%<>OX% . Y%<>|
00005f30  4f 59 25 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |OY% . .inpic:.eo|
00005f40  63 3a c8 93 20 4f 58 25  2c 4f 59 25 2c 46 52 57  |c:.. OX%,OY%,FRW|
00005f50  25 2a 32 2c 46 52 48 25  2a 34 3a 4f 58 25 3d 58  |%*2,FRH%*4:OX%=X|
00005f60  25 3a 4f 59 25 3d 59 25  3a c8 93 20 4f 58 25 2c  |%:OY%=Y%:.. OX%,|
00005f70  4f 59 25 2c 46 52 57 25  2a 32 2c 46 52 48 25 2a  |OY%,FRW%*2,FRH%*|
00005f80  34 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |4:.outpic:.quick|
00005f90  64 72 61 77 6d 61 69 6e  0d 1a f4 14 e7 20 42 55  |drawmain..... BU|
00005fa0  54 25 3c 3e 34 20 8c 20  8d 54 56 5c 0d 1a fe 7e  |T%<>4 . .TV\...~|
00005fb0  f2 69 6e 70 69 63 3a f2  65 6f 63 3a c8 93 20 4f  |.inpic:.eoc:.. O|
00005fc0  58 25 2c 4f 59 25 2c 46  52 57 25 2a 32 2c 46 52  |X%,OY%,FRW%*2,FR|
00005fd0  48 25 2a 34 3a f2 73 65  74 63 6f 6c 3a c8 93 20  |H%*4:.setcol:.. |
00005fe0  4f 58 25 2c 4f 59 25 2c  46 52 57 25 2a 32 2c 46  |OX%,OY%,FRW%*2,F|
00005ff0  52 48 25 2a 34 3a f2 65  6f 63 3a c8 93 20 4f 58  |RH%*4:.eoc:.. OX|
00006000  25 2c 4f 59 25 2c 46 52  57 25 2a 32 2c 46 52 48  |%,OY%,FRW%*2,FRH|
00006010  25 2a 34 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |%*4:.outpic:.qui|
00006020  63 6b 64 72 61 77 6d 61  69 6e 0d 1b 08 11 c9 20  |ckdrawmain..... |
00006030  33 38 3a f2 70 6f 6c 6c  5f 33 38 0d 1b 12 11 c9  |38:.poll_38.....|
00006040  20 33 39 3a f2 70 6f 6c  6c 5f 33 39 0d 1b 1c 11  | 39:.poll_39....|
00006050  c9 20 34 30 3a f2 70 6f  6c 6c 5f 34 30 0d 1b 26  |. 40:.poll_40..&|
00006060  11 c9 20 34 31 3a f2 70  6f 6c 6c 5f 34 31 0d 1b  |.. 41:.poll_41..|
00006070  30 25 c9 20 34 32 3a e7  20 46 55 53 54 25 3c 32  |0%. 42:. FUST%<2|
00006080  20 8c 20 f2 72 65 63 74  70 6f 6c 6c 3a e5 20 8d  | . .rectpoll:. .|
00006090  54 56 5c 0d 1b 3a 0f f2  73 75 70 69 78 74 72 61  |TV\..:..supixtra|
000060a0  6e 73 0d 1b 44 6b 52 57  25 3d bb a4 67 69 28 32  |ns..DkRW%=..gi(2|
000060b0  35 2c 31 33 29 3a 47 57  25 3d bb a4 67 69 28 32  |5,13):GW%=..gi(2|
000060c0  35 2c 31 35 29 3a 42 57  25 3d bb a4 67 69 28 32  |5,15):BW%=..gi(2|
000060d0  35 2c 31 37 29 3a e3 4c  25 3d 30 20 b8 20 32 35  |5,17):.L%=0 . 25|
000060e0  35 3a c8 99 20 22 43 6f  6c 6f 75 72 54 72 61 6e  |5:.. "ColourTran|
000060f0  73 5f 43 6f 6c 6f 75 72  4e 75 6d 62 65 72 54 6f  |s_ColourNumberTo|
00006100  47 43 4f 4c 22 2c 4c 25  20 b8 20 47 25 0d 1b 4e  |GCOL",L% . G%..N|
00006110  53 52 43 25 3d 28 47 25  80 25 31 31 31 31 29 2a  |SRC%=(G%.%1111)*|
00006120  52 57 25 3a 47 43 25 3d  28 28 28 47 25 80 34 38  |RW%:GC%=(((G%.48|
00006130  29 3e 3e 32 29 2b 28 47  25 80 33 29 29 2a 47 57  |)>>2)+(G%.3))*GW|
00006140  25 3a 42 43 25 3d 28 28  28 47 25 80 31 39 32 29  |%:BC%=(((G%.192)|
00006150  3e 3e 34 29 2b 28 47 25  80 33 29 29 2a 42 57 25  |>>4)+(G%.3))*BW%|
00006160  0d 1b 58 2b 54 43 25 3d  28 28 52 43 25 2b 47 43  |..X+TC%=((RC%+GC|
00006170  25 2b 42 43 25 29 81 33  29 3a e7 20 54 43 25 3e  |%+BC%).3):. TC%>|
00006180  31 35 20 8c 20 54 43 25  3d 31 35 0d 1b 62 78 54  |15 . TC%=15..bxT|
00006190  43 25 3d 28 54 43 25 20  80 20 33 29 2b 28 28 54  |C%=(TC% . 3)+((T|
000061a0  43 25 80 31 32 29 2a 52  53 4d 25 29 2b 28 28 28  |C%.12)*RSM%)+(((|
000061b0  54 43 25 80 31 32 29 3c  3c 32 29 2a 47 53 4d 25  |TC%.12)<<2)*GSM%|
000061c0  29 2b 28 28 28 54 43 25  80 31 32 29 3c 3c 34 29  |)+(((TC%.12)<<4)|
000061d0  2a 42 53 4d 25 29 3a c8  99 22 43 6f 6c 6f 75 72  |*BSM%):.."Colour|
000061e0  54 72 61 6e 73 5f 47 43  4f 4c 54 6f 43 6f 6c 6f  |Trans_GCOLToColo|
000061f0  75 72 4e 75 6d 62 65 72  22 2c 54 43 25 20 b8 20  |urNumber",TC% . |
00006200  54 43 25 0d 1b 6c 16 54  52 41 4e 53 54 41 42 25  |TC%..l.TRANSTAB%|
00006210  3f 4c 25 3d 54 43 25 3a  ed 0d 1b 76 41 41 25 3d  |?L%=TC%:...vAA%=|
00006220  56 41 52 53 3a d6 20 74  72 61 6e 73 61 72 65 61  |VARS:. transarea|
00006230  3a c8 99 20 22 48 6f 75  72 67 6c 61 73 73 5f 4f  |:.. "Hourglass_O|
00006240  66 66 22 3a 46 55 53 54  25 3d 30 3a f2 66 6f 72  |ff":FUST%=0:.for|
00006250  63 65 64 72 61 77 6d 61  69 6e 0d 1b 80 11 c9 20  |cedrawmain..... |
00006260  34 33 3a f2 70 6f 6c 6c  5f 34 33 0d 1b 8a 11 c9  |43:.poll_43.....|
00006270  20 34 34 3a f2 70 6f 6c  6c 5f 34 34 0d 1b 94 25  | 44:.poll_44...%|
00006280  c9 20 34 37 3a e7 20 46  55 53 54 25 3c 32 20 8c  |. 47:. FUST%<2 .|
00006290  20 f2 72 65 63 74 70 6f  6c 6c 3a e5 20 8d 54 56  | .rectpoll:. .TV|
000062a0  5c 0d 1b 9e 2d f2 73 70  69 6e 69 74 3a f2 73 70  |\...-.spinit:.sp|
000062b0  62 75 66 28 31 36 31 2a  31 30 32 34 29 3a e7 20  |buf(161*1024):. |
000062c0  51 25 20 8c 20 f2 73 70  62 75 66 65 72 72 0d 1b  |Q% . .spbuferr..|
000062d0  a8 19 f2 62 61 63 6b 75  70 70 69 63 3a f2 73 77  |...backuppic:.sw|
000062e0  61 70 63 6f 72 6e 73 0d  1b b2 af 56 41 52 53 21  |apcorns....VARS!|
000062f0  38 3d 58 25 28 30 29 3a  56 41 52 53 21 31 32 3d  |8=X%(0):VARS!12=|
00006300  59 25 28 30 29 3a 56 41  52 53 21 31 36 3d 4f 58  |Y%(0):VARS!16=OX|
00006310  25 3a 56 41 52 53 21 32  30 3d 4f 59 25 3a 56 41  |%:VARS!20=OY%:VA|
00006320  52 53 21 32 34 3d bb 28  a4 67 69 28 32 39 2c 35  |RS!24=.(.gi(29,5|
00006330  29 29 3a 56 41 52 53 21  32 38 3d 42 4c 4b 25 2b  |)):VARS!28=BLK%+|
00006340  35 31 32 3a 41 25 3d 56  41 52 53 3a c8 99 22 48  |512:A%=VARS:.."H|
00006350  6f 75 72 67 6c 61 73 73  5f 4f 6e 22 3a d6 20 66  |ourglass_On":. f|
00006360  69 6c 74 65 72 3a c8 99  22 48 6f 75 72 67 6c 61  |ilter:.."Hourgla|
00006370  73 73 5f 4f 66 66 22 3a  f2 73 70 69 6e 69 74 3a  |ss_Off":.spinit:|
00006380  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 3a 46  |.forcedrawmain:F|
00006390  55 53 54 25 3d 30 0d 1b  bc 25 c9 20 34 38 3a e7  |UST%=0...%. 48:.|
000063a0  20 46 55 53 54 25 3c 32  20 8c 20 f2 72 65 63 74  | FUST%<2 . .rect|
000063b0  70 6f 6c 6c 3a e5 20 8d  54 56 5c 0d 1b c6 2d f2  |poll:. .TV\...-.|
000063c0  73 70 69 6e 69 74 3a f2  73 70 62 75 66 28 31 36  |spinit:.spbuf(16|
000063d0  31 2a 31 30 32 34 29 3a  e7 20 51 25 20 8c 20 f2  |1*1024):. Q% . .|
000063e0  73 70 62 75 66 65 72 72  0d 1b d0 19 f2 62 61 63  |spbuferr.....bac|
000063f0  6b 75 70 70 69 63 3a f2  73 77 61 70 63 6f 72 6e  |kuppic:.swapcorn|
00006400  73 0d 1b da 10 57 45 25  3d 31 3a e5 20 8d 54 7e  |s....WE%=1:. .T~|
00006410  5c 0d 1b e4 2d e7 20 a4  68 69 67 68 28 33 30 2c  |\...-. .high(30,|
00006420  32 35 29 20 8c 20 56 41  52 53 21 33 36 3d 31 20  |25) . VARS!36=1 |
00006430  8b 20 56 41 52 53 21 33  36 3d 26 32 38 30 0d 1b  |. VARS!36=&280..|
00006440  ee 28 56 41 52 53 21 34  30 3d 30 3a e7 20 a4 68  |.(VARS!40=0:. .h|
00006450  69 67 68 28 33 30 2c 34  34 29 20 8c 20 56 41 52  |igh(30,44) . VAR|
00006460  53 21 34 30 3d 31 0d 1b  f8 2a e7 20 a4 68 69 67  |S!40=1...*. .hig|
00006470  68 28 33 30 2c 33 32 29  20 8c 20 56 41 52 53 21  |h(30,32) . VARS!|
00006480  34 34 3d 31 20 8b 20 56  41 52 53 21 34 34 3d 30  |44=1 . VARS!44=0|
00006490  0d 1c 02 a6 56 41 52 53  21 38 3d 58 25 28 30 29  |....VARS!8=X%(0)|
000064a0  3a 56 41 52 53 21 31 32  3d 59 25 28 30 29 3a 56  |:VARS!12=Y%(0):V|
000064b0  41 52 53 21 31 36 3d 4f  58 25 3a 56 41 52 53 21  |ARS!16=OX%:VARS!|
000064c0  32 30 3d 4f 59 25 3a 56  41 52 53 21 32 34 3d 54  |20=OY%:VARS!24=T|
000064d0  41 53 25 2b 35 31 32 3a  56 41 52 53 21 32 38 3d  |AS%+512:VARS!28=|
000064e0  42 54 43 25 3a 56 41 52  53 21 33 32 3d 54 52 41  |BTC%:VARS!32=TRA|
000064f0  53 50 25 3a 41 25 3d 56  41 52 53 3a d6 20 77 6f  |SP%:A%=VARS:. wo|
00006500  62 62 6c 65 3a c8 99 20  22 48 6f 75 72 67 6c 61  |bble:.. "Hourgla|
00006510  73 73 5f 4f 66 66 22 3a  f2 73 70 69 6e 69 74 3a  |ss_Off":.spinit:|
00006520  f2 66 6f 72 63 65 64 72  61 77 6d 61 69 6e 3a 46  |.forcedrawmain:F|
00006530  55 53 54 25 3d 30 0d 1c  0c 23 e7 20 57 45 52 25  |UST%=0...#. WER%|
00006540  20 8c 20 f2 6b 69 6c 6c  66 3a 46 55 53 45 25 3d  | . .killf:FUSE%=|
00006550  2d 31 3a e5 20 8d 44 5a  40 0d 1c 16 05 cb 0d 1c  |-1:. .DZ@.......|
00006560  20 05 e1 0d 1c 34 44 f4  20 2a 2a 20 54 68 69 73  | ....4D. ** This|
00006570  20 69 73 20 6a 75 6d 70  65 64 20 73 74 72 61 69  | is jumped strai|
00006580  67 68 74 20 74 6f 20 62  65 63 61 75 73 65 20 6f  |ght to because o|
00006590  66 20 65 72 72 6f 72 20  63 6f 6e 74 72 6f 6c 20  |f error control |
000065a0  28 66 6c 75 62 21 29 0d  1c 3e 71 41 3d bb 28 a4  |(flub!)..>qA=.(.|
000065b0  67 69 28 33 30 2c 34 32  29 29 3a 4b 25 3d 54 41  |gi(30,42)):K%=TA|
000065c0  53 25 2b 35 31 32 3a 4c  25 3d 30 3a 57 45 52 25  |S%+512:L%=0:WER%|
000065d0  3d a3 3a 45 52 25 3d a3  3a 46 24 3d a4 67 69 28  |=.:ER%=.:F$=.gi(|
000065e0  33 30 2c 32 37 29 3a 4d  47 25 3d bb 28 a4 67 69  |30,27):MG%=.(.gi|
000065f0  28 33 30 2c 35 29 29 3a  c8 99 20 22 48 6f 75 72  |(30,5)):.. "Hour|
00006600  67 6c 61 73 73 5f 4f 6e  22 3a f2 73 69 28 33 30  |glass_On":.si(30|
00006610  2c 33 36 2c 22 20 22 29  0d 1c 48 1b ee 20 85 20  |,36," ")..H.. . |
00006620  45 52 25 3d b9 3a 57 45  52 25 3d b9 3a e5 20 8d  |ER%=.:WER%=.:. .|
00006630  44 5c 5c 0d 1c 52 17 4b  25 21 28 4c 25 2a 34 29  |D\\..R.K%!(L%*4)|
00006640  3d a0 28 46 24 29 2a 4d  47 25 0d 1c 5c 39 e7 20  |=.(F$)*MG%..\9. |
00006650  45 52 25 3d b9 20 8c 20  f2 73 69 28 33 30 2c 33  |ER%=. . .si(30,3|
00006660  36 2c 22 45 72 72 6f 72  20 61 74 20 41 3d 22 2b  |6,"Error at A="+|
00006670  c3 28 41 29 29 3a 4b 25  21 4c 25 3d 30 3a 45 52  |.(A)):K%!L%=0:ER|
00006680  25 3d a3 0d 1c 66 2c 41  2b 3d bb 28 a4 67 69 28  |%=...f,A+=.(.gi(|
00006690  33 30 2c 31 31 29 29 3a  4c 25 2b 3d 31 3a e7 20  |30,11)):L%+=1:. |
000066a0  4c 25 3c 36 31 38 20 8c  20 e5 20 8d 44 52 5c 0d  |L%<618 . . .DR\.|
000066b0  1c 70 0f ee 20 85 20 f2  6d 61 6b 65 72 72 0d 1c  |.p.. . .makerr..|
000066c0  7a 1d e7 20 57 45 25 3d  32 20 8c 20 e5 20 8d 44  |z.. WE%=2 . . .D|
000066d0  44 6f 20 8b 20 e5 20 8d  64 64 5b 0d 1c 8e 14 dd  |Do . . .dd[.....|
000066e0  f2 63 6f 6e 74 72 61 73  74 28 f8 20 4c 25 29 0d  |.contrast(. L%).|
000066f0  1c 98 1a e7 20 43 4f 4e  4c 25 3e 43 4f 4e 48 25  |.... CONL%>CONH%|
00006700  20 8c 20 e5 20 8d 74 76  5c 0d 1c a2 30 e7 20 4c  | . . .tv\...0. L|
00006710  25 3c 3d 43 4f 4e 4c 25  20 8c 20 4c 25 3d 30 3a  |%<=CONL% . L%=0:|
00006720  e1 20 8b 20 e7 20 4c 25  3e 3d 43 4f 4e 48 25 20  |. . . L%>=CONH% |
00006730  8c 20 4c 25 3d 31 35 3a  e1 0d 1c ac 2e 4b 25 3d  |. L%=15:.....K%=|
00006740  4c 25 2d 43 4f 4e 4c 25  3a 49 25 3d 43 4f 4e 48  |L%-CONL%:I%=CONH|
00006750  25 2d 43 4f 4e 4c 25 3a  4c 25 3d 28 4b 25 2f 49  |%-CONL%:L%=(K%/I|
00006760  25 29 2a 31 35 3a e1 0d  1c b6 1a e7 20 43 4f 4e  |%)*15:...... CON|
00006770  4c 25 3d 43 4f 4e 48 25  20 8c 20 e5 20 8d 64 54  |L%=CONH% . . .dT|
00006780  5c 0d 1c c0 31 e7 20 4c  25 3c 3d 43 4f 4e 48 25  |\...1. L%<=CONH%|
00006790  20 8c 20 4c 25 3d 31 35  3a e1 20 8b 20 e7 20 4c  | . L%=15:. . . L|
000067a0  25 3e 3d 43 4f 4e 4c 25  20 8c 20 4c 25 3d 31 35  |%>=CONL% . L%=15|
000067b0  3a e1 0d 1c ca 33 4b 25  3d 4c 25 2d 43 4f 4e 48  |:....3K%=L%-CONH|
000067c0  25 3a 49 25 3d 43 4f 4e  4c 25 2d 43 4f 4e 48 25  |%:I%=CONL%-CONH%|
000067d0  3a 4c 25 3d 31 35 2d 28  28 4b 25 2f 49 25 29 2a  |:L%=15-((K%/I%)*|
000067e0  31 35 29 3a e1 0d 1c d4  1d e7 20 4c 25 3c 43 4f  |15):...... L%<CO|
000067f0  4e 4c 25 20 8c 20 4c 25  3d 30 20 8b 20 4c 25 3d  |NL% . L%=0 . L%=|
00006800  31 35 0d 1c de 05 e1 0d  1c f2 d7 dd f2 73 75 70  |15...........sup|
00006810  69 78 74 72 61 6e 73 3a  f2 73 77 61 70 63 6f 72  |ixtrans:.swapcor|
00006820  6e 73 3a 46 4d 49 4e 58  25 3d 58 25 28 30 29 3a  |ns:FMINX%=X%(0):|
00006830  46 4d 49 4e 59 25 3d 59  25 28 30 29 3a 46 4d 41  |FMINY%=Y%(0):FMA|
00006840  58 58 25 3d 4f 58 25 3a  46 4d 41 58 59 25 3d 4f  |XX%=OX%:FMAXY%=O|
00006850  59 25 3a c8 99 20 22 48  6f 75 72 67 6c 61 73 73  |Y%:.. "Hourglass|
00006860  5f 4f 6e 22 3a 21 56 41  52 53 3d 50 49 43 25 3a  |_On":!VARS=PIC%:|
00006870  56 41 52 53 21 34 3d 50  49 43 25 3a 56 41 52 53  |VARS!4=PIC%:VARS|
00006880  21 38 3d 58 25 28 30 29  3a 56 41 52 53 21 31 32  |!8=X%(0):VARS!12|
00006890  3d 59 25 28 30 29 3a 56  41 52 53 21 31 36 3d 4f  |=Y%(0):VARS!16=O|
000068a0  58 25 3a 56 41 52 53 21  32 30 3d 4f 59 25 3a 56  |X%:VARS!20=OY%:V|
000068b0  41 52 53 21 32 34 3d 54  52 41 53 50 25 3a 56 41  |ARS!24=TRASP%:VA|
000068c0  52 53 21 32 38 3d 42 54  43 25 3a 56 41 52 53 21  |RS!28=BTC%:VARS!|
000068d0  33 32 3d 54 52 41 4e 53  54 41 42 25 3a e1 0d 1d  |32=TRANSTAB%:...|
000068e0  06 b3 dd f2 70 72 6f 74  62 6f 78 28 43 58 25 2c  |....protbox(CX%,|
000068f0  43 59 25 29 3a f2 65 6f  63 3a 52 25 3d 52 4f 54  |CY%):.eoc:R%=ROT|
00006900  25 3a f2 72 6f 74 70 6f  69 6e 74 28 46 4d 49 4e  |%:.rotpoint(FMIN|
00006910  58 25 2c 46 4d 49 4e 59  25 2c 52 25 2c 58 31 25  |X%,FMINY%,R%,X1%|
00006920  2c 59 31 25 29 3a f2 72  6f 74 70 6f 69 6e 74 28  |,Y1%):.rotpoint(|
00006930  46 4d 41 58 58 25 2c 46  4d 49 4e 59 25 2c 52 25  |FMAXX%,FMINY%,R%|
00006940  2c 58 32 25 2c 59 32 25  29 3a f2 72 6f 74 70 6f  |,X2%,Y2%):.rotpo|
00006950  69 6e 74 28 46 4d 41 58  58 25 2c 46 4d 41 58 59  |int(FMAXX%,FMAXY|
00006960  25 2c 52 25 2c 58 33 25  2c 59 33 25 29 3a f2 72  |%,R%,X3%,Y3%):.r|
00006970  6f 74 70 6f 69 6e 74 28  46 4d 49 4e 58 25 2c 46  |otpoint(FMINX%,F|
00006980  4d 41 58 59 25 2c 52 25  2c 58 34 25 2c 59 34 25  |MAXY%,R%,X4%,Y4%|
00006990  29 0d 1d 10 51 f2 72 6f  74 70 6f 69 6e 74 28 30  |)...Q.rotpoint(0|
000069a0  2c 28 46 4d 41 58 59 25  81 33 29 2a 32 2c 52 25  |,(FMAXY%.3)*2,R%|
000069b0  2c 4d 58 31 25 2c 4d 59  31 25 29 3a f2 72 6f 74  |,MX1%,MY1%):.rot|
000069c0  70 6f 69 6e 74 28 30 2c  28 46 4d 41 58 59 25 81  |point(0,(FMAXY%.|
000069d0  33 29 2a 34 2c 52 25 2c  4d 58 32 25 2c 4d 59 32  |3)*4,R%,MX2%,MY2|
000069e0  25 29 0d 1d 1a 27 58 31  25 2b 3d 43 58 25 3a 58  |%)...'X1%+=CX%:X|
000069f0  32 25 2b 3d 43 58 25 3a  58 33 25 2b 3d 43 58 25  |2%+=CX%:X3%+=CX%|
00006a00  3a 58 34 25 2b 3d 43 58  25 0d 1d 24 27 59 31 25  |:X4%+=CX%..$'Y1%|
00006a10  2b 3d 43 59 25 3a 59 32  25 2b 3d 43 59 25 3a 59  |+=CY%:Y2%+=CY%:Y|
00006a20  33 25 2b 3d 43 59 25 3a  59 34 25 2b 3d 43 59 25  |3%+=CY%:Y4%+=CY%|
00006a30  0d 1d 2e 3a f0 34 2c 58  31 25 2c 59 31 25 3a f0  |...:.4,X1%,Y1%:.|
00006a40  35 2c 58 32 25 2c 59 32  25 3a f0 35 2c 58 33 25  |5,X2%,Y2%:.5,X3%|
00006a50  2c 59 33 25 3a f0 35 2c  58 34 25 2c 59 34 25 3a  |,Y3%:.5,X4%,Y4%:|
00006a60  f0 35 2c 58 31 25 2c 59  31 25 0d 1d 38 29 86 20  |.5,X1%,Y1%..8). |
00006a70  4d 58 31 25 2b 43 58 25  2c 4d 59 31 25 2b 43 59  |MX1%+CX%,MY1%+CY|
00006a80  25 2c 4d 58 32 25 2b 43  58 25 2c 4d 59 32 25 2b  |%,MX2%+CX%,MY2%+|
00006a90  43 59 25 0d 1d 42 05 e1  0d 1d 56 28 dd f2 72 6f  |CY%..B....V(..ro|
00006aa0  74 70 6f 69 6e 74 28 52  30 25 2c 52 31 25 2c 52  |tpoint(R0%,R1%,R|
00006ab0  25 2c f8 20 52 50 58 25  2c f8 20 52 50 59 25 29  |%,. RPX%,. RPY%)|
00006ac0  0d 1d 60 9c 52 36 25 3d  28 52 4f 54 54 41 42 25  |..`.R6%=(ROTTAB%|
00006ad0  21 28 52 25 2a 34 29 29  3e 3e 31 32 3a 52 37 25  |!(R%*4))>>12:R7%|
00006ae0  3d 28 21 28 52 4f 54 54  41 42 25 2b 28 52 25 2a  |=(!(ROTTAB%+(R%*|
00006af0  34 29 2b 26 31 36 38 29  29 3e 3e 31 32 3a 52 38  |4)+&168))>>12:R8|
00006b00  25 3d 52 30 25 2a 52 36  25 3a 52 35 25 3d 52 31  |%=R0%*R6%:R5%=R1|
00006b10  25 2a 52 37 25 3a 52 38  25 2d 3d 52 35 25 3a 52  |%*R7%:R8%-=R5%:R|
00006b20  35 25 3d 52 31 25 2a 52  36 25 3a 52 31 25 3d 52  |5%=R1%*R6%:R1%=R|
00006b30  30 25 2a 52 37 25 3a 52  31 25 2b 3d 52 35 25 3a  |0%*R7%:R1%+=R5%:|
00006b40  52 50 58 25 3d 52 31 25  3e 3e 31 38 3a 52 50 59  |RPX%=R1%>>18:RPY|
00006b50  25 3d 2d 28 52 38 25 3e  3e 31 38 29 0d 1d 6a 05  |%=-(R8%>>18)..j.|
00006b60  e1 0d 1d 7e 13 dd a4 70  65 72 63 28 57 48 25 2c  |...~...perc(WH%,|
00006b70  49 48 25 29 0d 1d 88 32  49 24 3d a4 67 69 28 57  |IH%)...2I$=.gi(W|
00006b80  48 25 2c 49 48 25 29 3a  e7 20 c2 49 24 2c 31 29  |H%,IH%):. .I$,1)|
00006b90  3d 22 25 22 20 8c 20 49  24 3d c0 49 24 2c a9 28  |="%" . I$=.I$,.(|
00006ba0  49 24 29 2d 31 29 0d 1d  92 0a 3d bb 28 49 24 29  |I$)-1)....=.(I$)|
00006bb0  0d 1d a6 13 dd f2 67 72  61 62 70 6f 6c 6c 28 46  |......grabpoll(F|
00006bc0  54 25 29 0d 1d b0 98 e7  20 46 55 53 54 25 3d 30  |T%)..... FUST%=0|
00006bd0  20 80 20 42 55 54 25 3c  3e 30 20 8c 20 f2 70 69  | . BUT%<>0 . .pi|
00006be0  63 70 6f 73 3a 58 25 28  30 29 3d 58 25 3a 59 25  |cpos:X%(0)=X%:Y%|
00006bf0  28 30 29 3d 59 25 3a 46  55 53 54 25 3d 31 3a 4f  |(0)=Y%:FUST%=1:O|
00006c00  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a f2 69 6e  |X%=X%:OY%=Y%:.in|
00006c10  70 69 63 3a f2 65 6f 63  3a c8 93 20 58 25 28 30  |pic:.eoc:.. X%(0|
00006c20  29 2c 59 25 28 30 29 2c  4f 58 25 2d 58 25 28 30  |),Y%(0),OX%-X%(0|
00006c30  29 2c 4f 59 25 2d 59 25  28 30 29 3a f2 6f 75 74  |),OY%-Y%(0):.out|
00006c40  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00006c50  69 6e 3a f2 6c 65 74 67  6f 3a e1 0d 1d ba 11 e7  |in:.letgo:......|
00006c60  20 46 55 53 54 25 3d 30  20 8c 20 e1 0d 1d c4 7b  | FUST%=0 . ....{|
00006c70  e7 20 42 55 54 25 3d 31  20 8c 20 f2 69 6e 70 69  |. BUT%=1 . .inpi|
00006c80  63 3a f2 65 6f 63 3a c8  93 20 58 25 28 30 29 2c  |c:.eoc:.. X%(0),|
00006c90  59 25 28 30 29 2c 4f 58  25 2d 58 25 28 30 29 2c  |Y%(0),OX%-X%(0),|
00006ca0  4f 59 25 2d 59 25 28 30  29 3a f2 70 69 63 70 6f  |OY%-Y%(0):.picpo|
00006cb0  73 3a 4f 58 25 3d 58 25  3a 4f 59 25 3d 59 25 3a  |s:OX%=X%:OY%=Y%:|
00006cc0  46 55 53 54 25 3d 30 3a  f2 6f 75 74 70 69 63 3a  |FUST%=0:.outpic:|
00006cd0  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 3a f2  |.quickdrawmain:.|
00006ce0  6c 65 74 67 6f 3a e1 0d  1d ce 30 e7 20 42 55 54  |letgo:....0. BUT|
00006cf0  25 3c 3e 34 20 84 20 28  4f 58 25 3d 58 25 28 30  |%<>4 . (OX%=X%(0|
00006d00  29 20 80 20 4f 59 25 3d  59 25 28 30 29 29 20 8c  |) . OY%=Y%(0)) .|
00006d10  20 e5 20 8d 54 68 5e 0d  1d d8 b4 f2 69 6e 70 69  | . .Th^.....inpi|
00006d20  63 3a f2 65 6f 63 3a c8  93 20 58 25 28 30 29 2c  |c:.eoc:.. X%(0),|
00006d30  59 25 28 30 29 2c 4f 58  25 2d 58 25 28 30 29 2c  |Y%(0),OX%-X%(0),|
00006d40  4f 59 25 2d 59 25 28 30  29 3a f2 70 69 63 70 6f  |OY%-Y%(0):.picpo|
00006d50  73 3a f2 73 70 62 75 66  28 a4 73 70 72 69 74 65  |s:.spbuf(.sprite|
00006d60  73 69 7a 65 28 58 25 2d  58 25 28 30 29 2c 59 25  |size(X%-X%(0),Y%|
00006d70  2d 59 25 28 30 29 2c 94  28 a4 68 69 67 68 28 38  |-Y%(0),.(.high(8|
00006d80  2c 31 34 29 29 29 29 3a  e7 20 51 25 20 8c 20 c8  |,14)))):. Q% . .|
00006d90  93 20 58 25 28 30 29 2c  59 25 28 30 29 2c 4f 58  |. X%(0),Y%(0),OX|
00006da0  25 2d 58 25 28 30 29 2c  4f 59 25 2d 59 25 28 30  |%-X%(0),OY%-Y%(0|
00006db0  29 3a f2 6f 75 74 70 69  63 3a f2 73 70 69 6e 69  |):.outpic:.spini|
00006dc0  74 3a f2 73 70 62 75 66  65 72 72 0d 1d e2 80 47  |t:.spbuferr....G|
00006dd0  52 4e 24 3d 22 47 52 41  42 22 3a c8 99 26 32 45  |RN$="GRAB":..&2E|
00006de0  2c 32 37 32 2c 53 50 42  55 46 25 2c 22 47 52 41  |,272,SPBUF%,"GRA|
00006df0  42 22 2c 2c 58 25 28 30  29 2c 59 25 28 30 29 2c  |B",,X%(0),Y%(0),|
00006e00  58 25 2c 59 25 3a e7 20  a4 68 69 67 68 28 38 2c  |X%,Y%:. .high(8,|
00006e10  31 34 29 20 8c 20 c8 99  26 32 45 2c 32 38 35 2c  |14) . ..&2E,285,|
00006e20  53 50 42 55 46 25 2c 22  47 52 41 42 22 3a 47 52  |SPBUF%,"GRAB":GR|
00006e30  41 42 4d 25 3d 38 3a f2  66 69 6c 6c 6d 61 73 6b  |ABM%=8:.fillmask|
00006e40  20 8b 20 47 52 41 42 4d  25 3d 30 0d 1d ec 27 47  | . GRABM%=0...'G|
00006e50  52 57 49 25 3d 94 28 58  25 2d 58 25 28 30 29 29  |RWI%=.(X%-X%(0))|
00006e60  3a 47 52 48 45 25 3d 94  28 59 25 2d 59 25 28 30  |:GRHE%=.(Y%-Y%(0|
00006e70  29 29 0d 1d f6 1c e7 20  58 25 3c 58 25 28 30 29  |))..... X%<X%(0)|
00006e80  20 8c 20 c8 94 20 58 25  28 30 29 2c 58 25 0d 1e  | . .. X%(0),X%..|
00006e90  00 1c e7 20 59 25 3c 59  25 28 30 29 20 8c 20 c8  |... Y%<Y%(0) . .|
00006ea0  94 20 59 25 28 30 29 2c  59 25 0d 1e 0a 3a e7 20  |. Y%(0),Y%...:. |
00006eb0  46 54 25 3d 31 20 8c 20  c8 99 26 32 45 2c 32 39  |FT%=1 . ..&2E,29|
00006ec0  30 2c 53 50 42 55 46 25  2c 22 47 52 41 42 22 2c  |0,SPBUF%,"GRAB",|
00006ed0  58 25 28 30 29 2c 59 25  28 30 29 2c 33 2b 47 52  |X%(0),Y%(0),3+GR|
00006ee0  41 42 4d 25 0d 1e 14 13  f2 70 67 72 61 62 28 58  |ABM%.....pgrab(X|
00006ef0  25 2c 59 25 2c 33 29 0d  1e 1e 39 4f 58 25 3d 58  |%,Y%,3)...9OX%=X|
00006f00  25 3a 4f 59 25 3d 59 25  3a f2 6f 75 74 70 69 63  |%:OY%=Y%:.outpic|
00006f10  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 3a  |:.quickdrawmain:|
00006f20  f2 6c 65 74 67 6f 3a 46  55 53 54 25 3d 32 3a e1  |.letgo:FUST%=2:.|
00006f30  0d 1e 28 21 f2 70 69 63  70 6f 73 3a e7 20 58 25  |..(!.picpos:. X%|
00006f40  3d 4f 58 25 20 80 20 59  25 3d 4f 59 25 20 8c 20  |=OX% . Y%=OY% . |
00006f50  e1 0d 1e 32 78 f2 69 6e  70 69 63 3a f2 65 6f 63  |...2x.inpic:.eoc|
00006f60  3a c8 93 20 58 25 28 30  29 2c 59 25 28 30 29 2c  |:.. X%(0),Y%(0),|
00006f70  4f 58 25 2d 58 25 28 30  29 2c 4f 59 25 2d 59 25  |OX%-X%(0),OY%-Y%|
00006f80  28 30 29 3a 4f 58 25 3d  58 25 3a 4f 59 25 3d 59  |(0):OX%=X%:OY%=Y|
00006f90  25 3a c8 93 20 58 25 28  30 29 2c 59 25 28 30 29  |%:.. X%(0),Y%(0)|
00006fa0  2c 58 25 2d 58 25 28 30  29 2c 59 25 2d 59 25 28  |,X%-X%(0),Y%-Y%(|
00006fb0  30 29 3a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |0):.outpic:.quic|
00006fc0  6b 64 72 61 77 6d 61 69  6e 0d 1e 3c 05 e1 0d 1e  |kdrawmain..<....|
00006fd0  50 0e dd f2 72 65 63 74  70 6f 6c 6c 0d 1e 5a 98  |P...rectpoll..Z.|
00006fe0  e7 20 46 55 53 54 25 3d  30 20 80 20 42 55 54 25  |. FUST%=0 . BUT%|
00006ff0  3c 3e 30 20 8c 20 f2 70  69 63 70 6f 73 3a 58 25  |<>0 . .picpos:X%|
00007000  28 30 29 3d 58 25 3a 59  25 28 30 29 3d 59 25 3a  |(0)=X%:Y%(0)=Y%:|
00007010  46 55 53 54 25 3d 31 3a  4f 58 25 3d 58 25 3a 4f  |FUST%=1:OX%=X%:O|
00007020  59 25 3d 59 25 3a f2 69  6e 70 69 63 3a f2 65 6f  |Y%=Y%:.inpic:.eo|
00007030  63 3a c8 93 20 58 25 28  30 29 2c 59 25 28 30 29  |c:.. X%(0),Y%(0)|
00007040  2c 4f 58 25 2d 58 25 28  30 29 2c 4f 59 25 2d 59  |,OX%-X%(0),OY%-Y|
00007050  25 28 30 29 3a f2 6f 75  74 70 69 63 3a f2 71 75  |%(0):.outpic:.qu|
00007060  69 63 6b 64 72 61 77 6d  61 69 6e 3a f2 6c 65 74  |ickdrawmain:.let|
00007070  67 6f 3a e1 0d 1e 64 11  e7 20 46 55 53 54 25 3d  |go:...d.. FUST%=|
00007080  30 20 8c 20 e1 0d 1e 6e  7b e7 20 42 55 54 25 3d  |0 . ...n{. BUT%=|
00007090  31 20 8c 20 f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |1 . .inpic:.eoc:|
000070a0  c8 93 20 58 25 28 30 29  2c 59 25 28 30 29 2c 4f  |.. X%(0),Y%(0),O|
000070b0  58 25 2d 58 25 28 30 29  2c 4f 59 25 2d 59 25 28  |X%-X%(0),OY%-Y%(|
000070c0  30 29 3a f2 70 69 63 70  6f 73 3a 4f 58 25 3d 58  |0):.picpos:OX%=X|
000070d0  25 3a 4f 59 25 3d 59 25  3a 46 55 53 54 25 3d 30  |%:OY%=Y%:FUST%=0|
000070e0  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
000070f0  72 61 77 6d 61 69 6e 3a  f2 6c 65 74 67 6f 3a e1  |rawmain:.letgo:.|
00007100  0d 1e 78 30 e7 20 42 55  54 25 3c 3e 34 20 84 20  |..x0. BUT%<>4 . |
00007110  28 4f 58 25 3d 58 25 28  30 29 20 80 20 4f 59 25  |(OX%=X%(0) . OY%|
00007120  3d 59 25 28 30 29 29 20  8c 20 e5 20 8d 74 6a 5e  |=Y%(0)) . . .tj^|
00007130  0d 1e 82 3a f2 69 6e 70  69 63 3a f2 65 6f 63 3a  |...:.inpic:.eoc:|
00007140  c8 93 20 58 25 28 30 29  2c 59 25 28 30 29 2c 4f  |.. X%(0),Y%(0),O|
00007150  58 25 2d 58 25 28 30 29  2c 4f 59 25 2d 59 25 28  |X%-X%(0),OY%-Y%(|
00007160  30 29 3a f2 70 69 63 70  6f 73 0d 1e 8c 1c e7 20  |0):.picpos..... |
00007170  58 25 3c 58 25 28 30 29  20 8c 20 c8 94 20 58 25  |X%<X%(0) . .. X%|
00007180  28 30 29 2c 58 25 0d 1e  96 1c e7 20 59 25 3c 59  |(0),X%..... Y%<Y|
00007190  25 28 30 29 20 8c 20 c8  94 20 59 25 28 30 29 2c  |%(0) . .. Y%(0),|
000071a0  59 25 0d 1e a0 39 4f 58  25 3d 58 25 3a 4f 59 25  |Y%...9OX%=X%:OY%|
000071b0  3d 59 25 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |=Y%:.outpic:.qui|
000071c0  63 6b 64 72 61 77 6d 61  69 6e 3a f2 6c 65 74 67  |ckdrawmain:.letg|
000071d0  6f 3a 46 55 53 54 25 3d  32 3a e1 0d 1e aa 21 f2  |o:FUST%=2:....!.|
000071e0  70 69 63 70 6f 73 3a e7  20 58 25 3d 4f 58 25 20  |picpos:. X%=OX% |
000071f0  80 20 59 25 3d 4f 59 25  20 8c 20 e1 0d 1e b4 78  |. Y%=OY% . ....x|
00007200  f2 69 6e 70 69 63 3a f2  65 6f 63 3a c8 93 20 58  |.inpic:.eoc:.. X|
00007210  25 28 30 29 2c 59 25 28  30 29 2c 4f 58 25 2d 58  |%(0),Y%(0),OX%-X|
00007220  25 28 30 29 2c 4f 59 25  2d 59 25 28 30 29 3a 4f  |%(0),OY%-Y%(0):O|
00007230  58 25 3d 58 25 3a 4f 59  25 3d 59 25 3a c8 93 20  |X%=X%:OY%=Y%:.. |
00007240  58 25 28 30 29 2c 59 25  28 30 29 2c 58 25 2d 58  |X%(0),Y%(0),X%-X|
00007250  25 28 30 29 2c 59 25 2d  59 25 28 30 29 3a f2 6f  |%(0),Y%-Y%(0):.o|
00007260  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
00007270  6d 61 69 6e 0d 1e be 05  e1 0d 1e d2 18 dd f2 70  |main...........p|
00007280  67 72 61 62 28 44 58 25  2c 44 59 25 2c 50 4c 25  |grab(DX%,DY%,PL%|
00007290  29 0d 1e dc 12 58 52 3d  47 52 58 4d 25 2f 47 52  |)....XR=GRXM%/GR|
000072a0  58 44 25 0d 1e e6 12 59  52 3d 47 52 59 4d 25 2f  |XD%....YR=GRYM%/|
000072b0  47 52 59 44 25 0d 1e f0  11 21 53 43 41 4c 45 25  |GRYD%....!SCALE%|
000072c0  3d 47 52 58 4d 25 0d 1e  fa 12 53 43 41 4c 45 25  |=GRXM%....SCALE%|
000072d0  21 34 3d 47 52 59 4d 25  0d 1f 04 12 53 43 41 4c  |!4=GRYM%....SCAL|
000072e0  45 25 21 38 3d 47 52 58  44 25 0d 1f 0e 13 53 43  |E%!8=GRXD%....SC|
000072f0  41 4c 45 25 21 31 32 3d  47 52 59 44 25 0d 1f 18  |ALE%!12=GRYD%...|
00007300  57 c8 99 26 32 45 2c 33  30 38 2c 53 50 42 55 46  |W..&2E,308,SPBUF|
00007310  25 2c 22 47 52 41 42 22  2c 44 58 25 2d 28 28 47  |%,"GRAB",DX%-((G|
00007320  52 57 49 25 20 81 20 32  29 2a 58 52 29 2c 44 59  |RWI% . 2)*XR),DY|
00007330  25 2d 28 28 47 52 48 45  25 20 81 20 32 29 2a 59  |%-((GRHE% . 2)*Y|
00007340  52 29 2c 50 4c 25 2b 47  52 41 42 4d 25 2c 53 43  |R),PL%+GRABM%,SC|
00007350  41 4c 45 25 0d 1f 22 05  e1 0d 1f 36 1a dd f2 70  |ALE%.."....6...p|
00007360  69 6d 70 6f 72 74 28 44  58 25 2c 44 59 25 2c 50  |import(DX%,DY%,P|
00007370  4c 25 29 0d 1f 40 21 58  52 3d 47 52 58 4d 25 2f  |L%)..@!XR=GRXM%/|
00007380  47 52 58 44 25 3a 59 52  3d 47 52 59 4d 25 2f 47  |GRXD%:YR=GRYM%/G|
00007390  52 59 44 25 0d 1f 4a 17  49 4f 25 21 32 30 3d 28  |RYD%..J.IO%!20=(|
000073a0  21 49 4f 25 29 2a 47 52  58 4d 25 0d 1f 54 18 49  |!IO%)*GRXM%..T.I|
000073b0  4f 25 21 32 34 3d 28 49  4f 25 21 34 29 2a 47 52  |O%!24=(IO%!4)*GR|
000073c0  59 4d 25 0d 1f 5e 18 49  4f 25 21 32 38 3d 28 49  |YM%..^.IO%!28=(I|
000073d0  4f 25 21 38 29 2a 47 52  58 44 25 0d 1f 68 19 49  |O%!8)*GRXD%..h.I|
000073e0  4f 25 21 33 32 3d 28 49  4f 25 21 31 32 29 2a 47  |O%!32=(IO%!12)*G|
000073f0  52 59 44 25 0d 1f 72 b1  e7 20 ac 20 47 52 4d 41  |RYD%..r.. . GRMA|
00007400  25 20 8c 20 c8 99 26 32  45 2c 33 30 38 2c 53 50  |% . ..&2E,308,SP|
00007410  42 55 46 25 2c 47 52 4e  24 2c 44 58 25 2d 28 28  |BUF%,GRN$,DX%-((|
00007420  49 4d 57 25 20 81 20 32  29 2a 58 52 29 2c 44 59  |IMW% . 2)*XR),DY|
00007430  25 2d 28 28 49 4d 48 25  20 81 20 32 29 2a 59 52  |%-((IMH% . 2)*YR|
00007440  29 2c 50 4c 25 2c 49 4f  25 2b 32 30 2c 49 4d 50  |),PL%,IO%+20,IMP|
00007450  54 25 20 8b 20 c8 99 26  32 45 2c 33 30 38 2c 53  |T% . ..&2E,308,S|
00007460  50 42 55 46 25 2c 47 52  4e 24 2c 44 58 25 2d 28  |PBUF%,GRN$,DX%-(|
00007470  28 49 4d 57 25 20 81 20  32 29 2a 58 52 29 2c 44  |(IMW% . 2)*XR),D|
00007480  59 25 2d 28 28 49 4d 48  25 20 81 20 32 29 2a 59  |Y%-((IMH% . 2)*Y|
00007490  52 29 2c 50 4c 25 2b 38  2c 49 4f 25 2b 32 30 2c  |R),PL%+8,IO%+20,|
000074a0  49 4d 50 54 25 0d 1f 7c  05 e1 0d 1f 90 1b dd f2  |IMPT%..|........|
000074b0  70 61 72 61 28 4c 54 25  2c 50 4c 25 2c 44 58 25  |para(LT%,PL%,DX%|
000074c0  2c 44 59 25 29 0d 1f 9a  22 e7 20 50 4c 25 3d 31  |,DY%)...". PL%=1|
000074d0  20 8c 20 f2 65 6c 69 70  28 26 37 35 2c 44 58 25  | . .elip(&75,DX%|
000074e0  2c 44 59 25 29 3a e1 0d  1f a4 0d e7 20 4c 54 25  |,DY%):...... LT%|
000074f0  3d 31 20 8c 0d 1f ae 1f  f2 6c 28 58 25 28 30 29  |=1 ......l(X%(0)|
00007500  2c 59 25 28 30 29 2c 58  25 28 31 29 2c 59 25 28  |,Y%(0),X%(1),Y%(|
00007510  31 29 29 0d 1f b8 1b f2  6c 28 58 25 28 31 29 2c  |1)).....l(X%(1),|
00007520  59 25 28 31 29 2c 44 58  25 2c 44 59 25 29 0d 1f  |Y%(1),DX%,DY%)..|
00007530  c2 25 f0 20 4c 49 54 59  25 2d 34 2c 58 25 28 30  |.%. LITY%-4,X%(0|
00007540  29 2d 58 25 28 31 29 2c  59 25 28 30 29 2d 59 25  |)-X%(1),Y%(0)-Y%|
00007550  28 31 29 0d 1f cc 17 f0  20 4c 49 54 59 25 2c 58  |(1)..... LITY%,X|
00007560  25 28 30 29 2c 59 25 28  30 29 0d 1f d6 05 cc 0d  |%(0),Y%(0)......|
00007570  1f e0 1d 86 20 58 25 28  30 29 2c 59 25 28 30 29  |.... X%(0),Y%(0)|
00007580  2c 58 25 28 31 29 2c 59  25 28 31 29 0d 1f ea 19  |,X%(1),Y%(1)....|
00007590  86 20 58 25 28 31 29 2c  59 25 28 31 29 2c 44 58  |. X%(1),Y%(1),DX|
000075a0  25 2c 44 59 25 0d 1f f4  1e f0 31 2c 58 25 28 30  |%,DY%.....1,X%(0|
000075b0  29 2d 58 25 28 31 29 2c  59 25 28 30 29 2d 59 25  |)-X%(1),Y%(0)-Y%|
000075c0  28 31 29 0d 1f fe 12 f0  35 2c 58 25 28 30 29 2c  |(1).....5,X%(0),|
000075d0  59 25 28 30 29 0d 20 08  05 cd 0d 20 12 05 e1 0d  |Y%(0). .... ....|
000075e0  20 26 17 dd f2 65 6c 69  70 28 50 4c 25 2c 44 58  | &...elip(PL%,DX|
000075f0  25 2c 44 59 25 29 0d 20  30 11 ec 20 58 25 28 30  |%,DY%). 0.. X%(0|
00007600  29 2c 59 25 28 30 29 0d  20 3a 11 ec 20 58 25 28  |),Y%(0). :.. X%(|
00007610  31 29 2c 59 25 28 31 29  0d 20 44 11 f0 20 50 4c  |1),Y%(1). D.. PL|
00007620  25 2c 44 58 25 2c 44 59  25 0d 20 4e 05 e1 0d 20  |%,DX%,DY%. N... |
00007630  62 16 dd f2 74 72 69 28  50 4c 25 2c 44 58 25 2c  |b...tri(PL%,DX%,|
00007640  44 59 25 29 0d 20 6c 94  e7 20 50 4c 25 3d 35 20  |DY%). l.. PL%=5 |
00007650  84 20 50 4c 25 3d 38 35  20 8c 20 f0 34 2c 44 58  |. PL%=85 . .4,DX|
00007660  25 2c 44 59 25 3a f0 20  35 2c 58 25 28 30 29 2c  |%,DY%:. 5,X%(0),|
00007670  59 25 28 30 29 3a f0 20  35 2c 58 25 28 31 29 2c  |Y%(0):. 5,X%(1),|
00007680  59 25 28 31 29 3a f0 20  50 4c 25 2c 44 58 25 2c  |Y%(1):. PL%,DX%,|
00007690  44 59 25 20 8b 20 f0 34  2c 44 58 25 2c 44 59 25  |DY% . .4,DX%,DY%|
000076a0  3a f0 20 4c 49 54 59 25  2c 58 25 28 30 29 2c 59  |:. LITY%,X%(0),Y|
000076b0  25 28 30 29 3a f0 20 4c  49 54 59 25 2c 58 25 28  |%(0):. LITY%,X%(|
000076c0  31 29 2c 59 25 28 31 29  3a f0 20 4c 49 54 59 25  |1),Y%(1):. LITY%|
000076d0  2c 44 58 25 2c 44 59 25  0d 20 76 05 e1 0d 20 8a  |,DX%,DY%. v... .|
000076e0  37 dd a4 64 69 73 74 28  44 58 25 2c 44 59 25 29  |7..dist(DX%,DY%)|
000076f0  3a 3d b6 28 28 28 44 58  25 2d 58 25 28 30 29 29  |:=.(((DX%-X%(0))|
00007700  5e 32 29 2b 28 28 44 59  25 2d 59 25 28 30 29 29  |^2)+((DY%-Y%(0))|
00007710  5e 32 29 29 0d 20 9e 56  dd f2 70 61 69 6e 74 62  |^2)). .V..paintb|
00007720  72 75 73 68 28 42 58 25  2c 42 59 25 29 3a c8 99  |rush(BX%,BY%):..|
00007730  26 32 45 2c 33 30 36 2c  42 52 55 53 48 25 2c c3  |&2E,306,BRUSH%,.|
00007740  28 53 45 4c 42 52 25 29  2c 42 58 25 2d 28 33 32  |(SELBR%),BX%-(32|
00007750  2a 58 52 29 2c 42 59 25  2d 28 33 32 2a 59 52 29  |*XR),BY%-(32*YR)|
00007760  2c 2c 53 43 41 4c 45 25  3a e1 0d 20 b2 45 dd f2  |,,SCALE%:.. .E..|
00007770  70 61 69 6e 74 62 72 75  73 68 32 28 42 58 25 2c  |paintbrush2(BX%,|
00007780  42 59 25 29 3a c8 99 26  32 45 2c 33 30 35 2c 42  |BY%):..&2E,305,B|
00007790  52 55 53 48 25 2c c3 28  53 45 4c 42 52 25 29 2c  |RUSH%,.(SELBR%),|
000077a0  42 58 25 2d 33 32 2c 42  59 25 2d 33 32 3a e1 0d  |BX%-32,BY%-32:..|
000077b0  20 c6 2c dd f2 6c 65 74  67 6f 3a 4c 45 47 4f 25  | .,..letgo:LEGO%|
000077c0  3d b9 3a e1 3a f5 3a c8  97 20 58 25 2c 59 25 2c  |=.:.:.:.. X%,Y%,|
000077d0  48 25 3a fd 20 48 25 3d  30 3a e1 0d 20 da 3c dd  |H%:. H%=0:.. .<.|
000077e0  f2 6b 69 6c 6c 66 3a 4c  41 4f 50 57 49 25 3d 2d  |.killf:LAOPWI%=-|
000077f0  31 3a e7 20 54 4b 48 25  3c 3e 2d 31 20 8c 20 f2  |1:. TKH%<>-1 . .|
00007800  69 63 6f 6e 6c 6f 28 33  32 2c 54 4b 48 25 29 3a  |iconlo(32,TKH%):|
00007810  54 4b 48 25 3d 2d 31 0d  20 e4 0e c8 8e 20 46 55  |TKH%=-1. .... FU|
00007820  53 45 25 20 ca 0d 20 ee  1b e7 20 46 55 53 45 25  |SE% .. ... FUSE%|
00007830  3c 3e 33 32 20 8c 20 f2  73 70 62 75 66 28 30 29  |<>32 . .spbuf(0)|
00007840  0d 21 02 04 0d 21 0c 69  c9 20 34 3a f2 63 6c 6f  |.!...!.i. 4:.clo|
00007850  73 65 77 69 6e 64 28 35  29 3a e7 20 46 55 53 54  |sewind(5):. FUST|
00007860  25 3e 30 20 8c 20 f2 69  6e 70 69 63 3a f2 70 61  |%>0 . .inpic:.pa|
00007870  69 6e 74 73 63 61 6c 65  3a f2 65 6f 72 62 61 63  |intscale:.eorbac|
00007880  6b 3a f2 70 61 69 6e 74  62 72 75 73 68 28 4f 58  |k:.paintbrush(OX|
00007890  25 2c 4f 59 25 29 3a f2  6f 75 74 70 69 63 3a f2  |%,OY%):.outpic:.|
000078a0  71 75 69 63 6b 64 72 61  77 6d 61 69 6e 0d 21 20  |quickdrawmain.! |
000078b0  04 0d 21 2a 4d c9 20 31  31 3a e7 20 46 55 53 54  |..!*M. 11:. FUST|
000078c0  25 3d 31 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=1 . .inpic:.eo|
000078d0  63 3a 86 20 58 25 28 30  29 2c 59 25 28 30 29 2c  |c:. X%(0),Y%(0),|
000078e0  4f 58 25 2c 4f 59 25 3a  f2 6f 75 74 70 69 63 3a  |OX%,OY%:.outpic:|
000078f0  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 0d 21  |.quickdrawmain.!|
00007900  34 45 e7 20 46 55 53 54  25 3d 32 20 8c 20 f2 69  |4E. FUST%=2 . .i|
00007910  6e 70 69 63 3a f2 65 6f  63 3a f2 65 6c 69 70 28  |npic:.eoc:.elip(|
00007920  26 43 35 2c 4f 58 25 2c  4f 59 25 29 3a f2 6f 75  |&C5,OX%,OY%):.ou|
00007930  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00007940  61 69 6e 0d 21 3e 4d c9  20 31 33 3a e7 20 46 55  |ain.!>M. 13:. FU|
00007950  53 54 25 3d 31 20 8c 20  f2 69 6e 70 69 63 3a f2  |ST%=1 . .inpic:.|
00007960  65 6f 63 3a 86 20 58 25  28 30 29 2c 59 25 28 30  |eoc:. X%(0),Y%(0|
00007970  29 2c 4f 58 25 2c 4f 59  25 3a f2 6f 75 74 70 69  |),OX%,OY%:.outpi|
00007980  63 3a f2 71 75 69 63 6b  64 72 61 77 6d 61 69 6e  |c:.quickdrawmain|
00007990  0d 21 48 45 e7 20 46 55  53 54 25 3d 32 20 8c 20  |.!HE. FUST%=2 . |
000079a0  f2 69 6e 70 69 63 3a f2  65 6f 63 3a f2 70 61 72  |.inpic:.eoc:.par|
000079b0  61 28 30 2c 30 2c 4f 58  25 2c 4f 59 25 29 3a f2  |a(0,0,OX%,OY%):.|
000079c0  6f 75 74 70 69 63 3a f2  71 75 69 63 6b 64 72 61  |outpic:.quickdra|
000079d0  77 6d 61 69 6e 0d 21 52  4d c9 20 31 36 3a e7 20  |wmain.!RM. 16:. |
000079e0  46 55 53 54 25 3d 31 20  8c 20 f2 69 6e 70 69 63  |FUST%=1 . .inpic|
000079f0  3a f2 65 6f 63 3a 86 20  58 25 28 30 29 2c 59 25  |:.eoc:. X%(0),Y%|
00007a00  28 30 29 2c 4f 58 25 2c  4f 59 25 3a f2 6f 75 74  |(0),OX%,OY%:.out|
00007a10  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00007a20  69 6e 0d 21 5c 45 e7 20  46 55 53 54 25 3d 32 20  |in.!\E. FUST%=2 |
00007a30  8c 20 f2 69 6e 70 69 63  3a f2 65 6f 63 3a f2 65  |. .inpic:.eoc:.e|
00007a40  6c 69 70 28 26 42 35 2c  4f 58 25 2c 4f 59 25 29  |lip(&B5,OX%,OY%)|
00007a50  3a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |:.outpic:.quickd|
00007a60  72 61 77 6d 61 69 6e 0d  21 66 11 c9 20 31 38 3a  |rawmain.!f.. 18:|
00007a70  f2 6b 69 6c 6c 5f 31 38  0d 21 70 11 c9 20 31 39  |.kill_18.!p.. 19|
00007a80  3a f2 6b 69 6c 6c 5f 31  39 0d 21 7a 11 c9 20 32  |:.kill_19.!z.. 2|
00007a90  30 3a f2 6b 69 6c 6c 5f  32 30 0d 21 84 11 c9 20  |0:.kill_20.!... |
00007aa0  32 31 3a f2 6b 69 6c 6c  5f 32 31 0d 21 8e 5a c9  |21:.kill_21.!.Z.|
00007ab0  20 32 32 3a e7 20 46 55  53 54 25 3d 31 20 8c 20  | 22:. FUST%=1 . |
00007ac0  f2 69 6e 70 69 63 3a f2  65 6f 63 3a c8 93 20 58  |.inpic:.eoc:.. X|
00007ad0  25 28 30 29 2c 59 25 28  30 29 2c 4f 58 25 2d 58  |%(0),Y%(0),OX%-X|
00007ae0  25 28 30 29 2c 4f 59 25  2d 59 25 28 30 29 3a f2  |%(0),OY%-Y%(0):.|
00007af0  6f 75 74 70 69 63 3a f2  71 75 69 63 6b 64 72 61  |outpic:.quickdra|
00007b00  77 6d 61 69 6e 0d 21 98  11 c9 20 32 33 3a f2 6b  |wmain.!... 23:.k|
00007b10  69 6c 6c 5f 32 33 0d 21  a2 11 c9 20 32 35 3a f2  |ill_23.!... 25:.|
00007b20  6b 69 6c 6c 5f 32 35 0d  21 ac 5a c9 20 32 37 3a  |kill_25.!.Z. 27:|
00007b30  e7 20 46 55 53 54 25 3d  31 20 8c 20 f2 69 6e 70  |. FUST%=1 . .inp|
00007b40  69 63 3a f2 65 6f 63 3a  c8 93 20 58 25 28 30 29  |ic:.eoc:.. X%(0)|
00007b50  2c 59 25 28 30 29 2c 4f  58 25 2d 58 25 28 30 29  |,Y%(0),OX%-X%(0)|
00007b60  2c 4f 59 25 2d 59 25 28  30 29 3a f2 6f 75 74 70  |,OY%-Y%(0):.outp|
00007b70  69 63 3a f2 71 75 69 63  6b 64 72 61 77 6d 61 69  |ic:.quickdrawmai|
00007b80  6e 0d 21 b6 5a c9 20 32  38 3a e7 20 46 55 53 54  |n.!.Z. 28:. FUST|
00007b90  25 3d 31 20 8c 20 f2 69  6e 70 69 63 3a f2 65 6f  |%=1 . .inpic:.eo|
00007ba0  63 3a c8 93 20 58 25 28  30 29 2c 59 25 28 30 29  |c:.. X%(0),Y%(0)|
00007bb0  2c 4f 58 25 2d 58 25 28  30 29 2c 4f 59 25 2d 59  |,OX%-X%(0),OY%-Y|
00007bc0  25 28 30 29 3a f2 6f 75  74 70 69 63 3a f2 71 75  |%(0):.outpic:.qu|
00007bd0  69 63 6b 64 72 61 77 6d  61 69 6e 0d 21 c0 6b c9  |ickdrawmain.!.k.|
00007be0  20 32 39 3a f2 63 6c 6f  73 65 77 69 6e 64 28 35  | 29:.closewind(5|
00007bf0  29 3a e7 20 46 55 53 54  25 3e 30 20 8c 20 f2 69  |):. FUST%>0 . .i|
00007c00  6e 70 69 63 3a f2 70 61  69 6e 74 73 63 61 6c 65  |npic:.paintscale|
00007c10  32 3a f2 65 6f 72 62 61  63 6b 3a f2 70 61 69 6e  |2:.eorback:.pain|
00007c20  74 62 72 75 73 68 28 4f  58 25 2c 4f 59 25 29 3a  |tbrush(OX%,OY%):|
00007c30  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00007c40  61 77 6d 61 69 6e 0d 21  ca 6b c9 20 33 30 3a f2  |awmain.!.k. 30:.|
00007c50  63 6c 6f 73 65 77 69 6e  64 28 35 29 3a e7 20 46  |closewind(5):. F|
00007c60  55 53 54 25 3e 30 20 8c  20 f2 69 6e 70 69 63 3a  |UST%>0 . .inpic:|
00007c70  f2 70 61 69 6e 74 73 63  61 6c 65 32 3a f2 65 6f  |.paintscale2:.eo|
00007c80  72 62 61 63 6b 3a f2 70  61 69 6e 74 62 72 75 73  |rback:.paintbrus|
00007c90  68 28 4f 58 25 2c 4f 59  25 29 3a f2 6f 75 74 70  |h(OX%,OY%):.outp|
00007ca0  69 63 3a f2 71 75 69 63  6b 64 72 61 77 6d 61 69  |ic:.quickdrawmai|
00007cb0  6e 0d 21 d4 4e c9 20 33  32 3a f2 72 65 73 74 70  |n.!.N. 32:.restp|
00007cc0  69 63 3a f2 66 6f 72 63  65 64 72 61 77 6d 61 69  |ic:.forcedrawmai|
00007cd0  6e 3a f2 63 6c 6f 73 65  77 69 6e 64 28 31 34 29  |n:.closewind(14)|
00007ce0  3a f2 73 70 69 6e 69 74  3a e7 20 46 4f 4e 54 25  |:.spinit:. FONT%|
00007cf0  3c 3e 30 20 8c 20 f2 6c  6f 73 65 66 6f 6e 74 0d  |<>0 . .losefont.|
00007d00  21 de 14 c9 20 33 31 3a  e7 20 47 52 54 59 25 3d  |!... 31:. GRTY%=|
00007d10  31 20 8c 0d 21 e8 55 e7  20 46 55 53 54 25 3d 31  |1 ..!.U. FUST%=1|
00007d20  20 8c 20 f2 69 6e 70 69  63 3a f2 65 6f 63 3a c8  | . .inpic:.eoc:.|
00007d30  93 20 58 25 28 30 29 2c  59 25 28 30 29 2c 4f 58  |. X%(0),Y%(0),OX|
00007d40  25 2d 58 25 28 30 29 2c  4f 59 25 2d 59 25 28 30  |%-X%(0),OY%-Y%(0|
00007d50  29 3a f2 6f 75 74 70 69  63 3a f2 71 75 69 63 6b  |):.outpic:.quick|
00007d60  64 72 61 77 6d 61 69 6e  0d 21 f2 05 cd 0d 21 fc  |drawmain.!....!.|
00007d70  71 c9 20 33 33 3a f2 63  6c 6f 73 65 77 69 6e 64  |q. 33:.closewind|
00007d80  28 31 38 29 3a f2 73 70  69 6e 69 74 3a e7 20 46  |(18):.spinit:. F|
00007d90  55 53 54 25 3d 31 20 8c  20 f2 69 6e 70 69 63 3a  |UST%=1 . .inpic:|
00007da0  f2 65 6f 63 3a c8 93 20  58 25 28 30 29 2c 59 25  |.eoc:.. X%(0),Y%|
00007db0  28 30 29 2c 4f 58 25 2d  58 25 28 30 29 2c 4f 59  |(0),OX%-X%(0),OY|
00007dc0  25 2d 59 25 28 30 29 3a  f2 6f 75 74 70 69 63 3a  |%-Y%(0):.outpic:|
00007dd0  f2 71 75 69 63 6b 64 72  61 77 6d 61 69 6e 0d 22  |.quickdrawmain."|
00007de0  06 46 c9 20 33 34 3a e7  20 46 55 53 54 25 3d 31  |.F. 34:. FUST%=1|
00007df0  20 8c 20 f2 69 6e 70 69  63 3a f2 70 69 6d 70 6f  | . .inpic:.pimpo|
00007e00  72 74 28 4f 58 25 2c 4f  59 25 2c 33 29 3a f2 6f  |rt(OX%,OY%,3):.o|
00007e10  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
00007e20  6d 61 69 6e 0d 22 10 19  f2 63 6c 6f 73 65 77 69  |main."...closewi|
00007e30  6e 64 28 38 29 3a f2 73  70 69 6e 69 74 0d 22 1a  |nd(8):.spinit.".|
00007e40  22 c9 20 33 35 3a e7 20  46 55 53 54 25 3c 32 20  |". 35:. FUST%<2 |
00007e50  8c 20 f2 63 6c 6f 73 65  77 69 6e 64 28 38 29 0d  |. .closewind(8).|
00007e60  22 24 55 e7 20 46 55 53  54 25 3d 31 20 8c 20 f2  |"$U. FUST%=1 . .|
00007e70  69 6e 70 69 63 3a f2 65  6f 63 3a c8 93 20 58 25  |inpic:.eoc:.. X%|
00007e80  28 30 29 2c 59 25 28 30  29 2c 4f 58 25 2d 58 25  |(0),Y%(0),OX%-X%|
00007e90  28 30 29 2c 4f 59 25 2d  59 25 28 30 29 3a f2 6f  |(0),OY%-Y%(0):.o|
00007ea0  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
00007eb0  6d 61 69 6e 0d 22 2e 1d  e7 20 46 55 53 54 25 3d  |main."... FUST%=|
00007ec0  33 20 8c 20 f2 63 6c 6f  73 65 77 69 6e 64 28 37  |3 . .closewind(7|
00007ed0  29 0d 22 38 51 c9 20 33  36 3a e7 20 46 55 53 54  |)."8Q. 36:. FUST|
00007ee0  25 3c 3e 30 20 8c 20 f2  69 6e 70 69 63 3a f2 65  |%<>0 . .inpic:.e|
00007ef0  6f 63 3a c8 93 20 4f 58  25 2c 4f 59 25 2c 46 52  |oc:.. OX%,OY%,FR|
00007f00  57 25 2a 32 2c 46 52 48  25 2a 34 3a f2 6f 75 74  |W%*2,FRH%*4:.out|
00007f10  70 69 63 3a f2 71 75 69  63 6b 64 72 61 77 6d 61  |pic:.quickdrawma|
00007f20  69 6e 0d 22 4c 11 c9 20  33 38 3a f2 6b 69 6c 6c  |in."L.. 38:.kill|
00007f30  5f 33 38 0d 22 56 11 c9  20 33 39 3a f2 6b 69 6c  |_38."V.. 39:.kil|
00007f40  6c 5f 33 39 0d 22 60 11  c9 20 34 30 3a f2 6b 69  |l_39."`.. 40:.ki|
00007f50  6c 6c 5f 34 30 0d 22 6a  11 c9 20 34 31 3a f2 6b  |ll_40."j.. 41:.k|
00007f60  69 6c 6c 5f 34 31 0d 22  74 1d c9 20 34 32 3a f2  |ill_41."t.. 42:.|
00007f70  63 6c 6f 73 65 77 69 6e  64 28 32 35 29 3a f2 6d  |closewind(25):.m|
00007f80  65 6f 63 0d 22 7e 11 c9  20 34 33 3a f2 6b 69 6c  |eoc."~.. 43:.kil|
00007f90  6c 5f 34 33 0d 22 88 11  c9 20 34 34 3a f2 6b 69  |l_43."... 44:.ki|
00007fa0  6c 6c 5f 34 34 0d 22 9c  04 0d 22 a6 1d c9 20 34  |ll_44."..."... 4|
00007fb0  37 3a f2 63 6c 6f 73 65  77 69 6e 64 28 32 39 29  |7:.closewind(29)|
00007fc0  3a f2 6d 65 6f 63 0d 22  b0 1d c9 20 34 38 3a f2  |:.meoc."... 48:.|
00007fd0  63 6c 6f 73 65 77 69 6e  64 28 33 30 29 3a f2 6d  |closewind(30):.m|
00007fe0  65 6f 63 0d 22 ba 05 cb  0d 22 c4 15 f2 77 69 6e  |eoc."...."...win|
00007ff0  64 6e 61 6d 65 28 32 2c  50 49 43 24 29 0d 22 ce  |dname(2,PIC$).".|
00008000  05 e1 0d 22 e2 64 dd f2  6d 65 6f 63 3a f2 73 70  |...".d..meoc:.sp|
00008010  69 6e 69 74 3a e7 20 46  55 53 54 25 3d 31 20 8c  |init:. FUST%=1 .|
00008020  20 f2 69 6e 70 69 63 3a  f2 65 6f 63 3a c8 93 20  | .inpic:.eoc:.. |
00008030  58 25 28 30 29 2c 59 25  28 30 29 2c 4f 58 25 2d  |X%(0),Y%(0),OX%-|
00008040  58 25 28 30 29 2c 4f 59  25 2d 59 25 28 30 29 3a  |X%(0),OY%-Y%(0):|
00008050  f2 6f 75 74 70 69 63 3a  f2 71 75 69 63 6b 64 72  |.outpic:.quickdr|
00008060  61 77 6d 61 69 6e 0d 22  ec 05 e1 0d 23 00 18 dd  |awmain."....#...|
00008070  f2 65 6f 63 3a e6 33 2c  36 33 20 c8 9c 20 31 39  |.eoc:.3,63 .. 19|
00008080  32 3a e1 0d 23 14 1d dd  f2 65 6f 72 62 61 63 6b  |2:..#....eorback|
00008090  3a e6 33 2c 31 39 31 20  c8 9c 20 31 39 32 3a e1  |:.3,191 .. 192:.|
000080a0  0d 23 28 0d dd f2 70 69  63 6b 63 6f 6c 0d 23 32  |.#(...pickcol.#2|
000080b0  4b 58 4f 46 25 3d 21 42  4c 4b 25 3a 59 4f 46 25  |KXOF%=!BLK%:YOF%|
000080c0  3d 42 4c 4b 25 21 34 3a  f2 73 63 72 65 65 6e 74  |=BLK%!4:.screent|
000080d0  6f 77 6f 72 6b 28 48 41  4e 44 25 28 33 29 2c 20  |owork(HAND%(3), |
000080e0  58 4f 46 25 2c 59 4f 46  25 29 3a 59 4f 46 25 3d  |XOF%,YOF%):YOF%=|
000080f0  32 32 38 2b 59 4f 46 25  0d 23 3c 19 e7 20 58 4f  |228+YOF%.#<.. XO|
00008100  46 25 3e 37 36 36 20 8c  20 58 4f 46 25 3d 37 36  |F%>766 . XOF%=76|
00008110  36 0d 23 46 19 e7 20 59  4f 46 25 3e 32 32 30 20  |6.#F.. YOF%>220 |
00008120  8c 20 59 4f 46 25 3d 32  32 30 0d 23 50 64 e7 20  |. YOF%=220.#Pd. |
00008130  4d 4f 55 42 25 3d 34 20  8c 20 43 4f 4c 25 3d 28  |MOUB%=4 . COL%=(|
00008140  58 4f 46 25 20 81 20 32  34 29 2b 28 28 59 4f 46  |XOF% . 24)+((YOF|
00008150  25 20 81 20 32 38 29 2a  33 32 29 20 8b 20 e7 20  |% . 28)*32) . . |
00008160  4d 4f 55 42 25 3d 31 20  8c 20 f2 74 72 61 73 70  |MOUB%=1 . .trasp|
00008170  28 28 58 4f 46 25 20 81  20 32 34 29 2b 28 28 59  |((XOF% . 24)+((Y|
00008180  4f 46 25 20 81 20 32 38  29 2a 33 32 29 29 0d 23  |OF% . 28)*32)).#|
00008190  5a 17 f2 66 6f 72 63 65  64 72 61 77 70 61 6c 28  |Z..forcedrawpal(|
000081a0  50 41 4c 25 29 0d 23 64  05 e1 0d 23 78 10 dd f2  |PAL%).#d...#x...|
000081b0  74 62 61 63 6b 63 6c 69  63 6b 0d 23 82 35 42 4c  |tbackclick.#.5BL|
000081c0  4b 25 21 38 3d 48 41 4e  44 25 28 31 35 29 3a c8  |K%!8=HAND%(15):.|
000081d0  99 20 22 57 69 6d 70 5f  47 65 74 57 69 6e 64 6f  |. "Wimp_GetWindo|
000081e0  77 53 74 61 74 65 22 2c  2c 42 4c 4b 25 2b 38 0d  |wState",,BLK%+8.|
000081f0  23 8c 30 58 4f 46 25 3d  28 21 42 4c 4b 25 29 2d  |#.0XOF%=(!BLK%)-|
00008200  28 42 4c 4b 25 21 31 32  29 3a e7 20 58 4f 46 25  |(BLK%!12):. XOF%|
00008210  3e 37 36 36 20 8c 20 58  4f 46 25 3d 37 36 36 0d  |>766 . XOF%=766.|
00008220  23 96 31 59 4f 46 25 3d  28 42 4c 4b 25 21 34 29  |#.1YOF%=(BLK%!4)|
00008230  2d 28 42 4c 4b 25 21 31  36 29 3a e7 20 59 4f 46  |-(BLK%!16):. YOF|
00008240  25 3e 32 32 30 20 8c 20  59 4f 46 25 3d 32 32 30  |%>220 . YOF%=220|
00008250  0d 23 a0 27 46 4f 4e 54  42 25 3d 28 58 4f 46 25  |.#.'FONTB%=(XOF%|
00008260  20 81 20 32 34 29 2b 28  28 59 4f 46 25 20 81 20  | . 24)+((YOF% . |
00008270  32 38 29 2a 33 32 29 0d  23 aa 13 f2 66 6f 72 63  |28)*32).#...forc|
00008280  65 64 72 61 77 74 62 61  63 6b 0d 23 b4 05 e1 0d  |edrawtback.#....|
00008290  23 c8 0c dd f2 70 69 63  70 6f 73 0d 23 d2 1c 53  |#....picpos.#..S|
000082a0  43 52 58 25 3d 21 42 4c  4b 25 3a 53 43 52 59 25  |CRX%=!BLK%:SCRY%|
000082b0  3d 42 4c 4b 25 21 34 0d  23 dc 34 42 4c 4b 25 21  |=BLK%!4.#.4BLK%!|
000082c0  38 3d 48 41 4e 44 25 28  32 29 3a c8 99 20 22 57  |8=HAND%(2):.. "W|
000082d0  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
000082e0  74 65 22 2c 2c 42 4c 4b  25 2b 38 0d 23 e6 2e 58  |te",,BLK%+8.#..X|
000082f0  25 3d 28 28 28 21 42 4c  4b 25 29 2d 28 42 4c 4b  |%=(((!BLK%)-(BLK|
00008300  25 21 31 32 29 29 2b 28  42 4c 4b 25 21 32 38 29  |%!12))+(BLK%!28)|
00008310  29 20 81 20 5a 4f 4f 4d  25 0d 23 f0 36 59 25 3d  |) . ZOOM%.#.6Y%=|
00008320  31 30 32 34 2d 28 28 28  28 42 4c 4b 25 21 32 34  |1024-((((BLK%!24|
00008330  29 2d 28 42 4c 4b 25 21  34 29 29 2d 28 42 4c 4b  |)-(BLK%!4))-(BLK|
00008340  25 21 33 32 29 29 20 81  20 5a 4f 4f 4d 25 29 0d  |%!32)) . ZOOM%).|
00008350  23 fa 11 e7 20 58 25 3c  30 20 8c 20 58 25 3d 30  |#... X%<0 . X%=0|
00008360  0d 24 04 17 e7 20 58 25  3e 31 32 37 39 20 8c 20  |.$... X%>1279 . |
00008370  58 25 3d 31 32 37 39 0d  24 0e 11 e7 20 59 25 3c  |X%=1279.$... Y%<|
00008380  30 20 8c 20 59 25 3d 30  0d 24 18 17 e7 20 59 25  |0 . Y%=0.$... Y%|
00008390  3e 31 30 32 33 20 8c 20  59 25 3d 31 30 32 33 0d  |>1023 . Y%=1023.|
000083a0  24 22 11 e7 20 ac 20 47  52 4c 4f 25 20 8c 20 e1  |$".. . GRLO% . .|
000083b0  0d 24 2c 19 58 4f 46 25  3d 28 47 52 49 57 49 25  |.$,.XOF%=(GRIWI%|
000083c0  2d 47 52 42 58 25 29 2a  32 0d 24 36 19 59 4f 46  |-GRBX%)*2.$6.YOF|
000083d0  25 3d 28 47 52 49 48 45  25 2d 47 52 42 59 25 29  |%=(GRIHE%-GRBY%)|
000083e0  2a 34 0d 24 40 15 58 25  2b 3d 58 4f 46 25 3a 59  |*4.$@.X%+=XOF%:Y|
000083f0  25 2b 3d 59 4f 46 25 0d  24 4a 29 58 25 3d 2d 58  |%+=YOF%.$J)X%=-X|
00008400  4f 46 25 2b 28 28 58 25  20 81 20 28 32 2a 47 52  |OF%+((X% . (2*GR|
00008410  49 57 49 25 29 29 2a 32  2a 47 52 49 57 49 25 29  |IWI%))*2*GRIWI%)|
00008420  0d 24 54 29 59 25 3d 2d  59 4f 46 25 2b 28 28 59  |.$T)Y%=-YOF%+((Y|
00008430  25 20 81 20 28 34 2a 47  52 49 48 45 25 29 29 2a  |% . (4*GRIHE%))*|
00008440  34 2a 47 52 49 48 45 25  29 0d 24 5e 05 e1 0d 24  |4*GRIHE%).$^...$|
00008450  72 12 dd f2 67 65 74 72  64 6f 72 28 57 45 25 29  |r...getrdor(WE%)|
00008460  0d 24 7c 34 57 4f 58 25  3d 42 4c 4b 25 21 34 2d  |.$|4WOX%=BLK%!4-|
00008470  42 4c 4b 25 21 32 30 3a  57 4f 59 25 3d 28 42 4c  |BLK%!20:WOY%=(BL|
00008480  4b 25 21 31 36 2d 42 4c  4b 25 21 32 34 29 2d 57  |K%!16-BLK%!24)-W|
00008490  45 25 3a e1 0d 24 90 15  dd f2 6f 70 65 6e 6d 61  |E%:..$....openma|
000084a0  69 6e 3a 4d 4f 50 25 3d  b9 0d 24 9a 7a 21 42 4c  |in:MOP%=..$.z!BL|
000084b0  4b 25 3d 48 41 4e 44 25  28 32 29 3a 42 4c 4b 25  |K%=HAND%(2):BLK%|
000084c0  21 34 3d 30 3a 42 4c 4b  25 21 38 3d 33 30 30 3a  |!4=0:BLK%!8=300:|
000084d0  42 4c 4b 25 21 31 32 3d  31 32 37 39 3a 42 4c 4b  |BLK%!12=1279:BLK|
000084e0  25 21 31 36 3d 31 30 32  33 3a 42 4c 4b 25 21 32  |%!16=1023:BLK%!2|
000084f0  30 3d 30 3a 42 4c 4b 25  21 32 34 3d 30 3a 42 4c  |0=0:BLK%!24=0:BL|
00008500  4b 25 21 32 38 3d 2d 31  3a c8 99 20 22 57 69 6d  |K%!28=-1:.. "Wim|
00008510  70 5f 4f 70 65 6e 57 69  6e 64 6f 77 22 2c 2c 42  |p_OpenWindow",,B|
00008520  4c 4b 25 0d 24 a4 05 e1  0d 24 b8 0d dd f2 6f 70  |LK%.$....$....op|
00008530  65 6e 70 61 6c 0d 24 c2  7b 21 42 4c 4b 25 3d 48  |enpal.$.{!BLK%=H|
00008540  41 4e 44 25 28 33 29 3a  42 4c 4b 25 21 34 3d 31  |AND%(3):BLK%!4=1|
00008550  30 30 3a 42 4c 4b 25 21  38 3d 33 30 30 3a 42 4c  |00:BLK%!8=300:BL|
00008560  4b 25 21 31 32 3d 31 32  37 39 3a 42 4c 4b 25 21  |K%!12=1279:BLK%!|
00008570  31 36 3d 36 30 30 3a 42  4c 4b 25 21 32 30 3d 30  |16=600:BLK%!20=0|
00008580  3a 42 4c 4b 25 21 32 34  3d 30 3a 42 4c 4b 25 21  |:BLK%!24=0:BLK%!|
00008590  32 38 3d 2d 31 3a c8 99  20 22 57 69 6d 70 5f 4f  |28=-1:.. "Wimp_O|
000085a0  70 65 6e 57 69 6e 64 6f  77 22 2c 2c 42 4c 4b 25  |penWindow",,BLK%|
000085b0  0d 24 cc 05 e1 0d 24 e0  29 dd f2 6f 70 65 6e 77  |.$....$.)..openw|
000085c0  69 6e 64 28 57 48 25 29  3a e7 20 57 48 25 3e 32  |ind(WH%):. WH%>2|
000085d0  20 8c 20 4c 41 4f 50 57  49 25 3d 57 48 25 0d 24  | . LAOPWI%=WH%.$|
000085e0  ea 33 21 42 4c 4b 25 3d  48 41 4e 44 25 28 57 48  |.3!BLK%=HAND%(WH|
000085f0  25 29 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 57  |%):.. "Wimp_GetW|
00008600  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 42 4c 4b  |indowState",,BLK|
00008610  25 0d 24 f4 29 42 4c 4b  25 21 32 38 3d 2d 31 3a  |%.$.)BLK%!28=-1:|
00008620  c8 99 20 22 57 69 6d 70  5f 4f 70 65 6e 57 69 6e  |.. "Wimp_OpenWin|
00008630  64 6f 77 22 2c 2c 42 4c  4b 25 0d 24 fe 05 e1 0d  |dow",,BLK%.$....|
00008640  25 12 14 dd f2 63 6c 6f  73 65 77 69 6e 64 28 57  |%....closewind(W|
00008650  48 25 29 0d 25 1c 30 21  42 4c 4b 25 3d 48 41 4e  |H%).%.0!BLK%=HAN|
00008660  44 25 28 57 48 25 29 3a  c8 99 20 22 57 69 6d 70  |D%(WH%):.. "Wimp|
00008670  5f 43 6c 6f 73 65 57 69  6e 64 6f 77 22 2c 2c 42  |_CloseWindow",,B|
00008680  4c 4b 25 0d 25 26 05 e1  0d 25 3a 0c dd f2 6f 70  |LK%.%&...%:...op|
00008690  6d 61 69 6e 0d 25 44 1e  c8 99 20 22 57 69 6d 70  |main.%D... "Wimp|
000086a0  5f 4f 70 65 6e 57 69 6e  64 6f 77 22 2c 2c 42 4c  |_OpenWindow",,BL|
000086b0  4b 25 0d 25 4e 05 e1 0d  25 62 13 dd f2 63 6c 6d  |K%.%N...%b...clm|
000086c0  61 69 6e 3a 4d 4f 50 25  3d a3 0d 25 6c 1f c8 99  |ain:MOP%=..%l...|
000086d0  20 22 57 69 6d 70 5f 43  6c 6f 73 65 57 69 6e 64  | "Wimp_CloseWind|
000086e0  6f 77 22 2c 2c 42 4c 4b  25 0d 25 76 05 e1 0d 25  |ow",,BLK%.%v...%|
000086f0  8a 0c dd f2 61 69 72 6e  6f 7a 0d 25 94 35 48 25  |....airnoz.%.5H%|
00008700  3d 2d 31 3a e3 4c 25 3d  32 31 20 b8 20 33 33 20  |=-1:.L%=21 . 33 |
00008710  88 20 32 3a e7 20 a4 68  69 67 68 28 34 2c 4c 25  |. 2:. .high(4,L%|
00008720  29 20 8c 20 48 25 3d 4c  25 3a 4c 25 3d 33 33 0d  |) . H%=L%:L%=33.|
00008730  25 9e 05 ed 0d 25 a8 0b  c8 8e 20 48 25 20 ca 0d  |%....%.... H% ..|
00008740  25 b2 14 c9 20 32 31 3a  58 52 3d 31 3a 59 52 3d  |%... 21:XR=1:YR=|
00008750  2e 32 35 0d 25 bc 13 c9  20 32 33 3a 58 52 3d 31  |.25.%... 23:XR=1|
00008760  3a 59 52 3d 2e 35 0d 25  c6 14 c9 20 32 35 3a 58  |:YR=.5.%... 25:X|
00008770  52 3d 31 3a 59 52 3d 2e  37 35 0d 25 d0 12 c9 20  |R=1:YR=.75.%... |
00008780  32 37 3a 58 52 3d 31 3a  59 52 3d 31 0d 25 da 14  |27:XR=1:YR=1.%..|
00008790  c9 20 32 39 3a 58 52 3d  2e 37 35 3a 59 52 3d 31  |. 29:XR=.75:YR=1|
000087a0  0d 25 e4 13 c9 20 33 31  3a 58 52 3d 2e 35 3a 59  |.%... 31:XR=.5:Y|
000087b0  52 3d 31 0d 25 ee 14 c9  20 33 33 3a 58 52 3d 2e  |R=1.%... 33:XR=.|
000087c0  32 35 3a 59 52 3d 31 0d  25 f8 05 cb 0d 26 02 05  |25:YR=1.%....&..|
000087d0  e1 0d 26 16 10 dd f2 70  61 69 6e 74 73 63 61 6c  |..&....paintscal|
000087e0  65 0d 26 20 10 21 53 43  41 4c 45 25 3d 42 58 4d  |e.& .!SCALE%=BXM|
000087f0  25 0d 26 2a 11 53 43 41  4c 45 25 21 34 3d 42 59  |%.&*.SCALE%!4=BY|
00008800  4d 25 0d 26 34 11 53 43  41 4c 45 25 21 38 3d 42  |M%.&4.SCALE%!8=B|
00008810  58 44 25 0d 26 3e 12 53  43 41 4c 45 25 21 31 32  |XD%.&>.SCALE%!12|
00008820  3d 42 59 44 25 0d 26 48  10 58 52 3d 42 58 4d 25  |=BYD%.&H.XR=BXM%|
00008830  2f 42 58 44 25 0d 26 52  10 59 52 3d 42 59 4d 25  |/BXD%.&R.YR=BYM%|
00008840  2f 42 59 44 25 0d 26 5c  05 e1 0d 26 70 11 dd f2  |/BYD%.&\...&p...|
00008850  70 61 69 6e 74 73 63 61  6c 65 32 0d 26 7a 0d 21  |paintscale2.&z.!|
00008860  53 43 41 4c 45 25 3d 31  0d 26 84 0e 53 43 41 4c  |SCALE%=1.&..SCAL|
00008870  45 25 21 34 3d 31 0d 26  8e 0e 53 43 41 4c 45 25  |E%!4=1.&..SCALE%|
00008880  21 38 3d 31 0d 26 98 0f  53 43 41 4c 45 25 21 31  |!8=1.&..SCALE%!1|
00008890  32 3d 31 0d 26 a2 08 58  52 3d 31 0d 26 ac 08 59  |2=1.&..XR=1.&..Y|
000088a0  52 3d 31 0d 26 b6 05 e1  0d 26 ca 0e dd f2 70 69  |R=1.&....&....pi|
000088b0  63 63 6c 69 63 6b 0d 26  d4 24 e7 20 4d 42 55 53  |cclick.&.$. MBUS|
000088c0  25 20 80 20 4d 4f 55 42  25 3c 3e 30 20 8c 20 e1  |% . MOUB%<>0 . .|
000088d0  20 8b 20 4d 42 55 53 25  3d a3 0d 26 de 0e c8 8e  | . MBUS%=..&....|
000088e0  20 46 55 53 45 25 20 ca  0d 26 e8 a2 c9 20 2d 31  | FUSE% ..&... -1|
000088f0  3a e7 20 4d 4f 55 42 25  3d 31 20 8c 20 f2 70 69  |:. MOUB%=1 . .pi|
00008900  63 70 6f 73 3a f2 69 6e  70 69 63 3a 43 4f 25 3d  |cpos:.inpic:CO%=|
00008910  b0 58 25 2c 59 25 29 3a  54 49 25 3d c8 9c 28 58  |.X%,Y%):TI%=..(X|
00008920  25 2c 59 25 29 3a e6 33  2c 36 33 20 c8 9c 20 31  |%,Y%):.3,63 .. 1|
00008930  39 32 3a f0 36 39 2c 34  30 30 2c 34 30 30 3a f0  |92:.69,400,400:.|
00008940  36 39 2c 34 30 30 2c 34  30 30 3a f2 6f 75 74 70  |69,400,400:.outp|
00008950  69 63 3a f2 74 72 61 73  70 28 a4 66 69 6e 64 70  |ic:.trasp(.findp|
00008960  61 6c 65 6e 74 28 43 4f  25 2c 54 49 25 29 29 3a  |alent(CO%,TI%)):|
00008970  f2 66 6f 72 63 65 64 72  61 77 70 61 6c 28 50 41  |.forcedrawpal(PA|
00008980  4c 25 29 3a e5 20 8d 74  60 68 0d 26 f2 1b e7 20  |L%):. .t`h.&... |
00008990  4d 4f 55 42 25 3d 34 20  8c 20 f2 6f 70 31 3a e5  |MOUB%=4 . .op1:.|
000089a0  20 8d 74 60 68 0d 26 fc  3f c9 20 30 3a f2 70 69  | .t`h.&.?. 0:.pi|
000089b0  63 70 6f 73 3a f2 69 6e  70 69 63 3a f2 73 65 74  |cpos:.inpic:.set|
000089c0  63 6f 6c 3a f0 36 39 2c  58 25 2c 59 25 3a f2 6f  |col:.69,X%,Y%:.o|
000089d0  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
000089e0  6d 61 69 6e 0d 27 06 22  c9 20 34 3a f2 70 61 69  |main.'.". 4:.pai|
000089f0  6e 74 73 63 61 6c 65 3a  f2 69 6e 70 69 63 3a f2  |ntscale:.inpic:.|
00008a00  70 69 63 70 6f 73 0d 27  10 2e e7 20 46 55 53 54  |picpos.'... FUST|
00008a10  25 3c 3e 30 20 8c 20 f2  65 6f 72 62 61 63 6b 3a  |%<>0 . .eorback:|
00008a20  f2 70 61 69 6e 74 62 72  75 73 68 28 4f 58 25 2c  |.paintbrush(OX%,|
00008a30  4f 59 25 29 0d 27 1a 38  f2 73 65 74 62 61 63 6b  |OY%).'.8.setback|
00008a40  63 6f 6c 3a f2 70 61 69  6e 74 62 72 75 73 68 28  |col:.paintbrush(|
00008a50  58 25 2c 59 25 29 3a 4f  58 25 3d 58 25 3a 4f 59  |X%,Y%):OX%=X%:OY|
00008a60  25 3d 59 25 3a 46 55 53  54 25 3d 31 0d 27 24 21  |%=Y%:FUST%=1.'$!|
00008a70  f2 65 6f 72 62 61 63 6b  3a f2 70 61 69 6e 74 62  |.eorback:.paintb|
00008a80  72 75 73 68 28 4f 58 25  2c 4f 59 25 29 0d 27 2e  |rush(OX%,OY%).'.|
00008a90  1a f2 6f 75 74 70 69 63  3a f2 71 75 69 63 6b 64  |..outpic:.quickd|
00008aa0  72 61 77 6d 61 69 6e 0d  27 38 1c c9 20 32 34 3a  |rawmain.'8.. 24:|
00008ab0  e7 20 4d 4f 55 42 25 3c  3e 34 20 8c 20 e5 20 8d  |. MOUB%<>4 . . .|
00008ac0  74 60 68 0d 27 42 c6 f2  70 69 63 70 6f 73 3a f2  |t`h.'B..picpos:.|
00008ad0  69 6e 70 69 63 3a e6 33  2c 36 33 20 c8 9c 20 31  |inpic:.3,63 .. 1|
00008ae0  39 32 3a f0 36 39 2c 34  30 30 2c 34 30 30 3a f0  |92:.69,400,400:.|
00008af0  36 39 2c 34 30 30 2c 34  30 30 3a f2 73 65 74 63  |69,400,400:.setc|
00008b00  6f 6c 3a 54 43 4f 25 3d  b0 58 25 2d 32 2c 59 25  |ol:TCO%=.X%-2,Y%|
00008b10  29 3a 54 54 49 25 3d c8  9c 28 58 25 2d 32 2c 59  |):TTI%=..(X%-2,Y|
00008b20  25 29 3a 54 50 45 25 3d  a4 66 69 6e 64 70 61 6c  |%):TPE%=.findpal|
00008b30  65 6e 74 28 54 43 4f 25  2c 54 54 49 25 29 3a e7  |ent(TCO%,TTI%):.|
00008b40  20 54 50 45 25 3d 43 4f  4c 25 20 8c 20 f2 6f 75  | TPE%=COL% . .ou|
00008b50  74 70 69 63 3a f2 6d 65  73 73 61 67 65 28 30 2c  |tpic:.message(0,|
00008b60  22 43 61 6e 6e 6f 74 20  74 72 61 63 65 20 74 68  |"Cannot trace th|
00008b70  65 20 63 6f 6c 6f 75 72  20 79 6f 75 20 61 72 65  |e colour you are|
00008b80  20 75 73 69 6e 67 2e 22  29 0d 27 4c 32 f2 74 72  | using.").'L2.tr|
00008b90  61 63 65 28 58 25 2c 59  25 2c 54 43 4f 25 2c 54  |ace(X%,Y%,TCO%,T|
00008ba0  54 49 25 29 3a f2 6f 75  74 70 69 63 3a f2 71 75  |TI%):.outpic:.qu|
00008bb0  69 63 6b 64 72 61 77 6d  61 69 6e 0d 27 56 24 c9  |ickdrawmain.'V$.|
00008bc0  20 32 39 3a f2 70 61 69  6e 74 73 63 61 6c 65 32  | 29:.paintscale2|
00008bd0  3a f2 69 6e 70 69 63 3a  f2 70 69 63 70 6f 73 0d  |:.inpic:.picpos.|
00008be0  27 60 2f e7 20 46 55 53  54 25 3c 3e 30 20 8c 20  |'`/. FUST%<>0 . |
00008bf0  f2 65 6f 72 62 61 63 6b  3a f2 70 61 69 6e 74 62  |.eorback:.paintb|
00008c00  72 75 73 68 32 28 4f 58  25 2c 4f 59 25 29 0d 27  |rush2(OX%,OY%).'|
00008c10  6a 20 56 41 52 53 21 32  30 3d 42 54 43 25 3a 56  |j VARS!20=BTC%:V|
00008c20  41 52 53 21 32 34 3d 50  41 4c 54 41 42 25 0d 27  |ARS!24=PALTAB%.'|
00008c30  74 1f 56 41 52 53 21 32  38 3d 50 49 43 25 3a 56  |t.VARS!28=PIC%:V|
00008c40  41 52 53 21 33 32 3d 53  50 42 55 46 25 0d 27 7e  |ARS!32=SPBUF%.'~|
00008c50  1f 56 41 52 53 21 33 36  3d 58 25 2d 33 32 3a 56  |.VARS!36=X%-32:V|
00008c60  41 52 53 21 34 30 3d 59  25 2d 33 32 0d 27 88 21  |ARS!40=Y%-32.'.!|
00008c70  56 41 52 53 21 34 34 3d  53 45 4c 42 52 25 3a 56  |VARS!44=SELBR%:V|
00008c80  41 52 53 21 34 38 3d 42  52 55 53 48 25 0d 27 92  |ARS!48=BRUSH%.'.|
00008c90  1a 41 25 3d 56 41 52 53  3a d6 20 61 76 65 72 61  |.A%=VARS:. avera|
00008ca0  67 65 62 72 75 73 68 0d  27 9c 33 e6 33 2c 36 33  |gebrush.'.3.3,63|
00008cb0  3a c8 93 20 58 25 2d 33  32 2c 59 25 2d 33 32 2c  |:.. X%-32,Y%-32,|
00008cc0  36 34 2c 36 34 3a c8 93  20 58 25 2d 33 32 2c 59  |64,64:.. X%-32,Y|
00008cd0  25 2d 33 32 2c 36 34 2c  36 34 0d 27 a6 38 4f 58  |%-32,64,64.'.8OX|
00008ce0  25 3d 58 25 3a 4f 59 25  3d 59 25 3a 46 55 53 54  |%=X%:OY%=Y%:FUST|
00008cf0  25 3d 31 3a f2 65 6f 72  62 61 63 6b 3a f2 70 61  |%=1:.eorback:.pa|
00008d00  69 6e 74 62 72 75 73 68  32 28 4f 58 25 2c 4f 59  |intbrush2(OX%,OY|
00008d10  25 29 0d 27 b0 1a f2 6f  75 74 70 69 63 3a f2 71  |%).'...outpic:.q|
00008d20  75 69 63 6b 64 72 61 77  6d 61 69 6e 0d 27 ba 24  |uickdrawmain.'.$|
00008d30  c9 20 33 30 3a f2 70 61  69 6e 74 73 63 61 6c 65  |. 30:.paintscale|
00008d40  32 3a f2 69 6e 70 69 63  3a f2 70 69 63 70 6f 73  |2:.inpic:.picpos|
00008d50  0d 27 c4 2f e7 20 46 55  53 54 25 3c 3e 30 20 8c  |.'./. FUST%<>0 .|
00008d60  20 f2 65 6f 72 62 61 63  6b 3a f2 70 61 69 6e 74  | .eorback:.paint|
00008d70  62 72 75 73 68 32 28 4f  58 25 2c 4f 59 25 29 0d  |brush2(OX%,OY%).|
00008d80  27 ce 20 56 41 52 53 21  32 30 3d 42 54 43 25 3a  |'. VARS!20=BTC%:|
00008d90  56 41 52 53 21 32 34 3d  50 41 4c 54 41 42 25 0d  |VARS!24=PALTAB%.|
00008da0  27 d8 1f 56 41 52 53 21  32 38 3d 50 49 43 25 3a  |'..VARS!28=PIC%:|
00008db0  56 41 52 53 21 33 32 3d  53 50 42 55 46 25 0d 27  |VARS!32=SPBUF%.'|
00008dc0  e2 1f 56 41 52 53 21 33  36 3d 58 25 2d 33 32 3a  |..VARS!36=X%-32:|
00008dd0  56 41 52 53 21 34 30 3d  59 25 2d 33 32 0d 27 ec  |VARS!40=Y%-32.'.|
00008de0  21 56 41 52 53 21 34 34  3d 53 45 4c 42 52 25 3a  |!VARS!44=SELBR%:|
00008df0  56 41 52 53 21 34 38 3d  42 52 55 53 48 25 0d 27  |VARS!48=BRUSH%.'|
00008e00  f6 39 56 41 52 53 21 38  34 3d 50 41 4c 54 41 42  |.9VARS!84=PALTAB|
00008e10  25 3f 28 43 4f 4c 25 2a  32 29 3a 56 41 52 53 21  |%?(COL%*2):VARS!|
00008e20  38 38 3d 50 41 4c 54 41  42 25 3f 28 28 43 4f 4c  |88=PALTAB%?((COL|
00008e30  25 2a 32 29 2b 31 29 0d  28 00 17 41 25 3d 56 41  |%*2)+1).(..A%=VA|
00008e40  52 53 3a d6 20 74 69 6e  74 62 72 75 73 68 0d 28  |RS:. tintbrush.(|
00008e50  0a 33 e6 33 2c 36 33 3a  c8 93 20 58 25 2d 33 32  |.3.3,63:.. X%-32|
00008e60  2c 59 25 2d 33 32 2c 36  34 2c 36 34 3a c8 93 20  |,Y%-32,64,64:.. |
00008e70  58 25 2d 33 32 2c 59 25  2d 33 32 2c 36 34 2c 36  |X%-32,Y%-32,64,6|
00008e80  34 0d 28 14 38 4f 58 25  3d 58 25 3a 4f 59 25 3d  |4.(.8OX%=X%:OY%=|
00008e90  59 25 3a 46 55 53 54 25  3d 31 3a f2 65 6f 72 62  |Y%:FUST%=1:.eorb|
00008ea0  61 63 6b 3a f2 70 61 69  6e 74 62 72 75 73 68 32  |ack:.paintbrush2|
00008eb0  28 4f 58 25 2c 4f 59 25  29 0d 28 1e 1a f2 6f 75  |(OX%,OY%).(...ou|
00008ec0  74 70 69 63 3a f2 71 75  69 63 6b 64 72 61 77 6d  |tpic:.quickdrawm|
00008ed0  61 69 6e 0d 28 28 21 c9  20 33 31 3a e7 20 4d 4f  |ain.((!. 31:. MO|
00008ee0  55 42 25 3c 3e 34 20 84  20 47 52 54 59 25 3d 31  |UB%<>4 . GRTY%=1|
00008ef0  20 8c 20 e1 0d 28 32 2d  f2 73 70 69 6e 69 74 3a  | . ..(2-.spinit:|
00008f00  f2 73 70 62 75 66 28 31  36 31 2a 31 30 32 34 29  |.spbuf(161*1024)|
00008f10  3a e7 20 51 25 20 8c 20  f2 73 70 62 75 66 65 72  |:. Q% . .spbufer|
00008f20  72 0d 28 3c 0e f2 62 61  63 6b 75 70 70 69 63 0d  |r.(<..backuppic.|
00008f30  28 46 58 f2 69 6e 62 61  63 6b 75 70 3a f2 70 69  |(FX.inbackup:.pi|
00008f40  63 70 6f 73 3a 46 42 43  25 3d b0 58 25 2c 59 25  |cpos:FBC%=.X%,Y%|
00008f50  29 3a 46 42 54 25 3d c8  9c 28 58 25 2c 59 25 29  |):FBT%=..(X%,Y%)|
00008f60  3a e6 30 2c 46 42 43 25  2b 31 32 38 20 c8 9c 20  |:.0,FBC%+128 .. |
00008f70  46 42 54 25 3a 46 55 54  25 3d 28 46 42 43 25 2b  |FBT%:FUT%=(FBC%+|
00008f80  31 29 20 83 20 36 34 0d  28 50 39 e6 30 2c 46 55  |1) . 64.(P9.0,FU|
00008f90  54 25 20 c8 9c 20 46 42  54 25 3a c8 99 20 22 48  |T% .. FBT%:.. "H|
00008fa0  6f 75 72 67 6c 61 73 73  5f 4f 6e 22 3a c8 90 20  |ourglass_On":.. |
00008fb0  58 25 2c 59 25 3a f2 6f  75 74 62 61 63 6b 75 70  |X%,Y%:.outbackup|
00008fc0  0d 28 5a 2d 41 25 3d 56  41 52 53 3a 42 25 3d 50  |.(Z-A%=VARS:B%=P|
00008fd0  49 43 25 3a 43 25 3d 53  50 42 55 46 25 3a d6 20  |IC%:C%=SPBUF%:. |
00008fe0  66 69 6e 64 63 68 61 6e  67 65 62 6f 78 0d 28 64  |findchangebox.(d|
00008ff0  14 46 4d 49 4e 58 25 3d  28 21 56 41 52 53 29 2a  |.FMINX%=(!VARS)*|
00009000  32 0d 28 6e 15 46 4d 49  4e 59 25 3d 28 56 41 52  |2.(n.FMINY%=(VAR|
00009010  53 21 34 29 2a 34 0d 28  78 15 46 4d 41 58 58 25  |S!4)*4.(x.FMAXX%|
00009020  3d 28 56 41 52 53 21 38  29 2a 32 0d 28 82 16 46  |=(VARS!8)*2.(..F|
00009030  4d 41 58 59 25 3d 28 56  41 52 53 21 31 32 29 2a  |MAXY%=(VARS!12)*|
00009040  34 0d 28 8c 09 f2 66 69  6c 6c 0d 28 96 16 c8 99  |4.(...fill.(....|
00009050  20 22 48 6f 75 72 67 6c  61 73 73 5f 4f 66 66 22  | "Hourglass_Off"|
00009060  0d 28 a0 05 cb 0d 28 aa  05 e1 0d 28 be 0a dd f2  |.(....(....(....|
00009070  66 69 6c 6c 0d 28 c8 14  4e 4f 53 25 3d bb a4 67  |fill.(..NOS%=..g|
00009080  69 28 31 33 2c 38 33 29  0d 28 d2 0e 4e 4f 46 25  |i(13,83).(..NOF%|
00009090  3d 47 52 46 4e 25 0d 28  dc 09 45 54 25 3d 30 0d  |=GRFN%.(..ET%=0.|
000090a0  28 e6 1a e7 20 a4 68 69  67 68 28 31 33 2c 38 37  |(... .high(13,87|
000090b0  29 20 8c 20 45 54 25 3d  31 0d 28 f0 1a e7 20 a4  |) . ET%=1.(... .|
000090c0  68 69 67 68 28 31 33 2c  38 39 29 20 8c 20 45 54  |high(13,89) . ET|
000090d0  25 3d 32 0d 28 fa 1a e7  20 a4 68 69 67 68 28 31  |%=2.(... .high(1|
000090e0  33 2c 39 31 29 20 8c 20  45 54 25 3d 33 0d 29 04  |3,91) . ET%=3.).|
000090f0  1a e7 20 a4 68 69 67 68  28 31 33 2c 39 33 29 20  |.. .high(13,93) |
00009100  8c 20 45 54 25 3d 34 0d  29 0e 0b 46 49 54 25 3d  |. ET%=4.)..FIT%=|
00009110  2d 31 0d 29 18 1b e7 20  a4 68 69 67 68 28 31 33  |-1.)... .high(13|
00009120  2c 36 37 29 20 8c 20 46  49 54 25 3d 31 0d 29 22  |,67) . FIT%=1.)"|
00009130  1b e7 20 a4 68 69 67 68  28 31 33 2c 36 39 29 20  |.. .high(13,69) |
00009140  8c 20 46 49 54 25 3d 32  0d 29 2c 1b e7 20 a4 68  |. FIT%=2.),.. .h|
00009150  69 67 68 28 31 33 2c 37  31 29 20 8c 20 46 49 54  |igh(13,71) . FIT|
00009160  25 3d 33 0d 29 36 1b e7  20 a4 68 69 67 68 28 31  |%=3.)6.. .high(1|
00009170  33 2c 37 33 29 20 8c 20  46 49 54 25 3d 34 0d 29  |3,73) . FIT%=4.)|
00009180  40 1b e7 20 a4 68 69 67  68 28 31 33 2c 37 35 29  |@.. .high(13,75)|
00009190  20 8c 20 46 49 54 25 3d  35 0d 29 4a 1b e7 20 a4  | . FIT%=5.)J.. .|
000091a0  68 69 67 68 28 31 33 2c  37 37 29 20 8c 20 46 49  |high(13,77) . FI|
000091b0  54 25 3d 36 0d 29 54 1c  e7 20 45 54 25 3d 31 20  |T%=6.)T.. ET%=1 |
000091c0  84 20 45 54 25 3d 32 20  8c 20 46 49 54 25 3d 31  |. ET%=2 . FIT%=1|
000091d0  0d 29 5e 1c e7 20 45 54  25 3d 33 20 84 20 45 54  |.)^.. ET%=3 . ET|
000091e0  25 3d 34 20 8c 20 46 49  54 25 3d 34 0d 29 68 45  |%=4 . FIT%=4.)hE|
000091f0  e7 20 46 49 54 25 3d 2d  31 20 8c 20 f2 73 70 69  |. FIT%=-1 . .spi|
00009200  6e 69 74 3a f2 6d 65 73  73 61 67 65 28 30 2c 22  |nit:.message(0,"|
00009210  59 6f 75 20 6d 75 73 74  20 63 68 6f 6f 73 65 20  |You must choose |
00009220  61 20 74 79 70 65 20 6f  66 20 66 69 6c 6c 2e 22  |a type of fill."|
00009230  29 0d 29 72 0d c8 8e 20  46 49 54 25 20 ca 0d 29  |).)r... FIT% ..)|
00009240  7c 33 c9 20 31 3a 46 49  57 25 3d 46 4d 41 58 58  ||3. 1:FIW%=FMAXX|
00009250  25 2d 46 4d 49 4e 58 25  3a 46 49 46 43 25 3d 30  |%-FMINX%:FIFC%=0|
00009260  3a 4c 41 46 43 25 3d 32  35 35 3a 46 49 44 25 3d  |:LAFC%=255:FID%=|
00009270  31 0d 29 86 34 c9 20 32  3a 46 49 57 25 3d 46 4d  |1.).4. 2:FIW%=FM|
00009280  41 58 58 25 2d 46 4d 49  4e 58 25 3a 46 49 46 43  |AXX%-FMINX%:FIFC|
00009290  25 3d 32 35 35 3a 4c 41  46 43 25 3d 30 3a 46 49  |%=255:LAFC%=0:FI|
000092a0  44 25 3d 2d 31 0d 29 90  33 c9 20 34 3a 46 49 57  |D%=-1.).3. 4:FIW|
000092b0  25 3d 46 4d 41 58 59 25  2d 46 4d 49 4e 59 25 3a  |%=FMAXY%-FMINY%:|
000092c0  46 49 46 43 25 3d 30 3a  4c 41 46 43 25 3d 32 35  |FIFC%=0:LAFC%=25|
000092d0  35 3a 46 49 44 25 3d 31  0d 29 9a 34 c9 20 33 3a  |5:FID%=1.).4. 3:|
000092e0  46 49 57 25 3d 46 4d 41  58 59 25 2d 46 4d 49 4e  |FIW%=FMAXY%-FMIN|
000092f0  59 25 3a 46 49 46 43 25  3d 32 35 35 3a 4c 41 46  |Y%:FIFC%=255:LAF|
00009300  43 25 3d 30 3a 46 49 44  25 3d 2d 31 0d 29 a4 20  |C%=0:FID%=-1.). |
00009310  c9 20 35 3a 46 49 46 43  25 3d 30 3a 4c 41 46 43  |. 5:FIFC%=0:LAFC|
00009320  25 3d 32 35 35 3a 46 49  44 25 3d 31 0d 29 ae 21  |%=255:FID%=1.).!|
00009330  c9 20 36 3a 46 49 46 43  25 3d 32 35 35 3a 4c 41  |. 6:FIFC%=255:LA|
00009340  46 43 25 3d 30 3a 46 49  44 25 3d 2d 31 0d 29 b8  |FC%=0:FID%=-1.).|
00009350  05 cb 0d 29 c2 17 e7 20  46 49 54 25 3d 35 20 84  |...)... FIT%=5 .|
00009360  20 46 49 54 25 3d 36 20  8c 0d 29 cc 3f e7 20 28  | FIT%=6 ..).?. (|
00009370  46 4d 41 58 58 25 2d 58  25 29 3e 28 58 25 2d 46  |FMAXX%-X%)>(X%-F|
00009380  4d 49 4e 58 25 29 20 8c  20 58 4f 46 25 3d 46 4d  |MINX%) . XOF%=FM|
00009390  41 58 58 25 2d 58 25 20  8b 20 58 4f 46 25 3d 58  |AXX%-X% . XOF%=X|
000093a0  25 2d 46 4d 49 4e 58 25  0d 29 d6 3f e7 20 28 46  |%-FMINX%.).?. (F|
000093b0  4d 41 58 59 25 2d 59 25  29 3e 28 59 25 2d 46 4d  |MAXY%-Y%)>(Y%-FM|
000093c0  49 4e 59 25 29 20 8c 20  59 4f 46 25 3d 46 4d 41  |INY%) . YOF%=FMA|
000093d0  58 59 25 2d 59 25 20 8b  20 59 4f 46 25 3d 59 25  |XY%-Y% . YOF%=Y%|
000093e0  2d 46 4d 49 4e 59 25 0d  29 e0 35 46 49 57 25 3d  |-FMINY%.).5FIW%=|
000093f0  b6 28 28 58 4f 46 25 5e  32 29 2b 28 59 4f 46 25  |.((XOF%^2)+(YOF%|
00009400  5e 32 29 29 3a e7 20 47  52 54 59 25 3d 31 20 8c  |^2)):. GRTY%=1 .|
00009410  20 46 49 57 25 3d 46 49  57 25 2f 32 0d 29 ea 05  | FIW%=FIW%/2.)..|
00009420  cd 0d 29 f4 5c e7 20 46  49 57 25 3d 30 20 84 20  |..).\. FIW%=0 . |
00009430  4e 4f 53 25 3d 31 20 8c  20 f2 6d 65 73 73 61 67  |NOS%=1 . .messag|
00009440  65 28 35 2c 22 59 6f 75  20 63 61 6e 6e 6f 74 20  |e(5,"You cannot |
00009450  75 73 65 20 61 20 67 72  61 64 75 61 74 65 64 20  |use a graduated |
00009460  66 69 6c 6c 20 6f 6e 20  61 6e 20 61 72 65 61 20  |fill on an area |
00009470  74 68 61 74 20 73 6d 61  6c 6c 2e 22 29 0d 29 fe  |that small.").).|
00009480  31 43 50 50 25 3d 28 32  35 35 3c 3c 38 29 20 81  |1CPP%=(255<<8) .|
00009490  20 46 49 57 25 3a 43 50  53 25 3d 28 32 35 35 3c  | FIW%:CPS%=(255<|
000094a0  3c 38 29 20 81 20 28 4e  4f 53 25 2d 31 29 0d 2a  |<8) . (NOS%-1).*|
000094b0  08 48 49 25 3d 49 4f 25  3a e3 4c 25 3d 30 20 b8  |.HI%=IO%:.L%=0 .|
000094c0  20 31 35 3a 3f 49 25 3d  47 52 46 49 25 28 4c 25  | 15:?I%=GRFI%(L%|
000094d0  2c 30 2c 4e 4f 46 25 29  3a 49 25 3f 31 3d 47 52  |,0,NOF%):I%?1=GR|
000094e0  46 49 25 28 4c 25 2c 31  2c 4e 4f 46 25 29 3a 49  |FI%(L%,1,NOF%):I|
000094f0  25 2b 3d 32 3a ed 0d 2a  12 36 21 56 41 52 53 3d  |%+=2:..*.6!VARS=|
00009500  50 49 43 25 3a e7 20 47  52 54 59 25 3d 30 20 8c  |PIC%:. GRTY%=0 .|
00009510  20 56 41 52 53 21 34 3d  53 50 42 55 46 25 20 8b  | VARS!4=SPBUF% .|
00009520  20 56 41 52 53 21 34 3d  50 49 43 25 0d 2a 1c cd  | VARS!4=PIC%.*..|
00009530  56 41 52 53 21 38 3d 49  4f 25 3a 56 41 52 53 21  |VARS!8=IO%:VARS!|
00009540  31 32 3d 4e 4f 53 25 3a  56 41 52 53 21 31 36 3d  |12=NOS%:VARS!16=|
00009550  46 49 46 43 25 3a 56 41  52 53 21 32 30 3d 4c 41  |FIFC%:VARS!20=LA|
00009560  46 43 25 3a 56 41 52 53  21 32 34 3d 46 49 44 25  |FC%:VARS!24=FID%|
00009570  3a 56 41 52 53 21 32 38  3d 43 50 50 25 3a 56 41  |:VARS!28=CPP%:VA|
00009580  52 53 21 33 32 3d 43 50  53 25 3a 56 41 52 53 21  |RS!32=CPS%:VARS!|
00009590  33 36 3d 58 25 3a 56 41  52 53 21 34 30 3d 59 25  |36=X%:VARS!40=Y%|
000095a0  3a 56 41 52 53 21 34 34  3d 52 4f 54 54 41 42 25  |:VARS!44=ROTTAB%|
000095b0  3a 56 41 52 53 21 34 38  3d 46 49 54 25 3a 56 41  |:VARS!48=FIT%:VA|
000095c0  52 53 21 35 32 3d 46 4d  49 4e 58 25 3a 56 41 52  |RS!52=FMINX%:VAR|
000095d0  53 21 35 36 3d 46 4d 49  4e 59 25 3a 56 41 52 53  |S!56=FMINY%:VARS|
000095e0  21 36 30 3d 46 4d 41 58  58 25 3a 56 41 52 53 21  |!60=FMAXX%:VARS!|
000095f0  36 34 3d 46 4d 41 58 59  25 0d 2a 26 43 e7 20 47  |64=FMAXY%.*&C. G|
00009600  52 54 59 25 3d 31 20 8c  20 56 41 52 53 21 33 36  |RTY%=1 . VARS!36|
00009610  3d 28 46 4d 49 4e 58 25  2b 46 4d 41 58 58 25 29  |=(FMINX%+FMAXX%)|
00009620  81 32 3a 56 41 52 53 21  34 30 3d 28 46 4d 49 4e  |.2:VARS!40=(FMIN|
00009630  59 25 2b 46 4d 41 58 59  25 29 81 32 0d 2a 30 1b  |Y%+FMAXY%).2.*0.|
00009640  56 41 52 53 21 36 38 3d  52 41 4e 44 25 3a 56 41  |VARS!68=RAND%:VA|
00009650  52 53 21 37 32 3d 30 0d  2a 3a 17 56 41 52 53 21  |RS!72=0.*:.VARS!|
00009660  37 36 3d bb a4 67 69 28  31 33 2c 38 31 29 0d 2a  |76=..gi(13,81).*|
00009670  44 2a e7 20 a4 68 69 67  68 28 31 33 2c 35 34 29  |D*. .high(13,54)|
00009680  20 8c 20 56 41 52 53 21  38 30 3d 31 20 8b 20 56  | . VARS!80=1 . V|
00009690  41 52 53 21 38 30 3d 30  0d 2a 4e 39 56 41 52 53  |ARS!80=0.*N9VARS|
000096a0  21 38 34 3d 45 54 25 3a  56 41 52 53 21 38 38 3d  |!84=ET%:VARS!88=|
000096b0  54 52 41 53 50 25 3a 56  41 52 53 21 39 32 3d 47  |TRASP%:VARS!92=G|
000096c0  52 54 59 25 3a 56 41 52  53 21 39 36 3d 42 54 43  |RTY%:VARS!96=BTC|
000096d0  25 0d 2a 58 27 e3 4c 25  3d 30 20 b8 20 34 30 39  |%.*X'.L%=0 . 409|
000096e0  32 20 88 20 34 3a 52 41  4e 44 25 21 4c 25 3d b3  |2 . 4:RAND%!L%=.|
000096f0  28 43 50 53 25 29 3a ed  0d 2a 62 0b 41 25 3d 56  |(CPS%):..*b.A%=V|
00009700  41 52 53 0d 2a 6c 13 d6  20 67 72 61 64 75 61 74  |ARS.*l.. graduat|
00009710  65 64 66 69 6c 6c 0d 2a  76 1a f2 73 70 69 6e 69  |edfill.*v..spini|
00009720  74 3a f2 66 6f 72 63 65  64 72 61 77 6d 61 69 6e  |t:.forcedrawmain|
00009730  0d 2a 80 05 e1 0d 2a 94  1f dd f2 68 67 3a c8 99  |.*....*....hg:..|
00009740  20 22 48 6f 75 72 67 6c  61 73 73 5f 53 6d 61 73  | "Hourglass_Smas|
00009750  68 22 3a e1 0d 2a a8 0f  dd f2 73 77 61 70 63 6f  |h":..*....swapco|
00009760  72 6e 73 0d 2a b2 1e e7  20 58 25 28 30 29 3e 4f  |rns.*... X%(0)>O|
00009770  58 25 20 8c 20 c8 94 20  58 25 28 30 29 2c 4f 58  |X% . .. X%(0),OX|
00009780  25 0d 2a bc 1e e7 20 59  25 28 30 29 3e 4f 59 25  |%.*... Y%(0)>OY%|
00009790  20 8c 20 c8 94 20 59 25  28 30 29 2c 4f 59 25 0d  | . .. Y%(0),OY%.|
000097a0  2a c6 05 e1 0d 2a da 45  dd a4 73 61 6d 65 63 6f  |*....*.E..sameco|
000097b0  6c 28 78 31 25 2c 79 31  25 2c 63 6f 6c 25 2c 74  |l(x1%,y1%,col%,t|
000097c0  69 6e 25 29 3a 3d 28 b0  78 31 25 2c 79 31 25 29  |in%):=(.x1%,y1%)|
000097d0  3d 63 6f 6c 25 20 80 20  c8 9c 28 78 31 25 2c 79  |=col% . ..(x1%,y|
000097e0  31 25 29 3d 74 69 6e 25  29 0d 2a ee 35 dd f2 6c  |1%)=tin%).*.5..l|
000097f0  28 78 31 25 2c 79 31 25  2c 78 32 25 2c 79 32 25  |(x1%,y1%,x2%,y2%|
00009800  29 3a f0 34 2c 78 31 25  2c 79 31 25 3a f0 20 4c  |):.4,x1%,y1%:. L|
00009810  49 54 59 25 2c 78 32 25  2c 79 32 25 3a e1 0d 2b  |ITY%,x2%,y2%:..+|
00009820  02 67 dd f2 72 28 78 31  25 2c 79 31 25 2c 78 32  |.g..r(x1%,y1%,x2|
00009830  25 2c 79 32 25 29 3a f0  34 2c 78 31 25 2c 79 31  |%,y2%):.4,x1%,y1|
00009840  25 3a f0 20 4c 49 54 59  25 2d 34 2c 78 32 25 2c  |%:. LITY%-4,x2%,|
00009850  30 3a f0 20 4c 49 54 59  25 2d 34 2c 30 2c 79 32  |0:. LITY%-4,0,y2|
00009860  25 3a f0 20 4c 49 54 59  25 2d 34 2c 2d 78 32 25  |%:. LITY%-4,-x2%|
00009870  2c 30 3a f0 20 4c 49 54  59 25 2d 34 2c 30 2c 2d  |,0:. LITY%-4,0,-|
00009880  79 32 25 3a e1 0d 2b 16  1c dd f2 74 72 61 63 65  |y2%:..+....trace|
00009890  28 58 25 2c 59 25 2c 54  43 4f 25 2c 54 54 49 25  |(X%,Y%,TCO%,TTI%|
000098a0  29 0d 2b 20 05 e1 0d 2b  34 19 dd a4 66 69 6e 64  |).+ ...+4...find|
000098b0  70 61 6c 65 6e 74 28 43  4f 25 2c 54 49 25 29 0d  |palent(CO%,TI%).|
000098c0  2b 3e 1e 3d 43 54 54 25  3f 28 28 43 4f 25 2a 34  |+>.=CTT%?((CO%*4|
000098d0  29 2b 28 54 49 25 20 81  20 36 34 29 29 0d 2b 52  |)+(TI% . 64)).+R|
000098e0  3e dd f2 73 65 74 63 6f  6c 3a e6 20 55 53 45 25  |>..setcol:. USE%|
000098f0  2c 50 41 4c 54 41 42 25  3f 28 43 4f 4c 25 2a 32  |,PALTAB%?(COL%*2|
00009900  29 20 c8 9c 20 50 41 4c  54 41 42 25 3f 28 28 43  |) .. PALTAB%?((C|
00009910  4f 4c 25 2a 32 29 2b 31  29 3a e1 0d 2b 66 48 dd  |OL%*2)+1):..+fH.|
00009920  f2 73 65 74 62 61 63 6b  63 6f 6c 3a e6 20 55 53  |.setbackcol:. US|
00009930  45 25 2c 28 50 41 4c 54  41 42 25 3f 28 43 4f 4c  |E%,(PALTAB%?(COL|
00009940  25 2a 32 29 29 2b 31 32  38 20 c8 9c 20 50 41 4c  |%*2))+128 .. PAL|
00009950  54 41 42 25 3f 28 28 43  4f 4c 25 2a 32 29 2b 31  |TAB%?((COL%*2)+1|
00009960  29 3a e1 0d 2b 7a 13 dd  f2 63 6f 6c 28 43 25 2c  |):..+z...col(C%,|
00009970  54 25 2c 55 25 29 0d 2b  84 16 c8 99 26 33 35 2c  |T%,U%).+....&35,|
00009980  2d 31 2c 39 20 b8 20 2c  2c 42 50 25 0d 2b 8e 1c  |-1,9 . ,,BP%.+..|
00009990  e7 20 42 50 25 3d 33 20  8c 20 e6 55 25 2c 43 25  |. BP%=3 . .U%,C%|
000099a0  20 c8 9c 20 54 25 3a e1  0d 2b 98 2b 52 25 3d 28  | .. T%:..+.+R%=(|
000099b0  28 43 25 20 80 20 25 31  31 29 2a 34 29 2b 28 54  |(C% . %11)*4)+(T|
000099c0  25 20 81 20 36 34 29 3a  52 25 2b 3d 28 52 25 3c  |% . 64):R%+=(R%<|
000099d0  3c 34 29 0d 2b a2 32 47  25 3d 28 28 28 43 25 20  |<4).+.2G%=(((C% |
000099e0  80 20 25 31 31 30 30 29  3e 3e 32 29 2a 34 29 2b  |. %1100)>>2)*4)+|
000099f0  28 54 25 20 81 20 36 34  29 3a 47 25 2b 3d 28 47  |(T% . 64):G%+=(G|
00009a00  25 3c 3c 34 29 0d 2b ac  34 42 25 3d 28 28 28 43  |%<<4).+.4B%=(((C|
00009a10  25 20 80 20 25 31 31 30  30 30 30 29 3e 3e 34 29  |% . %110000)>>4)|
00009a20  2a 34 29 2b 28 54 25 20  81 20 36 34 29 3a 42 25  |*4)+(T% . 64):B%|
00009a30  2b 3d 28 42 25 3c 3c 34  29 0d 2b b6 3e c8 99 20  |+=(B%<<4).+.>.. |
00009a40  22 43 6f 6c 6f 75 72 54  72 61 6e 73 5f 53 65 74  |"ColourTrans_Set|
00009a50  47 43 4f 4c 22 2c 28 28  42 25 3c 3c 32 34 29 2b  |GCOL",((B%<<24)+|
00009a60  28 47 25 3c 3c 31 36 29  2b 28 52 25 3c 3c 38 29  |(G%<<16)+(R%<<8)|
00009a70  29 2c 2c 2c 2c 55 25 0d  2b c0 05 e1 0d 2b d4 17  |),,,,U%.+....+..|
00009a80  dd f2 61 6e 74 69 63 6f  6c 28 43 25 2c 54 25 2c  |..anticol(C%,T%,|
00009a90  55 25 29 0d 2b de 2b 52  25 3d 28 28 43 25 20 80  |U%).+.+R%=((C% .|
00009aa0  20 25 31 31 29 2a 34 29  2b 28 54 25 20 81 20 36  | %11)*4)+(T% . 6|
00009ab0  34 29 3a 52 25 2b 3d 28  52 25 3c 3c 34 29 0d 2b  |4):R%+=(R%<<4).+|
00009ac0  e8 32 47 25 3d 28 28 28  43 25 20 80 20 25 31 31  |.2G%=(((C% . %11|
00009ad0  30 30 29 3e 3e 32 29 2a  34 29 2b 28 54 25 20 81  |00)>>2)*4)+(T% .|
00009ae0  20 36 34 29 3a 47 25 2b  3d 28 47 25 3c 3c 34 29  | 64):G%+=(G%<<4)|
00009af0  0d 2b f2 34 42 25 3d 28  28 28 43 25 20 80 20 25  |.+.4B%=(((C% . %|
00009b00  31 31 30 30 30 30 29 3e  3e 34 29 2a 34 29 2b 28  |110000)>>4)*4)+(|
00009b10  54 25 20 81 20 36 34 29  3a 42 25 2b 3d 28 42 25  |T% . 64):B%+=(B%|
00009b20  3c 3c 34 29 0d 2b fc 4e  c8 99 20 22 43 6f 6c 6f  |<<4).+.N.. "Colo|
00009b30  75 72 54 72 61 6e 73 5f  52 65 74 75 72 6e 4f 70  |urTrans_ReturnOp|
00009b40  70 47 43 4f 4c 46 6f 72  4d 6f 64 65 22 2c 28 28  |pGCOLForMode",((|
00009b50  42 25 3c 3c 32 34 29 2b  28 47 25 3c 3c 31 36 29  |B%<<24)+(G%<<16)|
00009b60  2b 28 52 25 3c 3c 38 29  29 2c 31 35 20 b8 20 47  |+(R%<<8)),15 . G|
00009b70  43 25 0d 2c 06 23 e6 20  55 25 2c 28 47 43 25 3e  |C%.,.#. U%,(GC%>|
00009b80  3e 32 29 20 c8 9c 20 28  47 43 25 20 80 20 25 31  |>2) .. (GC% . %1|
00009b90  31 29 2a 36 34 0d 2c 10  05 e1 0d 2c 24 0d dd f2  |1)*64.,....,$...|
00009ba0  67 72 69 64 63 6f 6c 0d  2c 2e 17 f2 63 6f 6c 28  |gridcol.,...col(|
00009bb0  47 52 43 4f 25 2c 47 52  54 49 25 2c 30 29 0d 2c  |GRCO%,GRTI%,0).,|
00009bc0  38 05 e1 0d 2c 4c 1c dd  f2 6d 61 6b 65 72 72 3a  |8...,L...makerr:|
00009bd0  f2 6b 69 6c 6c 66 3a 46  55 53 45 25 3d 2d 31 0d  |.killf:FUSE%=-1.|
00009be0  2c 56 18 c8 99 20 22 57  69 6d 70 5f 44 72 61 67  |,V... "Wimp_Drag|
00009bf0  42 6f 78 22 2c 2c 30 0d  2c 60 0b 21 42 4c 4b 25  |Box",,0.,`.!BLK%|
00009c00  3d 9f 0d 2c 6a 08 45 52  3d b9 0d 2c 74 26 24 28  |=..,j.ER=..,t&$(|
00009c10  42 4c 4b 25 2b 34 29 3d  f6 24 2b 22 20 61 74 20  |BLK%+4)=.$+" at |
00009c20  6c 69 6e 65 20 22 2b c3  28 9e 29 2b bd 28 30 29  |line "+.(.)+.(0)|
00009c30  0d 2c 7e 4b f4 20 24 28  42 4c 4b 25 2b 34 29 3d  |.,~K. $(BLK%+4)=|
00009c40  22 49 6e 74 65 72 6e 61  6c 20 65 72 72 6f 72 20  |"Internal error |
00009c50  27 22 2b 52 45 50 4f 52  54 24 2b 22 27 20 61 74  |'"+REPORT$+"' at|
00009c60  20 6c 69 6e 65 20 22 2b  53 54 52 24 45 52 4c 2b  | line "+STR$ERL+|
00009c70  22 2e 22 2b 43 48 52 24  28 30 29 0d 2c 88 32 e7  |"."+CHR$(0).,.2.|
00009c80  20 9f 3c 3e 31 37 20 c8  99 20 22 57 69 6d 70 5f  | .<>17 .. "Wimp_|
00009c90  52 65 70 6f 72 74 45 72  72 6f 72 22 2c 42 4c 4b  |ReportError",BLK|
00009ca0  25 2c 31 2c 22 49 6d 61  67 65 72 79 22 0d 2c 92  |%,1,"Imagery".,.|
00009cb0  14 f4 20 50 52 4f 43 61  63 74 69 6f 6e 3a 45 4e  |.. PROCaction:EN|
00009cc0  44 0d 2c 93 05 e0 0d 2c  9c 05 e1 0d 2c b0 1c dd  |D.,....,....,...|
00009cd0  f2 6d 65 73 73 61 67 65  28 4d 25 2c 4d 24 29 3a  |.message(M%,M$):|
00009ce0  f2 6f 75 74 70 69 63 0d  2c ba 5a c8 99 20 22 57  |.outpic.,.Z.. "W|
00009cf0  69 6d 70 5f 44 72 61 67  42 6f 78 22 2c 2c 30 3a  |imp_DragBox",,0:|
00009d00  21 42 4c 4b 25 3d 4d 25  3a 24 28 42 4c 4b 25 2b  |!BLK%=M%:$(BLK%+|
00009d10  34 29 3d 4d 24 2b bd 28  30 29 3a c8 99 20 22 57  |4)=M$+.(0):.. "W|
00009d20  69 6d 70 5f 52 65 70 6f  72 74 45 72 72 6f 72 22  |imp_ReportError"|
00009d30  2c 42 4c 4b 25 2c 31 2c  22 49 6d 61 67 65 72 79  |,BLK%,1,"Imagery|
00009d40  22 0d 2c c4 12 f2 66 6f  72 63 65 64 72 61 77 6d  |".,...forcedrawm|
00009d50  61 69 6e 0d 2c ce 0d f2  61 63 74 69 6f 6e 3a e0  |ain.,...action:.|
00009d60  0d 2c d8 05 e1 0d 2c ec  0b dd f2 6d 6f 75 73 65  |.,....,....mouse|
00009d70  0d 2c f6 46 4d 4f 55 58  25 3d 21 42 4c 4b 25 3a  |.,.FMOUX%=!BLK%:|
00009d80  4d 4f 55 59 25 3d 42 4c  4b 25 21 34 3a 4d 4f 55  |MOUY%=BLK%!4:MOU|
00009d90  42 25 3d 42 4c 4b 25 21  38 3a 4d 4f 55 48 25 3d  |B%=BLK%!8:MOUH%=|
00009da0  42 4c 4b 25 21 31 32 3a  4d 4f 55 49 43 25 3d 42  |BLK%!12:MOUIC%=B|
00009db0  4c 4b 25 21 31 36 0d 2d  00 0e c8 8e 20 4d 4f 55  |LK%!16.-.... MOU|
00009dc0  42 25 20 ca 0d 2d 0a 14  c9 20 34 2c 31 3a c8 8e  |B% ..-... 4,1:..|
00009dd0  20 4d 4f 55 48 25 20 ca  0d 2d 14 12 c9 20 2d 32  | MOUH% ..-... -2|
00009de0  3a f2 6f 70 65 6e 6d 61  69 6e 0d 2d 1e 24 c9 20  |:.openmain.-.$. |
00009df0  48 41 4e 44 25 28 30 29  3a e7 20 42 4c 4b 25 21  |HAND%(0):. BLK%!|
00009e00  31 36 3d 38 20 8c 20 f2  73 61 76 65 6f 6b 0d 2d  |16=8 . .saveok.-|
00009e10  28 2a c9 20 48 41 4e 44  25 28 37 29 3a e7 20 42  |(*. HAND%(7):. B|
00009e20  4c 4b 25 21 31 36 3d 38  20 8c 20 f2 73 70 72 69  |LK%!16=8 . .spri|
00009e30  74 65 73 61 76 65 6f 6b  0d 2d 32 18 c9 20 48 41  |tesaveok.-2.. HA|
00009e40  4e 44 25 28 32 29 3a f2  70 69 63 63 6c 69 63 6b  |ND%(2):.picclick|
00009e50  0d 2d 3c 17 c9 20 48 41  4e 44 25 28 33 29 3a f2  |.-<.. HAND%(3):.|
00009e60  70 69 63 6b 63 6f 6c 0d  2d 46 19 c9 20 48 41 4e  |pickcol.-F.. HAN|
00009e70  44 25 28 34 29 3a f2 61  69 72 62 63 6c 69 63 6b  |D%(4):.airbclick|
00009e80  0d 2d 50 1a c9 20 48 41  4e 44 25 28 35 29 3a f2  |.-P.. HAND%(5):.|
00009e90  62 72 75 73 68 63 6c 69  63 6b 0d 2d 5a 19 c9 20  |brushclick.-Z.. |
00009ea0  48 41 4e 44 25 28 36 29  3a f2 67 72 69 64 63 6c  |HAND%(6):.gridcl|
00009eb0  69 63 6b 0d 2d 64 19 c9  20 48 41 4e 44 25 28 38  |ick.-d.. HAND%(8|
00009ec0  29 3a f2 67 72 61 62 63  6c 69 63 6b 0d 2d 6e 1d  |):.grabclick.-n.|
00009ed0  c9 20 48 41 4e 44 25 28  31 30 29 3a f2 6c 69 6e  |. HAND%(10):.lin|
00009ee0  65 70 61 74 63 6c 69 63  6b 0d 2d 78 19 c9 20 48  |epatclick.-x.. H|
00009ef0  41 4e 44 25 28 31 31 29  3a f2 65 63 66 63 6c 69  |AND%(11):.ecfcli|
00009f00  63 6b 0d 2d 82 1b c9 20  48 41 4e 44 25 28 31 32  |ck.-... HAND%(12|
00009f10  29 3a f2 65 64 62 72 75  63 6c 69 63 6b 0d 2d 8c  |):.edbruclick.-.|
00009f20  1a c9 20 48 41 4e 44 25  28 31 33 29 3a f2 66 69  |.. HAND%(13):.fi|
00009f30  6c 6c 63 6c 69 63 6b 0d  2d 96 1a c9 20 48 41 4e  |llclick.-... HAN|
00009f40  44 25 28 31 34 29 3a f2  74 65 78 74 63 6c 69 63  |D%(14):.textclic|
00009f50  6b 0d 2d a0 1b c9 20 48  41 4e 44 25 28 31 35 29  |k.-... HAND%(15)|
00009f60  3a f2 74 62 61 63 6b 63  6c 69 63 6b 0d 2d aa 1a  |:.tbackclick.-..|
00009f70  c9 20 48 41 4e 44 25 28  31 36 29 3a f2 74 70 61  |. HAND%(16):.tpa|
00009f80  72 63 6c 69 63 6b 0d 2d  b4 1e c9 20 48 41 4e 44  |rclick.-... HAND|
00009f90  25 28 31 37 29 3a f2 66  69 6c 6c 63 6f 6e 74 63  |%(17):.fillcontc|
00009fa0  6c 69 63 6b 0d 2d be 1c  c9 20 48 41 4e 44 25 28  |lick.-... HAND%(|
00009fb0  31 38 29 3a f2 63 6f 6c  72 65 70 63 6c 69 63 6b  |18):.colrepclick|
00009fc0  0d 2d c8 1b c9 20 48 41  4e 44 25 28 31 39 29 3a  |.-... HAND%(19):|
00009fd0  f2 66 72 61 6d 65 63 6c  69 63 6b 0d 2d d2 1d c9  |.frameclick.-...|
00009fe0  20 48 41 4e 44 25 28 32  30 29 3a f2 70 61 74 66  | HAND%(20):.patf|
00009ff0  69 6c 6c 63 6c 69 63 6b  0d 2d dc 1d c9 20 48 41  |illclick.-... HA|
0000a000  4e 44 25 28 32 31 29 3a  f2 72 67 62 63 6f 6e 74  |ND%(21):.rgbcont|
0000a010  63 6c 69 63 6b 0d 2d e6  1f c9 20 48 41 4e 44 25  |click.-... HAND%|
0000a020  28 32 32 29 3a f2 67 72  65 79 73 63 61 6c 65 63  |(22):.greyscalec|
0000a030  6c 69 63 6b 0d 2d f0 1e  c9 20 48 41 4e 44 25 28  |lick.-... HAND%(|
0000a040  32 33 29 3a f2 70 69 78  65 6c 61 74 65 63 6c 69  |23):.pixelatecli|
0000a050  63 6b 0d 2d fa 1c c9 20  48 41 4e 44 25 28 32 34  |ck.-... HAND%(24|
0000a060  29 3a f2 72 6f 74 61 74  65 63 6c 69 63 6b 0d 2e  |):.rotateclick..|
0000a070  04 1e c9 20 48 41 4e 44  25 28 32 35 29 3a f2 63  |... HAND%(25):.c|
0000a080  6f 6c 73 63 61 6c 65 63  6c 69 63 6b 0d 2e 0e 1e  |olscaleclick....|
0000a090  c9 20 48 41 4e 44 25 28  32 36 29 3a f2 63 6f 6e  |. HAND%(26):.con|
0000a0a0  74 72 61 73 74 63 6c 69  63 6b 0d 2e 18 1f c9 20  |trastclick..... |
0000a0b0  48 41 4e 44 25 28 32 37  29 3a f2 70 6f 73 74 65  |HAND%(27):.poste|
0000a0c0  72 69 73 65 63 6c 69 63  6b 0d 2e 22 1c c9 20 48  |riseclick..".. H|
0000a0d0  41 4e 44 25 28 32 39 29  3a f2 66 69 6c 74 65 72  |AND%(29):.filter|
0000a0e0  63 6c 69 63 6b 0d 2e 2c  1c c9 20 48 41 4e 44 25  |click..,.. HAND%|
0000a0f0  28 33 30 29 3a f2 77 6f  62 62 6c 65 63 6c 69 63  |(30):.wobbleclic|
0000a100  6b 0d 2e 36 1a c9 20 48  41 4e 44 25 28 33 32 29  |k..6.. HAND%(32)|
0000a110  3a f2 74 6f 6f 6c 63 6c  69 63 6b 0d 2e 40 1a c9  |:.toolclick..@..|
0000a120  20 48 41 4e 44 25 28 33  33 29 3a f2 7a 6f 6f 6d  | HAND%(33):.zoom|
0000a130  63 6c 69 63 6b 0d 2e 4a  28 c9 20 48 41 4e 44 25  |click..J(. HAND%|
0000a140  28 33 34 29 3a e7 20 42  4c 4b 25 21 31 36 3d 38  |(34):. BLK%!16=8|
0000a150  20 8c 20 f2 73 61 76 65  73 65 74 6f 6b 0d 2e 54  | . .savesetok..T|
0000a160  05 cb 0d 2e 5e 3d c9 20  32 3a e7 20 4d 4f 55 48  |....^=. 2:. MOUH|
0000a170  25 3d 2d 32 20 8c 20 f2  69 63 6f 6e 6d 65 6e 75  |%=-2 . .iconmenu|
0000a180  20 8b 20 e7 20 4d 4f 55  48 25 3d 48 41 4e 44 25  | . . MOUH%=HAND%|
0000a190  28 32 29 20 8c 20 f2 77  69 6e 64 6d 65 6e 75 0d  |(2) . .windmenu.|
0000a1a0  2e 68 31 c9 20 31 36 2c  36 34 3a e7 20 4d 4f 55  |.h1. 16,64:. MOU|
0000a1b0  48 25 3d 48 41 4e 44 25  28 30 29 20 8c 20 44 52  |H%=HAND%(0) . DR|
0000a1c0  41 47 25 3d 30 3a f2 73  74 61 72 74 64 72 61 67  |AG%=0:.startdrag|
0000a1d0  0d 2e 72 29 e7 20 4d 4f  55 48 25 3d 48 41 4e 44  |..r). MOUH%=HAND|
0000a1e0  25 28 37 29 20 8c 20 44  52 41 47 25 3d 37 3a f2  |%(7) . DRAG%=7:.|
0000a1f0  73 74 61 72 74 64 72 61  67 0d 2e 7c 2b e7 20 4d  |startdrag..|+. M|
0000a200  4f 55 48 25 3d 48 41 4e  44 25 28 33 34 29 20 8c  |OUH%=HAND%(34) .|
0000a210  20 44 52 41 47 25 3d 33  34 3a f2 73 74 61 72 74  | DRAG%=34:.start|
0000a220  64 72 61 67 0d 2e 86 05  cb 0d 2e 90 05 e1 0d 2e  |drag............|
0000a230  a4 11 dd f2 77 6f 62 62  6c 65 63 6c 69 63 6b 0d  |....wobbleclick.|
0000a240  2e ae 1d f2 61 72 72 6f  77 73 28 33 30 2c 32 2c  |....arrows(30,2,|
0000a250  33 2c 35 2c 31 2c 39 39  39 2c 31 29 0d 2e b8 1e  |3,5,1,999,1)....|
0000a260  f2 61 72 72 6f 77 73 28  33 30 2c 37 2c 38 2c 31  |.arrows(30,7,8,1|
0000a270  31 2c 31 2c 39 39 39 2c  31 29 0d 2e c2 20 f2 61  |1,1,999,1)... .a|
0000a280  72 72 6f 77 73 28 33 30  2c 33 38 2c 33 39 2c 34  |rrows(30,38,39,4|
0000a290  32 2c 30 2c 33 35 39 2c  31 29 0d 2e cc 2a e7 20  |2,0,359,1)...*. |
0000a2a0  4d 4f 55 49 43 25 3d 31  39 20 8c 20 f2 73 69 28  |MOUIC%=19 . .si(|
0000a2b0  33 30 2c 32 37 2c 22 43  4f 53 28 52 41 44 28 41  |30,27,"COS(RAD(A|
0000a2c0  29 29 22 29 0d 2e d6 2a  e7 20 4d 4f 55 49 43 25  |))")...*. MOUIC%|
0000a2d0  3d 32 31 20 8c 20 f2 73  69 28 33 30 2c 32 37 2c  |=21 . .si(30,27,|
0000a2e0  22 53 49 4e 28 52 41 44  28 41 29 29 22 29 0d 2e  |"SIN(RAD(A))")..|
0000a2f0  e0 2a e7 20 4d 4f 55 49  43 25 3d 32 33 20 8c 20  |.*. MOUIC%=23 . |
0000a300  f2 73 69 28 33 30 2c 32  37 2c 22 54 41 4e 28 52  |.si(30,27,"TAN(R|
0000a310  41 44 28 41 29 29 22 29  0d 2e ea 14 e7 20 4d 4f  |AD(A))")..... MO|
0000a320  55 49 43 25 3c 3e 34 37  20 8c 20 e1 0d 2e f4 9e  |UIC%<>47 . .....|
0000a330  c8 99 26 32 45 2c 32 35  36 2b 39 2c 53 48 4f 57  |..&2E,256+9,SHOW|
0000a340  25 3a 53 48 4f 57 25 21  33 32 3d 26 31 32 33 34  |%:SHOW%!32=&1234|
0000a350  35 3a c8 99 26 32 45 2c  32 36 36 2c 53 48 4f 57  |5:..&2E,266,SHOW|
0000a360  25 2c 22 3c 49 6d 61 67  65 72 79 24 44 69 72 3e  |%,"<Imagery$Dir>|
0000a370  2e 53 68 6f 77 22 3a e7  20 53 48 4f 57 25 21 33  |.Show":. SHOW%!3|
0000a380  32 3d 26 31 32 33 34 35  20 8c 20 f2 6d 65 73 73  |2=&12345 . .mess|
0000a390  61 67 65 28 30 2c 22 43  6f 75 6c 64 20 6e 6f 74  |age(0,"Could not|
0000a3a0  20 6c 6f 61 64 20 27 53  68 6f 77 27 20 73 70 72  | load 'Show' spr|
0000a3b0  69 74 65 20 66 72 6f 6d  20 21 49 6d 61 67 65 72  |ite from !Imager|
0000a3c0  79 20 66 6f 6c 64 65 72  22 29 0d 2e fe 2d f2 73  |y folder")...-.s|
0000a3d0  70 69 6e 69 74 3a f2 73  70 62 75 66 28 31 36 31  |pinit:.spbuf(161|
0000a3e0  2a 31 30 32 34 29 3a e7  20 51 25 20 8c 20 f2 73  |*1024):. Q% . .s|
0000a3f0  70 62 75 66 65 72 72 0d  2f 08 0e f2 62 61 63 6b  |pbuferr./...back|
0000a400  75 70 70 69 63 0d 2f 12  14 c8 99 26 32 45 2c 32  |uppic./....&2E,2|
0000a410  35 36 2b 39 2c 50 49 43  25 0d 2f 1c 63 f2 69 6e  |56+9,PIC%./.c.in|
0000a420  62 61 63 6b 75 70 3a c8  99 20 26 32 45 2c 32 35  |backup:.. &2E,25|
0000a430  36 2b 31 36 2c 50 49 43  25 2c 22 53 48 4f 57 22  |6+16,PIC%,"SHOW"|
0000a440  2c 30 2c 34 30 30 2c 34  30 30 2c 38 30 30 2c 35  |,0,400,400,800,5|
0000a450  39 32 3a c8 99 26 32 45  2c 32 39 30 2c 53 48 4f  |92:..&2E,290,SHO|
0000a460  57 25 2c 22 53 48 4f 57  22 2c 34 30 30 2c 34 30  |W%,"SHOW",400,40|
0000a470  30 3a f2 6f 75 74 62 61  63 6b 75 70 0d 2f 26 3e  |0:.outbackup./&>|
0000a480  f2 69 6e 73 70 72 69 74  65 28 30 2c 53 48 4f 57  |.insprite(0,SHOW|
0000a490  25 2c 22 53 48 4f 57 22  29 3a c8 99 26 32 45 2c  |%,"SHOW"):..&2E,|
0000a4a0  32 39 30 2c 50 49 43 25  2c 22 53 48 4f 57 22 3a  |290,PIC%,"SHOW":|
0000a4b0  f2 6f 75 74 73 70 72 69  74 65 0d 2f 30 53 21 50  |.outsprite./0S!P|
0000a4c0  49 43 25 3d 31 36 31 2a  31 30 32 34 3a 50 49 43  |IC%=161*1024:PIC|
0000a4d0  25 21 34 3d 30 3a 50 49  43 25 21 38 3d 32 34 3a  |%!4=0:PIC%!8=24:|
0000a4e0  50 49 43 25 21 31 32 3d  32 34 3a c8 99 20 26 32  |PIC%!12=24:.. &2|
0000a4f0  45 2c 32 37 31 2c 50 49  43 25 2c 22 50 49 43 22  |E,271,PIC%,"PIC"|
0000a500  2c 30 2c 36 34 30 2c 32  35 36 2c 31 35 0d 2f 3a  |,0,640,256,15./:|
0000a510  10 57 45 25 3d 32 3a e5  20 8d 54 7e 5c 0d 2f 44  |.WE%=2:. .T~\./D|
0000a520  2d e7 20 a4 68 69 67 68  28 33 30 2c 32 35 29 20  |-. .high(30,25) |
0000a530  8c 20 56 41 52 53 21 33  36 3d 31 20 8b 20 56 41  |. VARS!36=1 . VA|
0000a540  52 53 21 33 36 3d 26 32  38 30 0d 2f 4e 28 56 41  |RS!36=&280./N(VA|
0000a550  52 53 21 34 30 3d 30 3a  e7 20 a4 68 69 67 68 28  |RS!40=0:. .high(|
0000a560  33 30 2c 34 34 29 20 8c  20 56 41 52 53 21 34 30  |30,44) . VARS!40|
0000a570  3d 31 0d 2f 58 43 e3 4c  25 3d 30 20 b8 20 32 35  |=1./XC.L%=0 . 25|
0000a580  35 3a 3f 28 54 41 53 25  2b 32 35 36 2b 4c 25 29  |5:?(TAS%+256+L%)|
0000a590  3d 54 52 41 53 50 25 3f  4c 25 3a 54 52 41 53 50  |=TRASP%?L%:TRASP|
0000a5a0  25 3f 4c 25 3d 31 3a ed  3a 54 52 41 53 50 25 3f  |%?L%=1:.:TRASP%?|
0000a5b0  32 35 34 3d 30 0d 2f 62  c1 56 41 52 53 21 34 34  |254=0./b.VARS!44|
0000a5c0  3d 30 3a 56 41 52 53 21  38 3d 34 30 30 3a 56 41  |=0:VARS!8=400:VA|
0000a5d0  52 53 21 31 32 3d 34 30  30 3a 56 41 52 53 21 31  |RS!12=400:VARS!1|
0000a5e0  36 3d 38 30 32 3a 56 41  52 53 21 32 30 3d 35 39  |6=802:VARS!20=59|
0000a5f0  36 3a 56 41 52 53 21 32  34 3d 54 41 53 25 2b 35  |6:VARS!24=TAS%+5|
0000a600  31 32 3a 56 41 52 53 21  32 38 3d 42 54 43 25 3a  |12:VARS!28=BTC%:|
0000a610  56 41 52 53 21 33 32 3d  54 52 41 53 50 25 3a 41  |VARS!32=TRASP%:A|
0000a620  25 3d 56 41 52 53 3a d6  20 77 6f 62 62 6c 65 3a  |%=VARS:. wobble:|
0000a630  c8 99 20 22 48 6f 75 72  67 6c 61 73 73 5f 4f 66  |.. "Hourglass_Of|
0000a640  66 22 3a f2 69 6e 62 61  63 6b 75 70 3a c8 99 26  |f":.inbackup:..&|
0000a650  32 45 2c 32 39 30 2c 53  48 4f 57 25 2c 22 53 48  |2E,290,SHOW%,"SH|
0000a660  4f 57 22 2c 34 30 30 2c  34 30 30 3a f2 6f 75 74  |OW",400,400:.out|
0000a670  62 61 63 6b 75 70 0d 2f  6c 48 c8 99 26 32 45 2c  |backup./lH..&2E,|
0000a680  32 35 36 2b 39 2c 53 48  4f 57 25 3a f2 69 6e 70  |256+9,SHOW%:.inp|
0000a690  69 63 3a c8 99 26 32 45  2c 32 35 36 2b 31 36 2c  |ic:..&2E,256+16,|
0000a6a0  53 48 4f 57 25 2c 22 53  48 4f 57 22 2c 30 2c 34  |SHOW%,"SHOW",0,4|
0000a6b0  30 30 2c 34 30 30 2c 38  30 30 2c 35 39 32 0d 2f  |00,400,800,592./|
0000a6c0  76 1e c8 99 26 32 45 2c  32 39 30 2c 53 50 42 55  |v...&2E,290,SPBU|
0000a6d0  46 25 2c 22 50 49 43 22  2c 30 2c 30 0d 2f 80 58  |F%,"PIC",0,0./.X|
0000a6e0  f2 6f 75 74 70 69 63 3a  f2 73 70 69 6e 69 74 3a  |.outpic:.spinit:|
0000a6f0  e3 4c 25 3d 30 20 b8 20  32 35 35 3a 54 52 41 53  |.L%=0 . 255:TRAS|
0000a700  50 25 3f 4c 25 3d 3f 28  54 41 53 25 2b 32 35 36  |P%?L%=?(TAS%+256|
0000a710  2b 4c 25 29 3a ed 3a f2  66 6f 72 63 65 64 72 61  |+L%):.:.forcedra|
0000a720  77 77 6f 62 3a e7 20 57  45 52 25 20 8c 20 e5 20  |wwob:. WER% . . |
0000a730  8d 44 5a 40 0d 2f 8a 05  e1 0d 2f 9e 11 dd f2 66  |.DZ@./..../....f|
0000a740  69 6c 74 65 72 63 6c 69  63 6b 0d 2f a8 1b f2 61  |ilterclick./...a|
0000a750  72 72 6f 77 73 28 32 39  2c 32 2c 33 2c 35 2c 30  |rrows(29,2,3,5,0|
0000a760  2c 38 2c 31 29 0d 2f b2  05 e1 0d 2f c6 11 dd f2  |,8,1)./..../....|
0000a770  72 6f 74 61 74 65 63 6c  69 63 6b 0d 2f d0 05 e1  |rotateclick./...|
0000a780  0d 2f e4 12 dd f2 72 67  62 63 6f 6e 74 63 6c 69  |./....rgbcontcli|
0000a790  63 6b 0d 2f ee 36 52 50  25 3d a4 70 65 72 63 28  |ck./.6RP%=.perc(|
0000a7a0  32 31 2c 31 33 29 3a 47  50 25 3d a4 70 65 72 63  |21,13):GP%=.perc|
0000a7b0  28 32 31 2c 31 35 29 3a  42 50 25 3d a4 70 65 72  |(21,15):BP%=.per|
0000a7c0  63 28 32 31 2c 31 37 29  0d 2f f8 1e 49 52 50 25  |c(21,17)./..IRP%|
0000a7d0  3d 52 50 25 3a 49 47 50  25 3d 47 50 25 3a 49 42  |=RP%:IGP%=GP%:IB|
0000a7e0  50 25 3d 42 50 25 0d 30  02 1f f2 61 72 72 6f 77  |P%=BP%.0...arrow|
0000a7f0  73 28 32 31 2c 20 33 2c  35 2c 31 33 2c 30 2c 31  |s(21, 3,5,13,0,1|
0000a800  30 30 2c 31 29 0d 30 0c  1f f2 61 72 72 6f 77 73  |00,1).0...arrows|
0000a810  28 32 31 2c 20 36 2c 38  2c 31 35 2c 30 2c 31 30  |(21, 6,8,15,0,10|
0000a820  30 2c 31 29 0d 30 16 20  f2 61 72 72 6f 77 73 28  |0,1).0. .arrows(|
0000a830  32 31 2c 20 39 2c 31 31  2c 31 37 2c 30 2c 31 30  |21, 9,11,17,0,10|
0000a840  30 2c 31 29 0d 30 20 36  52 50 25 3d a4 70 65 72  |0,1).0 6RP%=.per|
0000a850  63 28 32 31 2c 31 33 29  3a 47 50 25 3d a4 70 65  |c(21,13):GP%=.pe|
0000a860  72 63 28 32 31 2c 31 35  29 3a 42 50 25 3d a4 70  |rc(21,15):BP%=.p|
0000a870  65 72 63 28 32 31 2c 31  37 29 0d 30 2a 50 e7 20  |erc(21,17).0*P. |
0000a880  52 50 25 3c 3e 49 52 50  25 20 8c 20 52 53 4c 25  |RP%<>IRP% . RSL%|
0000a890  3d 52 50 25 3a f2 73 6c  69 64 75 64 28 31 2c 52  |=RP%:.slidud(1,R|
0000a8a0  50 25 29 3a f2 67 65 74  73 6c 6f 72 28 32 31 2c  |P%):.getslor(21,|
0000a8b0  33 30 29 3a f2 72 65 64  72 61 77 73 6c 69 64 28  |30):.redrawslid(|
0000a8c0  32 31 2c 31 31 2c 52 50  25 29 0d 30 34 50 e7 20  |21,11,RP%).04P. |
0000a8d0  47 50 25 3c 3e 49 47 50  25 20 8c 20 47 53 4c 25  |GP%<>IGP% . GSL%|
0000a8e0  3d 47 50 25 3a f2 73 6c  69 64 75 64 28 32 2c 47  |=GP%:.slidud(2,G|
0000a8f0  50 25 29 3a f2 67 65 74  73 6c 6f 72 28 32 31 2c  |P%):.getslor(21,|
0000a900  33 31 29 3a f2 72 65 64  72 61 77 73 6c 69 64 28  |31):.redrawslid(|
0000a910  32 31 2c 31 30 2c 47 50  25 29 0d 30 3e 4f e7 20  |21,10,GP%).0>O. |
0000a920  42 50 25 3c 3e 49 42 50  25 20 8c 20 42 53 4c 25  |BP%<>IBP% . BSL%|
0000a930  3d 42 50 25 3a f2 73 6c  69 64 75 64 28 33 2c 42  |=BP%:.slidud(3,B|
0000a940  50 25 29 3a f2 67 65 74  73 6c 6f 72 28 32 31 2c  |P%):.getslor(21,|
0000a950  33 32 29 3a f2 72 65 64  72 61 77 73 6c 69 64 28  |32):.redrawslid(|
0000a960  32 31 2c 38 2c 42 50 25  29 0d 30 48 40 e7 20 4d  |21,8,BP%).0H@. M|
0000a970  4f 55 49 43 25 3d 33 30  20 8c 20 52 53 4c 25 3d  |OUIC%=30 . RSL%=|
0000a980  a4 73 6c 69 64 68 69 74  28 32 31 2c 33 30 2c 4d  |.slidhit(21,30,M|
0000a990  4f 55 58 25 2c 4d 4f 55  59 25 2c 31 31 2c 31 29  |OUX%,MOUY%,11,1)|
0000a9a0  3a 52 50 25 3d 52 53 4c  25 0d 30 52 40 e7 20 4d  |:RP%=RSL%.0R@. M|
0000a9b0  4f 55 49 43 25 3d 33 31  20 8c 20 47 53 4c 25 3d  |OUIC%=31 . GSL%=|
0000a9c0  a4 73 6c 69 64 68 69 74  28 32 31 2c 33 31 2c 4d  |.slidhit(21,31,M|
0000a9d0  4f 55 58 25 2c 4d 4f 55  59 25 2c 31 30 2c 32 29  |OUX%,MOUY%,10,2)|
0000a9e0  3a 47 50 25 3d 47 53 4c  25 0d 30 5c 3f e7 20 4d  |:GP%=GSL%.0\?. M|
0000a9f0  4f 55 49 43 25 3d 33 32  20 8c 20 42 53 4c 25 3d  |OUIC%=32 . BSL%=|
0000aa00  a4 73 6c 69 64 68 69 74  28 32 31 2c 33 32 2c 4d  |.slidhit(21,32,M|
0000aa10  4f 55 58 25 2c 4d 4f 55  59 25 2c 38 2c 33 29 3a  |OUX%,MOUY%,8,3):|
0000aa20  42 50 25 3d 42 53 4c 25  0d 30 66 05 e1 0d 30 7a  |BP%=BSL%.0f...0z|
0000aa30  14 dd f2 73 6c 69 64 75  64 28 57 45 25 2c 56 25  |...slidud(WE%,V%|
0000aa40  29 0d 30 84 22 e7 20 57  45 25 3d 31 20 8c 20 f2  |).0.". WE%=1 . .|
0000aa50  75 69 28 32 31 2c 31 33  2c c3 28 56 25 29 2b 22  |ui(21,13,.(V%)+"|
0000aa60  25 22 29 0d 30 8e 22 e7  20 57 45 25 3d 32 20 8c  |%").0.". WE%=2 .|
0000aa70  20 f2 75 69 28 32 31 2c  31 35 2c c3 28 56 25 29  | .ui(21,15,.(V%)|
0000aa80  2b 22 25 22 29 0d 30 98  22 e7 20 57 45 25 3d 33  |+"%").0.". WE%=3|
0000aa90  20 8c 20 f2 75 69 28 32  31 2c 31 37 2c c3 28 56  | . .ui(21,17,.(V|
0000aaa0  25 29 2b 22 25 22 29 0d  30 a2 0d e7 20 57 45 25  |%)+"%").0... WE%|
0000aab0  3d 34 20 8c 0d 30 ac 1e  56 32 25 3d 28 56 25 81  |=4 ..0..V2%=(V%.|
0000aac0  34 29 3a e7 20 56 32 25  3d 30 20 8c 20 56 32 25  |4):. V2%=0 . V2%|
0000aad0  3d 31 0d 30 b6 15 f2 75  69 28 33 33 2c 38 2c 20  |=1.0...ui(33,8, |
0000aae0  c3 28 56 32 25 29 29 0d  30 c0 05 cd 0d 30 ca 05  |.(V2%)).0....0..|
0000aaf0  e1 0d 30 de 14 dd f2 67  72 65 79 73 63 61 6c 65  |..0....greyscale|
0000ab00  63 6c 69 63 6b 0d 30 e8  4f f2 61 72 72 6f 77 73  |click.0.O.arrows|
0000ab10  28 32 32 2c 33 2c 35 2c  31 33 2c 30 2c 39 2c 31  |(22,3,5,13,0,9,1|
0000ab20  29 3a f2 61 72 72 6f 77  73 28 32 32 2c 36 2c 38  |):.arrows(22,6,8|
0000ab30  2c 31 35 2c 30 2c 39 2c  31 29 3a f2 61 72 72 6f  |,15,0,9,1):.arro|
0000ab40  77 73 28 32 32 2c 39 2c  31 31 2c 31 37 2c 30 2c  |ws(22,9,11,17,0,|
0000ab50  39 2c 31 29 0d 30 f2 05  e1 0d 31 06 13 dd f2 63  |9,1).0....1....c|
0000ab60  6f 6c 73 63 61 6c 65 63  6c 69 63 6b 0d 31 10 4f  |olscaleclick.1.O|
0000ab70  f2 61 72 72 6f 77 73 28  32 35 2c 33 2c 35 2c 31  |.arrows(25,3,5,1|
0000ab80  33 2c 30 2c 39 2c 31 29  3a f2 61 72 72 6f 77 73  |3,0,9,1):.arrows|
0000ab90  28 32 35 2c 36 2c 38 2c  31 35 2c 30 2c 39 2c 31  |(25,6,8,15,0,9,1|
0000aba0  29 3a f2 61 72 72 6f 77  73 28 32 35 2c 39 2c 31  |):.arrows(25,9,1|
0000abb0  31 2c 31 37 2c 30 2c 39  2c 31 29 0d 31 1a 05 e1  |1,17,0,9,1).1...|
0000abc0  0d 31 2e 13 dd f2 63 6f  6e 74 72 61 73 74 63 6c  |.1....contrastcl|
0000abd0  69 63 6b 0d 31 38 27 43  4f 4e 4c 25 3d bb a4 67  |ick.18'CONL%=..g|
0000abe0  69 28 32 36 2c 31 38 29  3a 43 4f 4e 48 25 3d bb  |i(26,18):CONH%=.|
0000abf0  a4 67 69 28 32 36 2c 32  30 29 0d 31 42 3b f2 61  |.gi(26,20).1B;.a|
0000ac00  72 72 6f 77 73 28 32 36  2c 31 31 2c 31 33 2c 31  |rrows(26,11,13,1|
0000ac10  38 2c 30 2c 31 35 2c 31  29 3a f2 61 72 72 6f 77  |8,0,15,1):.arrow|
0000ac20  73 28 32 36 2c 31 34 2c  31 36 2c 32 30 2c 30 2c  |s(26,14,16,20,0,|
0000ac30  31 35 2c 31 29 0d 31 4c  43 e7 20 43 4f 4e 4c 25  |15,1).1LC. CONL%|
0000ac40  3c 3e bb a4 67 69 28 32  36 2c 31 38 29 20 84 20  |<>..gi(26,18) . |
0000ac50  43 4f 4e 48 25 3c 3e bb  a4 67 69 28 32 36 2c 32  |CONH%<>..gi(26,2|
0000ac60  30 29 20 8c 20 f2 66 6f  72 63 65 64 72 61 77 67  |0) . .forcedrawg|
0000ac70  72 61 70 68 28 32 36 29  0d 31 56 05 e1 0d 31 6a  |raph(26).1V...1j|
0000ac80  14 dd f2 70 6f 73 74 65  72 69 73 65 63 6c 69 63  |...posteriseclic|
0000ac90  6b 0d 31 74 36 50 4f 4c  25 3d bb a4 67 69 28 32  |k.1t6POL%=..gi(2|
0000aca0  37 2c 32 32 29 3a 50 4f  48 25 3d bb a4 67 69 28  |7,22):POH%=..gi(|
0000acb0  32 37 2c 32 34 29 3a 50  4f 4e 25 3d bb a4 67 69  |27,24):PON%=..gi|
0000acc0  28 32 37 2c 32 36 29 0d  31 7e 57 f2 61 72 72 6f  |(27,26).1~W.arro|
0000acd0  77 73 28 32 37 2c 31 31  2c 31 33 2c 32 32 2c 30  |ws(27,11,13,22,0|
0000ace0  2c 31 35 2c 31 29 3a f2  61 72 72 6f 77 73 28 32  |,15,1):.arrows(2|
0000acf0  37 2c 31 34 2c 31 36 2c  32 34 2c 30 2c 31 35 2c  |7,14,16,24,0,15,|
0000ad00  31 29 3a f2 61 72 72 6f  77 73 28 32 37 2c 31 38  |1):.arrows(27,18|
0000ad10  2c 32 30 2c 32 36 2c 32  2c 31 36 2c 31 29 0d 31  |,20,26,2,16,1).1|
0000ad20  88 55 e7 20 50 4f 4c 25  3c 3e bb a4 67 69 28 32  |.U. POL%<>..gi(2|
0000ad30  37 2c 32 32 29 20 84 20  50 4f 48 25 3c 3e bb a4  |7,22) . POH%<>..|
0000ad40  67 69 28 32 37 2c 32 34  29 20 84 20 50 4f 4e 25  |gi(27,24) . PON%|
0000ad50  3c 3e bb a4 67 69 28 32  37 2c 32 36 29 20 8c 20  |<>..gi(27,26) . |
0000ad60  f2 66 6f 72 63 65 64 72  61 77 67 72 61 70 68 28  |.forcedrawgraph(|
0000ad70  32 37 29 0d 31 92 05 e1  0d 31 a6 13 dd f2 70 69  |27).1....1....pi|
0000ad80  78 65 6c 61 74 65 63 6c  69 63 6b 0d 31 b0 38 f2  |xelateclick.1.8.|
0000ad90  61 72 72 6f 77 73 28 32  33 2c 32 2c 34 2c 39 2c  |arrows(23,2,4,9,|
0000ada0  31 2c 31 30 30 2c 31 29  3a f2 61 72 72 6f 77 73  |1,100,1):.arrows|
0000adb0  28 32 33 2c 35 2c 37 2c  31 31 2c 31 2c 31 30 30  |(23,5,7,11,1,100|
0000adc0  2c 31 29 0d 31 ba 05 e1  0d 31 ce 10 dd f2 66 72  |,1).1....1....fr|
0000add0  61 6d 65 63 6c 69 63 6b  0d 31 d8 39 f2 61 72 72  |ameclick.1.9.arr|
0000ade0  6f 77 73 28 31 39 2c 35  2c 37 2c 31 30 2c 31 2c  |ows(19,5,7,10,1,|
0000adf0  36 34 30 2c 31 29 3a f2  61 72 72 6f 77 73 28 31  |640,1):.arrows(1|
0000ae00  39 2c 36 2c 38 2c 31 32  2c 31 2c 32 35 36 2c 31  |9,6,8,12,1,256,1|
0000ae10  29 0d 31 e2 14 e7 20 4d  4f 55 49 43 25 3c 3e 31  |).1... MOUIC%<>1|
0000ae20  34 20 8c 20 e1 0d 31 ec  0a f2 6b 69 6c 6c 66 0d  |4 . ..1...killf.|
0000ae30  31 f6 20 56 25 3d bb a4  67 69 28 31 39 2c 31 30  |1. V%=..gi(19,10|
0000ae40  29 3a e7 20 56 25 3c 31  20 8c 20 56 25 3d 31 0d  |):. V%<1 . V%=1.|
0000ae50  32 00 15 e7 20 56 25 3e  36 34 30 20 8c 20 56 25  |2... V%>640 . V%|
0000ae60  3d 36 34 30 0d 32 0a 12  f2 73 69 28 31 39 2c 31  |=640.2...si(19,1|
0000ae70  30 2c c3 56 25 29 0d 32  14 20 57 25 3d bb a4 67  |0,.V%).2. W%=..g|
0000ae80  69 28 31 39 2c 31 32 29  3a e7 20 57 25 3c 31 20  |i(19,12):. W%<1 |
0000ae90  8c 20 57 25 3d 31 0d 32  1e 15 e7 20 57 25 3e 32  |. W%=1.2... W%>2|
0000aea0  35 36 20 8c 20 57 25 3d  32 35 36 0d 32 28 12 f2  |56 . W%=256.2(..|
0000aeb0  73 69 28 31 39 2c 31 32  2c c3 57 25 29 0d 32 32  |si(19,12,.W%).22|
0000aec0  4d 46 52 57 25 3d 56 25  2b 31 3a 46 52 48 25 3d  |MFRW%=V%+1:FRH%=|
0000aed0  57 25 2b 31 3a 46 55 53  45 25 3d 33 36 3a 46 55  |W%+1:FUSE%=36:FU|
0000aee0  53 54 25 3d 30 3a f2 75  64 3a f2 77 69 6e 64 6e  |ST%=0:.ud:.windn|
0000aef0  61 6d 65 28 32 2c 50 49  43 24 2b 22 20 5b 53 65  |ame(2,PIC$+" [Se|
0000af00  74 20 66 72 61 6d 65 5d  22 29 0d 32 3c 17 e7 20  |t frame]").2<.. |
0000af10  4d 4f 55 42 25 3d 34 20  8c 20 f2 6d 65 6e 6f 66  |MOUB%=4 . .menof|
0000af20  66 0d 32 46 05 e1 0d 32  5a 11 dd f2 63 6f 6c 72  |f.2F...2Z...colr|
0000af30  65 70 63 6c 69 63 6b 0d  32 64 89 e7 20 4d 4f 55  |epclick.2d.. MOU|
0000af40  49 43 25 3d 35 20 8c 20  c8 99 20 22 48 6f 75 72  |IC%=5 . .. "Hour|
0000af50  67 6c 61 73 73 5f 4f 6e  22 3a e3 4c 25 3d 30 20  |glass_On":.L%=0 |
0000af60  b8 20 32 32 35 39 36 20  88 20 34 3a 53 50 42 55  |. 22596 . 4:SPBU|
0000af70  46 25 21 4c 25 3d 4f 50  41 4c 25 21 4c 25 3a ed  |F%!L%=OPAL%!L%:.|
0000af80  3a e3 4c 25 3d 30 20 b8  20 32 35 35 3a 52 45 50  |:.L%=0 . 255:REP|
0000af90  53 25 3f 4c 25 3d 4c 25  3a ed 3a c8 99 20 22 48  |S%?L%=L%:.:.. "H|
0000afa0  6f 75 72 67 6c 61 73 73  5f 4f 66 66 22 3a f2 66  |ourglass_Off":.f|
0000afb0  6f 72 63 65 64 72 61 77  63 6f 6c 72 65 70 3a e1  |orcedrawcolrep:.|
0000afc0  0d 32 6e 35 42 4c 4b 25  21 38 3d 48 41 4e 44 25  |.2n5BLK%!8=HAND%|
0000afd0  28 31 38 29 3a c8 99 20  22 57 69 6d 70 5f 47 65  |(18):.. "Wimp_Ge|
0000afe0  74 57 69 6e 64 6f 77 53  74 61 74 65 22 2c 2c 42  |tWindowState",,B|
0000aff0  4c 4b 25 2b 38 0d 32 78  3c 58 4f 46 25 3d 28 21  |LK%+8.2x<XOF%=(!|
0000b000  42 4c 4b 25 29 2d 28 28  42 4c 4b 25 21 31 32 29  |BLK%)-((BLK%!12)|
0000b010  2d 28 42 4c 4b 25 21 32  38 29 29 3a e7 20 58 4f  |-(BLK%!28)):. XO|
0000b020  46 25 3e 37 36 36 20 8c  20 58 4f 46 25 3d 37 36  |F%>766 . XOF%=76|
0000b030  36 0d 32 82 43 59 4f 46  25 3d 28 42 4c 4b 25 21  |6.2.CYOF%=(BLK%!|
0000b040  34 29 2d 28 28 28 42 4c  4b 25 21 32 34 29 2d 28  |4)-(((BLK%!24)-(|
0000b050  42 4c 4b 25 21 33 32 29  29 2d 35 35 36 29 3a e7  |BLK%!32))-556):.|
0000b060  20 59 4f 46 25 3e 35 35  30 20 8c 20 59 4f 46 25  | YOF%>550 . YOF%|
0000b070  3d 35 35 30 0d 32 8c 11  e7 20 59 4f 46 25 3c 3d  |=550.2... YOF%<=|
0000b080  32 32 30 20 8c 0d 32 96  99 43 25 3d 28 58 4f 46  |220 ..2..C%=(XOF|
0000b090  25 20 81 20 32 34 29 2b  28 28 59 4f 46 25 20 81  |% . 24)+((YOF% .|
0000b0a0  20 32 38 29 2a 33 32 29  3a f2 69 6e 73 70 72 69  | 28)*32):.inspri|
0000b0b0  74 65 28 30 2c 53 50 42  55 46 25 2c 22 50 61 6c  |te(0,SPBUF%,"Pal|
0000b0c0  65 74 74 65 22 29 3a 46  58 25 3d 28 28 53 52 45  |ette"):FX%=((SRE|
0000b0d0  50 25 20 83 20 33 32 29  2a 32 34 29 2b 32 3a 46  |P% . 32)*24)+2:F|
0000b0e0  59 25 3d 28 28 53 52 45  50 25 20 81 20 33 32 29  |Y%=((SREP% . 32)|
0000b0f0  2a 32 38 29 2b 34 3a e6  30 2c 50 41 4c 54 41 42  |*28)+4:.0,PALTAB|
0000b100  25 3f 28 43 25 2a 32 29  20 c8 9c 20 50 41 4c 54  |%?(C%*2) .. PALT|
0000b110  41 42 25 3f 28 28 43 25  2a 32 29 2b 31 29 0d 32  |AB%?((C%*2)+1).2|
0000b120  a0 42 c8 93 20 c8 90 20  46 58 25 2c 46 59 25 2c  |.B.. .. FX%,FY%,|
0000b130  32 30 2c 32 30 3a f2 6f  75 74 73 70 72 69 74 65  |20,20:.outsprite|
0000b140  3a 52 45 50 53 25 3f 53  52 45 50 25 3d 43 25 3a  |:REPS%?SREP%=C%:|
0000b150  f2 66 6f 72 63 65 64 72  61 77 63 6f 6c 72 65 70  |.forcedrawcolrep|
0000b160  0d 32 aa 05 cd 0d 32 b4  5a e7 20 59 4f 46 25 3e  |.2....2.Z. YOF%>|
0000b170  3d 32 39 30 20 80 20 59  4f 46 25 3c 35 31 34 20  |=290 . YOF%<514 |
0000b180  8c 20 59 4f 46 25 2d 3d  32 39 30 3a 53 52 45 50  |. YOF%-=290:SREP|
0000b190  25 3d 28 58 4f 46 25 20  81 20 32 34 29 2b 28 28  |%=(XOF% . 24)+((|
0000b1a0  59 4f 46 25 20 81 20 32  38 29 2a 33 32 29 3a f2  |YOF% . 28)*32):.|
0000b1b0  66 6f 72 63 65 64 72 61  77 63 6f 6c 72 65 70 0d  |forcedrawcolrep.|
0000b1c0  32 be 05 e1 0d 32 d2 27  dd f2 61 72 72 6f 77 73  |2....2.'..arrows|
0000b1d0  28 57 25 2c 44 49 25 2c  55 49 25 2c 54 49 25 2c  |(W%,DI%,UI%,TI%,|
0000b1e0  4c 56 25 2c 55 56 25 2c  49 25 29 0d 32 dc 35 56  |LV%,UV%,I%).2.5V|
0000b1f0  25 3d bb a4 67 69 28 57  25 2c 54 49 25 29 3a 4f  |%=..gi(W%,TI%):O|
0000b200  56 25 3d 56 25 3a e7 20  4d 4f 55 42 25 3d 31 20  |V%=V%:. MOUB%=1 |
0000b210  8c 20 57 45 25 3d 2d 31  20 8b 20 57 45 25 3d 31  |. WE%=-1 . WE%=1|
0000b220  0d 32 e6 1f e7 20 4d 4f  55 49 43 25 3d 44 49 25  |.2... MOUIC%=DI%|
0000b230  20 8c 20 56 25 2d 3d 28  49 25 2a 57 45 25 29 0d  | . V%-=(I%*WE%).|
0000b240  32 f0 1f e7 20 4d 4f 55  49 43 25 3d 55 49 25 20  |2... MOUIC%=UI% |
0000b250  8c 20 56 25 2b 3d 28 49  25 2a 57 45 25 29 0d 32  |. V%+=(I%*WE%).2|
0000b260  fa 15 e7 20 56 25 3c 4c  56 25 20 8c 20 56 25 3d  |... V%<LV% . V%=|
0000b270  4c 56 25 0d 33 04 15 e7  20 56 25 3e 55 56 25 20  |LV%.3... V%>UV% |
0000b280  8c 20 56 25 3d 55 56 25  0d 33 0e 2a e7 20 56 25  |. V%=UV%.3.*. V%|
0000b290  3c 3e 4f 56 25 20 80 20  57 25 3c 3e 32 31 20 8c  |<>OV% . W%<>21 .|
0000b2a0  20 f2 73 69 28 57 25 2c  54 49 25 2c c3 28 56 25  | .si(W%,TI%,.(V%|
0000b2b0  29 29 0d 33 18 2d e7 20  56 25 3c 3e 4f 56 25 20  |)).3.-. V%<>OV% |
0000b2c0  80 20 57 25 3d 32 31 20  8c 20 f2 73 69 28 57 25  |. W%=21 . .si(W%|
0000b2d0  2c 54 49 25 2c c3 28 56  25 29 2b 22 25 22 29 0d  |,TI%,.(V%)+"%").|
0000b2e0  33 22 05 e1 0d 33 36 0f  dd f2 74 70 61 72 63 6c  |3"...36...tparcl|
0000b2f0  69 63 6b 0d 33 40 05 e1  0d 33 54 0e dd f2 6c 6f  |ick.3@...3T...lo|
0000b300  73 65 66 6f 6e 74 0d 33  5e 38 e7 20 46 4f 4e 54  |sefont.3^8. FONT|
0000b310  25 3c 3e 30 20 80 20 46  54 4c 25 20 8c 20 c8 99  |%<>0 . FTL% . ..|
0000b320  20 22 46 6f 6e 74 5f 4c  6f 73 65 46 6f 6e 74 22  | "Font_LoseFont"|
0000b330  2c 46 48 41 4e 44 25 3a  46 54 4c 25 3d a3 0d 33  |,FHAND%:FTL%=..3|
0000b340  68 05 e1 0d 33 7c 0d dd  f2 67 65 74 66 6f 6e 74  |h...3|...getfont|
0000b350  0d 33 86 24 e7 20 bb a4  67 69 28 31 34 2c 32 30  |.3.$. ..gi(14,20|
0000b360  29 3c 36 20 8c 20 f2 73  69 28 31 34 2c 32 30 2c  |)<6 . .si(14,20,|
0000b370  22 36 22 29 0d 33 90 24  e7 20 bb a4 67 69 28 31  |"6").3.$. ..gi(1|
0000b380  34 2c 32 32 29 3c 36 20  8c 20 f2 73 69 28 31 34  |4,22)<6 . .si(14|
0000b390  2c 32 32 2c 22 36 22 29  0d 33 9a 29 46 4f 4e 54  |,22,"6").3.)FONT|
0000b3a0  58 25 3d bb a4 67 69 28  31 34 2c 32 30 29 3a 46  |X%=..gi(14,20):F|
0000b3b0  4f 4e 54 59 25 3d bb a4  67 69 28 31 34 2c 32 32  |ONTY%=..gi(14,22|
0000b3c0  29 0d 33 a4 4c e7 20 46  4f 4e 54 25 3c 3e 30 20  |).3.L. FONT%<>0 |
0000b3d0  8c 20 46 54 4c 25 3d b9  3a c8 99 20 22 46 6f 6e  |. FTL%=.:.. "Fon|
0000b3e0  74 5f 46 69 6e 64 46 6f  6e 74 22 2c 2c 46 4f 24  |t_FindFont",,FO$|
0000b3f0  2c 46 4f 4e 54 58 25 2a  31 36 2c 46 4f 4e 54 59  |,FONTX%*16,FONTY|
0000b400  25 2a 31 36 20 b8 20 46  48 41 4e 44 25 0d 33 ae  |%*16 . FHAND%.3.|
0000b410  05 e1 0d 33 c2 0d dd f2  72 65 73 74 70 69 63 0d  |...3....restpic.|
0000b420  33 cc 0a f2 69 6e 70 69  63 0d 33 d6 1e c8 99 26  |3...inpic.3....&|
0000b430  32 45 2c 32 39 30 2c 53  50 42 55 46 25 2c 22 50  |2E,290,SPBUF%,"P|
0000b440  49 43 22 2c 30 2c 30 0d  33 e0 0b f2 6f 75 74 70  |IC",0,0.3...outp|
0000b450  69 63 0d 33 ea 05 e1 0d  33 fe 0f dd f2 74 65 78  |ic.3....3....tex|
0000b460  74 63 6c 69 63 6b 0d 34  08 05 e1 0d 34 1c 0e dd  |tclick.4....4...|
0000b470  f2 65 63 66 63 6c 69 63  6b 0d 34 26 2d e7 20 4d  |.ecfclick.4&-. M|
0000b480  4f 55 49 43 25 3e 32 35  20 80 20 4d 4f 55 49 43  |OUIC%>25 . MOUIC|
0000b490  25 3c 33 33 20 8c 20 f2  66 6f 72 63 65 64 72 61  |%<33 . .forcedra|
0000b4a0  77 70 61 74 3a e1 0d 34  30 13 e7 20 4d 4f 55 49  |wpat:..40.. MOUI|
0000b4b0  43 25 3c 3e 38 20 8c 20  e1 0d 34 3a 1d e7 20 4d  |C%<>8 . ..4:.. M|
0000b4c0  4f 55 42 25 3c 3e 31 20  80 20 4d 4f 55 42 25 3c  |OUB%<>1 . MOUB%<|
0000b4d0  3e 34 20 8c 20 e1 0d 34  44 35 42 4c 4b 25 21 38  |>4 . ..4D5BLK%!8|
0000b4e0  3d 48 41 4e 44 25 28 31  31 29 3a c8 99 20 22 57  |=HAND%(11):.. "W|
0000b4f0  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
0000b500  74 65 22 2c 2c 42 4c 4b  25 2b 38 0d 34 4e 36 58  |te",,BLK%+8.4N6X|
0000b510  4f 46 25 3d 28 28 21 42  4c 4b 25 29 2d 28 42 4c  |OF%=((!BLK%)-(BL|
0000b520  4b 25 21 31 32 29 29 2d  31 38 30 3a e7 20 58 4f  |K%!12))-180:. XO|
0000b530  46 25 3e 37 36 36 20 8c  20 58 4f 46 25 3d 37 36  |F%>766 . XOF%=76|
0000b540  36 0d 34 58 36 59 4f 46  25 3d 28 28 42 4c 4b 25  |6.4X6YOF%=((BLK%|
0000b550  21 34 29 2d 28 42 4c 4b  25 21 31 36 29 29 2d 32  |!4)-(BLK%!16))-2|
0000b560  30 3a e7 20 59 4f 46 25  3e 32 32 30 20 8c 20 59  |0:. YOF%>220 . Y|
0000b570  4f 46 25 3d 32 32 30 0d  34 62 25 63 6f 6c 25 3d  |OF%=220.4b%col%=|
0000b580  28 58 4f 46 25 20 81 20  32 34 29 2b 28 28 59 4f  |(XOF% . 24)+((YO|
0000b590  46 25 20 81 20 32 38 29  2a 33 32 29 0d 34 6c 12  |F% . 28)*32).4l.|
0000b5a0  63 62 79 25 3d 54 54 42  25 3f 63 6f 6c 25 0d 34  |cby%=TTB%?col%.4|
0000b5b0  76 0f 43 45 43 46 25 3d  a4 63 65 63 66 0d 34 80  |v.CECF%=.cecf.4.|
0000b5c0  45 4c 25 3d 30 3a f4 20  46 4f 52 4b 25 3d 38 20  |EL%=0:. FORK%=8 |
0000b5d0  54 4f 20 31 35 3a 49 46  20 46 4e 68 69 67 68 28  |TO 15:IF FNhigh(|
0000b5e0  31 31 2c 4b 25 29 20 54  48 45 4e 20 4c 25 3d 4b  |11,K%) THEN L%=K|
0000b5f0  25 2d 37 3a 4e 45 58 54  20 45 4c 53 45 20 4e 45  |%-7:NEXT ELSE NE|
0000b600  58 54 0d 34 8a 19 e7 20  a4 68 69 67 68 28 31 31  |XT.4... .high(11|
0000b610  2c 32 33 29 20 8c 20 4c  25 3d 31 0d 34 94 19 e7  |,23) . L%=1.4...|
0000b620  20 a4 68 69 67 68 28 31  31 2c 32 34 29 20 8c 20  | .high(11,24) . |
0000b630  4c 25 3d 32 0d 34 9e 19  e7 20 a4 68 69 67 68 28  |L%=2.4... .high(|
0000b640  31 31 2c 31 36 29 20 8c  20 4c 25 3d 33 0d 34 a8  |11,16) . L%=3.4.|
0000b650  2e e3 4b 25 3d 31 31 20  b8 20 31 35 3a e7 20 a4  |..K%=11 . 15:. .|
0000b660  68 69 67 68 28 31 31 2c  4b 25 29 20 8c 20 4c 25  |high(11,K%) . L%|
0000b670  3d 4b 25 2d 37 3a ed 20  8b 20 ed 0d 34 b2 0e e7  |=K%-7:. . ..4...|
0000b680  20 4c 25 3d 30 20 8c 20  e1 0d 34 bc 17 45 43 46  | L%=0 . ..4..ECF|
0000b690  25 28 4c 25 2c 43 45 43  46 25 29 3d 63 62 79 25  |%(L%,CECF%)=cby%|
0000b6a0  0d 34 c6 11 f2 66 6f 72  63 65 64 72 61 77 70 61  |.4...forcedrawpa|
0000b6b0  74 0d 34 d0 05 e1 0d 34  e4 14 dd f2 72 65 6c 6f  |t.4....4....relo|
0000b6c0  61 64 70 61 74 66 69 6c  6c 73 0d 34 ee 2e c8 99  |adpatfills.4....|
0000b6d0  26 32 45 2c 32 36 36 2c  50 46 49 4c 4c 53 25 2c  |&2E,266,PFILLS%,|
0000b6e0  22 3c 49 6d 61 67 65 72  79 24 44 69 72 3e 2e 50  |"<Imagery$Dir>.P|
0000b6f0  61 74 46 69 6c 6c 73 22  0d 34 f8 05 e1 0d 35 0c  |atFills".4....5.|
0000b700  12 dd f2 70 61 74 66 69  6c 6c 63 6c 69 63 6b 0d  |...patfillclick.|
0000b710  35 16 22 e7 20 4d 4f 55  49 43 25 3d 32 20 8c 20  |5.". MOUIC%=2 . |
0000b720  f2 72 65 6c 6f 61 64 70  61 74 66 69 6c 6c 73 3a  |.reloadpatfills:|
0000b730  e1 0d 35 20 35 42 4c 4b  25 21 38 3d 48 41 4e 44  |..5 5BLK%!8=HAND|
0000b740  25 28 32 30 29 3a c8 99  20 22 57 69 6d 70 5f 47  |%(20):.. "Wimp_G|
0000b750  65 74 57 69 6e 64 6f 77  53 74 61 74 65 22 2c 2c  |etWindowState",,|
0000b760  42 4c 4b 25 2b 38 0d 35  2a 36 58 4f 46 25 3d 28  |BLK%+8.5*6XOF%=(|
0000b770  28 21 42 4c 4b 25 29 2d  28 42 4c 4b 25 21 31 32  |(!BLK%)-(BLK%!12|
0000b780  29 29 3a 59 4f 46 25 3d  28 28 42 4c 4b 25 21 34  |)):YOF%=((BLK%!4|
0000b790  29 2d 28 42 4c 4b 25 21  31 36 29 29 0d 35 34 74  |)-(BLK%!16)).54t|
0000b7a0  4b 25 3d 2d 31 3a e3 4c  25 3d 31 20 b8 20 31 32  |K%=-1:.L%=1 . 12|
0000b7b0  3a 42 58 25 3d 28 28 4c  25 2d 31 29 2a 38 34 29  |:BX%=((L%-1)*84)|
0000b7c0  2b 32 34 3a 42 59 25 3d  35 32 3a e7 20 58 4f 46  |+24:BY%=52:. XOF|
0000b7d0  25 3e 3d 42 58 25 20 80  20 59 4f 46 25 3e 3d 42  |%>=BX% . YOF%>=B|
0000b7e0  59 25 20 80 20 58 4f 46  25 3c 28 42 58 25 2b 36  |Y% . XOF%<(BX%+6|
0000b7f0  34 29 20 80 20 59 4f 46  25 3c 28 42 59 25 2b 36  |4) . YOF%<(BY%+6|
0000b800  34 29 20 8c 20 4b 25 3d  4c 25 3a ed 20 8b 20 ed  |4) . K%=L%:. . .|
0000b810  0d 35 3e 2b e7 20 4b 25  3d 2d 31 20 8c 20 e1 20  |.5>+. K%=-1 . . |
0000b820  8b 20 43 50 46 25 3d 4b  25 3a f2 66 6f 72 63 65  |. CPF%=K%:.force|
0000b830  64 72 61 77 70 61 74 66  69 6c 6c 0d 35 48 05 e1  |drawpatfill.5H..|
0000b840  0d 35 5c 0d dd f2 66 69  6c 6c 75 73 65 0d 35 66  |.5\...filluse.5f|
0000b850  20 53 4e 4f 25 3d a4 67  72 61 66 69 6c 6e 6f 3a  | SNO%=.grafilno:|
0000b860  e7 20 53 4e 4f 25 3d 2d  31 20 8c 20 e1 0d 35 70  |. SNO%=-1 . ..5p|
0000b870  77 f2 6b 69 6c 6c 66 3a  46 55 53 45 25 3d 33 31  |w.killf:FUSE%=31|
0000b880  3a 46 55 53 54 25 3d 30  3a 47 52 46 4e 25 3d 53  |:FUST%=0:GRFN%=S|
0000b890  4e 4f 25 3a 47 52 54 59  25 3d 30 3a f2 75 64 3a  |NO%:GRTY%=0:.ud:|
0000b8a0  f2 77 69 6e 64 6e 61 6d  65 28 32 2c 50 49 43 24  |.windname(2,PIC$|
0000b8b0  2b 22 20 5b 47 72 61 64  75 61 74 65 64 20 66 69  |+" [Graduated fi|
0000b8c0  6c 6c 20 28 22 2b a4 66  69 6c 6c 64 65 74 28 53  |ll ("+.filldet(S|
0000b8d0  4e 4f 25 2b 31 29 2b 22  29 5d 22 29 3a f2 73 70  |NO%+1)+")]"):.sp|
0000b8e0  69 6e 69 74 0d 35 7a 17  e7 20 4d 4f 55 42 25 3d  |init.5z.. MOUB%=|
0000b8f0  34 20 8c 20 f2 6d 65 6e  6f 66 66 0d 35 84 05 e1  |4 . .menoff.5...|
0000b900  0d 35 98 3a dd a4 66 69  6c 6c 64 65 74 28 53 25  |.5.:..filldet(S%|
0000b910  29 3a e7 20 47 52 54 59  25 3d 30 20 8c 20 3d 22  |):. GRTY%=0 . ="|
0000b920  66 6c 6f 6f 64 20 22 2b  c3 53 25 20 8b 20 3d 22  |flood "+.S% . ="|
0000b930  61 72 65 61 20 22 2b c3  53 25 0d 35 ac 10 dd f2  |area "+.S%.5....|
0000b940  69 6e 76 65 72 74 66 69  6c 6c 0d 35 b6 12 4e 4f  |invertfill.5..NO|
0000b950  53 25 3d a4 67 72 61 66  69 6c 6e 6f 0d 35 c0 20  |S%=.grafilno.5. |
0000b960  49 41 25 3d 30 3a 49 42  25 3d bb a4 67 69 28 31  |IA%=0:IB%=..gi(1|
0000b970  33 2c 38 33 29 3a 49 42  25 2d 3d 31 0d 35 ca 6b  |3,83):IB%-=1.5.k|
0000b980  f5 3a c8 94 20 47 52 46  49 25 28 49 41 25 2c 30  |.:.. GRFI%(IA%,0|
0000b990  2c 4e 4f 53 25 29 2c 47  52 46 49 25 28 49 42 25  |,NOS%),GRFI%(IB%|
0000b9a0  2c 30 2c 4e 4f 53 25 29  3a c8 94 20 47 52 46 49  |,0,NOS%):.. GRFI|
0000b9b0  25 28 49 41 25 2c 31 2c  4e 4f 53 25 29 2c 47 52  |%(IA%,1,NOS%),GR|
0000b9c0  46 49 25 28 49 42 25 2c  31 2c 4e 4f 53 25 29 3a  |FI%(IB%,1,NOS%):|
0000b9d0  49 41 25 2b 3d 31 3a 49  42 25 2d 3d 31 3a fd 20  |IA%+=1:IB%-=1:. |
0000b9e0  49 41 25 3e 49 42 25 0d  35 d4 12 f2 66 6f 72 63  |IA%>IB%.5...forc|
0000b9f0  65 64 72 61 77 66 69 6c  6c 0d 35 de 05 e1 0d 35  |edrawfill.5....5|
0000ba00  f2 10 dd f2 69 6e 74 65  72 70 66 69 6c 6c 0d 35  |....interpfill.5|
0000ba10  fc 12 4e 4f 53 25 3d a4  67 72 61 66 69 6c 6e 6f  |..NOS%=.grafilno|
0000ba20  0d 36 06 15 49 41 25 3d  30 3a f5 3a 49 42 25 3d  |.6..IA%=0:.:IB%=|
0000ba30  49 41 25 2b 31 0d 36 10  1f e7 20 49 42 25 3d 31  |IA%+1.6... IB%=1|
0000ba40  36 20 8c 20 f2 66 6f 72  63 65 64 72 61 77 66 69  |6 . .forcedrawfi|
0000ba50  6c 6c 3a e1 0d 36 1a 3f  e7 20 47 52 46 49 25 28  |ll:..6.?. GRFI%(|
0000ba60  49 42 25 2c 30 2c 4e 4f  53 25 29 3d 30 20 80 20  |IB%,0,NOS%)=0 . |
0000ba70  47 52 46 49 25 28 49 42  25 2c 31 2c 4e 4f 53 25  |GRFI%(IB%,1,NOS%|
0000ba80  29 3d 30 20 8c 20 49 42  25 2b 3d 31 3a e5 20 8d  |)=0 . IB%+=1:. .|
0000ba90  54 50 76 0d 36 24 27 e7  20 49 42 25 3d 49 41 25  |TPv.6$'. IB%=IA%|
0000baa0  2b 31 20 8c 20 49 41 25  3d 49 42 25 3a 49 42 25  |+1 . IA%=IB%:IB%|
0000bab0  2b 3d 31 3a e5 20 8d 54  50 76 0d 36 2e 1c 54 31  |+=1:. .TPv.6..T1|
0000bac0  25 3d 47 52 46 49 25 28  49 41 25 2c 31 2c 4e 4f  |%=GRFI%(IA%,1,NO|
0000bad0  53 25 29 3e 3e 36 0d 36  38 2a 52 31 25 3d 28 28  |S%)>>6.68*R1%=((|
0000bae0  47 52 46 49 25 28 49 41  25 2c 30 2c 4e 4f 53 25  |GRFI%(IA%,0,NOS%|
0000baf0  29 20 80 20 25 31 31 29  3c 3c 32 29 2b 54 31 25  |) . %11)<<2)+T1%|
0000bb00  0d 36 42 27 47 31 25 3d  28 47 52 46 49 25 28 49  |.6B'G1%=(GRFI%(I|
0000bb10  41 25 2c 30 2c 4e 4f 53  25 29 20 80 20 25 31 31  |A%,0,NOS%) . %11|
0000bb20  30 30 29 2b 54 31 25 0d  36 4c 2e 42 31 25 3d 28  |00)+T1%.6L.B1%=(|
0000bb30  28 47 52 46 49 25 28 49  41 25 2c 30 2c 4e 4f 53  |(GRFI%(IA%,0,NOS|
0000bb40  25 29 20 80 20 25 31 31  30 30 30 30 29 3e 3e 32  |%) . %110000)>>2|
0000bb50  29 2b 54 31 25 0d 36 56  1c 54 32 25 3d 47 52 46  |)+T1%.6V.T2%=GRF|
0000bb60  49 25 28 49 42 25 2c 31  2c 4e 4f 53 25 29 3e 3e  |I%(IB%,1,NOS%)>>|
0000bb70  36 0d 36 60 3b 52 44 3d  28 28 28 28 47 52 46 49  |6.6`;RD=((((GRFI|
0000bb80  25 28 49 42 25 2c 30 2c  4e 4f 53 25 29 20 80 20  |%(IB%,0,NOS%) . |
0000bb90  25 31 31 29 3c 3c 32 29  2b 54 32 25 29 2d 52 31  |%11)<<2)+T2%)-R1|
0000bba0  25 29 2f 28 49 42 25 2d  49 41 25 29 0d 36 6a 38  |%)/(IB%-IA%).6j8|
0000bbb0  47 44 3d 28 28 28 47 52  46 49 25 28 49 42 25 2c  |GD=(((GRFI%(IB%,|
0000bbc0  30 2c 4e 4f 53 25 29 20  80 20 25 31 31 30 30 29  |0,NOS%) . %1100)|
0000bbd0  2b 54 32 25 29 2d 47 31  25 29 2f 28 49 42 25 2d  |+T2%)-G1%)/(IB%-|
0000bbe0  49 41 25 29 0d 36 74 3f  42 44 3d 28 28 28 28 47  |IA%).6t?BD=((((G|
0000bbf0  52 46 49 25 28 49 42 25  2c 30 2c 4e 4f 53 25 29  |RFI%(IB%,0,NOS%)|
0000bc00  20 80 20 25 31 31 30 30  30 30 29 3e 3e 32 29 2b  | . %110000)>>2)+|
0000bc10  54 32 25 29 2d 42 31 25  29 2f 28 49 42 25 2d 49  |T2%)-B1%)/(IB%-I|
0000bc20  41 25 29 0d 36 7e 1a 49  41 25 2b 3d 31 3a e3 4c  |A%).6~.IA%+=1:.L|
0000bc30  25 3d 31 20 b8 20 49 42  25 2d 49 41 25 0d 36 88  |%=1 . IB%-IA%.6.|
0000bc40  30 52 25 3d 52 31 25 2b  28 52 44 2a 4c 25 29 3a  |0R%=R1%+(RD*L%):|
0000bc50  47 25 3d 47 31 25 2b 28  47 44 2a 4c 25 29 3a 42  |G%=G1%+(GD*L%):B|
0000bc60  25 3d 42 31 25 2b 28 42  44 2a 4c 25 29 0d 36 92  |%=B1%+(BD*L%).6.|
0000bc70  49 c8 99 20 22 43 6f 6c  6f 75 72 54 72 61 6e 73  |I.. "ColourTrans|
0000bc80  5f 52 65 74 75 72 6e 47  43 4f 4c 46 6f 72 4d 6f  |_ReturnGCOLForMo|
0000bc90  64 65 22 2c 28 42 25 3c  3c 32 38 29 2b 28 47 25  |de",(B%<<28)+(G%|
0000bca0  3c 3c 32 30 29 2b 28 52  25 3c 3c 31 32 29 2c 31  |<<20)+(R%<<12),1|
0000bcb0  35 20 b8 20 47 25 0d 36  9c 3b 47 52 46 49 25 28  |5 . G%.6.;GRFI%(|
0000bcc0  49 41 25 2c 30 2c 4e 4f  53 25 29 3d 47 25 3e 3e  |IA%,0,NOS%)=G%>>|
0000bcd0  32 3a 47 52 46 49 25 28  49 41 25 2c 31 2c 4e 4f  |2:GRFI%(IA%,1,NO|
0000bce0  53 25 29 3d 28 47 25 20  80 20 25 31 31 29 3c 3c  |S%)=(G% . %11)<<|
0000bcf0  36 0d 36 a6 0c 49 41 25  2b 3d 31 3a ed 0d 36 b0  |6.6..IA%+=1:..6.|
0000bd00  14 49 42 25 3d 49 41 25  2b 31 3a e5 20 8d 54 50  |.IB%=IA%+1:. .TP|
0000bd10  76 0d 36 c4 0e dd f2 77  69 70 65 66 69 6c 6c 0d  |v.6....wipefill.|
0000bd20  36 ce 12 4e 4f 53 25 3d  a4 67 72 61 66 69 6c 6e  |6..NOS%=.grafiln|
0000bd30  6f 0d 36 d8 30 e3 4c 25  3d 30 20 b8 20 31 35 3a  |o.6.0.L%=0 . 15:|
0000bd40  e3 4b 25 3d 30 20 b8 20  31 3a 47 52 46 49 25 28  |.K%=0 . 1:GRFI%(|
0000bd50  4c 25 2c 4b 25 2c 4e 4f  53 25 29 3d 30 3a ed 3a  |L%,K%,NOS%)=0:.:|
0000bd60  ed 0d 36 e2 14 f2 66 6f  72 63 65 64 72 61 77 66  |..6...forcedrawf|
0000bd70  69 6c 6c 3a e1 0d 36 f6  0e dd f2 63 6f 6d 70 66  |ill:..6....compf|
0000bd80  69 6c 6c 0d 37 00 12 4e  4f 53 25 3d a4 67 72 61  |ill.7..NOS%=.gra|
0000bd90  66 69 6c 6e 6f 0d 37 0a  37 43 41 25 3d 47 52 46  |filno.7.7CA%=GRF|
0000bda0  49 25 28 30 2c 30 2c 4e  4f 53 25 29 3a 54 41 25  |I%(0,0,NOS%):TA%|
0000bdb0  3d 47 52 46 49 25 28 30  2c 31 2c 4e 4f 53 25 29  |=GRFI%(0,1,NOS%)|
0000bdc0  3a 49 41 25 3d 31 3a 49  42 25 3d 31 0d 37 14 0d  |:IA%=1:IB%=1.7..|
0000bdd0  c8 95 20 49 42 25 3c 31  36 0d 37 1e b2 e7 20 47  |.. IB%<16.7... G|
0000bde0  52 46 49 25 28 49 42 25  2c 30 2c 4e 4f 53 25 29  |RFI%(IB%,0,NOS%)|
0000bdf0  3c 3e 43 41 25 20 84 20  47 52 46 49 25 28 49 42  |<>CA% . GRFI%(IB|
0000be00  25 2c 31 2c 4e 4f 53 25  29 3c 3e 54 41 25 20 8c  |%,1,NOS%)<>TA% .|
0000be10  20 47 52 46 49 25 28 49  41 25 2c 30 2c 4e 4f 53  | GRFI%(IA%,0,NOS|
0000be20  25 29 3d 47 52 46 49 25  28 49 42 25 2c 30 2c 4e  |%)=GRFI%(IB%,0,N|
0000be30  4f 53 25 29 3a 47 52 46  49 25 28 49 41 25 2c 31  |OS%):GRFI%(IA%,1|
0000be40  2c 4e 4f 53 25 29 3d 47  52 46 49 25 28 49 42 25  |,NOS%)=GRFI%(IB%|
0000be50  2c 31 2c 4e 4f 53 25 29  3a 43 41 25 3d 47 52 46  |,1,NOS%):CA%=GRF|
0000be60  49 25 28 49 41 25 2c 30  2c 4e 4f 53 25 29 3a 54  |I%(IA%,0,NOS%):T|
0000be70  41 25 3d 47 52 46 49 25  28 49 41 25 2c 31 2c 4e  |A%=GRFI%(IA%,1,N|
0000be80  4f 53 25 29 3a 49 41 25  2b 3d 31 0d 37 28 0c 49  |OS%):IA%+=1.7(.I|
0000be90  42 25 2b 3d 31 3a ce 0d  37 32 3e c8 95 20 49 41  |B%+=1:..72>.. IA|
0000bea0  25 3c 31 36 3a 47 52 46  49 25 28 49 41 25 2c 30  |%<16:GRFI%(IA%,0|
0000beb0  2c 4e 4f 53 25 29 3d 30  3a 47 52 46 49 25 28 49  |,NOS%)=0:GRFI%(I|
0000bec0  41 25 2c 31 2c 4e 4f 53  25 29 3d 30 3a 49 41 25  |A%,1,NOS%)=0:IA%|
0000bed0  2b 3d 31 3a ce 0d 37 3c  12 f2 66 6f 72 63 65 64  |+=1:..7<..forced|
0000bee0  72 61 77 66 69 6c 6c 0d  37 46 05 e1 0d 37 5a 0f  |rawfill.7F...7Z.|
0000bef0  dd f2 66 69 6c 6c 63 6c  69 63 6b 0d 37 64 17 e7  |..fillclick.7d..|
0000bf00  20 4d 4f 55 49 43 25 3c  30 20 8c 20 e5 20 8d 54  | MOUIC%<0 . . .T|
0000bf10  60 7a 0d 37 6e 1d e7 20  4d 4f 55 49 43 25 3d 31  |`z.7n.. MOUIC%=1|
0000bf20  30 35 20 8c 20 f2 66 69  6c 6c 75 73 65 3a e1 0d  |05 . .filluse:..|
0000bf30  37 78 1f e7 20 4d 4f 55  49 43 25 3d 36 32 20 8c  |7x.. MOUIC%=62 .|
0000bf40  20 f2 69 6e 76 65 72 74  66 69 6c 6c 3a e1 0d 37  | .invertfill:..7|
0000bf50  82 1f e7 20 4d 4f 55 49  43 25 3d 36 33 20 8c 20  |... MOUIC%=63 . |
0000bf60  f2 69 6e 74 65 72 70 66  69 6c 6c 3a e1 0d 37 8c  |.interpfill:..7.|
0000bf70  1e e7 20 4d 4f 55 49 43  25 3d 31 31 30 20 8c 20  |.. MOUIC%=110 . |
0000bf80  f2 77 69 70 65 66 69 6c  6c 3a e1 0d 37 96 1e e7  |.wipefill:..7...|
0000bf90  20 4d 4f 55 49 43 25 3d  31 31 31 20 8c 20 f2 63  | MOUIC%=111 . .c|
0000bfa0  6f 6d 70 66 69 6c 6c 3a  e1 0d 37 a0 40 e7 20 4d  |ompfill:..7.@. M|
0000bfb0  4f 55 49 43 25 3c 3e 38  37 20 80 20 4d 4f 55 49  |OUIC%<>87 . MOUI|
0000bfc0  43 25 3c 3e 38 39 20 80  20 4d 4f 55 49 43 25 3c  |C%<>89 . MOUIC%<|
0000bfd0  3e 39 31 20 80 20 4d 4f  55 49 43 25 3c 3e 39 33  |>91 . MOUIC%<>93|
0000bfe0  20 8c 20 e5 20 8d 74 7e  77 0d 37 aa 2d e7 20 a4  | . . .t~w.7.-. .|
0000bff0  68 69 67 68 28 31 33 2c  4d 4f 55 49 43 25 29 20  |high(13,MOUIC%) |
0000c000  8c 20 f2 69 63 6f 6e 6c  6f 28 31 33 2c 4d 4f 55  |. .iconlo(13,MOU|
0000c010  49 43 25 29 3a e1 0d 37  b4 b7 e7 20 a4 68 69 67  |IC%):..7... .hig|
0000c020  68 28 31 33 2c 37 35 29  20 84 20 a4 68 69 67 68  |h(13,75) . .high|
0000c030  28 31 33 2c 37 37 29 20  8c 20 f2 6d 65 73 73 61  |(13,77) . .messa|
0000c040  67 65 28 31 33 2c 22 59  6f 75 20 63 61 6e 6e 6f  |ge(13,"You canno|
0000c050  74 20 75 73 65 20 61 6e  20 65 64 67 65 20 70 72  |t use an edge pr|
0000c060  69 6f 72 69 74 79 20 77  69 74 68 20 61 20 72 61  |iority with a ra|
0000c070  64 69 61 6c 20 66 69 6c  6c 2e 22 29 20 8b 20 f2  |dial fill.") . .|
0000c080  69 63 6f 6e 6c 6f 28 31  33 2c 38 37 29 3a f2 69  |iconlo(13,87):.i|
0000c090  63 6f 6e 6c 6f 28 31 33  2c 38 39 29 3a f2 69 63  |conlo(13,89):.ic|
0000c0a0  6f 6e 6c 6f 28 31 33 2c  39 31 29 3a f2 69 63 6f  |onlo(13,91):.ico|
0000c0b0  6e 6c 6f 28 31 33 2c 39  33 29 3a f2 69 63 6f 6e  |nlo(13,93):.icon|
0000c0c0  68 69 28 31 33 2c 4d 4f  55 49 43 25 29 0d 37 be  |hi(13,MOUIC%).7.|
0000c0d0  28 e7 20 4d 4f 55 49 43  25 3c 3e 37 35 20 84 20  |(. MOUIC%<>75 . |
0000c0e0  a4 68 69 67 68 28 31 33  2c 37 35 29 20 8c 20 e5  |.high(13,75) . .|
0000c0f0  20 8d 64 5c 77 0d 37 c8  83 e7 20 a4 68 69 67 68  | .d\w.7... .high|
0000c100  28 31 33 2c 38 37 29 20  84 20 a4 68 69 67 68 28  |(13,87) . .high(|
0000c110  31 33 2c 38 39 29 20 84  20 a4 68 69 67 68 28 31  |13,89) . .high(1|
0000c120  33 2c 39 31 29 20 84 20  a4 68 69 67 68 28 31 33  |3,91) . .high(13|
0000c130  2c 39 33 29 20 8c 20 f2  6d 65 73 73 61 67 65 28  |,93) . .message(|
0000c140  34 2c 22 59 6f 75 20 63  61 6e 6e 6f 74 20 75 73  |4,"You cannot us|
0000c150  65 20 61 20 72 61 64 69  61 6c 20 66 69 6c 6c 20  |e a radial fill |
0000c160  77 69 74 68 20 61 6e 20  65 64 67 65 20 70 72 69  |with an edge pri|
0000c170  6f 72 69 74 79 2e 22 29  0d 37 d2 5f f2 69 63 6f  |ority.").7._.ico|
0000c180  6e 68 69 28 31 33 2c 37  35 29 3a f2 69 63 6f 6e  |nhi(13,75):.icon|
0000c190  6c 6f 28 31 33 2c 36 37  29 3a f2 69 63 6f 6e 6c  |lo(13,67):.iconl|
0000c1a0  6f 28 31 33 2c 36 39 29  3a f2 69 63 6f 6e 6c 6f  |o(13,69):.iconlo|
0000c1b0  28 31 33 2c 37 31 29 3a  f2 69 63 6f 6e 6c 6f 28  |(13,71):.iconlo(|
0000c1c0  31 33 2c 37 33 29 3a f2  69 63 6f 6e 6c 6f 28 31  |13,73):.iconlo(1|
0000c1d0  33 2c 37 37 29 3a e1 0d  37 dc 53 e7 20 28 4d 4f  |3,77):..7.S. (MO|
0000c1e0  55 49 43 25 3e 3d 32 20  80 20 4d 4f 55 49 43 25  |UIC%>=2 . MOUIC%|
0000c1f0  3c 3d 31 34 29 20 84 20  4d 4f 55 49 43 25 3d 37  |<=14) . MOUIC%=7|
0000c200  38 20 84 20 4d 4f 55 49  43 25 3d 37 39 20 84 20  |8 . MOUIC%=79 . |
0000c210  4d 4f 55 49 43 25 3d 38  35 20 8c 20 f2 73 65 74  |MOUIC%=85 . .set|
0000c220  67 72 61 64 66 69 6c 6c  3a e1 0d 37 e6 28 e7 20  |gradfill:..7.(. |
0000c230  4d 4f 55 49 43 25 3c 3e  37 37 20 84 20 a4 68 69  |MOUIC%<>77 . .hi|
0000c240  67 68 28 31 33 2c 37 37  29 20 8c 20 e5 20 8d 54  |gh(13,77) . . .T|
0000c250  44 78 0d 37 f0 83 e7 20  a4 68 69 67 68 28 31 33  |Dx.7... .high(13|
0000c260  2c 38 37 29 20 84 20 a4  68 69 67 68 28 31 33 2c  |,87) . .high(13,|
0000c270  38 39 29 20 84 20 a4 68  69 67 68 28 31 33 2c 39  |89) . .high(13,9|
0000c280  31 29 20 84 20 a4 68 69  67 68 28 31 33 2c 39 33  |1) . .high(13,93|
0000c290  29 20 8c 20 f2 6d 65 73  73 61 67 65 28 34 2c 22  |) . .message(4,"|
0000c2a0  59 6f 75 20 63 61 6e 6e  6f 74 20 75 73 65 20 61  |You cannot use a|
0000c2b0  20 72 61 64 69 61 6c 20  66 69 6c 6c 20 77 69 74  | radial fill wit|
0000c2c0  68 20 61 6e 20 65 64 67  65 20 70 72 69 6f 72 69  |h an edge priori|
0000c2d0  74 79 2e 22 29 0d 37 fa  5f f2 69 63 6f 6e 68 69  |ty.").7._.iconhi|
0000c2e0  28 31 33 2c 37 37 29 3a  f2 69 63 6f 6e 6c 6f 28  |(13,77):.iconlo(|
0000c2f0  31 33 2c 36 37 29 3a f2  69 63 6f 6e 6c 6f 28 31  |13,67):.iconlo(1|
0000c300  33 2c 36 39 29 3a f2 69  63 6f 6e 6c 6f 28 31 33  |3,69):.iconlo(13|
0000c310  2c 37 31 29 3a f2 69 63  6f 6e 6c 6f 28 31 33 2c  |,71):.iconlo(13,|
0000c320  37 33 29 3a f2 69 63 6f  6e 6c 6f 28 31 33 2c 37  |73):.iconlo(13,7|
0000c330  35 29 3a e1 0d 38 04 54  e7 20 4d 4f 55 49 43 25  |5):..8.T. MOUIC%|
0000c340  3d 39 35 20 84 20 4d 4f  55 49 43 25 3d 39 39 20  |=95 . MOUIC%=99 |
0000c350  84 20 4d 4f 55 49 43 25  3d 31 30 31 20 84 20 4d  |. MOUIC%=101 . M|
0000c360  4f 55 49 43 25 3d 31 30  33 20 84 20 4d 4f 55 49  |OUIC%=103 . MOUI|
0000c370  43 25 3d 39 37 20 8c 20  f2 66 6f 72 63 65 64 72  |C%=97 . .forcedr|
0000c380  61 77 66 69 6c 6c 3a e1  0d 38 0e 21 f2 61 72 72  |awfill:..8.!.arr|
0000c390  6f 77 73 28 31 33 2c 20  34 30 2c 34 31 2c 38 31  |ows(13, 40,41,81|
0000c3a0  2c 30 2c 33 35 39 2c 31  29 0d 38 18 49 e7 20 4d  |,0,359,1).8.I. M|
0000c3b0  4f 55 42 25 3d 31 20 80  20 4d 4f 55 49 43 25 3d  |OUB%=1 . MOUIC%=|
0000c3c0  34 33 20 8c 20 4d 4f 55  49 43 25 3d 34 35 20 8b  |43 . MOUIC%=45 .|
0000c3d0  20 e7 20 4d 4f 55 42 25  3d 31 20 80 20 4d 4f 55  | . MOUB%=1 . MOU|
0000c3e0  49 43 25 3d 34 35 20 8c  20 4d 4f 55 49 43 25 3d  |IC%=45 . MOUIC%=|
0000c3f0  34 33 0d 38 22 19 e7 20  4d 4f 55 49 43 25 3c 3e  |43.8".. MOUIC%<>|
0000c400  34 33 20 8c 20 e5 20 8d  44 40 78 0d 38 2c 21 4e  |43 . . .D@x.8,!N|
0000c410  4f 53 25 3d bb a4 67 69  28 31 33 2c 38 33 29 3a  |OS%=..gi(13,83):|
0000c420  e7 20 4e 4f 53 25 3d 32  20 8c 20 e1 0d 38 36 3e  |. NOS%=2 . ..86>|
0000c430  f2 73 68 61 64 65 69 63  6f 6e 28 31 33 2c a4 66  |.shadeicon(13,.f|
0000c440  69 6c 69 63 28 4e 4f 53  25 2d 31 29 29 3a 4e 4f  |ilic(NOS%-1)):NO|
0000c450  53 25 2d 3d 31 3a f2 73  69 28 31 33 2c 38 33 2c  |S%-=1:.si(13,83,|
0000c460  c3 28 4e 4f 53 25 29 29  3a e1 0d 38 40 19 e7 20  |.(NOS%)):..8@.. |
0000c470  4d 4f 55 49 43 25 3c 3e  34 35 20 8c 20 e5 20 8d  |MOUIC%<>45 . . .|
0000c480  44 5e 78 0d 38 4a 22 4e  4f 53 25 3d bb a4 67 69  |D^x.8J"NOS%=..gi|
0000c490  28 31 33 2c 38 33 29 3a  e7 20 4e 4f 53 25 3d 31  |(13,83):. NOS%=1|
0000c4a0  36 20 8c 20 e1 0d 38 54  3c f2 63 6c 65 61 72 69  |6 . ..8T<.cleari|
0000c4b0  63 6f 6e 28 31 33 2c a4  66 69 6c 69 63 28 4e 4f  |con(13,.filic(NO|
0000c4c0  53 25 29 29 3a 4e 4f 53  25 2b 3d 31 3a f2 73 69  |S%)):NOS%+=1:.si|
0000c4d0  28 31 33 2c 38 33 2c c3  28 4e 4f 53 25 29 29 3a  |(13,83,.(NOS%)):|
0000c4e0  e1 0d 38 5e 05 e1 0d 38  72 11 dd f2 73 65 74 67  |..8^...8r...setg|
0000c4f0  72 61 64 66 69 6c 6c 0d  38 7c 12 53 4e 4f 25 3d  |radfill.8|.SNO%=|
0000c500  a4 67 72 61 66 69 6c 6e  6f 0d 38 86 0f c8 8e 20  |.grafilno.8.... |
0000c510  4d 4f 55 49 43 25 20 ca  0d 38 90 0f c9 20 37 38  |MOUIC% ..8... 78|
0000c520  3a f7 20 8d 44 76 79 0d  38 9a 0f c9 20 37 39 3a  |:. .Dvy.8... 79:|
0000c530  f7 20 8d 74 40 79 0d 38  a4 0e c9 20 32 3a f7 20  |. .t@y.8... 2:. |
0000c540  8d 74 4a 79 0d 38 ae 0e  c9 20 33 3a f7 20 8d 74  |.tJy.8... 3:. .t|
0000c550  54 79 0d 38 b8 0e c9 20  34 3a f7 20 8d 74 5e 79  |Ty.8... 4:. .t^y|
0000c560  0d 38 c2 0e c9 20 35 3a  f7 20 8d 74 68 79 0d 38  |.8... 5:. .thy.8|
0000c570  cc 0e c9 20 36 3a f7 20  8d 74 72 79 0d 38 d6 0e  |... 6:. .try.8..|
0000c580  c9 20 37 3a f7 20 8d 64  46 79 0d 38 e0 0e c9 20  |. 7:. .dFy.8... |
0000c590  38 3a f7 20 8d 64 50 79  0d 38 ea 0e c9 20 39 3a  |8:. .dPy.8... 9:|
0000c5a0  f7 20 8d 64 5a 79 0d 38  f4 0f c9 20 31 30 3a f7  |. .dZy.8... 10:.|
0000c5b0  20 8d 64 64 79 0d 38 fe  0f c9 20 31 31 3a f7 20  | .ddy.8... 11:. |
0000c5c0  8d 74 7c 79 0d 39 08 0f  c9 20 31 32 3a f7 20 8d  |.t|y.9... 12:. .|
0000c5d0  64 6e 79 0d 39 12 0f c9  20 31 33 3a f7 20 8d 64  |dny.9... 13:. .d|
0000c5e0  78 79 0d 39 1c 0f c9 20  31 34 3a f7 20 8d 54 42  |xy.9... 14:. .TB|
0000c5f0  7a 0d 39 26 0f c9 20 38  35 3a f7 20 8d 54 4c 7a  |z.9&.. 85:. .TLz|
0000c600  0d 39 30 05 cb 0d 39 3a  4a e3 4c 25 3d 30 20 b8  |.90...9:J.L%=0 .|
0000c610  20 31 35 3a f2 73 68 61  64 65 69 63 6f 6e 28 31  | 15:.shadeicon(1|
0000c620  33 2c a4 66 69 6c 69 63  28 4c 25 29 29 3a e3 4b  |3,.filic(L%)):.K|
0000c630  25 3d 30 20 b8 20 31 3a  47 52 46 49 25 28 4c 25  |%=0 . 1:GRFI%(L%|
0000c640  2c 4b 25 2c 53 4e 4f 25  29 3d 30 3a ed 3a ed 0d  |,K%,SNO%)=0:.:..|
0000c650  39 44 51 f3 20 53 25 3a  e3 4c 25 3d 30 20 b8 20  |9DQ. S%:.L%=0 . |
0000c660  53 25 2d 31 3a f2 63 6c  65 61 72 69 63 6f 6e 28  |S%-1:.clearicon(|
0000c670  31 33 2c a4 66 69 6c 69  63 28 4c 25 29 29 3a e3  |13,.filic(L%)):.|
0000c680  4b 25 3d 30 20 b8 20 31  3a f3 20 47 52 46 49 25  |K%=0 . 1:. GRFI%|
0000c690  28 4c 25 2c 4b 25 2c 53  4e 4f 25 29 3a ed 3a ed  |(L%,K%,SNO%):.:.|
0000c6a0  0d 39 4e 12 f2 73 69 28  31 33 2c 38 33 2c c3 53  |.9N..si(13,83,.S|
0000c6b0  25 29 0d 39 58 12 f2 66  6f 72 63 65 64 72 61 77  |%).9X..forcedraw|
0000c6c0  66 69 6c 6c 0d 39 62 05  e1 0d 39 76 48 dc 20 31  |fill.9b...9vH. 1|
0000c6d0  32 2c 20 31 2c 30 2c 31  2c 36 34 2c 31 2c 31 32  |2, 1,0,1,64,1,12|
0000c6e0  38 2c 31 2c 31 39 32 2c  32 2c 30 2c 32 2c 36 34  |8,1,192,2,0,2,64|
0000c6f0  2c 32 2c 31 32 38 2c 32  2c 31 39 32 2c 33 2c 30  |,2,128,2,192,3,0|
0000c700  2c 33 2c 36 34 2c 33 2c  31 32 38 2c 33 2c 31 39  |,3,64,3,128,3,19|
0000c710  32 0d 39 80 4c dc 20 31  32 2c 20 34 2c 30 2c 34  |2.9.L. 12, 4,0,4|
0000c720  2c 36 34 2c 34 2c 31 32  38 2c 34 2c 31 39 32 2c  |,64,4,128,4,192,|
0000c730  38 2c 30 2c 38 2c 36 34  2c 38 2c 31 32 38 2c 38  |8,0,8,64,8,128,8|
0000c740  2c 31 39 32 2c 31 32 2c  30 2c 31 32 2c 36 34 2c  |,192,12,0,12,64,|
0000c750  31 32 2c 31 32 38 2c 31  32 2c 31 39 32 0d 39 8a  |12,128,12,192.9.|
0000c760  50 dc 20 31 32 2c 20 35  2c 30 2c 35 2c 36 34 2c  |P. 12, 5,0,5,64,|
0000c770  35 2c 31 32 38 2c 35 2c  31 39 32 2c 31 30 2c 30  |5,128,5,192,10,0|
0000c780  2c 31 30 2c 36 34 2c 31  30 2c 31 32 38 2c 31 30  |,10,64,10,128,10|
0000c790  2c 31 39 32 2c 31 35 2c  30 2c 31 35 2c 36 34 2c  |,192,15,0,15,64,|
0000c7a0  31 35 2c 31 32 38 2c 31  35 2c 31 39 32 0d 39 94  |15,128,15,192.9.|
0000c7b0  54 dc 20 31 32 2c 20 31  36 2c 30 2c 31 36 2c 36  |T. 12, 16,0,16,6|
0000c7c0  34 2c 31 36 2c 31 32 38  2c 31 36 2c 31 39 32 2c  |4,16,128,16,192,|
0000c7d0  33 32 2c 30 2c 33 32 2c  36 34 2c 33 32 2c 31 32  |32,0,32,64,32,12|
0000c7e0  38 2c 33 32 2c 31 39 32  2c 34 38 2c 30 2c 34 38  |8,32,192,48,0,48|
0000c7f0  2c 36 34 2c 34 38 2c 31  32 38 2c 34 38 2c 31 39  |,64,48,128,48,19|
0000c800  32 0d 39 9e 54 dc 20 31  32 2c 20 31 37 2c 30 2c  |2.9.T. 12, 17,0,|
0000c810  31 37 2c 36 34 2c 31 37  2c 31 32 38 2c 31 37 2c  |17,64,17,128,17,|
0000c820  31 39 32 2c 33 34 2c 30  2c 33 34 2c 36 34 2c 33  |192,34,0,34,64,3|
0000c830  34 2c 31 32 38 2c 33 34  2c 31 39 32 2c 35 31 2c  |4,128,34,192,51,|
0000c840  30 2c 35 31 2c 36 34 2c  35 31 2c 31 32 38 2c 35  |0,51,64,51,128,5|
0000c850  31 2c 31 39 32 0d 39 a8  54 dc 20 31 32 2c 20 32  |1,192.9.T. 12, 2|
0000c860  30 2c 30 2c 32 30 2c 36  34 2c 32 30 2c 31 32 38  |0,0,20,64,20,128|
0000c870  2c 32 30 2c 31 39 32 2c  34 30 2c 30 2c 34 30 2c  |,20,192,40,0,40,|
0000c880  36 34 2c 34 30 2c 31 32  38 2c 34 30 2c 31 39 32  |64,40,128,40,192|
0000c890  2c 36 30 2c 30 2c 36 30  2c 36 34 2c 36 30 2c 31  |,60,0,60,64,60,1|
0000c8a0  32 38 2c 36 30 2c 31 39  32 0d 39 b2 65 dc 20 31  |28,60,192.9.e. 1|
0000c8b0  35 2c 20 30 2c 36 34 2c  30 2c 31 32 38 2c 30 2c  |5, 0,64,0,128,0,|
0000c8c0  31 39 32 2c 32 31 2c 30  2c 32 31 2c 36 34 2c 32  |192,21,0,21,64,2|
0000c8d0  31 2c 31 32 38 2c 32 31  2c 31 39 32 2c 34 32 2c  |1,128,21,192,42,|
0000c8e0  30 2c 34 32 2c 36 34 2c  34 32 2c 31 32 38 2c 34  |0,42,64,42,128,4|
0000c8f0  32 2c 31 39 32 2c 36 33  2c 30 2c 36 33 2c 36 34  |2,192,63,0,63,64|
0000c900  2c 36 33 2c 31 32 38 2c  36 33 2c 31 39 32 0d 39  |,63,128,63,192.9|
0000c910  bc 4c dc 20 31 32 2c 20  31 2c 30 2c 31 2c 36 34  |.L. 12, 1,0,1,64|
0000c920  2c 31 2c 31 32 38 2c 31  2c 31 39 32 2c 36 2c 30  |,1,128,1,192,6,0|
0000c930  2c 36 2c 36 34 2c 36 2c  31 32 38 2c 36 2c 31 39  |,6,64,6,128,6,19|
0000c940  32 2c 32 37 2c 30 2c 32  37 2c 36 34 2c 32 37 2c  |2,27,0,27,64,27,|
0000c950  31 32 38 2c 32 37 2c 31  39 32 0d 39 c6 3a dc 20  |128,27,192.9.:. |
0000c960  38 2c 20 31 38 2c 30 2c  31 38 2c 36 34 2c 31 38  |8, 18,0,18,64,18|
0000c970  2c 31 32 38 2c 31 38 2c  31 39 32 2c 33 39 2c 30  |,128,18,192,39,0|
0000c980  2c 33 39 2c 36 34 2c 33  39 2c 31 32 38 2c 33 39  |,39,64,39,128,39|
0000c990  2c 31 39 32 0d 39 d0 32  dc 20 38 2c 20 32 2c 30  |,192.9.2. 8, 2,0|
0000c9a0  2c 32 2c 36 34 2c 32 2c  31 32 38 2c 32 2c 31 39  |,2,64,2,128,2,19|
0000c9b0  32 2c 37 2c 30 2c 37 2c  36 34 2c 37 2c 31 32 38  |2,7,0,7,64,7,128|
0000c9c0  2c 37 2c 31 39 32 0d 39  da 54 dc 20 31 32 2c 20  |,7,192.9.T. 12, |
0000c9d0  31 37 2c 30 2c 31 37 2c  36 34 2c 31 37 2c 31 32  |17,0,17,64,17,12|
0000c9e0  38 2c 31 37 2c 31 39 32  2c 33 38 2c 30 2c 33 38  |8,17,192,38,0,38|
0000c9f0  2c 36 34 2c 33 38 2c 31  32 38 2c 33 38 2c 31 39  |,64,38,128,38,19|
0000ca00  32 2c 35 39 2c 30 2c 35  39 2c 36 34 2c 35 39 2c  |2,59,0,59,64,59,|
0000ca10  31 32 38 2c 35 39 2c 31  39 32 0d 39 e4 50 dc 20  |128,59,192.9.P. |
0000ca20  31 32 2c 20 35 2c 30 2c  35 2c 36 34 2c 35 2c 31  |12, 5,0,5,64,5,1|
0000ca30  32 38 2c 35 2c 31 39 32  2c 31 30 2c 30 2c 32 36  |28,5,192,10,0,26|
0000ca40  2c 36 34 2c 32 36 2c 31  32 38 2c 32 36 2c 31 39  |,64,26,128,26,19|
0000ca50  32 2c 34 37 2c 30 2c 34  37 2c 36 34 2c 34 37 2c  |2,47,0,47,64,47,|
0000ca60  31 32 38 2c 34 37 2c 31  39 32 0d 39 ee 54 dc 20  |128,47,192.9.T. |
0000ca70  31 32 2c 20 32 30 2c 30  2c 32 30 2c 36 34 2c 32  |12, 20,0,20,64,2|
0000ca80  30 2c 31 32 38 2c 32 30  2c 31 39 32 2c 34 31 2c  |0,128,20,192,41,|
0000ca90  30 2c 34 31 2c 36 34 2c  34 31 2c 31 32 38 2c 34  |0,41,64,41,128,4|
0000caa0  31 2c 31 39 32 2c 36 32  2c 30 2c 36 32 2c 36 34  |1,192,62,0,62,64|
0000cab0  2c 36 32 2c 31 32 38 2c  36 32 2c 31 39 32 0d 39  |,62,128,62,192.9|
0000cac0  f8 50 dc 20 31 32 2c 20  31 2c 30 2c 31 2c 36 34  |.P. 12, 1,0,1,64|
0000cad0  2c 31 2c 31 32 38 2c 31  2c 31 39 32 2c 32 32 2c  |,1,128,1,192,22,|
0000cae0  30 2c 32 32 2c 36 34 2c  32 32 2c 31 32 38 2c 32  |0,22,64,22,128,2|
0000caf0  32 2c 31 39 32 2c 34 33  2c 30 2c 34 33 2c 36 34  |2,192,43,0,43,64|
0000cb00  2c 34 33 2c 31 32 38 2c  34 33 2c 31 39 32 0d 3a  |,43,128,43,192.:|
0000cb10  02 38 dc 20 38 2c 20 39  2c 30 2c 39 2c 36 34 2c  |.8. 8, 9,0,9,64,|
0000cb20  39 2c 31 32 38 2c 39 2c  31 39 32 2c 31 34 2c 30  |9,128,9,192,14,0|
0000cb30  2c 31 34 2c 36 34 2c 31  34 2c 31 32 38 2c 31 34  |,14,64,14,128,14|
0000cb40  2c 31 39 32 2c 30 0d 3a  0c 3a dc 20 38 2c 20 32  |,192,0.:.:. 8, 2|
0000cb50  31 2c 30 2c 32 31 2c 36  34 2c 32 31 2c 31 32 38  |1,0,21,64,21,128|
0000cb60  2c 32 31 2c 31 39 32 2c  34 32 2c 30 2c 34 32 2c  |,21,192,42,0,42,|
0000cb70  36 34 2c 34 32 2c 31 32  38 2c 34 32 2c 31 39 32  |64,42,128,42,192|
0000cb80  0d 3a 20 49 58 4f 46 25  3d 21 42 4c 4b 25 3a 59  |.: IXOF%=!BLK%:Y|
0000cb90  4f 46 25 3d 42 4c 4b 25  21 34 3a 21 42 4c 4b 25  |OF%=BLK%!4:!BLK%|
0000cba0  3d 48 41 4e 44 25 28 31  33 29 3a c8 99 20 22 57  |=HAND%(13):.. "W|
0000cbb0  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
0000cbc0  74 65 22 2c 2c 42 4c 4b  25 0d 3a 2a 11 f2 67 65  |te",,BLK%.:*..ge|
0000cbd0  74 72 64 6f 72 28 34 38  34 29 0d 3a 34 30 58 4f  |trdor(484).:40XO|
0000cbe0  46 25 3d 28 58 4f 46 25  2d 57 4f 58 25 29 2d 34  |F%=(XOF%-WOX%)-4|
0000cbf0  32 32 3a e7 20 58 4f 46  25 3e 37 36 36 20 84 20  |22:. XOF%>766 . |
0000cc00  58 4f 46 25 3c 30 20 8c  20 e1 0d 3a 3e 30 59 4f  |XOF%<0 . ..:>0YO|
0000cc10  46 25 3d 28 59 4f 46 25  2d 57 4f 59 25 29 2d 32  |F%=(YOF%-WOY%)-2|
0000cc20  33 36 3a e7 20 59 4f 46  25 3e 32 32 30 20 84 20  |36:. YOF%>220 . |
0000cc30  59 4f 46 25 3c 30 20 8c  20 e1 0d 3a 48 25 63 6f  |YOF%<0 . ..:H%co|
0000cc40  6c 25 3d 28 58 4f 46 25  20 81 20 32 34 29 2b 28  |l%=(XOF% . 24)+(|
0000cc50  28 59 4f 46 25 20 81 20  32 38 29 2a 33 32 29 0d  |(YOF% . 28)*32).|
0000cc60  3a 52 1d 74 69 6e 25 3d  50 41 4c 54 41 42 25 3f  |:R.tin%=PALTAB%?|
0000cc70  28 28 63 6f 6c 25 2a 32  29 2b 31 29 0d 3a 5c 19  |((col%*2)+1).:\.|
0000cc80  63 6f 6c 25 3d 50 41 4c  54 41 42 25 3f 28 63 6f  |col%=PALTAB%?(co|
0000cc90  6c 25 2a 32 29 0d 3a 66  3d 46 50 45 25 3d 2d 31  |l%*2).:f=FPE%=-1|
0000cca0  3a e3 4c 25 3d 30 20 b8  20 31 35 3a e7 20 a4 68  |:.L%=0 . 15:. .h|
0000ccb0  69 67 68 28 31 33 2c a4  66 69 6c 69 63 28 4c 25  |igh(13,.filic(L%|
0000ccc0  29 29 20 8c 20 46 50 45  25 3d 4c 25 3a ed 20 8b  |)) . FPE%=L%:. .|
0000ccd0  20 ed 0d 3a 70 12 53 4e  4f 25 3d a4 67 72 61 66  | ..:p.SNO%=.graf|
0000cce0  69 6c 6e 6f 0d 3a 7a 1b  e7 20 46 50 45 25 3d 2d  |ilno.:z.. FPE%=-|
0000ccf0  31 20 84 20 53 4e 4f 25  3d 2d 31 20 8c 20 e1 0d  |1 . SNO%=-1 . ..|
0000cd00  3a 84 42 47 52 46 49 25  28 46 50 45 25 2c 30 2c  |:.BGRFI%(FPE%,0,|
0000cd10  53 4e 4f 25 29 3d 63 6f  6c 25 3a 47 52 46 49 25  |SNO%)=col%:GRFI%|
0000cd20  28 46 50 45 25 2c 31 2c  53 4e 4f 25 29 3d 74 69  |(FPE%,1,SNO%)=ti|
0000cd30  6e 25 3a f2 66 6f 72 63  65 64 72 61 77 66 69 6c  |n%:.forcedrawfil|
0000cd40  6c 0d 3a 8e 05 e1 0d 3a  a2 37 dd a4 66 69 6c 69  |l.:....:.7..fili|
0000cd50  63 28 46 53 4e 25 29 3a  e7 20 46 53 4e 25 3c 3d  |c(FSN%):. FSN%<=|
0000cd60  31 31 20 8c 20 3d 46 53  4e 25 2b 32 36 20 8b 20  |11 . =FSN%+26 . |
0000cd70  3d 28 46 53 4e 25 2d 31  32 29 2b 34 36 0d 3a b6  |=(FSN%-12)+46.:.|
0000cd80  2d dd a4 6c 69 70 61 61  64 6a 28 4c 49 54 41 25  |-..lipaadj(LITA%|
0000cd90  29 3a e7 20 4c 49 54 41  25 3d 37 20 8c 20 3d 35  |):. LITA%=7 . =5|
0000cda0  31 20 8b 20 3d 4c 49 54  41 25 0d 3a ca 12 dd f2  |1 . =LITA%.:....|
0000cdb0  6c 69 6e 65 70 61 74 63  6c 69 63 6b 0d 3a d4 0f  |linepatclick.:..|
0000cdc0  e7 20 4d 4f 55 42 25 3d  31 20 8c 0d 3a de 31 e7  |. MOUB%=1 ..:.1.|
0000cdd0  20 4d 4f 55 49 43 25 3d  32 20 8c 20 4d 4f 55 49  | MOUIC%=2 . MOUI|
0000cde0  43 25 3d 33 20 8b 20 e7  20 4d 4f 55 49 43 25 3d  |C%=3 . . MOUIC%=|
0000cdf0  33 20 8c 20 4d 4f 55 49  43 25 3d 32 0d 3a e8 05  |3 . MOUIC%=2.:..|
0000ce00  cd 0d 3a f2 0f c8 8e 20  4d 4f 55 49 43 25 20 ca  |..:.... MOUIC% .|
0000ce10  0d 3a fc 57 c9 20 33 3a  50 4c 25 3d bb a4 67 69  |.:.W. 3:PL%=..gi|
0000ce20  28 31 30 2c 34 38 29 3a  e7 20 50 4c 25 3e 31 20  |(10,48):. PL%>1 |
0000ce30  8c 20 f2 73 68 61 64 65  69 63 6f 6e 28 31 30 2c  |. .shadeicon(10,|
0000ce40  a4 6c 69 70 61 61 64 6a  28 50 4c 25 2b 36 29 29  |.lipaadj(PL%+6))|
0000ce50  3a 50 4c 25 2d 3d 31 3a  f2 73 69 28 31 30 2c 34  |:PL%-=1:.si(10,4|
0000ce60  38 2c c3 50 4c 25 29 0d  3b 06 58 c9 20 32 3a 50  |8,.PL%).;.X. 2:P|
0000ce70  4c 25 3d bb a4 67 69 28  31 30 2c 34 38 29 3a e7  |L%=..gi(10,48):.|
0000ce80  20 50 4c 25 3c 34 30 20  8c 20 f2 63 6c 65 61 72  | PL%<40 . .clear|
0000ce90  69 63 6f 6e 28 31 30 2c  a4 6c 69 70 61 61 64 6a  |icon(10,.lipaadj|
0000cea0  28 50 4c 25 2b 37 29 29  3a 50 4c 25 2b 3d 31 3a  |(PL%+7)):PL%+=1:|
0000ceb0  f2 73 69 28 31 30 2c 34  38 2c c3 50 4c 25 29 0d  |.si(10,48,.PL%).|
0000cec0  3b 10 21 c9 20 35 30 3a  50 41 4c 45 25 3d bb a4  |;.!. 50:PALE%=..|
0000ced0  67 69 28 31 30 2c 34 38  29 3a ef 32 33 2c 36 2c  |gi(10,48):.23,6,|
0000cee0  0d 3b 1a 4c 49 4e 25 3d  37 3a e3 4c 25 3d 31 20  |.;.LIN%=7:.L%=1 |
0000cef0  b8 20 35 3a 4e 25 3d 30  3a 49 25 3d 31 32 38 3a  |. 5:N%=0:I%=128:|
0000cf00  e3 4b 25 3d 31 20 b8 20  38 3a e7 20 a4 68 69 67  |.K%=1 . 8:. .hig|
0000cf10  68 28 31 30 2c a4 6c 69  70 61 61 64 6a 28 49 4e  |h(10,.lipaadj(IN|
0000cf20  25 29 29 20 8c 20 4e 25  2b 3d 49 25 0d 3b 24 2e  |%)) . N%+=I%.;$.|
0000cf30  49 25 3d 49 25 20 81 20  32 3a 49 4e 25 2b 3d 31  |I%=I% . 2:IN%+=1|
0000cf40  3a ed 3a ef 20 4e 25 3a  50 41 54 25 28 4c 25 29  |:.:. N%:PAT%(L%)|
0000cf50  3d 4e 25 3a ed 3a ef 20  30 7c 0d 3b 2e 17 e7 20  |=N%:.:. 0|.;... |
0000cf60  4d 4f 55 42 25 3d 34 20  8c 20 f2 6d 65 6e 6f 66  |MOUB%=4 . .menof|
0000cf70  66 0d 3b 38 05 cb 0d 3b  42 05 e1 0d 3b 56 3b dd  |f.;8...;B...;V;.|
0000cf80  f2 67 72 61 62 63 6c 69  63 6b 3a 49 4e 47 25 3d  |.grabclick:ING%=|
0000cf90  28 a4 68 69 67 68 28 33  31 2c 33 29 20 84 20 a4  |(.high(31,3) . .|
0000cfa0  68 69 67 68 28 33 31 2c  34 29 29 20 80 20 46 55  |high(31,4)) . FU|
0000cfb0  53 45 25 3d 33 34 0d 3b  60 14 e7 20 4d 4f 55 49  |SE%=34.;`.. MOUI|
0000cfc0  43 25 3c 3e 31 36 20 8c  20 e1 0d 3b 6a 61 e7 20  |C%<>16 . ..;ja. |
0000cfd0  46 55 53 45 25 3c 3e 33  34 20 80 20 46 55 53 54  |FUSE%<>34 . FUST|
0000cfe0  25 3c 32 20 8c 20 f2 6d  65 73 73 61 67 65 28 31  |%<2 . .message(1|
0000cff0  2c 22 53 65 6c 65 63 74  20 61 6e 20 61 72 65 61  |,"Select an area|
0000d000  20 6f 66 20 70 69 63 74  75 72 65 20 62 65 66 6f  | of picture befo|
0000d010  72 65 20 73 65 74 74 69  6e 67 20 74 68 65 73 65  |re setting these|
0000d020  20 6f 70 74 69 6f 6e 73  2e 22 29 0d 3b 74 13 e7  | options.").;t..|
0000d030  20 49 4e 47 25 20 8c 20  e5 20 8d 74 7a 7b 0d 3b  | ING% . . .tz{.;|
0000d040  7e 0a f2 69 6e 70 69 63  0d 3b 88 11 e7 20 46 55  |~..inpic.;... FU|
0000d050  53 45 25 3c 3e 33 34 20  8c 0d 3b 92 15 f2 70 67  |SE%<>34 ..;...pg|
0000d060  72 61 62 28 4f 58 25 2c  4f 59 25 2c 33 29 0d 3b  |rab(OX%,OY%,3).;|
0000d070  9c 05 cc 0d 3b a6 24 e7  20 46 55 53 54 25 3c 3e  |....;.$. FUST%<>|
0000d080  30 20 8c 20 f2 70 69 6d  70 6f 72 74 28 4f 58 25  |0 . .pimport(OX%|
0000d090  2c 4f 59 25 2c 33 29 0d  3b b0 05 cd 0d 3b ba 3b  |,OY%,3).;....;.;|
0000d0a0  47 52 58 4d 25 3d bb 28  a4 67 69 28 38 2c 31 37  |GRXM%=.(.gi(8,17|
0000d0b0  29 29 3a e7 20 47 52 58  4d 25 3c 31 20 8c 20 47  |)):. GRXM%<1 . G|
0000d0c0  52 58 4d 25 3d 31 3a f2  73 69 28 38 2c 31 37 2c  |RXM%=1:.si(8,17,|
0000d0d0  c3 47 52 58 4d 25 29 0d  3b c4 3b 47 52 59 4d 25  |.GRXM%).;.;GRYM%|
0000d0e0  3d bb 28 a4 67 69 28 38  2c 31 39 29 29 3a e7 20  |=.(.gi(8,19)):. |
0000d0f0  47 52 59 4d 25 3c 31 20  8c 20 47 52 59 4d 25 3d  |GRYM%<1 . GRYM%=|
0000d100  31 3a f2 73 69 28 38 2c  31 39 2c c3 47 52 59 4d  |1:.si(8,19,.GRYM|
0000d110  25 29 0d 3b ce 3b 47 52  58 44 25 3d bb 28 a4 67  |%).;.;GRXD%=.(.g|
0000d120  69 28 38 2c 31 38 29 29  3a e7 20 47 52 58 44 25  |i(8,18)):. GRXD%|
0000d130  3c 31 20 8c 20 47 52 58  44 25 3d 31 3a f2 73 69  |<1 . GRXD%=1:.si|
0000d140  28 38 2c 31 38 2c c3 47  52 58 44 25 29 0d 3b d8  |(8,18,.GRXD%).;.|
0000d150  3b 47 52 59 44 25 3d bb  28 a4 67 69 28 38 2c 32  |;GRYD%=.(.gi(8,2|
0000d160  30 29 29 3a e7 20 47 52  59 44 25 3c 31 20 8c 20  |0)):. GRYD%<1 . |
0000d170  47 52 59 44 25 3d 31 3a  f2 73 69 28 38 2c 32 30  |GRYD%=1:.si(8,20|
0000d180  2c c3 47 52 59 44 25 29  0d 3b e2 0d f2 67 72 61  |,.GRYD%).;...gra|
0000d190  62 66 6c 69 70 0d 3b ec  15 47 52 4d 41 25 3d a4  |bflip.;..GRMA%=.|
0000d1a0  68 69 67 68 28 38 2c 31  34 29 0d 3b f6 15 e7 20  |high(8,14).;... |
0000d1b0  ac 20 49 4e 47 25 20 8c  20 e5 20 8d 54 54 7c 0d  |. ING% . . .TT|.|
0000d1c0  3c 00 27 e7 20 a4 68 69  67 68 28 33 31 2c 33 29  |<.'. .high(31,3)|
0000d1d0  20 8c 20 f2 69 6d 70 63  65 6e 20 8b 20 f2 69 6d  | . .impcen . .im|
0000d1e0  70 73 63 61 6c 65 0d 3c  0a 05 e1 0d 3c 14 11 e7  |pscale.<....<...|
0000d1f0  20 46 55 53 45 25 3c 3e  33 34 20 8c 0d 3c 1e 15  | FUSE%<>34 ..<..|
0000d200  f2 70 67 72 61 62 28 4f  58 25 2c 4f 59 25 2c 33  |.pgrab(OX%,OY%,3|
0000d210  29 0d 3c 28 05 cc 0d 3c  32 24 e7 20 46 55 53 54  |).<(...<2$. FUST|
0000d220  25 3c 3e 30 20 8c 20 f2  70 69 6d 70 6f 72 74 28  |%<>0 . .pimport(|
0000d230  4f 58 25 2c 4f 59 25 2c  33 29 0d 3c 3c 05 cd 0d  |OX%,OY%,3).<<...|
0000d240  3c 46 1a f2 6f 75 74 70  69 63 3a f2 71 75 69 63  |<F..outpic:.quic|
0000d250  6b 64 72 61 77 6d 61 69  6e 0d 3c 50 05 e1 0d 3c  |kdrawmain.<P...<|
0000d260  64 0e dd f2 67 72 61 62  66 6c 69 70 0d 3c 6e 5f  |d...grabflip.<n_|
0000d270  e7 20 28 a4 68 69 67 68  28 38 2c 31 30 29 20 80  |. (.high(8,10) .|
0000d280  20 ac 20 47 52 46 58 25  29 20 84 20 28 28 ac 20  | . GRFX%) . ((. |
0000d290  a4 68 69 67 68 28 38 2c  31 30 29 29 20 80 20 47  |.high(8,10)) . G|
0000d2a0  52 46 58 25 29 20 8c 20  c8 99 26 32 45 2c 32 38  |RFX%) . ..&2E,28|
0000d2b0  39 2c 53 50 42 55 46 25  2c 47 52 4e 24 3a 47 52  |9,SPBUF%,GRN$:GR|
0000d2c0  46 58 25 3d ac 20 47 52  46 58 25 0d 3c 78 5f e7  |FX%=. GRFX%.<x_.|
0000d2d0  20 28 a4 68 69 67 68 28  38 2c 31 31 29 20 80 20  | (.high(8,11) . |
0000d2e0  ac 20 47 52 46 59 25 29  20 84 20 28 28 ac 20 a4  |. GRFY%) . ((. .|
0000d2f0  68 69 67 68 28 38 2c 31  31 29 29 20 80 20 47 52  |high(8,11)) . GR|
0000d300  46 59 25 29 20 8c 20 c8  99 26 32 45 2c 33 30 33  |FY%) . ..&2E,303|
0000d310  2c 53 50 42 55 46 25 2c  47 52 4e 24 3a 47 52 46  |,SPBUF%,GRN$:GRF|
0000d320  59 25 3d ac 20 47 52 46  59 25 0d 3c 82 05 e1 0d  |Y%=. GRFY%.<....|
0000d330  3c 96 0f dd f2 67 72 69  64 63 6c 69 63 6b 0d 3c  |<....gridclick.<|
0000d340  a0 1e f2 61 72 72 6f 77  73 28 36 2c 20 32 2c 36  |...arrows(6, 2,6|
0000d350  2c 31 39 2c 31 2c 39 39  39 2c 31 29 0d 3c aa 1e  |,19,1,999,1).<..|
0000d360  f2 61 72 72 6f 77 73 28  36 2c 20 33 2c 37 2c 32  |.arrows(6, 3,7,2|
0000d370  31 2c 31 2c 39 39 39 2c  31 29 0d 3c b4 20 f2 61  |1,1,999,1).<. .a|
0000d380  72 72 6f 77 73 28 36 2c  20 31 30 2c 31 34 2c 32  |rrows(6, 10,14,2|
0000d390  33 2c 30 2c 39 39 39 2c  31 29 0d 3c be 20 f2 61  |3,0,999,1).<. .a|
0000d3a0  72 72 6f 77 73 28 36 2c  20 31 31 2c 31 35 2c 32  |rrows(6, 11,15,2|
0000d3b0  35 2c 30 2c 39 39 39 2c  31 29 0d 3c c8 4b e7 20  |5,0,999,1).<.K. |
0000d3c0  4d 4f 55 49 43 25 3d 32  37 20 8c 20 f2 73 69 28  |MOUIC%=27 . .si(|
0000d3d0  36 2c 31 39 2c 22 31 22  29 3a f2 73 69 28 36 2c  |6,19,"1"):.si(6,|
0000d3e0  32 31 2c 22 31 22 29 3a  f2 73 69 28 36 2c 32 33  |21,"1"):.si(6,23|
0000d3f0  2c 22 30 22 29 3a f2 73  69 28 36 2c 32 35 2c 22  |,"0"):.si(6,25,"|
0000d400  30 22 29 3a e1 0d 3c d2  14 e7 20 4d 4f 55 49 43  |0"):..<... MOUIC|
0000d410  25 3c 3e 32 39 20 8c 20  e1 0d 3c dc 2d 47 52 49  |%<>29 . ..<.-GRI|
0000d420  57 49 25 3d bb 28 a4 67  69 28 36 2c 31 39 29 29  |WI%=.(.gi(6,19))|
0000d430  3a e7 20 47 52 49 57 49  25 3c 31 20 8c 20 47 52  |:. GRIWI%<1 . GR|
0000d440  49 57 49 25 3d 31 0d 3c  e6 2d 47 52 49 48 45 25  |IWI%=1.<.-GRIHE%|
0000d450  3d bb 28 a4 67 69 28 36  2c 32 31 29 29 3a e7 20  |=.(.gi(6,21)):. |
0000d460  47 52 49 48 45 25 3c 31  20 8c 20 47 52 49 48 45  |GRIHE%<1 . GRIHE|
0000d470  25 3d 31 0d 3c f0 57 47  52 42 58 25 3d bb 28 a4  |%=1.<.WGRBX%=.(.|
0000d480  67 69 28 36 2c 32 33 29  29 3a e7 20 47 52 42 58  |gi(6,23)):. GRBX|
0000d490  25 3e 47 52 49 57 49 25  20 8c 20 f5 3a 47 52 42  |%>GRIWI% . .:GRB|
0000d4a0  58 25 2d 3d 47 52 49 57  49 25 3a fd 20 47 52 42  |X%-=GRIWI%:. GRB|
0000d4b0  58 25 3c 47 52 49 57 49  25 3a f2 73 69 28 36 2c  |X%<GRIWI%:.si(6,|
0000d4c0  32 33 2c c3 47 52 42 58  25 29 0d 3c fa 57 47 52  |23,.GRBX%).<.WGR|
0000d4d0  42 59 25 3d bb 28 a4 67  69 28 36 2c 32 35 29 29  |BY%=.(.gi(6,25))|
0000d4e0  3a e7 20 47 52 42 59 25  3e 47 52 49 48 45 25 20  |:. GRBY%>GRIHE% |
0000d4f0  8c 20 f5 3a 47 52 42 59  25 2d 3d 47 52 49 48 45  |. .:GRBY%-=GRIHE|
0000d500  25 3a fd 20 47 52 42 59  25 3c 47 52 49 48 45 25  |%:. GRBY%<GRIHE%|
0000d510  3a f2 73 69 28 36 2c 32  35 2c c3 47 52 42 59 25  |:.si(6,25,.GRBY%|
0000d520  29 0d 3d 04 17 e7 20 4d  4f 55 42 25 3d 34 20 8c  |).=... MOUB%=4 .|
0000d530  20 f2 6d 65 6e 6f 66 66  0d 3d 0e 12 f2 66 6f 72  | .menoff.=...for|
0000d540  63 65 64 72 61 77 6d 61  69 6e 0d 3d 18 05 e1 0d  |cedrawmain.=....|
0000d550  3d 2c 10 dd f2 62 72 75  73 68 63 6c 69 63 6b 0d  |=,...brushclick.|
0000d560  3d 36 1e e7 20 4d 4f 55  49 43 25 3e 3d 30 20 80  |=6.. MOUIC%>=0 .|
0000d570  20 4d 4f 55 49 43 25 3c  3d 31 31 20 8c 0d 3d 40  | MOUIC%<=11 ..=@|
0000d580  40 e7 20 46 55 53 54 25  3e 30 20 8c 20 f2 69 6e  |@. FUST%>0 . .in|
0000d590  70 69 63 3a f2 70 61 69  6e 74 73 63 61 6c 65 3a  |pic:.paintscale:|
0000d5a0  f2 65 6f 72 62 61 63 6b  3a f2 70 61 69 6e 74 62  |.eorback:.paintb|
0000d5b0  72 75 73 68 28 4f 58 25  2c 4f 59 25 29 0d 3d 4a  |rush(OX%,OY%).=J|
0000d5c0  13 53 45 4c 42 52 25 3d  4d 4f 55 49 43 25 2b 31  |.SELBR%=MOUIC%+1|
0000d5d0  0d 3d 54 44 e7 20 46 55  53 54 25 3e 30 20 8c 20  |.=TD. FUST%>0 . |
0000d5e0  f2 65 6f 72 62 61 63 6b  3a f2 70 61 69 6e 74 62  |.eorback:.paintb|
0000d5f0  72 75 73 68 28 4f 58 25  2c 4f 59 25 29 3a f2 6f  |rush(OX%,OY%):.o|
0000d600  75 74 70 69 63 3a f2 71  75 69 63 6b 64 72 61 77  |utpic:.quickdraw|
0000d610  6d 61 69 6e 0d 3d 5e 13  f2 66 6f 72 63 65 64 72  |main.=^..forcedr|
0000d620  61 77 62 72 75 73 68 0d  3d 68 05 cd 0d 3d 72 2a  |awbrush.=h...=r*|
0000d630  e7 20 4d 4f 55 49 43 25  3c 3e 32 36 20 84 20 46  |. MOUIC%<>26 . F|
0000d640  55 53 45 25 3d 32 39 20  84 20 46 55 53 45 25 3d  |USE%=29 . FUSE%=|
0000d650  33 30 20 8c 20 e1 0d 3d  7c 40 e7 20 46 55 53 54  |30 . ..=|@. FUST|
0000d660  25 3e 30 20 8c 20 f2 69  6e 70 69 63 3a f2 70 61  |%>0 . .inpic:.pa|
0000d670  69 6e 74 73 63 61 6c 65  3a f2 65 6f 72 62 61 63  |intscale:.eorbac|
0000d680  6b 3a f2 70 61 69 6e 74  62 72 75 73 68 28 4f 58  |k:.paintbrush(OX|
0000d690  25 2c 4f 59 25 29 0d 3d  86 35 42 58 4d 25 3d bb  |%,OY%).=.5BXM%=.|
0000d6a0  28 a4 67 69 28 35 2c 32  33 29 29 3a e7 20 42 58  |(.gi(5,23)):. BX|
0000d6b0  4d 25 3c 31 20 8c 20 42  58 4d 25 3d 31 3a f2 73  |M%<1 . BXM%=1:.s|
0000d6c0  69 28 35 2c 32 33 2c 22  31 22 29 0d 3d 90 35 42  |i(5,23,"1").=.5B|
0000d6d0  59 4d 25 3d bb 28 a4 67  69 28 35 2c 32 30 29 29  |YM%=.(.gi(5,20))|
0000d6e0  3a e7 20 42 59 4d 25 3c  31 20 8c 20 42 59 4d 25  |:. BYM%<1 . BYM%|
0000d6f0  3d 31 3a f2 73 69 28 35  2c 32 30 2c 22 31 22 29  |=1:.si(5,20,"1")|
0000d700  0d 3d 9a 35 42 58 44 25  3d bb 28 a4 67 69 28 35  |.=.5BXD%=.(.gi(5|
0000d710  2c 32 34 29 29 3a e7 20  42 58 44 25 3c 31 20 8c  |,24)):. BXD%<1 .|
0000d720  20 42 58 44 25 3d 31 3a  f2 73 69 28 35 2c 32 34  | BXD%=1:.si(5,24|
0000d730  2c 22 31 22 29 0d 3d a4  35 42 59 44 25 3d bb 28  |,"1").=.5BYD%=.(|
0000d740  a4 67 69 28 35 2c 31 39  29 29 3a e7 20 42 59 44  |.gi(5,19)):. BYD|
0000d750  25 3c 31 20 8c 20 42 59  44 25 3d 31 3a f2 73 69  |%<1 . BYD%=1:.si|
0000d760  28 35 2c 31 39 2c 22 31  22 29 0d 3d ae 50 e7 20  |(5,19,"1").=.P. |
0000d770  46 55 53 54 25 3e 30 20  8c 20 f2 70 61 69 6e 74  |FUST%>0 . .paint|
0000d780  73 63 61 6c 65 3a f2 65  6f 72 62 61 63 6b 3a f2  |scale:.eorback:.|
0000d790  70 61 69 6e 74 62 72 75  73 68 28 4f 58 25 2c 4f  |paintbrush(OX%,O|
0000d7a0  59 25 29 3a f2 6f 75 74  70 69 63 3a f2 71 75 69  |Y%):.outpic:.qui|
0000d7b0  63 6b 64 72 61 77 6d 61  69 6e 0d 3d b8 05 e1 0d  |ckdrawmain.=....|
0000d7c0  3d cc 0f dd f2 61 69 72  62 63 6c 69 63 6b 0d 3d  |=....airbclick.=|
0000d7d0  d6 39 f2 61 72 72 6f 77  73 28 34 2c 20 34 2c 36  |.9.arrows(4, 4,6|
0000d7e0  2c 31 37 2c 31 2c 39 39  39 2c 31 29 3a f2 61 72  |,17,1,999,1):.ar|
0000d7f0  72 6f 77 73 28 34 2c 20  35 2c 37 2c 31 39 2c 34  |rows(4, 5,7,19,4|
0000d800  2c 39 39 39 2c 31 29 0d  3d e0 05 e1 0d 3d f4 26  |,999,1).=....=.&|
0000d810  dd f2 6d 65 6e 6f 66 66  3a c8 99 20 22 57 69 6d  |..menoff:.. "Wim|
0000d820  70 5f 43 72 65 61 74 65  4d 65 6e 75 22 2c 2d 31  |p_CreateMenu",-1|
0000d830  3a e1 0d 3e 08 13 dd f2  62 75 69 6c 64 69 63 6f  |:..>....buildico|
0000d840  6e 6d 65 6e 75 0d 3e 12  15 f2 62 6d 28 33 30 2c  |nmenu.>...bm(30,|
0000d850  22 49 6d 61 67 65 72 79  22 29 0d 3e 1c 18 f2 61  |"Imagery").>...a|
0000d860  74 6d 28 33 30 2c 22 49  6e 66 6f 22 2c 31 2c 22  |tm(30,"Info",1,"|
0000d870  22 29 0d 3e 26 25 f2 61  74 6d 28 33 30 2c 22 53  |").>&%.atm(30,"S|
0000d880  61 76 65 22 2b a4 6b 28  22 20 20 66 33 22 29 2c  |ave"+.k("  f3"),|
0000d890  30 2c 22 53 4c 22 29 0d  3e 30 1a f2 61 74 6d 28  |0,"SL").>0..atm(|
0000d8a0  33 30 2c 22 51 75 69 74  22 2c 2d 31 2c 22 46 22  |30,"Quit",-1,"F"|
0000d8b0  29 0d 3e 3a 05 e1 0d 3e  4e 46 dd f2 69 63 6f 6e  |).>:...>NF..icon|
0000d8c0  6d 65 6e 75 3a 4d 45 4e  4f 25 3d 33 30 3a c8 99  |menu:MENO%=30:..|
0000d8d0  20 22 57 69 6d 70 5f 43  72 65 61 74 65 4d 65 6e  | "Wimp_CreateMen|
0000d8e0  75 22 2c 2c a4 63 6d 61  64 28 33 30 29 2c 4d 4f  |u",,.cmad(30),MO|
0000d8f0  55 58 25 2d 36 34 2c 32  35 32 3a e1 0d 3e 62 4b  |UX%-64,252:..>bK|
0000d900  dd f2 77 69 6e 64 6d 65  6e 75 3a 4d 4d 45 58 25  |..windmenu:MMEX%|
0000d910  3d 4d 4f 55 58 25 3a 4d  4d 45 59 25 3d 4d 4f 55  |=MOUX%:MMEY%=MOU|
0000d920  59 25 3a 4d 45 4e 4f 25  3d 30 3a 4d 45 42 41 25  |Y%:MENO%=0:MEBA%|
0000d930  3d 4d 45 4e 55 25 3a 4d  45 49 4e 42 41 25 3d 4d  |=MENU%:MEINBA%=M|
0000d940  45 4e 55 49 4e 44 25 0d  3e 6c 6f 4c 25 3d 31 3a  |ENUIND%.>loL%=1:|
0000d950  e7 20 a4 63 6d 61 64 28  4c 25 29 3c 3e 2d 31 20  |. .cmad(L%)<>-1 |
0000d960  8c 20 54 41 44 25 3d 28  a4 63 6d 61 64 28 4c 25  |. TAD%=(.cmad(L%|
0000d970  29 29 2b 32 38 2b 28 35  2a 32 34 29 3a 21 54 41  |))+28+(5*24):!TA|
0000d980  44 25 3d 28 21 54 41 44  25 29 20 80 20 31 33 30  |D%=(!TAD%) . 130|
0000d990  3a 54 41 44 25 21 38 3d  28 54 41 44 25 21 38 29  |:TAD%!8=(TAD%!8)|
0000d9a0  20 80 20 28 26 46 46 46  46 46 46 46 46 2d 28 31  | . (&FFFFFFFF-(1|
0000d9b0  3c 3c 32 32 29 29 0d 3e  80 20 e7 20 4c 49 54 59  |<<22)).>. . LITY|
0000d9c0  25 3d 32 31 20 8c 20 f2  74 69 63 6b 69 74 65 6d  |%=21 . .tickitem|
0000d9d0  28 31 32 2c 31 29 0d 3e  8a 20 e7 20 4c 49 54 59  |(12,1).>. . LITY|
0000d9e0  25 3d 35 33 20 8c 20 f2  74 69 63 6b 69 74 65 6d  |%=53 . .tickitem|
0000d9f0  28 31 32 2c 32 29 0d 3e  94 1f e7 20 4c 49 54 59  |(12,2).>... LITY|
0000da00  25 3d 35 20 8c 20 f2 74  69 63 6b 69 74 65 6d 28  |%=5 . .tickitem(|
0000da10  31 31 2c 31 29 0d 3e 9e  25 e7 20 28 55 53 45 25  |11,1).>.%. (USE%|
0000da20  20 80 20 31 35 29 3d 30  20 8c 20 f2 74 69 63 6b  | . 15)=0 . .tick|
0000da30  69 74 65 6d 28 31 31 2c  33 29 0d 3e a8 25 e7 20  |item(11,3).>.%. |
0000da40  28 55 53 45 25 20 80 20  31 35 29 3d 31 20 8c 20  |(USE% . 15)=1 . |
0000da50  f2 74 69 63 6b 69 74 65  6d 28 31 31 2c 34 29 0d  |.tickitem(11,4).|
0000da60  3e b2 25 e7 20 28 55 53  45 25 20 80 20 31 35 29  |>.%. (USE% . 15)|
0000da70  3d 32 20 8c 20 f2 74 69  63 6b 69 74 65 6d 28 31  |=2 . .tickitem(1|
0000da80  31 2c 35 29 0d 3e bc 25  e7 20 28 55 53 45 25 20  |1,5).>.%. (USE% |
0000da90  80 20 31 35 29 3d 33 20  8c 20 f2 74 69 63 6b 69  |. 15)=3 . .ticki|
0000daa0  74 65 6d 28 31 31 2c 36  29 0d 3e c6 25 e7 20 28  |tem(11,6).>.%. (|
0000dab0  55 53 45 25 20 80 20 31  35 29 3d 34 20 8c 20 f2  |USE% . 15)=4 . .|
0000dac0  74 69 63 6b 69 74 65 6d  28 31 31 2c 37 29 0d 3e  |tickitem(11,7).>|
0000dad0  d0 25 e7 20 28 55 53 45  25 20 80 20 31 35 29 3d  |.%. (USE% . 15)=|
0000dae0  36 20 8c 20 f2 74 69 63  6b 69 74 65 6d 28 31 31  |6 . .tickitem(11|
0000daf0  2c 38 29 0d 3e da 25 e7  20 28 55 53 45 25 20 80  |,8).>.%. (USE% .|
0000db00  20 31 35 29 3d 37 20 8c  20 f2 74 69 63 6b 69 74  | 15)=7 . .tickit|
0000db10  65 6d 28 31 31 2c 39 29  0d 3e e4 28 e7 20 28 55  |em(11,9).>.(. (U|
0000db20  53 45 25 20 80 20 31 31  32 29 3d 31 36 20 8c 20  |SE% . 112)=16 . |
0000db30  f2 74 69 63 6b 69 74 65  6d 28 31 31 2c 31 30 29  |.tickitem(11,10)|
0000db40  0d 3e ee 28 e7 20 28 55  53 45 25 20 80 20 31 31  |.>.(. (USE% . 11|
0000db50  32 29 3d 33 32 20 8c 20  f2 74 69 63 6b 69 74 65  |2)=32 . .tickite|
0000db60  6d 28 31 31 2c 31 31 29  0d 3e f8 28 e7 20 28 55  |m(11,11).>.(. (U|
0000db70  53 45 25 20 80 20 31 31  32 29 3d 34 38 20 8c 20  |SE% . 112)=48 . |
0000db80  f2 74 69 63 6b 69 74 65  6d 28 31 31 2c 31 32 29  |.tickitem(11,12)|
0000db90  0d 3f 02 28 e7 20 28 55  53 45 25 20 80 20 31 31  |.?.(. (USE% . 11|
0000dba0  32 29 3d 36 34 20 8c 20  f2 74 69 63 6b 69 74 65  |2)=64 . .tickite|
0000dbb0  6d 28 31 31 2c 31 33 29  0d 3f 0c 28 e7 20 28 55  |m(11,13).?.(. (U|
0000dbc0  53 45 25 20 80 20 31 31  32 29 3d 38 30 20 8c 20  |SE% . 112)=80 . |
0000dbd0  f2 74 69 63 6b 69 74 65  6d 28 31 31 2c 31 34 29  |.tickitem(11,14)|
0000dbe0  0d 3f 16 28 e7 20 46 4f  4e 54 53 25 3d 30 20 8c  |.?.(. FONTS%=0 .|
0000dbf0  20 f2 73 68 61 64 65 69  74 65 6d 28 31 34 2c 46  | .shadeitem(14,F|
0000dc00  4f 4e 54 53 25 2b 33 29  0d 3f 20 21 e7 20 46 4f  |ONTS%+3).? !. FO|
0000dc10  4e 54 41 25 3d 2d 31 20  8c 20 f2 73 68 61 64 65  |NTA%=-1 . .shade|
0000dc20  69 74 65 6d 28 30 2c 34  29 0d 3f 2a 42 e7 20 47  |item(0,4).?*B. G|
0000dc30  52 43 4f 25 3d 2d 31 20  8c 20 f2 73 68 61 64 65  |RCO%=-1 . .shade|
0000dc40  69 74 65 6d 28 35 2c 32  29 20 8b 20 f2 73 68 61  |item(5,2) . .sha|
0000dc50  64 65 69 74 65 6d 28 35  2c 31 29 3a f2 74 69 63  |deitem(5,1):.tic|
0000dc60  6b 69 74 65 6d 28 30 2c  31 30 29 0d 3f 34 1c e7  |kitem(0,10).?4..|
0000dc70  20 47 52 4c 4f 25 20 8c  20 f2 74 69 63 6b 69 74  | GRLO% . .tickit|
0000dc80  65 6d 28 35 2c 33 29 0d  3f 3e 1e e7 20 5a 4f 4f  |em(5,3).?>.. ZOO|
0000dc90  4d 25 3e 31 20 8c 20 f2  74 69 63 6b 69 74 65 6d  |M%>1 . .tickitem|
0000dca0  28 30 2c 39 29 0d 3f 48  22 e7 20 a4 77 6f 70 65  |(0,9).?H". .wope|
0000dcb0  6e 28 33 32 29 20 8c 20  f2 74 69 63 6b 69 74 65  |n(32) . .tickite|
0000dcc0  6d 28 30 2c 31 31 29 0d  3f 52 1d e7 20 4b 55 4b  |m(0,11).?R.. KUK|
0000dcd0  45 25 20 8c 20 f2 74 69  63 6b 69 74 65 6d 28 31  |E% . .tickitem(1|
0000dce0  30 2c 35 29 0d 3f 5c 1c  e7 20 4b 53 43 25 20 8c  |0,5).?\.. KSC% .|
0000dcf0  20 f2 74 69 63 6b 69 74  65 6d 28 31 30 2c 36 29  | .tickitem(10,6)|
0000dd00  0d 3f 66 45 e7 20 55 4e  44 4f 25 3c 3e 2d 31 20  |.?fE. UNDO%<>-1 |
0000dd10  8c 20 f2 73 68 61 64 65  69 74 65 6d 28 31 30 2c  |. .shadeitem(10,|
0000dd20  32 29 20 8b 20 f2 73 68  61 64 65 69 74 65 6d 28  |2) . .shadeitem(|
0000dd30  31 30 2c 33 29 3a f2 73  68 61 64 65 69 74 65 6d  |10,3):.shadeitem|
0000dd40  28 37 2c 31 29 0d 3f 70  20 e7 20 46 55 53 45 25  |(7,1).?p . FUSE%|
0000dd50  3d 33 34 20 8c 20 f2 73  68 61 64 65 69 74 65 6d  |=34 . .shadeitem|
0000dd60  28 31 2c 36 29 0d 3f 84  34 c8 99 20 22 57 69 6d  |(1,6).?.4.. "Wim|
0000dd70  70 5f 43 72 65 61 74 65  4d 65 6e 75 22 2c 2c a4  |p_CreateMenu",,.|
0000dd80  63 6d 61 64 28 30 29 2c  4d 4f 55 58 25 2d 36 34  |cmad(0),MOUX%-64|
0000dd90  2c 4d 4f 55 59 25 2b 36  30 0d 3f 8e 05 e1 0d 3f  |,MOUY%+60.?....?|
0000dda0  a2 13 dd f2 62 75 69 6c  64 6d 61 69 6e 6d 65 6e  |....buildmainmen|
0000ddb0  75 0d 3f ac 13 4d 45 4f  46 25 3d 30 3a 4d 45 49  |u.?..MEOF%=0:MEI|
0000ddc0  4e 25 3d 30 0d 3f b6 1e  f4 20 2d 2d 2d 2d 2d 2d  |N%=0.?... ------|
0000ddd0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
0000dde0  2d 2d 0d 3f ca 0f f2 62  75 69 6c 64 6d 6d 32 3a  |--.?...buildmm2:|
0000ddf0  e1 0d 3f de 20 dd a4 6b  28 49 54 24 29 3a e7 20  |..?. ..k(IT$):. |
0000de00  4b 53 43 25 20 8c 20 3d  49 54 24 20 8b 20 3d 22  |KSC% . =IT$ . ="|
0000de10  22 0d 3f f2 0e dd f2 62  75 69 6c 64 6d 6d 32 0d  |".?....buildmm2.|
0000de20  3f fc 13 4d 45 4f 46 25  3d 30 3a 4d 45 49 4e 25  |?..MEOF%=0:MEIN%|
0000de30  3d 30 0d 40 10 13 f2 62  6d 28 31 35 2c 22 53 70  |=0.@...bm(15,"Sp|
0000de40  65 65 64 22 29 0d 40 1a  1e f2 61 74 6d 28 31 35  |eed").@...atm(15|
0000de50  2c 22 56 65 72 79 20 66  61 73 74 22 2c 2d 31 2c  |,"Very fast",-1,|
0000de60  22 22 29 0d 40 24 19 f2  61 74 6d 28 31 35 2c 22  |"").@$..atm(15,"|
0000de70  46 61 73 74 22 2c 2d 31  2c 22 22 29 0d 40 2e 1b  |Fast",-1,"").@..|
0000de80  f2 61 74 6d 28 31 35 2c  22 4d 65 64 69 75 6d 22  |.atm(15,"Medium"|
0000de90  2c 2d 31 2c 22 22 29 0d  40 38 1a f2 61 74 6d 28  |,-1,"").@8..atm(|
0000dea0  31 35 2c 22 53 6c 6f 77  22 2c 2d 31 2c 22 46 22  |15,"Slow",-1,"F"|
0000deb0  29 0d 40 4c 16 f2 62 6d  28 31 39 2c 22 50 72 65  |).@L..bm(19,"Pre|
0000dec0  73 65 72 76 65 22 29 0d  40 56 25 f2 61 74 6d 28  |serve").@V%.atm(|
0000ded0  31 39 2c 22 2d 3e 20 31  22 2b a4 6b 28 22 20 20  |19,"-> 1"+.k("  |
0000dee0  8b 66 31 22 29 2c 2d 31  2c 22 22 29 0d 40 60 25  |.f1"),-1,"").@`%|
0000def0  f2 61 74 6d 28 31 39 2c  22 2d 3e 20 32 22 2b a4  |.atm(19,"-> 2"+.|
0000df00  6b 28 22 20 20 8b 66 32  22 29 2c 2d 31 2c 22 22  |k("  .f2"),-1,""|
0000df10  29 0d 40 6a 25 f2 61 74  6d 28 31 39 2c 22 2d 3e  |).@j%.atm(19,"->|
0000df20  20 33 22 2b a4 6b 28 22  20 20 8b 66 33 22 29 2c  | 3"+.k("  .f3"),|
0000df30  2d 31 2c 22 22 29 0d 40  74 26 f2 61 74 6d 28 31  |-1,"").@t&.atm(1|
0000df40  39 2c 22 2d 3e 20 34 22  2b a4 6b 28 22 20 20 8b  |9,"-> 4"+.k("  .|
0000df50  66 34 22 29 2c 2d 31 2c  22 46 22 29 0d 40 88 15  |f4"),-1,"F").@..|
0000df60  f2 62 6d 28 32 30 2c 22  52 65 73 74 6f 72 65 22  |.bm(20,"Restore"|
0000df70  29 0d 40 92 25 f2 61 74  6d 28 32 30 2c 22 3c 2d  |).@.%.atm(20,"<-|
0000df80  20 31 22 2b a4 6b 28 22  20 20 5e 66 31 22 29 2c  | 1"+.k("  ^f1"),|
0000df90  2d 31 2c 22 22 29 0d 40  9c 25 f2 61 74 6d 28 32  |-1,"").@.%.atm(2|
0000dfa0  30 2c 22 3c 2d 20 32 22  2b a4 6b 28 22 20 20 5e  |0,"<- 2"+.k("  ^|
0000dfb0  66 32 22 29 2c 2d 31 2c  22 22 29 0d 40 a6 25 f2  |f2"),-1,"").@.%.|
0000dfc0  61 74 6d 28 32 30 2c 22  3c 2d 20 33 22 2b a4 6b  |atm(20,"<- 3"+.k|
0000dfd0  28 22 20 20 5e 66 33 22  29 2c 2d 31 2c 22 22 29  |("  ^f3"),-1,"")|
0000dfe0  0d 40 b0 26 f2 61 74 6d  28 32 30 2c 22 3c 2d 20  |.@.&.atm(20,"<- |
0000dff0  34 22 2b a4 6b 28 22 20  20 5e 66 34 22 29 2c 2d  |4"+.k("  ^f4"),-|
0000e000  31 2c 22 46 22 29 0d 40  c4 11 f2 62 6d 28 31 2c  |1,"F").@...bm(1,|
0000e010  22 46 69 6c 65 22 29 0d  40 ce 2d f2 61 74 6d 28  |"File").@.-.atm(|
0000e020  31 2c 22 53 61 76 65 22  2b a4 6b 28 22 20 20 20  |1,"Save"+.k("   |
0000e030  20 20 20 20 20 20 20 20  20 66 33 22 29 2c 30 2c  |         f3"),0,|
0000e040  22 53 22 29 0d 40 d8 22  f2 61 74 6d 28 31 2c 22  |"S").@.".atm(1,"|
0000e050  53 61 76 65 20 61 73 20  73 70 72 69 74 65 22 2c  |Save as sprite",|
0000e060  37 2c 22 53 22 29 0d 40  e2 22 f2 61 74 6d 28 31  |7,"S").@.".atm(1|
0000e070  2c 22 53 61 76 65 20 64  65 66 61 75 6c 74 73 22  |,"Save defaults"|
0000e080  2c 2d 31 2c 22 53 22 29  0d 40 ec 22 f2 61 74 6d  |,-1,"S").@.".atm|
0000e090  28 31 2c 22 53 61 76 65  20 73 65 74 74 69 6e 67  |(1,"Save setting|
0000e0a0  73 22 2c 33 34 2c 22 53  22 29 0d 40 f6 1b f2 61  |s",34,"S").@...a|
0000e0b0  74 6d 28 31 2c 22 45 78  70 6f 72 74 22 2c 2d 31  |tm(1,"Export",-1|
0000e0c0  2c 22 53 22 29 0d 41 00  1b f2 61 74 6d 28 31 2c  |,"S").A...atm(1,|
0000e0d0  22 49 6d 70 6f 72 74 22  2c 33 31 2c 22 4c 22 29  |"Import",31,"L")|
0000e0e0  0d 41 0a 24 f2 61 74 6d  28 31 2c 22 50 72 65 73  |.A.$.atm(1,"Pres|
0000e0f0  65 72 76 65 22 2c a4 63  6d 61 64 28 31 39 29 2c  |erve",.cmad(19),|
0000e100  22 53 22 29 0d 41 14 24  f2 61 74 6d 28 31 2c 22  |"S").A.$.atm(1,"|
0000e110  52 65 73 74 6f 72 65 22  2c a4 63 6d 61 64 28 32  |Restore",.cmad(2|
0000e120  30 29 2c 22 53 46 22 29  0d 41 28 15 f2 62 6d 28  |0),"SF").A(..bm(|
0000e130  31 32 2c 22 50 61 74 74  65 72 6e 22 29 0d 41 32  |12,"Pattern").A2|
0000e140  1e f2 61 74 6d 28 31 32  2c 22 52 65 73 74 61 72  |..atm(12,"Restar|
0000e150  74 65 64 22 2c 2d 31 2c  22 22 29 0d 41 3c 20 f2  |ted",-1,"").A< .|
0000e160  61 74 6d 28 31 32 2c 22  43 6f 6e 74 69 6e 75 6f  |atm(12,"Continuo|
0000e170  75 73 22 2c 2d 31 2c 22  46 22 29 0d 41 50 14 f2  |us",-1,"F").AP..|
0000e180  62 6d 28 31 31 2c 22 53  74 79 6c 65 73 22 29 0d  |bm(11,"Styles").|
0000e190  41 5a 1f f2 61 74 6d 28  31 31 2c 22 53 6f 6c 69  |AZ..atm(11,"Soli|
0000e1a0  64 20 6c 69 6e 65 22 2c  2d 31 2c 22 22 29 0d 41  |d line",-1,"").A|
0000e1b0  64 29 f2 61 74 6d 28 31  31 2c 22 4c 69 6e 65 20  |d).atm(11,"Line |
0000e1c0  70 61 74 74 65 72 6e 22  2c a4 63 6d 61 64 28 31  |pattern",.cmad(1|
0000e1d0  32 29 2c 22 4c 22 29 0d  41 6e 1e f2 61 74 6d 28  |2),"L").An..atm(|
0000e1e0  31 31 2c 22 4f 76 65 72  77 72 69 74 65 22 2c 2d  |11,"Overwrite",-|
0000e1f0  31 2c 22 22 29 0d 41 78  17 f2 61 74 6d 28 31 31  |1,"").Ax..atm(11|
0000e200  2c 22 4f 52 22 2c 2d 31  2c 22 22 29 0d 41 82 18  |,"OR",-1,"").A..|
0000e210  f2 61 74 6d 28 31 31 2c  22 41 4e 44 22 2c 2d 31  |.atm(11,"AND",-1|
0000e220  2c 22 22 29 0d 41 8c 18  f2 61 74 6d 28 31 31 2c  |,"").A...atm(11,|
0000e230  22 45 4f 52 22 2c 2d 31  2c 22 22 29 0d 41 96 1b  |"EOR",-1,"").A..|
0000e240  f2 61 74 6d 28 31 31 2c  22 49 6e 76 65 72 74 22  |.atm(11,"Invert"|
0000e250  2c 2d 31 2c 22 22 29 0d  41 a0 19 f2 61 74 6d 28  |,-1,"").A...atm(|
0000e260  31 31 2c 22 4e 41 4e 44  22 2c 2d 31 2c 22 22 29  |11,"NAND",-1,"")|
0000e270  0d 41 aa 19 f2 61 74 6d  28 31 31 2c 22 4e 4f 52  |.A...atm(11,"NOR|
0000e280  22 2c 2d 31 2c 22 4c 22  29 0d 41 b4 1a f2 61 74  |",-1,"L").A...at|
0000e290  6d 28 31 31 2c 22 45 43  46 20 31 22 2c 2d 31 2c  |m(11,"ECF 1",-1,|
0000e2a0  22 22 29 0d 41 be 1a f2  61 74 6d 28 31 31 2c 22  |"").A...atm(11,"|
0000e2b0  45 43 46 20 32 22 2c 2d  31 2c 22 22 29 0d 41 c8  |ECF 2",-1,"").A.|
0000e2c0  1a f2 61 74 6d 28 31 31  2c 22 45 43 46 20 33 22  |..atm(11,"ECF 3"|
0000e2d0  2c 2d 31 2c 22 22 29 0d  41 d2 1a f2 61 74 6d 28  |,-1,"").A...atm(|
0000e2e0  31 31 2c 22 45 43 46 20  34 22 2c 2d 31 2c 22 22  |11,"ECF 4",-1,""|
0000e2f0  29 0d 41 dc 1f f2 61 74  6d 28 31 31 2c 22 47 69  |).A...atm(11,"Gi|
0000e300  61 6e 74 20 45 43 46 22  2c 2d 31 2c 22 46 22 29  |ant ECF",-1,"F")|
0000e310  0d 41 f0 12 f2 62 6d 28  31 33 2c 22 46 69 6c 6c  |.A...bm(13,"Fill|
0000e320  22 29 0d 41 fa 20 f2 61  74 6d 28 31 33 2c 22 46  |").A. .atm(13,"F|
0000e330  6c 6f 6f 64 20 66 69 6c  6c 22 2c 2d 31 2c 22 53  |lood fill",-1,"S|
0000e340  22 29 0d 42 04 23 f2 61  74 6d 28 31 33 2c 22 50  |").B.#.atm(13,"P|
0000e350  61 74 74 65 72 6e 20 66  69 6c 6c 22 2c 2d 31 2c  |attern fill",-1,|
0000e360  22 53 4c 22 29 0d 42 0e  24 f2 61 74 6d 28 31 33  |"SL").B.$.atm(13|
0000e370  2c 22 47 72 61 64 75 61  74 65 64 20 66 69 6c 6c  |,"Graduated fill|
0000e380  22 2c 31 37 2c 22 46 22  29 0d 42 22 12 f2 62 6d  |",17,"F").B"..bm|
0000e390  28 32 2c 22 50 61 69 6e  74 22 29 0d 42 2c 31 f2  |(2,"Paint").B,1.|
0000e3a0  61 74 6d 28 32 2c 22 53  68 6f 77 20 70 61 6c 65  |atm(2,"Show pale|
0000e3b0  74 74 65 22 2b a4 6b 28  22 20 20 20 20 20 20 20  |tte"+.k("       |
0000e3c0  20 66 31 22 29 2c 2d 31  2c 22 22 29 0d 42 36 32  | f1"),-1,"").B62|
0000e3d0  f2 61 74 6d 28 32 2c 22  53 65 6c 65 63 74 20 63  |.atm(2,"Select c|
0000e3e0  6f 6c 6f 75 72 22 2b a4  6b 28 22 20 20 20 20 20  |olour"+.k("     |
0000e3f0  20 20 66 32 22 29 2c 2d  31 2c 22 53 22 29 0d 42  |  f2"),-1,"S").B|
0000e400  40 27 f2 61 74 6d 28 32  2c 22 55 6e 73 65 74 20  |@'.atm(2,"Unset |
0000e410  74 72 61 6e 73 70 61 72  65 6e 74 73 22 2c 2d 31  |transparents",-1|
0000e420  2c 22 53 22 29 0d 42 4a  26 f2 61 74 6d 28 32 2c  |,"S").BJ&.atm(2,|
0000e430  22 53 65 74 20 74 72 61  6e 73 70 61 72 65 6e 74  |"Set transparent|
0000e440  73 22 2c 2d 31 2c 22 53  4c 22 29 0d 42 54 32 f2  |s",-1,"SL").BT2.|
0000e450  61 74 6d 28 32 2c 22 50  69 78 65 6c 73 22 2b a4  |atm(2,"Pixels"+.|
0000e460  6b 28 22 20 20 20 20 20  20 20 20 20 20 20 20 20  |k("             |
0000e470  20 66 34 22 29 2c 2d 31  2c 22 53 22 29 0d 42 5e  | f4"),-1,"S").B^|
0000e480  32 f2 61 74 6d 28 32 2c  22 53 6b 65 74 63 68 22  |2.atm(2,"Sketch"|
0000e490  2b a4 6b 28 22 20 20 20  20 20 20 20 20 20 20 20  |+.k("           |
0000e4a0  20 20 20 66 35 22 29 2c  2d 31 2c 22 53 22 29 0d  |   f5"),-1,"S").|
0000e4b0  42 68 32 f2 61 74 6d 28  32 2c 22 52 75 62 62 65  |Bh2.atm(2,"Rubbe|
0000e4c0  72 20 6c 69 6e 65 22 2b  a4 6b 28 22 20 20 20 20  |r line"+.k("    |
0000e4d0  20 20 20 20 20 66 36 22  29 2c 2d 31 2c 22 53 22  |     f6"),-1,"S"|
0000e4e0  29 0d 42 72 32 f2 61 74  6d 28 32 2c 22 41 69 72  |).Br2.atm(2,"Air|
0000e4f0  62 72 75 73 68 2e 2e 2e  22 2b a4 6b 28 22 20 20  |brush..."+.k("  |
0000e500  20 20 20 20 20 20 20 66  37 22 29 2c 2d 31 2c 22  |       f7"),-1,"|
0000e510  53 22 29 0d 42 7c 32 f2  61 74 6d 28 32 2c 22 50  |S").B|2.atm(2,"P|
0000e520  61 69 6e 74 62 72 75 73  68 2e 2e 2e 22 2b a4 6b  |aintbrush..."+.k|
0000e530  28 22 20 20 20 20 20 20  20 66 38 22 29 2c 2d 31  |("       f8"),-1|
0000e540  2c 22 4c 22 29 0d 42 86  20 f2 61 74 6d 28 32 2c  |,"L").B. .atm(2,|
0000e550  22 46 69 6c 6c 22 2c a4  63 6d 61 64 28 31 33 29  |"Fill",.cmad(13)|
0000e560  2c 22 4c 22 29 0d 42 90  26 f2 61 74 6d 28 32 2c  |,"L").B.&.atm(2,|
0000e570  22 4c 69 6e 65 20 73 74  79 6c 65 22 2c a4 63 6d  |"Line style",.cm|
0000e580  61 64 28 31 31 29 2c 22  46 22 29 0d 42 a4 13 f2  |ad(11),"F").B...|
0000e590  62 6d 28 34 2c 22 53 68  61 70 65 73 22 29 0d 42  |bm(4,"Shapes").B|
0000e5a0  ae 34 f2 61 74 6d 28 34  2c 22 57 69 72 65 20 72  |.4.atm(4,"Wire r|
0000e5b0  65 63 74 61 6e 67 6c 65  22 2b a4 6b 28 22 20 20  |ectangle"+.k("  |
0000e5c0  20 20 20 20 20 8b 66 35  22 29 2c 2d 31 2c 22 53  |     .f5"),-1,"S|
0000e5d0  22 29 0d 42 b8 34 f2 61  74 6d 28 34 2c 22 57 69  |").B.4.atm(4,"Wi|
0000e5e0  72 65 20 74 72 69 61 6e  67 6c 65 22 2b a4 6b 28  |re triangle"+.k(|
0000e5f0  22 20 20 20 20 20 20 20  20 8b 66 36 22 29 2c 2d  |"        .f6"),-|
0000e600  31 2c 22 53 22 29 0d 42  c2 34 f2 61 74 6d 28 34  |1,"S").B.4.atm(4|
0000e610  2c 22 57 69 72 65 20 63  69 72 63 6c 65 22 2b a4  |,"Wire circle"+.|
0000e620  6b 28 22 20 20 20 20 20  20 20 20 20 20 8b 66 37  |k("          .f7|
0000e630  22 29 2c 2d 31 2c 22 53  22 29 0d 42 cc 33 f2 61  |"),-1,"S").B.3.a|
0000e640  74 6d 28 34 2c 22 57 69  72 65 20 65 6c 6c 69 70  |tm(4,"Wire ellip|
0000e650  73 65 22 2b a4 6b 28 22  20 20 20 20 20 20 20 20  |se"+.k("        |
0000e660  20 8b 66 38 22 29 2c 2d  31 2c 22 22 29 0d 42 d6  | .f8"),-1,"").B.|
0000e670  33 f2 61 74 6d 28 34 2c  22 57 69 72 65 20 70 61  |3.atm(4,"Wire pa|
0000e680  72 61 6c 6c 65 6c 6f 67  72 61 6d 22 2b a4 6b 28  |rallelogram"+.k(|
0000e690  22 20 20 20 8b 66 39 22  29 2c 2d 31 2c 22 22 29  |"   .f9"),-1,"")|
0000e6a0  0d 42 e0 36 f2 61 74 6d  28 34 2c 22 57 69 72 65  |.B.6.atm(4,"Wire|
0000e6b0  20 61 72 63 22 2b a4 6b  28 22 20 20 20 20 20 20  | arc"+.k("      |
0000e6c0  20 20 20 20 20 20 20 8b  66 31 30 22 29 2c 2d 31  |       .f10"),-1|
0000e6d0  2c 22 53 4c 22 29 0d 42  ea 34 f2 61 74 6d 28 34  |,"SL").B.4.atm(4|
0000e6e0  2c 22 53 6f 6c 69 64 20  72 65 63 74 61 6e 67 6c  |,"Solid rectangl|
0000e6f0  65 22 2b a4 6b 28 22 20  20 20 20 20 20 5e 66 35  |e"+.k("      ^f5|
0000e700  22 29 2c 2d 31 2c 22 53  22 29 0d 42 f4 34 f2 61  |"),-1,"S").B.4.a|
0000e710  74 6d 28 34 2c 22 53 6f  6c 69 64 20 74 72 69 61  |tm(4,"Solid tria|
0000e720  6e 67 6c 65 22 2b a4 6b  28 22 20 20 20 20 20 20  |ngle"+.k("      |
0000e730  20 5e 66 36 22 29 2c 2d  31 2c 22 53 22 29 0d 42  | ^f6"),-1,"S").B|
0000e740  fe 34 f2 61 74 6d 28 34  2c 22 53 6f 6c 69 64 20  |.4.atm(4,"Solid |
0000e750  63 69 72 63 6c 65 22 2b  a4 6b 28 22 20 20 20 20  |circle"+.k("    |
0000e760  20 20 20 20 20 5e 66 37  22 29 2c 2d 31 2c 22 53  |     ^f7"),-1,"S|
0000e770  22 29 0d 43 08 34 f2 61  74 6d 28 34 2c 22 53 6f  |").C.4.atm(4,"So|
0000e780  6c 69 64 20 65 6c 6c 69  70 73 65 22 2b a4 6b 28  |lid ellipse"+.k(|
0000e790  22 20 20 20 20 20 20 20  20 5e 66 38 22 29 2c 2d  |"        ^f8"),-|
0000e7a0  31 2c 22 53 22 29 0d 43  12 34 f2 61 74 6d 28 34  |1,"S").C.4.atm(4|
0000e7b0  2c 22 53 6f 6c 69 64 20  70 61 72 61 6c 6c 65 6c  |,"Solid parallel|
0000e7c0  6f 67 72 61 6d 22 2b a4  6b 28 22 20 20 5e 66 39  |ogram"+.k("  ^f9|
0000e7d0  22 29 2c 2d 31 2c 22 53  22 29 0d 43 1c 34 f2 61  |"),-1,"S").C.4.a|
0000e7e0  74 6d 28 34 2c 22 53 6f  6c 69 64 20 73 65 63 74  |tm(4,"Solid sect|
0000e7f0  6f 72 22 2b a4 6b 28 22  20 20 20 20 20 20 20 20  |or"+.k("        |
0000e800  20 5e 66 31 30 22 29 2c  2d 31 2c 22 22 29 0d 43  | ^f10"),-1,"").C|
0000e810  26 36 f2 61 74 6d 28 34  2c 22 53 6f 6c 69 64 20  |&6.atm(4,"Solid |
0000e820  73 65 67 6d 65 6e 74 22  2b a4 6b 28 22 20 20 20  |segment"+.k("   |
0000e830  20 20 20 20 20 5e 66 31  31 22 29 2c 2d 31 2c 22  |     ^f11"),-1,"|
0000e840  53 46 22 29 0d 43 3a 14  f2 62 6d 28 36 2c 22 50  |SF").C:..bm(6,"P|
0000e850  72 65 73 65 74 73 22 29  0d 43 44 1c f2 61 74 6d  |resets").CD..atm|
0000e860  28 36 2c 22 32 78 32 20  67 72 69 64 22 2c 2d 31  |(6,"2x2 grid",-1|
0000e870  2c 22 22 29 0d 43 4e 1c  f2 61 74 6d 28 36 2c 22  |,"").CN..atm(6,"|
0000e880  33 78 33 20 67 72 69 64  22 2c 2d 31 2c 22 22 29  |3x3 grid",-1,"")|
0000e890  0d 43 58 1c f2 61 74 6d  28 36 2c 22 34 78 34 20  |.CX..atm(6,"4x4 |
0000e8a0  67 72 69 64 22 2c 2d 31  2c 22 22 29 0d 43 62 1c  |grid",-1,"").Cb.|
0000e8b0  f2 61 74 6d 28 36 2c 22  36 78 36 20 67 72 69 64  |.atm(6,"6x6 grid|
0000e8c0  22 2c 2d 31 2c 22 22 29  0d 43 6c 1c f2 61 74 6d  |",-1,"").Cl..atm|
0000e8d0  28 36 2c 22 38 78 38 20  67 72 69 64 22 2c 2d 31  |(6,"8x8 grid",-1|
0000e8e0  2c 22 22 29 0d 43 76 1e  f2 61 74 6d 28 36 2c 22  |,"").Cv..atm(6,"|
0000e8f0  31 36 78 31 36 20 67 72  69 64 22 2c 2d 31 2c 22  |16x16 grid",-1,"|
0000e900  22 29 0d 43 80 1e f2 61  74 6d 28 36 2c 22 33 32  |").C...atm(6,"32|
0000e910  78 33 32 20 67 72 69 64  22 2c 2d 31 2c 22 22 29  |x32 grid",-1,"")|
0000e920  0d 43 8a 1f f2 61 74 6d  28 36 2c 22 33 32 78 31  |.C...atm(6,"32x1|
0000e930  36 20 67 72 69 64 22 2c  2d 31 2c 22 46 22 29 0d  |6 grid",-1,"F").|
0000e940  43 9e 11 f2 62 6d 28 35  2c 22 47 72 69 64 22 29  |C...bm(5,"Grid")|
0000e950  0d 43 a8 2e f2 61 74 6d  28 35 2c 22 53 68 6f 77  |.C...atm(5,"Show|
0000e960  20 67 72 69 64 22 2b a4  6b 28 22 20 20 20 20 20  | grid"+.k("     |
0000e970  5e 66 31 32 22 29 2c 2d  31 2c 22 53 22 29 0d 43  |^f12"),-1,"S").C|
0000e980  b2 2e f2 61 74 6d 28 35  2c 22 48 69 64 65 20 67  |...atm(5,"Hide g|
0000e990  72 69 64 22 2b a4 6b 28  22 20 20 20 20 20 8b 66  |rid"+.k("     .f|
0000e9a0  31 32 22 29 2c 2d 31 2c  22 53 22 29 0d 43 bc 1e  |12"),-1,"S").C..|
0000e9b0  f2 61 74 6d 28 35 2c 22  47 72 69 64 20 6c 6f 63  |.atm(5,"Grid loc|
0000e9c0  6b 22 2c 2d 31 2c 22 53  22 29 0d 43 c6 26 f2 61  |k",-1,"S").C.&.a|
0000e9d0  74 6d 28 35 2c 22 50 72  65 73 65 74 20 67 72 69  |tm(5,"Preset gri|
0000e9e0  64 73 22 2c a4 63 6d 61  64 28 36 29 2c 22 22 29  |ds",.cmad(6),"")|
0000e9f0  0d 43 d0 1d f2 61 74 6d  28 35 2c 22 45 64 69 74  |.C...atm(5,"Edit|
0000ea00  20 67 72 69 64 22 2c 36  2c 22 46 22 29 0d 43 e4  | grid",6,"F").C.|
0000ea10  17 f2 62 6d 28 37 2c 22  4d 61 6e 69 70 75 6c 61  |..bm(7,"Manipula|
0000ea20  74 65 22 29 0d 43 ee 19  f2 61 74 6d 28 37 2c 22  |te").C...atm(7,"|
0000ea30  55 6e 64 6f 22 2c 2d 31  2c 22 4c 22 29 0d 43 f8  |Undo",-1,"L").C.|
0000ea40  21 f2 61 74 6d 28 37 2c  22 43 6f 70 79 20 61 72  |!.atm(7,"Copy ar|
0000ea50  65 61 2e 2e 2e 22 2c 2d  31 2c 22 53 22 29 0d 44  |ea...",-1,"S").D|
0000ea60  02 21 f2 61 74 6d 28 37  2c 22 4d 6f 76 65 20 61  |.!.atm(7,"Move a|
0000ea70  72 65 61 2e 2e 2e 22 2c  2d 31 2c 22 53 22 29 0d  |rea...",-1,"S").|
0000ea80  44 0c 20 f2 61 74 6d 28  37 2c 22 4d 69 72 72 6f  |D. .atm(7,"Mirro|
0000ea90  72 20 61 72 65 61 22 2c  2d 31 2c 22 53 22 29 0d  |r area",-1,"S").|
0000eaa0  44 16 20 f2 61 74 6d 28  37 2c 22 49 6e 76 65 72  |D. .atm(7,"Inver|
0000eab0  74 20 61 72 65 61 22 2c  2d 31 2c 22 53 22 29 0d  |t area",-1,"S").|
0000eac0  44 20 1f f2 61 74 6d 28  37 2c 22 53 74 72 69 70  |D ..atm(7,"Strip|
0000ead0  20 61 72 65 61 22 2c 2d  31 2c 22 53 22 29 0d 44  | area",-1,"S").D|
0000eae0  2a 1e f2 61 74 6d 28 37  2c 22 52 6f 74 61 74 65  |*..atm(7,"Rotate|
0000eaf0  2e 2e 2e 22 2c 2d 31 2c  22 53 22 29 0d 44 34 24  |...",-1,"S").D4$|
0000eb00  f2 61 74 6d 28 37 2c 22  53 63 61 6c 65 20 74 6f  |.atm(7,"Scale to|
0000eb10  20 66 69 74 2e 2e 2e 22  2c 2d 31 2c 22 4c 22 29  | fit...",-1,"L")|
0000eb20  0d 44 3e 1d f2 61 74 6d  28 37 2c 22 57 6f 62 62  |.D>..atm(7,"Wobb|
0000eb30  6c 65 2e 2e 2e 22 2c 2d  31 2c 22 22 29 0d 44 48  |le...",-1,"").DH|
0000eb40  22 f2 61 74 6d 28 37 2c  22 50 69 78 65 6c 20 6d  |".atm(7,"Pixel m|
0000eb50  61 70 70 69 6e 67 22 2c  2d 31 2c 22 46 22 29 0d  |apping",-1,"F").|
0000eb60  44 5c 1b f2 62 6d 28 31  37 2c 22 43 6f 6c 6f 75  |D\..bm(17,"Colou|
0000eb70  72 20 73 63 61 6c 65 73  22 29 0d 44 66 18 f2 61  |r scales").Df..a|
0000eb80  74 6d 28 31 37 2c 22 52  65 64 22 2c 2d 31 2c 22  |tm(17,"Red",-1,"|
0000eb90  22 29 0d 44 70 1a f2 61  74 6d 28 31 37 2c 22 47  |").Dp..atm(17,"G|
0000eba0  72 65 65 6e 22 2c 2d 31  2c 22 22 29 0d 44 7a 19  |reen",-1,"").Dz.|
0000ebb0  f2 61 74 6d 28 31 37 2c  22 42 6c 75 65 22 2c 2d  |.atm(17,"Blue",-|
0000ebc0  31 2c 22 22 29 0d 44 84  19 f2 61 74 6d 28 31 37  |1,"").D...atm(17|
0000ebd0  2c 22 43 79 61 6e 22 2c  2d 31 2c 22 22 29 0d 44  |,"Cyan",-1,"").D|
0000ebe0  8e 1c f2 61 74 6d 28 31  37 2c 22 4d 61 67 65 6e  |...atm(17,"Magen|
0000ebf0  74 61 22 2c 2d 31 2c 22  22 29 0d 44 98 1c f2 61  |ta",-1,"").D...a|
0000ec00  74 6d 28 31 37 2c 22 59  65 6c 6c 6f 77 22 2c 2d  |tm(17,"Yellow",-|
0000ec10  31 2c 22 46 22 29 0d 44  ac 12 f2 62 6d 28 31 38  |1,"F").D...bm(18|
0000ec20  2c 22 54 69 6e 74 22 29  0d 44 b6 16 f2 61 74 6d  |,"Tint").D...atm|
0000ec30  28 31 38 2c 22 30 22 2c  2d 31 2c 22 22 29 0d 44  |(18,"0",-1,"").D|
0000ec40  c0 16 f2 61 74 6d 28 31  38 2c 22 31 22 2c 2d 31  |...atm(18,"1",-1|
0000ec50  2c 22 22 29 0d 44 ca 16  f2 61 74 6d 28 31 38 2c  |,"").D...atm(18,|
0000ec60  22 32 22 2c 2d 31 2c 22  22 29 0d 44 d4 17 f2 61  |"2",-1,"").D...a|
0000ec70  74 6d 28 31 38 2c 22 33  22 2c 2d 31 2c 22 46 22  |tm(18,"3",-1,"F"|
0000ec80  29 0d 44 e8 14 f2 62 6d  28 38 2c 22 53 70 65 63  |).D...bm(8,"Spec|
0000ec90  69 61 6c 22 29 0d 44 f2  1a f2 61 74 6d 28 38 2c  |ial").D...atm(8,|
0000eca0  22 54 72 61 63 65 22 2c  2d 31 2c 22 53 22 29 0d  |"Trace",-1,"S").|
0000ecb0  44 fc 1f f2 61 74 6d 28  38 2c 22 53 6d 75 64 67  |D...atm(8,"Smudg|
0000ecc0  65 20 61 72 65 61 22 2c  2d 31 2c 22 22 29 0d 45  |e area",-1,"").E|
0000ecd0  06 21 f2 61 74 6d 28 38  2c 22 57 65 74 20 62 72  |.!.atm(8,"Wet br|
0000ece0  75 73 68 2e 2e 2e 22 2c  2d 31 2c 22 53 22 29 0d  |ush...",-1,"S").|
0000ecf0  45 10 1e f2 61 74 6d 28  38 2c 22 54 69 6e 74 20  |E...atm(8,"Tint |
0000ed00  61 72 65 61 22 2c 2d 31  2c 22 53 22 29 0d 45 1a  |area",-1,"S").E.|
0000ed10  22 f2 61 74 6d 28 38 2c  22 54 69 6e 74 20 62 72  |".atm(8,"Tint br|
0000ed20  75 73 68 2e 2e 2e 22 2c  2d 31 2c 22 53 22 29 0d  |ush...",-1,"S").|
0000ed30  45 24 1f f2 61 74 6d 28  38 2c 22 53 65 74 20 66  |E$..atm(8,"Set f|
0000ed40  72 61 6d 65 22 2c 31 39  2c 22 53 4c 22 29 0d 45  |rame",19,"SL").E|
0000ed50  2e 22 f2 61 74 6d 28 38  2c 22 52 47 42 20 63 6f  |.".atm(8,"RGB co|
0000ed60  6e 74 72 6f 6c 2e 2e 2e  22 2c 2d 31 2c 22 22 29  |ntrol...",-1,"")|
0000ed70  0d 45 38 22 f2 61 74 6d  28 38 2c 22 47 72 65 79  |.E8".atm(8,"Grey|
0000ed80  20 73 63 61 6c 65 2e 2e  2e 22 2c 2d 31 2c 22 53  | scale...",-1,"S|
0000ed90  22 29 0d 45 42 27 f2 61  74 6d 28 38 2c 22 43 6f  |").EB'.atm(8,"Co|
0000eda0  6e 74 72 61 73 74 20 63  6f 6e 74 72 6f 6c 2e 2e  |ntrast control..|
0000edb0  2e 22 2c 2d 31 2c 22 22  29 0d 45 4c 25 f2 61 74  |.",-1,"").EL%.at|
0000edc0  6d 28 38 2c 22 50 6f 73  74 65 72 69 7a 61 74 69  |m(8,"Posterizati|
0000edd0  6f 6e 2e 2e 2e 22 2c 2d  31 2c 22 53 22 29 0d 45  |on...",-1,"S").E|
0000ede0  56 23 f2 61 74 6d 28 38  2c 22 44 65 2d 74 69 6e  |V#.atm(8,"De-tin|
0000edf0  74 22 2c a4 63 6d 61 64  28 31 38 29 2c 22 53 22  |t",.cmad(18),"S"|
0000ee00  29 0d 45 60 1e f2 61 74  6d 28 38 2c 22 52 47 42  |).E`..atm(8,"RGB|
0000ee10  20 67 72 61 70 68 22 2c  2d 31 2c 22 53 22 29 0d  | graph",-1,"S").|
0000ee20  45 6a 29 f2 61 74 6d 28  38 2c 22 43 6f 6c 6f 75  |Ej).atm(8,"Colou|
0000ee30  72 20 73 63 61 6c 65 22  2c a4 63 6d 61 64 28 31  |r scale",.cmad(1|
0000ee40  37 29 2c 22 53 4c 22 29  0d 45 74 20 f2 61 74 6d  |7),"SL").Et .atm|
0000ee50  28 38 2c 22 50 69 78 65  6c 61 74 65 2e 2e 2e 22  |(8,"Pixelate..."|
0000ee60  2c 2d 31 2c 22 53 22 29  0d 45 7e 1d f2 61 74 6d  |,-1,"S").E~..atm|
0000ee70  28 38 2c 22 46 69 6c 74  65 72 2e 2e 2e 22 2c 2d  |(8,"Filter...",-|
0000ee80  31 2c 22 22 29 0d 45 88  27 f2 61 74 6d 28 38 2c  |1,"").E.'.atm(8,|
0000ee90  22 43 6f 6c 6f 75 72 20  72 65 70 6c 61 63 65 2e  |"Colour replace.|
0000eea0  2e 2e 22 2c 2d 31 2c 22  53 46 22 29 0d 45 9c 11  |..",-1,"SF").E..|
0000eeb0  f2 62 6d 28 39 2c 22 45  64 69 74 22 29 0d 45 a6  |.bm(9,"Edit").E.|
0000eec0  21 f2 61 74 6d 28 39 2c  22 4c 69 6e 65 20 70 61  |!.atm(9,"Line pa|
0000eed0  74 74 65 72 6e 22 2c 31  30 2c 22 53 22 29 0d 45  |ttern",10,"S").E|
0000eee0  b0 22 f2 61 74 6d 28 39  2c 22 46 69 6c 6c 20 70  |.".atm(9,"Fill p|
0000eef0  61 74 74 65 72 6e 73 22  2c 31 31 2c 22 53 22 29  |atterns",11,"S")|
0000ef00  0d 45 ba 24 f2 61 74 6d  28 39 2c 22 45 64 69 74  |.E.$.atm(9,"Edit|
0000ef10  20 62 72 75 73 68 2f 66  69 6c 6c 22 2c 31 32 2c  | brush/fill",12,|
0000ef20  22 53 22 29 0d 45 c4 24  f2 61 74 6d 28 39 2c 22  |"S").E.$.atm(9,"|
0000ef30  47 72 61 64 75 61 74 65  64 20 66 69 6c 6c 73 22  |Graduated fills"|
0000ef40  2c 31 33 2c 22 46 22 29  0d 45 d8 12 f2 62 6d 28  |,13,"F").E...bm(|
0000ef50  31 30 2c 22 4d 69 73 63  22 29 0d 45 e2 19 f2 61  |10,"Misc").E...a|
0000ef60  74 6d 28 31 30 2c 22 49  6e 66 6f 22 2c 31 2c 22  |tm(10,"Info",1,"|
0000ef70  4c 22 29 0d 45 ec 21 f2  61 74 6d 28 31 30 2c 22  |L").E.!.atm(10,"|
0000ef80  45 6e 61 62 6c 65 20 75  6e 64 6f 22 2c 2d 31 2c  |Enable undo",-1,|
0000ef90  22 53 22 29 0d 45 f6 22  f2 61 74 6d 28 31 30 2c  |"S").E.".atm(10,|
0000efa0  22 44 69 73 61 62 6c 65  20 75 6e 64 6f 22 2c 2d  |"Disable undo",-|
0000efb0  31 2c 22 53 22 29 0d 46  00 27 f2 61 74 6d 28 31  |1,"S").F.'.atm(1|
0000efc0  30 2c 22 4d 6f 75 73 65  20 73 70 65 65 64 22 2c  |0,"Mouse speed",|
0000efd0  a4 63 6d 61 64 28 31 35  29 2c 22 22 29 0d 46 0a  |.cmad(15),"").F.|
0000efe0  20 f2 61 74 6d 28 31 30  2c 22 43 75 72 73 6f 72  | .atm(10,"Cursor|
0000eff0  20 6b 65 79 73 22 2c 2d  31 2c 22 22 29 0d 46 14  | keys",-1,"").F.|
0000f000  1f f2 61 74 6d 28 31 30  2c 22 46 75 6c 6c 20 6d  |..atm(10,"Full m|
0000f010  65 6e 75 73 22 2c 2d 31  2c 22 22 29 0d 46 1e 2e  |enus",-1,"").F..|
0000f020  f2 61 74 6d 28 31 30 2c  22 42 72 69 6e 67 20 74  |.atm(10,"Bring t|
0000f030  6f 20 74 6f 70 20 20 22  2b a4 6b 28 22 66 31 31  |o top  "+.k("f11|
0000f040  22 29 2c 2d 31 2c 22 4c  22 29 0d 46 28 22 f2 61  |"),-1,"L").F(".a|
0000f050  74 6d 28 31 30 2c 22 57  69 70 65 20 70 69 63 74  |tm(10,"Wipe pict|
0000f060  75 72 65 22 2c 2d 31 2c  22 46 22 29 0d 46 3c 14  |ure",-1,"F").F<.|
0000f070  f2 62 6d 28 30 2c 22 49  6d 61 67 65 72 79 22 29  |.bm(0,"Imagery")|
0000f080  0d 46 46 1f f2 61 74 6d  28 30 2c 22 4d 69 73 63  |.FF..atm(0,"Misc|
0000f090  22 2c a4 63 6d 61 64 28  31 30 29 2c 22 22 29 0d  |",.cmad(10),"").|
0000f0a0  46 50 1f f2 61 74 6d 28  30 2c 22 46 69 6c 65 22  |FP..atm(0,"File"|
0000f0b0  2c a4 63 6d 61 64 28 31  29 2c 22 4c 22 29 0d 46  |,.cmad(1),"L").F|
0000f0c0  5a 2f f2 61 74 6d 28 30  2c 22 50 61 69 6e 74 22  |Z/.atm(0,"Paint"|
0000f0d0  2b a4 6b 28 22 20 20 20  20 20 20 20 66 39 22 29  |+.k("       f9")|
0000f0e0  2c a4 63 6d 61 64 28 32  29 2c 22 22 29 0d 46 64  |,.cmad(2),"").Fd|
0000f0f0  18 f2 61 74 6d 28 30 2c  22 54 65 78 74 22 2c 30  |..atm(0,"Text",0|
0000f100  2c 22 53 22 29 0d 46 6e  20 f2 61 74 6d 28 30 2c  |,"S").Fn .atm(0,|
0000f110  22 53 68 61 70 65 73 22  2c a4 63 6d 61 64 28 34  |"Shapes",.cmad(4|
0000f120  29 2c 22 22 29 0d 46 78  21 f2 61 74 6d 28 30 2c  |),"").Fx!.atm(0,|
0000f130  22 53 70 65 63 69 61 6c  22 2c a4 63 6d 61 64 28  |"Special",.cmad(|
0000f140  38 29 2c 22 22 29 0d 46  82 1e f2 61 74 6d 28 30  |8),"").F...atm(0|
0000f150  2c 22 45 64 69 74 22 2c  a4 63 6d 61 64 28 39 29  |,"Edit",.cmad(9)|
0000f160  2c 22 22 29 0d 46 8c 25  f2 61 74 6d 28 30 2c 22  |,"").F.%.atm(0,"|
0000f170  4d 61 6e 69 70 75 6c 61  74 65 22 2c a4 63 6d 61  |Manipulate",.cma|
0000f180  64 28 37 29 2c 22 4c 22  29 0d 46 96 2b f2 61 74  |d(7),"L").F.+.at|
0000f190  6d 28 30 2c 22 5a 6f 6f  6d 22 2b a4 6b 28 22 20  |m(0,"Zoom"+.k(" |
0000f1a0  20 20 20 20 20 20 20 66  31 30 22 29 2c 33 33 2c  |       f10"),33,|
0000f1b0  22 53 22 29 0d 46 a0 1e  f2 61 74 6d 28 30 2c 22  |"S").F...atm(0,"|
0000f1c0  47 72 69 64 22 2c a4 63  6d 61 64 28 35 29 2c 22  |Grid",.cmad(5),"|
0000f1d0  22 29 0d 46 aa 1d f2 61  74 6d 28 30 2c 22 54 6f  |").F...atm(0,"To|
0000f1e0  6f 6c 6b 69 74 22 2c 2d  31 2c 22 53 46 22 29 0d  |olkit",-1,"SF").|
0000f1f0  46 be 05 e1 0d 46 d2 53  dd a4 66 6f 6e 74 28 46  |F....F.S..font(F|
0000f200  25 29 3a e7 20 46 4f 4e  54 41 25 3d 2d 31 20 84  |%):. FONTA%=-1 .|
0000f210  20 46 25 3e 46 4f 4e 54  53 25 20 8c 20 3d 22 22  | F%>FONTS% . =""|
0000f220  20 8b 20 3d 24 28 46 4f  4e 54 41 25 2b 46 4f 4e  | . =$(FONTA%+FON|
0000f230  54 4f 25 2b 28 21 28 46  4f 4e 54 41 25 2b 28 46  |TO%+(!(FONTA%+(F|
0000f240  25 2a 34 29 29 29 29 0d  46 e6 25 dd a4 66 6f 6e  |%*4)))).F.%..fon|
0000f250  74 72 6f 6f 74 28 46 24  29 3a e7 20 a7 46 24 2c  |troot(F$):. .F$,|
0000f260  22 2e 22 29 3d 30 20 8c  20 3d 46 24 0d 46 f0 4c  |".")=0 . =F$.F.L|
0000f270  49 50 46 25 3d 31 3a 49  50 46 24 3d 22 22 3a c8  |IPF%=1:IPF$="":.|
0000f280  95 20 c1 46 24 2c 49 50  46 25 2c 31 29 3c 3e 22  |. .F$,IPF%,1)<>"|
0000f290  2e 22 3a 49 50 46 24 3d  49 50 46 24 2b c1 46 24  |.":IPF$=IPF$+.F$|
0000f2a0  2c 49 50 46 25 2c 31 29  3a 49 50 46 25 2b 3d 31  |,IPF%,1):IPF%+=1|
0000f2b0  3a ce 3a 3d 49 50 46 24  0d 47 04 26 f4 20 2a 2a  |:.:=IPF$.G.&. **|
0000f2c0  20 43 72 65 61 74 65 20  61 20 6d 65 6e 75 20 28  | Create a menu (|
0000f2d0  4e 75 6d 62 65 72 2c 20  54 69 74 6c 65 29 0d 47  |Number, Title).G|
0000f2e0  0e 11 dd f2 62 6d 28 4d  4e 25 2c 4d 54 24 29 0d  |....bm(MN%,MT$).|
0000f2f0  47 18 2b 21 a4 6d 61 64  28 4d 4e 25 29 3d 4d 45  |G.+!.mad(MN%)=ME|
0000f300  4e 55 25 2b 4d 45 4f 46  25 3a 54 41 44 25 3d 4d  |NU%+MEOF%:TAD%=M|
0000f310  45 4e 55 25 2b 4d 45 4f  46 25 0d 47 22 54 24 54  |ENU%+MEOF%.G"T$T|
0000f320  41 44 25 3d 4d 54 24 3a  54 41 44 25 3f 31 32 3d  |AD%=MT$:TAD%?12=|
0000f330  37 3a 54 41 44 25 3f 31  33 3d 32 3a 54 41 44 25  |7:TAD%?13=2:TAD%|
0000f340  3f 31 34 3d 37 3a 54 41  44 25 3f 31 35 3d 30 3a  |?14=7:TAD%?15=0:|
0000f350  54 41 44 25 21 31 36 3d  30 3a 54 41 44 25 21 32  |TAD%!16=0:TAD%!2|
0000f360  30 3d 34 34 3a 54 41 44  25 21 32 34 3d 30 0d 47  |0=44:TAD%!24=0.G|
0000f370  2c 0d 4d 45 4f 46 25 2b  3d 32 38 0d 47 36 40 e7  |,.MEOF%+=28.G6@.|
0000f380  20 4d 45 4f 46 25 3e 4d  45 53 49 25 20 8c 20 f2  | MEOF%>MESI% . .|
0000f390  6d 65 73 73 61 67 65 28  30 2c 22 4d 65 6e 75 20  |message(0,"Menu |
0000f3a0  74 72 65 65 20 68 61 73  20 72 75 6e 20 6f 75 74  |tree has run out|
0000f3b0  20 6f 66 20 72 6f 6f 6d  2e 22 29 0d 47 40 05 e1  | of room.").G@..|
0000f3c0  0d 47 54 33 f4 20 2a 2a  20 46 65 61 74 75 72 65  |.GT3. ** Feature|
0000f3d0  20 66 6f 72 6d 61 74 20  3a 20 4c 20 3d 20 46 6f  | format : L = Fo|
0000f3e0  6c 6c 6f 77 20 62 79 20  64 6f 74 74 65 64 20 6c  |llow by dotted l|
0000f3f0  69 6e 65 0d 47 5e 27 f4  20 2a 2a 20 20 20 20 20  |ine.G^'. **     |
0000f400  20 20 20 20 20 20 20 20  20 20 20 3a 20 46 20 3d  |           : F =|
0000f410  20 4c 61 73 74 20 69 74  65 6d 0d 47 68 1a dd f2  | Last item.Gh...|
0000f420  61 74 6d 28 4d 4e 25 2c  49 54 24 2c 48 41 25 2c  |atm(MN%,IT$,HA%,|
0000f430  46 45 24 29 0d 47 72 14  54 41 44 25 3d 4d 45 4e  |FE$).Gr.TAD%=MEN|
0000f440  55 25 2b 4d 45 4f 46 25  0d 47 7c 09 46 45 25 3d  |U%+MEOF%.G|.FE%=|
0000f450  30 0d 47 86 18 e7 20 a7  46 45 24 2c 22 4c 22 29  |0.G... .FE$,"L")|
0000f460  20 8c 20 46 45 25 2b 3d  32 0d 47 90 1a e7 20 a7  | . FE%+=2.G... .|
0000f470  46 45 24 2c 22 46 22 29  20 8c 20 46 45 25 2b 3d  |FE$,"F") . FE%+=|
0000f480  31 32 38 0d 47 9a 0d 21  54 41 44 25 3d 46 45 25  |128.G..!TAD%=FE%|
0000f490  0d 47 a4 2c e7 20 48 41  25 3e 2d 31 20 80 20 48  |.G.,. HA%>-1 . H|
0000f4a0  41 25 3c 26 38 30 30 30  20 8c 20 54 41 44 25 21  |A%<&8000 . TAD%!|
0000f4b0  34 3d 48 41 4e 44 25 28  48 41 25 29 0d 47 ae 18  |4=HAND%(HA%).G..|
0000f4c0  e7 20 48 41 25 3d 2d 31  20 8c 20 54 41 44 25 21  |. HA%=-1 . TAD%!|
0000f4d0  34 3d 2d 31 0d 47 b8 1c  e7 20 48 41 25 3e 26 38  |4=-1.G... HA%>&8|
0000f4e0  30 30 30 20 8c 20 54 41  44 25 21 34 3d 48 41 25  |000 . TAD%!4=HA%|
0000f4f0  0d 47 c2 1c 54 41 44 25  21 38 3d 31 20 84 20 28  |.G..TAD%!8=1 . (|
0000f500  37 3c 3c 32 34 29 20 84  20 32 35 36 0d 47 cc 29  |7<<24) . 256.G.)|
0000f510  e7 20 a7 46 45 24 2c 22  53 22 29 20 8c 20 54 41  |. .FE$,"S") . TA|
0000f520  44 25 21 38 3d 28 54 41  44 25 21 38 29 2b 28 31  |D%!8=(TAD%!8)+(1|
0000f530  3c 3c 32 32 29 0d 47 d6  19 24 28 4d 45 4e 55 49  |<<22).G..$(MENUI|
0000f540  4e 44 25 2b 4d 45 49 4e  25 29 3d 49 54 24 0d 47  |ND%+MEIN%)=IT$.G|
0000f550  e0 11 49 4c 45 25 3d a9  28 49 54 24 29 2b 31 0d  |..ILE%=.(IT$)+1.|
0000f560  47 ea 2a e7 20 28 49 4c  45 25 20 83 20 34 29 3e  |G.*. (ILE% . 4)>|
0000f570  30 20 8c 20 49 4c 45 25  3d 28 28 49 4c 45 25 20  |0 . ILE%=((ILE% |
0000f580  81 20 34 29 2b 31 29 2a  34 0d 47 f4 1a 54 41 44  |. 4)+1)*4.G..TAD|
0000f590  25 21 31 32 3d 4d 45 4e  55 49 4e 44 25 2b 4d 45  |%!12=MENUIND%+ME|
0000f5a0  49 4e 25 0d 47 fe 12 54  41 44 25 21 32 30 3d a9  |IN%.G..TAD%!20=.|
0000f5b0  28 49 54 24 29 0d 48 08  13 54 41 44 25 21 31 36  |(IT$).H..TAD%!16|
0000f5c0  3d 4d 45 4e 41 4c 4f 25  0d 48 12 0f 4d 45 49 4e  |=MENALO%.H..MEIN|
0000f5d0  25 2b 3d 49 4c 45 25 0d  48 1c 43 e7 20 4d 45 49  |%+=ILE%.H.C. MEI|
0000f5e0  4e 25 3e 4d 45 53 49 25  20 8c 20 f2 6d 65 73 73  |N%>MESI% . .mess|
0000f5f0  61 67 65 28 31 2c 22 4d  65 6e 75 20 69 6e 64 69  |age(1,"Menu indi|
0000f600  72 65 63 74 69 6f 6e 20  62 75 66 66 65 72 20 6f  |rection buffer o|
0000f610  76 65 72 66 6c 6f 77 2e  22 29 0d 48 26 0d 4d 45  |verflow.").H&.ME|
0000f620  4f 46 25 2b 3d 32 34 0d  48 30 3f e7 20 4d 45 4f  |OF%+=24.H0?. MEO|
0000f630  46 25 3e 4d 45 53 49 25  20 8c 20 f2 6d 65 73 73  |F%>MESI% . .mess|
0000f640  61 67 65 28 30 2c 22 4d  65 6e 75 20 74 72 65 65  |age(0,"Menu tree|
0000f650  20 68 61 73 20 72 75 6e  20 6f 75 74 20 6f 66 20  | has run out of |
0000f660  72 6f 6f 6d 22 29 0d 48  3a 4b e7 20 28 28 21 28  |room").H:K. ((!(|
0000f670  a4 63 6d 61 64 28 4d 4e  25 29 2b 31 36 29 29 2d  |.cmad(MN%)+16))-|
0000f680  33 32 29 3c 28 a9 28 49  54 24 29 2a 31 36 29 20  |32)<(.(IT$)*16) |
0000f690  8c 20 21 28 a4 63 6d 61  64 28 4d 4e 25 29 2b 31  |. !(.cmad(MN%)+1|
0000f6a0  36 29 3d 28 a9 28 49 54  24 29 2a 31 36 29 2b 33  |6)=(.(IT$)*16)+3|
0000f6b0  32 0d 48 44 05 e1 0d 48  58 54 dd f2 73 68 61 64  |2.HD...HXT..shad|
0000f6c0  65 69 74 65 6d 28 4d 4e  25 2c 49 4e 25 29 3a 54  |eitem(MN%,IN%):T|
0000f6d0  41 44 25 3d a4 63 6d 61  64 28 4d 4e 25 29 2b 32  |AD%=.cmad(MN%)+2|
0000f6e0  38 2b 28 28 49 4e 25 2d  31 29 2a 32 34 29 3a 54  |8+((IN%-1)*24):T|
0000f6f0  41 44 25 21 38 3d 28 54  41 44 25 21 38 29 20 84  |AD%!8=(TAD%!8) .|
0000f700  20 28 31 3c 3c 32 32 29  3a e1 0d 48 6c 4b dd f2  | (1<<22):..HlK..|
0000f710  74 69 63 6b 69 74 65 6d  28 4d 4e 25 2c 49 4e 25  |tickitem(MN%,IN%|
0000f720  29 3a 54 41 44 25 3d a4  63 6d 61 64 28 4d 4e 25  |):TAD%=.cmad(MN%|
0000f730  29 2b 32 38 2b 28 28 49  4e 25 2d 31 29 2a 32 34  |)+28+((IN%-1)*24|
0000f740  29 3a 21 54 41 44 25 3d  28 21 54 41 44 25 29 20  |):!TAD%=(!TAD%) |
0000f750  84 20 31 3a e1 0d 48 80  12 dd f2 6d 65 6e 75 3a  |. 1:..H....menu:|
0000f760  c8 99 36 2c 32 32 39 0d  48 8a 34 c8 99 20 22 57  |..6,229.H.4.. "W|
0000f770  69 6d 70 5f 47 65 74 50  6f 69 6e 74 65 72 49 6e  |imp_GetPointerIn|
0000f780  66 6f 22 2c 2c 42 4c 4b  25 2b 31 32 38 3a 4d 42  |fo",,BLK%+128:MB|
0000f790  55 25 3d 42 4c 4b 25 21  31 33 36 0d 48 94 30 c8  |U%=BLK%!136.H.0.|
0000f7a0  99 20 22 57 69 6d 70 5f  44 65 63 6f 64 65 4d 65  |. "Wimp_DecodeMe|
0000f7b0  6e 75 22 2c 2c a4 63 6d  61 64 28 4d 45 4e 4f 25  |nu",,.cmad(MENO%|
0000f7c0  29 2c 42 4c 4b 25 2c 53  45 4c 25 0d 48 9e 0a 44  |),BLK%,SEL%.H..D|
0000f7d0  53 49 25 3d a3 0d 48 a8  5c 53 45 4c 24 3d 24 53  |SI%=..H.\SEL$=$S|
0000f7e0  45 4c 25 3a 49 54 24 3d  22 22 3a 48 45 25 3d a9  |EL%:IT$="":HE%=.|
0000f7f0  28 53 45 4c 24 29 3a c8  95 20 c1 53 45 4c 24 2c  |(SEL$):.. .SEL$,|
0000f800  48 45 25 2c 31 29 3c 3e  22 20 22 20 80 20 48 45  |HE%,1)<>" " . HE|
0000f810  25 3e 31 3a 49 54 24 3d  c1 53 45 4c 24 2c 48 45  |%>1:IT$=.SEL$,HE|
0000f820  25 2c 31 29 2b 49 54 24  3a 48 45 25 2d 3d 31 3a  |%,1)+IT$:HE%-=1:|
0000f830  ce 0d 48 b2 77 e7 20 a7  49 54 24 2c 22 5e 22 29  |..H.w. .IT$,"^")|
0000f840  3c 3e 30 20 84 20 a7 49  54 24 2c 22 8b 22 29 3c  |<>0 . .IT$,".")<|
0000f850  3e 30 20 84 20 28 a9 28  49 54 24 29 3c 3d 33 20  |>0 . (.(IT$)<=3 |
0000f860  80 20 c0 49 54 24 2c 31  29 3d 22 66 22 29 20 8c  |. .IT$,1)="f") .|
0000f870  20 53 45 4c 24 3d c0 53  45 4c 24 2c 48 45 25 29  | SEL$=.SEL$,HE%)|
0000f880  3a f5 3a 53 45 4c 24 3d  c0 53 45 4c 24 2c a9 28  |:.:SEL$=.SEL$,.(|
0000f890  53 45 4c 24 29 2d 31 29  3a fd 20 c2 53 45 4c 24  |SEL$)-1):. .SEL$|
0000f8a0  2c 31 29 3c 3e 22 20 22  0d 48 bc 2c e7 20 c2 53  |,1)<>" ".H.,. .S|
0000f8b0  45 4c 24 2c 33 29 3d 22  2e 2e 2e 22 20 8c 20 53  |EL$,3)="..." . S|
0000f8c0  45 4c 24 3d c0 53 45 4c  24 2c a9 28 53 45 4c 24  |EL$=.SEL$,.(SEL$|
0000f8d0  29 2d 33 29 0d 48 c6 84  e7 20 a7 53 45 4c 24 2c  |)-3).H... .SEL$,|
0000f8e0  22 2e 22 29 3c 3e 30 20  80 20 c0 53 45 4c 24 2c  |".")<>0 . .SEL$,|
0000f8f0  35 29 3c 3e 22 54 65 78  74 2e 22 20 80 20 c0 53  |5)<>"Text." . .S|
0000f900  45 4c 24 2c 31 36 29 3c  3e 22 53 70 65 63 69 61  |EL$,16)<>"Specia|
0000f910  6c 2e 44 65 2d 74 69 6e  74 2e 22 20 80 20 c0 53  |l.De-tint." . .S|
0000f920  45 4c 24 2c 31 34 29 3c  3e 22 46 69 6c 65 2e 50  |EL$,14)<>"File.P|
0000f930  72 65 73 65 72 76 65 2e  22 20 80 20 c0 53 45 4c  |reserve." . .SEL|
0000f940  24 2c 31 33 29 3c 3e 22  46 69 6c 65 2e 52 65 73  |$,13)<>"File.Res|
0000f950  74 6f 72 65 2e 22 20 8c  0d 48 d0 49 42 24 3d 22  |tore." ..H.IB$="|
0000f960  22 3a c8 95 20 c2 53 45  4c 24 2c 31 29 3c 3e 22  |":.. .SEL$,1)<>"|
0000f970  2e 22 3a 42 24 3d c2 53  45 4c 24 2c 31 29 2b 42  |.":B$=.SEL$,1)+B|
0000f980  24 3a 53 45 4c 24 3d c0  53 45 4c 24 2c a9 28 53  |$:SEL$=.SEL$,.(S|
0000f990  45 4c 24 29 2d 31 29 3a  ce 3a 53 45 4c 24 3d 42  |EL$)-1):.:SEL$=B|
0000f9a0  24 0d 48 da 05 cd 0d 48  e4 0e 24 53 45 4c 25 3d  |$.H....H..$SEL%=|
0000f9b0  53 45 4c 24 0d 48 ee 56  e7 20 24 53 45 4c 25 3d  |SEL$.H.V. $SEL%=|
0000f9c0  22 51 75 69 74 22 20 8c  20 f2 6b 69 6c 6c 66 3a  |"Quit" . .killf:|
0000f9d0  46 55 53 45 25 3d 2d 31  3a f2 77 69 6e 64 6e 61  |FUSE%=-1:.windna|
0000f9e0  6d 65 28 32 2c 50 49 43  24 29 3a f2 66 6f 72 63  |me(2,PIC$):.forc|
0000f9f0  65 64 72 61 77 6d 61 69  6e 3a e7 20 a4 71 75 69  |edrawmain:. .qui|
0000fa00  74 79 6e 20 8c 20 f2 64  69 65 0d 48 f8 23 e7 20  |tyn . .die.H.#. |
0000fa10  24 53 45 4c 25 3d 22 50  61 69 6e 74 22 20 8c 20  |$SEL%="Paint" . |
0000fa20  f2 6e 66 28 22 22 2c 2d  31 2c 2d 31 29 0d 49 02  |.nf("",-1,-1).I.|
0000fa30  2c e7 20 24 53 45 4c 25  3d 22 53 68 6f 77 20 70  |,. $SEL%="Show p|
0000fa40  61 6c 65 74 74 65 22 20  8c 20 44 53 49 25 3d b9  |alette" . DSI%=.|
0000fa50  3a f2 6f 70 65 6e 70 61  6c 0d 49 16 39 e7 20 24  |:.openpal.I.9. $|
0000fa60  53 45 4c 25 3d 22 50 61  69 6e 74 62 72 75 73 68  |SEL%="Paintbrush|
0000fa70  22 20 8c 20 f2 6e 66 28  22 50 61 69 6e 74 62 72  |" . .nf("Paintbr|
0000fa80  75 73 68 22 2c 34 2c 35  29 3a f2 74 6b 68 28 31  |ush",4,5):.tkh(1|
0000fa90  30 29 0d 49 2a 49 e7 20  24 53 45 4c 25 3d 22 32  |0).I*I. $SEL%="2|
0000faa0  78 32 20 67 72 69 64 22  20 8c 20 44 53 49 25 3d  |x2 grid" . DSI%=|
0000fab0  b9 3a 47 52 49 57 49 25  3d 32 3a 47 52 49 48 45  |.:GRIWI%=2:GRIHE|
0000fac0  25 3d 32 3a f2 73 65 74  67 72 69 63 3a f2 66 6f  |%=2:.setgric:.fo|
0000fad0  72 63 65 64 72 61 77 6d  61 69 6e 0d 49 34 49 e7  |rcedrawmain.I4I.|
0000fae0  20 24 53 45 4c 25 3d 22  33 78 33 20 67 72 69 64  | $SEL%="3x3 grid|
0000faf0  22 20 8c 20 44 53 49 25  3d b9 3a 47 52 49 57 49  |" . DSI%=.:GRIWI|
0000fb00  25 3d 33 3a 47 52 49 48  45 25 3d 33 3a f2 73 65  |%=3:GRIHE%=3:.se|
0000fb10  74 67 72 69 63 3a f2 66  6f 72 63 65 64 72 61 77  |tgric:.forcedraw|
0000fb20  6d 61 69 6e 0d 49 3e 49  e7 20 24 53 45 4c 25 3d  |main.I>I. $SEL%=|
0000fb30  22 34 78 34 20 67 72 69  64 22 20 8c 20 44 53 49  |"4x4 grid" . DSI|
0000fb40  25 3d b9 3a 47 52 49 57  49 25 3d 34 3a 47 52 49  |%=.:GRIWI%=4:GRI|
0000fb50  48 45 25 3d 34 3a f2 73  65 74 67 72 69 63 3a f2  |HE%=4:.setgric:.|
0000fb60  66 6f 72 63 65 64 72 61  77 6d 61 69 6e 0d 49 48  |forcedrawmain.IH|
0000fb70  49 e7 20 24 53 45 4c 25  3d 22 36 78 36 20 67 72  |I. $SEL%="6x6 gr|
0000fb80  69 64 22 20 8c 20 44 53  49 25 3d b9 3a 47 52 49  |id" . DSI%=.:GRI|
0000fb90  57 49 25 3d 36 3a 47 52  49 48 45 25 3d 36 3a f2  |WI%=6:GRIHE%=6:.|
0000fba0  73 65 74 67 72 69 63 3a  f2 66 6f 72 63 65 64 72  |setgric:.forcedr|
0000fbb0  61 77 6d 61 69 6e 0d 49  52 49 e7 20 24 53 45 4c  |awmain.IRI. $SEL|
0000fbc0  25 3d 22 38 78 38 20 67  72 69 64 22 20 8c 20 44  |%="8x8 grid" . D|
0000fbd0  53 49 25 3d b9 3a 47 52  49 57 49 25 3d 38 3a 47  |SI%=.:GRIWI%=8:G|
0000fbe0  52 49 48 45 25 3d 38 3a  f2 73 65 74 67 72 69 63  |RIHE%=8:.setgric|
0000fbf0  3a f2 66 6f 72 63 65 64  72 61 77 6d 61 69 6e 0d  |:.forcedrawmain.|
0000fc00  49 5c 4d e7 20 24 53 45  4c 25 3d 22 31 36 78 31  |I\M. $SEL%="16x1|
0000fc10  36 20 67 72 69 64 22 20  8c 20 44 53 49 25 3d b9  |6 grid" . DSI%=.|
0000fc20  3a 47 52 49 57 49 25 3d  31 36 3a 47 52 49 48 45  |:GRIWI%=16:GRIHE|
0000fc30  25 3d 31 36 3a f2 73 65  74 67 72 69 63 3a f2 66  |%=16:.setgric:.f|
0000fc40  6f 72 63 65 64 72 61 77  6d 61 69 6e 0d 49 66 4d  |orcedrawmain.IfM|
0000fc50  e7 20 24 53 45 4c 25 3d  22 33 32 78 33 32 20 67  |. $SEL%="32x32 g|
0000fc60  72 69 64 22 20 8c 20 44  53 49 25 3d b9 3a 47 52  |rid" . DSI%=.:GR|
0000fc70  49 57 49 25 3d 33 32 3a  47 52 49 48 45 25 3d 33  |IWI%=32:GRIHE%=3|
0000fc80  32 3a f2 73 65 74 67 72  69 63 3a f2 66 6f 72 63  |2:.setgric:.forc|
0000fc90  65 64 72 61 77 6d 61 69  6e 0d 49 70 4d e7 20 24  |edrawmain.IpM. $|
0000fca0  53 45 4c 25 3d 22 33 32  78 31 36 20 67 72 69 64  |SEL%="32x16 grid|
0000fcb0  22 20 8c 20 44 53 49 25  3d b9 3a 47 52 49 57 49  |" . DSI%=.:GRIWI|
0000fcc0  25 3d 33 32 3a 47 52 49  48 45 25 3d 31 36 3a f2  |%=32:GRIHE%=16:.|
0000fcd0  73 65 74 67 72 69 63 3a  f2 66 6f 72 63 65 64 72  |setgric:.forcedr|
0000fce0  61 77 6d 61 69 6e 0d 49  7a 36 e7 20 24 53 45 4c  |awmain.Iz6. $SEL|
0000fcf0  25 3d 22 57 69 72 65 20  65 6c 6c 69 70 73 65 22  |%="Wire ellipse"|
0000fd00  20 8c 20 f2 6e 66 28 22  57 69 72 65 20 65 6c 6c  | . .nf("Wire ell|
0000fd10  69 70 73 65 22 2c 31 31  2c 2d 31 29 0d 49 8e 4b  |ipse",11,-1).I.K|
0000fd20  e7 20 24 53 45 4c 25 3d  22 57 69 72 65 20 70 61  |. $SEL%="Wire pa|
0000fd30  72 61 6c 6c 65 6c 6f 67  72 61 6d 22 20 8c 20 f2  |rallelogram" . .|
0000fd40  6e 66 28 22 57 69 72 65  20 70 61 72 61 6c 6c 65  |nf("Wire paralle|
0000fd50  6c 6f 67 72 61 6d 22 2c  31 33 2c 2d 31 29 3a f2  |logram",13,-1):.|
0000fd60  74 6b 68 28 31 37 29 0d  49 a2 36 e7 20 24 53 45  |tkh(17).I.6. $SE|
0000fd70  4c 25 3d 22 53 6f 6c 69  64 20 73 65 63 74 6f 72  |L%="Solid sector|
0000fd80  22 20 8c 20 f2 6e 66 28  22 53 6f 6c 69 64 20 73  |" . .nf("Solid s|
0000fd90  65 63 74 6f 72 22 2c 31  36 2c 2d 31 29 0d 49 b6  |ector",16,-1).I.|
0000fda0  48 e7 20 24 53 45 4c 25  3d 22 53 63 61 6c 65 20  |H. $SEL%="Scale |
0000fdb0  74 6f 20 66 69 74 22 20  8c 20 f2 6e 66 28 22 53  |to fit" . .nf("S|
0000fdc0  63 61 6c 65 20 74 6f 20  66 69 74 22 2c 32 33 2c  |cale to fit",23,|
0000fdd0  38 29 3a 46 55 43 4f 25  3d 30 3a f2 70 61 74 63  |8):FUCO%=0:.patc|
0000fde0  68 28 32 33 29 0d 49 ca  59 e7 20 24 53 45 4c 25  |h(23).I.Y. $SEL%|
0000fdf0  3d 22 50 69 78 65 6c 20  6d 61 70 70 69 6e 67 22  |="Pixel mapping"|
0000fe00  20 8c 20 f2 6e 66 28 22  50 69 78 65 6c 20 6d 61  | . .nf("Pixel ma|
0000fe10  70 70 69 6e 67 22 2c 32  35 2c 2d 31 29 3a 46 55  |pping",25,-1):FU|
0000fe20  43 4f 25 3d 31 3a 4f 58  25 3d 2d 31 3a 4f 59 25  |CO%=1:OX%=-1:OY%|
0000fe30  3d 2d 31 3a f2 70 61 74  63 68 28 32 35 29 0d 49  |=-1:.patch(25).I|
0000fe40  d4 28 e7 20 53 45 4c 24  3d 22 53 6f 6c 69 64 20  |.(. SEL$="Solid |
0000fe50  6c 69 6e 65 22 20 8c 20  44 53 49 25 3d b9 3a 4c  |line" . DSI%=.:L|
0000fe60  49 54 59 25 3d 35 0d 49  de 28 e7 20 53 45 4c 24  |ITY%=5.I.(. SEL$|
0000fe70  3d 22 52 65 73 74 61 72  74 65 64 22 20 8c 20 44  |="Restarted" . D|
0000fe80  53 49 25 3d b9 3a 4c 49  54 59 25 3d 32 31 0d 49  |SI%=.:LITY%=21.I|
0000fe90  e8 29 e7 20 53 45 4c 24  3d 22 43 6f 6e 74 69 6e  |.). SEL$="Contin|
0000fea0  75 6f 75 73 22 20 8c 20  44 53 49 25 3d b9 3a 4c  |uous" . DSI%=.:L|
0000feb0  49 54 59 25 3d 35 33 0d  49 f2 31 e7 20 53 45 4c  |ITY%=53.I.1. SEL|
0000fec0  24 3d 22 4f 76 65 72 77  72 69 74 65 22 20 8c 20  |$="Overwrite" . |
0000fed0  44 53 49 25 3d b9 3a 55  53 45 25 3d 28 55 53 45  |DSI%=.:USE%=(USE|
0000fee0  25 20 80 20 31 31 32 29  0d 49 fc 2c e7 20 53 45  |% . 112).I.,. SE|
0000fef0  4c 24 3d 22 4f 52 22 20  8c 20 44 53 49 25 3d b9  |L$="OR" . DSI%=.|
0000ff00  3a 55 53 45 25 3d 28 55  53 45 25 20 80 20 31 31  |:USE%=(USE% . 11|
0000ff10  32 29 2b 31 0d 4a 06 2d  e7 20 53 45 4c 24 3d 22  |2)+1.J.-. SEL$="|
0000ff20  41 4e 44 22 20 8c 20 44  53 49 25 3d b9 3a 55 53  |AND" . DSI%=.:US|
0000ff30  45 25 3d 28 55 53 45 25  20 80 20 31 31 32 29 2b  |E%=(USE% . 112)+|
0000ff40  32 0d 4a 10 2d e7 20 53  45 4c 24 3d 22 45 4f 52  |2.J.-. SEL$="EOR|
0000ff50  22 20 8c 20 44 53 49 25  3d b9 3a 55 53 45 25 3d  |" . DSI%=.:USE%=|
0000ff60  28 55 53 45 25 20 80 20  31 31 32 29 2b 33 0d 4a  |(USE% . 112)+3.J|
0000ff70  1a 30 e7 20 53 45 4c 24  3d 22 49 6e 76 65 72 74  |.0. SEL$="Invert|
0000ff80  22 20 8c 20 44 53 49 25  3d b9 3a 55 53 45 25 3d  |" . DSI%=.:USE%=|
0000ff90  28 55 53 45 25 20 80 20  31 31 32 29 2b 34 0d 4a  |(USE% . 112)+4.J|
0000ffa0  24 2e e7 20 53 45 4c 24  3d 22 4e 41 4e 44 22 20  |$.. SEL$="NAND" |
0000ffb0  8c 20 44 53 49 25 3d b9  3a 55 53 45 25 3d 28 55  |. DSI%=.:USE%=(U|
0000ffc0  53 45 25 20 80 20 31 31  32 29 2b 36 0d 4a 2e 2d  |SE% . 112)+6.J.-|
0000ffd0  e7 20 53 45 4c 24 3d 22  4e 4f 52 22 20 8c 20 44  |. SEL$="NOR" . D|
0000ffe0  53 49 25 3d b9 3a 55 53  45 25 3d 28 55 53 45 25  |SI%=.:USE%=(USE%|
0000fff0  20 80 20 31 31 32 29 2b  37 0d 4a 38 6c e7 20 53  | . 112)+7.J8l. S|
00010000  45 4c 24 3d 22 45 43 46  20 31 22 20 80 20 28 55  |EL$="ECF 1" . (U|
00010010  53 45 25 20 80 20 31 31  32 29 3d 31 36 20 8c 20  |SE% . 112)=16 . |
00010020  44 53 49 25 3d b9 3a 55  53 45 25 3d 28 55 53 45  |DSI%=.:USE%=(USE|
00010030  25 20 80 20 31 35 29 20  8b 20 e7 20 53 45 4c 24  |% . 15) . . SEL$|
00010040  3d 22 45 43 46 20 31 22  20 8c 20 44 53 49 25 3d  |="ECF 1" . DSI%=|
00010050  b9 3a 55 53 45 25 3d 28  55 53 45 25 20 80 20 31  |.:USE%=(USE% . 1|
00010060  35 29 2b 31 36 0d 4a 42  6c e7 20 53 45 4c 24 3d  |5)+16.JBl. SEL$=|
00010070  22 45 43 46 20 32 22 20  80 20 28 55 53 45 25 20  |"ECF 2" . (USE% |
00010080  80 20 31 31 32 29 3d 33  32 20 8c 20 44 53 49 25  |. 112)=32 . DSI%|
00010090  3d b9 3a 55 53 45 25 3d  28 55 53 45 25 20 80 20  |=.:USE%=(USE% . |
000100a0  31 35 29 20 8b 20 e7 20  53 45 4c 24 3d 22 45 43  |15) . . SEL$="EC|
000100b0  46 20 32 22 20 8c 20 44  53 49 25 3d b9 3a 55 53  |F 2" . DSI%=.:US|
000100c0  45 25 3d 28 55 53 45 25  20 80 20 31 35 29 2b 33  |E%=(USE% . 15)+3|
000100d0  32 0d 4a 4c 6c e7 20 53  45 4c 24 3d 22 45 43 46  |2.JLl. SEL$="ECF|
000100e0  20 33 22 20 80 20 28 55  53 45 25 20 80 20 31 31  | 3" . (USE% . 11|
000100f0  32 29 3d 34 38 20 8c 20  44 53 49 25 3d b9 3a 55  |2)=48 . DSI%=.:U|
00010100  53 45 25 3d 28 55 53 45  25 20 80 20 31 35 29 20  |SE%=(USE% . 15) |
00010110  8b 20 e7 20 53 45 4c 24  3d 22 45 43 46 20 33 22  |. . SEL$="ECF 3"|
00010120  20 8c 20 44 53 49 25 3d  b9 3a 55 53 45 25 3d 28  | . DSI%=.:USE%=(|
00010130  55 53 45 25 20 80 20 31  35 29 2b 34 38 0d 4a 56  |USE% . 15)+48.JV|
00010140  6c e7 20 53 45 4c 24 3d  22 45 43 46 20 34 22 20  |l. SEL$="ECF 4" |
00010150  80 20 28 55 53 45 25 20  80 20 31 31 32 29 3d 36  |. (USE% . 112)=6|
00010160  34 20 8c 20 44 53 49 25  3d b9 3a 55 53 45 25 3d  |4 . DSI%=.:USE%=|
00010170  28 55 53 45 25 20 80 20  31 35 29 20 8b 20 e7 20  |(USE% . 15) . . |
00010180  53 45 4c 24 3d 22 45 43  46 20 34 22 20 8c 20 44  |SEL$="ECF 4" . D|
00010190  53 49 25 3d b9 3a 55 53  45 25 3d 28 55 53 45 25  |SI%=.:USE%=(USE%|
000101a0  20 80 20 31 35 29 2b 36  34 0d 4a 60 74 e7 20 53  | . 15)+64.J`t. S|
000101b0  45 4c 24 3d 22 47 69 61  6e 74 20 45 43 46 22 20  |EL$="Giant ECF" |
000101c0  80 20 28 55 53 45 25 20  80 20 31 31 32 29 3d 38  |. (USE% . 112)=8|
000101d0  30 20 8c 20 44 53 49 25  3d b9 3a 55 53 45 25 3d  |0 . DSI%=.:USE%=|
000101e0  28 55 53 45 25 20 80 20  31 35 29 20 8b 20 e7 20  |(USE% . 15) . . |
000101f0  53 45 4c 24 3d 22 47 69  61 6e 74 20 45 43 46 22  |SEL$="Giant ECF"|
00010200  20 8c 20 44 53 49 25 3d  b9 3a 55 53 45 25 3d 28  | . DSI%=.:USE%=(|
00010210  55 53 45 25 20 80 20 31  35 29 2b 38 30 0d 4a 6a  |USE% . 15)+80.Jj|
00010220  33 e7 20 53 45 4c 24 3d  22 53 6d 75 64 67 65 20  |3. SEL$="Smudge |
00010230  61 72 65 61 22 20 8c 20  f2 6e 66 28 22 53 6d 75  |area" . .nf("Smu|
00010240  64 67 65 20 61 72 65 61  22 2c 32 37 2c 2d 31 29  |dge area",27,-1)|
00010250  0d 4a 74 36 e7 20 24 53  45 4c 25 3d 22 56 65 72  |.Jt6. $SEL%="Ver|
00010260  79 20 66 61 73 74 22 20  8c 20 4d 4d 59 25 3d 34  |y fast" . MMY%=4|
00010270  3a 4d 4d 58 25 3d 34 3a  c8 97 20 88 20 4d 4d 58  |:MMX%=4:.. . MMX|
00010280  25 2c 4d 4d 59 25 0d 4a  7e 31 e7 20 24 53 45 4c  |%,MMY%.J~1. $SEL|
00010290  25 3d 22 46 61 73 74 22  20 8c 20 4d 4d 59 25 3d  |%="Fast" . MMY%=|
000102a0  33 3a 4d 4d 58 25 3d 33  3a c8 97 20 88 20 4d 4d  |3:MMX%=3:.. . MM|
000102b0  58 25 2c 4d 4d 59 25 0d  4a 88 33 e7 20 24 53 45  |X%,MMY%.J.3. $SE|
000102c0  4c 25 3d 22 4d 65 64 69  75 6d 22 20 8c 20 4d 4d  |L%="Medium" . MM|
000102d0  59 25 3d 32 3a 4d 4d 58  25 3d 32 3a c8 97 20 88  |Y%=2:MMX%=2:.. .|
000102e0  20 4d 4d 58 25 2c 4d 4d  59 25 0d 4a 92 31 e7 20  | MMX%,MMY%.J.1. |
000102f0  24 53 45 4c 25 3d 22 53  6c 6f 77 22 20 8c 20 4d  |$SEL%="Slow" . M|
00010300  4d 59 25 3d 31 3a 4d 4d  58 25 3d 31 3a c8 97 20  |MY%=1:MMX%=1:.. |
00010310  88 20 4d 4d 58 25 2c 4d  4d 59 25 0d 4a 9c 3f e7  |. MMX%,MMY%.J.?.|
00010320  20 24 53 45 4c 25 3d 22  52 47 42 20 63 6f 6e 74  | $SEL%="RGB cont|
00010330  72 6f 6c 22 20 8c 20 f2  6e 66 28 22 52 47 42 20  |rol" . .nf("RGB |
00010340  63 6f 6e 74 72 6f 6c 22  2c 33 38 2c 32 31 29 3a  |control",38,21):|
00010350  f2 70 61 74 63 68 28 33  38 29 0d 4a a6 33 e7 20  |.patch(38).J.3. |
00010360  24 53 45 4c 25 3d 22 57  69 70 65 20 70 69 63 74  |$SEL%="Wipe pict|
00010370  75 72 65 22 20 8c 20 f2  6e 66 28 22 22 2c 2d 31  |ure" . .nf("",-1|
00010380  2c 2d 31 29 3a f2 77 69  70 65 70 69 63 0d 4a b0  |,-1):.wipepic.J.|
00010390  30 e7 20 24 53 45 4c 25  3d 22 43 75 72 73 6f 72  |0. $SEL%="Cursor|
000103a0  20 6b 65 79 73 22 20 8c  20 4b 55 4b 45 25 3d ac  | keys" . KUKE%=.|
000103b0  20 4b 55 4b 45 25 3a 44  53 49 25 3d b9 0d 4a ba  | KUKE%:DSI%=..J.|
000103c0  49 e7 20 24 53 45 4c 25  3d 22 43 6f 6e 74 72 61  |I. $SEL%="Contra|
000103d0  73 74 20 63 6f 6e 74 72  6f 6c 22 20 8c 20 f2 6e  |st control" . .n|
000103e0  66 28 22 43 6f 6e 74 72  61 73 74 20 63 6f 6e 74  |f("Contrast cont|
000103f0  72 6f 6c 22 2c 34 33 2c  32 36 29 3a f2 70 61 74  |rol",43,26):.pat|
00010400  63 68 28 34 33 29 0d 4a  ce 29 e7 20 53 45 4c 24  |ch(43).J.). SEL$|
00010410  3d 22 46 69 6c 74 65 72  22 20 8c 20 f2 6e 66 28  |="Filter" . .nf(|
00010420  22 46 69 6c 74 65 72 22  2c 34 37 2c 32 39 29 0d  |"Filter",47,29).|
00010430  4a d8 60 e7 20 53 45 4c  24 3d 22 57 6f 62 62 6c  |J.`. SEL$="Wobbl|
00010440  65 22 20 8c 20 c8 99 26  32 45 2c 32 35 36 2b 39  |e" . ..&2E,256+9|
00010450  2c 53 48 4f 57 25 3a c8  99 26 32 45 2c 32 36 36  |,SHOW%:..&2E,266|
00010460  2c 53 48 4f 57 25 2c 22  3c 49 6d 61 67 65 72 79  |,SHOW%,"<Imagery|
00010470  24 44 69 72 3e 2e 53 68  6f 77 22 3a f2 6e 66 28  |$Dir>.Show":.nf(|
00010480  22 57 6f 62 62 6c 65 22  2c 34 38 2c 33 30 29 0d  |"Wobble",48,30).|
00010490  4a e2 3d e7 20 24 53 45  4c 25 3d 22 42 72 69 6e  |J.=. $SEL%="Brin|
000104a0  67 20 74 6f 20 74 6f 70  22 20 80 20 4c 41 4f 50  |g to top" . LAOP|
000104b0  57 49 25 3c 3e 2d 31 20  8c 20 f2 6f 70 65 6e 77  |WI%<>-1 . .openw|
000104c0  69 6e 64 28 4c 41 4f 50  57 49 25 29 0d 4a f6 45  |ind(LAOPWI%).J.E|
000104d0  e7 20 53 45 4c 24 3d 22  46 75 6c 6c 20 6d 65 6e  |. SEL$="Full men|
000104e0  75 73 22 20 8c 20 4b 53  43 25 3d ac 20 4b 53 43  |us" . KSC%=. KSC|
000104f0  25 3a f2 62 75 69 6c 64  6d 6d 32 3a f2 62 75 69  |%:.buildmm2:.bui|
00010500  6c 64 69 63 6f 6e 6d 65  6e 75 3a 44 53 49 25 3d  |ldiconmenu:DSI%=|
00010510  b9 0d 4b 00 1f e7 20 44  53 49 25 20 80 20 4d 42  |..K... DSI% . MB|
00010520  55 25 3d 31 20 8c 20 f2  77 69 6e 64 6d 65 6e 75  |U%=1 . .windmenu|
00010530  0d 4b 0a 05 e1 0d 4b 1e  42 dd f2 75 64 3a e7 20  |.K....K.B..ud:. |
00010540  55 4e 44 4f 25 3c 3e 2d  31 20 8c 20 21 56 41 52  |UNDO%<>-1 . !VAR|
00010550  53 3d 50 49 43 25 3a 56  41 52 53 21 34 3d 55 4e  |S=PIC%:VARS!4=UN|
00010560  44 4f 25 3a 41 25 3d 56  41 52 53 3a d6 20 62 61  |DO%:A%=VARS:. ba|
00010570  63 6b 75 70 70 69 63 0d  4b 28 05 e1 0d 4b 3c 12  |ckuppic.K(...K<.|
00010580  dd f2 6e 66 28 46 24 2c  46 25 2c 57 25 29 0d 4b  |..nf(F$,F%,W%).K|
00010590  46 4b f2 6b 69 6c 6c 66  3a e7 20 46 24 3c 3e 22  |FK.killf:. F$<>"|
000105a0  22 20 8c 20 f2 75 64 3a  f2 77 69 6e 64 6e 61 6d  |" . .ud:.windnam|
000105b0  65 28 32 2c 50 49 43 24  2b 22 20 5b 22 2b 46 24  |e(2,PIC$+" ["+F$|
000105c0  2b 22 5d 22 29 20 8b 20  f2 77 69 6e 64 6e 61 6d  |+"]") . .windnam|
000105d0  65 28 32 2c 50 49 43 24  29 0d 4b 50 3c 46 55 53  |e(2,PIC$).KP<FUS|
000105e0  45 25 3d 46 25 3a 46 55  53 54 25 3d 30 3a 44 53  |E%=F%:FUST%=0:DS|
000105f0  49 25 3d b9 3a f2 73 70  69 6e 69 74 3a e7 20 57  |I%=.:.spinit:. W|
00010600  25 3c 3e 2d 31 20 8c 20  f2 6f 70 65 6e 77 69 6e  |%<>-1 . .openwin|
00010610  64 28 57 25 29 0d 4b 5a  05 e1 0d 4b 6e 0d dd f2  |d(W%).KZ...Kn...|
00010620  77 69 70 65 70 69 63 0d  4b 78 43 21 49 4f 25 3d  |wipepic.KxC!IO%=|
00010630  35 3a 24 28 49 4f 25 2b  34 29 3d 22 41 72 65 20  |5:$(IO%+4)="Are |
00010640  79 6f 75 20 73 75 72 65  20 79 6f 75 20 77 61 6e  |you sure you wan|
00010650  74 20 74 6f 20 77 69 70  65 20 74 68 65 20 70 69  |t to wipe the pi|
00010660  63 74 75 72 65 3f 22 2b  bd 30 0d 4b 82 38 c8 99  |cture?"+.0.K.8..|
00010670  20 22 57 69 6d 70 5f 52  65 70 6f 72 74 45 72 72  | "Wimp_ReportErr|
00010680  6f 72 22 2c 49 4f 25 2c  25 31 31 30 31 31 2c 22  |or",IO%,%11011,"|
00010690  21 49 6d 61 67 65 72 79  22 2b bd 30 20 b8 20 2c  |!Imagery"+.0 . ,|
000106a0  52 25 0d 4b 8c 13 e7 20  52 25 3d 30 20 8c 20 e5  |R%.K... R%=0 . .|
000106b0  20 8d 70 42 4b 0d 4b 96  0e e7 20 52 25 3d 32 20  | .pBK.K... R%=2 |
000106c0  8c 20 e1 0d 4b a0 33 f2  69 6e 70 69 63 3a ef 32  |. ..K.3.inpic:.2|
000106d0  36 3a e6 30 2c 31 32 38  20 c8 9c 20 30 3a da 3a  |6:.0,128 .. 0:.:|
000106e0  f2 6f 75 74 70 69 63 3a  f2 66 6f 72 63 65 64 72  |.outpic:.forcedr|
000106f0  61 77 6d 61 69 6e 0d 4b  aa 05 e1 0d 4b be 0c dd  |awmain.K....K...|
00010700  a4 71 75 69 74 79 6e 0d  4b c8 37 21 49 4f 25 3d  |.quityn.K.7!IO%=|
00010710  35 3a 24 28 49 4f 25 2b  34 29 3d 22 41 72 65 20  |5:$(IO%+4)="Are |
00010720  79 6f 75 20 73 75 72 65  20 79 6f 75 20 77 61 6e  |you sure you wan|
00010730  74 20 74 6f 20 71 75 69  74 3f 22 2b bd 30 0d 4b  |t to quit?"+.0.K|
00010740  d2 38 c8 99 20 22 57 69  6d 70 5f 52 65 70 6f 72  |.8.. "Wimp_Repor|
00010750  74 45 72 72 6f 72 22 2c  49 4f 25 2c 25 31 31 30  |tError",IO%,%110|
00010760  31 31 2c 22 21 49 6d 61  67 65 72 79 22 2b bd 30  |11,"!Imagery"+.0|
00010770  20 b8 20 2c 52 25 0d 4b  dc 13 e7 20 52 25 3d 30  | . ,R%.K... R%=0|
00010780  20 8c 20 e5 20 8d 60 52  4b 0d 4b e6 0b 3d 28 52  | . . .`RK.K..=(R|
00010790  25 3d 31 29 0d 4b fa 0c  dd f2 69 6d 70 6f 72 74  |%=1).K....import|
000107a0  0d 4c 04 56 41 24 3d a4  67 65 74 6e 61 6d 65 3a  |.L.VA$=.getname:|
000107b0  42 4c 4b 25 21 31 32 3d  42 4c 4b 25 21 38 3a 42  |BLK%!12=BLK%!8:B|
000107c0  4c 4b 25 21 31 36 3d 34  3a 21 42 4c 4b 25 3d 36  |LK%!16=4:!BLK%=6|
000107d0  34 3a c8 99 20 22 57 69  6d 70 5f 53 65 6e 64 4d  |4:.. "Wimp_SendM|
000107e0  65 73 73 61 67 65 22 2c  31 37 2c 42 4c 4b 25 2c  |essage",17,BLK%,|
000107f0  42 4c 4b 25 21 34 0d 4c  0e 30 f2 6b 69 6c 6c 66  |BLK%!4.L.0.killf|
00010800  3a 46 55 53 45 25 3d 33  34 3a 46 55 53 54 25 3d  |:FUSE%=34:FUST%=|
00010810  30 3a f2 6f 70 65 6e 77  69 6e 64 28 38 29 3a f2  |0:.openwind(8):.|
00010820  73 70 69 6e 69 74 0d 4c  18 1b 46 25 3d ad 28 41  |spinit.L..F%=.(A|
00010830  24 29 3a 49 4d 53 25 3d  a2 23 46 25 3a d9 23 46  |$):IMS%=.#F%:.#F|
00010840  25 0d 4c 22 43 f2 73 70  62 75 66 28 49 4d 53 25  |%.L"C.spbuf(IMS%|
00010850  2b 36 34 29 3a e7 20 51  25 20 8c 20 46 55 53 45  |+64):. Q% . FUSE|
00010860  25 3d 2d 31 3a f2 63 6c  6f 73 65 77 69 6e 64 28  |%=-1:.closewind(|
00010870  38 29 3a f2 73 70 69 6e  69 74 3a f2 73 70 62 75  |8):.spinit:.spbu|
00010880  66 65 72 72 0d 4c 2c 17  c8 99 26 32 45 2c 32 36  |ferr.L,...&2E,26|
00010890  36 2c 53 50 42 55 46 25  2c 41 24 0d 4c 36 25 c8  |6,SPBUF%,A$.L6%.|
000108a0  99 26 32 45 2c 32 36 39  2c 53 50 42 55 46 25 2c  |.&2E,269,SPBUF%,|
000108b0  49 4f 25 2c 31 36 2c 31  20 b8 20 2c 2c 2c 4c 25  |IO%,16,1 . ,,,L%|
000108c0  0d 4c 40 2e 49 4d 50 24  3d 22 22 3a e3 4b 25 3d  |.L@.IMP$="":.K%=|
000108d0  30 20 b8 20 4c 25 2d 31  3a 49 4d 50 24 3d 49 4d  |0 . L%-1:IMP$=IM|
000108e0  50 24 2b bd 28 49 4f 25  3f 4b 25 29 3a ed 0d 4c  |P$+.(IO%?K%):..L|
000108f0  4a 2e c8 99 26 32 45 2c  32 39 36 2c 53 50 42 55  |J...&2E,296,SPBU|
00010900  46 25 2c 49 4d 50 24 20  b8 20 2c 2c 2c 49 4d 57  |F%,IMP$ . ,,,IMW|
00010910  25 2c 49 4d 48 25 2c 2c  49 4d 4d 25 0d 4c 54 23  |%,IMH%,,IMM%.LT#|
00010920  e7 20 47 52 46 58 25 20  8c 20 c8 99 26 32 45 2c  |. GRFX% . ..&2E,|
00010930  32 38 39 2c 53 50 42 55  46 25 2c 49 4d 50 24 0d  |289,SPBUF%,IMP$.|
00010940  4c 5e 23 e7 20 47 52 46  59 25 20 8c 20 c8 99 26  |L^#. GRFY% . ..&|
00010950  32 45 2c 33 30 33 2c 53  50 42 55 46 25 2c 49 4d  |2E,303,SPBUF%,IM|
00010960  50 24 0d 4c 68 17 c8 99  26 33 35 2c 49 4d 4d 25  |P$.Lh...&35,IMM%|
00010970  2c 35 20 b8 20 2c 2c 45  25 0d 4c 72 48 50 48 45  |,5 . ,,E%.LrHPHE|
00010980  25 3d 32 5e 45 25 3a e7  20 45 25 3c 32 20 8c 20  |%=2^E%:. E%<2 . |
00010990  49 4f 25 21 34 3d 31 3a  49 4f 25 21 31 32 3d 32  |IO%!4=1:IO%!12=2|
000109a0  5e 28 32 2d 45 25 29 20  8b 20 49 4f 25 21 34 3d  |^(2-E%) . IO%!4=|
000109b0  32 5e 28 45 25 2d 32 29  3a 49 4f 25 21 31 32 3d  |2^(E%-2):IO%!12=|
000109c0  31 0d 4c 7c 17 c8 99 26  33 35 2c 49 4d 4d 25 2c  |1.L|...&35,IMM%,|
000109d0  34 20 b8 20 2c 2c 45 25  0d 4c 86 0d 50 57 49 25  |4 . ,,E%.L..PWI%|
000109e0  3d 32 5e 45 25 0d 4c 90  21 53 58 25 3d 32 5e 28  |=2^E%.L.!SX%=2^(|
000109f0  45 25 2d 31 29 3a 21 49  4f 25 3d 53 58 25 3a 49  |E%-1):!IO%=SX%:I|
00010a00  4f 25 21 38 3d 31 0d 4c  9a 27 4c 25 3d 28 53 50  |O%!8=1.L.'L%=(SP|
00010a10  42 55 46 25 2b 28 53 50  42 55 46 25 21 38 29 29  |BUF%+(SPBUF%!8))|
00010a20  3a e7 20 4c 25 21 33 32  3d 34 34 20 8c 0d 4c a4  |:. L%!32=44 ..L.|
00010a30  0b 49 4d 50 41 25 3d 30  0d 4c ae 05 cc 0d 4c b8  |.IMPA%=0.L....L.|
00010a40  43 49 4d 50 41 25 3d 4c  25 2b 34 34 3a 4b 25 3d  |CIMPA%=L%+44:K%=|
00010a50  34 38 3a 49 25 3d 35 32  3a c8 95 20 49 25 3c 28  |48:I%=52:.. I%<(|
00010a60  4c 25 21 33 32 29 3a 4c  25 21 4b 25 3d 4c 25 21  |L%!32):L%!K%=L%!|
00010a70  49 25 3a 49 25 2b 3d 38  3a 4b 25 2b 3d 34 3a ce  |I%:I%+=8:K%+=4:.|
00010a80  0d 4c c2 05 cd 0d 4c cc  56 e7 20 49 4d 4d 25 3c  |.L....L.V. IMM%<|
00010a90  3e 31 35 20 84 20 49 4d  50 41 25 3c 3e 30 20 8c  |>15 . IMPA%<>0 .|
00010aa0  20 c8 99 26 34 30 37 34  30 2c 49 4d 4d 25 2c 49  | ..&40740,IMM%,I|
00010ab0  4d 50 41 25 2c 31 35 2c  30 2c 50 49 58 54 41 42  |MPA%,15,0,PIXTAB|
00010ac0  32 25 3a 49 4d 50 54 25  3d 50 49 58 54 41 42 32  |2%:IMPT%=PIXTAB2|
00010ad0  25 20 8b 20 49 4d 50 54  25 3d 30 0d 4c d6 30 f2  |% . IMPT%=0.L.0.|
00010ae0  75 64 3a f2 77 69 6e 64  6e 61 6d 65 28 32 2c 50  |ud:.windname(2,P|
00010af0  49 43 24 2b 22 20 5b 49  6d 70 6f 72 74 20 27 22  |IC$+" [Import '"|
00010b00  2b 49 4d 50 24 2b 22 27  5d 22 29 0d 4c e0 21 49  |+IMP$+"']").L.!I|
00010b10  4d 48 25 3d 49 4d 48 25  2a 50 48 45 25 3a 49 4d  |MH%=IMH%*PHE%:IM|
00010b20  57 25 3d 49 4d 57 25 2a  50 57 49 25 0d 4c ea 0d  |W%=IMW%*PWI%.L..|
00010b30  47 52 4e 24 3d 49 4d 50  24 0d 4c f4 05 e1 0d 4d  |GRN$=IMP$.L....M|
00010b40  08 0c dd f2 69 6d 70 63  65 6e 0d 4d 12 45 f2 69  |....impcen.M.E.i|
00010b50  6e 70 69 63 3a f2 70 69  6d 70 6f 72 74 28 36 34  |npic:.pimport(64|
00010b60  30 2c 35 31 32 2c 30 29  3a f2 6f 75 74 70 69 63  |0,512,0):.outpic|
00010b70  3a f2 71 75 69 63 6b 64  72 61 77 6d 61 69 6e 3a  |:.quickdrawmain:|
00010b80  f2 6b 69 6c 6c 66 3a 46  55 53 45 25 3d 2d 31 0d  |.killf:FUSE%=-1.|
00010b90  4d 1c 05 e1 0d 4d 30 0e  dd f2 69 6d 70 73 63 61  |M....M0...impsca|
00010ba0  6c 65 0d 4d 3a 5b 4f 58  4d 25 3d 47 52 58 4d 25  |le.M:[OXM%=GRXM%|
00010bb0  3a 4f 59 4d 25 3d 47 52  59 4d 25 3a 4f 58 44 25  |:OYM%=GRYM%:OXD%|
00010bc0  3d 47 52 58 44 25 3a 4f  59 44 25 3d 47 52 59 44  |=GRXD%:OYD%=GRYD|
00010bd0  25 3a 47 52 58 4d 25 3d  31 32 38 30 3a 47 52 59  |%:GRXM%=1280:GRY|
00010be0  4d 25 3d 31 30 32 34 3a  47 52 58 44 25 3d 49 4d  |M%=1024:GRXD%=IM|
00010bf0  57 25 3a 47 52 59 44 25  3d 49 4d 48 25 0d 4d 44  |W%:GRYD%=IMH%.MD|
00010c00  71 f2 69 6e 70 69 63 3a  f2 70 69 6d 70 6f 72 74  |q.inpic:.pimport|
00010c10  28 36 34 30 2c 35 31 32  2c 30 29 3a f2 6f 75 74  |(640,512,0):.out|
00010c20  70 69 63 3a f2 66 6f 72  63 65 64 72 61 77 6d 61  |pic:.forcedrawma|
00010c30  69 6e 3a f2 6b 69 6c 6c  66 3a 46 55 53 45 25 3d  |in:.killf:FUSE%=|
00010c40  2d 31 3a 47 52 58 44 25  3d 4f 58 44 25 3a 47 52  |-1:GRXD%=OXD%:GR|
00010c50  59 44 25 3d 4f 59 44 25  3a 47 52 58 4d 25 3d 4f  |YD%=OYD%:GRXM%=O|
00010c60  58 4d 25 3a 47 52 59 4d  25 3d 4f 59 4d 25 0d 4d  |XM%:GRYM%=OYM%.M|
00010c70  4e 05 e1 0d 4d 62 33 dd  f2 69 6d 70 74 69 6c 65  |N...Mb3..imptile|
00010c80  3a f2 70 69 6d 70 6f 72  74 28 58 25 2c 59 25 2c  |:.pimport(X%,Y%,|
00010c90  30 29 3a e7 20 ac 20 a4  68 69 67 68 28 33 31 2c  |0):. . .high(31,|
00010ca0  35 29 20 8c 20 e1 0d 4d  6c 2b c8 99 20 22 48 6f  |5) . ..Ml+.. "Ho|
00010cb0  75 72 67 6c 61 73 73 5f  4f 6e 22 3a 41 57 3d 58  |urglass_On":AW=X|
00010cc0  52 2a 49 4d 57 25 3a 41  48 3d 59 52 2a 49 4d 48  |R*IMW%:AH=YR*IMH|
00010cd0  25 0d 4d 76 b3 4b 25 3d  30 3a f5 3a 4c 25 3d 30  |%.Mv.K%=0:.:L%=0|
00010ce0  3a f5 3a 4f 58 3d 4b 25  2a 41 57 3a 4f 59 3d 4c  |:.:OX=K%*AW:OY=L|
00010cf0  25 2a 41 48 3a f2 70 69  6d 70 6f 72 74 28 58 25  |%*AH:.pimport(X%|
00010d00  2b 4f 58 2c 59 25 2b 4f  59 2c 30 29 3a f2 70 69  |+OX,Y%+OY,0):.pi|
00010d10  6d 70 6f 72 74 28 58 25  2b 4f 58 2c 59 25 2d 4f  |mport(X%+OX,Y%-O|
00010d20  59 2c 30 29 3a f2 70 69  6d 70 6f 72 74 28 58 25  |Y,0):.pimport(X%|
00010d30  2d 4f 58 2c 59 25 2b 4f  59 2c 30 29 3a f2 70 69  |-OX,Y%+OY,0):.pi|
00010d40  6d 70 6f 72 74 28 58 25  2d 4f 58 2c 59 25 2d 4f  |mport(X%-OX,Y%-O|
00010d50  59 2c 30 29 3a 4c 25 2b  3d 31 3a fd 20 28 59 25  |Y,0):L%+=1:. (Y%|
00010d60  2b 28 4c 25 2a 41 48 29  29 3e 31 30 32 33 2b 41  |+(L%*AH))>1023+A|
00010d70  48 20 80 20 28 59 25 2d  28 4c 25 2a 41 48 29 29  |H . (Y%-(L%*AH))|
00010d80  3c 2d 41 48 0d 4d 80 33  4b 25 2b 3d 31 3a fd 20  |<-AH.M.3K%+=1:. |
00010d90  28 58 25 2b 28 4b 25 2a  41 57 29 29 3e 31 32 37  |(X%+(K%*AW))>127|
00010da0  39 2b 41 57 20 80 20 28  58 25 2d 28 4b 25 2a 41  |9+AW . (X%-(K%*A|
00010db0  57 29 29 3c 2d 41 57 0d  4d 8a 18 c8 99 20 22 48  |W))<-AW.M.... "H|
00010dc0  6f 75 72 67 6c 61 73 73  5f 4f 66 66 22 3a e1 0d  |ourglass_Off":..|
00010dd0  4d 9e 13 dd f2 66 69 6c  6c 63 6f 6e 74 63 6c 69  |M....fillcontcli|
00010de0  63 6b 0d 4d a8 14 e7 20  4d 4f 55 49 43 25 3c 3e  |ck.M... MOUIC%<>|
00010df0  32 34 20 8c 20 e1 0d 4d  b2 0c 47 52 46 4e 25 3d  |24 . ..M..GRFN%=|
00010e00  2d 31 0d 4d bc 1b e7 20  a4 68 69 67 68 28 31 37  |-1.M... .high(17|
00010e10  2c 33 29 20 8c 20 47 52  46 4e 25 3d 30 0d 4d c6  |,3) . GRFN%=0.M.|
00010e20  1b e7 20 a4 68 69 67 68  28 31 37 2c 39 29 20 8c  |.. .high(17,9) .|
00010e30  20 47 52 46 4e 25 3d 31  0d 4d d0 1c e7 20 a4 68  | GRFN%=1.M... .h|
00010e40  69 67 68 28 31 37 2c 31  32 29 20 8c 20 47 52 46  |igh(17,12) . GRF|
00010e50  4e 25 3d 32 0d 4d da 1c  e7 20 a4 68 69 67 68 28  |N%=2.M... .high(|
00010e60  31 37 2c 31 35 29 20 8c  20 47 52 46 4e 25 3d 33  |17,15) . GRFN%=3|
00010e70  0d 4d e4 1c e7 20 a4 68  69 67 68 28 31 37 2c 31  |.M... .high(17,1|
00010e80  38 29 20 8c 20 47 52 46  4e 25 3d 34 0d 4d ee 46  |8) . GRFN%=4.M.F|
00010e90  e7 20 47 52 46 4e 25 3d  2d 31 20 8c 20 f2 6d 65  |. GRFN%=-1 . .me|
00010ea0  73 73 61 67 65 28 30 2c  22 59 6f 75 20 6d 75 73  |ssage(0,"You mus|
00010eb0  74 20 73 65 6c 65 63 74  20 61 20 66 69 6c 6c 20  |t select a fill |
00010ec0  73 65 71 75 65 6e 63 65  20 74 6f 20 75 73 65 2e  |sequence to use.|
00010ed0  22 29 0d 4d f8 10 e7 20  46 55 53 45 25 3d 33 31  |").M... FUSE%=31|
00010ee0  20 8c 0d 4e 02 16 e7 20  47 52 54 59 25 3d 31 20  | ..N... GRTY%=1 |
00010ef0  8c 20 f2 6b 69 6c 6c 66  0d 4e 0c 05 cd 0d 4e 16  |. .killf.N....N.|
00010f00  0c 47 52 54 59 25 3d 2d  31 0d 4e 20 1c e7 20 a4  |.GRTY%=-1.N .. .|
00010f10  68 69 67 68 28 31 37 2c  32 30 29 20 8c 20 47 52  |high(17,20) . GR|
00010f20  54 59 25 3d 30 0d 4e 2a  24 e7 20 a4 68 69 67 68  |TY%=0.N*$. .high|
00010f30  28 31 37 2c 32 32 29 20  8c 20 47 52 54 59 25 3d  |(17,22) . GRTY%=|
00010f40  31 3a 46 55 53 54 25 3d  30 0d 4e 34 47 e7 20 47  |1:FUST%=0.N4G. G|
00010f50  52 54 59 25 3d 2d 31 20  8c 20 f2 6d 65 73 73 61  |RTY%=-1 . .messa|
00010f60  67 65 28 30 2c 22 59 6f  75 20 6d 75 73 74 20 73  |ge(0,"You must s|
00010f70  65 6c 65 63 74 20 74 68  65 20 74 79 70 65 20 6f  |elect the type o|
00010f80  66 20 66 69 6c 6c 20 74  6f 20 75 73 65 2e 22 29  |f fill to use.")|
00010f90  0d 4e 3e 6e f2 6b 69 6c  6c 66 3a 46 55 53 45 25  |.N>n.killf:FUSE%|
00010fa0  3d 33 31 3a 46 55 53 54  25 3d 30 3a f2 75 64 3a  |=31:FUST%=0:.ud:|
00010fb0  f2 77 69 6e 64 6e 61 6d  65 28 32 2c 50 49 43 24  |.windname(2,PIC$|
00010fc0  2b 22 20 5b 47 72 61 64  75 61 74 65 64 20 66 69  |+" [Graduated fi|
00010fd0  6c 6c 20 28 22 2b a4 66  69 6c 6c 64 65 74 28 47  |ll ("+.filldet(G|
00010fe0  52 46 4e 25 2b 31 29 2b  22 29 5d 22 29 3a f2 73  |RFN%+1)+")]"):.s|
00010ff0  70 69 6e 69 74 3a f2 74  6b 68 28 31 32 29 0d 4e  |pinit:.tkh(12).N|
00011000  48 17 e7 20 4d 4f 55 42  25 3d 34 20 8c 20 f2 6d  |H.. MOUB%=4 . .m|
00011010  65 6e 6f 66 66 0d 4e 52  05 e1 0d 4e 66 11 dd f2  |enoff.NR...Nf...|
00011020  75 6e 73 65 74 72 61 73  70 3a e1 0d 4e 7a 0f dd  |unsetrasp:..Nz..|
00011030  f2 73 65 74 72 61 73 70  3a e1 0d 4e 8e 0c dd f2  |.setrasp:..N....|
00011040  73 70 69 6e 69 74 0d 4e  98 0d f2 73 70 62 75 66  |spinit.N...spbuf|
00011050  28 30 29 0d 4e a2 05 e1  0d 4e b6 0d dd f2 73 65  |(0).N....N....se|
00011060  74 67 72 69 63 0d 4e c0  15 f2 73 69 28 36 2c 31  |tgric.N...si(6,1|
00011070  39 2c c3 47 52 49 57 49  25 29 0d 4e ca 15 f2 73  |9,.GRIWI%).N...s|
00011080  69 28 36 2c 32 31 2c c3  47 52 49 48 45 25 29 0d  |i(6,21,.GRIHE%).|
00011090  4e d4 57 47 52 42 58 25  3d bb 28 a4 67 69 28 36  |N.WGRBX%=.(.gi(6|
000110a0  2c 32 33 29 29 3a e7 20  47 52 42 58 25 3e 47 52  |,23)):. GRBX%>GR|
000110b0  49 57 49 25 20 8c 20 f5  3a 47 52 42 58 25 2d 3d  |IWI% . .:GRBX%-=|
000110c0  47 52 49 57 49 25 3a fd  20 47 52 42 58 25 3c 47  |GRIWI%:. GRBX%<G|
000110d0  52 49 57 49 25 3a f2 73  69 28 36 2c 32 33 2c c3  |RIWI%:.si(6,23,.|
000110e0  47 52 42 58 25 29 0d 4e  de 57 47 52 42 59 25 3d  |GRBX%).N.WGRBY%=|
000110f0  bb 28 a4 67 69 28 36 2c  32 35 29 29 3a e7 20 47  |.(.gi(6,25)):. G|
00011100  52 42 59 25 3e 47 52 49  48 45 25 20 8c 20 f5 3a  |RBY%>GRIHE% . .:|
00011110  47 52 42 59 25 2d 3d 47  52 49 48 45 25 3a fd 20  |GRBY%-=GRIHE%:. |
00011120  47 52 42 59 25 3c 47 52  49 48 45 25 3a f2 73 69  |GRBY%<GRIHE%:.si|
00011130  28 36 2c 32 35 2c c3 47  52 42 59 25 29 0d 4e e8  |(6,25,.GRBY%).N.|
00011140  05 e1 0d 4e fc 0e dd f2  7a 6f 6f 6d 73 69 7a 65  |...N....zoomsize|
00011150  0d 4f 06 3e 21 42 4c 4b  25 3d 48 41 4e 44 25 28  |.O.>!BLK%=HAND%(|
00011160  32 29 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 57  |2):.. "Wimp_GetW|
00011170  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 42 4c 4b  |indowState",,BLK|
00011180  25 3a 57 49 46 25 3d 42  4c 4b 25 21 32 38 0d 4f  |%:WIF%=BLK%!28.O|
00011190  10 2e 21 42 4c 4b 25 3d  48 41 4e 44 25 28 32 29  |..!BLK%=HAND%(2)|
000111a0  3a c8 99 20 22 57 69 6d  70 5f 43 6c 6f 73 65 57  |:.. "Wimp_CloseW|
000111b0  69 6e 64 6f 77 22 2c 2c  42 4c 4b 25 0d 4f 1a 5c  |indow",,BLK%.O.\|
000111c0  21 42 4c 4b 25 3d 30 3a  42 4c 4b 25 21 34 3d 2d  |!BLK%=0:BLK%!4=-|
000111d0  31 30 32 33 2a 5a 4f 4f  4d 25 3a 42 4c 4b 25 21  |1023*ZOOM%:BLK%!|
000111e0  38 3d 31 32 37 39 2a 5a  4f 4f 4d 25 3a 42 4c 4b  |8=1279*ZOOM%:BLK|
000111f0  25 21 31 32 3d 30 3a c8  99 20 22 57 69 6d 70 5f  |%!12=0:.. "Wimp_|
00011200  53 65 74 45 78 74 65 6e  74 22 2c 48 41 4e 44 25  |SetExtent",HAND%|
00011210  28 32 29 2c 42 4c 4b 25  0d 4f 24 31 21 42 4c 4b  |(2),BLK%.O$1!BLK|
00011220  25 3d 48 41 4e 44 25 28  32 29 3a c8 99 20 22 57  |%=HAND%(2):.. "W|
00011230  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
00011240  74 65 22 2c 2c 42 4c 4b  25 0d 4f 2e 2d 42 4c 4b  |te",,BLK%.O.-BLK|
00011250  25 21 32 38 3d 57 49 46  25 3a c8 99 20 22 57 69  |%!28=WIF%:.. "Wi|
00011260  6d 70 5f 4f 70 65 6e 57  69 6e 64 6f 77 22 2c 2c  |mp_OpenWindow",,|
00011270  42 4c 4b 25 3a e1 0d 4f  42 23 dd f2 77 69 6e 64  |BLK%:..OB#..wind|
00011280  5f 65 78 74 28 57 48 25  2c 54 58 25 2c 54 59 25  |_ext(WH%,TX%,TY%|
00011290  2c 53 58 25 2c 53 59 25  29 0d 4f 4c 40 21 42 4c  |,SX%,SY%).OL@!BL|
000112a0  4b 25 3d 48 41 4e 44 25  28 57 48 25 29 3a c8 99  |K%=HAND%(WH%):..|
000112b0  20 22 57 69 6d 70 5f 47  65 74 57 69 6e 64 6f 77  | "Wimp_GetWindow|
000112c0  53 74 61 74 65 22 2c 2c  42 4c 4b 25 3a 57 49 46  |State",,BLK%:WIF|
000112d0  25 3d 42 4c 4b 25 21 32  38 0d 4f 56 30 21 42 4c  |%=BLK%!28.OV0!BL|
000112e0  4b 25 3d 48 41 4e 44 25  28 57 48 25 29 3a c8 99  |K%=HAND%(WH%):..|
000112f0  20 22 57 69 6d 70 5f 43  6c 6f 73 65 57 69 6e 64  | "Wimp_CloseWind|
00011300  6f 77 22 2c 2c 42 4c 4b  25 0d 4f 60 53 21 42 4c  |ow",,BLK%.O`S!BL|
00011310  4b 25 3d 54 58 25 3a 42  4c 4b 25 21 34 3d 54 59  |K%=TX%:BLK%!4=TY|
00011320  25 3a 42 4c 4b 25 21 38  3d 53 58 25 3a 42 4c 4b  |%:BLK%!8=SX%:BLK|
00011330  25 21 31 32 3d 53 59 25  3a c8 99 20 22 57 69 6d  |%!12=SY%:.. "Wim|
00011340  70 5f 53 65 74 45 78 74  65 6e 74 22 2c 48 41 4e  |p_SetExtent",HAN|
00011350  44 25 28 57 48 25 29 2c  42 4c 4b 25 0d 4f 6a 33  |D%(WH%),BLK%.Oj3|
00011360  21 42 4c 4b 25 3d 48 41  4e 44 25 28 57 48 25 29  |!BLK%=HAND%(WH%)|
00011370  3a c8 99 20 22 57 69 6d  70 5f 47 65 74 57 69 6e  |:.. "Wimp_GetWin|
00011380  64 6f 77 53 74 61 74 65  22 2c 2c 42 4c 4b 25 0d  |dowState",,BLK%.|
00011390  4f 74 2d e7 20 57 48 25  3d 31 32 20 80 20 54 59  |Ot-. WH%=12 . TY|
000113a0  25 3d 2d 39 30 30 20 8c  20 42 4c 4b 25 21 38 3d  |%=-900 . BLK%!8=|
000113b0  28 42 4c 4b 25 21 38 29  2d 32 36 30 0d 4f 7e 2d  |(BLK%!8)-260.O~-|
000113c0  42 4c 4b 25 21 32 38 3d  57 49 46 25 3a c8 99 20  |BLK%!28=WIF%:.. |
000113d0  22 57 69 6d 70 5f 4f 70  65 6e 57 69 6e 64 6f 77  |"Wimp_OpenWindow|
000113e0  22 2c 2c 42 4c 4b 25 3a  e1 0d 4f 88 05 e1 0d 4f  |",,BLK%:..O....O|
000113f0  9c 0c dd f2 65 64 5f 62  72 75 0d 4f a6 27 f2 77  |....ed_bru.O.'.w|
00011400  69 6e 64 5f 65 78 74 28  31 32 2c 30 2c 2d 36 34  |ind_ext(12,0,-64|
00011410  30 2c 31 30 32 34 2c 30  29 3a 45 44 54 59 25 3d  |0,1024,0):EDTY%=|
00011420  30 0d 4f b0 05 e1 0d 4f  c4 0d dd f2 65 64 5f 66  |0.O....O....ed_f|
00011430  69 6c 6c 0d 4f ce 27 f2  77 69 6e 64 5f 65 78 74  |ill.O.'.wind_ext|
00011440  28 31 32 2c 30 2c 2d 39  30 30 2c 31 30 32 34 2c  |(12,0,-900,1024,|
00011450  30 29 3a 45 44 54 59 25  3d 31 0d 4f d8 05 e1 0d  |0):EDTY%=1.O....|
00011460  4f ec 4c dd a4 67 73 74  72 28 41 44 25 29 3a 57  |O.L..gstr(AD%):W|
00011470  24 3d 22 22 3a e7 20 3f  41 44 25 3c 33 32 20 8c  |$="":. ?AD%<32 .|
00011480  20 3d 57 24 20 8b 20 f5  3a 57 24 3d 57 24 2b bd  | =W$ . .:W$=W$+.|
00011490  28 3f 41 44 25 29 3a 41  44 25 2b 3d 31 3a fd 20  |(?AD%):AD%+=1:. |
000114a0  3f 41 44 25 3c 33 32 3a  3d 57 24 0d 50 00 77 dd  |?AD%<32:=W$.P.w.|
000114b0  a4 67 69 28 57 48 25 2c  49 43 25 29 3a 4c 57 47  |.gi(WH%,IC%):LWG|
000114c0  25 3d 57 48 25 3a 4c 49  47 25 3d 49 43 25 3a 21  |%=WH%:LIG%=IC%:!|
000114d0  49 43 42 4c 4b 25 3d 48  41 4e 44 25 28 57 48 25  |ICBLK%=HAND%(WH%|
000114e0  29 3a 49 43 42 4c 4b 25  21 34 3d 49 43 25 3a c8  |):ICBLK%!4=IC%:.|
000114f0  99 20 22 57 69 6d 70 5f  47 65 74 49 63 6f 6e 53  |. "Wimp_GetIconS|
00011500  74 61 74 65 22 2c 2c 49  43 42 4c 4b 25 3a 3d a4  |tate",,ICBLK%:=.|
00011510  67 73 74 72 28 21 28 49  43 42 4c 4b 25 2b 32 38  |gstr(!(ICBLK%+28|
00011520  29 29 0d 50 14 a3 dd f2  73 69 28 57 48 32 25 2c  |)).P....si(WH2%,|
00011530  49 43 32 25 2c 53 45 54  24 29 3a 21 49 43 42 4c  |IC2%,SET$):!ICBL|
00011540  4b 25 3d 48 41 4e 44 25  28 57 48 32 25 29 3a 49  |K%=HAND%(WH2%):I|
00011550  43 42 4c 4b 25 21 34 3d  49 43 32 25 3a c8 99 20  |CBLK%!4=IC2%:.. |
00011560  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00011570  74 65 22 2c 2c 49 43 42  4c 4b 25 3a 49 43 42 4c  |te",,ICBLK%:ICBL|
00011580  4b 25 21 38 3d 30 3a 49  43 42 4c 4b 25 21 31 32  |K%!8=0:ICBLK%!12|
00011590  3d 30 3a 24 28 49 43 42  4c 4b 25 21 32 38 29 3d  |=0:$(ICBLK%!28)=|
000115a0  53 45 54 24 3a c8 99 20  22 57 69 6d 70 5f 53 65  |SET$:.. "Wimp_Se|
000115b0  74 49 63 6f 6e 53 74 61  74 65 22 2c 2c 49 43 42  |tIconState",,ICB|
000115c0  4c 4b 25 3a e1 0d 50 28  71 dd a4 68 69 67 68 28  |LK%:..P(q..high(|
000115d0  57 48 25 2c 49 43 25 29  3a 21 49 43 42 4c 4b 25  |WH%,IC%):!ICBLK%|
000115e0  3d 48 41 4e 44 25 28 57  48 25 29 3a 49 43 42 4c  |=HAND%(WH%):ICBL|
000115f0  4b 25 21 34 3d 49 43 25  3a c8 99 20 22 57 69 6d  |K%!4=IC%:.. "Wim|
00011600  70 5f 47 65 74 49 63 6f  6e 53 74 61 74 65 22 2c  |p_GetIconState",|
00011610  2c 49 43 42 4c 4b 25 3a  3d 28 28 3f 28 49 43 42  |,ICBLK%:=((?(ICB|
00011620  4c 4b 25 2b 32 36 29 29  20 80 20 25 31 30 30 30  |LK%+26)) . %1000|
00011630  30 30 29 3d 33 32 0d 50  3c 59 dd a4 77 6f 70 65  |00)=32.P<Y..wope|
00011640  6e 28 57 48 25 29 3a 21  49 43 42 4c 4b 25 3d 48  |n(WH%):!ICBLK%=H|
00011650  41 4e 44 25 28 57 48 25  29 3a c8 99 20 22 57 69  |AND%(WH%):.. "Wi|
00011660  6d 70 5f 47 65 74 57 69  6e 64 6f 77 53 74 61 74  |mp_GetWindowStat|
00011670  65 22 2c 2c 49 43 42 4c  4b 25 3a 3d 28 28 49 43  |e",,ICBLK%:=((IC|
00011680  42 4c 4b 25 3f 33 34 29  20 80 20 31 29 3d 31 0d  |BLK%?34) . 1)=1.|
00011690  50 50 33 dd f2 73 68 61  64 65 69 63 6f 6e 28 57  |PP3..shadeicon(W|
000116a0  48 25 2c 49 43 25 29 3a  f2 69 63 66 6c 61 67 28  |H%,IC%):.icflag(|
000116b0  57 48 25 2c 49 43 25 2c  31 3c 3c 32 32 2c 30 29  |WH%,IC%,1<<22,0)|
000116c0  3a e1 0d 50 64 33 dd f2  63 6c 65 61 72 69 63 6f  |:..Pd3..clearico|
000116d0  6e 28 57 48 25 2c 49 43  25 29 3a f2 69 63 66 6c  |n(WH%,IC%):.icfl|
000116e0  61 67 28 57 48 25 2c 49  43 25 2c 30 2c 31 3c 3c  |ag(WH%,IC%,0,1<<|
000116f0  32 32 29 3a e1 0d 50 78  30 dd f2 69 63 6f 6e 68  |22):..Px0..iconh|
00011700  69 28 57 48 25 2c 49 43  25 29 3a f2 69 63 66 6c  |i(WH%,IC%):.icfl|
00011710  61 67 28 57 48 25 2c 49  43 25 2c 31 3c 3c 32 31  |ag(WH%,IC%,1<<21|
00011720  2c 30 29 3a e1 0d 50 8c  30 dd f2 69 63 6f 6e 6c  |,0):..P.0..iconl|
00011730  6f 28 57 48 25 2c 49 43  25 29 3a f2 69 63 66 6c  |o(WH%,IC%):.icfl|
00011740  61 67 28 57 48 25 2c 49  43 25 2c 30 2c 31 3c 3c  |ag(WH%,IC%,0,1<<|
00011750  32 31 29 3a e1 0d 50 a0  1d dd f2 69 63 66 6c 61  |21):..P....icfla|
00011760  67 28 57 48 25 2c 49 43  25 2c 57 45 25 2c 57 4d  |g(WH%,IC%,WE%,WM|
00011770  25 29 0d 50 aa 23 21 49  43 42 4c 4b 25 3d 48 41  |%).P.#!ICBLK%=HA|
00011780  4e 44 25 28 57 48 25 29  3a 49 43 42 4c 4b 25 21  |ND%(WH%):ICBLK%!|
00011790  34 3d 49 43 25 0d 50 b4  3e 49 43 42 4c 4b 25 21  |4=IC%.P.>ICBLK%!|
000117a0  38 3d 57 45 25 3a e7 20  57 4d 25 3c 3e 30 20 8c  |8=WE%:. WM%<>0 .|
000117b0  20 49 43 42 4c 4b 25 21  31 32 3d 57 4d 25 20 8b  | ICBLK%!12=WM% .|
000117c0  20 49 43 42 4c 4b 25 21  31 32 3d 49 43 42 4c 4b  | ICBLK%!12=ICBLK|
000117d0  25 21 38 0d 50 be 22 c8  99 20 22 57 69 6d 70 5f  |%!8.P.".. "Wimp_|
000117e0  53 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 49  |SetIconState",,I|
000117f0  43 42 4c 4b 25 0d 50 c8  05 e1 0d 50 dc 5c dd f2  |CBLK%.P....P.\..|
00011800  70 6f 69 6e 74 3a c8 99  20 22 57 69 6d 70 5f 47  |point:.. "Wimp_G|
00011810  65 74 50 6f 69 6e 74 65  72 49 6e 66 6f 22 2c 2c  |etPointerInfo",,|
00011820  50 4f 49 25 3a 4d 4f 58  25 3d 21 50 4f 49 25 3a  |POI%:MOX%=!POI%:|
00011830  4d 4f 59 25 3d 50 4f 49  25 21 34 3a 4d 4f 42 25  |MOY%=POI%!4:MOB%|
00011840  3d 50 4f 49 25 21 38 3a  4d 4f 48 25 3d 50 4f 49  |=POI%!8:MOH%=POI|
00011850  25 21 31 32 3a e1 0d 50  f0 8e dd f2 77 69 6e 64  |%!12:..P....wind|
00011860  6e 61 6d 65 28 57 48 25  2c 53 45 54 24 29 3a 21  |name(WH%,SET$):!|
00011870  42 4c 4b 25 3d 48 41 4e  44 25 28 57 48 25 29 3a  |BLK%=HAND%(WH%):|
00011880  c8 99 20 22 57 69 6d 70  5f 47 65 74 57 69 6e 64  |.. "Wimp_GetWind|
00011890  6f 77 53 74 61 74 65 22  2c 2c 42 4c 4b 25 3a 57  |owState",,BLK%:W|
000118a0  49 46 25 3d 42 4c 4b 25  21 32 38 3a c8 99 20 22  |IF%=BLK%!28:.. "|
000118b0  57 69 6d 70 5f 47 65 74  57 69 6e 64 6f 77 49 6e  |Wimp_GetWindowIn|
000118c0  66 6f 22 2c 2c 42 4c 4b  25 3a c8 99 22 57 69 6d  |fo",,BLK%:.."Wim|
000118d0  70 5f 43 6c 6f 73 65 57  69 6e 64 6f 77 22 2c 2c  |p_CloseWindow",,|
000118e0  42 4c 4b 25 0d 50 fa 43  41 44 25 3d 42 4c 4b 25  |BLK%.P.CAD%=BLK%|
000118f0  21 37 36 3a 42 4c 4b 25  21 32 38 3d 57 49 46 25  |!76:BLK%!28=WIF%|
00011900  3a 24 41 44 25 3d 53 45  54 24 3a c8 99 20 22 57  |:$AD%=SET$:.. "W|
00011910  69 6d 70 5f 4f 70 65 6e  57 69 6e 64 6f 77 22 2c  |imp_OpenWindow",|
00011920  2c 42 4c 4b 25 3a e1 0d  51 0e 0d dd f2 64 72 61  |,BLK%:..Q....dra|
00011930  67 66 69 6e 0d 51 18 05  e1 0d 51 2c 0f dd f2 73  |gfin.Q....Q,...s|
00011940  74 61 72 74 64 72 61 67  0d 51 36 25 c8 99 20 22  |tartdrag.Q6%.. "|
00011950  57 69 6d 70 5f 47 65 74  57 69 6e 64 6f 77 53 74  |Wimp_GetWindowSt|
00011960  61 74 65 22 2c 2c 42 4c  4b 25 2b 31 32 0d 51 40  |ate",,BLK%+12.Q@|
00011970  43 58 25 3d 42 4c 4b 25  21 31 36 3a 59 25 3d 42  |CX%=BLK%!16:Y%=B|
00011980  4c 4b 25 21 32 38 3a 42  4c 4b 25 21 31 36 3d 30  |LK%!28:BLK%!16=0|
00011990  3a c8 99 20 22 57 69 6d  70 5f 47 65 74 49 63 6f  |:.. "Wimp_GetIco|
000119a0  6e 53 74 61 74 65 22 2c  2c 42 4c 4b 25 2b 31 32  |nState",,BLK%+12|
000119b0  0d 51 4a 29 42 4c 4b 25  21 31 36 3d 35 3a 42 4c  |.QJ)BLK%!16=5:BL|
000119c0  4b 25 21 32 30 2b 3d 58  25 2d 32 3a 42 4c 4b 25  |K%!20+=X%-2:BLK%|
000119d0  21 32 34 2b 3d 59 25 2d  34 0d 51 54 1d 42 4c 4b  |!24+=Y%-4.QT.BLK|
000119e0  25 21 32 38 2b 3d 58 25  2b 32 3a 42 4c 4b 25 21  |%!28+=X%+2:BLK%!|
000119f0  33 32 2b 3d 59 25 0d 51  5e 58 42 4c 4b 25 21 33  |32+=Y%.Q^XBLK%!3|
00011a00  36 3d 30 3a 42 4c 4b 25  21 34 30 3d 30 3a 42 4c  |6=0:BLK%!40=0:BL|
00011a10  4b 25 21 34 34 3d 26 37  46 46 46 46 46 46 46 3a  |K%!44=&7FFFFFFF:|
00011a20  42 4c 4b 25 21 34 38 3d  26 37 46 46 46 46 46 46  |BLK%!48=&7FFFFFF|
00011a30  46 3a c8 99 20 22 57 69  6d 70 5f 44 72 61 67 42  |F:.. "Wimp_DragB|
00011a40  6f 78 22 2c 2c 42 4c 4b  25 2b 31 32 3a e1 0d 51  |ox",,BLK%+12:..Q|
00011a50  72 13 dd f2 69 6e 6d 65  73 73 61 67 65 28 4d 25  |r...inmessage(M%|
00011a60  29 0d 51 7c 0b c8 8e 20  4d 25 20 ca 0d 51 86 0c  |).Q|... M% ..Q..|
00011a70  c9 20 30 3a f2 64 69 65  0d 51 90 10 c9 20 31 3a  |. 0:.die.Q... 1:|
00011a80  f2 72 61 6d 6c 6f 61 64  0d 51 9a 11 c9 20 32 3a  |.ramload.Q... 2:|
00011a90  f2 64 72 61 67 73 61 76  65 0d 51 a4 2e c9 20 35  |.dragsave.Q... 5|
00011aa0  3a e7 20 42 4c 4b 25 21  31 32 3d 30 20 80 20 42  |:. BLK%!12=0 . B|
00011ab0  4c 4b 25 21 34 30 3d 26  43 31 31 20 f2 6c 6f 61  |LK%!40=&C11 .loa|
00011ac0  64 28 26 43 31 31 29 0d  51 ae 1d c9 20 36 3a e7  |d(&C11).Q... 6:.|
00011ad0  20 44 52 41 47 25 3d 37  20 8c 20 f2 72 61 6d 66  | DRAG%=7 . .ramf|
00011ae0  65 74 63 68 0d 51 b8 13  c9 20 37 3a f2 72 61 6d  |etch.Q... 7:.ram|
00011af0  72 65 63 65 69 76 65 0d  51 c2 7e c9 20 33 3a e7  |receive.Q.~. 3:.|
00011b00  20 42 4c 4b 25 21 31 32  3d 30 20 80 20 42 4c 4b  | BLK%!12=0 . BLK|
00011b10  25 21 34 30 3d 26 35 35  36 20 f2 6c 6f 61 64 28  |%!40=&556 .load(|
00011b20  26 35 35 36 29 20 8b 20  e7 20 42 4c 4b 25 21 31  |&556) . . BLK%!1|
00011b30  32 3d 30 20 80 20 42 4c  4b 25 21 34 30 3d 26 43  |2=0 . BLK%!40=&C|
00011b40  31 31 20 f2 6c 6f 61 64  28 26 43 31 31 29 20 8b  |11 .load(&C11) .|
00011b50  20 e7 20 42 4c 4b 25 21  31 32 3d 30 20 80 20 42  | . BLK%!12=0 . B|
00011b60  4c 4b 25 21 34 30 3d 26  46 46 39 20 8c 20 f2 69  |LK%!40=&FF9 . .i|
00011b70  6d 70 6f 72 74 0d 51 cc  07 cb 3a e1 0d 51 e0 0d  |mport.Q...:..Q..|
00011b80  dd f2 72 61 6d 6c 6f 61  64 0d 51 ea 1f 54 58 25  |..ramload.Q..TX%|
00011b90  3d 42 4c 4b 25 21 34 30  3a e7 20 54 58 25 3c 3e  |=BLK%!40:. TX%<>|
00011ba0  26 46 46 39 20 8c 20 e1  0d 51 f4 35 49 4d 53 25  |&FF9 . ..Q.5IMS%|
00011bb0  3d 42 4c 4b 25 21 33 36  3a 41 24 3d a4 67 65 74  |=BLK%!36:A$=.get|
00011bc0  6e 61 6d 65 3a 4d 52 45  46 25 3d 42 4c 4b 25 21  |name:MREF%=BLK%!|
00011bd0  38 3a 53 44 48 25 3d 42  4c 4b 25 21 34 0d 51 fe  |8:SDH%=BLK%!4.Q.|
00011be0  30 f2 6b 69 6c 6c 66 3a  46 55 53 45 25 3d 33 34  |0.killf:FUSE%=34|
00011bf0  3a 46 55 53 54 25 3d 30  3a f2 6f 70 65 6e 77 69  |:FUST%=0:.openwi|
00011c00  6e 64 28 38 29 3a f2 73  70 69 6e 69 74 0d 52 08  |nd(8):.spinit.R.|
00011c10  42 f2 73 70 62 75 66 28  49 4d 53 25 2b 38 29 3a  |B.spbuf(IMS%+8):|
00011c20  e7 20 51 25 20 8c 20 46  55 53 45 25 3d 2d 31 3a  |. Q% . FUSE%=-1:|
00011c30  f2 63 6c 6f 73 65 77 69  6e 64 28 38 29 3a f2 73  |.closewind(8):.s|
00011c40  70 69 6e 69 74 3a f2 73  70 62 75 66 65 72 72 0d  |pinit:.spbuferr.|
00011c50  52 12 17 52 41 54 4f 46  25 3d 30 3a 52 44 54 53  |R..RATOF%=0:RDTS|
00011c60  25 3d 49 4d 53 25 0d 52  1c 1d 42 4c 4b 25 21 38  |%=IMS%.R..BLK%!8|
00011c70  3d 4d 52 45 46 25 3a f2  72 61 6d 74 72 61 6e 73  |=MREF%:.ramtrans|
00011c80  6d 69 74 0d 52 26 05 e1  0d 52 3a 11 dd f2 72 61  |mit.R&...R:...ra|
00011c90  6d 74 72 61 6e 73 6d 69  74 0d 52 44 70 21 42 4c  |mtransmit.RDp!BL|
00011ca0  4b 25 3d 36 34 3a 42 4c  4b 25 21 31 32 3d 42 4c  |K%=64:BLK%!12=BL|
00011cb0  4b 25 21 38 3a 42 4c 4b  25 21 31 36 3d 36 3a 42  |K%!8:BLK%!16=6:B|
00011cc0  4c 4b 25 21 32 30 3d 53  50 42 55 46 25 2b 34 2b  |LK%!20=SPBUF%+4+|
00011cd0  52 41 54 4f 46 25 3a 42  4c 4b 25 21 32 34 3d 52  |RATOF%:BLK%!24=R|
00011ce0  44 54 53 25 3a c8 99 20  22 57 69 6d 70 5f 53 65  |DTS%:.. "Wimp_Se|
00011cf0  6e 64 4d 65 73 73 61 67  65 22 2c 31 38 2c 42 4c  |ndMessage",18,BL|
00011d00  4b 25 2c 53 44 48 25 3a  e1 0d 52 58 10 dd f2 72  |K%,SDH%:..RX...r|
00011d10  61 6d 72 65 63 65 69 76  65 0d 52 62 40 54 58 25  |amreceive.Rb@TX%|
00011d20  3d 42 4c 4b 25 21 32 34  3a e7 20 54 58 25 3d 52  |=BLK%!24:. TX%=R|
00011d30  44 54 53 25 20 8c 20 52  44 54 53 25 3d 34 3a 52  |DTS% . RDTS%=4:R|
00011d40  41 54 4f 46 25 2b 3d 54  58 25 3a f2 72 61 6d 74  |ATOF%+=TX%:.ramt|
00011d50  72 61 6e 73 6d 69 74 3a  e1 0d 52 6c 0a e5 20 8d  |ransmit:..Rl.. .|
00011d60  50 76 4c 0d 52 80 0e dd  f2 72 61 6d 66 65 74 63  |PvL.R....ramfetc|
00011d70  68 0d 52 8a 2e 42 55 41  44 25 3d 42 4c 4b 25 21  |h.R..BUAD%=BLK%!|
00011d80  32 30 20 3a 20 f4 20 72  61 6d 20 66 65 74 63 68  |20 : . ram fetch|
00011d90  20 62 75 66 66 65 72 20  61 64 64 72 65 73 73 0d  | buffer address.|
00011da0  52 94 23 42 55 4c 45 25  3d 42 4c 4b 25 21 32 34  |R.#BULE%=BLK%!24|
00011db0  20 3a 20 f4 20 62 75 66  66 65 72 20 6c 65 6e 67  | : . buffer leng|
00011dc0  74 68 0d 52 9e 2b 53 44  48 25 3d 42 4c 4b 25 21  |th.R.+SDH%=BLK%!|
00011dd0  34 20 20 20 3a 20 f4 20  68 61 6e 64 6c 65 20 6f  |4   : . handle o|
00011de0  66 20 73 65 6e 64 65 72  20 74 61 73 6b 0d 52 a8  |f sender task.R.|
00011df0  1c 4d 52 45 46 25 3d 42  4c 4b 25 21 38 20 20 3a  |.MREF%=BLK%!8  :|
00011e00  20 f4 20 6d 79 2d 72 65  66 0d 52 b2 11 42 4c 4b  | . my-ref.R..BLK|
00011e10  25 21 31 32 3d 4d 52 45  46 25 0d 52 bc 22 42 4c  |%!12=MREF%.R."BL|
00011e20  4b 25 21 31 36 3d 37 20  20 20 20 20 3a 20 f4 20  |K%!16=7     : . |
00011e30  52 61 6d 5f 74 72 61 6e  73 6d 69 74 0d 52 c6 20  |Ram_transmit.R. |
00011e40  21 42 4c 4b 25 3d 36 34  3a 20 20 20 20 20 3a 20  |!BLK%=64:     : |
00011e50  f4 20 62 6c 6f 63 6b 20  73 69 7a 65 0d 52 d0 24  |. block size.R.$|
00011e60  42 4c 4b 25 21 32 30 3d  42 55 41 44 25 20 3a 20  |BLK%!20=BUAD% : |
00011e70  f4 20 62 75 66 66 65 72  20 61 64 64 72 65 73 73  |. buffer address|
00011e80  0d 52 da 38 e7 20 42 55  4c 45 25 3c 3d 52 44 54  |.R.8. BULE%<=RDT|
00011e90  53 25 20 8c 20 57 45 25  3d 52 44 54 53 25 3a 54  |S% . WE%=RDTS%:T|
00011ea0  58 25 3d 31 37 20 8b 20  57 45 25 3d 42 55 4c 45  |X%=17 . WE%=BULE|
00011eb0  25 3a 54 58 25 3d 31 38  0d 52 e4 1c e7 20 52 44  |%:TX%=18.R... RD|
00011ec0  54 53 25 3d 30 20 8c 20  57 45 25 3d 30 3a 54 58  |TS%=0 . WE%=0:TX|
00011ed0  25 3d 31 37 0d 52 ee 2e  42 4c 4b 25 21 32 34 3d  |%=17.R..BLK%!24=|
00011ee0  57 45 25 20 20 20 3a 20  f4 20 23 62 79 74 65 73  |WE%   : . #bytes|
00011ef0  20 77 72 69 74 74 65 6e  20 74 6f 20 62 75 66 66  | written to buff|
00011f00  65 72 0d 52 f8 42 c8 99  20 22 57 69 6d 70 5f 54  |er.R.B.. "Wimp_T|
00011f10  72 61 6e 73 66 65 72 42  6c 6f 63 6b 22 2c 54 48  |ransferBlock",TH|
00011f20  41 4e 44 25 2c 52 54 53  42 25 2b 34 2b 52 41 54  |AND%,RTSB%+4+RAT|
00011f30  4f 46 25 2c 53 44 48 25  2c 42 55 41 44 25 2c 42  |OF%,SDH%,BUAD%,B|
00011f40  55 4c 45 25 0d 53 02 1a  52 44 54 53 25 2d 3d 57  |ULE%.S..RDTS%-=W|
00011f50  45 25 3a 52 41 54 4f 46  25 2b 3d 57 45 25 0d 53  |E%:RATOF%+=WE%.S|
00011f60  0c 43 c8 99 20 22 57 69  6d 70 5f 53 65 6e 64 4d  |.C.. "Wimp_SendM|
00011f70  65 73 73 61 67 65 22 2c  54 58 25 2c 42 4c 4b 25  |essage",TX%,BLK%|
00011f80  2c 53 44 57 25 2c 53 44  49 25 20 20 3a 20 f4 20  |,SDW%,SDI%  : . |
00011f90  73 65 6e 64 20 52 41 4d  20 74 72 61 6e 73 6d 69  |send RAM transmi|
00011fa0  74 0d 53 16 05 e1 0d 53  2a 63 dd f2 73 61 76 65  |t.S....S*c..save|
00011fb0  6f 6b 3a 41 24 3d a4 67  69 28 30 2c 36 29 3a e7  |ok:A$=.gi(0,6):.|
00011fc0  20 a7 41 24 2c 22 2e 22  29 3d 30 20 8c 20 f2 6d  | .A$,".")=0 . .m|
00011fd0  65 73 73 61 67 65 28 34  2c 22 54 6f 20 73 61 76  |essage(4,"To sav|
00011fe0  65 2c 20 64 72 61 67 20  74 68 65 20 69 63 6f 6e  |e, drag the icon|
00011ff0  20 74 6f 20 61 20 64 69  72 65 63 74 6f 72 79 20  | to a directory |
00012000  76 69 65 77 65 72 2e 22  29 0d 53 34 1d f4 20 2a  |viewer.").S4.. *|
00012010  2a 20 53 41 56 45 20 52  4f 55 54 49 4e 45 20 48  |* SAVE ROUTINE H|
00012020  45 52 45 20 2a 2a 0d 53  3e 0a e5 20 8d 70 4e 53  |ERE **.S>.. .pNS|
00012030  0d 53 48 05 e1 0d 53 5c  4e dd f2 64 72 61 67 73  |.SH...S\N..drags|
00012040  61 76 65 3a 53 44 57 25  3d 42 4c 4b 25 21 32 30  |ave:SDW%=BLK%!20|
00012050  3a 53 44 49 25 3d 42 4c  4b 25 21 32 34 3a 53 44  |:SDI%=BLK%!24:SD|
00012060  58 25 3d 42 4c 4b 25 21  32 38 3a 53 44 59 25 3d  |X%=BLK%!28:SDY%=|
00012070  42 4c 4b 25 21 33 32 3a  41 24 3d a4 67 65 74 6e  |BLK%!32:A$=.getn|
00012080  61 6d 65 0d 53 66 17 e7  20 44 52 41 47 25 3d 33  |ame.Sf.. DRAG%=3|
00012090  34 20 8c 20 e5 20 8d 70  6c 53 0d 53 70 0f f2 73  |4 . . .plS.Sp..s|
000120a0  69 28 30 2c 36 2c 41 24  29 0d 53 7a 26 e7 20 4d  |i(0,6,A$).Sz&. M|
000120b0  4f 55 42 25 3c 3e 31 20  c8 99 20 22 57 69 6d 70  |OUB%<>1 .. "Wimp|
000120c0  5f 43 72 65 61 74 65 4d  65 6e 75 22 2c 2d 31 0d  |_CreateMenu",-1.|
000120d0  53 84 81 42 4c 4b 25 21  31 32 3d 42 4c 4b 25 21  |S..BLK%!12=BLK%!|
000120e0  38 3a 42 4c 4b 25 21 31  36 3d 33 3a 21 42 4c 4b  |8:BLK%!16=3:!BLK|
000120f0  25 3d 36 34 3a 42 4c 4b  25 21 32 30 3d 53 44 57  |%=64:BLK%!20=SDW|
00012100  25 3a 42 4c 4b 25 21 32  34 3d 53 44 49 25 3a 42  |%:BLK%!24=SDI%:B|
00012110  4c 4b 25 21 32 38 3d 53  44 58 25 3a 42 4c 4b 25  |LK%!28=SDX%:BLK%|
00012120  21 33 32 3d 53 44 59 25  3a c8 99 20 22 57 69 6d  |!32=SDY%:.. "Wim|
00012130  70 5f 53 65 6e 64 4d 65  73 73 61 67 65 22 2c 31  |p_SendMessage",1|
00012140  37 2c 42 4c 4b 25 2c 53  44 57 25 2c 53 44 49 25  |7,BLK%,SDW%,SDI%|
00012150  0d 53 8e 05 e1 0d 53 a2  70 dd f2 73 61 76 65 73  |.S....S.p..saves|
00012160  65 74 6f 6b 3a 41 24 3d  a4 67 69 28 33 34 2c 36  |etok:A$=.gi(34,6|
00012170  29 3a e7 20 a7 41 24 2c  22 2e 22 29 3d 30 20 8c  |):. .A$,".")=0 .|
00012180  20 f2 6d 65 73 73 61 67  65 28 34 2c 22 54 6f 20  | .message(4,"To |
00012190  73 61 76 65 2c 20 64 72  61 67 20 74 68 65 20 69  |save, drag the i|
000121a0  63 6f 6e 20 74 6f 20 61  20 64 69 72 65 63 74 6f  |con to a directo|
000121b0  72 79 20 76 69 65 77 65  72 2e 22 29 20 8b 20 e5  |ry viewer.") . .|
000121c0  20 8d 60 4a 53 0d 53 ac  11 f2 73 69 28 33 34 2c  | .`JS.S...si(34,|
000121d0  36 2c 41 24 29 3a 0d 53  b6 26 e7 20 4d 4f 55 42  |6,A$):.S.&. MOUB|
000121e0  25 3c 3e 31 20 c8 99 20  22 57 69 6d 70 5f 43 72  |%<>1 .. "Wimp_Cr|
000121f0  65 61 74 65 4d 65 6e 75  22 2c 2d 31 0d 53 c0 81  |eateMenu",-1.S..|
00012200  42 4c 4b 25 21 31 32 3d  42 4c 4b 25 21 38 3a 42  |BLK%!12=BLK%!8:B|
00012210  4c 4b 25 21 31 36 3d 33  3a 21 42 4c 4b 25 3d 36  |LK%!16=3:!BLK%=6|
00012220  34 3a 42 4c 4b 25 21 32  30 3d 53 44 57 25 3a 42  |4:BLK%!20=SDW%:B|
00012230  4c 4b 25 21 32 34 3d 53  44 49 25 3a 42 4c 4b 25  |LK%!24=SDI%:BLK%|
00012240  21 32 38 3d 53 44 58 25  3a 42 4c 4b 25 21 33 32  |!28=SDX%:BLK%!32|
00012250  3d 53 44 59 25 3a c8 99  20 22 57 69 6d 70 5f 53  |=SDY%:.. "Wimp_S|
00012260  65 6e 64 4d 65 73 73 61  67 65 22 2c 31 37 2c 42  |endMessage",17,B|
00012270  4c 4b 25 2c 53 44 57 25  2c 53 44 49 25 0d 53 ca  |LK%,SDW%,SDI%.S.|
00012280  13 f2 73 61 76 65 73 65  74 73 28 41 24 29 3a e1  |..savesets(A$):.|
00012290  0d 53 de 1f dd f2 73 61  76 65 28 53 24 29 3a f2  |.S....save(S$):.|
000122a0  6b 69 6c 6c 66 3a 46 55  53 45 25 3d 2d 31 3a 0d  |killf:FUSE%=-1:.|
000122b0  53 e8 05 e1 0d 53 fc 42  dd a4 6e 75 6c 6c 73 74  |S....S.B..nullst|
000122c0  72 69 6e 67 28 41 44 25  29 3a 4e 24 3d 22 22 3a  |ring(AD%):N$="":|
000122d0  c8 95 20 3f 41 44 25 3e  3d 33 32 3a 4e 24 3d 4e  |.. ?AD%>=32:N$=N|
000122e0  24 2b bd 28 3f 41 44 25  29 3a 41 44 25 2b 3d 31  |$+.(?AD%):AD%+=1|
000122f0  3a ce 3a 3d 4e 24 0d 54  10 69 dd f2 73 70 72 69  |:.:=N$.T.i..spri|
00012300  74 65 73 61 76 65 6f 6b  3a 41 24 3d a4 67 69 28  |tesaveok:A$=.gi(|
00012310  37 2c 36 29 3a e7 20 a7  41 24 2c 22 2e 22 29 3d  |7,6):. .A$,".")=|
00012320  30 20 8c 20 f2 6d 65 73  73 61 67 65 28 34 2c 22  |0 . .message(4,"|
00012330  54 6f 20 73 61 76 65 2c  20 64 72 61 67 20 74 68  |To save, drag th|
00012340  65 20 69 63 6f 6e 20 74  6f 20 61 20 64 69 72 65  |e icon to a dire|
00012350  63 74 6f 72 79 20 76 69  65 77 65 72 2e 22 29 0d  |ctory viewer.").|
00012360  54 1a 05 e1 0d 54 2e 4b  dd a4 67 65 74 6e 61 6d  |T....T.K..getnam|
00012370  65 3a 57 24 3d 22 22 3a  50 25 3d 42 4c 4b 25 2b  |e:W$="":P%=BLK%+|
00012380  34 34 3a c8 95 20 3f 50  25 3c 3e 30 20 80 20 3f  |44:.. ?P%<>0 . ?|
00012390  50 25 3c 3e 31 33 3a 57  24 3d 57 24 2b bd 28 3f  |P%<>13:W$=W$+.(?|
000123a0  50 25 29 3a 50 25 2b 3d  31 3a ce 3a 3d 57 24 0d  |P%):P%+=1:.:=W$.|
000123b0  54 42 7f dd f2 64 74 6c  6f 61 64 73 65 74 3a 41  |TB...dtloadset:A|
000123c0  24 3d a4 67 65 74 6e 61  6d 65 3a 42 4c 4b 25 21  |$=.getname:BLK%!|
000123d0  31 32 3d 42 4c 4b 25 21  38 3a 42 4c 4b 25 21 31  |12=BLK%!8:BLK%!1|
000123e0  36 3d 34 3a 21 42 4c 4b  25 3d 36 34 3a c8 99 20  |6=4:!BLK%=64:.. |
000123f0  22 57 69 6d 70 5f 53 65  6e 64 4d 65 73 73 61 67  |"Wimp_SendMessag|
00012400  65 22 2c 31 37 2c 42 4c  4b 25 2c 42 4c 4b 25 21  |e",17,BLK%,BLK%!|
00012410  34 3a f2 73 69 28 33 34  2c 36 2c 41 24 29 3a f2  |4:.si(34,6,A$):.|
00012420  6c 6f 61 64 73 65 74 73  28 41 24 29 3a e1 0d 54  |loadsets(A$):..T|
00012430  56 0f dd f2 6c 6f 61 64  28 46 54 25 29 0d 54 60  |V...load(FT%).T`|
00012440  56 41 24 3d a4 67 65 74  6e 61 6d 65 3a 42 4c 4b  |VA$=.getname:BLK|
00012450  25 21 31 32 3d 42 4c 4b  25 21 38 3a 42 4c 4b 25  |%!12=BLK%!8:BLK%|
00012460  21 31 36 3d 34 3a 21 42  4c 4b 25 3d 36 34 3a c8  |!16=4:!BLK%=64:.|
00012470  99 20 22 57 69 6d 70 5f  53 65 6e 64 4d 65 73 73  |. "Wimp_SendMess|
00012480  61 67 65 22 2c 31 37 2c  42 4c 4b 25 2c 42 4c 4b  |age",17,BLK%,BLK|
00012490  25 21 34 0d 54 6a 17 46  25 3d ad 28 41 24 29 3a  |%!4.Tj.F%=.(A$):|
000124a0  e7 20 46 25 3d 30 20 8c  20 e1 0d 54 74 23 54 24  |. F%=0 . ..Tt#T$|
000124b0  3d bd 28 9a 23 46 25 29  2b bd 28 9a 23 46 25 29  |=.(.#F%)+.(.#F%)|
000124c0  2b bd 28 9a 23 46 25 29  3a d9 23 46 25 0d 54 7e  |+.(.#F%):.#F%.T~|
000124d0  2d e7 20 54 24 3d 22 53  45 54 22 20 8c 20 f2 73  |-. T$="SET" . .s|
000124e0  69 28 33 34 2c 36 2c 41  24 29 3a f2 6c 6f 61 64  |i(34,6,A$):.load|
000124f0  73 65 74 73 28 41 24 29  3a e1 0d 54 88 0f f2 73  |sets(A$):..T...s|
00012500  69 28 30 2c 36 2c 41 24  29 0d 54 92 05 e1 0d 54  |i(0,6,A$).T....T|
00012510  a6 13 dd f2 71 61 74 6c  6f 61 64 28 53 24 29 3a  |....qatload(S$):|
00012520  e1 0d 54 ba 04 0d 54 c4  15 dd f2 6c 6f 61 64 70  |..T...T....loadp|
00012530  69 63 28 46 54 25 2c 53  24 29 0d 54 ce 05 e1 0d  |ic(FT%,S$).T....|
00012540  54 e2 0b dd f2 63 68 61  72 73 0d 54 ec eb ef 32  |T....chars.T...2|
00012550  33 2c 32 34 38 2c 30 2c  30 2c 30 2c 32 35 35 2c  |3,248,0,0,0,255,|
00012560  32 35 35 2c 30 2c 30 2c  30 3a ef 32 33 2c 32 34  |255,0,0,0:.23,24|
00012570  39 2c 30 2c 30 2c 31 32  36 2c 32 35 35 2c 32 35  |9,0,0,126,255,25|
00012580  35 2c 31 32 36 2c 30 2c  30 3a ef 32 33 2c 32 35  |5,126,0,0:.23,25|
00012590  30 2c 30 2c 36 30 2c 31  32 36 2c 32 35 35 2c 32  |0,0,60,126,255,2|
000125a0  35 35 2c 31 32 36 2c 36  30 2c 30 3a ef 32 33 2c  |55,126,60,0:.23,|
000125b0  32 35 31 2c 36 30 2c 31  32 36 2c 32 35 35 2c 32  |251,60,126,255,2|
000125c0  35 35 2c 32 35 35 2c 32  35 35 2c 31 32 36 2c 36  |55,255,255,126,6|
000125d0  30 3a ef 32 33 2c 32 35  32 2c 32 34 2c 36 30 2c  |0:.23,252,24,60,|
000125e0  31 32 36 2c 31 32 36 2c  31 32 36 2c 31 32 36 2c  |126,126,126,126,|
000125f0  36 30 2c 32 34 3a ef 32  33 2c 32 35 33 2c 32 34  |60,24:.23,253,24|
00012600  2c 36 30 2c 36 30 2c 36  30 2c 36 30 2c 36 30 2c  |,60,60,60,60,60,|
00012610  36 30 2c 32 34 3a ef 32  33 2c 32 35 34 2c 32 34  |60,24:.23,254,24|
00012620  2c 32 34 2c 32 34 2c 32  34 2c 32 34 2c 32 34 2c  |,24,24,24,24,24,|
00012630  32 34 2c 32 34 0d 54 f6  05 e1 0d 55 0a 3e dd f2  |24,24.T....U.>..|
00012640  62 61 63 6b 75 70 70 69  63 3a 21 56 41 52 53 3d  |backuppic:!VARS=|
00012650  50 49 43 25 3a 56 41 52  53 21 34 3d 53 50 42 55  |PIC%:VARS!4=SPBU|
00012660  46 25 3a 41 25 3d 56 41  52 53 3a d6 20 62 61 63  |F%:A%=VARS:. bac|
00012670  6b 75 70 70 69 63 3a e1  0d 55 1e 4d dd f2 66 69  |kuppic:..U.M..fi|
00012680  6c 6c 6d 61 73 6b 3a 56  41 52 53 21 38 3d 53 50  |llmask:VARS!8=SP|
00012690  42 55 46 25 3a 56 41 52  53 21 31 32 3d 54 52 41  |BUF%:VARS!12=TRA|
000126a0  53 50 25 3a 56 41 52 53  21 31 36 3d 42 54 43 25  |SP%:VARS!16=BTC%|
000126b0  3a 41 25 3d 56 41 52 53  3a d6 20 66 69 6c 6c 6d  |:A%=VARS:. fillm|
000126c0  61 73 6b 3a e1 0d 55 32  0e dd a4 6c 65 61 66 28  |ask:..U2...leaf(|
000126d0  46 24 29 0d 55 3c 16 e7  20 a7 46 24 2c 22 2e 22  |F$).U<.. .F$,"."|
000126e0  29 3d 30 20 8c 20 3d 46  24 0d 55 46 09 54 24 3d  |)=0 . =F$.UF.T$=|
000126f0  22 22 0d 55 50 0b 4c 50  25 3d a9 46 24 0d 55 5a  |"".UP.LP%=.F$.UZ|
00012700  16 c8 95 20 c1 46 24 2c  4c 50 25 2c 31 29 3c 3e  |... .F$,LP%,1)<>|
00012710  22 2e 22 0d 55 64 14 54  24 3d c1 46 24 2c 4c 50  |".".Ud.T$=.F$,LP|
00012720  25 2c 31 29 2b 54 24 0d  55 6e 0a 4c 50 25 2d 3d  |%,1)+T$.Un.LP%-=|
00012730  31 0d 55 78 05 ce 0d 55  82 07 3d 54 24 0d 55 96  |1.Ux...U..=T$.U.|
00012740  10 dd f2 73 70 62 75 66  28 42 53 25 29 0d 55 a0  |...spbuf(BS%).U.|
00012750  2b e7 20 42 53 25 3d 30  20 8c 20 c8 99 20 22 57  |+. BS%=0 . .. "W|
00012760  69 6d 70 5f 53 6c 6f 74  53 69 7a 65 22 2c 43 55  |imp_SlotSize",CU|
00012770  53 4c 25 2c 2d 31 3a e1  0d 55 aa 23 c8 99 20 22  |SL%,-1:..U.#.. "|
00012780  57 69 6d 70 5f 53 6c 6f  74 53 69 7a 65 22 2c 43  |Wimp_SlotSize",C|
00012790  55 53 4c 25 2b 42 53 25  2c 2d 31 0d 55 b4 23 c8  |USL%+BS%,-1.U.#.|
000127a0  99 20 22 57 69 6d 70 5f  53 6c 6f 74 53 69 7a 65  |. "Wimp_SlotSize|
000127b0  22 2c 2d 31 2c 2d 31 20  b8 20 53 50 4c 25 0d 55  |",-1,-1 . SPL%.U|
000127c0  be 4c e7 20 53 50 4c 25  3c 28 43 55 53 4c 25 2b  |.L. SPL%<(CUSL%+|
000127d0  42 53 25 29 20 8c 20 c8  99 20 22 57 69 6d 70 5f  |BS%) . .. "Wimp_|
000127e0  53 6c 6f 74 53 69 7a 65  22 2c 43 55 53 4c 25 2c  |SlotSize",CUSL%,|
000127f0  2d 31 3a 53 50 4e 45 25  3d 42 53 25 3a 51 25 3d  |-1:SPNE%=BS%:Q%=|
00012800  b9 3a e1 20 8b 20 51 25  3d a3 0d 55 c8 0f 21 53  |.:. . Q%=..U..!S|
00012810  50 42 55 46 25 3d 42 53  25 0d 55 d2 0f 53 50 42  |PBUF%=BS%.U..SPB|
00012820  55 46 25 21 38 3d 31 36  0d 55 dc 14 c8 99 26 32  |UF%!8=16.U....&2|
00012830  45 2c 32 36 35 2c 53 50  42 55 46 25 0d 55 e6 0e  |E,265,SPBUF%.U..|
00012840  53 50 53 49 5a 25 3d 42  53 25 0d 55 f0 05 e1 0d  |SPSIZ%=BS%.U....|
00012850  56 04 7c dd f2 73 70 62  75 66 65 72 72 3a f2 6b  |V.|..spbuferr:.k|
00012860  69 6c 6c 66 3a 46 55 53  54 25 3d 2d 31 3a 46 55  |illf:FUST%=-1:FU|
00012870  53 45 25 3d 2d 31 3a f2  77 69 6e 64 6e 61 6d 65  |SE%=-1:.windname|
00012880  28 32 2c 50 49 43 24 29  3a f2 6d 65 73 73 61 67  |(2,PIC$):.messag|
00012890  65 28 30 2c 22 4e 6f 20  72 6f 6f 6d 20 74 6f 20  |e(0,"No room to |
000128a0  73 74 6f 72 65 20 73 70  72 69 74 65 2e 20 28 22  |store sprite. ("|
000128b0  2b c3 28 53 50 4e 45 25  29 2b 22 20 62 79 74 65  |+.(SPNE%)+" byte|
000128c0  73 20 6e 65 65 64 65 64  29 22 29 0d 56 18 1d dd  |s needed)").V...|
000128d0  a4 73 70 72 69 74 65 73  69 7a 65 28 44 58 25 2c  |.spritesize(DX%,|
000128e0  44 59 25 2c 50 4c 25 29  0d 56 22 21 44 58 25 3d  |DY%,PL%).V"!DX%=|
000128f0  94 28 44 58 25 29 20 81  20 32 3a 44 59 25 3d 94  |.(DX%) . 2:DY%=.|
00012900  28 44 59 25 29 20 81 20  34 0d 56 2c 27 e7 20 28  |(DY%) . 4.V,'. (|
00012910  44 58 25 20 83 20 34 29  3e 30 20 8c 20 44 58 25  |DX% . 4)>0 . DX%|
00012920  3d 28 28 44 58 25 20 81  20 34 29 2b 31 29 2a 34  |=((DX% . 4)+1)*4|
00012930  0d 56 36 0b 44 58 25 2b  3d 31 36 0d 56 40 1b 3d  |.V6.DX%+=16.V@.=|
00012940  28 44 58 25 2a 44 59 25  2a 28 50 4c 25 2b 31 29  |(DX%*DY%*(PL%+1)|
00012950  29 2b 31 30 32 34 0d 56  54 09 dd f2 6b 65 79 0d  |)+1024.VT...key.|
00012960  56 5e 27 4b 57 48 25 3d  21 42 4c 4b 25 3a 4b 49  |V^'KWH%=!BLK%:KI|
00012970  43 25 3d 42 4c 4b 25 21  34 3a 4b 45 59 25 3d 42  |C%=BLK%!4:KEY%=B|
00012980  4c 4b 25 21 32 34 0d 56  68 0a 50 4f 4b 25 3d b9  |LK%!24.Vh.POK%=.|
00012990  0d 56 72 0d c8 8e 20 4b  57 48 25 20 ca 0d 56 7c  |.Vr... KWH% ..V||
000129a0  17 c9 20 48 41 4e 44 25  28 35 29 3a f2 62 72 75  |.. HAND%(5):.bru|
000129b0  73 6b 65 79 0d 56 86 17  c9 20 48 41 4e 44 25 28  |skey.V... HAND%(|
000129c0  36 29 3a f2 67 72 69 64  6b 65 79 0d 56 90 17 c9  |6):.gridkey.V...|
000129d0  20 48 41 4e 44 25 28 38  29 3a f2 61 72 65 61 6b  | HAND%(8):.areak|
000129e0  65 79 0d 56 9a 05 cb 0d  56 a4 15 e7 20 50 4f 4b  |ey.V....V... POK|
000129f0  25 20 8c 20 f2 68 6f 74  6b 65 79 73 0d 56 ae 25  |% . .hotkeys.V.%|
00012a00  e7 20 50 4f 4b 25 20 8c  20 c8 99 22 57 69 6d 70  |. POK% . .."Wimp|
00012a10  5f 50 72 6f 63 65 73 73  4b 65 79 22 2c 4b 45 59  |_ProcessKey",KEY|
00012a20  25 0d 56 b8 05 e1 0d 56  cc 0c dd f2 72 6f 74 6b  |%.V....V....rotk|
00012a30  65 79 0d 56 d6 05 e1 0d  56 ea 0f dd f2 74 6f 6f  |ey.V....V....too|
00012a40  6c 63 6c 69 63 6b 0d 56  f4 05 e1 0d 57 08 0d dd  |lclick.V....W...|
00012a50  f2 68 6f 74 6b 65 79 73  0d 57 12 0d c8 8e 20 4b  |.hotkeys.W.... K|
00012a60  45 59 25 20 ca 0d 57 1c  1a c9 20 26 31 38 31 3a  |EY% ..W... &181:|
00012a70  50 4f 4b 25 3d a3 3a f2  6f 70 65 6e 70 61 6c 0d  |POK%=.:.openpal.|
00012a80  57 26 1e c9 20 26 31 38  33 3a 50 4f 4b 25 3d a3  |W&.. &183:POK%=.|
00012a90  3a f2 6f 70 65 6e 77 69  6e 64 28 30 29 0d 57 30  |:.openwind(0).W0|
00012aa0  30 c9 20 26 31 38 38 3a  50 4f 4b 25 3d a3 3a f2  |0. &188:POK%=.:.|
00012ab0  6e 66 28 22 50 61 69 6e  74 62 72 75 73 68 22 2c  |nf("Paintbrush",|
00012ac0  34 2c 35 29 3a f2 74 6b  68 28 31 30 29 0d 57 3a  |4,5):.tkh(10).W:|
00012ad0  1f c9 20 26 31 38 39 3a  50 4f 4b 25 3d a3 3a f2  |.. &189:POK%=.:.|
00012ae0  6e 66 28 22 22 2c 2d 31  2c 2d 31 29 0d 57 4e 34  |nf("",-1,-1).WN4|
00012af0  c9 20 26 31 43 42 3a 50  4f 4b 25 3d a3 3a e7 20  |. &1CB:POK%=.:. |
00012b00  4c 41 4f 50 57 49 25 3c  3e 2d 31 20 8c 20 f2 6f  |LAOPWI%<>-1 . .o|
00012b10  70 65 6e 77 69 6e 64 28  4c 41 4f 50 57 49 25 29  |penwind(LAOPWI%)|
00012b20  0d 57 62 2b c9 20 26 31  39 38 3a 50 4f 4b 25 3d  |.Wb+. &198:POK%=|
00012b30  a3 3a f2 6e 66 28 22 57  69 72 65 20 65 6c 6c 69  |.:.nf("Wire elli|
00012b40  70 73 65 22 2c 31 31 2c  2d 31 29 0d 57 6c 3a c9  |pse",11,-1).Wl:.|
00012b50  20 26 31 39 39 3a 50 4f  4b 25 3d a3 3a f2 6e 66  | &199:POK%=.:.nf|
00012b60  28 22 57 69 72 65 20 70  61 72 61 6c 6c 65 6c 6f  |("Wire parallelo|
00012b70  67 72 61 6d 22 2c 31 33  2c 2d 31 29 3a f2 74 6b  |gram",13,-1):.tk|
00012b80  68 28 31 37 29 0d 57 80  5e c9 20 26 31 44 42 3a  |h(17).W.^. &1DB:|
00012b90  50 4f 4b 25 3d a3 3a f2  73 69 28 36 2c 31 39 2c  |POK%=.:.si(6,19,|
00012ba0  22 31 22 29 3a f2 73 69  28 36 2c 32 31 2c 22 31  |"1"):.si(6,21,"1|
00012bb0  22 29 3a f2 73 69 28 36  2c 32 33 2c 22 30 22 29  |"):.si(6,23,"0")|
00012bc0  3a f2 73 69 28 36 2c 32  35 2c 22 30 22 29 3a 4d  |:.si(6,25,"0"):M|
00012bd0  4f 55 49 43 25 3d 32 39  3a f2 67 72 69 64 63 6c  |OUIC%=29:.gridcl|
00012be0  69 63 6b 0d 57 8a 29 c9  20 26 31 44 43 3a 50 4f  |ick.W.). &1DC:PO|
00012bf0  4b 25 3d a3 3a 47 52 43  4f 25 3d 2d 31 3a f2 66  |K%=.:GRCO%=-1:.f|
00012c00  6f 72 63 65 64 72 61 77  6d 61 69 6e 0d 57 94 51  |orcedrawmain.W.Q|
00012c10  c9 20 26 31 41 31 2c 26  31 41 32 2c 26 31 41 33  |. &1A1,&1A2,&1A3|
00012c20  2c 26 31 41 34 3a 50 4f  4b 25 3d a3 3a f2 6c 6f  |,&1A4:POK%=.:.lo|
00012c30  61 64 70 69 63 28 26 43  31 31 2c 22 3c 49 6d 61  |adpic(&C11,"<Ima|
00012c40  67 65 72 79 24 44 69 72  3e 2e 58 50 49 43 22 2b  |gery$Dir>.XPIC"+|
00012c50  c3 28 4b 45 59 25 2d 26  31 41 30 29 29 0d 57 9e  |.(KEY%-&1A0)).W.|
00012c60  2b c9 20 26 31 45 41 3a  50 4f 4b 25 3d a3 3a f2  |+. &1EA:POK%=.:.|
00012c70  6e 66 28 22 53 6f 6c 69  64 20 73 65 63 74 6f 72  |nf("Solid sector|
00012c80  22 2c 31 36 2c 2d 31 29  0d 57 b2 05 cb 0d 57 bc  |",16,-1).W....W.|
00012c90  05 e1 0d 57 d0 0d dd f2  7a 6f 6f 6d 74 6f 67 0d  |...W....zoomtog.|
00012ca0  57 da 38 50 4f 49 25 21  31 32 30 3d 48 41 4e 44  |W.8POI%!120=HAND|
00012cb0  25 28 32 29 3a c8 99 20  22 57 69 6d 70 5f 47 65  |%(2):.. "Wimp_Ge|
00012cc0  74 57 69 6e 64 6f 77 53  74 61 74 65 22 2c 2c 50  |tWindowState",,P|
00012cd0  4f 49 25 2b 31 32 30 0d  57 e4 10 e7 20 5a 4f 4f  |OI%+120.W... ZOO|
00012ce0  4d 25 3c 3e 31 20 8c 0d  57 ee 0b 5a 4f 4f 4d 25  |M%<>1 ..W..ZOOM%|
00012cf0  3d 31 0d 57 f8 05 cc 0d  58 02 28 5a 4f 4f 4d 25  |=1.W....X.(ZOOM%|
00012d00  3d bb a4 67 69 28 33 33  2c 38 29 3a e7 20 5a 4f  |=..gi(33,8):. ZO|
00012d10  4f 4d 25 3d 30 20 8c 20  5a 4f 4f 4d 25 3d 31 0d  |OM%=0 . ZOOM%=1.|
00012d20  58 0c 05 cd 0d 58 16 2e  21 42 4c 4b 25 3d 48 41  |X....X..!BLK%=HA|
00012d30  4e 44 25 28 32 29 3a c8  99 20 22 57 69 6d 70 5f  |ND%(2):.. "Wimp_|
00012d40  43 6c 6f 73 65 57 69 6e  64 6f 77 22 2c 2c 42 4c  |CloseWindow",,BL|
00012d50  4b 25 0d 58 20 5c 21 42  4c 4b 25 3d 30 3a 42 4c  |K%.X \!BLK%=0:BL|
00012d60  4b 25 21 34 3d 2d 31 30  32 33 2a 5a 4f 4f 4d 25  |K%!4=-1023*ZOOM%|
00012d70  3a 42 4c 4b 25 21 38 3d  31 32 37 39 2a 5a 4f 4f  |:BLK%!8=1279*ZOO|
00012d80  4d 25 3a 42 4c 4b 25 21  31 32 3d 30 3a c8 99 20  |M%:BLK%!12=0:.. |
00012d90  22 57 69 6d 70 5f 53 65  74 45 78 74 65 6e 74 22  |"Wimp_SetExtent"|
00012da0  2c 48 41 4e 44 25 28 32  29 2c 42 4c 4b 25 0d 58  |,HAND%(2),BLK%.X|
00012db0  2a 8a 21 42 4c 4b 25 3d  48 41 4e 44 25 28 32 29  |*.!BLK%=HAND%(2)|
00012dc0  3a 42 4c 4b 25 21 34 3d  57 4c 58 25 3a 42 4c 4b  |:BLK%!4=WLX%:BLK|
00012dd0  25 21 38 3d 57 4c 59 25  3a 42 4c 4b 25 21 31 32  |%!8=WLY%:BLK%!12|
00012de0  3d 57 55 58 25 3a 42 4c  4b 25 21 31 36 3d 57 55  |=WUX%:BLK%!16=WU|
00012df0  59 25 3a 42 4c 4b 25 21  32 30 3d 57 53 58 25 3a  |Y%:BLK%!20=WSX%:|
00012e00  42 4c 4b 25 21 32 34 3d  57 53 59 25 3a 42 4c 4b  |BLK%!24=WSY%:BLK|
00012e10  25 21 32 38 3d 50 4f 49  25 21 31 34 38 3a c8 99  |%!28=POI%!148:..|
00012e20  20 22 57 69 6d 70 5f 4f  70 65 6e 57 69 6e 64 6f  | "Wimp_OpenWindo|
00012e30  77 22 2c 2c 42 4c 4b 25  0d 58 34 57 57 4c 58 25  |w",,BLK%.X4WWLX%|
00012e40  3d 50 4f 49 25 21 31 32  34 3a 57 4c 59 25 3d 50  |=POI%!124:WLY%=P|
00012e50  4f 49 25 21 31 32 38 3a  57 55 58 25 3d 50 4f 49  |OI%!128:WUX%=POI|
00012e60  25 21 31 33 32 3a 57 55  59 25 3d 50 4f 49 25 21  |%!132:WUY%=POI%!|
00012e70  31 33 36 3a 57 53 58 25  3d 50 4f 49 25 21 31 34  |136:WSX%=POI%!14|
00012e80  30 3a 57 53 59 25 3d 50  4f 49 25 21 31 34 34 0d  |0:WSY%=POI%!144.|
00012e90  58 3e 14 f2 66 6f 72 63  65 64 72 61 77 6d 61 69  |X>..forcedrawmai|
00012ea0  6e 3a e1 0d 58 52 09 dd  f2 6f 70 31 0d 58 5c 05  |n:..XR...op1.X\.|
00012eb0  e1 0d 58 70 0d dd f2 61  69 72 62 6b 65 79 0d 58  |..Xp...airbkey.X|
00012ec0  7a 27 f2 69 63 66 62 28  34 2c 31 37 2c 31 39 2c  |z'.icfb(4,17,19,|
00012ed0  31 39 29 3a f2 69 63 66  62 28 34 2c 31 39 2c 31  |19):.icfb(4,19,1|
00012ee0  37 2c 31 37 29 0d 58 84  05 e1 0d 58 98 0d dd f2  |7,17).X....X....|
00012ef0  62 72 75 73 6b 65 79 0d  58 a2 15 f2 69 63 66 62  |bruskey.X...icfb|
00012f00  28 35 2c 32 33 2c 32 34  2c 31 39 29 0d 58 ac 15  |(5,23,24,19).X..|
00012f10  f2 69 63 66 62 28 35 2c  32 34 2c 32 30 2c 32 33  |.icfb(5,24,20,23|
00012f20  29 0d 58 b6 15 f2 69 63  66 62 28 35 2c 32 30 2c  |).X...icfb(5,20,|
00012f30  31 39 2c 32 34 29 0d 58  c0 15 f2 69 63 66 62 28  |19,24).X...icfb(|
00012f40  35 2c 31 39 2c 32 33 2c  32 30 29 0d 58 ca 36 e7  |5,19,23,20).X.6.|
00012f50  20 4b 49 43 25 3d 31 39  20 80 20 4b 45 59 25 3d  | KIC%=19 . KEY%=|
00012f60  31 33 20 8c 20 50 4f 4b  25 3d a3 3a 4d 4f 55 49  |13 . POK%=.:MOUI|
00012f70  43 25 3d 32 36 3a f2 62  72 75 73 68 63 6c 69 63  |C%=26:.brushclic|
00012f80  6b 0d 58 d4 05 e1 0d 58  e8 0d dd f2 67 72 69 64  |k.X....X....grid|
00012f90  6b 65 79 0d 58 f2 15 f2  69 63 66 62 28 36 2c 31  |key.X...icfb(6,1|
00012fa0  39 2c 32 31 2c 32 35 29  0d 58 fc 15 f2 69 63 66  |9,21,25).X...icf|
00012fb0  62 28 36 2c 32 31 2c 32  33 2c 31 39 29 0d 59 06  |b(6,21,23,19).Y.|
00012fc0  15 f2 69 63 66 62 28 36  2c 32 33 2c 32 35 2c 32  |..icfb(6,23,25,2|
00012fd0  31 29 0d 59 10 15 f2 69  63 66 62 28 36 2c 32 35  |1).Y...icfb(6,25|
00012fe0  2c 31 39 2c 32 33 29 0d  59 1a 35 e7 20 4b 49 43  |,19,23).Y.5. KIC|
00012ff0  25 3d 32 35 20 80 20 4b  45 59 25 3d 31 33 20 8c  |%=25 . KEY%=13 .|
00013000  20 50 4f 4b 25 3d a3 3a  4d 4f 55 49 43 25 3d 32  | POK%=.:MOUIC%=2|
00013010  39 3a f2 67 72 69 64 63  6c 69 63 6b 0d 59 24 05  |9:.gridclick.Y$.|
00013020  e1 0d 59 38 0d dd f2 61  72 65 61 6b 65 79 0d 59  |..Y8...areakey.Y|
00013030  42 15 f2 69 63 66 62 28  38 2c 31 37 2c 31 38 2c  |B..icfb(8,17,18,|
00013040  32 30 29 0d 59 4c 15 f2  69 63 66 62 28 38 2c 31  |20).YL..icfb(8,1|
00013050  38 2c 31 39 2c 31 37 29  0d 59 56 15 f2 69 63 66  |8,19,17).YV..icf|
00013060  62 28 38 2c 31 39 2c 32  30 2c 31 38 29 0d 59 60  |b(8,19,20,18).Y`|
00013070  15 f2 69 63 66 62 28 38  2c 32 30 2c 31 37 2c 31  |..icfb(8,20,17,1|
00013080  39 29 0d 59 6a 35 e7 20  4b 49 43 25 3d 32 30 20  |9).Yj5. KIC%=20 |
00013090  80 20 4b 45 59 25 3d 31  33 20 8c 20 50 4f 4b 25  |. KEY%=13 . POK%|
000130a0  3d a3 3a 4d 4f 55 49 43  25 3d 31 36 3a f2 67 72  |=.:MOUIC%=16:.gr|
000130b0  61 62 63 6c 69 63 6b 0d  59 74 05 e1 0d 59 88 0d  |abclick.Yt...Y..|
000130c0  dd f2 74 65 78 74 6b 65  79 0d 59 92 05 e1 0d 59  |..textkey.Y....Y|
000130d0  a6 0d dd f2 66 72 61 6d  6b 65 79 0d 59 b0 16 f2  |....framkey.Y...|
000130e0  69 63 66 62 28 31 39 2c  31 30 2c 31 32 2c 31 32  |icfb(19,10,12,12|
000130f0  29 0d 59 ba 16 f2 69 63  66 62 28 31 39 2c 31 32  |).Y...icfb(19,12|
00013100  2c 31 30 2c 31 30 29 0d  59 c4 36 e7 20 4b 45 59  |,10,10).Y.6. KEY|
00013110  25 3d 31 33 20 80 20 4b  49 43 25 3d 31 32 20 8c  |%=13 . KIC%=12 .|
00013120  20 50 4f 4b 25 3d a3 3a  4d 4f 55 49 43 25 3d 31  | POK%=.:MOUIC%=1|
00013130  34 3a f2 66 72 61 6d 65  63 6c 69 63 6b 0d 59 ce  |4:.frameclick.Y.|
00013140  05 e1 0d 59 e2 1d dd f2  69 63 66 62 28 57 48 25  |...Y....icfb(WH%|
00013150  2c 49 43 25 2c 49 43 46  25 2c 49 43 42 25 29 0d  |,IC%,ICF%,ICB%).|
00013160  59 ec 41 e7 20 4b 49 43  25 3d 49 43 25 20 80 20  |Y.A. KIC%=IC% . |
00013170  28 4b 45 59 25 3d 26 31  38 45 20 84 20 4b 45 59  |(KEY%=&18E . KEY|
00013180  25 3d 31 33 29 20 8c 20  50 4f 4b 25 3d a3 3a f2  |%=13) . POK%=.:.|
00013190  63 74 69 63 28 57 48 25  2c 49 43 46 25 29 3a e1  |ctic(WH%,ICF%):.|
000131a0  0d 59 f6 33 e7 20 4b 49  43 25 3d 49 43 25 20 80  |.Y.3. KIC%=IC% .|
000131b0  20 4b 45 59 25 3d 26 31  38 46 20 8c 20 50 4f 4b  | KEY%=&18F . POK|
000131c0  25 3d a3 3a f2 63 74 69  63 28 57 48 25 2c 49 43  |%=.:.ctic(WH%,IC|
000131d0  42 25 29 0d 5a 00 05 e1  0d 5a 14 5a dd f2 63 74  |B%).Z....Z.Z..ct|
000131e0  69 63 28 57 48 25 2c 49  43 25 29 3a 41 24 3d a4  |ic(WH%,IC%):A$=.|
000131f0  67 69 28 57 48 25 2c 49  43 25 29 3a c8 99 20 22  |gi(WH%,IC%):.. "|
00013200  57 69 6d 70 5f 53 65 74  43 61 72 65 74 50 6f 73  |Wimp_SetCaretPos|
00013210  69 74 69 6f 6e 22 2c 48  41 4e 44 25 28 57 48 25  |ition",HAND%(WH%|
00013220  29 2c 49 43 25 2c 2c 2c  2d 31 2c a9 28 41 24 29  |),IC%,,,-1,.(A$)|
00013230  3a e1 0d 5a 28 23 dd f2  70 61 74 63 68 28 50 4e  |:..Z(#..patch(PN|
00013240  25 29 3a e7 20 4c 41 50  41 54 43 48 25 3d 50 4e  |%):. LAPATCH%=PN|
00013250  25 20 8c 20 e1 0d 5a 32  3b ff 28 22 4c 4f 41 44  |% . ..Z2;.("LOAD|
00013260  20 3c 49 6d 61 67 65 72  79 24 44 69 72 3e 2e 4f  | <Imagery$Dir>.O|
00013270  76 65 72 6c 61 79 73 2e  22 2b c3 50 4e 25 2b 22  |verlays."+.PN%+"|
00013280  20 22 2b c3 7e 28 50 41  54 43 48 25 2d 32 29 29  | "+.~(PATCH%-2))|
00013290  0d 5a 3c 10 4c 41 50 41  54 43 48 25 3d 50 4e 25  |.Z<.LAPATCH%=PN%|
000132a0  0d 5a 46 05 e1 0d 5a 5a  20 dd f2 7a 6f 6f 6d 63  |.ZF...ZZ ..zoomc|
000132b0  6c 69 63 6b 3a 49 52 50  25 3d a4 70 65 72 63 28  |lick:IRP%=.perc(|
000132c0  33 33 2c 38 29 0d 5a 64  1c f2 61 72 72 6f 77 73  |33,8).Zd..arrows|
000132d0  28 33 33 2c 35 2c 36 2c  38 2c 31 2c 32 35 2c 31  |(33,5,6,8,1,25,1|
000132e0  29 0d 5a 6e 38 e7 20 4d  4f 55 49 43 25 3e 32 34  |).Zn8. MOUIC%>24|
000132f0  20 80 20 4d 4f 55 49 43  25 3c 33 33 20 8c 20 f2  | . MOUIC%<33 . .|
00013300  73 69 28 33 33 2c 38 2c  c3 28 28 4d 4f 55 49 43  |si(33,8,.((MOUIC|
00013310  25 2d 32 34 29 2a 32 29  29 0d 5a 78 5b 49 47 50  |%-24)*2)).Zx[IGP|
00013320  25 3d a4 70 65 72 63 28  33 33 2c 38 29 3a e7 20  |%=.perc(33,8):. |
00013330  49 52 50 25 3c 3e 49 47  50 25 20 8c 20 5a 4f 4f  |IRP%<>IGP% . ZOO|
00013340  4d 53 25 3d 49 47 50 25  2a 34 3a f2 67 65 74 73  |MS%=IGP%*4:.gets|
00013350  6c 6f 72 28 33 33 2c 33  39 29 3a f2 72 65 64 72  |lor(33,39):.redr|
00013360  61 77 73 6c 69 64 28 33  33 2c 31 31 2c 49 47 50  |awslid(33,11,IGP|
00013370  25 2a 34 29 0d 5a 82 39  e7 20 4d 4f 55 49 43 25  |%*4).Z.9. MOUIC%|
00013380  3d 33 39 20 8c 20 5a 4f  4f 4d 53 25 3d a4 73 6c  |=39 . ZOOMS%=.sl|
00013390  69 64 68 69 74 28 33 33  2c 33 39 2c 4d 4f 55 58  |idhit(33,39,MOUX|
000133a0  25 2c 4d 4f 55 59 25 2c  31 31 2c 34 29 0d 5a 8c  |%,MOUY%,11,4).Z.|
000133b0  14 e7 20 4d 4f 55 49 43  25 3c 3e 34 32 20 8c 20  |.. MOUIC%<>42 . |
000133c0  e1 0d 5a 96 2a 5a 4f 4f  4d 25 3d bb 28 a4 67 69  |..Z.*ZOOM%=.(.gi|
000133d0  28 33 33 2c 38 29 29 3a  e7 20 5a 4f 4f 4d 25 3c  |(33,8)):. ZOOM%<|
000133e0  31 20 8c 20 5a 4f 4f 4d  25 3d 31 0d 5a a0 1c f2  |1 . ZOOM%=1.Z...|
000133f0  7a 6f 6f 6d 73 69 7a 65  3a f2 66 6f 72 63 65 64  |zoomsize:.forced|
00013400  72 61 77 6d 61 69 6e 0d  5a aa 18 e7 20 4d 4f 55  |rawmain.Z... MOU|
00013410  42 25 3c 3e 31 20 8c 20  f2 6d 65 6e 6f 66 66 0d  |B%<>1 . .menoff.|
00013420  5a b4 05 e1 0d 5a c8 10  dd f2 72 65 64 72 61 77  |Z....Z....redraw|
00013430  7a 6f 6f 6d 0d 5a d2 27  c8 99 20 22 57 69 6d 70  |zoom.Z.'.. "Wimp|
00013440  5f 52 65 64 72 61 77 57  69 6e 64 6f 77 22 2c 2c  |_RedrawWindow",,|
00013450  42 4c 4b 25 20 b8 20 46  49 4e 25 0d 5a dc 2e 57  |BLK% . FIN%.Z..W|
00013460  4f 58 25 3d 42 4c 4b 25  21 34 2d 42 4c 4b 25 21  |OX%=BLK%!4-BLK%!|
00013470  32 30 3a 57 4f 59 25 3d  28 42 4c 4b 25 21 31 36  |20:WOY%=(BLK%!16|
00013480  2d 42 4c 4b 25 21 32 34  29 0d 5a e6 4c c8 95 20  |-BLK%!24).Z.L.. |
00013490  46 49 4e 25 3a f2 73 6c  69 64 70 6c 6f 74 28 33  |FIN%:.slidplot(3|
000134a0  33 2c 33 39 2c 5a 4f 4f  4d 53 25 2c 31 31 29 3a  |3,39,ZOOMS%,11):|
000134b0  c8 99 20 22 57 69 6d 70  5f 47 65 74 52 65 63 74  |.. "Wimp_GetRect|
000134c0  61 6e 67 6c 65 22 2c 2c  42 4c 4b 25 20 b8 20 46  |angle",,BLK% . F|
000134d0  49 4e 25 3a ce 0d 5a f0  05 e1 0d 5b 04 0f dd f2  |IN%:..Z....[....|
000134e0  72 65 64 72 61 77 72 67  62 0d 5b 0e 27 c8 99 20  |redrawrgb.[.'.. |
000134f0  22 57 69 6d 70 5f 52 65  64 72 61 77 57 69 6e 64  |"Wimp_RedrawWind|
00013500  6f 77 22 2c 2c 42 4c 4b  25 20 b8 20 46 49 4e 25  |ow",,BLK% . FIN%|
00013510  0d 5b 18 2e 57 4f 58 25  3d 42 4c 4b 25 21 34 2d  |.[..WOX%=BLK%!4-|
00013520  42 4c 4b 25 21 32 30 3a  57 4f 59 25 3d 28 42 4c  |BLK%!20:WOY%=(BL|
00013530  4b 25 21 31 36 2d 42 4c  4b 25 21 32 34 29 0d 5b  |K%!16-BLK%!24).[|
00013540  22 7b c8 95 20 46 49 4e  25 3a f2 73 6c 69 64 70  |"{.. FIN%:.slidp|
00013550  6c 6f 74 28 32 31 2c 33  30 2c 52 53 4c 25 2c 31  |lot(21,30,RSL%,1|
00013560  31 29 3a f2 73 6c 69 64  70 6c 6f 74 28 32 31 2c  |1):.slidplot(21,|
00013570  33 31 2c 47 53 4c 25 2c  31 30 29 3a f2 73 6c 69  |31,GSL%,10):.sli|
00013580  64 70 6c 6f 74 28 32 31  2c 33 32 2c 42 53 4c 25  |dplot(21,32,BSL%|
00013590  2c 38 29 3a c8 99 20 22  57 69 6d 70 5f 47 65 74  |,8):.. "Wimp_Get|
000135a0  52 65 63 74 61 6e 67 6c  65 22 2c 2c 42 4c 4b 25  |Rectangle",,BLK%|
000135b0  20 b8 20 46 49 4e 25 3a  ce 0d 5b 2c 05 e1 0d 5b  | . FIN%:..[,...[|
000135c0  40 1e dd f2 73 6c 69 64  70 6c 6f 74 28 57 48 25  |@...slidplot(WH%|
000135d0  2c 49 48 25 2c 56 25 2c  43 4f 25 29 0d 5b 4a 42  |,IH%,V%,CO%).[JB|
000135e0  21 49 43 42 4c 4b 25 3d  48 41 4e 44 25 28 57 48  |!ICBLK%=HAND%(WH|
000135f0  25 29 3a 49 43 42 4c 4b  25 21 34 3d 49 48 25 3a  |%):ICBLK%!4=IH%:|
00013600  c8 99 20 22 57 69 6d 70  5f 47 65 74 49 63 6f 6e  |.. "Wimp_GetIcon|
00013610  53 74 61 74 65 22 2c 2c  49 43 42 4c 4b 25 0d 5b  |State",,ICBLK%.[|
00013620  54 1b c8 99 20 22 57 69  6d 70 5f 53 65 74 43 6f  |T... "Wimp_SetCo|
00013630  6c 6f 75 72 22 2c 43 4f  25 0d 5b 5e 30 4d 58 25  |lour",CO%.[^0MX%|
00013640  3d 57 4f 58 25 2b 28 49  43 42 4c 4b 25 21 38 29  |=WOX%+(ICBLK%!8)|
00013650  2b 32 3a 4d 59 25 3d 57  4f 59 25 2b 28 49 43 42  |+2:MY%=WOY%+(ICB|
00013660  4c 4b 25 21 31 32 29 2b  34 0d 5b 68 5d c8 93 20  |LK%!12)+4.[h].. |
00013670  c8 90 20 4d 58 25 2c 4d  59 25 2c 56 25 2a 32 2c  |.. MX%,MY%,V%*2,|
00013680  31 35 3a e7 20 56 25 3c  31 30 30 20 8c 20 c8 99  |15:. V%<100 . ..|
00013690  20 22 57 69 6d 70 5f 53  65 74 43 6f 6c 6f 75 72  | "Wimp_SetColour|
000136a0  22 2c 31 3a c8 93 20 c8  90 20 4d 58 25 2b 28 56  |",1:.. .. MX%+(V|
000136b0  25 2a 32 29 2c 4d 59 25  2c 28 31 30 30 2d 56 25  |%*2),MY%,(100-V%|
000136c0  29 2a 32 2c 31 35 0d 5b  72 05 e1 0d 5b 86 26 dd  |)*2,15.[r...[.&.|
000136d0  a4 73 6c 69 64 68 69 74  28 57 48 25 2c 49 48 25  |.slidhit(WH%,IH%|
000136e0  2c 4d 58 25 2c 4d 59 25  2c 43 4f 25 2c 57 45 25  |,MX%,MY%,CO%,WE%|
000136f0  29 0d 5b 90 1b f2 67 65  74 73 6c 6f 72 28 57 48  |).[...getslor(WH|
00013700  25 2c 49 48 25 29 3a 4d  42 25 3d 34 0d 5b 9a 05  |%,IH%):MB%=4.[..|
00013710  f5 0d 5b a4 1c c8 97 20  c8 93 20 57 4f 58 25 2d  |..[.... .. WOX%-|
00013720  32 2c 57 4f 59 25 2c 32  30 32 2c 31 34 0d 5b ae  |2,WOY%,202,14.[.|
00013730  27 56 25 3d 28 28 4d 58  25 2d 28 57 4f 58 25 2d  |'V%=((MX%-(WOX%-|
00013740  32 29 29 81 32 29 3a e7  20 56 25 3c 30 20 8c 20  |2)).2):. V%<0 . |
00013750  56 25 3d 30 0d 5b b8 15  e7 20 56 25 3e 31 30 30  |V%=0.[... V%>100|
00013760  20 8c 20 56 25 3d 31 30  30 0d 5b c2 2d f2 67 65  | . V%=100.[.-.ge|
00013770  74 73 6c 6f 72 28 57 48  25 2c 49 48 25 29 3a f2  |tslor(WH%,IH%):.|
00013780  72 65 64 72 61 77 73 6c  69 64 28 57 48 25 2c 43  |redrawslid(WH%,C|
00013790  4f 25 2c 56 25 29 0d 5b  cc 13 f2 73 6c 69 64 75  |O%,V%).[...slidu|
000137a0  64 28 57 45 25 2c 56 25  29 0d 5b d6 12 c8 97 20  |d(WE%,V%).[.... |
000137b0  4d 58 25 2c 4d 59 25 2c  4d 42 25 0d 5b e0 0b fd  |MX%,MY%,MB%.[...|
000137c0  20 4d 42 25 3d 30 0d 5b  ea 65 c8 99 20 22 4f 53  | MB%=0.[.e.. "OS|
000137d0  5f 52 65 61 64 4d 6f 64  65 56 61 72 69 61 62 6c  |_ReadModeVariabl|
000137e0  65 22 2c 2d 31 2c 34 20  b8 20 2c 2c 4d 58 25 3a  |e",-1,4 . ,,MX%:|
000137f0  c8 99 20 22 4f 53 5f 52  65 61 64 4d 6f 64 65 56  |.. "OS_ReadModeV|
00013800  61 72 69 61 62 6c 65 22  2c 2d 31 2c 35 20 b8 20  |ariable",-1,5 . |
00013810  2c 2c 4d 59 25 3a 4d 58  25 3d 31 3c 3c 4d 58 25  |,,MY%:MX%=1<<MX%|
00013820  3a 4d 59 25 3d 31 3c 3c  4d 59 25 0d 5b f4 51 c8  |:MY%=1<<MY%.[.Q.|
00013830  99 20 22 4f 53 5f 52 65  61 64 4d 6f 64 65 56 61  |. "OS_ReadModeVa|
00013840  72 69 61 62 6c 65 22 2c  2d 31 2c 31 31 20 b8 20  |riable",-1,11 . |
00013850  2c 2c 43 4f 25 3a c8 99  20 22 4f 53 5f 52 65 61  |,,CO%:.. "OS_Rea|
00013860  64 4d 6f 64 65 56 61 72  69 61 62 6c 65 22 2c 2d  |dModeVariable",-|
00013870  31 2c 31 32 20 b8 20 2c  2c 57 45 25 0d 5b fe 1d  |1,12 . ,,WE%.[..|
00013880  c8 97 20 c8 93 20 30 2c  30 2c 43 4f 25 2a 4d 58  |.. .. 0,0,CO%*MX|
00013890  25 2c 57 45 25 2a 4d 59  25 0d 5c 08 07 3d 56 25  |%,WE%*MY%.\..=V%|
000138a0  0d 5c 1c 16 dd f2 67 65  74 73 6c 6f 72 28 57 48  |.\....getslor(WH|
000138b0  25 2c 49 48 25 29 0d 5c  26 37 21 49 43 42 4c 4b  |%,IH%).\&7!ICBLK|
000138c0  25 3d 48 41 4e 44 25 28  57 48 25 29 3a c8 99 20  |%=HAND%(WH%):.. |
000138d0  22 57 69 6d 70 5f 47 65  74 57 69 6e 64 6f 77 53  |"Wimp_GetWindowS|
000138e0  74 61 74 65 22 2c 2c 49  43 42 4c 4b 25 0d 5c 30  |tate",,ICBLK%.\0|
000138f0  36 57 4f 58 25 3d 49 43  42 4c 4b 25 21 34 2d 49  |6WOX%=ICBLK%!4-I|
00013900  43 42 4c 4b 25 21 32 30  3a 57 4f 59 25 3d 28 49  |CBLK%!20:WOY%=(I|
00013910  43 42 4c 4b 25 21 31 36  2d 49 43 42 4c 4b 25 21  |CBLK%!16-ICBLK%!|
00013920  32 34 29 0d 5c 3a 42 21  49 43 42 4c 4b 25 3d 48  |24).\:B!ICBLK%=H|
00013930  41 4e 44 25 28 57 48 25  29 3a 49 43 42 4c 4b 25  |AND%(WH%):ICBLK%|
00013940  21 34 3d 49 48 25 3a c8  99 20 22 57 69 6d 70 5f  |!4=IH%:.. "Wimp_|
00013950  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 49  |GetIconState",,I|
00013960  43 42 4c 4b 25 0d 5c 44  2a 57 4f 58 25 2b 3d 28  |CBLK%.\D*WOX%+=(|
00013970  49 43 42 4c 4b 25 21 38  29 2b 32 3a 57 4f 59 25  |ICBLK%!8)+2:WOY%|
00013980  2b 3d 28 49 43 42 4c 4b  25 21 31 32 29 2b 34 0d  |+=(ICBLK%!12)+4.|
00013990  5c 4e 05 e1 0d 5c 62 1c  dd f2 72 65 64 72 61 77  |\N...\b...redraw|
000139a0  73 6c 69 64 28 57 48 25  2c 43 4f 25 2c 56 25 29  |slid(WH%,CO%,V%)|
000139b0  0d 5c 6c 73 21 49 43 42  4c 4b 25 3d 48 41 4e 44  |.\ls!ICBLK%=HAND|
000139c0  25 28 57 48 25 29 3a 49  43 42 4c 4b 25 21 34 3d  |%(WH%):ICBLK%!4=|
000139d0  28 49 43 42 4c 4b 25 21  38 29 2b 32 3a 49 43 42  |(ICBLK%!8)+2:ICB|
000139e0  4c 4b 25 21 38 3d 28 49  43 42 4c 4b 25 21 31 32  |LK%!8=(ICBLK%!12|
000139f0  29 2b 34 3a 49 43 42 4c  4b 25 21 31 32 3d 28 49  |)+4:ICBLK%!12=(I|
00013a00  43 42 4c 4b 25 21 31 36  29 2d 32 3a 49 43 42 4c  |CBLK%!16)-2:ICBL|
00013a10  4b 25 21 31 36 3d 28 49  43 42 4c 4b 25 21 32 30  |K%!16=(ICBLK%!20|
00013a20  29 2d 34 0d 5c 76 29 c8  99 20 22 57 69 6d 70 5f  |)-4.\v).. "Wimp_|
00013a30  55 70 64 61 74 65 57 69  6e 64 6f 77 22 2c 2c 49  |UpdateWindow",,I|
00013a40  43 42 4c 4b 25 20 b8 20  46 49 4e 25 0d 5c 80 83  |CBLK% . FIN%.\..|
00013a50  c8 95 20 46 49 4e 25 3a  c8 99 20 22 57 69 6d 70  |.. FIN%:.. "Wimp|
00013a60  5f 53 65 74 43 6f 6c 6f  75 72 22 2c 43 4f 25 3a  |_SetColour",CO%:|
00013a70  c8 93 20 c8 90 20 57 4f  58 25 2c 57 4f 59 25 2c  |.. .. WOX%,WOY%,|
00013a80  56 25 2a 32 2c 31 35 3a  e7 20 56 25 3c 31 30 30  |V%*2,15:. V%<100|
00013a90  20 8c 20 c8 99 20 22 57  69 6d 70 5f 53 65 74 43  | . .. "Wimp_SetC|
00013aa0  6f 6c 6f 75 72 22 2c 31  3a c8 93 20 c8 90 20 57  |olour",1:.. .. W|
00013ab0  4f 58 25 2b 28 56 25 2a  32 29 2b 32 2c 57 4f 59  |OX%+(V%*2)+2,WOY|
00013ac0  25 2c 28 31 30 30 2d 56  25 29 2a 32 2c 31 35 0d  |%,(100-V%)*2,15.|
00013ad0  5c 8a 2b c8 99 20 22 57  69 6d 70 5f 47 65 74 52  |\.+.. "Wimp_GetR|
00013ae0  65 63 74 61 6e 67 6c 65  22 2c 2c 49 43 42 4c 4b  |ectangle",,ICBLK|
00013af0  25 20 b8 20 46 49 4e 25  3a ce 0d 5c 94 05 e1 0d  |% . FIN%:..\....|
00013b00  5c a8 17 dd f2 75 69 28  57 48 32 25 2c 49 48 32  |\....ui(WH2%,IH2|
00013b10  25 2c 49 54 24 29 0d 5c  b2 16 f2 73 69 28 57 48  |%,IT$).\...si(WH|
00013b20  32 25 2c 49 48 32 25 2c  49 54 24 29 0d 5c bc 3b  |2%,IH2%,IT$).\.;|
00013b30  50 4f 49 25 21 31 32 30  3d 48 41 4e 44 25 28 57  |POI%!120=HAND%(W|
00013b40  48 32 25 29 3a c8 99 20  22 57 69 6d 70 5f 47 65  |H2%):.. "Wimp_Ge|
00013b50  74 57 69 6e 64 6f 77 53  74 61 74 65 22 2c 2c 50  |tWindowState",,P|
00013b60  4f 49 25 2b 31 32 30 0d  5c c6 35 57 4f 58 32 25  |OI%+120.\.5WOX2%|
00013b70  3d 50 4f 49 25 21 31 32  34 2d 50 4f 49 25 21 31  |=POI%!124-POI%!1|
00013b80  34 30 3a 57 4f 59 32 25  3d 28 50 4f 49 25 21 31  |40:WOY2%=(POI%!1|
00013b90  33 36 2d 50 4f 49 25 21  31 34 34 29 0d 5c d0 47  |36-POI%!144).\.G|
00013ba0  50 4f 49 25 21 31 32 30  3d 48 41 4e 44 25 28 57  |POI%!120=HAND%(W|
00013bb0  48 32 25 29 3a 50 4f 49  25 21 31 32 34 3d 49 48  |H2%):POI%!124=IH|
00013bc0  32 25 3a c8 99 20 22 57  69 6d 70 5f 47 65 74 49  |2%:.. "Wimp_GetI|
00013bd0  63 6f 6e 53 74 61 74 65  22 2c 2c 50 4f 49 25 2b  |conState",,POI%+|
00013be0  31 32 30 0d 5c da 2b 57  4f 58 32 25 2b 3d 28 50  |120.\.+WOX2%+=(P|
00013bf0  4f 49 25 21 31 32 38 29  2b 32 3a 57 4f 59 32 25  |OI%!128)+2:WOY2%|
00013c00  2b 3d 28 50 4f 49 25 21  31 33 32 29 2b 34 0d 5c  |+=(POI%!132)+4.\|
00013c10  e4 2b c8 99 20 22 57 69  6d 70 5f 55 70 64 61 74  |.+.. "Wimp_Updat|
00013c20  65 57 69 6e 64 6f 77 22  2c 2c 50 4f 49 25 2b 31  |eWindow",,POI%+1|
00013c30  32 30 20 b8 20 46 49 4e  25 0d 5c ee 35 c8 95 20  |20 . FIN%.\.5.. |
00013c40  46 49 4e 25 3a c8 99 20  22 57 69 6d 70 5f 47 65  |FIN%:.. "Wimp_Ge|
00013c50  74 52 65 63 74 61 6e 67  6c 65 22 2c 2c 50 4f 49  |tRectangle",,POI|
00013c60  25 2b 31 32 30 20 b8 20  46 49 4e 25 3a ce 0d 5c  |%+120 . FIN%:..\|
00013c70  f8 05 e1 0d 5d 0c 24 dd  f2 73 63 72 65 65 6e 74  |....].$..screent|
00013c80  6f 77 6f 72 6b 28 57 45  25 2c 20 f8 20 54 58 25  |owork(WE%, . TX%|
00013c90  2c f8 20 54 59 25 29 0d  5d 16 32 50 4f 49 25 21  |,. TY%).].2POI%!|
00013ca0  31 32 38 3d 57 45 25 3a  c8 99 22 57 69 6d 70 5f  |128=WE%:.."Wimp_|
00013cb0  47 65 74 57 69 6e 64 6f  77 53 74 61 74 65 22 2c  |GetWindowState",|
00013cc0  2c 50 4f 49 25 2b 31 32  38 0d 5d 20 23 54 58 25  |,POI%+128.] #TX%|
00013cd0  3d 28 54 58 25 2d 28 50  4f 49 25 21 31 33 32 29  |=(TX%-(POI%!132)|
00013ce0  29 2b 28 50 4f 49 25 21  31 34 38 29 0d 5d 2a 23  |)+(POI%!148).]*#|
00013cf0  54 59 25 3d 28 54 59 25  2d 28 50 4f 49 25 21 31  |TY%=(TY%-(POI%!1|
00013d00  34 34 29 29 2b 28 50 4f  49 25 21 31 35 32 29 0d  |44))+(POI%!152).|
00013d10  5d 34 05 e1 0d 5d 48 13  dd f2 73 61 76 65 73 65  |]4...]H...savese|
00013d20  74 73 28 49 54 24 29 0d  5d 52 05 e1 0d 5d 66 36  |ts(IT$).]R...]f6|
00013d30  dd f2 6c 6f 61 64 73 65  74 73 28 49 54 24 29 3a  |..loadsets(IT$):|
00013d40  e7 20 ac 20 4e 4f 4c 25  20 8c 20 f2 6b 69 6c 6c  |. . NOL% . .kill|
00013d50  66 3a 46 55 53 45 25 3d  2d 31 3a f2 6d 65 6e 6f  |f:FUSE%=-1:.meno|
00013d60  66 66 0d 5d 70 19 e7 20  55 4e 44 4f 25 3c 3e 2d  |ff.]p.. UNDO%<>-|
00013d70  31 20 8c 20 f2 64 69 75  6e 64 6f 0d 5d 7a 3e 57  |1 . .diundo.]z>W|
00013d80  45 25 3d 8e 28 49 54 24  29 3a e7 20 57 45 25 3d  |E%=.(IT$):. WE%=|
00013d90  30 20 8c 20 f2 6d 65 73  73 61 67 65 28 32 2c 22  |0 . .message(2,"|
00013da0  43 6f 75 6c 64 20 6e 6f  74 20 6c 6f 61 64 20 73  |Could not load s|
00013db0  65 74 74 69 6e 67 73 22  29 0d 5d 84 0d 49 54 24  |ettings").]..IT$|
00013dc0  3d be 23 57 45 25 0d 5d  8e 3e e3 4c 25 3d 30 20  |=.#WE%.].>.L%=0 |
00013dd0  b8 20 31 35 3a e3 4b 25  3d 30 20 b8 20 31 3a e3  |. 15:.K%=0 . 1:.|
00013de0  49 25 3d 30 20 b8 20 34  3a e8 23 57 45 25 2c 47  |I%=0 . 4:.#WE%,G|
00013df0  52 46 49 25 28 4c 25 2c  4b 25 2c 49 25 29 3a ed  |RFI%(L%,K%,I%):.|
00013e00  3a ed 3a ed 0d 5d 98 23  c8 99 20 22 4f 53 5f 47  |:.:..].#.. "OS_G|
00013e10  42 50 42 22 2c 34 2c 57  45 25 2c 42 52 55 53 48  |BPB",4,WE%,BRUSH|
00013e20  25 2c 31 33 30 30 30 0d  5d a2 21 c8 99 20 22 4f  |%,13000.].!.. "O|
00013e30  53 5f 47 42 50 42 22 2c  34 2c 57 45 25 2c 54 52  |S_GBPB",4,WE%,TR|
00013e40  41 53 50 25 2c 32 35 36  0d 5d ac 23 c8 99 20 22  |ASP%,256.].#.. "|
00013e50  4f 53 5f 47 42 50 42 22  2c 34 2c 57 45 25 2c 50  |OS_GBPB",4,WE%,P|
00013e60  46 49 4c 4c 53 25 2c 37  30 30 30 0d 5d b6 5b e8  |FILLS%,7000.].[.|
00013e70  23 57 45 25 2c 47 52 4c  4f 25 2c 4b 55 4b 45 25  |#WE%,GRLO%,KUKE%|
00013e80  2c 4b 53 43 25 2c 55 4e  44 4f 25 2c 47 52 43 4f  |,KSC%,UNDO%,GRCO|
00013e90  25 2c 50 41 4c 45 25 2c  54 58 25 2c 47 52 49 57  |%,PALE%,TX%,GRIW|
00013ea0  49 25 2c 47 52 49 48 45  25 2c 47 52 42 58 25 2c  |I%,GRIHE%,GRBX%,|
00013eb0  47 52 42 59 25 2c 46 24  3a f2 73 69 28 33 30 2c  |GRBY%,F$:.si(30,|
00013ec0  32 37 2c 46 24 29 0d 5d  c0 7b f2 73 69 28 31 30  |27,F$).].{.si(10|
00013ed0  2c 34 38 2c c3 28 54 58  25 29 29 3a e3 4c 25 3d  |,48,.(TX%)):.L%=|
00013ee0  31 20 b8 20 54 58 25 3a  f2 63 6c 65 61 72 69 63  |1 . TX%:.clearic|
00013ef0  6f 6e 28 31 30 2c a4 6c  69 70 61 61 64 6a 28 4c  |on(10,.lipaadj(L|
00013f00  25 2b 36 29 29 3a ed 3a  e7 20 54 58 25 3c 34 30  |%+6)):.:. TX%<40|
00013f10  20 8c 20 e3 4c 25 3d 54  58 25 2b 31 20 b8 20 34  | . .L%=TX%+1 . 4|
00013f20  30 3a f2 73 68 61 64 65  69 63 6f 6e 28 31 30 2c  |0:.shadeicon(10,|
00013f30  a4 6c 69 70 61 61 64 6a  28 4c 25 2b 36 29 29 3a  |.lipaadj(L%+6)):|
00013f40  ed 0d 5d ca 58 e3 4c 25  3d 30 20 b8 20 33 39 3a  |..].X.L%=0 . 39:|
00013f50  e8 23 57 45 25 2c 54 58  25 3a e7 20 54 58 25 20  |.#WE%,TX%:. TX% |
00013f60  8c 20 f2 69 63 6f 6e 68  69 28 31 30 2c a4 6c 69  |. .iconhi(10,.li|
00013f70  70 61 61 64 6a 28 4c 25  2b 37 29 29 20 8b 20 f2  |paadj(L%+7)) . .|
00013f80  69 63 6f 6e 6c 6f 28 31  30 2c a4 6c 69 70 61 61  |iconlo(10,.lipaa|
00013f90  64 6a 28 4c 25 2b 37 29  29 0d 5d d4 05 ed 0d 5d  |dj(L%+7)).]....]|
00013fa0  de 1e e3 4c 25 3d 30 20  b8 20 35 3a e8 23 57 45  |...L%=0 . 5:.#WE|
00013fb0  25 2c 50 41 54 25 28 4c  25 29 3a ed 0d 5d e8 2d  |%,PAT%(L%):..].-|
00013fc0  e3 4c 25 3d 30 20 b8 20  38 3a e3 4b 25 3d 30 20  |.L%=0 . 8:.K%=0 |
00013fd0  b8 20 34 3a e8 23 57 45  25 2c 45 43 46 25 28 4c  |. 4:.#WE%,ECF%(L|
00013fe0  25 2c 4b 25 29 3a ed 3a  ed 0d 5d f2 1f d9 23 57  |%,K%):.:..]...#W|
00013ff0  45 25 3a e7 20 55 4e 44  4f 25 3c 3e 2d 31 20 8c  |E%:. UNDO%<>-1 .|
00014000  20 f2 65 6e 75 6e 64 6f  0d 5d fc 1c f2 62 75 69  | .enundo.]...bui|
00014010  6c 64 69 63 6f 6e 6d 65  6e 75 3a f2 62 75 69 6c  |ldiconmenu:.buil|
00014020  64 6d 6d 32 0d 5e 06 1d  e7 20 ac 20 4e 4f 4c 25  |dmm2.^... . NOL%|
00014030  20 8c 20 f2 66 6f 72 63  65 64 72 61 77 6d 61 69  | . .forcedrawmai|
00014040  6e 0d 5e 10 05 e1 0d 5e  24 29 dd f2 74 6b 68 28  |n.^....^$)..tkh(|
00014050  49 43 25 29 3a 54 4b 48  25 3d 49 43 25 3a f2 69  |IC%):TKH%=IC%:.i|
00014060  63 6f 6e 68 69 28 33 32  2c 49 43 25 29 3a e1 0d  |conhi(32,IC%):..|
00014070  5e 38 15 f4 20 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |^8.. -----------|
00014080  2d 2d 2d 2d 0d ff                                 |----..|
00014086