Home » Archimedes archive » Acorn User » AU 1997-04 B.adf » PD » Knit/Convert/!KnitConv/!RunImage

Knit/Convert/!KnitConv/!RunImage

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

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

Tape/disk: Home » Archimedes archive » Acorn User » AU 1997-04 B.adf » PD
Filename: Knit/Convert/!KnitConv/!RunImage
Read OK:
File size: B48D bytes
Load address: 0000
Exec address: 0000
File contents
    1REM !RunImage for !KnitConv
    2REM LEN A&J Muir 1997
    3version$=     "V1.05c 24th October 1996"
    4:
    5ON ERROR :SYS &000406C2:PRINT REPORT$+" at line ";ERL:QUIT
    6:
    7PROCga
    8ON ERROR SYS &000406C2:PROCx
    9REPEAT
   10PROCcb
   11UNTIL exit%=TRUE
   12SYS&000400DD
   13END
   14:
   15DEF PROCcb
   16LOCAL reason%
   17IF titleopen%=TRUE THEN
   18SYS &000400E1,mask%,block%,tittime% TO reason%
   19ELSE
   20SYS &000400C7,mask%,block% TO reason%
   21ENDIF
   22CASE reason% OF
   23WHEN 0:PROCya
   24WHEN 1:PROCfb
   25WHEN 2:PROCza
   26WHEN 3:SYS &000400C6,,block%
   27WHEN 6:PROCwa
   28WHEN 7:PROCha
   29WHEN 8:PROCla
   30WHEN 9:PROCta
   31WHEN 17,18:PROCua
   32WHEN 19:SYS &00000008,6,block%+44
   33ERROR,255,"Data transfer failed: Receiver died"
   34ENDCASE
   35ENDPROC
   36:
   37DEF PROCga
   38SYS &000406C0
   39LOCAL in%
   40ilist%=2
   41proclist%=3
   42jaclist%=3
   43sprlist%=6
   44DIM block% 4500, imenu% 28+ilist%*24, processmenu% 28+proclist%*24, jacmenu% 28+jaclist%*24, spritemenu% 28+sprlist%*24
   45menuindsize%=200
   46DIM menuind% menuindsize%: $menuind%="":menuindfree%=menuind%+12
   47DIM carb% 24
   48DIM name% 12, transform% 32, pal16% 128, wimppal% 68
   49DIM opt$(3), jac$(3), res$(3), col$(3)
   50!block%=2: block%!4=3: block%!8=9: block%!12=10: block%!16=&400C0
   51block%!20=&400C1: block%!24=&502: block%!28=0
   52SYS&000400C0,310,&4B534154,"KnitConv",block%
   53ON ERROR SYS &000406C2:PROCx:QUIT
   54state_file$="Result"
   55sprite_file$="Sprite"
   56exit%=FALSE
   57wimp_setistate%=&400CD
   58ct_setgcol%=&40743
   59wimp_setcol%=&400E6
   60opt%=-1
   61textdispvar%=0
   62jactype%=0
   63restype%=0
   64coltype%=2
   65coltable%=0
   66nametable%=0
   67paltable%=0
   68sourcespr%=0
   69draw%=0
   70colorder%=0
   71scrarea%=0
   72transtable%=0
   73symbstore%=0
   74symbpoint%=0
   75symbsize%=0
   76descinfobuff%=0
   77descbuff%=0
   78extradescinfobuff%=0
   79extradescbuff%=0
   80edmul%=1
   81eddiv%=1
   82yarncol%=-1
   83mainopen%=FALSE
   84titleopen%=TRUE
   85colpicopen%=FALSE
   86helpon%=FALSE
   87bertyfile%=FALSE
   88infobuff%=0
   89helpbuff%=0
   90mask%=&1830
   91SYS &00000042 TO tittime%
   92tittime%+=600
   93opt$(0)="Remove picture."
   94opt$(1)="Make sprite"
   95opt$(2)="Double Jacquard, "
   96jac$(0)="Standard type."
   97jac$(1)="Elongated type."
   98jac$(2)="Jigsaw type."
   99res$(0)=", low res"
  100res$(1)=", high res"
  101res$(2)=", incl picture."
  102col$(2)=", 16 cols"
  103col$(3)=", 256 cols"
  104appsize%=HIMEM-&8000
  105heap%=0
  106SYS &00000051 TO page%
  107IF FNk(-1,5)<>FNk(-1,4) THEN
  108toolspr%=FNj("<KnitConv$Dir>.Resources.Sprites.Buttons")
  109titlespr%=FNj("<KnitConv$Dir>.Resources.Sprites.TitleSpr")
  110ELSE
  111toolspr%=FNj("<KnitConv$Dir>.Resources.Sprites.Buttons22")
  112titlespr%=FNj("<KnitConv$Dir>.Resources.Sprites.TitleSpr22")
  113ENDIF
  114PROCfa
  115SYS &000400D9,,"<KnitConv$Dir>.Resources.Templates"
  116indsize%=0: i%=0
  117REPEAT
  118$name%="*"
  119SYS &000400DB,,0,,,-1,name%,i% TO ,,size%,,,,i%
  120indsize%+=size%
  121UNTIL i%=0
  122DIM windowind% indsize%
  123info%=FNi("Info",0)
  124main%=FNi("Main",toolspr%)
  125report%=FNi("Report",0)
  126zoom%=FNi("Zoom",0)
  127titlewin%=FNi("Title",titlespr%)
  128colpic%=FNi("ColPic",0)
  129colpane%=FNi("ColPane",toolspr%)
  130PROCy
  131PROCva
  132PROCzb
  133$infoversion%=version$
  134PROCab(titlewin%)
  135in%=OPENIN("<KnitConv$Dir>.Resources.Pal16")
  136SYS &0000000C,4,in%,pal16%,128
  137CLOSE#in%
  138PROCob(imenu%,1)
  139PROCob(processmenu%,2)
  140PROCob(jacmenu%,3)
  141PROCob(spritemenu%,4)
  142$option%="Please choose a conversion process  > > >"
  143PROCmb(main%,4,0,0)
  144$titleversion%=version$
  145$zoommul%="1"
  146$zoomdiv%="1"
  147PROCmb(main%,1,1<<22,1<<22)
  148PROCmb(main%,2,3<<24,15<<24)
  149PROCmb(main%,3,1<<22,1<<22)
  150PROCmb(main%,7,1<<24,15<<24)
  151PROCtb(1)
  152block%!0=-1
  153block%!4=0:block%!8=0
  154block%!12=68:block%!16=68
  155block%!20=&301A
  156$(block%+24)="!KnitConv"+CHR$(0)
  157SYS&000400C2,,block%
  158SYS &000406C1
  159ENDPROC
  160:
  161DEF PROCla
  162LOCAL key%,icon%,whan%,processed%
  163whan%=block%!0
  164icon%=block%!4
  165key%=block%!24
  166processed%=FALSE
  167CASE whan% OF
  168WHEN zoom%
  169CASE icon% OF
  170WHEN 0
  171CASE key% OF
  172WHEN &18E,&18A,&18F,&19A,13
  173processed%=TRUE
  174icon%=1
  175block%!0=zoom%: block%!4=icon%
  176SYS &000400CE,,block%
  177PROCp(zoom%,icon%,LEN$(block%!28))
  178OTHERWISE
  179IF key%<>&1CC THEN processed%=TRUE
  180ENDCASE
  181WHEN 1
  182CASE key% OF
  183WHEN &18E,&18A,&18F,&19A
  184processed%=TRUE
  185icon%=0
  186block%!0=zoom%: block%!4=icon%
  187SYS &000400CE,,block%
  188PROCp(zoom%,icon%,LEN$(block%!28))
  189WHEN 13
  190SYS &000400D4,0,-1
  191processed%=TRUE
  192OTHERWISE
  193IF key%<>&1CC THEN processed%=TRUE
  194ENDCASE
  195ENDCASE
  196ENDCASE
  197IF NOT processed% THEN SYS &000400DC,key%
  198ENDPROC
  199:
  200DEF PROCwa
  201LOCAL button%,window%,icon%,mx%,my%,x%,y%,r%
  202mx%=block%!0
  203my%=block%!4
  204button%=block%!8
  205window%=block%!12
  206icon%=block%!16
  207IF titleopen%=TRUE THEN PROCs
  208IF button%=2 THEN
  209CASE window% OF
  210WHEN -2: PROCrb(imenu%,block%!0-64,140+1*44)
  211WHEN main%:
  212CASE icon% OF
  213WHEN 5
  214PROCrb(processmenu%,mx%,my%)
  215ENDCASE
  216ENDCASE
  217ELSE
  218CASE window% OF
  219WHEN -2
  220PROCab(main%)
  221WHEN colpane%
  222IF yarncol%<>-1 THEN PROCmb(colpane%,yarncol%*3+1,0<<21,1<<21)
  223IF icon%MOD3=0 THEN
  224yarncol%=icon%/3
  225ELSE
  226yarncol%=(icon%-2)/3
  227ENDIF
  228PROCmb(colpane%,yarncol%*3+1,1<<21,1<<21)
  229WHEN report%
  230PROCr(report%)
  231PROCp(carb%,carb%!4,carb%!20)
  232PROCz(w%,h%)
  233MOUSE RECTANGLE 0,0,w%,h%
  234WHEN colpic%
  235CASE icon% OF
  236WHEN 1
  237IF yarncol%=-1 THEN
  238PROCgb("Choose a background colour")
  239ELSE
  240PROCr(colpic%)
  241PROCmb(main%,1,0<<22,1<<22)
  242PROCmb(main%,2,7<<24,15<<24)
  243PROCmb(main%,3,0<<22,1<<22)
  244PROCtb(3)
  245SYS &000400D2,main%,1,-1,-1,-1,LEN$(savepath%)
  246ENDIF
  247WHEN 2
  248PROCr(colpic%)
  249PROCvb
  250PROChb
  251ENDCASE
  252WHEN main%
  253CASE icon% OF
  254WHEN 3
  255IF (button% AND &50)>0 THEN
  256IF button%=&10 THEN adjust%=TRUE ELSE adjust%=FALSE
  257PROCw(RIGHT$($savespr%,8),icon%,main%)
  258ENDIF
  259WHEN 5
  260IF button%=4 THEN PROCrb(processmenu%,mx%+32,my%-44)
  261WHEN 6:
  262IF helpon%=FALSE THEN
  263SYS&00041500,,"<KnitConv$Dir>.Resources.Messages" TO ,,len%
  264infobuff%=FNa(16)
  265helpbuff%=FNa(len%)
  266SYS&00041501,infobuff%,"<KnitConv$Dir>.Resources.Messages",helpbuff%
  267helpon%=TRUE
  268x%=0
  269SYS &00042681,x%,block%,4500 TO ,y%
  270x%=0
  271REPEAT
  272task%=!(block%+4+x%*16)
  273r%=-1
  274REPEAT:r%+=1:UNTIL task%?r%<32
  275task%?r%=13
  276x%+=1
  277UNTIL (block%+4+x%*16>y%) OR $task%="Help"
  278IF $task%<>"Help" THEN *Filer_Run Resources:$.Apps.!Help
  279ELSE
  280SYS &00041504,infobuff%
  281infobuff%=FNd(infobuff%)
  282helpbuff%=FNd(helpbuff%)
  283helpon%=FALSE
  284ENDIF
  285ENDCASE
  286WHEN zoom%
  287CASE icon% OF
  288WHEN 2: PROCea(zoom%,0,999,1,button%,1)
  289WHEN 3: PROCea(zoom%,0,999,1,button%,-1)
  290WHEN 4: PROCea(zoom%,1,999,1,button%,1)
  291WHEN 5: PROCea(zoom%,1,999,1,button%,-1)
  292ENDCASE
  293ENDCASE
  294ENDIF
  295ENDPROC
  296:
  297DEF PROCta
  298LOCAL sel%,subsel%,button%,mx%,my%
  299sel%=!block%: subsel%=block%!4
  300SYS&000400CF,,block%
  301mx%=!block%: my%=block%!4
  302button%=block%!8
  303PROCxa(menuopen%)
  304CASE menuopen% OF
  305WHEN imenu%
  306CASE sel% OF
  307WHEN 0: PROCrb(info%,mx%,my%)
  308WHEN 1: PROCq
  309ENDCASE
  310WHEN processmenu%
  311IF opt%<>-1 THEN PROCyb(processmenu%,opt%)
  312opt%=sel%
  313PROCub(processmenu%,opt%)
  314$option%=opt$(opt%)
  315PROCmb(main%,4,0,0)
  316PROCmb(main%,7,7<<24,15<<24)
  317PROCtb(2)
  318CASE sel% OF
  319WHEN 0
  320PROCpb(1)
  321WHEN 1
  322IF FNh(spritemenu%,0)=0 AND FNh(spritemenu%,1)=0 THEN PROCub(spritemenu%,0)
  323IF FNh(spritemenu%,2)=0 AND FNh(spritemenu%,3)=0 THEN PROCub(spritemenu%,2)
  324CASE subsel% OF
  325
  326WHEN 0,1
  327PROCyb(spritemenu%,0)
  328PROCyb(spritemenu%,1)
  329restype%=subsel%
  330PROCub(spritemenu%,restype%)
  331WHEN 2,3
  332PROCyb(spritemenu%,2)
  333PROCyb(spritemenu%,3)
  334coltype%=subsel%
  335PROCub(spritemenu%,coltype%)
  336WHEN 4
  337PROCxb(spritemenu%,subsel%)
  338ENDCASE
  339$option%+=res$(restype%)
  340$option%+=col$(coltype%)
  341IF FNh(spritemenu%,4)=TRUE THEN $option%+=res$(2)
  342PROCmb(main%,4,0,0)
  343PROCpb(2)
  344WHEN 2
  345IF jactype%<>0 THEN PROCyb(jacmenu%,jactype%) : jactype%=0
  346IF FNh(jacmenu%,0)=0 THEN PROCub(jacmenu%,0)
  347IF subsel%<>-1 THEN
  348PROCyb(jacmenu%,jactype%)
  349jactype%=subsel%
  350PROCub(jacmenu%,jactype%)
  351ENDIF
  352$option%+=jac$(jactype%)
  353PROCmb(main%,4,0,0)
  354PROCpb(1)
  355ENDCASE
  356ENDCASE
  357IF button%=1 THEN PROCrb(menuopen%,0,0)
  358ENDPROC
  359:
  360DEF PROCfb
  361LOCAL more%,wx%,wy%,w%,h%,xx%,row%,stitch%,rh%,sw%
  362LOCAL minx%,miny%,maxx%,maxy%,sminx%,smaxx%,sminy%,smaxy%,min%,max%,x%,y%
  363LOCAL xc%,yc%,r%,g%,b%,rgb%,col%,column%
  364LOCAL minrow%,maxrow%,minsqr%,maxsqr%,min%,max%,i%,xl%,xh%,yl%,yh%
  365LOCAL scalex,scaley,scl%,num%,ymove%,xmove%
  366SYS &000400C8,,block% TO more%
  367WHILE more%
  368CASE block%!0 OF
  369WHEN colpane%
  370wx%=block%!4-block%!20
  371wy%=block%!16-block%!24
  372minx%=block%!28-wx%
  373maxx%=block%!36-wx%
  374miny%=block%!32-wy%+22
  375maxy%=block%!40-wy%+22
  376min%=miny%/76
  377max%=maxy%/76
  378max%+=1
  379IF max%>0 THEN max%=0
  380IF min%<-(maxcol%) THEN min%=-(maxcol%)
  381IF minx%<90 THEN
  382FOR i%=min% TO max%
  383SYS ct_setgcol%,paltable%!(-i%*4)
  384RECTANGLE FILL 22+wx%,(i%-1)*76-24+10+wy%,66,60
  385NEXT i%
  386ENDIF
  387ENDCASE
  388ENDCASE
  389
  390SYS &000400CA,,block% TO more%
  391ENDWHILE
  392ENDPROC
  393:
  394DEF PROCtb(var%)
  395CASE var% OF
  396WHEN 0
  397$disptext%=""
  398WHEN 1
  399$disptext%="Please choose a conversion process from the pop-up menu"
  400WHEN 2
  401$disptext%="Drag in the file you wish to convert ...."
  402WHEN 3
  403$disptext%="Name the new file then drag its icon to a directory window ...."
  404WHEN 4
  405$disptext%="Processing the file .... Please wait."
  406ENDCASE
  407textdispvar%=var%
  408PROCmb(main%,8,0,0)
  409ENDPROC
  410:
  411DEF PROCq
  412exit%=TRUE
  413ENDPROC
  414:
  415DEF PROCua
  416LOCAL han%,len%,counter%,icon%
  417CASE block%!16 OF
  418WHEN 0: PROCq
  419WHEN 2: PROCt
  420WHEN 3:
  421CASE block%!40 OF
  422WHEN &0F0
  423IF opt% =-1 THEN
  424PROCgb("Please choose a process before loading a file.")
  425ELSE
  426PROCvb
  427counter%=block%+44
  428WHILE ?counter%<>0
  429counter%+=1:ENDWHILE
  430?counter%=13
  431PROCna($(block%+44))
  432IF FNh(jacmenu%,2)=TRUE THEN
  433IF manner%=2 THEN
  434PROCgb("Grid only or Grid and picture type file required")
  435ELSE
  436yarncol%=0
  437found%=FALSE
  438REPEAT
  439IF $(nametable%+yarncol%*13)="Background" THEN found%=TRUE
  440IF $(nametable%+yarncol%*13)="background" THEN found%=TRUE
  441IF $(nametable%+yarncol%*13)="BackGround" THEN found%=TRUE
  442IF $(nametable%+yarncol%*13)="Bkgnd" THEN found%=TRUE
  443IF $(nametable%+yarncol%*13)="BkGnd" THEN found%=TRUE
  444IF $(nametable%+yarncol%*13)="bkgnd" THEN found%=TRUE
  445IF $(nametable%+yarncol%*13)="background" THEN found%=TRUE
  446IF $(nametable%+yarncol%*13)="BackGround" THEN found%=TRUE
  447IF $(nametable%+yarncol%*13)="Main" THEN found%=TRUE
  448IF $(nametable%+yarncol%*13)="main" THEN found%=TRUE
  449yarncol%+=1
  450UNTIL yarncol%>maxcol% OR found%=TRUE
  451IF found%=TRUE THEN
  452yarncol%-=1
  453PROCmb(main%,1,0<<22,1<<22)
  454PROCmb(main%,2,7<<24,15<<24)
  455PROCmb(main%,3,0<<22,1<<22)
  456PROCtb(3)
  457SYS &000400D2,main%,1,-1,-1,-1,LEN$(savepath%)
  458ELSE
  459yarncol%=-1 : PROCbb(colpic%)
  460ENDIF
  461ENDIF
  462ELSE
  463PROCmb(main%,1,0<<22,1<<22)
  464PROCmb(main%,2,7<<24,15<<24)
  465PROCmb(main%,3,0<<22,1<<22)
  466PROCtb(3)
  467SYS &000400D2,main%,1,-1,-1,-1,LEN$(savepath%)
  468ENDIF
  469ENDIF
  470ENDCASE
  471WHEN 10
  472
  473han%=block%!20
  474SYS &00000023,"KnitConv$Dir",block%+512,256,0,0 TO ,,len%
  475block%?(512+len%)=13
  476BPUT#han%,"Run "+$(block%+512)
  477WHEN 9,&400C1
  478PROCva
  479WHEN &502
  480IF helpon%=TRUE THEN
  481block%!40=block%!32
  482han%=block%!32
  483icon%=block%!36
  484PROCda(han%,icon%)
  485ENDIF
  486ENDCASE
  487ENDPROC
  488:
  489DEF PROCna(file$)
  490LOCAL in%
  491SYS &000406C0
  492in%=OPENIN(file$)
  493INPUT#in%,tension_sq_width$,tension_sq_height$
  494INPUT#in%,tension_sq_stitches$,tension_sq_rows$
  495INPUT#in%,tdset$
  496INPUT#in%,conv_rows$,ans_conv_rows$
  497INPUT#in%,conv_stitches$,ans_conv_stitches$
  498INPUT#in%,manner%
  499INPUT#in%,unitmenu%
  500INPUT#in%,grows$,gstitches$
  501INPUT#in%,gheight$,gwidth$
  502INPUT#in%,textdispvar%
  503INPUT#in%,main37%
  504INPUT#in%,main0%
  505INPUT#in%,mastergrey%
  506INPUT#in%,patstore1$,patstore2$
  507INPUT#in%,patstore3$,patstore4$
  508INPUT#in%,patstore5%
  509INPUT#in%,sclmul$,scldiv$
  510INPUT#in%,coltableon%,coltablesize%
  511IF coltableon%=1 THEN
  512coltable%=FNa(coltablesize%+8)
  513SYS &0000000C,4,in%,coltable%,coltablesize%
  514ELSE
  515coltable%=0
  516coltablesize%=0
  517ENDIF
  518INPUT#in%,nametableon%, nametablesize%
  519IF nametableon%=1 THEN
  520nametable%=FNa(nametablesize%)
  521SYS &0000000C,4,in%,nametable%,nametablesize%
  522ELSE
  523nametable%=0
  524nametablesize%=0
  525ENDIF
  526INPUT#in%,paltableon%, paltablesize%
  527IF paltableon%=1 THEN
  528paltable%=FNa(paltablesize%)
  529SYS &0000000C,4,in%,paltable%,paltablesize%
  530ELSE
  531paltable%=0
  532paltablesize%=0
  533ENDIF
  534INPUT#in%,pictype$
  535CASE pictype$ OF
  536WHEN "sprite"
  537INPUT#in%,spritelen%,spritename$,spriteon%
  538sourcespr%=FNa(spritelen%)
  539SYS &0000000C,4,in%,sourcespr%,spritelen%
  540SYS &0000002E,&10D,sourcespr%,block%,&100,1 TO ,,,name_len%
  541block%?name_len%=13
  542sprite$=$block%
  543sarealen%=!sourcespr%
  544SYS &0000002E,&118,sourcespr%,sprite$ TO ,,sourceaddr%
  545
  546SYS &0000002E,&228,sourcespr%,sourceaddr% TO ,,,spx%,spy%,,mode%
  547xe%=FNk(mode%,4)
  548ye%=FNk(mode%,5)
  549spx%=spx%<<xe%
  550spy%=spy%<<ye%
  551WHEN "draw"
  552INPUT#in%,drawlen%
  553draw%=FNa(drawlen%)
  554SYS &0000000C,4,in%,draw%,drawlen%
  555drawx%=draw%!32-draw%!24
  556drawy%=draw%!36-draw%!28
  557drawxoffset%=draw%!24
  558drawyoffset%=draw%!28
  559spx%=drawx%>>8
  560spy%=drawy%>>8
  561ENDCASE
  562INPUT#in%,gridlinecol%
  563INPUT#in%,gridcol%
  564INPUT#in%,backcol%
  565INPUT#in%,maxcol%
  566INPUT#in%,rulerbcol%
  567INPUT#in%,rulerfcol%
  568INPUT#in%,pagerulers%
  569INPUT#in%,manner%
  570CLOSE#in%
  571SYS &000406C1
  572ENDPROC
  573:
  574DEF PROCjb(file$)
  575LOCAL out%
  576out%=OPENOUT (file$)
  577PRINT#out%,tension_sq_width$,tension_sq_height$
  578PRINT#out%,tension_sq_stitches$,tension_sq_rows$
  579PRINT#out%,tdset$
  580PRINT#out%,conv_rows$,ans_conv_rows$
  581PRINT#out%,conv_stitches$,ans_conv_stitches$
  582PRINT#out%,manner%
  583PRINT#out%,unitmenu%
  584PRINT#out%,grows$,gstitches$
  585PRINT#out%,gheight$,gwidth$
  586PRINT#out%,textdispvar%
  587PRINT#out%,main37%
  588PRINT#out%,main0%
  589PRINT#out%,mastergrey%
  590PRINT#out%,patstore1$,patstore2$
  591PRINT#out%,patstore3$,patstore4$
  592PRINT#out%,patstore5%
  593PRINT#out%,sclmul$,scldiv$
  594IF coltable%<>0 THEN
  595PRINT#out%,1,coltablesize%
  596SYS &0000000C,2,out%,coltable%,coltablesize%
  597ELSE
  598PRINT#out%,0,0
  599ENDIF
  600IF nametable%<>0 AND manner%<>2 THEN
  601PRINT#out%,1,nametablesize%
  602SYS &0000000C,2,out%,nametable%,nametablesize%
  603ELSE
  604PRINT#out%,0,0
  605ENDIF
  606IF paltable%<>0 THEN
  607PRINT#out%,1,paltablesize%
  608SYS &0000000C,2,out%,paltable%, paltablesize%
  609ELSE
  610PRINT#out%,0,0
  611ENDIF
  612PRINT#out%,pictype$
  613CASE pictype$ OF
  614WHEN "sprite"
  615PRINT#out%,spritelen%,spritename$,spriteon%
  616SYS &0000000C,2,out%,sourcespr%,spritelen%
  617WHEN "draw"
  618PRINT#out%,drawlen%
  619SYS &0000000C,2,out%,draw%,drawlen%
  620ENDCASE
  621PRINT#out%,gridlinecol%
  622PRINT#out%,gridcol%
  623PRINT#out%,backcol%
  624PRINT#out%,maxcol%
  625PRINT#out%,rulerbcol%
  626PRINT#out%,rulerfcol%
  627PRINT#out%,pagerulers%
  628PRINT#out%,manner%
  629CLOSE#out%
  630OSCLI("SetType "+file$+" 0F0")
  631SYS &000406C1
  632ENDPROC
  633:
  634DEF PROCpb(type%)
  635CASE type% OF
  636WHEN 1
  637
  638$savespr%="Sfile_0F0"
  639PROCmb(main%,3,0,0)
  640ftype%=&0F0
  641fsize%=99
  642$savepath%="Result"
  643PROCmb(main%,1,0,0)
  644WHEN 2
  645
  646$savespr%="Sfile_FF9"
  647PROCmb(main%,3,0,0)
  648ftype%=&FF9
  649fsize%=99
  650$savepath%="Sprite"
  651PROCmb(main%,1,0,0)
  652ENDCASE
  653ENDPROC
  654:
  655DEF PROCeb
  656IF INSTR($savepath%,".") THEN
  657PROCib($savepath%)
  658ELSE
  659PROCgb("To save, drag the icon to a directory viewer")
  660ENDIF
  661ENDPROC
  662:
  663DEF PROCib(fname$)
  664LOCAL item%
  665PROCtb(4)
  666SYS &000406C3,1
  667CASE opt% OF
  668WHEN 0
  669PROCsb(fname$)
  670WHEN 1
  671PROCsa(fname$)
  672WHEN 2
  673PROCja(fname$)
  674ENDCASE
  675SYS &000406C1
  676PROChb
  677ENDPROC
  678:
  679DEF PROCha
  680SYS&00042401
  681SYS &000400CF,,block%
  682block%!20=block%!12
  683block%!24=block%!16
  684block%!28=block%!0
  685block%!32=block%!4
  686block%!36=fsize%
  687block%!0=64:block%!12=0
  688block%!16=1:block%!40=ftype%
  689$(block%+44)=FNf($savepath%)
  690SYS &000400E7,17,block%,block%!20,block%!24
  691ENDPROC
  692:
  693DEF PROCma
  694block%!12=block%!8
  695block%!16=4
  696SYS &000400E7,17,block%,block%!4
  697ENDPROC
  698:
  699DEF FNg(name$)
  700WHILE INSTR(name$,".")
  701name$=MID$(name$,INSTR(name$,".")+1)
  702ENDWHILE
  703=name$
  704:
  705DEF FNf(name$)
  706WHILE INSTR(name$,".")
  707name$=MID$(name$,INSTR(name$,".")+1)
  708ENDWHILE
  709=name$+CHR$(0)
  710:
  711DEF PROCt
  712LOCAL b%,a%,word%,fullname$
  713fullname$=""
  714FOR word%=0 TO 508 STEP 4:block%!(512+word%)=block%!word%:NEXT word%
  715a%=0
  716b%=block%?(44+a%)
  717WHILE b%<>0
  718fullname$+=CHR$(b%)
  719a%+=1
  720b%=block%?(44+a%)
  721ENDWHILE
  722PROCib(fullname$)
  723FOR word%=0 TO 508 STEP 4:block%!word%=block%!(512+word%):NEXT word%
  724block%!12=block%!8
  725block%!16=3:!block%=256
  726SYS &000400E7,18,block%,block%!20,block%!24
  727ENDPROC
  728:
  729DEF PROCy
  730!block%=main%:block%!4=3: SYS &000400CE,,block%: savespr%=block%!32
  731titleversion%=FNe(titlewin%,6)
  732infoversion%=FNe(info%,4)
  733rep%=FNe(report%,1)
  734savepath%=FNe(main%,1)
  735option%=FNe(main%,4)
  736disptext% =FNe(main%,8)
  737zoommul%=FNe(zoom%,0)
  738zoomdiv%=FNe(zoom%,1)
  739!block%=main%: SYS &000400CC,,block%: maintitle%=block%!76
  740ENDPROC
  741:
  742DEF FNe(whan%,icon%)
  743block%!0=whan%: block%!4=icon%
  744SYS &000400CE,,block%
  745=block%!28
  746:
  747DEF PROCva
  748LOCAL xef%,yef%,size%
  749xef%=FNk(-1,4)
  750yef%=FNk(-1,5)
  751xpix%=1<<xef%: xpix2%=2<<xef%
  752ypix%=1<<yef%: ypix2%=2<<yef%
  753ENDPROC
  754:
  755DEF PROCmb(whan%,icon%,e%,c%)
  756block%!900=whan%:block%!904=icon%
  757block%!908=e%:block%!912=c%
  758SYS wimp_setistate%,,block%+900
  759ENDPROC
  760:
  761DEF FNk(mode%,var%)
  762LOCAL result%
  763SYS &00000035,mode%,var% TO ,,result%
  764=result%
  765:
  766DEF PROCp(whan%,icon%,index%)
  767SYS &000400D2,whan%,icon%,-1,-1,-1,index%
  768ENDPROC
  769:
  770DEF PROCba
  771SYS &000400D3,,carb%
  772ENDPROC
  773:
  774DEF PROCx
  775LOCAL answer%
  776!block%=ERR
  777$(block%+4)=REPORT$+" (Error code "+STR$(ERL)+")"+CHR$0
  778SYS&000400DF,block%,3,"KnitConv" TO ,answer%
  779IF answer%=2 THEN SYS &000400DD: END
  780ENDPROC
  781:
  782DEF PROCr(whan%)
  783CASE whan% OF
  784WHEN main%
  785mainopen%=FALSE
  786WHEN colpic%
  787colpicopen%=FALSE
  788!block%=colpane%
  789SYS &000400C6,,block%
  790ENDCASE
  791!block%=whan%
  792SYS &000400C6,,block%
  793ENDPROC
  794:
  795DEF PROCgb(report$)
  796LOCAL w%,h%
  797VDU 7
  798$rep%=report$
  799SYS &000400D3,,carb%
  800PROCab(report%)
  801SYS &000400D2,report%,-1,0,0,0,0
  802SYS &000400E0,,block%
  803w%=block%!12-block%!4
  804h%=block%!16-block%!8
  805MOUSE TO block%!4+w%/2,block%!8+h%/2
  806MOUSE RECTANGLE block%!4,block%!8,w%-xpix%,h%-ypix%
  807ENDPROC
  808:
  809DEF PROCkb(message$)
  810block%!12=block%!8
  811block%!16=&503
  812$(block%+20)=message$
  813!block%=256
  814SYS &000400E7,17,block%,block%!4
  815ENDPROC
  816:
  817DEF PROCw(sprite$,icon%,whan%)
  818LOCAL ox%,oy%
  819!block%=whan%
  820SYS &000400CB,,block%
  821ox%=block%!4-block%!20
  822oy%=block%!16-block%!24
  823block%!4=icon%
  824SYS &000400CE,,block%
  825block%!8=ox%+block%!8
  826block%!12=oy%+block%!12
  827block%!16=ox%+block%!16
  828block%!20=oy%+block%!20
  829SYS&00042400,%11000101,1,sprite$,block%+8
  830ENDPROC
  831:
  832:
  833DEF PROCfa
  834LOCAL f%
  835fontdata%=FNa(&100)
  836FOR f%=fontdata% TO fontdata%+252 STEP 4:!f%=0:NEXT
  837ENDPROC
  838:
  839DEF PROCpa
  840LOCAL f%
  841FOR f%=0 TO 255
  842WHILE fontdata%?f%>0
  843fontdata%?f%-=1
  844SYS &00040082,f%
  845ENDWHILE
  846NEXT
  847fontdata%=FNd(fontdata%)
  848ENDPROC
  849:
  850DEF PROClb(block%,minx%,miny%,maxx%,maxy%)
  851block%! 0=minx%
  852block%! 4=miny%
  853block%! 8=maxx%
  854block%!12=maxy%
  855ENDPROC
  856:
  857DEF PROCz(RETURN x%,RETURN y%)
  858LOCAL xp%,yp%
  859SYS &00000035,-1,4  TO ,,xp%
  860SYS &00000035,-1,5  TO ,,yp%
  861SYS &00000035,-1,11 TO ,,x%
  862SYS &00000035,-1,12 TO ,,y%
  863x%=(x%+1)<<xp%
  864y%=(y%+1)<<yp%
  865ENDPROC
  866:
  867DEF PROCaa(block%,RETURN x%,RETURN y%)
  868x%=block%!8-block%!0
  869y%=block%!12-block%!4
  870ENDPROC
  871:
  872DEF PROCab(hand%)
  873LOCAL x%,y%,wx%,wy%
  874!block%=hand%
  875SYS &000400CB,,block%
  876PROCz(x%,y%)
  877PROCaa(block%+4,wx%,wy%)
  878x%=x%>>1
  879y%=y%>>1
  880wx%=wx%>>1
  881wy%=wy%>>1
  882PROClb(block%+4,x%-wx%,y%-wy%,x%+wx%,y%+wy%)
  883block%!28=-1
  884SYS &000400C5,,block%
  885ENDPROC
  886:
  887DEF PROCbb(handle%)
  888block%!0=handle%
  889CASE handle% OF
  890WHEN main%
  891mainopen%=TRUE
  892SYS &000400CB,,block%
  893block%!28=-1
  894PROCza
  895WHEN colpic%
  896colpicopen%=TRUE
  897SYS &000400CB,,block%
  898block%!28=-1
  899PROCza
  900OTHERWISE
  901SYS &000400CB,,block%
  902SYS &000400C5,,block%
  903ENDCASE
  904ENDPROC
  905:
  906DEF PROCza
  907IF !block%=colpic% THEN
  908colpicopen%=TRUE
  909PROCra
  910block%!100=colpane%
  911SYS &000400CB,,block%+100
  912block%!104=block%!4+42
  913block%!112=block%!104+362
  914block%!116=block%!16-90
  915block%!108=block%!116-360
  916block%!128=block%!28
  917SYS &000400C5,,block%+100
  918block%!28=colpane%
  919SYS &000400C5,,block%
  920ELSE
  921SYS &000400C5,,block%
  922ENDIF
  923ENDPROC
  924:
  925DEF PROCra
  926LOCAL i%,colour%,maxicon%,space%
  927space%=block%+3000
  928!space%=colpane%
  929SYS &000400CC,,space%
  930space%!(4+44)=-(124+maxcol%*76)
  931IF space%!(4+44)>-300 THEN space%!(4+44)=-300
  932SYS &000400D7,colpane%,space%+44
  933FOR i%=0 TO 28 STEP 4
  934block%!(1004+i%)=space%!(4+88+i%)
  935NEXT i%
  936FOR i%=0 TO 28 STEP 4
  937block%!(1044+i%)=space%!(4+88+32+i%)
  938NEXT i%
  939FOR i%=0 TO 28 STEP 4
  940block%!(1084+i%)=space%!(4+88+64+i%)
  941NEXT i%
  942maxicon%=(space%!(4+84))
  943block%!(2000)=colpane%
  944WHILE maxicon%>-1
  945block%!(2000+4)=maxicon%
  946SYS &000400C4,,block%+2000
  947maxicon%-=1
  948ENDWHILE
  949block%!1000=colpane%: block%!1040=colpane%: block%!1080=colpane%
  950colour%=0
  951WHILE colour%<=maxcol%
  952SYS &000400C2,,block%+1000
  953SYS &000400C2,,block%+1040
  954block%!1104=nametable%+colour%*13
  955SYS &000400C2,,block%+1080
  956block%!1008-=76: block%!1016-=76
  957block%!1048-=76: block%!1056-=76
  958block%!1088-=76: block%!1096-=76
  959colour%+=1
  960ENDWHILE
  961FOR i%=0 TO maxcol%
  962PROCmb(colpane%,i%*3+1,0<<21,1<<21)
  963NEXT i%
  964ENDPROC
  965:
  966DEF PROCea(whan%,icon%,max%,min%,button%,inc%)
  967LOCAL var%,index%
  968block%!0=whan%: block%!4=icon%
  969SYS &000400CE,,block%
  970var%=VAL($(block%!28))-(button%=4)*inc%+(button%=1)*inc%
  971IF var%>max% THEN var%=max%: VDU 7
  972IF var%<min% THEN var%=min%: VDU 7
  973$(block%!28)=STR$(var%)
  974block%!8=0: block%!12=0
  975SYS &000400CD,,block%
  976PROCba
  977IF carb%!0=whan% AND carb%!4=icon% THEN
  978index%=carb%!20
  979IF index%>LEN(STR$(var%)) THEN index%=LEN(STR$(var%))
  980PROCp(whan%,icon%,index%)
  981ENDIF
  982ENDPROC
  983:
  984DEF PROCs
  985block%!1000=titlewin%
  986SYS &000400C3,,block%+1000
  987titlewin%=0:mask%=mask% EOR 1
  988PROCpa
  989titlespr%=FNd(titlespr%)
  990titleopen%=FALSE
  991ENDPROC
  992:
  993DEF PROCya
  994IF titleopen%=TRUE THEN  PROCs
  995ENDPROC
  996:
  997DEF FNi(ident$,sprites%)
  998LOCAL whan%
  999$name%=ident$
 1000SYS&000400DB,,block%,windowind%,windowind%+indsize%,fontdata%,name%,0  TO ,,windowind%
 1001IF sprites%<>0 THEN block%!64=sprites%
 1002SYS&000400C1,,block% TO whan%
 1003=whan%
 1004:
 1005DEF PROCda(han%,icon%)
 1006LOCAL ptr%,len%,text$,i%,item%,tok$
 1007CASE han% OF
 1008WHEN main%
 1009tok$="main"
 1010CASE icon% OF
 1011ENDCASE
 1012WHEN report%: tok$="report": icon%=-1
 1013WHEN info%: tok$="info": icon%=-1
 1014WHEN zoom%: tok$="zoom": icon%=-1
 1015WHEN -2: tok$="ibar": icon%=-1
 1016WHEN titlewin%: tok$="titlewin": icon%=-1
 1017WHEN colpic%,colpane%
 1018tok$="colpic"
 1019IF icon%<>1 THEN icon%=-1
 1020OTHERWISE
 1021SYS &000400F4,0,block%+800
 1022sel%=block%!800: subsel%=block%!804
 1023subsubsel%=block%!808
 1024icon%=sel%
 1025CASE menuopen% OF
 1026WHEN imenu%
 1027tok$="imenu"
 1028WHEN processmenu%
 1029tok$="processmenu"
 1030CASE sel% OF
 1031WHEN 1
 1032CASE subsel% OF
 1033
 1034WHEN 0,1,2,3,4,5 : tok$="spritemenu": icon%=subsel%
 1035ENDCASE
 1036WHEN 2
 1037CASE subsel% OF
 1038
 1039WHEN 0,1,2 : tok$="jacmenu": icon%=subsel%
 1040ENDCASE
 1041ENDCASE
 1042ENDCASE
 1043ENDCASE
 1044IF icon%<>-1 THEN tok$=tok$+STR$(icon%)
 1045SYS &00041502,infobuff%,tok$,0 TO ,,ptr%,len%
 1046text$=""
 1047FOR i%=0 TO len%-1
 1048text$+=CHR$(ptr%?i%)
 1049NEXT i%
 1050PROCkb(text$)
 1051ENDPROC
 1052:
 1053DEF PROCob(menu%,menunum%)
 1054LOCAL num%,width%,ptr%,i%,item$
 1055LOCAL DATA
 1056RESTORE +1
 1057DATA Menu#,1
 1058DATA KnitConv
 1059DATA &00,info%,Info
 1060DATA &80,-1,Quit
 1061DATA Menu#,2
 1062DATA Processes
 1063DATA &00,-1,Remove picture
 1064DATA &00,spritemenu%,Make sprite
 1065DATA &80,jacmenu%,Double Jacquard
 1066DATA Menu#,3
 1067DATA Jacquard
 1068DATA &00,-1,Standard
 1069DATA &00,-1,Elongated
 1070DATA &80,-1,Jigsaw
 1071DATA Menu#,4
 1072DATA Sprite
 1073DATA &00,-1,Low res
 1074DATA &00,-1,High res
 1075DATA &00,-1,16 Colours
 1076DATA &02,-1,256 Colours
 1077DATA &00,-1,Include picture
 1078DATA &80,zoom%,Scale
 1079REPEAT
 1080REPEAT
 1081READ item$
 1082UNTIL item$="Menu#"
 1083READ num%
 1084UNTIL num%=menunum%
 1085READ $menu%
 1086width%=(LEN($menu%)-2)*16
 1087menu%!12=&00070207:menu%!20=44:menu%!24=0
 1088ptr%=menu%+28
 1089REPEAT
 1090READ !ptr%:READ ptr%!4
 1091ptr%!8=&7000021:READ item$
 1092IF (LEN(item$)+1)*16>width% THEN width%=(LEN(item$)+1)*16
 1093IF LEN(item$)<12 THEN
 1094$(ptr%+12)=item$
 1095ELSE
 1096ptr%!8=&7000121
 1097ptr%!12=menuindfree%: $menuindfree%=item$: menuindfree%+=LEN(item$)+1
 1098ptr%!16=menuind%: ptr%!20=LEN(item$)+1
 1099IF menuindfree%>menuind%+menuindsize% THEN ERROR 0,"Increase menuindsize% (in PROCinit)"
 1100ENDIF
 1101ptr%+=24
 1102UNTIL (!(ptr%-24) AND &80)<>0
 1103menu%!16=width%
 1104RESTORE DATA
 1105ENDPROC
 1106:
 1107DEF PROCrb(menu%,mx%,my%)
 1108menuopen%=menu%
 1109CASE menuopen% OF
 1110WHEN processmenu% :
 1111PROCdb(mx%,my%)
 1112mx%+=2
 1113my%+=44
 1114ENDCASE
 1115SYS&000400D4,,menu%,mx%,my%
 1116ENDPROC
 1117:
 1118DEF PROCxb(menu%,item%)
 1119?(menu%+28+item%*24)=(?(menu%+28+item%*24) AND NOT 0) EOR 1
 1120ENDPROC
 1121:
 1122DEF PROCub(menu%,item%)
 1123?(menu%+28+item%*24)=?(menu%+28+item%*24) OR 1
 1124ENDPROC
 1125:
 1126DEF PROCyb(menu%,item%)
 1127?(menu%+28+item%*24)=(?(menu%+28+item%*24) AND NOT 1) EOR 0
 1128ENDPROC
 1129:
 1130DEF PROCxa(except%)
 1131LOCAL var%
 1132CASE except% OF
 1133WHEN -1
 1134FOR var%=0 TO ilist%
 1135PROCyb(imenu%,var%)
 1136NEXT var%
 1137FOR var%=0 TO proclist%
 1138PROCyb(processmenu%,var%)
 1139NEXT var%
 1140FOR var%=0 TO jaclist%
 1141PROCyb(jacmenu%,var%)
 1142NEXT var%
 1143FOR var%=0 TO sprlist%
 1144PROCyb(spritemenu%,var%)
 1145NEXT var%
 1146WHEN imenu%
 1147FOR var%=0 TO proclist%
 1148PROCyb(processmenu%,var%)
 1149NEXT var%
 1150FOR var%=0 TO jaclist%
 1151PROCyb(jacmenu%,var%)
 1152NEXT var%
 1153FOR var%=0 TO sprlist%
 1154PROCyb(spritemenu%,var%)
 1155NEXT var%
 1156WHEN processmenu%
 1157FOR var%=0 TO ilist%
 1158PROCyb(imenu%,var%)
 1159NEXT var%
 1160FOR var%=0 TO jaclist%
 1161PROCyb(jacmenu%,var%)
 1162NEXT var%
 1163WHEN jacmenu%
 1164FOR var%=0 TO ilist%
 1165PROCyb(imenu%,var%)
 1166NEXT var%
 1167FOR var%=0 TO proclist%
 1168PROCyb(processmenu%,var%)
 1169NEXT var%
 1170FOR var%=0 TO sprlist%
 1171PROCyb(spritemenu%,var%)
 1172NEXT var%
 1173WHEN spritemenu%
 1174FOR var%=0 TO ilist%
 1175PROCyb(imenu%,var%)
 1176NEXT var%
 1177FOR var%=0 TO proclist%
 1178PROCyb(processmenu%,var%)
 1179NEXT var%
 1180FOR var%=0 TO jaclist%
 1181PROCyb(jacmenu%,var%)
 1182NEXT var%
 1183ENDCASE
 1184ENDPROC
 1185:
 1186DEF PROCwb(menu%,item%)
 1187?(menu%+38+item%*24)=(?(menu%+38+item%*24) AND NOT 0<<6) EOR 1<<6
 1188ENDPROC
 1189:
 1190DEF PROCqb(menu%,item%,shade%)
 1191?(menu%+38+item%*24)=(?(menu%+38+item%*24) AND NOT 1<<6) EOR shade%<<6
 1192ENDPROC
 1193:
 1194DEF FNh(menu%,item%)
 1195=(?(menu%+28+item%*24) AND 1)<>0
 1196:
 1197DEF PROCdb( RETURN mx%, RETURN my%)
 1198LOCAL c%,ox%,oy%,vaminx%,vamaxy%,miny%,maxx%
 1199LOCAL scrollxoffset%,scrollyoffset%
 1200c%=block%+800
 1201c%!0=main%
 1202SYS &000400CB,,c%
 1203vaminx%=c%!4
 1204vamaxy%=c%!16
 1205scrollxoffset%=c%!20
 1206scrollyoffset%=c%!24
 1207ox%=vaminx%-scrollxoffset%
 1208oy%=vamaxy%-scrollyoffset%
 1209c%!0=main%
 1210c%!4=5
 1211SYS &000400CE,,c%
 1212miny%=c%!12
 1213maxx%=c%!16
 1214mx%=ox%+maxx%
 1215my%=oy%+miny%
 1216ENDPROC
 1217:
 1218DEF FNj(a$)
 1219LOCAL a%,l%,s%
 1220a%=OPENINa$
 1221l%=EXT#a%+4
 1222CLOSE #a%
 1223s%=FNa(l%)
 1224!s%=l%
 1225SYS &0000002E,&10A,s%,a$
 1226=s%
 1227:
 1228DEF FNa(size%)
 1229errflag%=0
 1230IF heap%=0 PROCnb(size%+16)
 1231IF NOT errflag% THEN
 1232SYS &0002001D,1,heap% TO ,,free%
 1233IF free%<size% PROCca(size%,1)
 1234IF NOT errflag% THEN
 1235SYS &0002001D,2,heap%,,size% TO ,,ptr%
 1236ENDIF
 1237ENDIF
 1238IF errflag% THEN =0 ELSE =ptr%
 1239:
 1240DEF FNd(ptr%)
 1241SYS &0002001D,3,heap%,ptr%
 1242PROCqa
 1243=0
 1244:
 1245DEF PROCqa
 1246LOCAL size%,x%,s%
 1247SYS &0002001D,1,heap% TO ,,size%
 1248size%=(size% DIV page%)*page%
 1249IF size% THEN
 1250SYS &0002001D,5,heap%,,-size% TO ,,,s%;flag%
 1251IF flag% AND 1 THEN
 1252x%=(s% DIV page%)*page%
 1253IF s%-x% SYS &0002001D,5,heap%,,s%-x%
 1254ELSE
 1255x%=size%
 1256ENDIF
 1257SYS &000400EC,appsize%-x%,-1
 1258appsize%-=x%:heapsize%-=x%
 1259ENDIF
 1260ENDPROC
 1261:
 1262DEF PROCm(RETURN ptr%,size%)
 1263LOCAL flag%
 1264errflag%=0:REPEAT
 1265SYS &0002001D,4,heap%,ptr%,size% TO ,,ptr%;flag%
 1266IF flag% AND 1 PROCca(page%,1)
 1267UNTIL (flag% AND 1)=0 OR errflag%=TRUE
 1268IF NOT errflag% THEN
 1269IF size%<0 PROCqa
 1270ENDIF
 1271ENDPROC
 1272:
 1273DEF PROCca(mem%,x%)
 1274LOCAL new%
 1275SYS &000400EC,appsize%+mem%,-1 TO new%
 1276IF new%<appsize%+mem% THEN
 1277errflag%=TRUE
 1278SYS &000400EC,appsize%,-1
 1279ERROR 1<<30,"Not enough memory"
 1280ELSE
 1281IF x% SYS &0002001D,5,heap%,,new%-appsize%
 1282heapsize%=new%+&8000-HIMEM
 1283appsize%=new%
 1284ENDIF
 1285ENDPROC
 1286:
 1287DEF PROCnb(initsize%)
 1288PROCca(initsize%,0)
 1289IF NOT errflag% THEN
 1290heap%=HIMEM
 1291SYS &0002001D,0,heap%,,heapsize%
 1292ENDIF
 1293ENDPROC
 1294:
 1295DEFPROCv(line%,mess$,var)
 1296mess$=LEFT$(mess$,14)
 1297var$=STR$(var)
 1298PROCu(line%,mess$+STRING$(25-LEN(mess$)-LEN(var$)," ")+var$)
 1299ENDPROC
 1300:
 1301DEFPROCu(line%,mess$)
 1302SYS &00000024,"db$mess","XX"
 1303SYS &00000024,"db$mess"+STR$(line%),mess$
 1304ENDPROC
 1305:
 1306DEF PROCn(berty$)
 1307LOCAL berty%
 1308IF bertyfile%=FALSE THEN
 1309berty%=OPENOUT("<KnitConv$Dir>.^.Berty")
 1310CLOSE#berty%
 1311OSCLI("SetType<KnitConv$Dir>.^.Berty Text")
 1312bertyfile%=TRUE
 1313ENDIF
 1314berty%=OPENUP("<KnitConv$Dir>.^.Berty")
 1315PTR#berty%=EXT#berty%
 1316BPUT#berty%,""
 1317BPUT#berty%,berty$
 1318CLOSE#berty%
 1319*Filer_Run <KnitConv$Dir>.^.Berty
 1320ENDPROC
 1321:
 1322DEF PROCsb(fname$)
 1323CASE manner% OF
 1324WHEN 1
 1325grows$=ans_conv_rows$
 1326gstitches$=ans_conv_stitches$
 1327ans_conv_rows$="0"
 1328ans_conv_stitches$="0"
 1329conv_rows$="0.0"
 1330conv_stitches$="0.0"
 1331gheight$=STR$((VAL(tension_sq_height$))/(VAL(tension_sq_rows$)))
 1332gwidth$=STR$((VAL(tension_sq_width$))/(VAL(tension_sq_stitches$)))
 1333tension_sq_width$="0.0"
 1334tension_sq_height$="0.0"
 1335tension_sq_stitches$="0"
 1336tension_sq_rows$="0"
 1337textdispvar%=6
 1338main37%=0
 1339mastergrey%=4
 1340pictype$="none"
 1341manner%=0
 1342PROCjb(fname$)
 1343PROCvb
 1344OTHERWISE
 1345PROCgb("There is no picture to remove from this file")
 1346ENDCASE
 1347ENDPROC
 1348:
 1349DEF PROCsa(fname$)
 1350LOCAL wx%,wy%,ninx%,maxx%,miny%,maxy%,sminx%,smaxx%,sminy%,smaxy%
 1351LOCAL xc%,yc%,extrawidth%,scraddr%,savsize%,savarea%,r0%,r1%,r2%,r3%
 1352LOCAL sw%,rh%,y%,x%,xx%,w%,col%,yl%,yh%,xl%,xh%,min%,max%,row%,stitch%
 1353LOCAL scl%,nummin%,nummax%,num%,xmove%,ymove%,symb%
 1354PROCo
 1355wx%=0
 1356wy%=scrheight%
 1357minx%=0: maxx%=scrwidth%
 1358miny%=0: maxy%=scrheight%
 1359sminx%=0
 1360smaxx%=gridwidth%
 1361sminy%=0
 1362smaxy%=gridheight%
 1363xc%=wx%+rulesize%
 1364yc%=wy%-editht%+rulesize%
 1365extrawidth%=4-(scrwidth% MOD 4): IF extrawidth%=4 THEN extrawidth%=0
 1366scrsize%=(scrwidth%+extrawidth%)*scrheight%+200
 1367scrarea%=FNa(scrsize%)
 1368!scrarea%=scrsize%
 1369scrarea%!8=16
 1370SYS &0000002E,256+9,scrarea%
 1371IF scrmode%=12 OR scrmode%=20 THEN palflag%=1 ELSE palflag%=0
 1372SYS &0000002E,256+15,scrarea%,"screen",palflag%,scrwidth%,scrheight%,scrmode%
 1373SYS &0000002E,&118,scrarea%,"screen" TO ,,scraddr%
 1374IF scrmode%=12 OR scrmode%=20 THEN
 1375
 1376FOR i%=0 TO 124 STEP 4
 1377!(scraddr%+44+i%)=pal16%!i%
 1378NEXT i%
 1379ENDIF
 1380SYS &0000002E,512+62,scrarea%,scraddr% TO ,,,savsize%
 1381savarea%=FNa(savsize%)
 1382savarea%!0=0
 1383SYS &0000002E,512+60,scrarea%,scraddr%,savarea% TO r0%,r1%,r2%,r3%
 1384ON ERROR LOCAL :SYS &000406C2:SYS &0000002E,r0%,r1%,r2%,r3%:PROCx:QUIT
 1385VDU 26
 1386VDU 5
 1387IF scrmode%=12 OR scrmode%=15 THEN VDU 23,17,7,%10,8;8;0,0 ELSE VDU 23,17,7,%10,8;16;0,0
 1388SYS ct_setgcol%,FNl(backcol%),,,1<<7
 1389CLG
 1390IF spriteon%=TRUE THEN
 1391CASE pictype$ OF
 1392WHEN "sprite"
 1393block%!100=xc%<<8
 1394block%!104=(yc%+gridheight%*rht%)<<8
 1395block%!108=(xc%+gridwidth%*stw%)<<8
 1396block%!112=(yc%+gridheight%*rht%)<<8
 1397block%!116=(xc%+gridwidth%*stw%)<<8
 1398block%!120=yc%<<8
 1399block%!124=xc%<<8
 1400block%!128=yc%<<8
 1401
 1402SYS&0000002E,&238,sourcespr%,sourceaddr%,1,0,0,block%+100,transtable%
 1403WHEN "draw"
 1404scalex=(((gridwidth%*stw%)<<8)/(drawx%))
 1405scaley=(((gridheight%*rht%)<<8)/(drawy%-1))
 1406transform%!0 =scalex*65536
 1407transform%!4 =0
 1408transform%!8 =0
 1409transform%!12=scaley*65536
 1410transform%!16=(xc%<<8)-drawxoffset%*scalex
 1411transform%!20=(yc%<<8)-drawyoffset%*scaley
 1412
 1413SYS &00045540,0,draw%,drawlen%,transform%,0
 1414ENDCASE
 1415ENDIF
 1416CASE manner% OF
 1417WHEN 0,1
 1418
 1419sw%=stw%+xpix2%*(gridon%=TRUE)
 1420rh%=rht%+ypix2%*(gridon%=TRUE)
 1421y%=yc%-ypix%*(gridon%=TRUE)
 1422xx%=xc%-xpix%*(gridon%=TRUE)
 1423FORw%=sminx%TOsmaxx%-1:x%=xx%+w%*stw%
 1424FORh%=sminy%TOsmaxy%-1:col%=coltable%?(h%*gridwidth%+w%):IFshowmask%col%=col%AND191
 1425IF(col%AND192)=0SYSct_setgcol%,paltable%!((col%AND63)*4):RECTANGLEFILLx%,y%+h%*rht%,sw%,rh%
 1426NEXT
 1427SYS &000406C4,((80*w%) DIV gridwidth%)
 1428NEXT
 1429
 1430SYS ct_setgcol%,FNl(gridcol%)
 1431
 1432yl%=yc%+sminy%*rht%: yh%=yc%+smaxy%*rht%
 1433FOR x%=sminx% TO smaxx%
 1434MOVE xc%+x%*stw%,yl%
 1435DRAW xc%+x%*stw%,yh%
 1436NEXT x%
 1437SYS &000406C4,84
 1438
 1439xl%=xc%+sminx%*stw%: xh%=xc%+smaxx%*stw%
 1440FOR y%=sminy% TO smaxy%
 1441MOVE xl%,yc%+y%*rht%
 1442DRAW xh%,yc%+y%*rht%
 1443NEXT y%
 1444SYS &000406C4,88
 1445SYS ct_setgcol%,FNl(forecol%)
 1446
 1447min%=0
 1448max%=gridheight%
 1449min%=min% DIV 10
 1450max%=max% DIV 10
 1451FOR row%=min% TO max%
 1452x%=xc%
 1453y%=yc%+row%*rht%*10+16
 1454MOVE x%+(16*(row%>0))+(16*(row%>9))-40,y%
 1455PRINT ;row%*10
 1456MOVE x%-20,y%-16
 1457DRAW x%,y%-16
 1458NEXT row%
 1459SYS &000406C4,92
 1460
 1461max%=gridheight%
 1462min%=0
 1463min%=min% DIV 10
 1464max%=max% DIV 10
 1465FOR row%=min% TO max%
 1466x%=xc%+24+gridwidth%*stw%
 1467y%=row%*rht%*10+yc%+16
 1468MOVE x%,y%
 1469PRINT ;row%*10
 1470MOVE x%-4,y%-16
 1471DRAW x%-24,y%-16
 1472NEXT row%
 1473SYS &000406C4,96
 1474
 1475max%=gridwidth%
 1476min%=0
 1477min%=min% DIV 10
 1478max%=max% DIV 10
 1479FOR stitch%=min% TO max%
 1480x%=xc%+stitch%*stw%*10
 1481y%=yc%-24
 1482MOVE x%+(16*(stitch%>0))+(8*(stitch%>9)),y%
 1483PRINT ;stitch%*10
 1484MOVE x%,y%+4
 1485DRAW x%,y%+20
 1486NEXT stitch%
 1487SYS &000406C4,99
 1488
 1489max%=gridwidth%
 1490min%=0
 1491min%=min% DIV 10
 1492max%=max% DIV 10
 1493FOR stitch%=min% TO max%
 1494x%=xc%+stitch%*stw%*10
 1495y%=yc%+gridheight%*rht%
 1496MOVE x%+(16*(stitch%>0))+(8*(stitch%>9)),y%+44
 1497PRINT ;stitch%*10
 1498MOVE x%,y%
 1499DRAW x%,y%+16
 1500NEXT stitch%
 1501WHEN 2
 1502
 1503scl%=(stw%-30)/2
 1504nummin%=sminx%-1
 1505nummax%=smaxx%+1
 1506nummin%-=nummin%MOD2
 1507IF nummin%<0 THEN nummin%=0
 1508IF nummax%>gridwidth% THEN nummax%=gridwidth%
 1509FOR x%=nummin% TO nummax% STEP 2
 1510IF x% MOD 2=0 THEN
 1511IF x%<=gridwidth%/2 THEN
 1512num%=gridwidth%/2-x%
 1513IF num% MOD 2=1 THEN num%-=1 : xmove%=stw% ELSE xmove%=0
 1514SYS ct_setgcol%,FNl(forecol%)
 1515IF num% MOD12=0 THEN SYS ct_setgcol%,FNl(11) ELSE SYS ct_setgcol%,FNl(gridcol%)
 1516IF num%=0 THEN
 1517MOVE xc%+(gridwidth%/2)*stw%-8,yc%-4
 1518PRINT ;num%
 1519MOVE xc%+(gridwidth%/2)*stw%-8,yc%+gridheight%*rht%+32
 1520PRINT ;num%
 1521ELSE
 1522IF num%<10 THEN xmove%+=8
 1523MOVE xc%+x%*stw%+xmove%+scl%,yc%-4
 1524PRINT ;num%
 1525MOVE xc%+x%*stw%+xmove%+scl%,yc%+gridheight%*rht%+32
 1526PRINT ;num%
 1527ENDIF
 1528ELSE
 1529num%=x%-gridwidth%/2
 1530IF num% MOD 2=1 THEN num%-=1 : xmove%=stw% ELSE xmove%=0
 1531IF num% MOD12=0 THEN SYS ct_setgcol%,FNl(11) ELSE SYS ct_setgcol%,FNl(gridcol%)
 1532IF num%<10 THEN xmove%-=8
 1533MOVE xc%+(x%-1)*stw%-xmove%+scl%,yc%-4
 1534IF num%<>0 THEN PRINT ;num%
 1535MOVE xc%+(x%-1)*stw%-xmove%+scl%,yc%+gridheight%*rht%+32
 1536IF num%<>0 THEN PRINT ;num%
 1537ENDIF
 1538ENDIF
 1539NEXT x%
 1540
 1541nummin%=sminy%-1
 1542nummax%=smaxy%+1
 1543nummin%-=nummin% MOD 2
 1544nummax%+=nummax% MOD 2
 1545IF nummin%<0 THEN nummin%=0
 1546IF nummax%>gridheight% THEN nummax%=gridheight%
 1547FOR y%=nummin% TO nummax% STEP 2
 1548IF y%=0 THEN ymove%=12 ELSE ymove%=-scl%
 1549IF y%<10 THEN xmove%=16 ELSE xmove%=0
 1550IF y%>99 THEN xmove%=-16
 1551IF y% MOD10=0 THEN SYS ct_setgcol%,FNl(11) ELSE SYS ct_setgcol%,FNl(gridcol%)
 1552MOVE xc%-36+xmove%,yc%+y%*rht%-2+ymove%
 1553PRINT ;y%
 1554MOVE xc%+gridwidth%*stw%+4,yc%+y%*rht%-2+ymove%
 1555PRINT ;y%
 1556NEXT y%
 1557SYS ct_setgcol%,FNl(gridcol%)
 1558
 1559yl%=yc%+sminy%*rht%: yh%=yc%+smaxy%*rht%
 1560FOR x%=sminx% TO smaxx%
 1561IF (gridwidth%/2-x%)MOD12=0 THEN SYS ct_setgcol%,FNl(11) ELSE SYS ct_setgcol%,FNl(gridcol%)
 1562MOVE xc%+x%*stw%,yl%
 1563DRAW xc%+x%*stw%,yh%
 1564NEXT x%
 1565
 1566xl%=xc%+sminx%*stw%: xh%=xc%+smaxx%*stw%
 1567FOR y%=sminy% TO smaxy%
 1568IF y% MOD 10=0 THEN SYS ct_setgcol%,FNl(11) ELSE SYS ct_setgcol%,FNl(gridcol%)
 1569MOVE xl%,yc%+y%*rht%
 1570DRAW xh%,yc%+y%*rht%
 1571NEXT y%
 1572
 1573transform%!0 =(edmul%/eddiv%)*65536
 1574transform%!4 =0
 1575transform%!8 =0
 1576transform%!12=(edmul%/eddiv%)*65536
 1577y%=yc%-ypix%*(gridon%=TRUE)
 1578xx%=xc%-xpix%*(gridon%=TRUE)
 1579FORw%=sminx%TOsmaxx%-1:x%=xx%+w%*stw%:transform%!16=x%<<8:FORh%=sminy%TOsmaxy%-1:symb%=coltable%?(h%*gridwidth%+w%)
 1580IF (symb%AND128)=0 THEN
 1581transform%!20=(y%+h%*rht%)<<8
 1582SYS &00045540,0,symbpoint%!(symb%*4),symbsize%!(symb%*4),transform%,0
 1583ENDIF
 1584NEXT:NEXT
 1585ENDCASE
 1586SYS &0000002E,r0%,r1%,r2%,r3%
 1587SYS &0000002E,256+12,scrarea%,fname$
 1588PROCvb
 1589ENDPROC
 1590:
 1591DEF FNl(wimpcol%)
 1592CASE wimpcol% OF
 1593WHEN 0: rgb%=&FFFFFF00
 1594WHEN 1: rgb%=&DDDDDD00
 1595WHEN 2: rgb%=&BBBBBB00
 1596WHEN 3: rgb%=&99999900
 1597WHEN 4: rgb%=&77777700
 1598WHEN 5: rgb%=&55555500
 1599WHEN 6: rgb%=&33333300
 1600WHEN 7: rgb%=&00000000
 1601WHEN 8: rgb%=&99440000
 1602WHEN 9: rgb%=&00EEEE00
 1603WHEN 10:rgb%=&00CC0000
 1604WHEN 11:rgb%=&0000DD00
 1605WHEN 12:rgb%=&BBEEEE00
 1606WHEN 13:rgb%=&00885500
 1607WHEN 14:rgb%=&00BBFF00
 1608WHEN 15:rgb%=&FFBB0000
 1609ENDCASE
 1610=rgb%
 1611:
 1612DEF PROCzb
 1613wimppal%!0= &FFFFFF00
 1614wimppal%!4= &DDDDDD00
 1615wimppal%!8= &BBBBBB00
 1616wimppal%!12= &99999900
 1617wimppal%!16= &77777700
 1618wimppal%!20= &55555500
 1619wimppal%!24= &33333300
 1620wimppal%!28= &00000000
 1621wimppal%!32= &99440000
 1622wimppal%!36= &00EEEE00
 1623wimppal%!40= &00CC0000
 1624wimppal%!44= &0000DD00
 1625wimppal%!48= &BBEEEE00
 1626wimppal%!52= &00885500
 1627wimppal%!56= &00BBFF00
 1628wimppal%!60= &FFBB0000
 1629ENDPROC
 1630:
 1631DEF PROCvb
 1632IF coltable%<>0 THEN coltable%=FNd(coltable%)
 1633IF nametable%<>0 THEN nametable%=FNd(nametable%)
 1634IF paltable%<>0 THEN paltable%=FNd(paltable%)
 1635IF sourcespr%<>0 THEN sourcespr%=FNd(sourcespr%)
 1636IF draw%<>0 THEN draw%=FNd(draw%)
 1637IF scrarea%<>0 THEN scrarea%=FNd(scrarea%)
 1638IF transtable%<>0 THEN transtable%=FNd(transtable%)
 1639IF symbstore%<>0 THEN symbstore%=FNd(symbstore%)
 1640IF symbpoint%<>0 THEN symbpoint%=FNd(symbpoint%)
 1641IF symbsize%<>0 THEN symbsize%=FNd(symbsize%)
 1642IF descinfobuff%<>0 THEN descinfobuff%=FNd(descinfobuff%)
 1643IF descbuff%<>0 THEN descbuff%=FNd(descbuff%)
 1644IF extradescinfobuff%<>0 THEN extradescinfobuff%=FNd(extradescinfobuff%)
 1645IF extradescbuff%<>0 THEN extradescbuff%=FNd(extradescbuff%)
 1646IF colorder%<>0 THEN colorder%=FNd(colorder%)
 1647jactype%=0 : restype%=0 : coltype%=2
 1648ENDPROC
 1649:
 1650DEF PROChb
 1651SYS &000400D2,-1,-1
 1652PROCmb(main%,1,1<<22,1<<22)
 1653PROCmb(main%,2,3<<24,15<<24)
 1654PROCmb(main%,3,1<<22,1<<22)
 1655PROCmb(main%,7,1<<24,15<<24)
 1656opt%=-1
 1657$option%="Please choose a conversion process  > > >"
 1658PROCmb(main%,4,0,0)
 1659PROCtb(1)
 1660PROCxa(-1)
 1661ENDPROC
 1662:
 1663DEF PROCo
 1664IF VAL(tension_sq_stitches$)<>0 THEN stitch_width=VAL(tension_sq_width$)/VAL(tension_sq_stitches$) ELSE stitch_width=0
 1665IF VAL(tension_sq_rows$)<>0 THEN row_height=VAL(tension_sq_height$)/VAL(tension_sq_rows$) ELSE row_height=0
 1666CASE manner% OF
 1667WHEN 0
 1668stitchwidth=FNb(VALgwidth$)
 1669rowht=FNb(VALgheight$)
 1670stitchwidth%=INT(stitchwidth)
 1671rowht%=INT(rowht)
 1672gridwidth%=VALgstitches$
 1673gridheight%=VALgrows$
 1674g%=0
 1675spriteon%=FALSE
 1676WHEN 1
 1677gridwidth%=VALans_conv_stitches$
 1678gridheight%=VALans_conv_rows$
 1679stitchwidth=FNb(stitch_width)
 1680rowht=FNb(row_height)
 1681stitchwidth%=INT(stitchwidth)
 1682rowht%=INT(rowht)
 1683g%=0
 1684spriteon%=FNh(spritemenu%,4)
 1685WHEN 2
 1686gridwidth%=VALgstitches$
 1687gridheight%=VALgrows$
 1688rowht%=30
 1689stitchwidth%=30
 1690rowht=30: rht%=30
 1691stitchwidth=30: stw%=30
 1692spriteon%=FALSE
 1693ENDCASE
 1694edmul%=VAL$zoommul%
 1695eddiv%=VAL$zoomdiv%
 1696stitchwidth%=INT((stitchwidth*edmul%)/eddiv%)
 1697rowht%=INT((rowht*edmul%)/eddiv%)
 1698stw%=stitchwidth%
 1699rht%=rowht%
 1700gridon%=TRUE
 1701showmask%=TRUE
 1702rulesize%=80
 1703tbarht%=00
 1704CASE backcol% OF
 1705WHEN 4,5,6,7,8,10,11,13
 1706forecol%=0
 1707OTHERWISE
 1708forecol%=7
 1709ENDCASE
 1710rht%=rowht%
 1711stw%=stitchwidth%
 1712IF manner%=2 THEN PROCoa
 1713IF FNh(spritemenu%,0)=TRUE THEN
 1714IF FNh(spritemenu%,2) THEN scrmode%=12 ELSE scrmode%=15
 1715ELSE
 1716IF FNh(spritemenu%,2) THEN scrmode%=20 ELSE scrmode%=21
 1717ENDIF
 1718xef%=FNk(scrmode%,4)
 1719yef%=FNk(scrmode%,5)
 1720xpix%=1<<xef%: xpix2%=2<<xef%
 1721ypix%=1<<yef%: ypix2%=2<<yef%
 1722scrwidth%=(gridwidth%*stitchwidth%+2*rulesize%)>>xef%
 1723scrheight%=(gridheight%*rowht%+2*rulesize%)>>yef%
 1724editht%=scrheight%
 1725IF pictype$="sprite" THEN
 1726IF scrmode%=12 OR scrmode%=20 THEN palpoint%=wimppal% ELSE palpoint%=0
 1727SYS &00040740,sourcespr%,sourceaddr%,scrmode%,palpoint%,0,1,0,0 TO ,,,,size%
 1728transtable%=FNa(size%)
 1729SYS &00040740,sourcespr%,sourceaddr%,scrmode%,palpoint%,transtable%,1,0,0
 1730ENDIF
 1731ENDPROC
 1732:
 1733DEF FNb(cm)
 1734LOCAL factor
 1735IF unitmenu%=TRUE THEN
 1736factor=180
 1737ELSE
 1738factor=70.866
 1739ENDIF
 1740=cm*factor
 1741:
 1742DEF PROCoa
 1743LOCAL i%,c%,size%,num%,oldi%,ptr%,pochle%,extrasymb%,extrasize%,extranum%,extrai%,flags%
 1744
 1745SYS &00000029,28,"<KnitConv$Dir>.Resources.Symbols.*" TO ,,size%,num%
 1746SYS &00000029,28,"<KnitConv$Dir>.Resources.Symbols.Describe" TO ,,i%
 1747num%-=1
 1748SYS &00020029,28,"<KnitConv$Dir>.^.Symbols.*" TO ,,extrasize%,extranum%;flags%
 1749IF (flags% AND 1)=1 THEN
 1750extrasize%=0:extranum%=0
 1751extrasymb%=FALSE
 1752ELSE
 1753extrasymb%=TRUE
 1754ENDIF
 1755SYS &00020029,28,"<KnitConv$Dir>.^.Symbols.Describe" TO ,,extrai%;flags%
 1756IF (flags% AND 1)=1 THEN extrai%=0 ELSE extranum%-=1:IF extranum%<0 THEN extranum%=0
 1757symbmax%=num%+extranum%-1
 1758i%+=extrai%
 1759symbstore%=FNa(size%+extrasize%-i%)
 1760symbpoint%=FNa((num%+extranum%)*4)
 1761symbsize%=FNa((num%+extranum%)*4)
 1762IF nametable%<>0 THEN nametable%=FNd(nametable%)
 1763nametable%=FNa((num%+extranum%)*11)
 1764
 1765SYS&0000000C,9,"<KnitConv$Dir>.Resources.Symbols",block%,num%+1,0,3000,"*"
 1766i%=0 : oldi%=block%:pochle%=0
 1767FOR c%=0 TO num%
 1768WHILE block%?i%<>0
 1769i%+=1
 1770ENDWHILE
 1771block%?i%=13
 1772IF $(oldi%)="Describe" THEN
 1773pochle%=1
 1774ELSE
 1775$(nametable%+(c%-pochle%)*11)=$(oldi%)
 1776ENDIF
 1777i%+=1
 1778oldi%=block%+i%
 1779NEXT c%
 1780c%=0: pochle%=0
 1781
 1782FOR i%=0 TO num%-1
 1783path$="<KnitConv$Dir>.Resources.Symbols."+$(nametable%+i%*11)
 1784SYS&00000008,&FF,path$,symbstore%+c%,0 TO ,,,,size%
 1785symbpoint%!(i%*4)=symbstore%+c%
 1786symbsize%!(i%*4)=size%
 1787c%+=size%
 1788NEXT i%
 1789IF extrasymb%=TRUE THEN
 1790
 1791ptr%=c%
 1792SYS&0000000C,9,"<KnitConv$Dir>.^.Symbols",block%,extranum%+1,0,3000,"*"
 1793i%=0 : oldi%=block%:pochle%=0
 1794FOR c%=num% TO num%+extranum%
 1795WHILE block%?i%<>0
 1796i%+=1
 1797ENDWHILE
 1798block%?i%=13
 1799IF $(oldi%)="Describe" THEN
 1800pochle%=1
 1801ELSE
 1802$(nametable%+(c%-pochle%)*11)=$(oldi%)
 1803ENDIF
 1804i%+=1
 1805oldi%=block%+i%
 1806NEXT c%
 1807c%=ptr%: pochle%=0
 1808
 1809FOR i%=num% TO num%+extranum%-1
 1810path$="<KnitConv$Dir>.^.Symbols."+$(nametable%+i%*11)
 1811SYS&00000008,&FF,path$,symbstore%+c%,0 TO ,,,,size%
 1812symbpoint%!(i%*4)=symbstore%+c%
 1813symbsize%!(i%*4)=size%
 1814c%+=size%
 1815NEXT i%
 1816ENDIF
 1817ENDPROC
 1818:
 1819DEF PROCja(fname$)
 1820LOCAL colnum%,toprow%,blank%,line%,stitch%,ntablesize%,ntable%,newrow%,newrows%
 1821LOCAL colorder%,nextcol%,colsfound%,col%,newline%,dups%,bigtable%,i%,oldrow%,row%
 1822IF manner%=2 THEN
 1823PROCgb("Sorry, the make jacquard process only works with 'Grid only' or 'Grid & picture' EasyKnit files.")
 1824ELSE
 1825IF FNh(jacmenu%,2)= TRUE THEN
 1826PROCka
 1827ELSE
 1828PROCia
 1829colnum%=FNc
 1830toprow%=0
 1831blank%=TRUE
 1832line%=gridheight%-1
 1833REPEAT
 1834stitch%=0
 1835REPEAT
 1836IF ?(coltable%+line%*gridwidth%+stitch%)<128 THEN blank%=FALSE
 1837stitch%+=1
 1838UNTIL stitch%=gridwidth% OR blank%=FALSE
 1839line%-=1
 1840UNTIL line%=-1 OR blank%=FALSE
 1841toprow%=line%+2
 1842ntablesize%=gridwidth%*toprow%*colnum%
 1843ntablesize%=ntablesize%*double%
 1844ntable%=FNa(ntablesize%)
 1845colorder%=FNa(colnum%)
 1846FOR col%=0 TO colnum%-1
 1847colorder%?col%=255
 1848NEXT col%
 1849line%=0
 1850nextcol%=0
 1851colsfound%=0
 1852REPEAT
 1853stitch%=0
 1854REPEAT
 1855col%=?(coltable%+line%*gridwidth%+stitch%)
 1856IF col% < 128 THEN
 1857col%=col% AND 63
 1858found%=FALSE
 1859i%=0
 1860WHILE colorder%?i%<>255
 1861IF colorder%?i%=col% THEN found%=TRUE
 1862i%+=1
 1863ENDWHILE
 1864IF found%= FALSE THEN colorder%?i%=col%: colsfound%+=1
 1865ENDIF
 1866stitch%+=1
 1867UNTIL stitch%= gridwidth% OR  colsfound%=colnum%
 1868line%+=1
 1869UNTIL line%=toprow% OR colsfound%=colnum%
 1870tot%=toprow%*gridwidth%
 1871done%=0
 1872FOR line%=0 TO toprow%-1
 1873FOR stitch%= 0 TO gridwidth%-1
 1874FOR newline%=0 TO colnum%-1
 1875IF coltable%?(line%*gridwidth%+stitch%)=colorder%?newline% THEN
 1876?(ntable%+line%*gridwidth%*colnum%+newline%*gridwidth%+stitch%)=colorder%?newline%
 1877ELSE
 1878?(ntable%+line%*gridwidth%*colnum%+newline%*gridwidth%+stitch%)=128
 1879ENDIF
 1880NEXT newline%
 1881done%+=1
 1882SYS &000406C4,((100*done%) DIV tot%)
 1883NEXT stitch%
 1884NEXT line%
 1885IF double%=2 THEN
 1886oldrow%=(toprow%*colnum%)
 1887newrow%=oldrow%*2
 1888tot%=newrow%*gridwidth%
 1889done%=0
 1890FOR row%=newrow%-1 TO 1 STEP -2
 1891oldrow%-=1
 1892FOR stitch%=0 TO gridwidth%-1
 1893ntable%?(row%*gridwidth%+stitch%)=ntable%?(oldrow%*gridwidth%+stitch%)
 1894ntable%?((row%-1)*gridwidth%+stitch%)=ntable%?(oldrow%*gridwidth%+stitch%)
 1895done%+=1
 1896SYS &000406C4,((100*done%) DIV tot%)
 1897NEXT stitch%
 1898NEXT row%
 1899ENDIF
 1900newrows%=toprow%*colnum%*double%
 1901
 1902IF newrows%<36 THEN
 1903dups%=36 DIV (newrows%)-(36 MOD (newrows%)<>0)
 1904bigtable%=FNa(newrows%*gridwidth%*dups%)
 1905tot%=dups%*newrows%*gridwidth%
 1906done%=0
 1907FOR i%=0 TO dups%-1
 1908FOR stitch%=0 TO newrows%*gridwidth%
 1909bigtable%?(i%*newrows%*gridwidth%+stitch%)=ntable%?stitch%
 1910done%+=1
 1911SYS &000406C4,((100*done%) DIV tot%)
 1912NEXT stitch%
 1913NEXT i%
 1914ntable%=FNd(ntable%)
 1915ntable%=bigtable%
 1916toprow%=toprow%*dups%
 1917ntablesize%=newrows%*gridwidth%*dups%
 1918ENDIF
 1919coltable%=FNd(coltable%)
 1920coltable%=ntable%
 1921coltablesize%=ntablesize%
 1922grows$=STR$(toprow%*colnum%*double%)
 1923IF manner%=1 THEN
 1924gheight$=STR$(VAL(tension_sq_height$)/VAL(tension_sq_rows$))
 1925gwidth$=STR$(VAL(tension_sq_width$)/VAL(tension_sq_stitches$))
 1926gstitches$=ans_conv_stitches$
 1927ENDIF
 1928tension_sq_width$="0.0"
 1929tension_sq_height$="0.0"
 1930tension_sq_stitches$="0"
 1931tension_sq_rows$="0"
 1932ans_conv_rows$="0"
 1933ans_conv_stitches$="0"
 1934conv_rows$="0.0"
 1935conv_stitches$="0.0"
 1936textdispvar%=6
 1937main37%=0
 1938main0%=0
 1939mastergrey%=4
 1940pictype$="none"
 1941spriteon%=FALSE
 1942manner%=0
 1943sclmul$="1"
 1944scldiv$="1"
 1945PROCjb(fname$)
 1946PROCvb
 1947ENDIF
 1948ENDIF
 1949ENDPROC
 1950:
 1951DEF FNc
 1952LOCAL num%,i%,col%
 1953num%=0
 1954FOR i%=block% TO block%+maxcol%
 1955?i%=0
 1956NEXT i%
 1957FOR i%=0 TO gridwidth%*gridheight%-1
 1958col%=(coltable%?i%) AND 63
 1959block%?col%=1
 1960NEXT i%
 1961FOR i%=block% TO block%+maxcol%
 1962IF ?i%<>0 THEN num%+=1
 1963NEXT i%
 1964=num%
 1965:
 1966DEF PROCia
 1967IF VAL(tension_sq_stitches$)<>0 THEN stitch_width=VAL(tension_sq_width$)/VAL(tension_sq_stitches$) ELSE stitch_width=0
 1968IF VAL(tension_sq_rows$)<>0 THEN row_height=VAL(tension_sq_height$)/VAL(tension_sq_rows$) ELSE row_height=0
 1969CASE manner% OF
 1970WHEN 0
 1971stitchwidth=FNb(VALgwidth$)
 1972rowht=FNb(VALgheight$)
 1973stitchwidth%=INT(stitchwidth)
 1974rowht%=INT(rowht)
 1975gridwidth%=VALgstitches$
 1976gridheight%=VALgrows$
 1977WHEN 1
 1978gridwidth%=VALans_conv_stitches$
 1979gridheight%=VALans_conv_rows$
 1980stitchwidth=FNb(stitch_width)
 1981rowht=FNb(row_height)
 1982stitchwidth%=INT(stitchwidth)
 1983rowht%=INT(rowht)
 1984ENDCASE
 1985IF FNh(jacmenu%,0)=TRUE THEN double%=2 ELSE double%=1
 1986ENDPROC
 1987:
 1988DEF PROCka
 1989LOCAL found%, jigtable%, nrows%, row%, stitch%, nstitches%, col%, i%, jigrow%, blank%, line%
 1990LOCAL dups%, bigtable%
 1991CASE manner% OF
 1992WHEN 0 : nrows%=VAL(grows$) : nstitches%=VAL(gstitches$)
 1993WHEN 1 : nrows%=VAL(ans_conv_rows$) : nstitches%=VAL(ans_conv_stitches$)
 1994ENDCASE
 1995blank%=TRUE
 1996line%=nrows%-1
 1997REPEAT
 1998stitch%=0
 1999REPEAT
 2000IF ?(coltable%+line%*nstitches%+stitch%)<128 THEN blank%=FALSE
 2001stitch%+=1
 2002UNTIL stitch%=nstitches% OR blank%=FALSE
 2003line%-=1
 2004UNTIL line%=-1 OR blank%=FALSE
 2005nrows%=line%+1
 2006IF (nrows% MOD 2)<>1 THEN
 2007PROCgb("There is an odd number of rows in the pattern you have dragged in. Jigsaw patterns can only be made from a pattern with an even number of rows.")
 2008ELSE
 2009jigtable%=FNa((maxcol%+1)*(nrows%+1)*nstitches%)
 2010jigrow%=0
 2011
 2012FOR row%=0 TO nrows%-1 STEP 2
 2013FOR col%=0 TO maxcol%+1 : block%?col%=255 : NEXT col%
 2014
 2015FOR stitch%=0 TO 2*nstitches%-1
 2016col%=coltable%?(row%*nstitches%+stitch%)
 2017i%=-1
 2018REPEAT
 2019i%+=1
 2020UNTIL block%?i%=255 OR block%?i%=col% OR i%>maxcol%
 2021IF block%?i%=255 THEN block%?i%=col%
 2022NEXT stitch%
 2023
 2024FOR stitch%=0 TO nstitches%-1
 2025IF coltable%?(row%*nstitches%+stitch%)=yarncol% THEN jigtable%?(jigrow%*nstitches%+stitch%)=yarncol% ELSE jigtable%?(jigrow%*nstitches%+stitch%)=128
 2026NEXT stitch%
 2027jigrow%+=1
 2028
 2029i%=0
 2030WHILE block%?i%<>255
 2031col%=block%?i%
 2032IF col%<>yarncol% THEN
 2033FOR stitch%=0 TO nstitches%-1
 2034IF coltable%?(row%*nstitches%+stitch%)=col% THEN jigtable%?(jigrow%*nstitches%+stitch%)=col% ELSE jigtable%?(jigrow%*nstitches%+stitch%)=128
 2035NEXT stitch%
 2036jigrow%+=1
 2037FOR stitch%=0 TO nstitches%-1
 2038IF coltable%?((row%+1)*nstitches%+stitch%)=col% THEN jigtable%?(jigrow%*nstitches%+stitch%)=col% ELSE jigtable%?(jigrow%*nstitches%+stitch%)=128
 2039NEXT stitch%
 2040jigrow%+=1
 2041ENDIF
 2042i%+=1
 2043ENDWHILE
 2044
 2045FOR stitch%=0 TO nstitches%-1
 2046IF coltable%?((row%+1)*nstitches%+stitch%)=yarncol% THEN jigtable%?(jigrow%*nstitches%+stitch%)=yarncol% ELSE jigtable%?(jigrow%*nstitches%+stitch%)=128
 2047NEXT stitch%
 2048jigrow%+=1
 2049NEXT row%
 2050
 2051IF jigrow%<36 THEN
 2052dups%=36 DIV (jigrow%)-(36 MOD (jigrow%)<>0)
 2053bigtable%=FNa(jigrow%*nstitches%*(maxcol%+1)*dups%)
 2054FOR i%=0 TO dups%-1
 2055FOR stitch%=0 TO jigrow%*nstitches%
 2056bigtable%?(i%*jigrow%*nstitches%+stitch%)=jigtable%?stitch%
 2057NEXT stitch%
 2058NEXT i%
 2059jigtable%=FNd(jigtable%)
 2060jigtable%=bigtable%
 2061jigrow%=jigrow%*dups%
 2062ENDIF
 2063coltable%=FNd(coltable%)
 2064coltable%=jigtable%
 2065coltablesize%=nstitches%*jigrow%
 2066grows$=STR$(jigrow%)
 2067IF manner%=1 THEN
 2068gheight$=STR$(VAL(tension_sq_height$)/VAL(tension_sq_rows$))
 2069gwidth$=STR$(VAL(tension_sq_width$)/VAL(tension_sq_stitches$))
 2070gstitches$=ans_conv_stitches$
 2071ENDIF
 2072tension_sq_width$="0.0"
 2073tension_sq_height$="0.0"
 2074tension_sq_stitches$="0"
 2075tension_sq_rows$="0"
 2076ans_conv_rows$="0"
 2077ans_conv_stitches$="0"
 2078conv_rows$="0.0"
 2079conv_stitches$="0.0"
 2080textdispvar%=6
 2081main37%=0
 2082main0%=0
 2083mastergrey%=4
 2084pictype$="none"
 2085spriteon%=FALSE
 2086manner%=0
 2087sclmul$="1"
 2088scldiv$="1"
 2089PROCjb(fname$)
 2090ENDIF
 2091PROCvb
 2092ENDIF
 2093ENDPROC
� !RunImage for !KnitConv
� � A&J Muir 1997
,version$=     "V1.05c 24th October 1996"
:
+� � :ș &000406C2:� �$+" at line ";�:Ș
:
�ga
� � ș &000406C2:�x
	�

�cb

� exit%=�
ș&000400DD

�
:
	� �cb

� reason%
� titleopen%=� �
0ș &000400E1,mask%,block%,tittime% � reason%
�
'ș &000400C7,mask%,block% � reason%
�
Ȏ reason% �
� 0:�ya
� 1:�fb
� 2:�za
� 3:ș &000400C6,,block%
� 6:�wa
� 7:�ha
� 8:�la
� 9:�ta
� 17,18:�ua
 !� 19:ș &00000008,6,block%+44
!/�,255,"Data transfer failed: Receiver died"
"�
#�
$:
%	� �ga
&ș &000406C0
'	� in%
(ilist%=2
)proclist%=3
*jaclist%=3
+sprlist%=6
,y� block% 4500, imenu% 28+ilist%*24, processmenu% 28+proclist%*24, jacmenu% 28+jaclist%*24, spritemenu% 28+sprlist%*24
-menuindsize%=200
.B� menuind% menuindsize%: $menuind%="":menuindfree%=menuind%+12
/� carb% 24
06� name% 12, transform% 32, pal16% 128, wimppal% 68
1(� opt$(3), jac$(3), res$(3), col$(3)
2E!block%=2: block%!4=3: block%!8=9: block%!12=10: block%!16=&400C0
31block%!20=&400C1: block%!24=&502: block%!28=0
4/ș&000400C0,310,&4B534154,"KnitConv",block%
5� � ș &000406C2:�x:Ș
6state_file$="Result"
7sprite_file$="Sprite"
8exit%=�
9wimp_setistate%=&400CD
:ct_setgcol%=&40743
;wimp_setcol%=&400E6
<opt%=-1
=textdispvar%=0
>jactype%=0
?restype%=0
@coltype%=2
Acoltable%=0
Bnametable%=0
Cpaltable%=0
Dsourcespr%=0
Edraw%=0
Fcolorder%=0
Gscrarea%=0
Htranstable%=0
Isymbstore%=0
Jsymbpoint%=0
Ksymbsize%=0
Ldescinfobuff%=0
Mdescbuff%=0
Nextradescinfobuff%=0
Oextradescbuff%=0
Pedmul%=1
Qeddiv%=1
Ryarncol%=-1
Smainopen%=�
Ttitleopen%=�
Ucolpicopen%=�
V
helpon%=�
Wbertyfile%=�
Xinfobuff%=0
Yhelpbuff%=0
Zmask%=&1830
[ș &00000042 � tittime%
\tittime%+=600
]opt$(0)="Remove picture."
^opt$(1)="Make sprite"
_opt$(2)="Double Jacquard, "
`jac$(0)="Standard type."
ajac$(1)="Elongated type."
bjac$(2)="Jigsaw type."
cres$(0)=", low res"
dres$(1)=", high res"
eres$(2)=", incl picture."
fcol$(2)=", 16 cols"
gcol$(3)=", 256 cols"
happsize%=�-&8000
iheap%=0
jș &00000051 � page%
k� �k(-1,5)<>�k(-1,4) �
l;toolspr%=�j("<KnitConv$Dir>.Resources.Sprites.Buttons")
m=titlespr%=�j("<KnitConv$Dir>.Resources.Sprites.TitleSpr")
n�
o=toolspr%=�j("<KnitConv$Dir>.Resources.Sprites.Buttons22")
p?titlespr%=�j("<KnitConv$Dir>.Resources.Sprites.TitleSpr22")
q�
r�fa
s6ș &000400D9,,"<KnitConv$Dir>.Resources.Templates"
tindsize%=0: i%=0
u�
v$name%="*"
w1ș &000400DB,,0,,,-1,name%,i% � ,,size%,,,,i%
xindsize%+=size%
y
� i%=0
z� windowind% indsize%
{info%=�i("Info",0)
|main%=�i("Main",toolspr%)
}report%=�i("Report",0)
~zoom%=�i("Zoom",0)
#titlewin%=�i("Title",titlespr%)
�colpic%=�i("ColPic",0)
�#colpane%=�i("ColPane",toolspr%)
��y
��va
��zb
�$infoversion%=version$
��ab(titlewin%)
�+in%=�("<KnitConv$Dir>.Resources.Pal16")
�!ș &0000000C,4,in%,pal16%,128
�	�#in%
��ob(imenu%,1)
��ob(processmenu%,2)
��ob(jacmenu%,3)
��ob(spritemenu%,4)
�8$option%="Please choose a conversion process  > > >"
��mb(main%,4,0,0)
�$titleversion%=version$
�$zoommul%="1"
�$zoomdiv%="1"
��mb(main%,1,1<<22,1<<22)
��mb(main%,2,3<<24,15<<24)
��mb(main%,3,1<<22,1<<22)
��mb(main%,7,1<<24,15<<24)
�
�tb(1)
�block%!0=-1
�block%!4=0:block%!8=0
�block%!12=68:block%!16=68
�block%!20=&301A
�!$(block%+24)="!KnitConv"+�(0)
�ș&000400C2,,block%
�ș &000406C1
��
�:
�	� �la
�!� key%,icon%,whan%,processed%
�whan%=block%!0
�icon%=block%!4
�key%=block%!24
�processed%=�
�Ȏ whan% �
�� zoom%
�Ȏ icon% �
�� 0
�
Ȏ key% �
�� &18E,&18A,&18F,&19A,13
�processed%=�
�icon%=1
�"block%!0=zoom%: block%!4=icon%
�ș &000400CE,,block%
�!�p(zoom%,icon%,�$(block%!28))
�
�� key%<>&1CC � processed%=�
��
�� 1
�
Ȏ key% �
�� &18E,&18A,&18F,&19A
�processed%=�
�icon%=0
�"block%!0=zoom%: block%!4=icon%
�ș &000400CE,,block%
�!�p(zoom%,icon%,�$(block%!28))
�� 13
�ș &000400D4,0,-1
�processed%=�
�
�� key%<>&1CC � processed%=�
��
��
��
�&� � processed% � ș &000400DC,key%
��
�:
�	� �wa
�,� button%,window%,icon%,mx%,my%,x%,y%,r%
�mx%=block%!0
�my%=block%!4
�button%=block%!8
�window%=block%!12
�icon%=block%!16
�� titleopen%=� � �s
�� button%=2 �
�Ȏ window% �
�*� -2: �rb(imenu%,block%!0-64,140+1*44)
�� main%:
�Ȏ icon% �
�� 5
��rb(processmenu%,mx%,my%)
��
��
��
�Ȏ window% �
�� -2
��ab(main%)
�� colpane%
�;� yarncol%<>-1 � �mb(colpane%,yarncol%*3+1,0<<21,1<<21)
�� icon%�3=0 �
�yarncol%=icon%/3
��
�yarncol%=(icon%-2)/3
��
�*�mb(colpane%,yarncol%*3+1,1<<21,1<<21)
�
� report%
��r(report%)
��p(carb%,carb%!4,carb%!20)
�
�z(w%,h%)
�ȗ ȓ 0,0,w%,h%
�
� colpic%
�Ȏ icon% �
�� 1
�� yarncol%=-1 �
�%�gb("Choose a background colour")
��
��r(colpic%)
��mb(main%,1,0<<22,1<<22)
��mb(main%,2,7<<24,15<<24)
��mb(main%,3,0<<22,1<<22)
�
�tb(3)
�/ș &000400D2,main%,1,-1,-1,-1,�$(savepath%)
��
�� 2
��r(colpic%)
��vb
��hb
��
�� main%
�Ȏ icon% �
�� 3
�� (button% � &50)>0 �
)� button%=&10 � adjust%=� � adjust%=�
!�w(�$savespr%,8),icon%,main%)
�
� 5
1� button%=4 � �rb(processmenu%,mx%+32,my%-44)
� 6:
� helpon%=� �
=ș&00041500,,"<KnitConv$Dir>.Resources.Messages" � ,,len%
infobuff%=�a(16)
	helpbuff%=�a(len%)

Gș&00041501,infobuff%,"<KnitConv$Dir>.Resources.Messages",helpbuff%

helpon%=�
x%=0

%ș &00042681,x%,block%,4500 � ,y%
x%=0
�
task%=!(block%+4+x%*16)
	r%=-1
�:r%+=1:� task%?r%<32
task%?r%=13
	x%+=1
)� (block%+4+x%*16>y%) � $task%="Help"
8� $task%<>"Help" � *Filer_Run Resources:$.Apps.!Help
�
ș &00041504,infobuff%
infobuff%=�d(infobuff%)
helpbuff%=�d(helpbuff%)

helpon%=�
�
�
� zoom%
Ȏ icon% �
 %� 2: �ea(zoom%,0,999,1,button%,1)
!&� 3: �ea(zoom%,0,999,1,button%,-1)
"%� 4: �ea(zoom%,1,999,1,button%,1)
#&� 5: �ea(zoom%,1,999,1,button%,-1)
$�
%�
&�
'�
(:
)	� �ta
*"� sel%,subsel%,button%,mx%,my%
+"sel%=!block%: subsel%=block%!4
,ș&000400CF,,block%
-mx%=!block%: my%=block%!4
.button%=block%!8
/�xa(menuopen%)
0Ȏ menuopen% �
1� imenu%
2
Ȏ sel% �
3� 0: �rb(info%,mx%,my%)
4� 1: �q
5�
6� processmenu%
7'� opt%<>-1 � �yb(processmenu%,opt%)
8
opt%=sel%
9�ub(processmenu%,opt%)
:$option%=opt$(opt%)
;�mb(main%,4,0,0)
<�mb(main%,7,7<<24,15<<24)
=
�tb(2)
>
Ȏ sel% �
?� 0
@
�pb(1)
A� 1
BD� �h(spritemenu%,0)=0 � �h(spritemenu%,1)=0 � �ub(spritemenu%,0)
CD� �h(spritemenu%,2)=0 � �h(spritemenu%,3)=0 � �ub(spritemenu%,2)
DȎ subsel% �
E
F	� 0,1
G�yb(spritemenu%,0)
H�yb(spritemenu%,1)
Irestype%=subsel%
J�ub(spritemenu%,restype%)
K	� 2,3
L�yb(spritemenu%,2)
M�yb(spritemenu%,3)
Ncoltype%=subsel%
O�ub(spritemenu%,coltype%)
P� 4
Q�xb(spritemenu%,subsel%)
R�
S$option%+=res$(restype%)
T$option%+=col$(coltype%)
U-� �h(spritemenu%,4)=� � $option%+=res$(2)
V�mb(main%,4,0,0)
W
�pb(2)
X� 2
Y7� jactype%<>0 � �yb(jacmenu%,jactype%) : jactype%=0
Z(� �h(jacmenu%,0)=0 � �ub(jacmenu%,0)
[� subsel%<>-1 �
\�yb(jacmenu%,jactype%)
]jactype%=subsel%
^�ub(jacmenu%,jactype%)
_�
`$option%+=jac$(jactype%)
a�mb(main%,4,0,0)
b
�pb(1)
c�
d�
e$� button%=1 � �rb(menuopen%,0,0)
f�
g:
h	� �fb
i2� more%,wx%,wy%,w%,h%,xx%,row%,stitch%,rh%,sw%
jI� minx%,miny%,maxx%,maxy%,sminx%,smaxx%,sminy%,smaxy%,min%,max%,x%,y%
k(� xc%,yc%,r%,g%,b%,rgb%,col%,column%
lB� minrow%,maxrow%,minsqr%,maxsqr%,min%,max%,i%,xl%,xh%,yl%,yh%
m+� scalex,scaley,scl%,num%,ymove%,xmove%
n ș &000400C8,,block% � more%
oȕ more%
pȎ block%!0 �
q� colpane%
rwx%=block%!4-block%!20
swy%=block%!16-block%!24
tminx%=block%!28-wx%
umaxx%=block%!36-wx%
vminy%=block%!32-wy%+22
wmaxy%=block%!40-wy%+22
xmin%=miny%/76
ymax%=maxy%/76
zmax%+=1
{� max%>0 � max%=0
|'� min%<-(maxcol%) � min%=-(maxcol%)
}� minx%<90 �
~� i%=min% � max%
$ș ct_setgcol%,paltable%!(-i%*4)
�*ȓ Ȑ 22+wx%,(i%-1)*76-24+10+wy%,66,60
�� i%
��
��
��
�
� ș &000400CA,,block% � more%
��
��
�:
�� �tb(var%)
�
Ȏ var% �
�� 0
�$disptext%=""
�� 1
�H$disptext%="Please choose a conversion process from the pop-up menu"
�� 2
�:$disptext%="Drag in the file you wish to convert ...."
�� 3
�P$disptext%="Name the new file then drag its icon to a directory window ...."
�� 4
�6$disptext%="Processing the file .... Please wait."
��
�textdispvar%=var%
��mb(main%,8,0,0)
��
�:
�� �q
�exit%=�
��
�:
�	� �ua
�� han%,len%,counter%,icon%
�Ȏ block%!16 �
�� 0: �q
�� 2: �t
�� 3:
�Ȏ block%!40 �
�
� &0F0
�� opt% =-1 �
�9�gb("Please choose a process before loading a file.")
��
��vb
�counter%=block%+44
�ȕ ?counter%<>0
�counter%+=1:�
�?counter%=13
��na($(block%+44))
�� �h(jacmenu%,2)=� �
�� manner%=2 �
�;�gb("Grid only or Grid and picture type file required")
��
�yarncol%=0
�found%=�
��
�7� $(nametable%+yarncol%*13)="Background" � found%=�
�7� $(nametable%+yarncol%*13)="background" � found%=�
�7� $(nametable%+yarncol%*13)="BackGround" � found%=�
�2� $(nametable%+yarncol%*13)="Bkgnd" � found%=�
�2� $(nametable%+yarncol%*13)="BkGnd" � found%=�
�2� $(nametable%+yarncol%*13)="bkgnd" � found%=�
�7� $(nametable%+yarncol%*13)="background" � found%=�
�7� $(nametable%+yarncol%*13)="BackGround" � found%=�
�1� $(nametable%+yarncol%*13)="Main" � found%=�
�1� $(nametable%+yarncol%*13)="main" � found%=�
�yarncol%+=1
�!� yarncol%>maxcol% � found%=�
�� found%=� �
�yarncol%-=1
��mb(main%,1,0<<22,1<<22)
��mb(main%,2,7<<24,15<<24)
��mb(main%,3,0<<22,1<<22)
�
�tb(3)
�/ș &000400D2,main%,1,-1,-1,-1,�$(savepath%)
��
�yarncol%=-1 : �bb(colpic%)
��
��
��
��mb(main%,1,0<<22,1<<22)
��mb(main%,2,7<<24,15<<24)
��mb(main%,3,0<<22,1<<22)
�
�tb(3)
�/ș &000400D2,main%,1,-1,-1,-1,�$(savepath%)
��
��
��
�� 10
�
�han%=block%!20
�;ș &00000023,"KnitConv$Dir",block%+512,256,0,0 � ,,len%
�block%?(512+len%)=13
��#han%,"Run "+$(block%+512)
�� 9,&400C1
��va
�
� &502
�� helpon%=� �
�block%!40=block%!32
�han%=block%!32
�icon%=block%!36
��da(han%,icon%)
��
��
��
�:
�� �na(file$)
�	� in%
�ș &000406C0
�in%=�(file$)
�.�#in%,tension_sq_width$,tension_sq_height$
�/�#in%,tension_sq_stitches$,tension_sq_rows$
��#in%,tdset$
�#�#in%,conv_rows$,ans_conv_rows$
�+�#in%,conv_stitches$,ans_conv_stitches$
��#in%,manner%
��#in%,unitmenu%
��#in%,grows$,gstitches$
��#in%,gheight$,gwidth$
��#in%,textdispvar%
��#in%,main37%
��#in%,main0%
��#in%,mastergrey%
��#in%,patstore1$,patstore2$
��#in%,patstore3$,patstore4$
��#in%,patstore5%
��#in%,sclmul$,scldiv$
�#�#in%,coltableon%,coltablesize%
�� coltableon%=1 �
!coltable%=�a(coltablesize%+8)
.ș &0000000C,4,in%,coltable%,coltablesize%
�
coltable%=0
coltablesize%=0
�
&�#in%,nametableon%, nametablesize%
� nametableon%=1 �
!nametable%=�a(nametablesize%)
	0ș &0000000C,4,in%,nametable%,nametablesize%

�
nametable%=0
nametablesize%=0

�
$�#in%,paltableon%, paltablesize%
� paltableon%=1 �
paltable%=�a(paltablesize%)
.ș &0000000C,4,in%,paltable%,paltablesize%
�
paltable%=0
paltablesize%=0
�
�#in%,pictype$
Ȏ pictype$ �
� "sprite"
*�#in%,spritelen%,spritename$,spriteon%
sourcespr%=�a(spritelen%)
,ș &0000000C,4,in%,sourcespr%,spritelen%
=ș &0000002E,&10D,sourcespr%,block%,&100,1 � ,,,name_len%
block%?name_len%=13
sprite$=$block%
sarealen%=!sourcespr%
 8ș &0000002E,&118,sourcespr%,sprite$ � ,,sourceaddr%
!
"Bș &0000002E,&228,sourcespr%,sourceaddr% � ,,,spx%,spy%,,mode%
#xe%=�k(mode%,4)
$ye%=�k(mode%,5)
%spx%=spx%<<xe%
&spy%=spy%<<ye%
'� "draw"
(�#in%,drawlen%
)draw%=�a(drawlen%)
*%ș &0000000C,4,in%,draw%,drawlen%
+drawx%=draw%!32-draw%!24
,drawy%=draw%!36-draw%!28
-drawxoffset%=draw%!24
.drawyoffset%=draw%!28
/spx%=drawx%>>8
0spy%=drawy%>>8
1�
2�#in%,gridlinecol%
3�#in%,gridcol%
4�#in%,backcol%
5�#in%,maxcol%
6�#in%,rulerbcol%
7�#in%,rulerfcol%
8�#in%,pagerulers%
9�#in%,manner%
:	�#in%
;ș &000406C1
<�
=:
>� �jb(file$)
?
� out%
@out%=� (file$)
A/�#out%,tension_sq_width$,tension_sq_height$
B0�#out%,tension_sq_stitches$,tension_sq_rows$
C�#out%,tdset$
D$�#out%,conv_rows$,ans_conv_rows$
E,�#out%,conv_stitches$,ans_conv_stitches$
F�#out%,manner%
G�#out%,unitmenu%
H�#out%,grows$,gstitches$
I�#out%,gheight$,gwidth$
J�#out%,textdispvar%
K�#out%,main37%
L�#out%,main0%
M�#out%,mastergrey%
N �#out%,patstore1$,patstore2$
O �#out%,patstore3$,patstore4$
P�#out%,patstore5%
Q�#out%,sclmul$,scldiv$
R� coltable%<>0 �
S�#out%,1,coltablesize%
T/ș &0000000C,2,out%,coltable%,coltablesize%
U�
V�#out%,0,0
W�
X"� nametable%<>0 � manner%<>2 �
Y�#out%,1,nametablesize%
Z1ș &0000000C,2,out%,nametable%,nametablesize%
[�
\�#out%,0,0
]�
^� paltable%<>0 �
_�#out%,1,paltablesize%
`0ș &0000000C,2,out%,paltable%, paltablesize%
a�
b�#out%,0,0
c�
d�#out%,pictype$
eȎ pictype$ �
f� "sprite"
g+�#out%,spritelen%,spritename$,spriteon%
h-ș &0000000C,2,out%,sourcespr%,spritelen%
i� "draw"
j�#out%,drawlen%
k&ș &0000000C,2,out%,draw%,drawlen%
l�
m�#out%,gridlinecol%
n�#out%,gridcol%
o�#out%,backcol%
p�#out%,maxcol%
q�#out%,rulerbcol%
r�#out%,rulerfcol%
s�#out%,pagerulers%
t�#out%,manner%
u
�#out%
v�("SetType "+file$+" 0F0")
wș &000406C1
x�
y:
z� �pb(type%)
{Ȏ type% �
|� 1
}
~$savespr%="Sfile_0F0"
�mb(main%,3,0,0)
�ftype%=&0F0
�
fsize%=99
�$savepath%="Result"
��mb(main%,1,0,0)
�� 2
�
�$savespr%="Sfile_FF9"
��mb(main%,3,0,0)
�ftype%=&FF9
�
fsize%=99
�$savepath%="Sprite"
��mb(main%,1,0,0)
��
��
�:
�	� �eb
�� �$savepath%,".") �
��ib($savepath%)
��
�7�gb("To save, drag the icon to a directory viewer")
��
��
�:
�� �ib(fname$)
�� item%
�
�tb(4)
�ș &000406C3,1
�
Ȏ opt% �
�� 0
��sb(fname$)
�� 1
��sa(fname$)
�� 2
��ja(fname$)
��
�ș &000406C1
��hb
��
�:
�	� �ha
�ș&00042401
�ș &000400CF,,block%
�block%!20=block%!12
�block%!24=block%!16
�block%!28=block%!0
�block%!32=block%!4
�block%!36=fsize%
�block%!0=64:block%!12=0
� block%!16=1:block%!40=ftype%
�$(block%+44)=�f($savepath%)
�.ș &000400E7,17,block%,block%!20,block%!24
��
�:
�	� �ma
�block%!12=block%!8
�block%!16=4
�#ș &000400E7,17,block%,block%!4
��
�:
�� �g(name$)
�ȕ �name$,".")
�name$=�name$,�name$,".")+1)
��
�
=name$
�:
�� �f(name$)
�ȕ �name$,".")
�name$=�name$,�name$,".")+1)
��
�=name$+�(0)
�:
�� �t
�� b%,a%,word%,fullname$
�fullname$=""
�?� word%=0 � 508 � 4:block%!(512+word%)=block%!word%:� word%
�a%=0
�b%=block%?(44+a%)
�ȕ b%<>0
�fullname$+=�(b%)
�	a%+=1
�b%=block%?(44+a%)
��
��ib(fullname$)
�?� word%=0 � 508 � 4:block%!word%=block%!(512+word%):� word%
�block%!12=block%!8
�block%!16=3:!block%=256
�.ș &000400E7,18,block%,block%!20,block%!24
��
�:
�� �y
�F!block%=main%:block%!4=3: ș &000400CE,,block%: savespr%=block%!32
�!titleversion%=�e(titlewin%,6)
�infoversion%=�e(info%,4)
�rep%=�e(report%,1)
�savepath%=�e(main%,1)
�option%=�e(main%,4)
�disptext% =�e(main%,8)
�zoommul%=�e(zoom%,0)
�zoomdiv%=�e(zoom%,1)
�=!block%=main%: ș &000400CC,,block%: maintitle%=block%!76
��
�:
�� �e(whan%,icon%)
�"block%!0=whan%: block%!4=icon%
�ș &000400CE,,block%
�=block%!28
�:
�	� �va
�� xef%,yef%,size%
�xef%=�k(-1,4)
�yef%=�k(-1,5)
�!xpix%=1<<xef%: xpix2%=2<<xef%
�!ypix%=1<<yef%: ypix2%=2<<yef%
��
�:
�� �mb(whan%,icon%,e%,c%)
�%block%!900=whan%:block%!904=icon%
�block%!908=e%:block%!912=c%
�"ș wimp_setistate%,,block%+900
��
�:
�� �k(mode%,var%)
�
� result%
�'ș &00000035,mode%,var% � ,,result%
�=result%
�:
�� �p(whan%,icon%,index%)
�,ș &000400D2,whan%,icon%,-1,-1,-1,index%
�
:
	� �ba
ș &000400D3,,carb%
�
:
� �x

� answer%

!block%=�
	.$(block%+4)=�$+" (Error code "+�(�)+")"+�0

.ș&000400DF,block%,3,"KnitConv" � ,answer%
!� answer%=2 � ș &000400DD: �
�

:
� �r(whan%)
Ȏ whan% �
� main%
mainopen%=�

� colpic%
colpicopen%=�
!block%=colpane%
ș &000400C6,,block%
�
!block%=whan%
ș &000400C6,,block%
�
:
� �gb(report$)
� w%,h%
� 7
$rep%=report$
ș &000400D3,,carb%
 �ab(report%)
!#ș &000400D2,report%,-1,0,0,0,0
"ș &000400E0,,block%
#w%=block%!12-block%!4
$h%=block%!16-block%!8
%$ȗ � block%!4+w%/2,block%!8+h%/2
&-ȗ ȓ block%!4,block%!8,w%-xpix%,h%-ypix%
'�
(:
)� �kb(message$)
*block%!12=block%!8
+block%!16=&503
,$(block%+20)=message$
-!block%=256
.#ș &000400E7,17,block%,block%!4
/�
0:
1� �w(sprite$,icon%,whan%)
2
� ox%,oy%
3!block%=whan%
4ș &000400CB,,block%
5ox%=block%!4-block%!20
6oy%=block%!16-block%!24
7block%!4=icon%
8ș &000400CE,,block%
9block%!8=ox%+block%!8
:block%!12=oy%+block%!12
;block%!16=ox%+block%!16
<block%!20=oy%+block%!20
=,ș&00042400,%11000101,1,sprite$,block%+8
>�
?:
@:
A	� �fa
B� f%
Cfontdata%=�a(&100)
D.� f%=fontdata% � fontdata%+252 � 4:!f%=0:�
E�
F:
G	� �pa
H� f%
I� f%=0 � 255
Jȕ fontdata%?f%>0
Kfontdata%?f%-=1
Lș &00040082,f%
M�
N�
Ofontdata%=�d(fontdata%)
P�
Q:
R)� �lb(block%,minx%,miny%,maxx%,maxy%)
Sblock%! 0=minx%
Tblock%! 4=miny%
Ublock%! 8=maxx%
Vblock%!12=maxy%
W�
X:
Y� �z(� x%,� y%)
Z
� xp%,yp%
[ș &00000035,-1,4  � ,,xp%
\ș &00000035,-1,5  � ,,yp%
]ș &00000035,-1,11 � ,,x%
^ș &00000035,-1,12 � ,,y%
_x%=(x%+1)<<xp%
`y%=(y%+1)<<yp%
a�
b:
c� �aa(block%,� x%,� y%)
dx%=block%!8-block%!0
ey%=block%!12-block%!4
f�
g:
h� �ab(hand%)
i� x%,y%,wx%,wy%
j!block%=hand%
kș &000400CB,,block%
l
�z(x%,y%)
m�aa(block%+4,wx%,wy%)
nx%=x%>>1
oy%=y%>>1
pwx%=wx%>>1
qwy%=wy%>>1
r-�lb(block%+4,x%-wx%,y%-wy%,x%+wx%,y%+wy%)
sblock%!28=-1
tș &000400C5,,block%
u�
v:
w� �bb(handle%)
xblock%!0=handle%
yȎ handle% �
z� main%
{mainopen%=�
|ș &000400CB,,block%
}block%!28=-1
~�za

� colpic%
�colpicopen%=�
�ș &000400CB,,block%
�block%!28=-1
��za
�
�ș &000400CB,,block%
�ș &000400C5,,block%
��
��
�:
�	� �za
�� !block%=colpic% �
�colpicopen%=�
��ra
�block%!100=colpane%
�ș &000400CB,,block%+100
�block%!104=block%!4+42
�block%!112=block%!104+362
�block%!116=block%!16-90
�block%!108=block%!116-360
�block%!128=block%!28
�ș &000400C5,,block%+100
�block%!28=colpane%
�ș &000400C5,,block%
��
�ș &000400C5,,block%
��
��
�:
�	� �ra
� � i%,colour%,maxicon%,space%
�space%=block%+3000
�!space%=colpane%
�ș &000400CC,,space%
�#space%!(4+44)=-(124+maxcol%*76)
�-� space%!(4+44)>-300 � space%!(4+44)=-300
�#ș &000400D7,colpane%,space%+44
�� i%=0 � 28 � 4
�%block%!(1004+i%)=space%!(4+88+i%)
�� i%
�� i%=0 � 28 � 4
�(block%!(1044+i%)=space%!(4+88+32+i%)
�� i%
�� i%=0 � 28 � 4
�(block%!(1084+i%)=space%!(4+88+64+i%)
�� i%
�maxicon%=(space%!(4+84))
�block%!(2000)=colpane%
�ȕ maxicon%>-1
�block%!(2000+4)=maxicon%
�ș &000400C4,,block%+2000
�maxicon%-=1
��
�Dblock%!1000=colpane%: block%!1040=colpane%: block%!1080=colpane%
�
colour%=0
�ȕ colour%<=maxcol%
�ș &000400C2,,block%+1000
�ș &000400C2,,block%+1040
�%block%!1104=nametable%+colour%*13
�ș &000400C2,,block%+1080
�$block%!1008-=76: block%!1016-=76
�$block%!1048-=76: block%!1056-=76
�$block%!1088-=76: block%!1096-=76
�colour%+=1
��
�� i%=0 � maxcol%
�$�mb(colpane%,i%*3+1,0<<21,1<<21)
�� i%
��
�:
�-� �ea(whan%,icon%,max%,min%,button%,inc%)
�� var%,index%
�"block%!0=whan%: block%!4=icon%
�ș &000400CE,,block%
�:var%=�($(block%!28))-(button%=4)*inc%+(button%=1)*inc%
� � var%>max% � var%=max%: � 7
� � var%<min% � var%=min%: � 7
�$(block%!28)=�(var%)
�block%!8=0: block%!12=0
�ș &000400CD,,block%
��ba
�%� carb%!0=whan% � carb%!4=icon% �
�index%=carb%!20
�+� index%>�(�(var%)) � index%=�(�(var%))
��p(whan%,icon%,index%)
��
��
�:
�� �s
�block%!1000=titlewin%
�ș &000400C3,,block%+1000
�titlewin%=0:mask%=mask% � 1
��pa
�titlespr%=�d(titlespr%)
�titleopen%=�
��
�:
�	� �ya
�� titleopen%=� �  �s
��
�:
�� �i(ident$,sprites%)
�� whan%
�$name%=ident$
�Xș&000400DB,,block%,windowind%,windowind%+indsize%,fontdata%,name%,0  � ,,windowind%
�&� sprites%<>0 � block%!64=sprites%
�ș&000400C1,,block% � whan%
�
=whan%
�:
�� �da(han%,icon%)
�#� ptr%,len%,text$,i%,item%,tok$
�
Ȏ han% �
�� main%
�tok$="main"
�Ȏ icon% �
��
�&� report%: tok$="report": icon%=-1
�"� info%: tok$="info": icon%=-1
�"� zoom%: tok$="zoom": icon%=-1
�� -2: tok$="ibar": icon%=-1
�*� titlewin%: tok$="titlewin": icon%=-1
�� colpic%,colpane%
�tok$="colpic"
�� icon%<>1 � icon%=-1
�
�ș &000400F4,0,block%+800
�'sel%=block%!800: subsel%=block%!804
�subsubsel%=block%!808
icon%=sel%
Ȏ menuopen% �
� imenu%
tok$="imenu"
� processmenu%
tok$="processmenu"

Ȏ sel% �
� 1
Ȏ subsel% �
	

4� 0,1,2,3,4,5 : tok$="spritemenu": icon%=subsel%
�
� 2

Ȏ subsel% �

+� 0,1,2 : tok$="jacmenu": icon%=subsel%
�
�
�
�
$� icon%<>-1 � tok$=tok$+�(icon%)
/ș &00041502,infobuff%,tok$,0 � ,,ptr%,len%
text$=""
� i%=0 � len%-1
text$+=�(ptr%?i%)
� i%
�kb(text$)
�
:
� �ob(menu%,menunum%)
� num%,width%,ptr%,i%,item$
� �
 � +1
!
� Menu#,1
"� KnitConv
#� &00,info%,Info
$� &80,-1,Quit
%
� Menu#,2
&� Processes
'� &00,-1,Remove picture
(!� &00,spritemenu%,Make sprite
)"� &80,jacmenu%,Double Jacquard
*
� Menu#,3
+� Jacquard
,� &00,-1,Standard
-� &00,-1,Elongated
.� &80,-1,Jigsaw
/
� Menu#,4
0� Sprite
1� &00,-1,Low res
2� &00,-1,High res
3� &00,-1,16 Colours
4� &02,-1,256 Colours
5� &00,-1,Include picture
6� &80,zoom%,Scale
7�
8�
9� item$
:� item$="Menu#"
;
� num%
<� num%=menunum%
=� $menu%
>width%=(�($menu%)-2)*16
?-menu%!12=&00070207:menu%!20=44:menu%!24=0
@ptr%=menu%+28
A�
B� !ptr%:� ptr%!4
Cptr%!8=&7000021:� item$
D5� (�(item$)+1)*16>width% � width%=(�(item$)+1)*16
E� �(item$)<12 �
F$(ptr%+12)=item$
G�
Hptr%!8=&7000121
IGptr%!12=menuindfree%: $menuindfree%=item$: menuindfree%+=�(item$)+1
J(ptr%!16=menuind%: ptr%!20=�(item$)+1
KT� menuindfree%>menuind%+menuindsize% � � 0,"Increase menuindsize% (in PROCinit)"
L�
Mptr%+=24
N� (!(ptr%-24) � &80)<>0
Omenu%!16=width%
P� �
Q�
R:
S� �rb(menu%,mx%,my%)
Tmenuopen%=menu%
UȎ menuopen% �
V� processmenu% :
W�db(mx%,my%)
X
mx%+=2
Ymy%+=44
Z�
[ș&000400D4,,menu%,mx%,my%
\�
]:
^� �xb(menu%,item%)
_9?(menu%+28+item%*24)=(?(menu%+28+item%*24) � � 0) � 1
`�
a:
b� �ub(menu%,item%)
c1?(menu%+28+item%*24)=?(menu%+28+item%*24) � 1
d�
e:
f� �yb(menu%,item%)
g9?(menu%+28+item%*24)=(?(menu%+28+item%*24) � � 1) � 0
h�
i:
j� �xa(except%)
k
� var%
lȎ except% �
m� -1
n� var%=0 � ilist%
o�yb(imenu%,var%)
p
� var%
q� var%=0 � proclist%
r�yb(processmenu%,var%)
s
� var%
t� var%=0 � jaclist%
u�yb(jacmenu%,var%)
v
� var%
w� var%=0 � sprlist%
x�yb(spritemenu%,var%)
y
� var%
z� imenu%
{� var%=0 � proclist%
|�yb(processmenu%,var%)
}
� var%
~� var%=0 � jaclist%
�yb(jacmenu%,var%)
�
� var%
�� var%=0 � sprlist%
��yb(spritemenu%,var%)
�
� var%
�� processmenu%
�� var%=0 � ilist%
��yb(imenu%,var%)
�
� var%
�� var%=0 � jaclist%
��yb(jacmenu%,var%)
�
� var%
�� jacmenu%
�� var%=0 � ilist%
��yb(imenu%,var%)
�
� var%
�� var%=0 � proclist%
��yb(processmenu%,var%)
�
� var%
�� var%=0 � sprlist%
��yb(spritemenu%,var%)
�
� var%
�� spritemenu%
�� var%=0 � ilist%
��yb(imenu%,var%)
�
� var%
�� var%=0 � proclist%
��yb(processmenu%,var%)
�
� var%
�� var%=0 � jaclist%
��yb(jacmenu%,var%)
�
� var%
��
��
�:
�� �wb(menu%,item%)
�??(menu%+38+item%*24)=(?(menu%+38+item%*24) � � 0<<6) � 1<<6
��
�:
�� �qb(menu%,item%,shade%)
�D?(menu%+38+item%*24)=(?(menu%+38+item%*24) � � 1<<6) � shade%<<6
��
�:
�� �h(menu%,item%)
�"=(?(menu%+28+item%*24) � 1)<>0
�:
�� �db( � mx%, � my%)
�,� c%,ox%,oy%,vaminx%,vamaxy%,miny%,maxx%
�#� scrollxoffset%,scrollyoffset%
�c%=block%+800
�c%!0=main%
�ș &000400CB,,c%
�vaminx%=c%!4
�vamaxy%=c%!16
�scrollxoffset%=c%!20
�scrollyoffset%=c%!24
�ox%=vaminx%-scrollxoffset%
�oy%=vamaxy%-scrollyoffset%
�c%!0=main%
�
c%!4=5
�ș &000400CE,,c%
�miny%=c%!12
�maxx%=c%!16
�mx%=ox%+maxx%
�my%=oy%+miny%
��
�:
�� �j(a$)
�� a%,l%,s%
�
a%=�a$
�
l%=�#a%+4
�	� #a%
�
s%=�a(l%)
�
!s%=l%
�ș &0000002E,&10A,s%,a$
�=s%
�:
�� �a(size%)
�errflag%=0
�� heap%=0 �nb(size%+16)
�� � errflag% �
�"ș &0002001D,1,heap% � ,,free%
�� free%<size% �ca(size%,1)
�� � errflag% �
�(ș &0002001D,2,heap%,,size% � ,,ptr%
��
��
�� errflag% � =0 � =ptr%
�:
�� �d(ptr%)
�ș &0002001D,3,heap%,ptr%
��qa
�=0
�:
�	� �qa
�� size%,x%,s%
�"ș &0002001D,1,heap% � ,,size%
�size%=(size% � page%)*page%
�
� size% �
�.ș &0002001D,5,heap%,,-size% � ,,,s%;flag%
�� flag% � 1 �
�x%=(s% � page%)*page%
�'� s%-x% ș &0002001D,5,heap%,,s%-x%
��
�x%=size%
��
�ș &000400EC,appsize%-x%,-1
�appsize%-=x%:heapsize%-=x%
��
��
�:
�� �m(� ptr%,size%)
�� flag%
�errflag%=0:�
�2ș &0002001D,4,heap%,ptr%,size% � ,,ptr%;flag%
�� flag% � 1 �ca(page%,1)
� � (flag% � 1)=0 � errflag%=�
�� � errflag% �
�� size%<0 �qa
��
��
�:
�� �ca(mem%,x%)
�
� new%
�(ș &000400EC,appsize%+mem%,-1 � new%
�� new%<appsize%+mem% �
�errflag%=�
�ș &000400EC,appsize%,-1
�� 1<<30,"Not enough memory"
�
,� x% ș &0002001D,5,heap%,,new%-appsize%
heapsize%=new%+&8000-�
appsize%=new%
�
�
:
� �nb(initsize%)
�ca(initsize%,0)
	� � errflag% �

heap%=�
#ș &0002001D,0,heap%,,heapsize%
�

�
:
��v(line%,mess$,var)
mess$=�mess$,14)
var$=�(var)
2�u(line%,mess$+�25-�(mess$)-�(var$)," ")+var$)
�
:
��u(line%,mess$)
ș &00000024,"db$mess","XX"
)ș &00000024,"db$mess"+�(line%),mess$
�
:
� �n(berty$)
� berty%
� bertyfile%=� �
&berty%=�("<KnitConv$Dir>.^.Berty")
�#berty%
+�("SetType<KnitConv$Dir>.^.Berty Text")
 bertyfile%=�
!�
"&berty%=�("<KnitConv$Dir>.^.Berty")
#�#berty%=�#berty%
$�#berty%,""
%�#berty%,berty$
&�#berty%
'%*Filer_Run <KnitConv$Dir>.^.Berty
(�
):
*� �sb(fname$)
+Ȏ manner% �
,� 1
-grows$=ans_conv_rows$
.!gstitches$=ans_conv_stitches$
/ans_conv_rows$="0"
0ans_conv_stitches$="0"
1conv_rows$="0.0"
2conv_stitches$="0.0"
3=gheight$=�((�(tension_sq_height$))/(�(tension_sq_rows$)))
4?gwidth$=�((�(tension_sq_width$))/(�(tension_sq_stitches$)))
5tension_sq_width$="0.0"
6tension_sq_height$="0.0"
7tension_sq_stitches$="0"
8tension_sq_rows$="0"
9textdispvar%=6
:
main37%=0
;mastergrey%=4
<pictype$="none"
=
manner%=0
>�jb(fname$)
?�vb
@
A7�gb("There is no picture to remove from this file")
B�
C�
D:
E� �sa(fname$)
FA� wx%,wy%,ninx%,maxx%,miny%,maxy%,sminx%,smaxx%,sminy%,smaxy%
GD� xc%,yc%,extrawidth%,scraddr%,savsize%,savarea%,r0%,r1%,r2%,r3%
HF� sw%,rh%,y%,x%,xx%,w%,col%,yl%,yh%,xl%,xh%,min%,max%,row%,stitch%
I3� scl%,nummin%,nummax%,num%,xmove%,ymove%,symb%
J�o
K	wx%=0
Lwy%=scrheight%
Mminx%=0: maxx%=scrwidth%
Nminy%=0: maxy%=scrheight%
Osminx%=0
Psmaxx%=gridwidth%
Qsminy%=0
Rsmaxy%=gridheight%
Sxc%=wx%+rulesize%
Tyc%=wy%-editht%+rulesize%
UBextrawidth%=4-(scrwidth% � 4): � extrawidth%=4 � extrawidth%=0
V3scrsize%=(scrwidth%+extrawidth%)*scrheight%+200
Wscrarea%=�a(scrsize%)
X!scrarea%=scrsize%
Yscrarea%!8=16
Zș &0000002E,256+9,scrarea%
[9� scrmode%=12 � scrmode%=20 � palflag%=1 � palflag%=0
\Pș &0000002E,256+15,scrarea%,"screen",palflag%,scrwidth%,scrheight%,scrmode%
]4ș &0000002E,&118,scrarea%,"screen" � ,,scraddr%
^!� scrmode%=12 � scrmode%=20 �
_
`� i%=0 � 124 � 4
a!(scraddr%+44+i%)=pal16%!i%
b� i%
c�
d7ș &0000002E,512+62,scrarea%,scraddr% � ,,,savsize%
esavarea%=�a(savsize%)
fsavarea%!0=0
gDș &0000002E,512+60,scrarea%,scraddr%,savarea% � r0%,r1%,r2%,r3%
h:� � � :ș &000406C2:ș &0000002E,r0%,r1%,r2%,r3%:�x:Ș
i� 26
j� 5
kP� scrmode%=12 � scrmode%=15 � � 23,17,7,%10,8;8;0,0 � � 23,17,7,%10,8;16;0,0
l&ș ct_setgcol%,�l(backcol%),,,1<<7
m�
n� spriteon%=� �
oȎ pictype$ �
p� "sprite"
qblock%!100=xc%<<8
r(block%!104=(yc%+gridheight%*rht%)<<8
s'block%!108=(xc%+gridwidth%*stw%)<<8
t(block%!112=(yc%+gridheight%*rht%)<<8
u'block%!116=(xc%+gridwidth%*stw%)<<8
vblock%!120=yc%<<8
wblock%!124=xc%<<8
xblock%!128=yc%<<8
y
zHș&0000002E,&238,sourcespr%,sourceaddr%,1,0,0,block%+100,transtable%
{� "draw"
|,scalex=(((gridwidth%*stw%)<<8)/(drawx%))
}/scaley=(((gridheight%*rht%)<<8)/(drawy%-1))
~transform%!0 =scalex*65536
transform%!4 =0
�transform%!8 =0
�transform%!12=scaley*65536
�.transform%!16=(xc%<<8)-drawxoffset%*scalex
�.transform%!20=(yc%<<8)-drawyoffset%*scaley
�
�.ș &00045540,0,draw%,drawlen%,transform%,0
��
��
�Ȏ manner% �
�	� 0,1
�
�sw%=stw%+xpix2%*(gridon%=�)
�rh%=rht%+ypix2%*(gridon%=�)
�y%=yc%-ypix%*(gridon%=�)
�xx%=xc%-xpix%*(gridon%=�)
�&�w%=sminx%�smaxx%-1:x%=xx%+w%*stw%
�Q�h%=sminy%�smaxy%-1:col%=coltable%?(h%*gridwidth%+w%):�showmask%col%=col%�191
�P�(col%�192)=0șct_setgcol%,paltable%!((col%�63)*4):ȓȐx%,y%+h%*rht%,sw%,rh%
��
�'ș &000406C4,((80*w%) � gridwidth%)
��
�
�ș ct_setgcol%,�l(gridcol%)
�
�,yl%=yc%+sminy%*rht%: yh%=yc%+smaxy%*rht%
�� x%=sminx% � smaxx%
�� xc%+x%*stw%,yl%
�� xc%+x%*stw%,yh%
�� x%
�ș &000406C4,84
�
�,xl%=xc%+sminx%*stw%: xh%=xc%+smaxx%*stw%
�� y%=sminy% � smaxy%
�� xl%,yc%+y%*rht%
�� xh%,yc%+y%*rht%
�� y%
�ș &000406C4,88
�ș ct_setgcol%,�l(forecol%)
�
�
min%=0
�max%=gridheight%
�min%=min% � 10
�max%=max% � 10
�� row%=min% � max%
�
x%=xc%
�y%=yc%+row%*rht%*10+16
�*� x%+(16*(row%>0))+(16*(row%>9))-40,y%
�� ;row%*10
�� x%-20,y%-16
�� x%,y%-16
�
� row%
�ș &000406C4,92
�
�max%=gridheight%
�
min%=0
�min%=min% � 10
�max%=max% � 10
�� row%=min% � max%
�x%=xc%+24+gridwidth%*stw%
�y%=row%*rht%*10+yc%+16
�� x%,y%
�� ;row%*10
�� x%-4,y%-16
�� x%-24,y%-16
�
� row%
�ș &000406C4,96
�
�max%=gridwidth%
�
min%=0
�min%=min% � 10
�max%=max% � 10
�� stitch%=min% � max%
�x%=xc%+stitch%*stw%*10
�
y%=yc%-24
�,� x%+(16*(stitch%>0))+(8*(stitch%>9)),y%
�� ;stitch%*10
�
� x%,y%+4
�� x%,y%+20
�
� stitch%
�ș &000406C4,99
�
�max%=gridwidth%
�
min%=0
�min%=min% � 10
�max%=max% � 10
�� stitch%=min% � max%
�x%=xc%+stitch%*stw%*10
�y%=yc%+gridheight%*rht%
�/� x%+(16*(stitch%>0))+(8*(stitch%>9)),y%+44
�� ;stitch%*10
�� x%,y%
�� x%,y%+16
�
� stitch%
�� 2
�
�scl%=(stw%-30)/2
�nummin%=sminx%-1
�nummax%=smaxx%+1
�nummin%-=nummin%�2
�� nummin%<0 � nummin%=0
�-� nummax%>gridwidth% � nummax%=gridwidth%
�� x%=nummin% � nummax% � 2
�� x% � 2=0 �
�� x%<=gridwidth%/2 �
�num%=gridwidth%/2-x%
�3� num% � 2=1 � num%-=1 : xmove%=stw% � xmove%=0
�ș ct_setgcol%,�l(forecol%)
�F� num% �12=0 � ș ct_setgcol%,�l(11) � ș ct_setgcol%,�l(gridcol%)
�� num%=0 �
�%� xc%+(gridwidth%/2)*stw%-8,yc%-4
�� ;num%
�7� xc%+(gridwidth%/2)*stw%-8,yc%+gridheight%*rht%+32
�� ;num%
��
�� num%<10 � xmove%+=8
�#� xc%+x%*stw%+xmove%+scl%,yc%-4
�� ;num%
�5� xc%+x%*stw%+xmove%+scl%,yc%+gridheight%*rht%+32
�� ;num%
��
��
�num%=x%-gridwidth%/2
�3� num% � 2=1 � num%-=1 : xmove%=stw% � xmove%=0
�F� num% �12=0 � ș ct_setgcol%,�l(11) � ș ct_setgcol%,�l(gridcol%)
�� num%<10 � xmove%-=8
�'� xc%+(x%-1)*stw%-xmove%+scl%,yc%-4
�� num%<>0 � � ;num%
�9� xc%+(x%-1)*stw%-xmove%+scl%,yc%+gridheight%*rht%+32
� num%<>0 � � ;num%
�
�
� x%

nummin%=sminy%-1
nummax%=smaxy%+1
nummin%-=nummin% � 2
nummax%+=nummax% � 2
	� nummin%<0 � nummin%=0

/� nummax%>gridheight% � nummax%=gridheight%
� y%=nummin% � nummax% � 2
%� y%=0 � ymove%=12 � ymove%=-scl%

"� y%<10 � xmove%=16 � xmove%=0
� y%>99 � xmove%=-16
D� y% �10=0 � ș ct_setgcol%,�l(11) � ș ct_setgcol%,�l(gridcol%)
(� xc%-36+xmove%,yc%+y%*rht%-2+ymove%
	� ;y%
0� xc%+gridwidth%*stw%+4,yc%+y%*rht%-2+ymove%
	� ;y%
� y%
ș ct_setgcol%,�l(gridcol%)

,yl%=yc%+sminy%*rht%: yh%=yc%+smaxy%*rht%
� x%=sminx% � smaxx%
R� (gridwidth%/2-x%)�12=0 � ș ct_setgcol%,�l(11) � ș ct_setgcol%,�l(gridcol%)
� xc%+x%*stw%,yl%
� xc%+x%*stw%,yh%
� x%

,xl%=xc%+sminx%*stw%: xh%=xc%+smaxx%*stw%
� y%=sminy% � smaxy%
 E� y% � 10=0 � ș ct_setgcol%,�l(11) � ș ct_setgcol%,�l(gridcol%)
!� xl%,yc%+y%*rht%
"� xh%,yc%+y%*rht%
#� y%
$
%'transform%!0 =(edmul%/eddiv%)*65536
&transform%!4 =0
'transform%!8 =0
('transform%!12=(edmul%/eddiv%)*65536
)y%=yc%-ypix%*(gridon%=�)
*xx%=xc%-xpix%*(gridon%=�)
+q�w%=sminx%�smaxx%-1:x%=xx%+w%*stw%:transform%!16=x%<<8:�h%=sminy%�smaxy%-1:symb%=coltable%?(h%*gridwidth%+w%)
,� (symb%�128)=0 �
-!transform%!20=(y%+h%*rht%)<<8
.Hș &00045540,0,symbpoint%!(symb%*4),symbsize%!(symb%*4),transform%,0
/�
0�:�
1�
2 ș &0000002E,r0%,r1%,r2%,r3%
3'ș &0000002E,256+12,scrarea%,fname$
4�vb
5�
6:
7� �l(wimpcol%)
8Ȏ wimpcol% �
9� 0: rgb%=&FFFFFF00
:� 1: rgb%=&DDDDDD00
;� 2: rgb%=&BBBBBB00
<� 3: rgb%=&99999900
=� 4: rgb%=&77777700
>� 5: rgb%=&55555500
?� 6: rgb%=&33333300
@� 7: rgb%=&00000000
A� 8: rgb%=&99440000
B� 9: rgb%=&00EEEE00
C� 10:rgb%=&00CC0000
D� 11:rgb%=&0000DD00
E� 12:rgb%=&BBEEEE00
F� 13:rgb%=&00885500
G� 14:rgb%=&00BBFF00
H� 15:rgb%=&FFBB0000
I�
J	=rgb%
K:
L	� �zb
Mwimppal%!0= &FFFFFF00
Nwimppal%!4= &DDDDDD00
Owimppal%!8= &BBBBBB00
Pwimppal%!12= &99999900
Qwimppal%!16= &77777700
Rwimppal%!20= &55555500
Swimppal%!24= &33333300
Twimppal%!28= &00000000
Uwimppal%!32= &99440000
Vwimppal%!36= &00EEEE00
Wwimppal%!40= &00CC0000
Xwimppal%!44= &0000DD00
Ywimppal%!48= &BBEEEE00
Zwimppal%!52= &00885500
[wimppal%!56= &00BBFF00
\wimppal%!60= &FFBB0000
]�
^:
_	� �vb
`,� coltable%<>0 � coltable%=�d(coltable%)
a/� nametable%<>0 � nametable%=�d(nametable%)
b,� paltable%<>0 � paltable%=�d(paltable%)
c/� sourcespr%<>0 � sourcespr%=�d(sourcespr%)
d � draw%<>0 � draw%=�d(draw%)
e)� scrarea%<>0 � scrarea%=�d(scrarea%)
f2� transtable%<>0 � transtable%=�d(transtable%)
g/� symbstore%<>0 � symbstore%=�d(symbstore%)
h/� symbpoint%<>0 � symbpoint%=�d(symbpoint%)
i,� symbsize%<>0 � symbsize%=�d(symbsize%)
j8� descinfobuff%<>0 � descinfobuff%=�d(descinfobuff%)
k,� descbuff%<>0 � descbuff%=�d(descbuff%)
lG� extradescinfobuff%<>0 � extradescinfobuff%=�d(extradescinfobuff%)
m;� extradescbuff%<>0 � extradescbuff%=�d(extradescbuff%)
n,� colorder%<>0 � colorder%=�d(colorder%)
o(jactype%=0 : restype%=0 : coltype%=2
p�
q:
r	� �hb
sș &000400D2,-1,-1
t�mb(main%,1,1<<22,1<<22)
u�mb(main%,2,3<<24,15<<24)
v�mb(main%,3,1<<22,1<<22)
w�mb(main%,7,1<<24,15<<24)
xopt%=-1
y8$option%="Please choose a conversion process  > > >"
z�mb(main%,4,0,0)
{
�tb(1)
|�xa(-1)
}�
~:
� �o
�m� �(tension_sq_stitches$)<>0 � stitch_width=�(tension_sq_width$)/�(tension_sq_stitches$) � stitch_width=0
�b� �(tension_sq_rows$)<>0 � row_height=�(tension_sq_height$)/�(tension_sq_rows$) � row_height=0
�Ȏ manner% �
�� 0
�stitchwidth=�b(�gwidth$)
�rowht=�b(�gheight$)
�stitchwidth%=�(stitchwidth)
�rowht%=�(rowht)
�gridwidth%=�gstitches$
�gridheight%=�grows$
�g%=0
�spriteon%=�
�� 1
�"gridwidth%=�ans_conv_stitches$
�gridheight%=�ans_conv_rows$
� stitchwidth=�b(stitch_width)
�rowht=�b(row_height)
�stitchwidth%=�(stitchwidth)
�rowht%=�(rowht)
�g%=0
�spriteon%=�h(spritemenu%,4)
�� 2
�gridwidth%=�gstitches$
�gridheight%=�grows$
�
rowht%=30
�stitchwidth%=30
�rowht=30: rht%=30
�stitchwidth=30: stw%=30
�spriteon%=�
��
�edmul%=�$zoommul%
�eddiv%=�$zoomdiv%
�/stitchwidth%=�((stitchwidth*edmul%)/eddiv%)
�#rowht%=�((rowht*edmul%)/eddiv%)
�stw%=stitchwidth%
�rht%=rowht%
�
gridon%=�
�showmask%=�
�rulesize%=80
�tbarht%=00
�Ȏ backcol% �
�� 4,5,6,7,8,10,11,13
�forecol%=0
�
�forecol%=7
��
�rht%=rowht%
�stw%=stitchwidth%
�� manner%=2 � �oa
�� �h(spritemenu%,0)=� �
�3� �h(spritemenu%,2) � scrmode%=12 � scrmode%=15
��
�3� �h(spritemenu%,2) � scrmode%=20 � scrmode%=21
��
�xef%=�k(scrmode%,4)
�yef%=�k(scrmode%,5)
�!xpix%=1<<xef%: xpix2%=2<<xef%
�!ypix%=1<<yef%: ypix2%=2<<yef%
�9scrwidth%=(gridwidth%*stitchwidth%+2*rulesize%)>>xef%
�5scrheight%=(gridheight%*rowht%+2*rulesize%)>>yef%
�editht%=scrheight%
�� pictype$="sprite" �
�B� scrmode%=12 � scrmode%=20 � palpoint%=wimppal% � palpoint%=0
�Nș &00040740,sourcespr%,sourceaddr%,scrmode%,palpoint%,0,1,0,0 � ,,,,size%
�transtable%=�a(size%)
�Lș &00040740,sourcespr%,sourceaddr%,scrmode%,palpoint%,transtable%,1,0,0
��
��
�:
�� �b(cm)
�� factor
�� unitmenu%=� �
�factor=180
��
�factor=70.866
��
�=cm*factor
�:
�	� �oa
�X� i%,c%,size%,num%,oldi%,ptr%,pochle%,extrasymb%,extrasize%,extranum%,extrai%,flags%
�
�Gș &00000029,28,"<KnitConv$Dir>.Resources.Symbols.*" � ,,size%,num%
�Fș &00000029,28,"<KnitConv$Dir>.Resources.Symbols.Describe" � ,,i%
�num%-=1
�Pș &00020029,28,"<KnitConv$Dir>.^.Symbols.*" � ,,extrasize%,extranum%;flags%
�� (flags% � 1)=1 �
�extrasize%=0:extranum%=0
�extrasymb%=�
��
�extrasymb%=�
��
�Jș &00020029,28,"<KnitConv$Dir>.^.Symbols.Describe" � ,,extrai%;flags%
�K� (flags% � 1)=1 � extrai%=0 � extranum%-=1:� extranum%<0 � extranum%=0
�symbmax%=num%+extranum%-1
�i%+=extrai%
�&symbstore%=�a(size%+extrasize%-i%)
�%symbpoint%=�a((num%+extranum%)*4)
�$symbsize%=�a((num%+extranum%)*4)
�/� nametable%<>0 � nametable%=�d(nametable%)
�&nametable%=�a((num%+extranum%)*11)
�
�Mș&0000000C,9,"<KnitConv$Dir>.Resources.Symbols",block%,num%+1,0,3000,"*"
�!i%=0 : oldi%=block%:pochle%=0
�� c%=0 � num%
�ȕ block%?i%<>0
�	i%+=1
��
�block%?i%=13
�� $(oldi%)="Describe" �
�
pochle%=1
��
�*$(nametable%+(c%-pochle%)*11)=$(oldi%)
��
�	i%+=1
�oldi%=block%+i%
�� c%
�c%=0: pochle%=0
�
�� i%=0 � num%-1
�Apath$="<KnitConv$Dir>.Resources.Symbols."+$(nametable%+i%*11)
�5ș&00000008,&FF,path$,symbstore%+c%,0 � ,,,,size%
�#symbpoint%!(i%*4)=symbstore%+c%
�symbsize%!(i%*4)=size%
�
c%+=size%
�� i%
�� extrasymb%=� �
�
�ptr%=c%
Jș&0000000C,9,"<KnitConv$Dir>.^.Symbols",block%,extranum%+1,0,3000,"*"
!i%=0 : oldi%=block%:pochle%=0
� c%=num% � num%+extranum%
ȕ block%?i%<>0
	i%+=1
�
block%?i%=13
� $(oldi%)="Describe" �

pochle%=1
	�

*$(nametable%+(c%-pochle%)*11)=$(oldi%)
�
	i%+=1

oldi%=block%+i%
� c%
c%=ptr%: pochle%=0

 � i%=num% � num%+extranum%-1
9path$="<KnitConv$Dir>.^.Symbols."+$(nametable%+i%*11)
5ș&00000008,&FF,path$,symbstore%+c%,0 � ,,,,size%
#symbpoint%!(i%*4)=symbstore%+c%
symbsize%!(i%*4)=size%

c%+=size%
� i%
�
�
:
� �ja(fname$)
O� colnum%,toprow%,blank%,line%,stitch%,ntablesize%,ntable%,newrow%,newrows%
Q� colorder%,nextcol%,colsfound%,col%,newline%,dups%,bigtable%,i%,oldrow%,row%
� manner%=2 �
k�gb("Sorry, the make jacquard process only works with 'Grid only' or 'Grid & picture' EasyKnit files.")
 �
!� �h(jacmenu%,2)= � �
"�ka
#�
$�ia
%colnum%=�c
&
toprow%=0
'blank%=�
(line%=gridheight%-1
)�
*
stitch%=0
+�
,:� ?(coltable%+line%*gridwidth%+stitch%)<128 � blank%=�
-stitch%+=1
.#� stitch%=gridwidth% � blank%=�
/line%-=1
0� line%=-1 � blank%=�
1toprow%=line%+2
2*ntablesize%=gridwidth%*toprow%*colnum%
3#ntablesize%=ntablesize%*double%
4ntable%=�a(ntablesize%)
5colorder%=�a(colnum%)
6� col%=0 � colnum%-1
7colorder%?col%=255
8
� col%
9line%=0
:nextcol%=0
;colsfound%=0
<�
=
stitch%=0
>�
?.col%=?(coltable%+line%*gridwidth%+stitch%)
@� col% < 128 �
Acol%=col% � 63
Bfound%=�
Ci%=0
Dȕ colorder%?i%<>255
E"� colorder%?i%=col% � found%=�
F	i%+=1
G�
H2� found%= � � colorder%?i%=col%: colsfound%+=1
I�
Jstitch%+=1
K/� stitch%= gridwidth% �  colsfound%=colnum%
Lline%+=1
M(� line%=toprow% � colsfound%=colnum%
Ntot%=toprow%*gridwidth%
Odone%=0
P� line%=0 � toprow%-1
Q� stitch%= 0 � gridwidth%-1
R� newline%=0 � colnum%-1
S?� coltable%?(line%*gridwidth%+stitch%)=colorder%?newline% �
TV?(ntable%+line%*gridwidth%*colnum%+newline%*gridwidth%+stitch%)=colorder%?newline%
U�
VG?(ntable%+line%*gridwidth%*colnum%+newline%*gridwidth%+stitch%)=128
W�
X� newline%
Ydone%+=1
Z%ș &000406C4,((100*done%) � tot%)
[
� stitch%
\� line%
]� double%=2 �
^oldrow%=(toprow%*colnum%)
_newrow%=oldrow%*2
`tot%=newrow%*gridwidth%
adone%=0
b� row%=newrow%-1 � 1 � -2
coldrow%-=1
d� stitch%=0 � gridwidth%-1
eJntable%?(row%*gridwidth%+stitch%)=ntable%?(oldrow%*gridwidth%+stitch%)
fNntable%?((row%-1)*gridwidth%+stitch%)=ntable%?(oldrow%*gridwidth%+stitch%)
gdone%+=1
h%ș &000406C4,((100*done%) � tot%)
i
� stitch%
j
� row%
k�
l$newrows%=toprow%*colnum%*double%
m
n� newrows%<36 �
o.dups%=36 � (newrows%)-(36 � (newrows%)<>0)
p+bigtable%=�a(newrows%*gridwidth%*dups%)
q"tot%=dups%*newrows%*gridwidth%
rdone%=0
s� i%=0 � dups%-1
t%� stitch%=0 � newrows%*gridwidth%
u>bigtable%?(i%*newrows%*gridwidth%+stitch%)=ntable%?stitch%
vdone%+=1
w%ș &000406C4,((100*done%) � tot%)
x
� stitch%
y� i%
zntable%=�d(ntable%)
{ntable%=bigtable%
|toprow%=toprow%*dups%
})ntablesize%=newrows%*gridwidth%*dups%
~�
coltable%=�d(coltable%)
�coltable%=ntable%
�coltablesize%=ntablesize%
�%grows$=�(toprow%*colnum%*double%)
�� manner%=1 �
�9gheight$=�(�(tension_sq_height$)/�(tension_sq_rows$))
�;gwidth$=�(�(tension_sq_width$)/�(tension_sq_stitches$))
�!gstitches$=ans_conv_stitches$
��
�tension_sq_width$="0.0"
�tension_sq_height$="0.0"
�tension_sq_stitches$="0"
�tension_sq_rows$="0"
�ans_conv_rows$="0"
�ans_conv_stitches$="0"
�conv_rows$="0.0"
�conv_stitches$="0.0"
�textdispvar%=6
�
main37%=0
�main0%=0
�mastergrey%=4
�pictype$="none"
�spriteon%=�
�
manner%=0
�sclmul$="1"
�scldiv$="1"
��jb(fname$)
��vb
��
��
��
�:
�� �c
�� num%,i%,col%
�
num%=0
� � i%=block% � block%+maxcol%
�	?i%=0
�� i%
�%� i%=0 � gridwidth%*gridheight%-1
�col%=(coltable%?i%) � 63
�block%?col%=1
�� i%
� � i%=block% � block%+maxcol%
�� ?i%<>0 � num%+=1
�� i%
�	=num%
�:
�	� �ia
�m� �(tension_sq_stitches$)<>0 � stitch_width=�(tension_sq_width$)/�(tension_sq_stitches$) � stitch_width=0
�b� �(tension_sq_rows$)<>0 � row_height=�(tension_sq_height$)/�(tension_sq_rows$) � row_height=0
�Ȏ manner% �
�� 0
�stitchwidth=�b(�gwidth$)
�rowht=�b(�gheight$)
�stitchwidth%=�(stitchwidth)
�rowht%=�(rowht)
�gridwidth%=�gstitches$
�gridheight%=�grows$
�� 1
�"gridwidth%=�ans_conv_stitches$
�gridheight%=�ans_conv_rows$
� stitchwidth=�b(stitch_width)
�rowht=�b(row_height)
�stitchwidth%=�(stitchwidth)
�rowht%=�(rowht)
��
�.� �h(jacmenu%,0)=� � double%=2 � double%=1
��
�:
�	� �ka
�\� found%, jigtable%, nrows%, row%, stitch%, nstitches%, col%, i%, jigrow%, blank%, line%
�� dups%, bigtable%
�Ȏ manner% �
�5� 0 : nrows%=�(grows$) : nstitches%=�(gstitches$)
�E� 1 : nrows%=�(ans_conv_rows$) : nstitches%=�(ans_conv_stitches$)
��
�blank%=�
�line%=nrows%-1
��
�
stitch%=0
��
�:� ?(coltable%+line%*nstitches%+stitch%)<128 � blank%=�
�stitch%+=1
�#� stitch%=nstitches% � blank%=�
�line%-=1
�� line%=-1 � blank%=�
�nrows%=line%+1
�� (nrows% � 2)<>1 �
ך�gb("There is an odd number of rows in the pattern you have dragged in. Jigsaw patterns can only be made from a pattern with an even number of rows.")
��
�3jigtable%=�a((maxcol%+1)*(nrows%+1)*nstitches%)
�
jigrow%=0
�
�� row%=0 � nrows%-1 � 2
�3� col%=0 � maxcol%+1 : block%?col%=255 : � col%
�
� � stitch%=0 � 2*nstitches%-1
�,col%=coltable%?(row%*nstitches%+stitch%)
�	i%=-1
��
�	i%+=1
�1� block%?i%=255 � block%?i%=col% � i%>maxcol%
�$� block%?i%=255 � block%?i%=col%
�
� stitch%
�
�� stitch%=0 � nstitches%-1
�� coltable%?(row%*nstitches%+stitch%)=yarncol% � jigtable%?(jigrow%*nstitches%+stitch%)=yarncol% � jigtable%?(jigrow%*nstitches%+stitch%)=128
�
� stitch%
�jigrow%+=1
�
�i%=0
�ȕ block%?i%<>255
�col%=block%?i%
�� col%<>yarncol% �
�� stitch%=0 � nstitches%-1
�� coltable%?(row%*nstitches%+stitch%)=col% � jigtable%?(jigrow%*nstitches%+stitch%)=col% � jigtable%?(jigrow%*nstitches%+stitch%)=128
�
� stitch%
�jigrow%+=1
�� stitch%=0 � nstitches%-1
��� coltable%?((row%+1)*nstitches%+stitch%)=col% � jigtable%?(jigrow%*nstitches%+stitch%)=col% � jigtable%?(jigrow%*nstitches%+stitch%)=128
�
� stitch%
�jigrow%+=1
��
�	i%+=1
��
�
�� stitch%=0 � nstitches%-1
��� coltable%?((row%+1)*nstitches%+stitch%)=yarncol% � jigtable%?(jigrow%*nstitches%+stitch%)=yarncol% � jigtable%?(jigrow%*nstitches%+stitch%)=128
�
� stitch%
jigrow%+=1

� row%

� jigrow%<36 �
,dups%=36 � (jigrow%)-(36 � (jigrow%)<>0)
6bigtable%=�a(jigrow%*nstitches%*(maxcol%+1)*dups%)
� i%=0 � dups%-1
$� stitch%=0 � jigrow%*nstitches%
?bigtable%?(i%*jigrow%*nstitches%+stitch%)=jigtable%?stitch%
	
� stitch%

� i%
jigtable%=�d(jigtable%)
jigtable%=bigtable%

jigrow%=jigrow%*dups%
�
coltable%=�d(coltable%)
coltable%=jigtable%
$coltablesize%=nstitches%*jigrow%
grows$=�(jigrow%)
� manner%=1 �
9gheight$=�(�(tension_sq_height$)/�(tension_sq_rows$))
;gwidth$=�(�(tension_sq_width$)/�(tension_sq_stitches$))
!gstitches$=ans_conv_stitches$
�
tension_sq_width$="0.0"
tension_sq_height$="0.0"
tension_sq_stitches$="0"
tension_sq_rows$="0"
ans_conv_rows$="0"
ans_conv_stitches$="0"
conv_rows$="0.0"
conv_stitches$="0.0"
 textdispvar%=6
!
main37%=0
"main0%=0
#mastergrey%=4
$pictype$="none"
%spriteon%=�
&
manner%=0
'sclmul$="1"
(scldiv$="1"
)�jb(fname$)
*�
+�vb
,�
-�
�
00000000  0d 00 01 1d f4 20 21 52  75 6e 49 6d 61 67 65 20  |..... !RunImage |
00000010  66 6f 72 20 21 4b 6e 69  74 43 6f 6e 76 0d 00 02  |for !KnitConv...|
00000020  15 f4 20 a9 20 41 26 4a  20 4d 75 69 72 20 31 39  |.. . A&J Muir 19|
00000030  39 37 0d 00 03 2c 76 65  72 73 69 6f 6e 24 3d 20  |97...,version$= |
00000040  20 20 20 20 22 56 31 2e  30 35 63 20 32 34 74 68  |    "V1.05c 24th|
00000050  20 4f 63 74 6f 62 65 72  20 31 39 39 36 22 0d 00  | October 1996"..|
00000060  04 05 3a 0d 00 05 2b ee  20 85 20 3a c8 99 20 26  |..:...+. . :.. &|
00000070  30 30 30 34 30 36 43 32  3a f1 20 f6 24 2b 22 20  |000406C2:. .$+" |
00000080  61 74 20 6c 69 6e 65 20  22 3b 9e 3a c8 98 0d 00  |at line ";.:....|
00000090  06 05 3a 0d 00 07 07 f2  67 61 0d 00 08 17 ee 20  |..:.....ga..... |
000000a0  85 20 c8 99 20 26 30 30  30 34 30 36 43 32 3a f2  |. .. &000406C2:.|
000000b0  78 0d 00 09 05 f5 0d 00  0a 07 f2 63 62 0d 00 0b  |x..........cb...|
000000c0  0d fd 20 65 78 69 74 25  3d b9 0d 00 0c 0f c8 99  |.. exit%=.......|
000000d0  26 30 30 30 34 30 30 44  44 0d 00 0d 05 e0 0d 00  |&000400DD.......|
000000e0  0e 05 3a 0d 00 0f 09 dd  20 f2 63 62 0d 00 10 0d  |..:..... .cb....|
000000f0  ea 20 72 65 61 73 6f 6e  25 0d 00 11 14 e7 20 74  |. reason%..... t|
00000100  69 74 6c 65 6f 70 65 6e  25 3d b9 20 8c 0d 00 12  |itleopen%=. ....|
00000110  30 c8 99 20 26 30 30 30  34 30 30 45 31 2c 6d 61  |0.. &000400E1,ma|
00000120  73 6b 25 2c 62 6c 6f 63  6b 25 2c 74 69 74 74 69  |sk%,block%,titti|
00000130  6d 65 25 20 b8 20 72 65  61 73 6f 6e 25 0d 00 13  |me% . reason%...|
00000140  05 cc 0d 00 14 27 c8 99  20 26 30 30 30 34 30 30  |.....'.. &000400|
00000150  43 37 2c 6d 61 73 6b 25  2c 62 6c 6f 63 6b 25 20  |C7,mask%,block% |
00000160  b8 20 72 65 61 73 6f 6e  25 0d 00 15 05 cd 0d 00  |. reason%.......|
00000170  16 10 c8 8e 20 72 65 61  73 6f 6e 25 20 ca 0d 00  |.... reason% ...|
00000180  17 0b c9 20 30 3a f2 79  61 0d 00 18 0b c9 20 31  |... 0:.ya..... 1|
00000190  3a f2 66 62 0d 00 19 0b  c9 20 32 3a f2 7a 61 0d  |:.fb..... 2:.za.|
000001a0  00 1a 1c c9 20 33 3a c8  99 20 26 30 30 30 34 30  |.... 3:.. &00040|
000001b0  30 43 36 2c 2c 62 6c 6f  63 6b 25 0d 00 1b 0b c9  |0C6,,block%.....|
000001c0  20 36 3a f2 77 61 0d 00  1c 0b c9 20 37 3a f2 68  | 6:.wa..... 7:.h|
000001d0  61 0d 00 1d 0b c9 20 38  3a f2 6c 61 0d 00 1e 0b  |a..... 8:.la....|
000001e0  c9 20 39 3a f2 74 61 0d  00 1f 0f c9 20 31 37 2c  |. 9:.ta..... 17,|
000001f0  31 38 3a f2 75 61 0d 00  20 21 c9 20 31 39 3a c8  |18:.ua.. !. 19:.|
00000200  99 20 26 30 30 30 30 30  30 30 38 2c 36 2c 62 6c  |. &00000008,6,bl|
00000210  6f 63 6b 25 2b 34 34 0d  00 21 2f 85 2c 32 35 35  |ock%+44..!/.,255|
00000220  2c 22 44 61 74 61 20 74  72 61 6e 73 66 65 72 20  |,"Data transfer |
00000230  66 61 69 6c 65 64 3a 20  52 65 63 65 69 76 65 72  |failed: Receiver|
00000240  20 64 69 65 64 22 0d 00  22 05 cb 0d 00 23 05 e1  | died".."....#..|
00000250  0d 00 24 05 3a 0d 00 25  09 dd 20 f2 67 61 0d 00  |..$.:..%.. .ga..|
00000260  26 10 c8 99 20 26 30 30  30 34 30 36 43 30 0d 00  |&... &000406C0..|
00000270  27 09 ea 20 69 6e 25 0d  00 28 0c 69 6c 69 73 74  |'.. in%..(.ilist|
00000280  25 3d 32 0d 00 29 0f 70  72 6f 63 6c 69 73 74 25  |%=2..).proclist%|
00000290  3d 33 0d 00 2a 0e 6a 61  63 6c 69 73 74 25 3d 33  |=3..*.jaclist%=3|
000002a0  0d 00 2b 0e 73 70 72 6c  69 73 74 25 3d 36 0d 00  |..+.sprlist%=6..|
000002b0  2c 79 de 20 62 6c 6f 63  6b 25 20 34 35 30 30 2c  |,y. block% 4500,|
000002c0  20 69 6d 65 6e 75 25 20  32 38 2b 69 6c 69 73 74  | imenu% 28+ilist|
000002d0  25 2a 32 34 2c 20 70 72  6f 63 65 73 73 6d 65 6e  |%*24, processmen|
000002e0  75 25 20 32 38 2b 70 72  6f 63 6c 69 73 74 25 2a  |u% 28+proclist%*|
000002f0  32 34 2c 20 6a 61 63 6d  65 6e 75 25 20 32 38 2b  |24, jacmenu% 28+|
00000300  6a 61 63 6c 69 73 74 25  2a 32 34 2c 20 73 70 72  |jaclist%*24, spr|
00000310  69 74 65 6d 65 6e 75 25  20 32 38 2b 73 70 72 6c  |itemenu% 28+sprl|
00000320  69 73 74 25 2a 32 34 0d  00 2d 14 6d 65 6e 75 69  |ist%*24..-.menui|
00000330  6e 64 73 69 7a 65 25 3d  32 30 30 0d 00 2e 42 de  |ndsize%=200...B.|
00000340  20 6d 65 6e 75 69 6e 64  25 20 6d 65 6e 75 69 6e  | menuind% menuin|
00000350  64 73 69 7a 65 25 3a 20  24 6d 65 6e 75 69 6e 64  |dsize%: $menuind|
00000360  25 3d 22 22 3a 6d 65 6e  75 69 6e 64 66 72 65 65  |%="":menuindfree|
00000370  25 3d 6d 65 6e 75 69 6e  64 25 2b 31 32 0d 00 2f  |%=menuind%+12../|
00000380  0e de 20 63 61 72 62 25  20 32 34 0d 00 30 36 de  |.. carb% 24..06.|
00000390  20 6e 61 6d 65 25 20 31  32 2c 20 74 72 61 6e 73  | name% 12, trans|
000003a0  66 6f 72 6d 25 20 33 32  2c 20 70 61 6c 31 36 25  |form% 32, pal16%|
000003b0  20 31 32 38 2c 20 77 69  6d 70 70 61 6c 25 20 36  | 128, wimppal% 6|
000003c0  38 0d 00 31 28 de 20 6f  70 74 24 28 33 29 2c 20  |8..1(. opt$(3), |
000003d0  6a 61 63 24 28 33 29 2c  20 72 65 73 24 28 33 29  |jac$(3), res$(3)|
000003e0  2c 20 63 6f 6c 24 28 33  29 0d 00 32 45 21 62 6c  |, col$(3)..2E!bl|
000003f0  6f 63 6b 25 3d 32 3a 20  62 6c 6f 63 6b 25 21 34  |ock%=2: block%!4|
00000400  3d 33 3a 20 62 6c 6f 63  6b 25 21 38 3d 39 3a 20  |=3: block%!8=9: |
00000410  62 6c 6f 63 6b 25 21 31  32 3d 31 30 3a 20 62 6c  |block%!12=10: bl|
00000420  6f 63 6b 25 21 31 36 3d  26 34 30 30 43 30 0d 00  |ock%!16=&400C0..|
00000430  33 31 62 6c 6f 63 6b 25  21 32 30 3d 26 34 30 30  |31block%!20=&400|
00000440  43 31 3a 20 62 6c 6f 63  6b 25 21 32 34 3d 26 35  |C1: block%!24=&5|
00000450  30 32 3a 20 62 6c 6f 63  6b 25 21 32 38 3d 30 0d  |02: block%!28=0.|
00000460  00 34 2f c8 99 26 30 30  30 34 30 30 43 30 2c 33  |.4/..&000400C0,3|
00000470  31 30 2c 26 34 42 35 33  34 31 35 34 2c 22 4b 6e  |10,&4B534154,"Kn|
00000480  69 74 43 6f 6e 76 22 2c  62 6c 6f 63 6b 25 0d 00  |itConv",block%..|
00000490  35 1a ee 20 85 20 c8 99  20 26 30 30 30 34 30 36  |5.. . .. &000406|
000004a0  43 32 3a f2 78 3a c8 98  0d 00 36 18 73 74 61 74  |C2:.x:....6.stat|
000004b0  65 5f 66 69 6c 65 24 3d  22 52 65 73 75 6c 74 22  |e_file$="Result"|
000004c0  0d 00 37 19 73 70 72 69  74 65 5f 66 69 6c 65 24  |..7.sprite_file$|
000004d0  3d 22 53 70 72 69 74 65  22 0d 00 38 0b 65 78 69  |="Sprite"..8.exi|
000004e0  74 25 3d a3 0d 00 39 1a  77 69 6d 70 5f 73 65 74  |t%=...9.wimp_set|
000004f0  69 73 74 61 74 65 25 3d  26 34 30 30 43 44 0d 00  |istate%=&400CD..|
00000500  3a 16 63 74 5f 73 65 74  67 63 6f 6c 25 3d 26 34  |:.ct_setgcol%=&4|
00000510  30 37 34 33 0d 00 3b 17  77 69 6d 70 5f 73 65 74  |0743..;.wimp_set|
00000520  63 6f 6c 25 3d 26 34 30  30 45 36 0d 00 3c 0b 6f  |col%=&400E6..<.o|
00000530  70 74 25 3d 2d 31 0d 00  3d 12 74 65 78 74 64 69  |pt%=-1..=.textdi|
00000540  73 70 76 61 72 25 3d 30  0d 00 3e 0e 6a 61 63 74  |spvar%=0..>.jact|
00000550  79 70 65 25 3d 30 0d 00  3f 0e 72 65 73 74 79 70  |ype%=0..?.restyp|
00000560  65 25 3d 30 0d 00 40 0e  63 6f 6c 74 79 70 65 25  |e%=0..@.coltype%|
00000570  3d 32 0d 00 41 0f 63 6f  6c 74 61 62 6c 65 25 3d  |=2..A.coltable%=|
00000580  30 0d 00 42 10 6e 61 6d  65 74 61 62 6c 65 25 3d  |0..B.nametable%=|
00000590  30 0d 00 43 0f 70 61 6c  74 61 62 6c 65 25 3d 30  |0..C.paltable%=0|
000005a0  0d 00 44 10 73 6f 75 72  63 65 73 70 72 25 3d 30  |..D.sourcespr%=0|
000005b0  0d 00 45 0b 64 72 61 77  25 3d 30 0d 00 46 0f 63  |..E.draw%=0..F.c|
000005c0  6f 6c 6f 72 64 65 72 25  3d 30 0d 00 47 0e 73 63  |olorder%=0..G.sc|
000005d0  72 61 72 65 61 25 3d 30  0d 00 48 11 74 72 61 6e  |rarea%=0..H.tran|
000005e0  73 74 61 62 6c 65 25 3d  30 0d 00 49 10 73 79 6d  |stable%=0..I.sym|
000005f0  62 73 74 6f 72 65 25 3d  30 0d 00 4a 10 73 79 6d  |bstore%=0..J.sym|
00000600  62 70 6f 69 6e 74 25 3d  30 0d 00 4b 0f 73 79 6d  |bpoint%=0..K.sym|
00000610  62 73 69 7a 65 25 3d 30  0d 00 4c 13 64 65 73 63  |bsize%=0..L.desc|
00000620  69 6e 66 6f 62 75 66 66  25 3d 30 0d 00 4d 0f 64  |infobuff%=0..M.d|
00000630  65 73 63 62 75 66 66 25  3d 30 0d 00 4e 18 65 78  |escbuff%=0..N.ex|
00000640  74 72 61 64 65 73 63 69  6e 66 6f 62 75 66 66 25  |tradescinfobuff%|
00000650  3d 30 0d 00 4f 14 65 78  74 72 61 64 65 73 63 62  |=0..O.extradescb|
00000660  75 66 66 25 3d 30 0d 00  50 0c 65 64 6d 75 6c 25  |uff%=0..P.edmul%|
00000670  3d 31 0d 00 51 0c 65 64  64 69 76 25 3d 31 0d 00  |=1..Q.eddiv%=1..|
00000680  52 0f 79 61 72 6e 63 6f  6c 25 3d 2d 31 0d 00 53  |R.yarncol%=-1..S|
00000690  0f 6d 61 69 6e 6f 70 65  6e 25 3d a3 0d 00 54 10  |.mainopen%=...T.|
000006a0  74 69 74 6c 65 6f 70 65  6e 25 3d b9 0d 00 55 11  |titleopen%=...U.|
000006b0  63 6f 6c 70 69 63 6f 70  65 6e 25 3d a3 0d 00 56  |colpicopen%=...V|
000006c0  0d 68 65 6c 70 6f 6e 25  3d a3 0d 00 57 10 62 65  |.helpon%=...W.be|
000006d0  72 74 79 66 69 6c 65 25  3d a3 0d 00 58 0f 69 6e  |rtyfile%=...X.in|
000006e0  66 6f 62 75 66 66 25 3d  30 0d 00 59 0f 68 65 6c  |fobuff%=0..Y.hel|
000006f0  70 62 75 66 66 25 3d 30  0d 00 5a 0f 6d 61 73 6b  |pbuff%=0..Z.mask|
00000700  25 3d 26 31 38 33 30 0d  00 5b 1b c8 99 20 26 30  |%=&1830..[... &0|
00000710  30 30 30 30 30 34 32 20  b8 20 74 69 74 74 69 6d  |0000042 . tittim|
00000720  65 25 0d 00 5c 11 74 69  74 74 69 6d 65 25 2b 3d  |e%..\.tittime%+=|
00000730  36 30 30 0d 00 5d 1d 6f  70 74 24 28 30 29 3d 22  |600..].opt$(0)="|
00000740  52 65 6d 6f 76 65 20 70  69 63 74 75 72 65 2e 22  |Remove picture."|
00000750  0d 00 5e 19 6f 70 74 24  28 31 29 3d 22 4d 61 6b  |..^.opt$(1)="Mak|
00000760  65 20 73 70 72 69 74 65  22 0d 00 5f 1f 6f 70 74  |e sprite".._.opt|
00000770  24 28 32 29 3d 22 44 6f  75 62 6c 65 20 4a 61 63  |$(2)="Double Jac|
00000780  71 75 61 72 64 2c 20 22  0d 00 60 1c 6a 61 63 24  |quard, "..`.jac$|
00000790  28 30 29 3d 22 53 74 61  6e 64 61 72 64 20 74 79  |(0)="Standard ty|
000007a0  70 65 2e 22 0d 00 61 1d  6a 61 63 24 28 31 29 3d  |pe."..a.jac$(1)=|
000007b0  22 45 6c 6f 6e 67 61 74  65 64 20 74 79 70 65 2e  |"Elongated type.|
000007c0  22 0d 00 62 1a 6a 61 63  24 28 32 29 3d 22 4a 69  |"..b.jac$(2)="Ji|
000007d0  67 73 61 77 20 74 79 70  65 2e 22 0d 00 63 17 72  |gsaw type."..c.r|
000007e0  65 73 24 28 30 29 3d 22  2c 20 6c 6f 77 20 72 65  |es$(0)=", low re|
000007f0  73 22 0d 00 64 18 72 65  73 24 28 31 29 3d 22 2c  |s"..d.res$(1)=",|
00000800  20 68 69 67 68 20 72 65  73 22 0d 00 65 1d 72 65  | high res"..e.re|
00000810  73 24 28 32 29 3d 22 2c  20 69 6e 63 6c 20 70 69  |s$(2)=", incl pi|
00000820  63 74 75 72 65 2e 22 0d  00 66 17 63 6f 6c 24 28  |cture."..f.col$(|
00000830  32 29 3d 22 2c 20 31 36  20 63 6f 6c 73 22 0d 00  |2)=", 16 cols"..|
00000840  67 18 63 6f 6c 24 28 33  29 3d 22 2c 20 32 35 36  |g.col$(3)=", 256|
00000850  20 63 6f 6c 73 22 0d 00  68 14 61 70 70 73 69 7a  | cols"..h.appsiz|
00000860  65 25 3d 93 2d 26 38 30  30 30 0d 00 69 0b 68 65  |e%=.-&8000..i.he|
00000870  61 70 25 3d 30 0d 00 6a  18 c8 99 20 26 30 30 30  |ap%=0..j... &000|
00000880  30 30 30 35 31 20 b8 20  70 61 67 65 25 0d 00 6b  |00051 . page%..k|
00000890  1a e7 20 a4 6b 28 2d 31  2c 35 29 3c 3e a4 6b 28  |.. .k(-1,5)<>.k(|
000008a0  2d 31 2c 34 29 20 8c 0d  00 6c 3b 74 6f 6f 6c 73  |-1,4) ...l;tools|
000008b0  70 72 25 3d a4 6a 28 22  3c 4b 6e 69 74 43 6f 6e  |pr%=.j("<KnitCon|
000008c0  76 24 44 69 72 3e 2e 52  65 73 6f 75 72 63 65 73  |v$Dir>.Resources|
000008d0  2e 53 70 72 69 74 65 73  2e 42 75 74 74 6f 6e 73  |.Sprites.Buttons|
000008e0  22 29 0d 00 6d 3d 74 69  74 6c 65 73 70 72 25 3d  |")..m=titlespr%=|
000008f0  a4 6a 28 22 3c 4b 6e 69  74 43 6f 6e 76 24 44 69  |.j("<KnitConv$Di|
00000900  72 3e 2e 52 65 73 6f 75  72 63 65 73 2e 53 70 72  |r>.Resources.Spr|
00000910  69 74 65 73 2e 54 69 74  6c 65 53 70 72 22 29 0d  |ites.TitleSpr").|
00000920  00 6e 05 cc 0d 00 6f 3d  74 6f 6f 6c 73 70 72 25  |.n....o=toolspr%|
00000930  3d a4 6a 28 22 3c 4b 6e  69 74 43 6f 6e 76 24 44  |=.j("<KnitConv$D|
00000940  69 72 3e 2e 52 65 73 6f  75 72 63 65 73 2e 53 70  |ir>.Resources.Sp|
00000950  72 69 74 65 73 2e 42 75  74 74 6f 6e 73 32 32 22  |rites.Buttons22"|
00000960  29 0d 00 70 3f 74 69 74  6c 65 73 70 72 25 3d a4  |)..p?titlespr%=.|
00000970  6a 28 22 3c 4b 6e 69 74  43 6f 6e 76 24 44 69 72  |j("<KnitConv$Dir|
00000980  3e 2e 52 65 73 6f 75 72  63 65 73 2e 53 70 72 69  |>.Resources.Spri|
00000990  74 65 73 2e 54 69 74 6c  65 53 70 72 32 32 22 29  |tes.TitleSpr22")|
000009a0  0d 00 71 05 cd 0d 00 72  07 f2 66 61 0d 00 73 36  |..q....r..fa..s6|
000009b0  c8 99 20 26 30 30 30 34  30 30 44 39 2c 2c 22 3c  |.. &000400D9,,"<|
000009c0  4b 6e 69 74 43 6f 6e 76  24 44 69 72 3e 2e 52 65  |KnitConv$Dir>.Re|
000009d0  73 6f 75 72 63 65 73 2e  54 65 6d 70 6c 61 74 65  |sources.Template|
000009e0  73 22 0d 00 74 14 69 6e  64 73 69 7a 65 25 3d 30  |s"..t.indsize%=0|
000009f0  3a 20 69 25 3d 30 0d 00  75 05 f5 0d 00 76 0e 24  |: i%=0..u....v.$|
00000a00  6e 61 6d 65 25 3d 22 2a  22 0d 00 77 31 c8 99 20  |name%="*"..w1.. |
00000a10  26 30 30 30 34 30 30 44  42 2c 2c 30 2c 2c 2c 2d  |&000400DB,,0,,,-|
00000a20  31 2c 6e 61 6d 65 25 2c  69 25 20 b8 20 2c 2c 73  |1,name%,i% . ,,s|
00000a30  69 7a 65 25 2c 2c 2c 2c  69 25 0d 00 78 13 69 6e  |ize%,,,,i%..x.in|
00000a40  64 73 69 7a 65 25 2b 3d  73 69 7a 65 25 0d 00 79  |dsize%+=size%..y|
00000a50  0a fd 20 69 25 3d 30 0d  00 7a 19 de 20 77 69 6e  |.. i%=0..z.. win|
00000a60  64 6f 77 69 6e 64 25 20  69 6e 64 73 69 7a 65 25  |dowind% indsize%|
00000a70  0d 00 7b 16 69 6e 66 6f  25 3d a4 69 28 22 49 6e  |..{.info%=.i("In|
00000a80  66 6f 22 2c 30 29 0d 00  7c 1d 6d 61 69 6e 25 3d  |fo",0)..|.main%=|
00000a90  a4 69 28 22 4d 61 69 6e  22 2c 74 6f 6f 6c 73 70  |.i("Main",toolsp|
00000aa0  72 25 29 0d 00 7d 1a 72  65 70 6f 72 74 25 3d a4  |r%)..}.report%=.|
00000ab0  69 28 22 52 65 70 6f 72  74 22 2c 30 29 0d 00 7e  |i("Report",0)..~|
00000ac0  16 7a 6f 6f 6d 25 3d a4  69 28 22 5a 6f 6f 6d 22  |.zoom%=.i("Zoom"|
00000ad0  2c 30 29 0d 00 7f 23 74  69 74 6c 65 77 69 6e 25  |,0)...#titlewin%|
00000ae0  3d a4 69 28 22 54 69 74  6c 65 22 2c 74 69 74 6c  |=.i("Title",titl|
00000af0  65 73 70 72 25 29 0d 00  80 1a 63 6f 6c 70 69 63  |espr%)....colpic|
00000b00  25 3d a4 69 28 22 43 6f  6c 50 69 63 22 2c 30 29  |%=.i("ColPic",0)|
00000b10  0d 00 81 23 63 6f 6c 70  61 6e 65 25 3d a4 69 28  |...#colpane%=.i(|
00000b20  22 43 6f 6c 50 61 6e 65  22 2c 74 6f 6f 6c 73 70  |"ColPane",toolsp|
00000b30  72 25 29 0d 00 82 06 f2  79 0d 00 83 07 f2 76 61  |r%).....y.....va|
00000b40  0d 00 84 07 f2 7a 62 0d  00 85 1a 24 69 6e 66 6f  |.....zb....$info|
00000b50  76 65 72 73 69 6f 6e 25  3d 76 65 72 73 69 6f 6e  |version%=version|
00000b60  24 0d 00 86 12 f2 61 62  28 74 69 74 6c 65 77 69  |$.....ab(titlewi|
00000b70  6e 25 29 0d 00 87 2b 69  6e 25 3d 8e 28 22 3c 4b  |n%)...+in%=.("<K|
00000b80  6e 69 74 43 6f 6e 76 24  44 69 72 3e 2e 52 65 73  |nitConv$Dir>.Res|
00000b90  6f 75 72 63 65 73 2e 50  61 6c 31 36 22 29 0d 00  |ources.Pal16")..|
00000ba0  88 21 c8 99 20 26 30 30  30 30 30 30 30 43 2c 34  |.!.. &0000000C,4|
00000bb0  2c 69 6e 25 2c 70 61 6c  31 36 25 2c 31 32 38 0d  |,in%,pal16%,128.|
00000bc0  00 89 09 d9 23 69 6e 25  0d 00 8a 11 f2 6f 62 28  |....#in%.....ob(|
00000bd0  69 6d 65 6e 75 25 2c 31  29 0d 00 8b 17 f2 6f 62  |imenu%,1).....ob|
00000be0  28 70 72 6f 63 65 73 73  6d 65 6e 75 25 2c 32 29  |(processmenu%,2)|
00000bf0  0d 00 8c 13 f2 6f 62 28  6a 61 63 6d 65 6e 75 25  |.....ob(jacmenu%|
00000c00  2c 33 29 0d 00 8d 16 f2  6f 62 28 73 70 72 69 74  |,3).....ob(sprit|
00000c10  65 6d 65 6e 75 25 2c 34  29 0d 00 8e 38 24 6f 70  |emenu%,4)...8$op|
00000c20  74 69 6f 6e 25 3d 22 50  6c 65 61 73 65 20 63 68  |tion%="Please ch|
00000c30  6f 6f 73 65 20 61 20 63  6f 6e 76 65 72 73 69 6f  |oose a conversio|
00000c40  6e 20 70 72 6f 63 65 73  73 20 20 3e 20 3e 20 3e  |n process  > > >|
00000c50  22 0d 00 8f 14 f2 6d 62  28 6d 61 69 6e 25 2c 34  |".....mb(main%,4|
00000c60  2c 30 2c 30 29 0d 00 90  1b 24 74 69 74 6c 65 76  |,0,0)....$titlev|
00000c70  65 72 73 69 6f 6e 25 3d  76 65 72 73 69 6f 6e 24  |ersion%=version$|
00000c80  0d 00 91 11 24 7a 6f 6f  6d 6d 75 6c 25 3d 22 31  |....$zoommul%="1|
00000c90  22 0d 00 92 11 24 7a 6f  6f 6d 64 69 76 25 3d 22  |"....$zoomdiv%="|
00000ca0  31 22 0d 00 93 1c f2 6d  62 28 6d 61 69 6e 25 2c  |1".....mb(main%,|
00000cb0  31 2c 31 3c 3c 32 32 2c  31 3c 3c 32 32 29 0d 00  |1,1<<22,1<<22)..|
00000cc0  94 1d f2 6d 62 28 6d 61  69 6e 25 2c 32 2c 33 3c  |...mb(main%,2,3<|
00000cd0  3c 32 34 2c 31 35 3c 3c  32 34 29 0d 00 95 1c f2  |<24,15<<24).....|
00000ce0  6d 62 28 6d 61 69 6e 25  2c 33 2c 31 3c 3c 32 32  |mb(main%,3,1<<22|
00000cf0  2c 31 3c 3c 32 32 29 0d  00 96 1d f2 6d 62 28 6d  |,1<<22).....mb(m|
00000d00  61 69 6e 25 2c 37 2c 31  3c 3c 32 34 2c 31 35 3c  |ain%,7,1<<24,15<|
00000d10  3c 32 34 29 0d 00 97 0a  f2 74 62 28 31 29 0d 00  |<24).....tb(1)..|
00000d20  98 0f 62 6c 6f 63 6b 25  21 30 3d 2d 31 0d 00 99  |..block%!0=-1...|
00000d30  19 62 6c 6f 63 6b 25 21  34 3d 30 3a 62 6c 6f 63  |.block%!4=0:bloc|
00000d40  6b 25 21 38 3d 30 0d 00  9a 1d 62 6c 6f 63 6b 25  |k%!8=0....block%|
00000d50  21 31 32 3d 36 38 3a 62  6c 6f 63 6b 25 21 31 36  |!12=68:block%!16|
00000d60  3d 36 38 0d 00 9b 13 62  6c 6f 63 6b 25 21 32 30  |=68....block%!20|
00000d70  3d 26 33 30 31 41 0d 00  9c 21 24 28 62 6c 6f 63  |=&301A...!$(bloc|
00000d80  6b 25 2b 32 34 29 3d 22  21 4b 6e 69 74 43 6f 6e  |k%+24)="!KnitCon|
00000d90  76 22 2b bd 28 30 29 0d  00 9d 17 c8 99 26 30 30  |v"+.(0)......&00|
00000da0  30 34 30 30 43 32 2c 2c  62 6c 6f 63 6b 25 0d 00  |0400C2,,block%..|
00000db0  9e 10 c8 99 20 26 30 30  30 34 30 36 43 31 0d 00  |.... &000406C1..|
00000dc0  9f 05 e1 0d 00 a0 05 3a  0d 00 a1 09 dd 20 f2 6c  |.......:..... .l|
00000dd0  61 0d 00 a2 21 ea 20 6b  65 79 25 2c 69 63 6f 6e  |a...!. key%,icon|
00000de0  25 2c 77 68 61 6e 25 2c  70 72 6f 63 65 73 73 65  |%,whan%,processe|
00000df0  64 25 0d 00 a3 12 77 68  61 6e 25 3d 62 6c 6f 63  |d%....whan%=bloc|
00000e00  6b 25 21 30 0d 00 a4 12  69 63 6f 6e 25 3d 62 6c  |k%!0....icon%=bl|
00000e10  6f 63 6b 25 21 34 0d 00  a5 12 6b 65 79 25 3d 62  |ock%!4....key%=b|
00000e20  6c 6f 63 6b 25 21 32 34  0d 00 a6 10 70 72 6f 63  |lock%!24....proc|
00000e30  65 73 73 65 64 25 3d a3  0d 00 a7 0e c8 8e 20 77  |essed%=....... w|
00000e40  68 61 6e 25 20 ca 0d 00  a8 0b c9 20 7a 6f 6f 6d  |han% ...... zoom|
00000e50  25 0d 00 a9 0e c8 8e 20  69 63 6f 6e 25 20 ca 0d  |%...... icon% ..|
00000e60  00 aa 07 c9 20 30 0d 00  ab 0d c8 8e 20 6b 65 79  |.... 0...... key|
00000e70  25 20 ca 0d 00 ac 1c c9  20 26 31 38 45 2c 26 31  |% ...... &18E,&1|
00000e80  38 41 2c 26 31 38 46 2c  26 31 39 41 2c 31 33 0d  |8A,&18F,&19A,13.|
00000e90  00 ad 10 70 72 6f 63 65  73 73 65 64 25 3d b9 0d  |...processed%=..|
00000ea0  00 ae 0b 69 63 6f 6e 25  3d 31 0d 00 af 22 62 6c  |...icon%=1..."bl|
00000eb0  6f 63 6b 25 21 30 3d 7a  6f 6f 6d 25 3a 20 62 6c  |ock%!0=zoom%: bl|
00000ec0  6f 63 6b 25 21 34 3d 69  63 6f 6e 25 0d 00 b0 18  |ock%!4=icon%....|
00000ed0  c8 99 20 26 30 30 30 34  30 30 43 45 2c 2c 62 6c  |.. &000400CE,,bl|
00000ee0  6f 63 6b 25 0d 00 b1 21  f2 70 28 7a 6f 6f 6d 25  |ock%...!.p(zoom%|
00000ef0  2c 69 63 6f 6e 25 2c a9  24 28 62 6c 6f 63 6b 25  |,icon%,.$(block%|
00000f00  21 32 38 29 29 0d 00 b2  05 7f 0d 00 b3 1f e7 20  |!28)).......... |
00000f10  6b 65 79 25 3c 3e 26 31  43 43 20 8c 20 70 72 6f  |key%<>&1CC . pro|
00000f20  63 65 73 73 65 64 25 3d  b9 0d 00 b4 05 cb 0d 00  |cessed%=........|
00000f30  b5 07 c9 20 31 0d 00 b6  0d c8 8e 20 6b 65 79 25  |... 1...... key%|
00000f40  20 ca 0d 00 b7 19 c9 20  26 31 38 45 2c 26 31 38  | ...... &18E,&18|
00000f50  41 2c 26 31 38 46 2c 26  31 39 41 0d 00 b8 10 70  |A,&18F,&19A....p|
00000f60  72 6f 63 65 73 73 65 64  25 3d b9 0d 00 b9 0b 69  |rocessed%=.....i|
00000f70  63 6f 6e 25 3d 30 0d 00  ba 22 62 6c 6f 63 6b 25  |con%=0..."block%|
00000f80  21 30 3d 7a 6f 6f 6d 25  3a 20 62 6c 6f 63 6b 25  |!0=zoom%: block%|
00000f90  21 34 3d 69 63 6f 6e 25  0d 00 bb 18 c8 99 20 26  |!4=icon%...... &|
00000fa0  30 30 30 34 30 30 43 45  2c 2c 62 6c 6f 63 6b 25  |000400CE,,block%|
00000fb0  0d 00 bc 21 f2 70 28 7a  6f 6f 6d 25 2c 69 63 6f  |...!.p(zoom%,ico|
00000fc0  6e 25 2c a9 24 28 62 6c  6f 63 6b 25 21 32 38 29  |n%,.$(block%!28)|
00000fd0  29 0d 00 bd 08 c9 20 31  33 0d 00 be 15 c8 99 20  |)..... 13...... |
00000fe0  26 30 30 30 34 30 30 44  34 2c 30 2c 2d 31 0d 00  |&000400D4,0,-1..|
00000ff0  bf 10 70 72 6f 63 65 73  73 65 64 25 3d b9 0d 00  |..processed%=...|
00001000  c0 05 7f 0d 00 c1 1f e7  20 6b 65 79 25 3c 3e 26  |........ key%<>&|
00001010  31 43 43 20 8c 20 70 72  6f 63 65 73 73 65 64 25  |1CC . processed%|
00001020  3d b9 0d 00 c2 05 cb 0d  00 c3 05 cb 0d 00 c4 05  |=...............|
00001030  cb 0d 00 c5 26 e7 20 ac  20 70 72 6f 63 65 73 73  |....&. . process|
00001040  65 64 25 20 8c 20 c8 99  20 26 30 30 30 34 30 30  |ed% . .. &000400|
00001050  44 43 2c 6b 65 79 25 0d  00 c6 05 e1 0d 00 c7 05  |DC,key%.........|
00001060  3a 0d 00 c8 09 dd 20 f2  77 61 0d 00 c9 2c ea 20  |:..... .wa...,. |
00001070  62 75 74 74 6f 6e 25 2c  77 69 6e 64 6f 77 25 2c  |button%,window%,|
00001080  69 63 6f 6e 25 2c 6d 78  25 2c 6d 79 25 2c 78 25  |icon%,mx%,my%,x%|
00001090  2c 79 25 2c 72 25 0d 00  ca 10 6d 78 25 3d 62 6c  |,y%,r%....mx%=bl|
000010a0  6f 63 6b 25 21 30 0d 00  cb 10 6d 79 25 3d 62 6c  |ock%!0....my%=bl|
000010b0  6f 63 6b 25 21 34 0d 00  cc 14 62 75 74 74 6f 6e  |ock%!4....button|
000010c0  25 3d 62 6c 6f 63 6b 25  21 38 0d 00 cd 15 77 69  |%=block%!8....wi|
000010d0  6e 64 6f 77 25 3d 62 6c  6f 63 6b 25 21 31 32 0d  |ndow%=block%!12.|
000010e0  00 ce 13 69 63 6f 6e 25  3d 62 6c 6f 63 6b 25 21  |...icon%=block%!|
000010f0  31 36 0d 00 cf 17 e7 20  74 69 74 6c 65 6f 70 65  |16..... titleope|
00001100  6e 25 3d b9 20 8c 20 f2  73 0d 00 d0 11 e7 20 62  |n%=. . .s..... b|
00001110  75 74 74 6f 6e 25 3d 32  20 8c 0d 00 d1 10 c8 8e  |utton%=2 .......|
00001120  20 77 69 6e 64 6f 77 25  20 ca 0d 00 d2 2a c9 20  | window% ....*. |
00001130  2d 32 3a 20 f2 72 62 28  69 6d 65 6e 75 25 2c 62  |-2: .rb(imenu%,b|
00001140  6c 6f 63 6b 25 21 30 2d  36 34 2c 31 34 30 2b 31  |lock%!0-64,140+1|
00001150  2a 34 34 29 0d 00 d3 0c  c9 20 6d 61 69 6e 25 3a  |*44)..... main%:|
00001160  0d 00 d4 0e c8 8e 20 69  63 6f 6e 25 20 ca 0d 00  |...... icon% ...|
00001170  d5 07 c9 20 35 0d 00 d6  1d f2 72 62 28 70 72 6f  |... 5.....rb(pro|
00001180  63 65 73 73 6d 65 6e 75  25 2c 6d 78 25 2c 6d 79  |cessmenu%,mx%,my|
00001190  25 29 0d 00 d7 05 cb 0d  00 d8 05 cb 0d 00 d9 05  |%)..............|
000011a0  cc 0d 00 da 10 c8 8e 20  77 69 6e 64 6f 77 25 20  |....... window% |
000011b0  ca 0d 00 db 08 c9 20 2d  32 0d 00 dc 0e f2 61 62  |...... -2.....ab|
000011c0  28 6d 61 69 6e 25 29 0d  00 dd 0e c9 20 63 6f 6c  |(main%)..... col|
000011d0  70 61 6e 65 25 0d 00 de  3b e7 20 79 61 72 6e 63  |pane%...;. yarnc|
000011e0  6f 6c 25 3c 3e 2d 31 20  8c 20 f2 6d 62 28 63 6f  |ol%<>-1 . .mb(co|
000011f0  6c 70 61 6e 65 25 2c 79  61 72 6e 63 6f 6c 25 2a  |lpane%,yarncol%*|
00001200  33 2b 31 2c 30 3c 3c 32  31 2c 31 3c 3c 32 31 29  |3+1,0<<21,1<<21)|
00001210  0d 00 df 11 e7 20 69 63  6f 6e 25 83 33 3d 30 20  |..... icon%.3=0 |
00001220  8c 0d 00 e0 14 79 61 72  6e 63 6f 6c 25 3d 69 63  |.....yarncol%=ic|
00001230  6f 6e 25 2f 33 0d 00 e1  05 cc 0d 00 e2 18 79 61  |on%/3.........ya|
00001240  72 6e 63 6f 6c 25 3d 28  69 63 6f 6e 25 2d 32 29  |rncol%=(icon%-2)|
00001250  2f 33 0d 00 e3 05 cd 0d  00 e4 2a f2 6d 62 28 63  |/3........*.mb(c|
00001260  6f 6c 70 61 6e 65 25 2c  79 61 72 6e 63 6f 6c 25  |olpane%,yarncol%|
00001270  2a 33 2b 31 2c 31 3c 3c  32 31 2c 31 3c 3c 32 31  |*3+1,1<<21,1<<21|
00001280  29 0d 00 e5 0d c9 20 72  65 70 6f 72 74 25 0d 00  |)..... report%..|
00001290  e6 0f f2 72 28 72 65 70  6f 72 74 25 29 0d 00 e7  |...r(report%)...|
000012a0  1e f2 70 28 63 61 72 62  25 2c 63 61 72 62 25 21  |..p(carb%,carb%!|
000012b0  34 2c 63 61 72 62 25 21  32 30 29 0d 00 e8 0d f2  |4,carb%!20).....|
000012c0  7a 28 77 25 2c 68 25 29  0d 00 e9 13 c8 97 20 c8  |z(w%,h%)...... .|
000012d0  93 20 30 2c 30 2c 77 25  2c 68 25 0d 00 ea 0d c9  |. 0,0,w%,h%.....|
000012e0  20 63 6f 6c 70 69 63 25  0d 00 eb 0e c8 8e 20 69  | colpic%...... i|
000012f0  63 6f 6e 25 20 ca 0d 00  ec 07 c9 20 31 0d 00 ed  |con% ...... 1...|
00001300  13 e7 20 79 61 72 6e 63  6f 6c 25 3d 2d 31 20 8c  |.. yarncol%=-1 .|
00001310  0d 00 ee 25 f2 67 62 28  22 43 68 6f 6f 73 65 20  |...%.gb("Choose |
00001320  61 20 62 61 63 6b 67 72  6f 75 6e 64 20 63 6f 6c  |a background col|
00001330  6f 75 72 22 29 0d 00 ef  05 cc 0d 00 f0 0f f2 72  |our")..........r|
00001340  28 63 6f 6c 70 69 63 25  29 0d 00 f1 1c f2 6d 62  |(colpic%).....mb|
00001350  28 6d 61 69 6e 25 2c 31  2c 30 3c 3c 32 32 2c 31  |(main%,1,0<<22,1|
00001360  3c 3c 32 32 29 0d 00 f2  1d f2 6d 62 28 6d 61 69  |<<22).....mb(mai|
00001370  6e 25 2c 32 2c 37 3c 3c  32 34 2c 31 35 3c 3c 32  |n%,2,7<<24,15<<2|
00001380  34 29 0d 00 f3 1c f2 6d  62 28 6d 61 69 6e 25 2c  |4).....mb(main%,|
00001390  33 2c 30 3c 3c 32 32 2c  31 3c 3c 32 32 29 0d 00  |3,0<<22,1<<22)..|
000013a0  f4 0a f2 74 62 28 33 29  0d 00 f5 2f c8 99 20 26  |...tb(3).../.. &|
000013b0  30 30 30 34 30 30 44 32  2c 6d 61 69 6e 25 2c 31  |000400D2,main%,1|
000013c0  2c 2d 31 2c 2d 31 2c 2d  31 2c a9 24 28 73 61 76  |,-1,-1,-1,.$(sav|
000013d0  65 70 61 74 68 25 29 0d  00 f6 05 cd 0d 00 f7 07  |epath%).........|
000013e0  c9 20 32 0d 00 f8 0f f2  72 28 63 6f 6c 70 69 63  |. 2.....r(colpic|
000013f0  25 29 0d 00 f9 07 f2 76  62 0d 00 fa 07 f2 68 62  |%).....vb.....hb|
00001400  0d 00 fb 05 cb 0d 00 fc  0b c9 20 6d 61 69 6e 25  |.......... main%|
00001410  0d 00 fd 0e c8 8e 20 69  63 6f 6e 25 20 ca 0d 00  |...... icon% ...|
00001420  fe 07 c9 20 33 0d 00 ff  19 e7 20 28 62 75 74 74  |... 3..... (butt|
00001430  6f 6e 25 20 80 20 26 35  30 29 3e 30 20 8c 0d 01  |on% . &50)>0 ...|
00001440  00 29 e7 20 62 75 74 74  6f 6e 25 3d 26 31 30 20  |.). button%=&10 |
00001450  8c 20 61 64 6a 75 73 74  25 3d b9 20 8b 20 61 64  |. adjust%=. . ad|
00001460  6a 75 73 74 25 3d a3 0d  01 01 21 f2 77 28 c2 24  |just%=....!.w(.$|
00001470  73 61 76 65 73 70 72 25  2c 38 29 2c 69 63 6f 6e  |savespr%,8),icon|
00001480  25 2c 6d 61 69 6e 25 29  0d 01 02 05 cd 0d 01 03  |%,main%)........|
00001490  07 c9 20 35 0d 01 04 31  e7 20 62 75 74 74 6f 6e  |.. 5...1. button|
000014a0  25 3d 34 20 8c 20 f2 72  62 28 70 72 6f 63 65 73  |%=4 . .rb(proces|
000014b0  73 6d 65 6e 75 25 2c 6d  78 25 2b 33 32 2c 6d 79  |smenu%,mx%+32,my|
000014c0  25 2d 34 34 29 0d 01 05  08 c9 20 36 3a 0d 01 06  |%-44)..... 6:...|
000014d0  11 e7 20 68 65 6c 70 6f  6e 25 3d a3 20 8c 0d 01  |.. helpon%=. ...|
000014e0  07 3d c8 99 26 30 30 30  34 31 35 30 30 2c 2c 22  |.=..&00041500,,"|
000014f0  3c 4b 6e 69 74 43 6f 6e  76 24 44 69 72 3e 2e 52  |<KnitConv$Dir>.R|
00001500  65 73 6f 75 72 63 65 73  2e 4d 65 73 73 61 67 65  |esources.Message|
00001510  73 22 20 b8 20 2c 2c 6c  65 6e 25 0d 01 08 14 69  |s" . ,,len%....i|
00001520  6e 66 6f 62 75 66 66 25  3d a4 61 28 31 36 29 0d  |nfobuff%=.a(16).|
00001530  01 09 16 68 65 6c 70 62  75 66 66 25 3d a4 61 28  |...helpbuff%=.a(|
00001540  6c 65 6e 25 29 0d 01 0a  47 c8 99 26 30 30 30 34  |len%)...G..&0004|
00001550  31 35 30 31 2c 69 6e 66  6f 62 75 66 66 25 2c 22  |1501,infobuff%,"|
00001560  3c 4b 6e 69 74 43 6f 6e  76 24 44 69 72 3e 2e 52  |<KnitConv$Dir>.R|
00001570  65 73 6f 75 72 63 65 73  2e 4d 65 73 73 61 67 65  |esources.Message|
00001580  73 22 2c 68 65 6c 70 62  75 66 66 25 0d 01 0b 0d  |s",helpbuff%....|
00001590  68 65 6c 70 6f 6e 25 3d  b9 0d 01 0c 08 78 25 3d  |helpon%=.....x%=|
000015a0  30 0d 01 0d 25 c8 99 20  26 30 30 30 34 32 36 38  |0...%.. &0004268|
000015b0  31 2c 78 25 2c 62 6c 6f  63 6b 25 2c 34 35 30 30  |1,x%,block%,4500|
000015c0  20 b8 20 2c 79 25 0d 01  0e 08 78 25 3d 30 0d 01  | . ,y%....x%=0..|
000015d0  0f 05 f5 0d 01 10 1b 74  61 73 6b 25 3d 21 28 62  |.......task%=!(b|
000015e0  6c 6f 63 6b 25 2b 34 2b  78 25 2a 31 36 29 0d 01  |lock%+4+x%*16)..|
000015f0  11 09 72 25 3d 2d 31 0d  01 12 19 f5 3a 72 25 2b  |..r%=-1.....:r%+|
00001600  3d 31 3a fd 20 74 61 73  6b 25 3f 72 25 3c 33 32  |=1:. task%?r%<32|
00001610  0d 01 13 0f 74 61 73 6b  25 3f 72 25 3d 31 33 0d  |....task%?r%=13.|
00001620  01 14 09 78 25 2b 3d 31  0d 01 15 29 fd 20 28 62  |...x%+=1...). (b|
00001630  6c 6f 63 6b 25 2b 34 2b  78 25 2a 31 36 3e 79 25  |lock%+4+x%*16>y%|
00001640  29 20 84 20 24 74 61 73  6b 25 3d 22 48 65 6c 70  |) . $task%="Help|
00001650  22 0d 01 16 38 e7 20 24  74 61 73 6b 25 3c 3e 22  |"...8. $task%<>"|
00001660  48 65 6c 70 22 20 8c 20  2a 46 69 6c 65 72 5f 52  |Help" . *Filer_R|
00001670  75 6e 20 52 65 73 6f 75  72 63 65 73 3a 24 2e 41  |un Resources:$.A|
00001680  70 70 73 2e 21 48 65 6c  70 0d 01 17 05 cc 0d 01  |pps.!Help.......|
00001690  18 1a c8 99 20 26 30 30  30 34 31 35 30 34 2c 69  |.... &00041504,i|
000016a0  6e 66 6f 62 75 66 66 25  0d 01 19 1b 69 6e 66 6f  |nfobuff%....info|
000016b0  62 75 66 66 25 3d a4 64  28 69 6e 66 6f 62 75 66  |buff%=.d(infobuf|
000016c0  66 25 29 0d 01 1a 1b 68  65 6c 70 62 75 66 66 25  |f%)....helpbuff%|
000016d0  3d a4 64 28 68 65 6c 70  62 75 66 66 25 29 0d 01  |=.d(helpbuff%)..|
000016e0  1b 0d 68 65 6c 70 6f 6e  25 3d a3 0d 01 1c 05 cd  |..helpon%=......|
000016f0  0d 01 1d 05 cb 0d 01 1e  0b c9 20 7a 6f 6f 6d 25  |.......... zoom%|
00001700  0d 01 1f 0e c8 8e 20 69  63 6f 6e 25 20 ca 0d 01  |...... icon% ...|
00001710  20 25 c9 20 32 3a 20 f2  65 61 28 7a 6f 6f 6d 25  | %. 2: .ea(zoom%|
00001720  2c 30 2c 39 39 39 2c 31  2c 62 75 74 74 6f 6e 25  |,0,999,1,button%|
00001730  2c 31 29 0d 01 21 26 c9  20 33 3a 20 f2 65 61 28  |,1)..!&. 3: .ea(|
00001740  7a 6f 6f 6d 25 2c 30 2c  39 39 39 2c 31 2c 62 75  |zoom%,0,999,1,bu|
00001750  74 74 6f 6e 25 2c 2d 31  29 0d 01 22 25 c9 20 34  |tton%,-1).."%. 4|
00001760  3a 20 f2 65 61 28 7a 6f  6f 6d 25 2c 31 2c 39 39  |: .ea(zoom%,1,99|
00001770  39 2c 31 2c 62 75 74 74  6f 6e 25 2c 31 29 0d 01  |9,1,button%,1)..|
00001780  23 26 c9 20 35 3a 20 f2  65 61 28 7a 6f 6f 6d 25  |#&. 5: .ea(zoom%|
00001790  2c 31 2c 39 39 39 2c 31  2c 62 75 74 74 6f 6e 25  |,1,999,1,button%|
000017a0  2c 2d 31 29 0d 01 24 05  cb 0d 01 25 05 cb 0d 01  |,-1)..$....%....|
000017b0  26 05 cd 0d 01 27 05 e1  0d 01 28 05 3a 0d 01 29  |&....'....(.:..)|
000017c0  09 dd 20 f2 74 61 0d 01  2a 22 ea 20 73 65 6c 25  |.. .ta..*". sel%|
000017d0  2c 73 75 62 73 65 6c 25  2c 62 75 74 74 6f 6e 25  |,subsel%,button%|
000017e0  2c 6d 78 25 2c 6d 79 25  0d 01 2b 22 73 65 6c 25  |,mx%,my%..+"sel%|
000017f0  3d 21 62 6c 6f 63 6b 25  3a 20 73 75 62 73 65 6c  |=!block%: subsel|
00001800  25 3d 62 6c 6f 63 6b 25  21 34 0d 01 2c 17 c8 99  |%=block%!4..,...|
00001810  26 30 30 30 34 30 30 43  46 2c 2c 62 6c 6f 63 6b  |&000400CF,,block|
00001820  25 0d 01 2d 1d 6d 78 25  3d 21 62 6c 6f 63 6b 25  |%..-.mx%=!block%|
00001830  3a 20 6d 79 25 3d 62 6c  6f 63 6b 25 21 34 0d 01  |: my%=block%!4..|
00001840  2e 14 62 75 74 74 6f 6e  25 3d 62 6c 6f 63 6b 25  |..button%=block%|
00001850  21 38 0d 01 2f 12 f2 78  61 28 6d 65 6e 75 6f 70  |!8../..xa(menuop|
00001860  65 6e 25 29 0d 01 30 12  c8 8e 20 6d 65 6e 75 6f  |en%)..0... menuo|
00001870  70 65 6e 25 20 ca 0d 01  31 0c c9 20 69 6d 65 6e  |pen% ...1.. imen|
00001880  75 25 0d 01 32 0d c8 8e  20 73 65 6c 25 20 ca 0d  |u%..2... sel% ..|
00001890  01 33 1b c9 20 30 3a 20  f2 72 62 28 69 6e 66 6f  |.3.. 0: .rb(info|
000018a0  25 2c 6d 78 25 2c 6d 79  25 29 0d 01 34 0b c9 20  |%,mx%,my%)..4.. |
000018b0  31 3a 20 f2 71 0d 01 35  05 cb 0d 01 36 12 c9 20  |1: .q..5....6.. |
000018c0  70 72 6f 63 65 73 73 6d  65 6e 75 25 0d 01 37 27  |processmenu%..7'|
000018d0  e7 20 6f 70 74 25 3c 3e  2d 31 20 8c 20 f2 79 62  |. opt%<>-1 . .yb|
000018e0  28 70 72 6f 63 65 73 73  6d 65 6e 75 25 2c 6f 70  |(processmenu%,op|
000018f0  74 25 29 0d 01 38 0d 6f  70 74 25 3d 73 65 6c 25  |t%)..8.opt%=sel%|
00001900  0d 01 39 1a f2 75 62 28  70 72 6f 63 65 73 73 6d  |..9..ub(processm|
00001910  65 6e 75 25 2c 6f 70 74  25 29 0d 01 3a 17 24 6f  |enu%,opt%)..:.$o|
00001920  70 74 69 6f 6e 25 3d 6f  70 74 24 28 6f 70 74 25  |ption%=opt$(opt%|
00001930  29 0d 01 3b 14 f2 6d 62  28 6d 61 69 6e 25 2c 34  |)..;..mb(main%,4|
00001940  2c 30 2c 30 29 0d 01 3c  1d f2 6d 62 28 6d 61 69  |,0,0)..<..mb(mai|
00001950  6e 25 2c 37 2c 37 3c 3c  32 34 2c 31 35 3c 3c 32  |n%,7,7<<24,15<<2|
00001960  34 29 0d 01 3d 0a f2 74  62 28 32 29 0d 01 3e 0d  |4)..=..tb(2)..>.|
00001970  c8 8e 20 73 65 6c 25 20  ca 0d 01 3f 07 c9 20 30  |.. sel% ...?.. 0|
00001980  0d 01 40 0a f2 70 62 28  31 29 0d 01 41 07 c9 20  |..@..pb(1)..A.. |
00001990  31 0d 01 42 44 e7 20 a4  68 28 73 70 72 69 74 65  |1..BD. .h(sprite|
000019a0  6d 65 6e 75 25 2c 30 29  3d 30 20 80 20 a4 68 28  |menu%,0)=0 . .h(|
000019b0  73 70 72 69 74 65 6d 65  6e 75 25 2c 31 29 3d 30  |spritemenu%,1)=0|
000019c0  20 8c 20 f2 75 62 28 73  70 72 69 74 65 6d 65 6e  | . .ub(spritemen|
000019d0  75 25 2c 30 29 0d 01 43  44 e7 20 a4 68 28 73 70  |u%,0)..CD. .h(sp|
000019e0  72 69 74 65 6d 65 6e 75  25 2c 32 29 3d 30 20 80  |ritemenu%,2)=0 .|
000019f0  20 a4 68 28 73 70 72 69  74 65 6d 65 6e 75 25 2c  | .h(spritemenu%,|
00001a00  33 29 3d 30 20 8c 20 f2  75 62 28 73 70 72 69 74  |3)=0 . .ub(sprit|
00001a10  65 6d 65 6e 75 25 2c 32  29 0d 01 44 10 c8 8e 20  |emenu%,2)..D... |
00001a20  73 75 62 73 65 6c 25 20  ca 0d 01 45 04 0d 01 46  |subsel% ...E...F|
00001a30  09 c9 20 30 2c 31 0d 01  47 16 f2 79 62 28 73 70  |.. 0,1..G..yb(sp|
00001a40  72 69 74 65 6d 65 6e 75  25 2c 30 29 0d 01 48 16  |ritemenu%,0)..H.|
00001a50  f2 79 62 28 73 70 72 69  74 65 6d 65 6e 75 25 2c  |.yb(spritemenu%,|
00001a60  31 29 0d 01 49 14 72 65  73 74 79 70 65 25 3d 73  |1)..I.restype%=s|
00001a70  75 62 73 65 6c 25 0d 01  4a 1d f2 75 62 28 73 70  |ubsel%..J..ub(sp|
00001a80  72 69 74 65 6d 65 6e 75  25 2c 72 65 73 74 79 70  |ritemenu%,restyp|
00001a90  65 25 29 0d 01 4b 09 c9  20 32 2c 33 0d 01 4c 16  |e%)..K.. 2,3..L.|
00001aa0  f2 79 62 28 73 70 72 69  74 65 6d 65 6e 75 25 2c  |.yb(spritemenu%,|
00001ab0  32 29 0d 01 4d 16 f2 79  62 28 73 70 72 69 74 65  |2)..M..yb(sprite|
00001ac0  6d 65 6e 75 25 2c 33 29  0d 01 4e 14 63 6f 6c 74  |menu%,3)..N.colt|
00001ad0  79 70 65 25 3d 73 75 62  73 65 6c 25 0d 01 4f 1d  |ype%=subsel%..O.|
00001ae0  f2 75 62 28 73 70 72 69  74 65 6d 65 6e 75 25 2c  |.ub(spritemenu%,|
00001af0  63 6f 6c 74 79 70 65 25  29 0d 01 50 07 c9 20 34  |coltype%)..P.. 4|
00001b00  0d 01 51 1c f2 78 62 28  73 70 72 69 74 65 6d 65  |..Q..xb(spriteme|
00001b10  6e 75 25 2c 73 75 62 73  65 6c 25 29 0d 01 52 05  |nu%,subsel%)..R.|
00001b20  cb 0d 01 53 1c 24 6f 70  74 69 6f 6e 25 2b 3d 72  |...S.$option%+=r|
00001b30  65 73 24 28 72 65 73 74  79 70 65 25 29 0d 01 54  |es$(restype%)..T|
00001b40  1c 24 6f 70 74 69 6f 6e  25 2b 3d 63 6f 6c 24 28  |.$option%+=col$(|
00001b50  63 6f 6c 74 79 70 65 25  29 0d 01 55 2d e7 20 a4  |coltype%)..U-. .|
00001b60  68 28 73 70 72 69 74 65  6d 65 6e 75 25 2c 34 29  |h(spritemenu%,4)|
00001b70  3d b9 20 8c 20 24 6f 70  74 69 6f 6e 25 2b 3d 72  |=. . $option%+=r|
00001b80  65 73 24 28 32 29 0d 01  56 14 f2 6d 62 28 6d 61  |es$(2)..V..mb(ma|
00001b90  69 6e 25 2c 34 2c 30 2c  30 29 0d 01 57 0a f2 70  |in%,4,0,0)..W..p|
00001ba0  62 28 32 29 0d 01 58 07  c9 20 32 0d 01 59 37 e7  |b(2)..X.. 2..Y7.|
00001bb0  20 6a 61 63 74 79 70 65  25 3c 3e 30 20 8c 20 f2  | jactype%<>0 . .|
00001bc0  79 62 28 6a 61 63 6d 65  6e 75 25 2c 6a 61 63 74  |yb(jacmenu%,jact|
00001bd0  79 70 65 25 29 20 3a 20  6a 61 63 74 79 70 65 25  |ype%) : jactype%|
00001be0  3d 30 0d 01 5a 28 e7 20  a4 68 28 6a 61 63 6d 65  |=0..Z(. .h(jacme|
00001bf0  6e 75 25 2c 30 29 3d 30  20 8c 20 f2 75 62 28 6a  |nu%,0)=0 . .ub(j|
00001c00  61 63 6d 65 6e 75 25 2c  30 29 0d 01 5b 13 e7 20  |acmenu%,0)..[.. |
00001c10  73 75 62 73 65 6c 25 3c  3e 2d 31 20 8c 0d 01 5c  |subsel%<>-1 ...\|
00001c20  1a f2 79 62 28 6a 61 63  6d 65 6e 75 25 2c 6a 61  |..yb(jacmenu%,ja|
00001c30  63 74 79 70 65 25 29 0d  01 5d 14 6a 61 63 74 79  |ctype%)..].jacty|
00001c40  70 65 25 3d 73 75 62 73  65 6c 25 0d 01 5e 1a f2  |pe%=subsel%..^..|
00001c50  75 62 28 6a 61 63 6d 65  6e 75 25 2c 6a 61 63 74  |ub(jacmenu%,jact|
00001c60  79 70 65 25 29 0d 01 5f  05 cd 0d 01 60 1c 24 6f  |ype%).._....`.$o|
00001c70  70 74 69 6f 6e 25 2b 3d  6a 61 63 24 28 6a 61 63  |ption%+=jac$(jac|
00001c80  74 79 70 65 25 29 0d 01  61 14 f2 6d 62 28 6d 61  |type%)..a..mb(ma|
00001c90  69 6e 25 2c 34 2c 30 2c  30 29 0d 01 62 0a f2 70  |in%,4,0,0)..b..p|
00001ca0  62 28 31 29 0d 01 63 05  cb 0d 01 64 05 cb 0d 01  |b(1)..c....d....|
00001cb0  65 24 e7 20 62 75 74 74  6f 6e 25 3d 31 20 8c 20  |e$. button%=1 . |
00001cc0  f2 72 62 28 6d 65 6e 75  6f 70 65 6e 25 2c 30 2c  |.rb(menuopen%,0,|
00001cd0  30 29 0d 01 66 05 e1 0d  01 67 05 3a 0d 01 68 09  |0)..f....g.:..h.|
00001ce0  dd 20 f2 66 62 0d 01 69  32 ea 20 6d 6f 72 65 25  |. .fb..i2. more%|
00001cf0  2c 77 78 25 2c 77 79 25  2c 77 25 2c 68 25 2c 78  |,wx%,wy%,w%,h%,x|
00001d00  78 25 2c 72 6f 77 25 2c  73 74 69 74 63 68 25 2c  |x%,row%,stitch%,|
00001d10  72 68 25 2c 73 77 25 0d  01 6a 49 ea 20 6d 69 6e  |rh%,sw%..jI. min|
00001d20  78 25 2c 6d 69 6e 79 25  2c 6d 61 78 78 25 2c 6d  |x%,miny%,maxx%,m|
00001d30  61 78 79 25 2c 73 6d 69  6e 78 25 2c 73 6d 61 78  |axy%,sminx%,smax|
00001d40  78 25 2c 73 6d 69 6e 79  25 2c 73 6d 61 78 79 25  |x%,sminy%,smaxy%|
00001d50  2c 6d 69 6e 25 2c 6d 61  78 25 2c 78 25 2c 79 25  |,min%,max%,x%,y%|
00001d60  0d 01 6b 28 ea 20 78 63  25 2c 79 63 25 2c 72 25  |..k(. xc%,yc%,r%|
00001d70  2c 67 25 2c 62 25 2c 72  67 62 25 2c 63 6f 6c 25  |,g%,b%,rgb%,col%|
00001d80  2c 63 6f 6c 75 6d 6e 25  0d 01 6c 42 ea 20 6d 69  |,column%..lB. mi|
00001d90  6e 72 6f 77 25 2c 6d 61  78 72 6f 77 25 2c 6d 69  |nrow%,maxrow%,mi|
00001da0  6e 73 71 72 25 2c 6d 61  78 73 71 72 25 2c 6d 69  |nsqr%,maxsqr%,mi|
00001db0  6e 25 2c 6d 61 78 25 2c  69 25 2c 78 6c 25 2c 78  |n%,max%,i%,xl%,x|
00001dc0  68 25 2c 79 6c 25 2c 79  68 25 0d 01 6d 2b ea 20  |h%,yl%,yh%..m+. |
00001dd0  73 63 61 6c 65 78 2c 73  63 61 6c 65 79 2c 73 63  |scalex,scaley,sc|
00001de0  6c 25 2c 6e 75 6d 25 2c  79 6d 6f 76 65 25 2c 78  |l%,num%,ymove%,x|
00001df0  6d 6f 76 65 25 0d 01 6e  20 c8 99 20 26 30 30 30  |move%..n .. &000|
00001e00  34 30 30 43 38 2c 2c 62  6c 6f 63 6b 25 20 b8 20  |400C8,,block% . |
00001e10  6d 6f 72 65 25 0d 01 6f  0c c8 95 20 6d 6f 72 65  |more%..o... more|
00001e20  25 0d 01 70 11 c8 8e 20  62 6c 6f 63 6b 25 21 30  |%..p... block%!0|
00001e30  20 ca 0d 01 71 0e c9 20  63 6f 6c 70 61 6e 65 25  | ...q.. colpane%|
00001e40  0d 01 72 1a 77 78 25 3d  62 6c 6f 63 6b 25 21 34  |..r.wx%=block%!4|
00001e50  2d 62 6c 6f 63 6b 25 21  32 30 0d 01 73 1b 77 79  |-block%!20..s.wy|
00001e60  25 3d 62 6c 6f 63 6b 25  21 31 36 2d 62 6c 6f 63  |%=block%!16-bloc|
00001e70  6b 25 21 32 34 0d 01 74  17 6d 69 6e 78 25 3d 62  |k%!24..t.minx%=b|
00001e80  6c 6f 63 6b 25 21 32 38  2d 77 78 25 0d 01 75 17  |lock%!28-wx%..u.|
00001e90  6d 61 78 78 25 3d 62 6c  6f 63 6b 25 21 33 36 2d  |maxx%=block%!36-|
00001ea0  77 78 25 0d 01 76 1a 6d  69 6e 79 25 3d 62 6c 6f  |wx%..v.miny%=blo|
00001eb0  63 6b 25 21 33 32 2d 77  79 25 2b 32 32 0d 01 77  |ck%!32-wy%+22..w|
00001ec0  1a 6d 61 78 79 25 3d 62  6c 6f 63 6b 25 21 34 30  |.maxy%=block%!40|
00001ed0  2d 77 79 25 2b 32 32 0d  01 78 11 6d 69 6e 25 3d  |-wy%+22..x.min%=|
00001ee0  6d 69 6e 79 25 2f 37 36  0d 01 79 11 6d 61 78 25  |miny%/76..y.max%|
00001ef0  3d 6d 61 78 79 25 2f 37  36 0d 01 7a 0b 6d 61 78  |=maxy%/76..z.max|
00001f00  25 2b 3d 31 0d 01 7b 15  e7 20 6d 61 78 25 3e 30  |%+=1..{.. max%>0|
00001f10  20 8c 20 6d 61 78 25 3d  30 0d 01 7c 27 e7 20 6d  | . max%=0..|'. m|
00001f20  69 6e 25 3c 2d 28 6d 61  78 63 6f 6c 25 29 20 8c  |in%<-(maxcol%) .|
00001f30  20 6d 69 6e 25 3d 2d 28  6d 61 78 63 6f 6c 25 29  | min%=-(maxcol%)|
00001f40  0d 01 7d 10 e7 20 6d 69  6e 78 25 3c 39 30 20 8c  |..}.. minx%<90 .|
00001f50  0d 01 7e 14 e3 20 69 25  3d 6d 69 6e 25 20 b8 20  |..~.. i%=min% . |
00001f60  6d 61 78 25 0d 01 7f 24  c8 99 20 63 74 5f 73 65  |max%...$.. ct_se|
00001f70  74 67 63 6f 6c 25 2c 70  61 6c 74 61 62 6c 65 25  |tgcol%,paltable%|
00001f80  21 28 2d 69 25 2a 34 29  0d 01 80 2a c8 93 20 c8  |!(-i%*4)...*.. .|
00001f90  90 20 32 32 2b 77 78 25  2c 28 69 25 2d 31 29 2a  |. 22+wx%,(i%-1)*|
00001fa0  37 36 2d 32 34 2b 31 30  2b 77 79 25 2c 36 36 2c  |76-24+10+wy%,66,|
00001fb0  36 30 0d 01 81 08 ed 20  69 25 0d 01 82 05 cd 0d  |60..... i%......|
00001fc0  01 83 05 cb 0d 01 84 05  cb 0d 01 85 04 0d 01 86  |................|
00001fd0  20 c8 99 20 26 30 30 30  34 30 30 43 41 2c 2c 62  | .. &000400CA,,b|
00001fe0  6c 6f 63 6b 25 20 b8 20  6d 6f 72 65 25 0d 01 87  |lock% . more%...|
00001ff0  05 ce 0d 01 88 05 e1 0d  01 89 05 3a 0d 01 8a 0f  |...........:....|
00002000  dd 20 f2 74 62 28 76 61  72 25 29 0d 01 8b 0d c8  |. .tb(var%).....|
00002010  8e 20 76 61 72 25 20 ca  0d 01 8c 07 c9 20 30 0d  |. var% ...... 0.|
00002020  01 8d 11 24 64 69 73 70  74 65 78 74 25 3d 22 22  |...$disptext%=""|
00002030  0d 01 8e 07 c9 20 31 0d  01 8f 48 24 64 69 73 70  |..... 1...H$disp|
00002040  74 65 78 74 25 3d 22 50  6c 65 61 73 65 20 63 68  |text%="Please ch|
00002050  6f 6f 73 65 20 61 20 63  6f 6e 76 65 72 73 69 6f  |oose a conversio|
00002060  6e 20 70 72 6f 63 65 73  73 20 66 72 6f 6d 20 74  |n process from t|
00002070  68 65 20 70 6f 70 2d 75  70 20 6d 65 6e 75 22 0d  |he pop-up menu".|
00002080  01 90 07 c9 20 32 0d 01  91 3a 24 64 69 73 70 74  |.... 2...:$dispt|
00002090  65 78 74 25 3d 22 44 72  61 67 20 69 6e 20 74 68  |ext%="Drag in th|
000020a0  65 20 66 69 6c 65 20 79  6f 75 20 77 69 73 68 20  |e file you wish |
000020b0  74 6f 20 63 6f 6e 76 65  72 74 20 2e 2e 2e 2e 22  |to convert ...."|
000020c0  0d 01 92 07 c9 20 33 0d  01 93 50 24 64 69 73 70  |..... 3...P$disp|
000020d0  74 65 78 74 25 3d 22 4e  61 6d 65 20 74 68 65 20  |text%="Name the |
000020e0  6e 65 77 20 66 69 6c 65  20 74 68 65 6e 20 64 72  |new file then dr|
000020f0  61 67 20 69 74 73 20 69  63 6f 6e 20 74 6f 20 61  |ag its icon to a|
00002100  20 64 69 72 65 63 74 6f  72 79 20 77 69 6e 64 6f  | directory windo|
00002110  77 20 2e 2e 2e 2e 22 0d  01 94 07 c9 20 34 0d 01  |w ...."..... 4..|
00002120  95 36 24 64 69 73 70 74  65 78 74 25 3d 22 50 72  |.6$disptext%="Pr|
00002130  6f 63 65 73 73 69 6e 67  20 74 68 65 20 66 69 6c  |ocessing the fil|
00002140  65 20 2e 2e 2e 2e 20 50  6c 65 61 73 65 20 77 61  |e .... Please wa|
00002150  69 74 2e 22 0d 01 96 05  cb 0d 01 97 15 74 65 78  |it.".........tex|
00002160  74 64 69 73 70 76 61 72  25 3d 76 61 72 25 0d 01  |tdispvar%=var%..|
00002170  98 14 f2 6d 62 28 6d 61  69 6e 25 2c 38 2c 30 2c  |...mb(main%,8,0,|
00002180  30 29 0d 01 99 05 e1 0d  01 9a 05 3a 0d 01 9b 08  |0).........:....|
00002190  dd 20 f2 71 0d 01 9c 0b  65 78 69 74 25 3d b9 0d  |. .q....exit%=..|
000021a0  01 9d 05 e1 0d 01 9e 05  3a 0d 01 9f 09 dd 20 f2  |........:..... .|
000021b0  75 61 0d 01 a0 1e ea 20  68 61 6e 25 2c 6c 65 6e  |ua..... han%,len|
000021c0  25 2c 63 6f 75 6e 74 65  72 25 2c 69 63 6f 6e 25  |%,counter%,icon%|
000021d0  0d 01 a1 12 c8 8e 20 62  6c 6f 63 6b 25 21 31 36  |...... block%!16|
000021e0  20 ca 0d 01 a2 0b c9 20  30 3a 20 f2 71 0d 01 a3  | ...... 0: .q...|
000021f0  0b c9 20 32 3a 20 f2 74  0d 01 a4 08 c9 20 33 3a  |.. 2: .t..... 3:|
00002200  0d 01 a5 12 c8 8e 20 62  6c 6f 63 6b 25 21 34 30  |...... block%!40|
00002210  20 ca 0d 01 a6 0a c9 20  26 30 46 30 0d 01 a7 10  | ...... &0F0....|
00002220  e7 20 6f 70 74 25 20 3d  2d 31 20 8c 0d 01 a8 39  |. opt% =-1 ....9|
00002230  f2 67 62 28 22 50 6c 65  61 73 65 20 63 68 6f 6f  |.gb("Please choo|
00002240  73 65 20 61 20 70 72 6f  63 65 73 73 20 62 65 66  |se a process bef|
00002250  6f 72 65 20 6c 6f 61 64  69 6e 67 20 61 20 66 69  |ore loading a fi|
00002260  6c 65 2e 22 29 0d 01 a9  05 cc 0d 01 aa 07 f2 76  |le.")..........v|
00002270  62 0d 01 ab 16 63 6f 75  6e 74 65 72 25 3d 62 6c  |b....counter%=bl|
00002280  6f 63 6b 25 2b 34 34 0d  01 ac 13 c8 95 20 3f 63  |ock%+44...... ?c|
00002290  6f 75 6e 74 65 72 25 3c  3e 30 0d 01 ad 11 63 6f  |ounter%<>0....co|
000022a0  75 6e 74 65 72 25 2b 3d  31 3a ce 0d 01 ae 10 3f  |unter%+=1:.....?|
000022b0  63 6f 75 6e 74 65 72 25  3d 31 33 0d 01 af 15 f2  |counter%=13.....|
000022c0  6e 61 28 24 28 62 6c 6f  63 6b 25 2b 34 34 29 29  |na($(block%+44))|
000022d0  0d 01 b0 18 e7 20 a4 68  28 6a 61 63 6d 65 6e 75  |..... .h(jacmenu|
000022e0  25 2c 32 29 3d b9 20 8c  0d 01 b1 11 e7 20 6d 61  |%,2)=. ...... ma|
000022f0  6e 6e 65 72 25 3d 32 20  8c 0d 01 b2 3b f2 67 62  |nner%=2 ....;.gb|
00002300  28 22 47 72 69 64 20 6f  6e 6c 79 20 6f 72 20 47  |("Grid only or G|
00002310  72 69 64 20 61 6e 64 20  70 69 63 74 75 72 65 20  |rid and picture |
00002320  74 79 70 65 20 66 69 6c  65 20 72 65 71 75 69 72  |type file requir|
00002330  65 64 22 29 0d 01 b3 05  cc 0d 01 b4 0e 79 61 72  |ed").........yar|
00002340  6e 63 6f 6c 25 3d 30 0d  01 b5 0c 66 6f 75 6e 64  |ncol%=0....found|
00002350  25 3d a3 0d 01 b6 05 f5  0d 01 b7 37 e7 20 24 28  |%=.........7. $(|
00002360  6e 61 6d 65 74 61 62 6c  65 25 2b 79 61 72 6e 63  |nametable%+yarnc|
00002370  6f 6c 25 2a 31 33 29 3d  22 42 61 63 6b 67 72 6f  |ol%*13)="Backgro|
00002380  75 6e 64 22 20 8c 20 66  6f 75 6e 64 25 3d b9 0d  |und" . found%=..|
00002390  01 b8 37 e7 20 24 28 6e  61 6d 65 74 61 62 6c 65  |..7. $(nametable|
000023a0  25 2b 79 61 72 6e 63 6f  6c 25 2a 31 33 29 3d 22  |%+yarncol%*13)="|
000023b0  62 61 63 6b 67 72 6f 75  6e 64 22 20 8c 20 66 6f  |background" . fo|
000023c0  75 6e 64 25 3d b9 0d 01  b9 37 e7 20 24 28 6e 61  |und%=....7. $(na|
000023d0  6d 65 74 61 62 6c 65 25  2b 79 61 72 6e 63 6f 6c  |metable%+yarncol|
000023e0  25 2a 31 33 29 3d 22 42  61 63 6b 47 72 6f 75 6e  |%*13)="BackGroun|
000023f0  64 22 20 8c 20 66 6f 75  6e 64 25 3d b9 0d 01 ba  |d" . found%=....|
00002400  32 e7 20 24 28 6e 61 6d  65 74 61 62 6c 65 25 2b  |2. $(nametable%+|
00002410  79 61 72 6e 63 6f 6c 25  2a 31 33 29 3d 22 42 6b  |yarncol%*13)="Bk|
00002420  67 6e 64 22 20 8c 20 66  6f 75 6e 64 25 3d b9 0d  |gnd" . found%=..|
00002430  01 bb 32 e7 20 24 28 6e  61 6d 65 74 61 62 6c 65  |..2. $(nametable|
00002440  25 2b 79 61 72 6e 63 6f  6c 25 2a 31 33 29 3d 22  |%+yarncol%*13)="|
00002450  42 6b 47 6e 64 22 20 8c  20 66 6f 75 6e 64 25 3d  |BkGnd" . found%=|
00002460  b9 0d 01 bc 32 e7 20 24  28 6e 61 6d 65 74 61 62  |....2. $(nametab|
00002470  6c 65 25 2b 79 61 72 6e  63 6f 6c 25 2a 31 33 29  |le%+yarncol%*13)|
00002480  3d 22 62 6b 67 6e 64 22  20 8c 20 66 6f 75 6e 64  |="bkgnd" . found|
00002490  25 3d b9 0d 01 bd 37 e7  20 24 28 6e 61 6d 65 74  |%=....7. $(namet|
000024a0  61 62 6c 65 25 2b 79 61  72 6e 63 6f 6c 25 2a 31  |able%+yarncol%*1|
000024b0  33 29 3d 22 62 61 63 6b  67 72 6f 75 6e 64 22 20  |3)="background" |
000024c0  8c 20 66 6f 75 6e 64 25  3d b9 0d 01 be 37 e7 20  |. found%=....7. |
000024d0  24 28 6e 61 6d 65 74 61  62 6c 65 25 2b 79 61 72  |$(nametable%+yar|
000024e0  6e 63 6f 6c 25 2a 31 33  29 3d 22 42 61 63 6b 47  |ncol%*13)="BackG|
000024f0  72 6f 75 6e 64 22 20 8c  20 66 6f 75 6e 64 25 3d  |round" . found%=|
00002500  b9 0d 01 bf 31 e7 20 24  28 6e 61 6d 65 74 61 62  |....1. $(nametab|
00002510  6c 65 25 2b 79 61 72 6e  63 6f 6c 25 2a 31 33 29  |le%+yarncol%*13)|
00002520  3d 22 4d 61 69 6e 22 20  8c 20 66 6f 75 6e 64 25  |="Main" . found%|
00002530  3d b9 0d 01 c0 31 e7 20  24 28 6e 61 6d 65 74 61  |=....1. $(nameta|
00002540  62 6c 65 25 2b 79 61 72  6e 63 6f 6c 25 2a 31 33  |ble%+yarncol%*13|
00002550  29 3d 22 6d 61 69 6e 22  20 8c 20 66 6f 75 6e 64  |)="main" . found|
00002560  25 3d b9 0d 01 c1 0f 79  61 72 6e 63 6f 6c 25 2b  |%=.....yarncol%+|
00002570  3d 31 0d 01 c2 21 fd 20  79 61 72 6e 63 6f 6c 25  |=1...!. yarncol%|
00002580  3e 6d 61 78 63 6f 6c 25  20 84 20 66 6f 75 6e 64  |>maxcol% . found|
00002590  25 3d b9 0d 01 c3 10 e7  20 66 6f 75 6e 64 25 3d  |%=...... found%=|
000025a0  b9 20 8c 0d 01 c4 0f 79  61 72 6e 63 6f 6c 25 2d  |. .....yarncol%-|
000025b0  3d 31 0d 01 c5 1c f2 6d  62 28 6d 61 69 6e 25 2c  |=1.....mb(main%,|
000025c0  31 2c 30 3c 3c 32 32 2c  31 3c 3c 32 32 29 0d 01  |1,0<<22,1<<22)..|
000025d0  c6 1d f2 6d 62 28 6d 61  69 6e 25 2c 32 2c 37 3c  |...mb(main%,2,7<|
000025e0  3c 32 34 2c 31 35 3c 3c  32 34 29 0d 01 c7 1c f2  |<24,15<<24).....|
000025f0  6d 62 28 6d 61 69 6e 25  2c 33 2c 30 3c 3c 32 32  |mb(main%,3,0<<22|
00002600  2c 31 3c 3c 32 32 29 0d  01 c8 0a f2 74 62 28 33  |,1<<22).....tb(3|
00002610  29 0d 01 c9 2f c8 99 20  26 30 30 30 34 30 30 44  |).../.. &000400D|
00002620  32 2c 6d 61 69 6e 25 2c  31 2c 2d 31 2c 2d 31 2c  |2,main%,1,-1,-1,|
00002630  2d 31 2c a9 24 28 73 61  76 65 70 61 74 68 25 29  |-1,.$(savepath%)|
00002640  0d 01 ca 05 cc 0d 01 cb  1e 79 61 72 6e 63 6f 6c  |.........yarncol|
00002650  25 3d 2d 31 20 3a 20 f2  62 62 28 63 6f 6c 70 69  |%=-1 : .bb(colpi|
00002660  63 25 29 0d 01 cc 05 cd  0d 01 cd 05 cd 0d 01 ce  |c%).............|
00002670  05 cc 0d 01 cf 1c f2 6d  62 28 6d 61 69 6e 25 2c  |.......mb(main%,|
00002680  31 2c 30 3c 3c 32 32 2c  31 3c 3c 32 32 29 0d 01  |1,0<<22,1<<22)..|
00002690  d0 1d f2 6d 62 28 6d 61  69 6e 25 2c 32 2c 37 3c  |...mb(main%,2,7<|
000026a0  3c 32 34 2c 31 35 3c 3c  32 34 29 0d 01 d1 1c f2  |<24,15<<24).....|
000026b0  6d 62 28 6d 61 69 6e 25  2c 33 2c 30 3c 3c 32 32  |mb(main%,3,0<<22|
000026c0  2c 31 3c 3c 32 32 29 0d  01 d2 0a f2 74 62 28 33  |,1<<22).....tb(3|
000026d0  29 0d 01 d3 2f c8 99 20  26 30 30 30 34 30 30 44  |).../.. &000400D|
000026e0  32 2c 6d 61 69 6e 25 2c  31 2c 2d 31 2c 2d 31 2c  |2,main%,1,-1,-1,|
000026f0  2d 31 2c a9 24 28 73 61  76 65 70 61 74 68 25 29  |-1,.$(savepath%)|
00002700  0d 01 d4 05 cd 0d 01 d5  05 cd 0d 01 d6 05 cb 0d  |................|
00002710  01 d7 08 c9 20 31 30 0d  01 d8 04 0d 01 d9 12 68  |.... 10........h|
00002720  61 6e 25 3d 62 6c 6f 63  6b 25 21 32 30 0d 01 da  |an%=block%!20...|
00002730  3b c8 99 20 26 30 30 30  30 30 30 32 33 2c 22 4b  |;.. &00000023,"K|
00002740  6e 69 74 43 6f 6e 76 24  44 69 72 22 2c 62 6c 6f  |nitConv$Dir",blo|
00002750  63 6b 25 2b 35 31 32 2c  32 35 36 2c 30 2c 30 20  |ck%+512,256,0,0 |
00002760  b8 20 2c 2c 6c 65 6e 25  0d 01 db 18 62 6c 6f 63  |. ,,len%....bloc|
00002770  6b 25 3f 28 35 31 32 2b  6c 65 6e 25 29 3d 31 33  |k%?(512+len%)=13|
00002780  0d 01 dc 1f d5 23 68 61  6e 25 2c 22 52 75 6e 20  |.....#han%,"Run |
00002790  22 2b 24 28 62 6c 6f 63  6b 25 2b 35 31 32 29 0d  |"+$(block%+512).|
000027a0  01 dd 0e c9 20 39 2c 26  34 30 30 43 31 0d 01 de  |.... 9,&400C1...|
000027b0  07 f2 76 61 0d 01 df 0a  c9 20 26 35 30 32 0d 01  |..va..... &502..|
000027c0  e0 11 e7 20 68 65 6c 70  6f 6e 25 3d b9 20 8c 0d  |... helpon%=. ..|
000027d0  01 e1 17 62 6c 6f 63 6b  25 21 34 30 3d 62 6c 6f  |...block%!40=blo|
000027e0  63 6b 25 21 33 32 0d 01  e2 12 68 61 6e 25 3d 62  |ck%!32....han%=b|
000027f0  6c 6f 63 6b 25 21 33 32  0d 01 e3 13 69 63 6f 6e  |lock%!32....icon|
00002800  25 3d 62 6c 6f 63 6b 25  21 33 36 0d 01 e4 13 f2  |%=block%!36.....|
00002810  64 61 28 68 61 6e 25 2c  69 63 6f 6e 25 29 0d 01  |da(han%,icon%)..|
00002820  e5 05 cd 0d 01 e6 05 cb  0d 01 e7 05 e1 0d 01 e8  |................|
00002830  05 3a 0d 01 e9 10 dd 20  f2 6e 61 28 66 69 6c 65  |.:..... .na(file|
00002840  24 29 0d 01 ea 09 ea 20  69 6e 25 0d 01 eb 10 c8  |$)..... in%.....|
00002850  99 20 26 30 30 30 34 30  36 43 30 0d 01 ec 10 69  |. &000406C0....i|
00002860  6e 25 3d 8e 28 66 69 6c  65 24 29 0d 01 ed 2e e8  |n%=.(file$).....|
00002870  23 69 6e 25 2c 74 65 6e  73 69 6f 6e 5f 73 71 5f  |#in%,tension_sq_|
00002880  77 69 64 74 68 24 2c 74  65 6e 73 69 6f 6e 5f 73  |width$,tension_s|
00002890  71 5f 68 65 69 67 68 74  24 0d 01 ee 2f e8 23 69  |q_height$.../.#i|
000028a0  6e 25 2c 74 65 6e 73 69  6f 6e 5f 73 71 5f 73 74  |n%,tension_sq_st|
000028b0  69 74 63 68 65 73 24 2c  74 65 6e 73 69 6f 6e 5f  |itches$,tension_|
000028c0  73 71 5f 72 6f 77 73 24  0d 01 ef 10 e8 23 69 6e  |sq_rows$.....#in|
000028d0  25 2c 74 64 73 65 74 24  0d 01 f0 23 e8 23 69 6e  |%,tdset$...#.#in|
000028e0  25 2c 63 6f 6e 76 5f 72  6f 77 73 24 2c 61 6e 73  |%,conv_rows$,ans|
000028f0  5f 63 6f 6e 76 5f 72 6f  77 73 24 0d 01 f1 2b e8  |_conv_rows$...+.|
00002900  23 69 6e 25 2c 63 6f 6e  76 5f 73 74 69 74 63 68  |#in%,conv_stitch|
00002910  65 73 24 2c 61 6e 73 5f  63 6f 6e 76 5f 73 74 69  |es$,ans_conv_sti|
00002920  74 63 68 65 73 24 0d 01  f2 11 e8 23 69 6e 25 2c  |tches$.....#in%,|
00002930  6d 61 6e 6e 65 72 25 0d  01 f3 13 e8 23 69 6e 25  |manner%.....#in%|
00002940  2c 75 6e 69 74 6d 65 6e  75 25 0d 01 f4 1b e8 23  |,unitmenu%.....#|
00002950  69 6e 25 2c 67 72 6f 77  73 24 2c 67 73 74 69 74  |in%,grows$,gstit|
00002960  63 68 65 73 24 0d 01 f5  1a e8 23 69 6e 25 2c 67  |ches$.....#in%,g|
00002970  68 65 69 67 68 74 24 2c  67 77 69 64 74 68 24 0d  |height$,gwidth$.|
00002980  01 f6 16 e8 23 69 6e 25  2c 74 65 78 74 64 69 73  |....#in%,textdis|
00002990  70 76 61 72 25 0d 01 f7  11 e8 23 69 6e 25 2c 6d  |pvar%.....#in%,m|
000029a0  61 69 6e 33 37 25 0d 01  f8 10 e8 23 69 6e 25 2c  |ain37%.....#in%,|
000029b0  6d 61 69 6e 30 25 0d 01  f9 15 e8 23 69 6e 25 2c  |main0%.....#in%,|
000029c0  6d 61 73 74 65 72 67 72  65 79 25 0d 01 fa 1f e8  |mastergrey%.....|
000029d0  23 69 6e 25 2c 70 61 74  73 74 6f 72 65 31 24 2c  |#in%,patstore1$,|
000029e0  70 61 74 73 74 6f 72 65  32 24 0d 01 fb 1f e8 23  |patstore2$.....#|
000029f0  69 6e 25 2c 70 61 74 73  74 6f 72 65 33 24 2c 70  |in%,patstore3$,p|
00002a00  61 74 73 74 6f 72 65 34  24 0d 01 fc 14 e8 23 69  |atstore4$.....#i|
00002a10  6e 25 2c 70 61 74 73 74  6f 72 65 35 25 0d 01 fd  |n%,patstore5%...|
00002a20  19 e8 23 69 6e 25 2c 73  63 6c 6d 75 6c 24 2c 73  |..#in%,sclmul$,s|
00002a30  63 6c 64 69 76 24 0d 01  fe 23 e8 23 69 6e 25 2c  |cldiv$...#.#in%,|
00002a40  63 6f 6c 74 61 62 6c 65  6f 6e 25 2c 63 6f 6c 74  |coltableon%,colt|
00002a50  61 62 6c 65 73 69 7a 65  25 0d 01 ff 15 e7 20 63  |ablesize%..... c|
00002a60  6f 6c 74 61 62 6c 65 6f  6e 25 3d 31 20 8c 0d 02  |oltableon%=1 ...|
00002a70  00 21 63 6f 6c 74 61 62  6c 65 25 3d a4 61 28 63  |.!coltable%=.a(c|
00002a80  6f 6c 74 61 62 6c 65 73  69 7a 65 25 2b 38 29 0d  |oltablesize%+8).|
00002a90  02 01 2e c8 99 20 26 30  30 30 30 30 30 30 43 2c  |..... &0000000C,|
00002aa0  34 2c 69 6e 25 2c 63 6f  6c 74 61 62 6c 65 25 2c  |4,in%,coltable%,|
00002ab0  63 6f 6c 74 61 62 6c 65  73 69 7a 65 25 0d 02 02  |coltablesize%...|
00002ac0  05 cc 0d 02 03 0f 63 6f  6c 74 61 62 6c 65 25 3d  |......coltable%=|
00002ad0  30 0d 02 04 13 63 6f 6c  74 61 62 6c 65 73 69 7a  |0....coltablesiz|
00002ae0  65 25 3d 30 0d 02 05 05  cd 0d 02 06 26 e8 23 69  |e%=0........&.#i|
00002af0  6e 25 2c 6e 61 6d 65 74  61 62 6c 65 6f 6e 25 2c  |n%,nametableon%,|
00002b00  20 6e 61 6d 65 74 61 62  6c 65 73 69 7a 65 25 0d  | nametablesize%.|
00002b10  02 07 16 e7 20 6e 61 6d  65 74 61 62 6c 65 6f 6e  |.... nametableon|
00002b20  25 3d 31 20 8c 0d 02 08  21 6e 61 6d 65 74 61 62  |%=1 ....!nametab|
00002b30  6c 65 25 3d a4 61 28 6e  61 6d 65 74 61 62 6c 65  |le%=.a(nametable|
00002b40  73 69 7a 65 25 29 0d 02  09 30 c8 99 20 26 30 30  |size%)...0.. &00|
00002b50  30 30 30 30 30 43 2c 34  2c 69 6e 25 2c 6e 61 6d  |00000C,4,in%,nam|
00002b60  65 74 61 62 6c 65 25 2c  6e 61 6d 65 74 61 62 6c  |etable%,nametabl|
00002b70  65 73 69 7a 65 25 0d 02  0a 05 cc 0d 02 0b 10 6e  |esize%.........n|
00002b80  61 6d 65 74 61 62 6c 65  25 3d 30 0d 02 0c 14 6e  |ametable%=0....n|
00002b90  61 6d 65 74 61 62 6c 65  73 69 7a 65 25 3d 30 0d  |ametablesize%=0.|
00002ba0  02 0d 05 cd 0d 02 0e 24  e8 23 69 6e 25 2c 70 61  |.......$.#in%,pa|
00002bb0  6c 74 61 62 6c 65 6f 6e  25 2c 20 70 61 6c 74 61  |ltableon%, palta|
00002bc0  62 6c 65 73 69 7a 65 25  0d 02 0f 15 e7 20 70 61  |blesize%..... pa|
00002bd0  6c 74 61 62 6c 65 6f 6e  25 3d 31 20 8c 0d 02 10  |ltableon%=1 ....|
00002be0  1f 70 61 6c 74 61 62 6c  65 25 3d a4 61 28 70 61  |.paltable%=.a(pa|
00002bf0  6c 74 61 62 6c 65 73 69  7a 65 25 29 0d 02 11 2e  |ltablesize%)....|
00002c00  c8 99 20 26 30 30 30 30  30 30 30 43 2c 34 2c 69  |.. &0000000C,4,i|
00002c10  6e 25 2c 70 61 6c 74 61  62 6c 65 25 2c 70 61 6c  |n%,paltable%,pal|
00002c20  74 61 62 6c 65 73 69 7a  65 25 0d 02 12 05 cc 0d  |tablesize%......|
00002c30  02 13 0f 70 61 6c 74 61  62 6c 65 25 3d 30 0d 02  |...paltable%=0..|
00002c40  14 13 70 61 6c 74 61 62  6c 65 73 69 7a 65 25 3d  |..paltablesize%=|
00002c50  30 0d 02 15 05 cd 0d 02  16 12 e8 23 69 6e 25 2c  |0..........#in%,|
00002c60  70 69 63 74 79 70 65 24  0d 02 17 11 c8 8e 20 70  |pictype$...... p|
00002c70  69 63 74 79 70 65 24 20  ca 0d 02 18 0e c9 20 22  |ictype$ ...... "|
00002c80  73 70 72 69 74 65 22 0d  02 19 2a e8 23 69 6e 25  |sprite"...*.#in%|
00002c90  2c 73 70 72 69 74 65 6c  65 6e 25 2c 73 70 72 69  |,spritelen%,spri|
00002ca0  74 65 6e 61 6d 65 24 2c  73 70 72 69 74 65 6f 6e  |tename$,spriteon|
00002cb0  25 0d 02 1a 1d 73 6f 75  72 63 65 73 70 72 25 3d  |%....sourcespr%=|
00002cc0  a4 61 28 73 70 72 69 74  65 6c 65 6e 25 29 0d 02  |.a(spritelen%)..|
00002cd0  1b 2c c8 99 20 26 30 30  30 30 30 30 30 43 2c 34  |.,.. &0000000C,4|
00002ce0  2c 69 6e 25 2c 73 6f 75  72 63 65 73 70 72 25 2c  |,in%,sourcespr%,|
00002cf0  73 70 72 69 74 65 6c 65  6e 25 0d 02 1c 3d c8 99  |spritelen%...=..|
00002d00  20 26 30 30 30 30 30 30  32 45 2c 26 31 30 44 2c  | &0000002E,&10D,|
00002d10  73 6f 75 72 63 65 73 70  72 25 2c 62 6c 6f 63 6b  |sourcespr%,block|
00002d20  25 2c 26 31 30 30 2c 31  20 b8 20 2c 2c 2c 6e 61  |%,&100,1 . ,,,na|
00002d30  6d 65 5f 6c 65 6e 25 0d  02 1d 17 62 6c 6f 63 6b  |me_len%....block|
00002d40  25 3f 6e 61 6d 65 5f 6c  65 6e 25 3d 31 33 0d 02  |%?name_len%=13..|
00002d50  1e 13 73 70 72 69 74 65  24 3d 24 62 6c 6f 63 6b  |..sprite$=$block|
00002d60  25 0d 02 1f 19 73 61 72  65 61 6c 65 6e 25 3d 21  |%....sarealen%=!|
00002d70  73 6f 75 72 63 65 73 70  72 25 0d 02 20 38 c8 99  |sourcespr%.. 8..|
00002d80  20 26 30 30 30 30 30 30  32 45 2c 26 31 31 38 2c  | &0000002E,&118,|
00002d90  73 6f 75 72 63 65 73 70  72 25 2c 73 70 72 69 74  |sourcespr%,sprit|
00002da0  65 24 20 b8 20 2c 2c 73  6f 75 72 63 65 61 64 64  |e$ . ,,sourceadd|
00002db0  72 25 0d 02 21 04 0d 02  22 42 c8 99 20 26 30 30  |r%..!..."B.. &00|
00002dc0  30 30 30 30 32 45 2c 26  32 32 38 2c 73 6f 75 72  |00002E,&228,sour|
00002dd0  63 65 73 70 72 25 2c 73  6f 75 72 63 65 61 64 64  |cespr%,sourceadd|
00002de0  72 25 20 b8 20 2c 2c 2c  73 70 78 25 2c 73 70 79  |r% . ,,,spx%,spy|
00002df0  25 2c 2c 6d 6f 64 65 25  0d 02 23 13 78 65 25 3d  |%,,mode%..#.xe%=|
00002e00  a4 6b 28 6d 6f 64 65 25  2c 34 29 0d 02 24 13 79  |.k(mode%,4)..$.y|
00002e10  65 25 3d a4 6b 28 6d 6f  64 65 25 2c 35 29 0d 02  |e%=.k(mode%,5)..|
00002e20  25 12 73 70 78 25 3d 73  70 78 25 3c 3c 78 65 25  |%.spx%=spx%<<xe%|
00002e30  0d 02 26 12 73 70 79 25  3d 73 70 79 25 3c 3c 79  |..&.spy%=spy%<<y|
00002e40  65 25 0d 02 27 0c c9 20  22 64 72 61 77 22 0d 02  |e%..'.. "draw"..|
00002e50  28 12 e8 23 69 6e 25 2c  64 72 61 77 6c 65 6e 25  |(..#in%,drawlen%|
00002e60  0d 02 29 16 64 72 61 77  25 3d a4 61 28 64 72 61  |..).draw%=.a(dra|
00002e70  77 6c 65 6e 25 29 0d 02  2a 25 c8 99 20 26 30 30  |wlen%)..*%.. &00|
00002e80  30 30 30 30 30 43 2c 34  2c 69 6e 25 2c 64 72 61  |00000C,4,in%,dra|
00002e90  77 25 2c 64 72 61 77 6c  65 6e 25 0d 02 2b 1c 64  |w%,drawlen%..+.d|
00002ea0  72 61 77 78 25 3d 64 72  61 77 25 21 33 32 2d 64  |rawx%=draw%!32-d|
00002eb0  72 61 77 25 21 32 34 0d  02 2c 1c 64 72 61 77 79  |raw%!24..,.drawy|
00002ec0  25 3d 64 72 61 77 25 21  33 36 2d 64 72 61 77 25  |%=draw%!36-draw%|
00002ed0  21 32 38 0d 02 2d 19 64  72 61 77 78 6f 66 66 73  |!28..-.drawxoffs|
00002ee0  65 74 25 3d 64 72 61 77  25 21 32 34 0d 02 2e 19  |et%=draw%!24....|
00002ef0  64 72 61 77 79 6f 66 66  73 65 74 25 3d 64 72 61  |drawyoffset%=dra|
00002f00  77 25 21 32 38 0d 02 2f  12 73 70 78 25 3d 64 72  |w%!28../.spx%=dr|
00002f10  61 77 78 25 3e 3e 38 0d  02 30 12 73 70 79 25 3d  |awx%>>8..0.spy%=|
00002f20  64 72 61 77 79 25 3e 3e  38 0d 02 31 05 cb 0d 02  |drawy%>>8..1....|
00002f30  32 16 e8 23 69 6e 25 2c  67 72 69 64 6c 69 6e 65  |2..#in%,gridline|
00002f40  63 6f 6c 25 0d 02 33 12  e8 23 69 6e 25 2c 67 72  |col%..3..#in%,gr|
00002f50  69 64 63 6f 6c 25 0d 02  34 12 e8 23 69 6e 25 2c  |idcol%..4..#in%,|
00002f60  62 61 63 6b 63 6f 6c 25  0d 02 35 11 e8 23 69 6e  |backcol%..5..#in|
00002f70  25 2c 6d 61 78 63 6f 6c  25 0d 02 36 14 e8 23 69  |%,maxcol%..6..#i|
00002f80  6e 25 2c 72 75 6c 65 72  62 63 6f 6c 25 0d 02 37  |n%,rulerbcol%..7|
00002f90  14 e8 23 69 6e 25 2c 72  75 6c 65 72 66 63 6f 6c  |..#in%,rulerfcol|
00002fa0  25 0d 02 38 15 e8 23 69  6e 25 2c 70 61 67 65 72  |%..8..#in%,pager|
00002fb0  75 6c 65 72 73 25 0d 02  39 11 e8 23 69 6e 25 2c  |ulers%..9..#in%,|
00002fc0  6d 61 6e 6e 65 72 25 0d  02 3a 09 d9 23 69 6e 25  |manner%..:..#in%|
00002fd0  0d 02 3b 10 c8 99 20 26  30 30 30 34 30 36 43 31  |..;... &000406C1|
00002fe0  0d 02 3c 05 e1 0d 02 3d  05 3a 0d 02 3e 10 dd 20  |..<....=.:..>.. |
00002ff0  f2 6a 62 28 66 69 6c 65  24 29 0d 02 3f 0a ea 20  |.jb(file$)..?.. |
00003000  6f 75 74 25 0d 02 40 12  6f 75 74 25 3d ae 20 28  |out%..@.out%=. (|
00003010  66 69 6c 65 24 29 0d 02  41 2f f1 23 6f 75 74 25  |file$)..A/.#out%|
00003020  2c 74 65 6e 73 69 6f 6e  5f 73 71 5f 77 69 64 74  |,tension_sq_widt|
00003030  68 24 2c 74 65 6e 73 69  6f 6e 5f 73 71 5f 68 65  |h$,tension_sq_he|
00003040  69 67 68 74 24 0d 02 42  30 f1 23 6f 75 74 25 2c  |ight$..B0.#out%,|
00003050  74 65 6e 73 69 6f 6e 5f  73 71 5f 73 74 69 74 63  |tension_sq_stitc|
00003060  68 65 73 24 2c 74 65 6e  73 69 6f 6e 5f 73 71 5f  |hes$,tension_sq_|
00003070  72 6f 77 73 24 0d 02 43  11 f1 23 6f 75 74 25 2c  |rows$..C..#out%,|
00003080  74 64 73 65 74 24 0d 02  44 24 f1 23 6f 75 74 25  |tdset$..D$.#out%|
00003090  2c 63 6f 6e 76 5f 72 6f  77 73 24 2c 61 6e 73 5f  |,conv_rows$,ans_|
000030a0  63 6f 6e 76 5f 72 6f 77  73 24 0d 02 45 2c f1 23  |conv_rows$..E,.#|
000030b0  6f 75 74 25 2c 63 6f 6e  76 5f 73 74 69 74 63 68  |out%,conv_stitch|
000030c0  65 73 24 2c 61 6e 73 5f  63 6f 6e 76 5f 73 74 69  |es$,ans_conv_sti|
000030d0  74 63 68 65 73 24 0d 02  46 12 f1 23 6f 75 74 25  |tches$..F..#out%|
000030e0  2c 6d 61 6e 6e 65 72 25  0d 02 47 14 f1 23 6f 75  |,manner%..G..#ou|
000030f0  74 25 2c 75 6e 69 74 6d  65 6e 75 25 0d 02 48 1c  |t%,unitmenu%..H.|
00003100  f1 23 6f 75 74 25 2c 67  72 6f 77 73 24 2c 67 73  |.#out%,grows$,gs|
00003110  74 69 74 63 68 65 73 24  0d 02 49 1b f1 23 6f 75  |titches$..I..#ou|
00003120  74 25 2c 67 68 65 69 67  68 74 24 2c 67 77 69 64  |t%,gheight$,gwid|
00003130  74 68 24 0d 02 4a 17 f1  23 6f 75 74 25 2c 74 65  |th$..J..#out%,te|
00003140  78 74 64 69 73 70 76 61  72 25 0d 02 4b 12 f1 23  |xtdispvar%..K..#|
00003150  6f 75 74 25 2c 6d 61 69  6e 33 37 25 0d 02 4c 11  |out%,main37%..L.|
00003160  f1 23 6f 75 74 25 2c 6d  61 69 6e 30 25 0d 02 4d  |.#out%,main0%..M|
00003170  16 f1 23 6f 75 74 25 2c  6d 61 73 74 65 72 67 72  |..#out%,mastergr|
00003180  65 79 25 0d 02 4e 20 f1  23 6f 75 74 25 2c 70 61  |ey%..N .#out%,pa|
00003190  74 73 74 6f 72 65 31 24  2c 70 61 74 73 74 6f 72  |tstore1$,patstor|
000031a0  65 32 24 0d 02 4f 20 f1  23 6f 75 74 25 2c 70 61  |e2$..O .#out%,pa|
000031b0  74 73 74 6f 72 65 33 24  2c 70 61 74 73 74 6f 72  |tstore3$,patstor|
000031c0  65 34 24 0d 02 50 15 f1  23 6f 75 74 25 2c 70 61  |e4$..P..#out%,pa|
000031d0  74 73 74 6f 72 65 35 25  0d 02 51 1a f1 23 6f 75  |tstore5%..Q..#ou|
000031e0  74 25 2c 73 63 6c 6d 75  6c 24 2c 73 63 6c 64 69  |t%,sclmul$,scldi|
000031f0  76 24 0d 02 52 14 e7 20  63 6f 6c 74 61 62 6c 65  |v$..R.. coltable|
00003200  25 3c 3e 30 20 8c 0d 02  53 1a f1 23 6f 75 74 25  |%<>0 ...S..#out%|
00003210  2c 31 2c 63 6f 6c 74 61  62 6c 65 73 69 7a 65 25  |,1,coltablesize%|
00003220  0d 02 54 2f c8 99 20 26  30 30 30 30 30 30 30 43  |..T/.. &0000000C|
00003230  2c 32 2c 6f 75 74 25 2c  63 6f 6c 74 61 62 6c 65  |,2,out%,coltable|
00003240  25 2c 63 6f 6c 74 61 62  6c 65 73 69 7a 65 25 0d  |%,coltablesize%.|
00003250  02 55 05 cc 0d 02 56 0e  f1 23 6f 75 74 25 2c 30  |.U....V..#out%,0|
00003260  2c 30 0d 02 57 05 cd 0d  02 58 22 e7 20 6e 61 6d  |,0..W....X". nam|
00003270  65 74 61 62 6c 65 25 3c  3e 30 20 80 20 6d 61 6e  |etable%<>0 . man|
00003280  6e 65 72 25 3c 3e 32 20  8c 0d 02 59 1b f1 23 6f  |ner%<>2 ...Y..#o|
00003290  75 74 25 2c 31 2c 6e 61  6d 65 74 61 62 6c 65 73  |ut%,1,nametables|
000032a0  69 7a 65 25 0d 02 5a 31  c8 99 20 26 30 30 30 30  |ize%..Z1.. &0000|
000032b0  30 30 30 43 2c 32 2c 6f  75 74 25 2c 6e 61 6d 65  |000C,2,out%,name|
000032c0  74 61 62 6c 65 25 2c 6e  61 6d 65 74 61 62 6c 65  |table%,nametable|
000032d0  73 69 7a 65 25 0d 02 5b  05 cc 0d 02 5c 0e f1 23  |size%..[....\..#|
000032e0  6f 75 74 25 2c 30 2c 30  0d 02 5d 05 cd 0d 02 5e  |out%,0,0..]....^|
000032f0  14 e7 20 70 61 6c 74 61  62 6c 65 25 3c 3e 30 20  |.. paltable%<>0 |
00003300  8c 0d 02 5f 1a f1 23 6f  75 74 25 2c 31 2c 70 61  |..._..#out%,1,pa|
00003310  6c 74 61 62 6c 65 73 69  7a 65 25 0d 02 60 30 c8  |ltablesize%..`0.|
00003320  99 20 26 30 30 30 30 30  30 30 43 2c 32 2c 6f 75  |. &0000000C,2,ou|
00003330  74 25 2c 70 61 6c 74 61  62 6c 65 25 2c 20 70 61  |t%,paltable%, pa|
00003340  6c 74 61 62 6c 65 73 69  7a 65 25 0d 02 61 05 cc  |ltablesize%..a..|
00003350  0d 02 62 0e f1 23 6f 75  74 25 2c 30 2c 30 0d 02  |..b..#out%,0,0..|
00003360  63 05 cd 0d 02 64 13 f1  23 6f 75 74 25 2c 70 69  |c....d..#out%,pi|
00003370  63 74 79 70 65 24 0d 02  65 11 c8 8e 20 70 69 63  |ctype$..e... pic|
00003380  74 79 70 65 24 20 ca 0d  02 66 0e c9 20 22 73 70  |type$ ...f.. "sp|
00003390  72 69 74 65 22 0d 02 67  2b f1 23 6f 75 74 25 2c  |rite"..g+.#out%,|
000033a0  73 70 72 69 74 65 6c 65  6e 25 2c 73 70 72 69 74  |spritelen%,sprit|
000033b0  65 6e 61 6d 65 24 2c 73  70 72 69 74 65 6f 6e 25  |ename$,spriteon%|
000033c0  0d 02 68 2d c8 99 20 26  30 30 30 30 30 30 30 43  |..h-.. &0000000C|
000033d0  2c 32 2c 6f 75 74 25 2c  73 6f 75 72 63 65 73 70  |,2,out%,sourcesp|
000033e0  72 25 2c 73 70 72 69 74  65 6c 65 6e 25 0d 02 69  |r%,spritelen%..i|
000033f0  0c c9 20 22 64 72 61 77  22 0d 02 6a 13 f1 23 6f  |.. "draw"..j..#o|
00003400  75 74 25 2c 64 72 61 77  6c 65 6e 25 0d 02 6b 26  |ut%,drawlen%..k&|
00003410  c8 99 20 26 30 30 30 30  30 30 30 43 2c 32 2c 6f  |.. &0000000C,2,o|
00003420  75 74 25 2c 64 72 61 77  25 2c 64 72 61 77 6c 65  |ut%,draw%,drawle|
00003430  6e 25 0d 02 6c 05 cb 0d  02 6d 17 f1 23 6f 75 74  |n%..l....m..#out|
00003440  25 2c 67 72 69 64 6c 69  6e 65 63 6f 6c 25 0d 02  |%,gridlinecol%..|
00003450  6e 13 f1 23 6f 75 74 25  2c 67 72 69 64 63 6f 6c  |n..#out%,gridcol|
00003460  25 0d 02 6f 13 f1 23 6f  75 74 25 2c 62 61 63 6b  |%..o..#out%,back|
00003470  63 6f 6c 25 0d 02 70 12  f1 23 6f 75 74 25 2c 6d  |col%..p..#out%,m|
00003480  61 78 63 6f 6c 25 0d 02  71 15 f1 23 6f 75 74 25  |axcol%..q..#out%|
00003490  2c 72 75 6c 65 72 62 63  6f 6c 25 0d 02 72 15 f1  |,rulerbcol%..r..|
000034a0  23 6f 75 74 25 2c 72 75  6c 65 72 66 63 6f 6c 25  |#out%,rulerfcol%|
000034b0  0d 02 73 16 f1 23 6f 75  74 25 2c 70 61 67 65 72  |..s..#out%,pager|
000034c0  75 6c 65 72 73 25 0d 02  74 12 f1 23 6f 75 74 25  |ulers%..t..#out%|
000034d0  2c 6d 61 6e 6e 65 72 25  0d 02 75 0a d9 23 6f 75  |,manner%..u..#ou|
000034e0  74 25 0d 02 76 1e ff 28  22 53 65 74 54 79 70 65  |t%..v..("SetType|
000034f0  20 22 2b 66 69 6c 65 24  2b 22 20 30 46 30 22 29  | "+file$+" 0F0")|
00003500  0d 02 77 10 c8 99 20 26  30 30 30 34 30 36 43 31  |..w... &000406C1|
00003510  0d 02 78 05 e1 0d 02 79  05 3a 0d 02 7a 10 dd 20  |..x....y.:..z.. |
00003520  f2 70 62 28 74 79 70 65  25 29 0d 02 7b 0e c8 8e  |.pb(type%)..{...|
00003530  20 74 79 70 65 25 20 ca  0d 02 7c 07 c9 20 31 0d  | type% ...|.. 1.|
00003540  02 7d 04 0d 02 7e 19 24  73 61 76 65 73 70 72 25  |.}...~.$savespr%|
00003550  3d 22 53 66 69 6c 65 5f  30 46 30 22 0d 02 7f 14  |="Sfile_0F0"....|
00003560  f2 6d 62 28 6d 61 69 6e  25 2c 33 2c 30 2c 30 29  |.mb(main%,3,0,0)|
00003570  0d 02 80 0f 66 74 79 70  65 25 3d 26 30 46 30 0d  |....ftype%=&0F0.|
00003580  02 81 0d 66 73 69 7a 65  25 3d 39 39 0d 02 82 17  |...fsize%=99....|
00003590  24 73 61 76 65 70 61 74  68 25 3d 22 52 65 73 75  |$savepath%="Resu|
000035a0  6c 74 22 0d 02 83 14 f2  6d 62 28 6d 61 69 6e 25  |lt".....mb(main%|
000035b0  2c 31 2c 30 2c 30 29 0d  02 84 07 c9 20 32 0d 02  |,1,0,0)..... 2..|
000035c0  85 04 0d 02 86 19 24 73  61 76 65 73 70 72 25 3d  |......$savespr%=|
000035d0  22 53 66 69 6c 65 5f 46  46 39 22 0d 02 87 14 f2  |"Sfile_FF9".....|
000035e0  6d 62 28 6d 61 69 6e 25  2c 33 2c 30 2c 30 29 0d  |mb(main%,3,0,0).|
000035f0  02 88 0f 66 74 79 70 65  25 3d 26 46 46 39 0d 02  |...ftype%=&FF9..|
00003600  89 0d 66 73 69 7a 65 25  3d 39 39 0d 02 8a 17 24  |..fsize%=99....$|
00003610  73 61 76 65 70 61 74 68  25 3d 22 53 70 72 69 74  |savepath%="Sprit|
00003620  65 22 0d 02 8b 14 f2 6d  62 28 6d 61 69 6e 25 2c  |e".....mb(main%,|
00003630  31 2c 30 2c 30 29 0d 02  8c 05 cb 0d 02 8d 05 e1  |1,0,0)..........|
00003640  0d 02 8e 05 3a 0d 02 8f  09 dd 20 f2 65 62 0d 02  |....:..... .eb..|
00003650  90 18 e7 20 a7 24 73 61  76 65 70 61 74 68 25 2c  |... .$savepath%,|
00003660  22 2e 22 29 20 8c 0d 02  91 13 f2 69 62 28 24 73  |".") ......ib($s|
00003670  61 76 65 70 61 74 68 25  29 0d 02 92 05 cc 0d 02  |avepath%).......|
00003680  93 37 f2 67 62 28 22 54  6f 20 73 61 76 65 2c 20  |.7.gb("To save, |
00003690  64 72 61 67 20 74 68 65  20 69 63 6f 6e 20 74 6f  |drag the icon to|
000036a0  20 61 20 64 69 72 65 63  74 6f 72 79 20 76 69 65  | a directory vie|
000036b0  77 65 72 22 29 0d 02 94  05 cd 0d 02 95 05 e1 0d  |wer")...........|
000036c0  02 96 05 3a 0d 02 97 11  dd 20 f2 69 62 28 66 6e  |...:..... .ib(fn|
000036d0  61 6d 65 24 29 0d 02 98  0b ea 20 69 74 65 6d 25  |ame$)..... item%|
000036e0  0d 02 99 0a f2 74 62 28  34 29 0d 02 9a 12 c8 99  |.....tb(4)......|
000036f0  20 26 30 30 30 34 30 36  43 33 2c 31 0d 02 9b 0d  | &000406C3,1....|
00003700  c8 8e 20 6f 70 74 25 20  ca 0d 02 9c 07 c9 20 30  |.. opt% ...... 0|
00003710  0d 02 9d 0f f2 73 62 28  66 6e 61 6d 65 24 29 0d  |.....sb(fname$).|
00003720  02 9e 07 c9 20 31 0d 02  9f 0f f2 73 61 28 66 6e  |.... 1.....sa(fn|
00003730  61 6d 65 24 29 0d 02 a0  07 c9 20 32 0d 02 a1 0f  |ame$)..... 2....|
00003740  f2 6a 61 28 66 6e 61 6d  65 24 29 0d 02 a2 05 cb  |.ja(fname$).....|
00003750  0d 02 a3 10 c8 99 20 26  30 30 30 34 30 36 43 31  |...... &000406C1|
00003760  0d 02 a4 07 f2 68 62 0d  02 a5 05 e1 0d 02 a6 05  |.....hb.........|
00003770  3a 0d 02 a7 09 dd 20 f2  68 61 0d 02 a8 0f c8 99  |:..... .ha......|
00003780  26 30 30 30 34 32 34 30  31 0d 02 a9 18 c8 99 20  |&00042401...... |
00003790  26 30 30 30 34 30 30 43  46 2c 2c 62 6c 6f 63 6b  |&000400CF,,block|
000037a0  25 0d 02 aa 17 62 6c 6f  63 6b 25 21 32 30 3d 62  |%....block%!20=b|
000037b0  6c 6f 63 6b 25 21 31 32  0d 02 ab 17 62 6c 6f 63  |lock%!12....bloc|
000037c0  6b 25 21 32 34 3d 62 6c  6f 63 6b 25 21 31 36 0d  |k%!24=block%!16.|
000037d0  02 ac 16 62 6c 6f 63 6b  25 21 32 38 3d 62 6c 6f  |...block%!28=blo|
000037e0  63 6b 25 21 30 0d 02 ad  16 62 6c 6f 63 6b 25 21  |ck%!0....block%!|
000037f0  33 32 3d 62 6c 6f 63 6b  25 21 34 0d 02 ae 14 62  |32=block%!4....b|
00003800  6c 6f 63 6b 25 21 33 36  3d 66 73 69 7a 65 25 0d  |lock%!36=fsize%.|
00003810  02 af 1b 62 6c 6f 63 6b  25 21 30 3d 36 34 3a 62  |...block%!0=64:b|
00003820  6c 6f 63 6b 25 21 31 32  3d 30 0d 02 b0 20 62 6c  |lock%!12=0... bl|
00003830  6f 63 6b 25 21 31 36 3d  31 3a 62 6c 6f 63 6b 25  |ock%!16=1:block%|
00003840  21 34 30 3d 66 74 79 70  65 25 0d 02 b1 1f 24 28  |!40=ftype%....$(|
00003850  62 6c 6f 63 6b 25 2b 34  34 29 3d a4 66 28 24 73  |block%+44)=.f($s|
00003860  61 76 65 70 61 74 68 25  29 0d 02 b2 2e c8 99 20  |avepath%)...... |
00003870  26 30 30 30 34 30 30 45  37 2c 31 37 2c 62 6c 6f  |&000400E7,17,blo|
00003880  63 6b 25 2c 62 6c 6f 63  6b 25 21 32 30 2c 62 6c  |ck%,block%!20,bl|
00003890  6f 63 6b 25 21 32 34 0d  02 b3 05 e1 0d 02 b4 05  |ock%!24.........|
000038a0  3a 0d 02 b5 09 dd 20 f2  6d 61 0d 02 b6 16 62 6c  |:..... .ma....bl|
000038b0  6f 63 6b 25 21 31 32 3d  62 6c 6f 63 6b 25 21 38  |ock%!12=block%!8|
000038c0  0d 02 b7 0f 62 6c 6f 63  6b 25 21 31 36 3d 34 0d  |....block%!16=4.|
000038d0  02 b8 23 c8 99 20 26 30  30 30 34 30 30 45 37 2c  |..#.. &000400E7,|
000038e0  31 37 2c 62 6c 6f 63 6b  25 2c 62 6c 6f 63 6b 25  |17,block%,block%|
000038f0  21 34 0d 02 b9 05 e1 0d  02 ba 05 3a 0d 02 bb 0f  |!4.........:....|
00003900  dd 20 a4 67 28 6e 61 6d  65 24 29 0d 02 bc 12 c8  |. .g(name$).....|
00003910  95 20 a7 6e 61 6d 65 24  2c 22 2e 22 29 0d 02 bd  |. .name$,".")...|
00003920  1f 6e 61 6d 65 24 3d c1  6e 61 6d 65 24 2c a7 6e  |.name$=.name$,.n|
00003930  61 6d 65 24 2c 22 2e 22  29 2b 31 29 0d 02 be 05  |ame$,".")+1)....|
00003940  ce 0d 02 bf 0a 3d 6e 61  6d 65 24 0d 02 c0 05 3a  |.....=name$....:|
00003950  0d 02 c1 0f dd 20 a4 66  28 6e 61 6d 65 24 29 0d  |..... .f(name$).|
00003960  02 c2 12 c8 95 20 a7 6e  61 6d 65 24 2c 22 2e 22  |..... .name$,"."|
00003970  29 0d 02 c3 1f 6e 61 6d  65 24 3d c1 6e 61 6d 65  |)....name$=.name|
00003980  24 2c a7 6e 61 6d 65 24  2c 22 2e 22 29 2b 31 29  |$,.name$,".")+1)|
00003990  0d 02 c4 05 ce 0d 02 c5  0f 3d 6e 61 6d 65 24 2b  |.........=name$+|
000039a0  bd 28 30 29 0d 02 c6 05  3a 0d 02 c7 08 dd 20 f2  |.(0)....:..... .|
000039b0  74 0d 02 c8 1b ea 20 62  25 2c 61 25 2c 77 6f 72  |t..... b%,a%,wor|
000039c0  64 25 2c 66 75 6c 6c 6e  61 6d 65 24 0d 02 c9 10  |d%,fullname$....|
000039d0  66 75 6c 6c 6e 61 6d 65  24 3d 22 22 0d 02 ca 3f  |fullname$=""...?|
000039e0  e3 20 77 6f 72 64 25 3d  30 20 b8 20 35 30 38 20  |. word%=0 . 508 |
000039f0  88 20 34 3a 62 6c 6f 63  6b 25 21 28 35 31 32 2b  |. 4:block%!(512+|
00003a00  77 6f 72 64 25 29 3d 62  6c 6f 63 6b 25 21 77 6f  |word%)=block%!wo|
00003a10  72 64 25 3a ed 20 77 6f  72 64 25 0d 02 cb 08 61  |rd%:. word%....a|
00003a20  25 3d 30 0d 02 cc 15 62  25 3d 62 6c 6f 63 6b 25  |%=0....b%=block%|
00003a30  3f 28 34 34 2b 61 25 29  0d 02 cd 0c c8 95 20 62  |?(44+a%)...... b|
00003a40  25 3c 3e 30 0d 02 ce 14  66 75 6c 6c 6e 61 6d 65  |%<>0....fullname|
00003a50  24 2b 3d bd 28 62 25 29  0d 02 cf 09 61 25 2b 3d  |$+=.(b%)....a%+=|
00003a60  31 0d 02 d0 15 62 25 3d  62 6c 6f 63 6b 25 3f 28  |1....b%=block%?(|
00003a70  34 34 2b 61 25 29 0d 02  d1 05 ce 0d 02 d2 12 f2  |44+a%)..........|
00003a80  69 62 28 66 75 6c 6c 6e  61 6d 65 24 29 0d 02 d3  |ib(fullname$)...|
00003a90  3f e3 20 77 6f 72 64 25  3d 30 20 b8 20 35 30 38  |?. word%=0 . 508|
00003aa0  20 88 20 34 3a 62 6c 6f  63 6b 25 21 77 6f 72 64  | . 4:block%!word|
00003ab0  25 3d 62 6c 6f 63 6b 25  21 28 35 31 32 2b 77 6f  |%=block%!(512+wo|
00003ac0  72 64 25 29 3a ed 20 77  6f 72 64 25 0d 02 d4 16  |rd%):. word%....|
00003ad0  62 6c 6f 63 6b 25 21 31  32 3d 62 6c 6f 63 6b 25  |block%!12=block%|
00003ae0  21 38 0d 02 d5 1b 62 6c  6f 63 6b 25 21 31 36 3d  |!8....block%!16=|
00003af0  33 3a 21 62 6c 6f 63 6b  25 3d 32 35 36 0d 02 d6  |3:!block%=256...|
00003b00  2e c8 99 20 26 30 30 30  34 30 30 45 37 2c 31 38  |... &000400E7,18|
00003b10  2c 62 6c 6f 63 6b 25 2c  62 6c 6f 63 6b 25 21 32  |,block%,block%!2|
00003b20  30 2c 62 6c 6f 63 6b 25  21 32 34 0d 02 d7 05 e1  |0,block%!24.....|
00003b30  0d 02 d8 05 3a 0d 02 d9  08 dd 20 f2 79 0d 02 da  |....:..... .y...|
00003b40  46 21 62 6c 6f 63 6b 25  3d 6d 61 69 6e 25 3a 62  |F!block%=main%:b|
00003b50  6c 6f 63 6b 25 21 34 3d  33 3a 20 c8 99 20 26 30  |lock%!4=3: .. &0|
00003b60  30 30 34 30 30 43 45 2c  2c 62 6c 6f 63 6b 25 3a  |00400CE,,block%:|
00003b70  20 73 61 76 65 73 70 72  25 3d 62 6c 6f 63 6b 25  | savespr%=block%|
00003b80  21 33 32 0d 02 db 21 74  69 74 6c 65 76 65 72 73  |!32...!titlevers|
00003b90  69 6f 6e 25 3d a4 65 28  74 69 74 6c 65 77 69 6e  |ion%=.e(titlewin|
00003ba0  25 2c 36 29 0d 02 dc 1c  69 6e 66 6f 76 65 72 73  |%,6)....infovers|
00003bb0  69 6f 6e 25 3d a4 65 28  69 6e 66 6f 25 2c 34 29  |ion%=.e(info%,4)|
00003bc0  0d 02 dd 16 72 65 70 25  3d a4 65 28 72 65 70 6f  |....rep%=.e(repo|
00003bd0  72 74 25 2c 31 29 0d 02  de 19 73 61 76 65 70 61  |rt%,1)....savepa|
00003be0  74 68 25 3d a4 65 28 6d  61 69 6e 25 2c 31 29 0d  |th%=.e(main%,1).|
00003bf0  02 df 17 6f 70 74 69 6f  6e 25 3d a4 65 28 6d 61  |...option%=.e(ma|
00003c00  69 6e 25 2c 34 29 0d 02  e0 1a 64 69 73 70 74 65  |in%,4)....dispte|
00003c10  78 74 25 20 3d a4 65 28  6d 61 69 6e 25 2c 38 29  |xt% =.e(main%,8)|
00003c20  0d 02 e1 18 7a 6f 6f 6d  6d 75 6c 25 3d a4 65 28  |....zoommul%=.e(|
00003c30  7a 6f 6f 6d 25 2c 30 29  0d 02 e2 18 7a 6f 6f 6d  |zoom%,0)....zoom|
00003c40  64 69 76 25 3d a4 65 28  7a 6f 6f 6d 25 2c 31 29  |div%=.e(zoom%,1)|
00003c50  0d 02 e3 3d 21 62 6c 6f  63 6b 25 3d 6d 61 69 6e  |...=!block%=main|
00003c60  25 3a 20 c8 99 20 26 30  30 30 34 30 30 43 43 2c  |%: .. &000400CC,|
00003c70  2c 62 6c 6f 63 6b 25 3a  20 6d 61 69 6e 74 69 74  |,block%: maintit|
00003c80  6c 65 25 3d 62 6c 6f 63  6b 25 21 37 36 0d 02 e4  |le%=block%!76...|
00003c90  05 e1 0d 02 e5 05 3a 0d  02 e6 15 dd 20 a4 65 28  |......:..... .e(|
00003ca0  77 68 61 6e 25 2c 69 63  6f 6e 25 29 0d 02 e7 22  |whan%,icon%)..."|
00003cb0  62 6c 6f 63 6b 25 21 30  3d 77 68 61 6e 25 3a 20  |block%!0=whan%: |
00003cc0  62 6c 6f 63 6b 25 21 34  3d 69 63 6f 6e 25 0d 02  |block%!4=icon%..|
00003cd0  e8 18 c8 99 20 26 30 30  30 34 30 30 43 45 2c 2c  |.... &000400CE,,|
00003ce0  62 6c 6f 63 6b 25 0d 02  e9 0e 3d 62 6c 6f 63 6b  |block%....=block|
00003cf0  25 21 32 38 0d 02 ea 05  3a 0d 02 eb 09 dd 20 f2  |%!28....:..... .|
00003d00  76 61 0d 02 ec 15 ea 20  78 65 66 25 2c 79 65 66  |va..... xef%,yef|
00003d10  25 2c 73 69 7a 65 25 0d  02 ed 11 78 65 66 25 3d  |%,size%....xef%=|
00003d20  a4 6b 28 2d 31 2c 34 29  0d 02 ee 11 79 65 66 25  |.k(-1,4)....yef%|
00003d30  3d a4 6b 28 2d 31 2c 35  29 0d 02 ef 21 78 70 69  |=.k(-1,5)...!xpi|
00003d40  78 25 3d 31 3c 3c 78 65  66 25 3a 20 78 70 69 78  |x%=1<<xef%: xpix|
00003d50  32 25 3d 32 3c 3c 78 65  66 25 0d 02 f0 21 79 70  |2%=2<<xef%...!yp|
00003d60  69 78 25 3d 31 3c 3c 79  65 66 25 3a 20 79 70 69  |ix%=1<<yef%: ypi|
00003d70  78 32 25 3d 32 3c 3c 79  65 66 25 0d 02 f1 05 e1  |x2%=2<<yef%.....|
00003d80  0d 02 f2 05 3a 0d 02 f3  1c dd 20 f2 6d 62 28 77  |....:..... .mb(w|
00003d90  68 61 6e 25 2c 69 63 6f  6e 25 2c 65 25 2c 63 25  |han%,icon%,e%,c%|
00003da0  29 0d 02 f4 25 62 6c 6f  63 6b 25 21 39 30 30 3d  |)...%block%!900=|
00003db0  77 68 61 6e 25 3a 62 6c  6f 63 6b 25 21 39 30 34  |whan%:block%!904|
00003dc0  3d 69 63 6f 6e 25 0d 02  f5 1f 62 6c 6f 63 6b 25  |=icon%....block%|
00003dd0  21 39 30 38 3d 65 25 3a  62 6c 6f 63 6b 25 21 39  |!908=e%:block%!9|
00003de0  31 32 3d 63 25 0d 02 f6  22 c8 99 20 77 69 6d 70  |12=c%...".. wimp|
00003df0  5f 73 65 74 69 73 74 61  74 65 25 2c 2c 62 6c 6f  |_setistate%,,blo|
00003e00  63 6b 25 2b 39 30 30 0d  02 f7 05 e1 0d 02 f8 05  |ck%+900.........|
00003e10  3a 0d 02 f9 14 dd 20 a4  6b 28 6d 6f 64 65 25 2c  |:..... .k(mode%,|
00003e20  76 61 72 25 29 0d 02 fa  0d ea 20 72 65 73 75 6c  |var%)..... resul|
00003e30  74 25 0d 02 fb 27 c8 99  20 26 30 30 30 30 30 30  |t%...'.. &000000|
00003e40  33 35 2c 6d 6f 64 65 25  2c 76 61 72 25 20 b8 20  |35,mode%,var% . |
00003e50  2c 2c 72 65 73 75 6c 74  25 0d 02 fc 0c 3d 72 65  |,,result%....=re|
00003e60  73 75 6c 74 25 0d 02 fd  05 3a 0d 02 fe 1c dd 20  |sult%....:..... |
00003e70  f2 70 28 77 68 61 6e 25  2c 69 63 6f 6e 25 2c 69  |.p(whan%,icon%,i|
00003e80  6e 64 65 78 25 29 0d 02  ff 2c c8 99 20 26 30 30  |ndex%)...,.. &00|
00003e90  30 34 30 30 44 32 2c 77  68 61 6e 25 2c 69 63 6f  |0400D2,whan%,ico|
00003ea0  6e 25 2c 2d 31 2c 2d 31  2c 2d 31 2c 69 6e 64 65  |n%,-1,-1,-1,inde|
00003eb0  78 25 0d 03 00 05 e1 0d  03 01 05 3a 0d 03 02 09  |x%.........:....|
00003ec0  dd 20 f2 62 61 0d 03 03  17 c8 99 20 26 30 30 30  |. .ba...... &000|
00003ed0  34 30 30 44 33 2c 2c 63  61 72 62 25 0d 03 04 05  |400D3,,carb%....|
00003ee0  e1 0d 03 05 05 3a 0d 03  06 08 dd 20 f2 78 0d 03  |.....:..... .x..|
00003ef0  07 0d ea 20 61 6e 73 77  65 72 25 0d 03 08 0d 21  |... answer%....!|
00003f00  62 6c 6f 63 6b 25 3d 9f  0d 03 09 2e 24 28 62 6c  |block%=.....$(bl|
00003f10  6f 63 6b 25 2b 34 29 3d  f6 24 2b 22 20 28 45 72  |ock%+4)=.$+" (Er|
00003f20  72 6f 72 20 63 6f 64 65  20 22 2b c3 28 9e 29 2b  |ror code "+.(.)+|
00003f30  22 29 22 2b bd 30 0d 03  0a 2e c8 99 26 30 30 30  |")"+.0......&000|
00003f40  34 30 30 44 46 2c 62 6c  6f 63 6b 25 2c 33 2c 22  |400DF,block%,3,"|
00003f50  4b 6e 69 74 43 6f 6e 76  22 20 b8 20 2c 61 6e 73  |KnitConv" . ,ans|
00003f60  77 65 72 25 0d 03 0b 21  e7 20 61 6e 73 77 65 72  |wer%...!. answer|
00003f70  25 3d 32 20 8c 20 c8 99  20 26 30 30 30 34 30 30  |%=2 . .. &000400|
00003f80  44 44 3a 20 e0 0d 03 0c  05 e1 0d 03 0d 05 3a 0d  |DD: ..........:.|
00003f90  03 0e 0f dd 20 f2 72 28  77 68 61 6e 25 29 0d 03  |.... .r(whan%)..|
00003fa0  0f 0e c8 8e 20 77 68 61  6e 25 20 ca 0d 03 10 0b  |.... whan% .....|
00003fb0  c9 20 6d 61 69 6e 25 0d  03 11 0f 6d 61 69 6e 6f  |. main%....maino|
00003fc0  70 65 6e 25 3d a3 0d 03  12 0d c9 20 63 6f 6c 70  |pen%=...... colp|
00003fd0  69 63 25 0d 03 13 11 63  6f 6c 70 69 63 6f 70 65  |ic%....colpicope|
00003fe0  6e 25 3d a3 0d 03 14 14  21 62 6c 6f 63 6b 25 3d  |n%=.....!block%=|
00003ff0  63 6f 6c 70 61 6e 65 25  0d 03 15 18 c8 99 20 26  |colpane%...... &|
00004000  30 30 30 34 30 30 43 36  2c 2c 62 6c 6f 63 6b 25  |000400C6,,block%|
00004010  0d 03 16 05 cb 0d 03 17  11 21 62 6c 6f 63 6b 25  |.........!block%|
00004020  3d 77 68 61 6e 25 0d 03  18 18 c8 99 20 26 30 30  |=whan%...... &00|
00004030  30 34 30 30 43 36 2c 2c  62 6c 6f 63 6b 25 0d 03  |0400C6,,block%..|
00004040  19 05 e1 0d 03 1a 05 3a  0d 03 1b 12 dd 20 f2 67  |.......:..... .g|
00004050  62 28 72 65 70 6f 72 74  24 29 0d 03 1c 0b ea 20  |b(report$)..... |
00004060  77 25 2c 68 25 0d 03 1d  07 ef 20 37 0d 03 1e 11  |w%,h%..... 7....|
00004070  24 72 65 70 25 3d 72 65  70 6f 72 74 24 0d 03 1f  |$rep%=report$...|
00004080  17 c8 99 20 26 30 30 30  34 30 30 44 33 2c 2c 63  |... &000400D3,,c|
00004090  61 72 62 25 0d 03 20 10  f2 61 62 28 72 65 70 6f  |arb%.. ..ab(repo|
000040a0  72 74 25 29 0d 03 21 23  c8 99 20 26 30 30 30 34  |rt%)..!#.. &0004|
000040b0  30 30 44 32 2c 72 65 70  6f 72 74 25 2c 2d 31 2c  |00D2,report%,-1,|
000040c0  30 2c 30 2c 30 2c 30 0d  03 22 18 c8 99 20 26 30  |0,0,0,0.."... &0|
000040d0  30 30 34 30 30 45 30 2c  2c 62 6c 6f 63 6b 25 0d  |00400E0,,block%.|
000040e0  03 23 19 77 25 3d 62 6c  6f 63 6b 25 21 31 32 2d  |.#.w%=block%!12-|
000040f0  62 6c 6f 63 6b 25 21 34  0d 03 24 19 68 25 3d 62  |block%!4..$.h%=b|
00004100  6c 6f 63 6b 25 21 31 36  2d 62 6c 6f 63 6b 25 21  |lock%!16-block%!|
00004110  38 0d 03 25 24 c8 97 20  b8 20 62 6c 6f 63 6b 25  |8..%$.. . block%|
00004120  21 34 2b 77 25 2f 32 2c  62 6c 6f 63 6b 25 21 38  |!4+w%/2,block%!8|
00004130  2b 68 25 2f 32 0d 03 26  2d c8 97 20 c8 93 20 62  |+h%/2..&-.. .. b|
00004140  6c 6f 63 6b 25 21 34 2c  62 6c 6f 63 6b 25 21 38  |lock%!4,block%!8|
00004150  2c 77 25 2d 78 70 69 78  25 2c 68 25 2d 79 70 69  |,w%-xpix%,h%-ypi|
00004160  78 25 0d 03 27 05 e1 0d  03 28 05 3a 0d 03 29 13  |x%..'....(.:..).|
00004170  dd 20 f2 6b 62 28 6d 65  73 73 61 67 65 24 29 0d  |. .kb(message$).|
00004180  03 2a 16 62 6c 6f 63 6b  25 21 31 32 3d 62 6c 6f  |.*.block%!12=blo|
00004190  63 6b 25 21 38 0d 03 2b  12 62 6c 6f 63 6b 25 21  |ck%!8..+.block%!|
000041a0  31 36 3d 26 35 30 33 0d  03 2c 19 24 28 62 6c 6f  |16=&503..,.$(blo|
000041b0  63 6b 25 2b 32 30 29 3d  6d 65 73 73 61 67 65 24  |ck%+20)=message$|
000041c0  0d 03 2d 0f 21 62 6c 6f  63 6b 25 3d 32 35 36 0d  |..-.!block%=256.|
000041d0  03 2e 23 c8 99 20 26 30  30 30 34 30 30 45 37 2c  |..#.. &000400E7,|
000041e0  31 37 2c 62 6c 6f 63 6b  25 2c 62 6c 6f 63 6b 25  |17,block%,block%|
000041f0  21 34 0d 03 2f 05 e1 0d  03 30 05 3a 0d 03 31 1d  |!4../....0.:..1.|
00004200  dd 20 f2 77 28 73 70 72  69 74 65 24 2c 69 63 6f  |. .w(sprite$,ico|
00004210  6e 25 2c 77 68 61 6e 25  29 0d 03 32 0d ea 20 6f  |n%,whan%)..2.. o|
00004220  78 25 2c 6f 79 25 0d 03  33 11 21 62 6c 6f 63 6b  |x%,oy%..3.!block|
00004230  25 3d 77 68 61 6e 25 0d  03 34 18 c8 99 20 26 30  |%=whan%..4... &0|
00004240  30 30 34 30 30 43 42 2c  2c 62 6c 6f 63 6b 25 0d  |00400CB,,block%.|
00004250  03 35 1a 6f 78 25 3d 62  6c 6f 63 6b 25 21 34 2d  |.5.ox%=block%!4-|
00004260  62 6c 6f 63 6b 25 21 32  30 0d 03 36 1b 6f 79 25  |block%!20..6.oy%|
00004270  3d 62 6c 6f 63 6b 25 21  31 36 2d 62 6c 6f 63 6b  |=block%!16-block|
00004280  25 21 32 34 0d 03 37 12  62 6c 6f 63 6b 25 21 34  |%!24..7.block%!4|
00004290  3d 69 63 6f 6e 25 0d 03  38 18 c8 99 20 26 30 30  |=icon%..8... &00|
000042a0  30 34 30 30 43 45 2c 2c  62 6c 6f 63 6b 25 0d 03  |0400CE,,block%..|
000042b0  39 19 62 6c 6f 63 6b 25  21 38 3d 6f 78 25 2b 62  |9.block%!8=ox%+b|
000042c0  6c 6f 63 6b 25 21 38 0d  03 3a 1b 62 6c 6f 63 6b  |lock%!8..:.block|
000042d0  25 21 31 32 3d 6f 79 25  2b 62 6c 6f 63 6b 25 21  |%!12=oy%+block%!|
000042e0  31 32 0d 03 3b 1b 62 6c  6f 63 6b 25 21 31 36 3d  |12..;.block%!16=|
000042f0  6f 78 25 2b 62 6c 6f 63  6b 25 21 31 36 0d 03 3c  |ox%+block%!16..<|
00004300  1b 62 6c 6f 63 6b 25 21  32 30 3d 6f 79 25 2b 62  |.block%!20=oy%+b|
00004310  6c 6f 63 6b 25 21 32 30  0d 03 3d 2c c8 99 26 30  |lock%!20..=,..&0|
00004320  30 30 34 32 34 30 30 2c  25 31 31 30 30 30 31 30  |0042400,%1100010|
00004330  31 2c 31 2c 73 70 72 69  74 65 24 2c 62 6c 6f 63  |1,1,sprite$,bloc|
00004340  6b 25 2b 38 0d 03 3e 05  e1 0d 03 3f 05 3a 0d 03  |k%+8..>....?.:..|
00004350  40 05 3a 0d 03 41 09 dd  20 f2 66 61 0d 03 42 08  |@.:..A.. .fa..B.|
00004360  ea 20 66 25 0d 03 43 16  66 6f 6e 74 64 61 74 61  |. f%..C.fontdata|
00004370  25 3d a4 61 28 26 31 30  30 29 0d 03 44 2e e3 20  |%=.a(&100)..D.. |
00004380  66 25 3d 66 6f 6e 74 64  61 74 61 25 20 b8 20 66  |f%=fontdata% . f|
00004390  6f 6e 74 64 61 74 61 25  2b 32 35 32 20 88 20 34  |ontdata%+252 . 4|
000043a0  3a 21 66 25 3d 30 3a ed  0d 03 45 05 e1 0d 03 46  |:!f%=0:...E....F|
000043b0  05 3a 0d 03 47 09 dd 20  f2 70 61 0d 03 48 08 ea  |.:..G.. .pa..H..|
000043c0  20 66 25 0d 03 49 10 e3  20 66 25 3d 30 20 b8 20  | f%..I.. f%=0 . |
000043d0  32 35 35 0d 03 4a 15 c8  95 20 66 6f 6e 74 64 61  |255..J... fontda|
000043e0  74 61 25 3f 66 25 3e 30  0d 03 4b 13 66 6f 6e 74  |ta%?f%>0..K.font|
000043f0  64 61 74 61 25 3f 66 25  2d 3d 31 0d 03 4c 13 c8  |data%?f%-=1..L..|
00004400  99 20 26 30 30 30 34 30  30 38 32 2c 66 25 0d 03  |. &00040082,f%..|
00004410  4d 05 ce 0d 03 4e 05 ed  0d 03 4f 1b 66 6f 6e 74  |M....N....O.font|
00004420  64 61 74 61 25 3d a4 64  28 66 6f 6e 74 64 61 74  |data%=.d(fontdat|
00004430  61 25 29 0d 03 50 05 e1  0d 03 51 05 3a 0d 03 52  |a%)..P....Q.:..R|
00004440  29 dd 20 f2 6c 62 28 62  6c 6f 63 6b 25 2c 6d 69  |). .lb(block%,mi|
00004450  6e 78 25 2c 6d 69 6e 79  25 2c 6d 61 78 78 25 2c  |nx%,miny%,maxx%,|
00004460  6d 61 78 79 25 29 0d 03  53 13 62 6c 6f 63 6b 25  |maxy%)..S.block%|
00004470  21 20 30 3d 6d 69 6e 78  25 0d 03 54 13 62 6c 6f  |! 0=minx%..T.blo|
00004480  63 6b 25 21 20 34 3d 6d  69 6e 79 25 0d 03 55 13  |ck%! 4=miny%..U.|
00004490  62 6c 6f 63 6b 25 21 20  38 3d 6d 61 78 78 25 0d  |block%! 8=maxx%.|
000044a0  03 56 13 62 6c 6f 63 6b  25 21 31 32 3d 6d 61 78  |.V.block%!12=max|
000044b0  79 25 0d 03 57 05 e1 0d  03 58 05 3a 0d 03 59 13  |y%..W....X.:..Y.|
000044c0  dd 20 f2 7a 28 f8 20 78  25 2c f8 20 79 25 29 0d  |. .z(. x%,. y%).|
000044d0  03 5a 0d ea 20 78 70 25  2c 79 70 25 0d 03 5b 1e  |.Z.. xp%,yp%..[.|
000044e0  c8 99 20 26 30 30 30 30  30 30 33 35 2c 2d 31 2c  |.. &00000035,-1,|
000044f0  34 20 20 b8 20 2c 2c 78  70 25 0d 03 5c 1e c8 99  |4  . ,,xp%..\...|
00004500  20 26 30 30 30 30 30 30  33 35 2c 2d 31 2c 35 20  | &00000035,-1,5 |
00004510  20 b8 20 2c 2c 79 70 25  0d 03 5d 1d c8 99 20 26  | . ,,yp%..]... &|
00004520  30 30 30 30 30 30 33 35  2c 2d 31 2c 31 31 20 b8  |00000035,-1,11 .|
00004530  20 2c 2c 78 25 0d 03 5e  1d c8 99 20 26 30 30 30  | ,,x%..^... &000|
00004540  30 30 30 33 35 2c 2d 31  2c 31 32 20 b8 20 2c 2c  |00035,-1,12 . ,,|
00004550  79 25 0d 03 5f 12 78 25  3d 28 78 25 2b 31 29 3c  |y%.._.x%=(x%+1)<|
00004560  3c 78 70 25 0d 03 60 12  79 25 3d 28 79 25 2b 31  |<xp%..`.y%=(y%+1|
00004570  29 3c 3c 79 70 25 0d 03  61 05 e1 0d 03 62 05 3a  |)<<yp%..a....b.:|
00004580  0d 03 63 1b dd 20 f2 61  61 28 62 6c 6f 63 6b 25  |..c.. .aa(block%|
00004590  2c f8 20 78 25 2c f8 20  79 25 29 0d 03 64 18 78  |,. x%,. y%)..d.x|
000045a0  25 3d 62 6c 6f 63 6b 25  21 38 2d 62 6c 6f 63 6b  |%=block%!8-block|
000045b0  25 21 30 0d 03 65 19 79  25 3d 62 6c 6f 63 6b 25  |%!0..e.y%=block%|
000045c0  21 31 32 2d 62 6c 6f 63  6b 25 21 34 0d 03 66 05  |!12-block%!4..f.|
000045d0  e1 0d 03 67 05 3a 0d 03  68 10 dd 20 f2 61 62 28  |...g.:..h.. .ab(|
000045e0  68 61 6e 64 25 29 0d 03  69 13 ea 20 78 25 2c 79  |hand%)..i.. x%,y|
000045f0  25 2c 77 78 25 2c 77 79  25 0d 03 6a 11 21 62 6c  |%,wx%,wy%..j.!bl|
00004600  6f 63 6b 25 3d 68 61 6e  64 25 0d 03 6b 18 c8 99  |ock%=hand%..k...|
00004610  20 26 30 30 30 34 30 30  43 42 2c 2c 62 6c 6f 63  | &000400CB,,bloc|
00004620  6b 25 0d 03 6c 0d f2 7a  28 78 25 2c 79 25 29 0d  |k%..l..z(x%,y%).|
00004630  03 6d 19 f2 61 61 28 62  6c 6f 63 6b 25 2b 34 2c  |.m..aa(block%+4,|
00004640  77 78 25 2c 77 79 25 29  0d 03 6e 0c 78 25 3d 78  |wx%,wy%)..n.x%=x|
00004650  25 3e 3e 31 0d 03 6f 0c  79 25 3d 79 25 3e 3e 31  |%>>1..o.y%=y%>>1|
00004660  0d 03 70 0e 77 78 25 3d  77 78 25 3e 3e 31 0d 03  |..p.wx%=wx%>>1..|
00004670  71 0e 77 79 25 3d 77 79  25 3e 3e 31 0d 03 72 2d  |q.wy%=wy%>>1..r-|
00004680  f2 6c 62 28 62 6c 6f 63  6b 25 2b 34 2c 78 25 2d  |.lb(block%+4,x%-|
00004690  77 78 25 2c 79 25 2d 77  79 25 2c 78 25 2b 77 78  |wx%,y%-wy%,x%+wx|
000046a0  25 2c 79 25 2b 77 79 25  29 0d 03 73 10 62 6c 6f  |%,y%+wy%)..s.blo|
000046b0  63 6b 25 21 32 38 3d 2d  31 0d 03 74 18 c8 99 20  |ck%!28=-1..t... |
000046c0  26 30 30 30 34 30 30 43  35 2c 2c 62 6c 6f 63 6b  |&000400C5,,block|
000046d0  25 0d 03 75 05 e1 0d 03  76 05 3a 0d 03 77 12 dd  |%..u....v.:..w..|
000046e0  20 f2 62 62 28 68 61 6e  64 6c 65 25 29 0d 03 78  | .bb(handle%)..x|
000046f0  14 62 6c 6f 63 6b 25 21  30 3d 68 61 6e 64 6c 65  |.block%!0=handle|
00004700  25 0d 03 79 10 c8 8e 20  68 61 6e 64 6c 65 25 20  |%..y... handle% |
00004710  ca 0d 03 7a 0b c9 20 6d  61 69 6e 25 0d 03 7b 0f  |...z.. main%..{.|
00004720  6d 61 69 6e 6f 70 65 6e  25 3d b9 0d 03 7c 18 c8  |mainopen%=...|..|
00004730  99 20 26 30 30 30 34 30  30 43 42 2c 2c 62 6c 6f  |. &000400CB,,blo|
00004740  63 6b 25 0d 03 7d 10 62  6c 6f 63 6b 25 21 32 38  |ck%..}.block%!28|
00004750  3d 2d 31 0d 03 7e 07 f2  7a 61 0d 03 7f 0d c9 20  |=-1..~..za..... |
00004760  63 6f 6c 70 69 63 25 0d  03 80 11 63 6f 6c 70 69  |colpic%....colpi|
00004770  63 6f 70 65 6e 25 3d b9  0d 03 81 18 c8 99 20 26  |copen%=....... &|
00004780  30 30 30 34 30 30 43 42  2c 2c 62 6c 6f 63 6b 25  |000400CB,,block%|
00004790  0d 03 82 10 62 6c 6f 63  6b 25 21 32 38 3d 2d 31  |....block%!28=-1|
000047a0  0d 03 83 07 f2 7a 61 0d  03 84 05 7f 0d 03 85 18  |.....za.........|
000047b0  c8 99 20 26 30 30 30 34  30 30 43 42 2c 2c 62 6c  |.. &000400CB,,bl|
000047c0  6f 63 6b 25 0d 03 86 18  c8 99 20 26 30 30 30 34  |ock%...... &0004|
000047d0  30 30 43 35 2c 2c 62 6c  6f 63 6b 25 0d 03 87 05  |00C5,,block%....|
000047e0  cb 0d 03 88 05 e1 0d 03  89 05 3a 0d 03 8a 09 dd  |..........:.....|
000047f0  20 f2 7a 61 0d 03 8b 17  e7 20 21 62 6c 6f 63 6b  | .za..... !block|
00004800  25 3d 63 6f 6c 70 69 63  25 20 8c 0d 03 8c 11 63  |%=colpic% .....c|
00004810  6f 6c 70 69 63 6f 70 65  6e 25 3d b9 0d 03 8d 07  |olpicopen%=.....|
00004820  f2 72 61 0d 03 8e 17 62  6c 6f 63 6b 25 21 31 30  |.ra....block%!10|
00004830  30 3d 63 6f 6c 70 61 6e  65 25 0d 03 8f 1c c8 99  |0=colpane%......|
00004840  20 26 30 30 30 34 30 30  43 42 2c 2c 62 6c 6f 63  | &000400CB,,bloc|
00004850  6b 25 2b 31 30 30 0d 03  90 1a 62 6c 6f 63 6b 25  |k%+100....block%|
00004860  21 31 30 34 3d 62 6c 6f  63 6b 25 21 34 2b 34 32  |!104=block%!4+42|
00004870  0d 03 91 1d 62 6c 6f 63  6b 25 21 31 31 32 3d 62  |....block%!112=b|
00004880  6c 6f 63 6b 25 21 31 30  34 2b 33 36 32 0d 03 92  |lock%!104+362...|
00004890  1b 62 6c 6f 63 6b 25 21  31 31 36 3d 62 6c 6f 63  |.block%!116=bloc|
000048a0  6b 25 21 31 36 2d 39 30  0d 03 93 1d 62 6c 6f 63  |k%!16-90....bloc|
000048b0  6b 25 21 31 30 38 3d 62  6c 6f 63 6b 25 21 31 31  |k%!108=block%!11|
000048c0  36 2d 33 36 30 0d 03 94  18 62 6c 6f 63 6b 25 21  |6-360....block%!|
000048d0  31 32 38 3d 62 6c 6f 63  6b 25 21 32 38 0d 03 95  |128=block%!28...|
000048e0  1c c8 99 20 26 30 30 30  34 30 30 43 35 2c 2c 62  |... &000400C5,,b|
000048f0  6c 6f 63 6b 25 2b 31 30  30 0d 03 96 16 62 6c 6f  |lock%+100....blo|
00004900  63 6b 25 21 32 38 3d 63  6f 6c 70 61 6e 65 25 0d  |ck%!28=colpane%.|
00004910  03 97 18 c8 99 20 26 30  30 30 34 30 30 43 35 2c  |..... &000400C5,|
00004920  2c 62 6c 6f 63 6b 25 0d  03 98 05 cc 0d 03 99 18  |,block%.........|
00004930  c8 99 20 26 30 30 30 34  30 30 43 35 2c 2c 62 6c  |.. &000400C5,,bl|
00004940  6f 63 6b 25 0d 03 9a 05  cd 0d 03 9b 05 e1 0d 03  |ock%............|
00004950  9c 05 3a 0d 03 9d 09 dd  20 f2 72 61 0d 03 9e 20  |..:..... .ra... |
00004960  ea 20 69 25 2c 63 6f 6c  6f 75 72 25 2c 6d 61 78  |. i%,colour%,max|
00004970  69 63 6f 6e 25 2c 73 70  61 63 65 25 0d 03 9f 16  |icon%,space%....|
00004980  73 70 61 63 65 25 3d 62  6c 6f 63 6b 25 2b 33 30  |space%=block%+30|
00004990  30 30 0d 03 a0 14 21 73  70 61 63 65 25 3d 63 6f  |00....!space%=co|
000049a0  6c 70 61 6e 65 25 0d 03  a1 18 c8 99 20 26 30 30  |lpane%...... &00|
000049b0  30 34 30 30 43 43 2c 2c  73 70 61 63 65 25 0d 03  |0400CC,,space%..|
000049c0  a2 23 73 70 61 63 65 25  21 28 34 2b 34 34 29 3d  |.#space%!(4+44)=|
000049d0  2d 28 31 32 34 2b 6d 61  78 63 6f 6c 25 2a 37 36  |-(124+maxcol%*76|
000049e0  29 0d 03 a3 2d e7 20 73  70 61 63 65 25 21 28 34  |)...-. space%!(4|
000049f0  2b 34 34 29 3e 2d 33 30  30 20 8c 20 73 70 61 63  |+44)>-300 . spac|
00004a00  65 25 21 28 34 2b 34 34  29 3d 2d 33 30 30 0d 03  |e%!(4+44)=-300..|
00004a10  a4 23 c8 99 20 26 30 30  30 34 30 30 44 37 2c 63  |.#.. &000400D7,c|
00004a20  6f 6c 70 61 6e 65 25 2c  73 70 61 63 65 25 2b 34  |olpane%,space%+4|
00004a30  34 0d 03 a5 13 e3 20 69  25 3d 30 20 b8 20 32 38  |4..... i%=0 . 28|
00004a40  20 88 20 34 0d 03 a6 25  62 6c 6f 63 6b 25 21 28  | . 4...%block%!(|
00004a50  31 30 30 34 2b 69 25 29  3d 73 70 61 63 65 25 21  |1004+i%)=space%!|
00004a60  28 34 2b 38 38 2b 69 25  29 0d 03 a7 08 ed 20 69  |(4+88+i%)..... i|
00004a70  25 0d 03 a8 13 e3 20 69  25 3d 30 20 b8 20 32 38  |%..... i%=0 . 28|
00004a80  20 88 20 34 0d 03 a9 28  62 6c 6f 63 6b 25 21 28  | . 4...(block%!(|
00004a90  31 30 34 34 2b 69 25 29  3d 73 70 61 63 65 25 21  |1044+i%)=space%!|
00004aa0  28 34 2b 38 38 2b 33 32  2b 69 25 29 0d 03 aa 08  |(4+88+32+i%)....|
00004ab0  ed 20 69 25 0d 03 ab 13  e3 20 69 25 3d 30 20 b8  |. i%..... i%=0 .|
00004ac0  20 32 38 20 88 20 34 0d  03 ac 28 62 6c 6f 63 6b  | 28 . 4...(block|
00004ad0  25 21 28 31 30 38 34 2b  69 25 29 3d 73 70 61 63  |%!(1084+i%)=spac|
00004ae0  65 25 21 28 34 2b 38 38  2b 36 34 2b 69 25 29 0d  |e%!(4+88+64+i%).|
00004af0  03 ad 08 ed 20 69 25 0d  03 ae 1c 6d 61 78 69 63  |.... i%....maxic|
00004b00  6f 6e 25 3d 28 73 70 61  63 65 25 21 28 34 2b 38  |on%=(space%!(4+8|
00004b10  34 29 29 0d 03 af 1a 62  6c 6f 63 6b 25 21 28 32  |4))....block%!(2|
00004b20  30 30 30 29 3d 63 6f 6c  70 61 6e 65 25 0d 03 b0  |000)=colpane%...|
00004b30  12 c8 95 20 6d 61 78 69  63 6f 6e 25 3e 2d 31 0d  |... maxicon%>-1.|
00004b40  03 b1 1c 62 6c 6f 63 6b  25 21 28 32 30 30 30 2b  |...block%!(2000+|
00004b50  34 29 3d 6d 61 78 69 63  6f 6e 25 0d 03 b2 1d c8  |4)=maxicon%.....|
00004b60  99 20 26 30 30 30 34 30  30 43 34 2c 2c 62 6c 6f  |. &000400C4,,blo|
00004b70  63 6b 25 2b 32 30 30 30  0d 03 b3 0f 6d 61 78 69  |ck%+2000....maxi|
00004b80  63 6f 6e 25 2d 3d 31 0d  03 b4 05 ce 0d 03 b5 44  |con%-=1........D|
00004b90  62 6c 6f 63 6b 25 21 31  30 30 30 3d 63 6f 6c 70  |block%!1000=colp|
00004ba0  61 6e 65 25 3a 20 62 6c  6f 63 6b 25 21 31 30 34  |ane%: block%!104|
00004bb0  30 3d 63 6f 6c 70 61 6e  65 25 3a 20 62 6c 6f 63  |0=colpane%: bloc|
00004bc0  6b 25 21 31 30 38 30 3d  63 6f 6c 70 61 6e 65 25  |k%!1080=colpane%|
00004bd0  0d 03 b6 0d 63 6f 6c 6f  75 72 25 3d 30 0d 03 b7  |....colour%=0...|
00004be0  17 c8 95 20 63 6f 6c 6f  75 72 25 3c 3d 6d 61 78  |... colour%<=max|
00004bf0  63 6f 6c 25 0d 03 b8 1d  c8 99 20 26 30 30 30 34  |col%...... &0004|
00004c00  30 30 43 32 2c 2c 62 6c  6f 63 6b 25 2b 31 30 30  |00C2,,block%+100|
00004c10  30 0d 03 b9 1d c8 99 20  26 30 30 30 34 30 30 43  |0...... &000400C|
00004c20  32 2c 2c 62 6c 6f 63 6b  25 2b 31 30 34 30 0d 03  |2,,block%+1040..|
00004c30  ba 25 62 6c 6f 63 6b 25  21 31 31 30 34 3d 6e 61  |.%block%!1104=na|
00004c40  6d 65 74 61 62 6c 65 25  2b 63 6f 6c 6f 75 72 25  |metable%+colour%|
00004c50  2a 31 33 0d 03 bb 1d c8  99 20 26 30 30 30 34 30  |*13...... &00040|
00004c60  30 43 32 2c 2c 62 6c 6f  63 6b 25 2b 31 30 38 30  |0C2,,block%+1080|
00004c70  0d 03 bc 24 62 6c 6f 63  6b 25 21 31 30 30 38 2d  |...$block%!1008-|
00004c80  3d 37 36 3a 20 62 6c 6f  63 6b 25 21 31 30 31 36  |=76: block%!1016|
00004c90  2d 3d 37 36 0d 03 bd 24  62 6c 6f 63 6b 25 21 31  |-=76...$block%!1|
00004ca0  30 34 38 2d 3d 37 36 3a  20 62 6c 6f 63 6b 25 21  |048-=76: block%!|
00004cb0  31 30 35 36 2d 3d 37 36  0d 03 be 24 62 6c 6f 63  |1056-=76...$bloc|
00004cc0  6b 25 21 31 30 38 38 2d  3d 37 36 3a 20 62 6c 6f  |k%!1088-=76: blo|
00004cd0  63 6b 25 21 31 30 39 36  2d 3d 37 36 0d 03 bf 0e  |ck%!1096-=76....|
00004ce0  63 6f 6c 6f 75 72 25 2b  3d 31 0d 03 c0 05 ce 0d  |colour%+=1......|
00004cf0  03 c1 14 e3 20 69 25 3d  30 20 b8 20 6d 61 78 63  |.... i%=0 . maxc|
00004d00  6f 6c 25 0d 03 c2 24 f2  6d 62 28 63 6f 6c 70 61  |ol%...$.mb(colpa|
00004d10  6e 65 25 2c 69 25 2a 33  2b 31 2c 30 3c 3c 32 31  |ne%,i%*3+1,0<<21|
00004d20  2c 31 3c 3c 32 31 29 0d  03 c3 08 ed 20 69 25 0d  |,1<<21)..... i%.|
00004d30  03 c4 05 e1 0d 03 c5 05  3a 0d 03 c6 2d dd 20 f2  |........:...-. .|
00004d40  65 61 28 77 68 61 6e 25  2c 69 63 6f 6e 25 2c 6d  |ea(whan%,icon%,m|
00004d50  61 78 25 2c 6d 69 6e 25  2c 62 75 74 74 6f 6e 25  |ax%,min%,button%|
00004d60  2c 69 6e 63 25 29 0d 03  c7 11 ea 20 76 61 72 25  |,inc%)..... var%|
00004d70  2c 69 6e 64 65 78 25 0d  03 c8 22 62 6c 6f 63 6b  |,index%..."block|
00004d80  25 21 30 3d 77 68 61 6e  25 3a 20 62 6c 6f 63 6b  |%!0=whan%: block|
00004d90  25 21 34 3d 69 63 6f 6e  25 0d 03 c9 18 c8 99 20  |%!4=icon%...... |
00004da0  26 30 30 30 34 30 30 43  45 2c 2c 62 6c 6f 63 6b  |&000400CE,,block|
00004db0  25 0d 03 ca 3a 76 61 72  25 3d bb 28 24 28 62 6c  |%...:var%=.($(bl|
00004dc0  6f 63 6b 25 21 32 38 29  29 2d 28 62 75 74 74 6f  |ock%!28))-(butto|
00004dd0  6e 25 3d 34 29 2a 69 6e  63 25 2b 28 62 75 74 74  |n%=4)*inc%+(butt|
00004de0  6f 6e 25 3d 31 29 2a 69  6e 63 25 0d 03 cb 20 e7  |on%=1)*inc%... .|
00004df0  20 76 61 72 25 3e 6d 61  78 25 20 8c 20 76 61 72  | var%>max% . var|
00004e00  25 3d 6d 61 78 25 3a 20  ef 20 37 0d 03 cc 20 e7  |%=max%: . 7... .|
00004e10  20 76 61 72 25 3c 6d 69  6e 25 20 8c 20 76 61 72  | var%<min% . var|
00004e20  25 3d 6d 69 6e 25 3a 20  ef 20 37 0d 03 cd 18 24  |%=min%: . 7....$|
00004e30  28 62 6c 6f 63 6b 25 21  32 38 29 3d c3 28 76 61  |(block%!28)=.(va|
00004e40  72 25 29 0d 03 ce 1b 62  6c 6f 63 6b 25 21 38 3d  |r%)....block%!8=|
00004e50  30 3a 20 62 6c 6f 63 6b  25 21 31 32 3d 30 0d 03  |0: block%!12=0..|
00004e60  cf 18 c8 99 20 26 30 30  30 34 30 30 43 44 2c 2c  |.... &000400CD,,|
00004e70  62 6c 6f 63 6b 25 0d 03  d0 07 f2 62 61 0d 03 d1  |block%.....ba...|
00004e80  25 e7 20 63 61 72 62 25  21 30 3d 77 68 61 6e 25  |%. carb%!0=whan%|
00004e90  20 80 20 63 61 72 62 25  21 34 3d 69 63 6f 6e 25  | . carb%!4=icon%|
00004ea0  20 8c 0d 03 d2 13 69 6e  64 65 78 25 3d 63 61 72  | .....index%=car|
00004eb0  62 25 21 32 30 0d 03 d3  2b e7 20 69 6e 64 65 78  |b%!20...+. index|
00004ec0  25 3e a9 28 c3 28 76 61  72 25 29 29 20 8c 20 69  |%>.(.(var%)) . i|
00004ed0  6e 64 65 78 25 3d a9 28  c3 28 76 61 72 25 29 29  |ndex%=.(.(var%))|
00004ee0  0d 03 d4 1a f2 70 28 77  68 61 6e 25 2c 69 63 6f  |.....p(whan%,ico|
00004ef0  6e 25 2c 69 6e 64 65 78  25 29 0d 03 d5 05 cd 0d  |n%,index%)......|
00004f00  03 d6 05 e1 0d 03 d7 05  3a 0d 03 d8 08 dd 20 f2  |........:..... .|
00004f10  73 0d 03 d9 19 62 6c 6f  63 6b 25 21 31 30 30 30  |s....block%!1000|
00004f20  3d 74 69 74 6c 65 77 69  6e 25 0d 03 da 1d c8 99  |=titlewin%......|
00004f30  20 26 30 30 30 34 30 30  43 33 2c 2c 62 6c 6f 63  | &000400C3,,bloc|
00004f40  6b 25 2b 31 30 30 30 0d  03 db 1f 74 69 74 6c 65  |k%+1000....title|
00004f50  77 69 6e 25 3d 30 3a 6d  61 73 6b 25 3d 6d 61 73  |win%=0:mask%=mas|
00004f60  6b 25 20 82 20 31 0d 03  dc 07 f2 70 61 0d 03 dd  |k% . 1.....pa...|
00004f70  1b 74 69 74 6c 65 73 70  72 25 3d a4 64 28 74 69  |.titlespr%=.d(ti|
00004f80  74 6c 65 73 70 72 25 29  0d 03 de 10 74 69 74 6c  |tlespr%)....titl|
00004f90  65 6f 70 65 6e 25 3d a3  0d 03 df 05 e1 0d 03 e0  |eopen%=.........|
00004fa0  05 3a 0d 03 e1 09 dd 20  f2 79 61 0d 03 e2 18 e7  |.:..... .ya.....|
00004fb0  20 74 69 74 6c 65 6f 70  65 6e 25 3d b9 20 8c 20  | titleopen%=. . |
00004fc0  20 f2 73 0d 03 e3 05 e1  0d 03 e4 05 3a 0d 03 e5  | .s.........:...|
00004fd0  19 dd 20 a4 69 28 69 64  65 6e 74 24 2c 73 70 72  |.. .i(ident$,spr|
00004fe0  69 74 65 73 25 29 0d 03  e6 0b ea 20 77 68 61 6e  |ites%)..... whan|
00004ff0  25 0d 03 e7 11 24 6e 61  6d 65 25 3d 69 64 65 6e  |%....$name%=iden|
00005000  74 24 0d 03 e8 58 c8 99  26 30 30 30 34 30 30 44  |t$...X..&000400D|
00005010  42 2c 2c 62 6c 6f 63 6b  25 2c 77 69 6e 64 6f 77  |B,,block%,window|
00005020  69 6e 64 25 2c 77 69 6e  64 6f 77 69 6e 64 25 2b  |ind%,windowind%+|
00005030  69 6e 64 73 69 7a 65 25  2c 66 6f 6e 74 64 61 74  |indsize%,fontdat|
00005040  61 25 2c 6e 61 6d 65 25  2c 30 20 20 b8 20 2c 2c  |a%,name%,0  . ,,|
00005050  77 69 6e 64 6f 77 69 6e  64 25 0d 03 e9 26 e7 20  |windowind%...&. |
00005060  73 70 72 69 74 65 73 25  3c 3e 30 20 8c 20 62 6c  |sprites%<>0 . bl|
00005070  6f 63 6b 25 21 36 34 3d  73 70 72 69 74 65 73 25  |ock%!64=sprites%|
00005080  0d 03 ea 1f c8 99 26 30  30 30 34 30 30 43 31 2c  |......&000400C1,|
00005090  2c 62 6c 6f 63 6b 25 20  b8 20 77 68 61 6e 25 0d  |,block% . whan%.|
000050a0  03 eb 0a 3d 77 68 61 6e  25 0d 03 ec 05 3a 0d 03  |...=whan%....:..|
000050b0  ed 15 dd 20 f2 64 61 28  68 61 6e 25 2c 69 63 6f  |... .da(han%,ico|
000050c0  6e 25 29 0d 03 ee 23 ea  20 70 74 72 25 2c 6c 65  |n%)...#. ptr%,le|
000050d0  6e 25 2c 74 65 78 74 24  2c 69 25 2c 69 74 65 6d  |n%,text$,i%,item|
000050e0  25 2c 74 6f 6b 24 0d 03  ef 0d c8 8e 20 68 61 6e  |%,tok$...... han|
000050f0  25 20 ca 0d 03 f0 0b c9  20 6d 61 69 6e 25 0d 03  |% ...... main%..|
00005100  f1 0f 74 6f 6b 24 3d 22  6d 61 69 6e 22 0d 03 f2  |..tok$="main"...|
00005110  0e c8 8e 20 69 63 6f 6e  25 20 ca 0d 03 f3 05 cb  |... icon% ......|
00005120  0d 03 f4 26 c9 20 72 65  70 6f 72 74 25 3a 20 74  |...&. report%: t|
00005130  6f 6b 24 3d 22 72 65 70  6f 72 74 22 3a 20 69 63  |ok$="report": ic|
00005140  6f 6e 25 3d 2d 31 0d 03  f5 22 c9 20 69 6e 66 6f  |on%=-1...". info|
00005150  25 3a 20 74 6f 6b 24 3d  22 69 6e 66 6f 22 3a 20  |%: tok$="info": |
00005160  69 63 6f 6e 25 3d 2d 31  0d 03 f6 22 c9 20 7a 6f  |icon%=-1...". zo|
00005170  6f 6d 25 3a 20 74 6f 6b  24 3d 22 7a 6f 6f 6d 22  |om%: tok$="zoom"|
00005180  3a 20 69 63 6f 6e 25 3d  2d 31 0d 03 f7 1f c9 20  |: icon%=-1..... |
00005190  2d 32 3a 20 74 6f 6b 24  3d 22 69 62 61 72 22 3a  |-2: tok$="ibar":|
000051a0  20 69 63 6f 6e 25 3d 2d  31 0d 03 f8 2a c9 20 74  | icon%=-1...*. t|
000051b0  69 74 6c 65 77 69 6e 25  3a 20 74 6f 6b 24 3d 22  |itlewin%: tok$="|
000051c0  74 69 74 6c 65 77 69 6e  22 3a 20 69 63 6f 6e 25  |titlewin": icon%|
000051d0  3d 2d 31 0d 03 f9 16 c9  20 63 6f 6c 70 69 63 25  |=-1..... colpic%|
000051e0  2c 63 6f 6c 70 61 6e 65  25 0d 03 fa 11 74 6f 6b  |,colpane%....tok|
000051f0  24 3d 22 63 6f 6c 70 69  63 22 0d 03 fb 19 e7 20  |$="colpic"..... |
00005200  69 63 6f 6e 25 3c 3e 31  20 8c 20 69 63 6f 6e 25  |icon%<>1 . icon%|
00005210  3d 2d 31 0d 03 fc 05 7f  0d 03 fd 1d c8 99 20 26  |=-1........... &|
00005220  30 30 30 34 30 30 46 34  2c 30 2c 62 6c 6f 63 6b  |000400F4,0,block|
00005230  25 2b 38 30 30 0d 03 fe  27 73 65 6c 25 3d 62 6c  |%+800...'sel%=bl|
00005240  6f 63 6b 25 21 38 30 30  3a 20 73 75 62 73 65 6c  |ock%!800: subsel|
00005250  25 3d 62 6c 6f 63 6b 25  21 38 30 34 0d 03 ff 19  |%=block%!804....|
00005260  73 75 62 73 75 62 73 65  6c 25 3d 62 6c 6f 63 6b  |subsubsel%=block|
00005270  25 21 38 30 38 0d 04 00  0e 69 63 6f 6e 25 3d 73  |%!808....icon%=s|
00005280  65 6c 25 0d 04 01 12 c8  8e 20 6d 65 6e 75 6f 70  |el%...... menuop|
00005290  65 6e 25 20 ca 0d 04 02  0c c9 20 69 6d 65 6e 75  |en% ...... imenu|
000052a0  25 0d 04 03 10 74 6f 6b  24 3d 22 69 6d 65 6e 75  |%....tok$="imenu|
000052b0  22 0d 04 04 12 c9 20 70  72 6f 63 65 73 73 6d 65  |"..... processme|
000052c0  6e 75 25 0d 04 05 16 74  6f 6b 24 3d 22 70 72 6f  |nu%....tok$="pro|
000052d0  63 65 73 73 6d 65 6e 75  22 0d 04 06 0d c8 8e 20  |cessmenu"...... |
000052e0  73 65 6c 25 20 ca 0d 04  07 07 c9 20 31 0d 04 08  |sel% ...... 1...|
000052f0  10 c8 8e 20 73 75 62 73  65 6c 25 20 ca 0d 04 09  |... subsel% ....|
00005300  04 0d 04 0a 34 c9 20 30  2c 31 2c 32 2c 33 2c 34  |....4. 0,1,2,3,4|
00005310  2c 35 20 3a 20 74 6f 6b  24 3d 22 73 70 72 69 74  |,5 : tok$="sprit|
00005320  65 6d 65 6e 75 22 3a 20  69 63 6f 6e 25 3d 73 75  |emenu": icon%=su|
00005330  62 73 65 6c 25 0d 04 0b  05 cb 0d 04 0c 07 c9 20  |bsel%.......... |
00005340  32 0d 04 0d 10 c8 8e 20  73 75 62 73 65 6c 25 20  |2...... subsel% |
00005350  ca 0d 04 0e 04 0d 04 0f  2b c9 20 30 2c 31 2c 32  |........+. 0,1,2|
00005360  20 3a 20 74 6f 6b 24 3d  22 6a 61 63 6d 65 6e 75  | : tok$="jacmenu|
00005370  22 3a 20 69 63 6f 6e 25  3d 73 75 62 73 65 6c 25  |": icon%=subsel%|
00005380  0d 04 10 05 cb 0d 04 11  05 cb 0d 04 12 05 cb 0d  |................|
00005390  04 13 05 cb 0d 04 14 24  e7 20 69 63 6f 6e 25 3c  |.......$. icon%<|
000053a0  3e 2d 31 20 8c 20 74 6f  6b 24 3d 74 6f 6b 24 2b  |>-1 . tok$=tok$+|
000053b0  c3 28 69 63 6f 6e 25 29  0d 04 15 2f c8 99 20 26  |.(icon%).../.. &|
000053c0  30 30 30 34 31 35 30 32  2c 69 6e 66 6f 62 75 66  |00041502,infobuf|
000053d0  66 25 2c 74 6f 6b 24 2c  30 20 b8 20 2c 2c 70 74  |f%,tok$,0 . ,,pt|
000053e0  72 25 2c 6c 65 6e 25 0d  04 16 0c 74 65 78 74 24  |r%,len%....text$|
000053f0  3d 22 22 0d 04 17 13 e3  20 69 25 3d 30 20 b8 20  |=""..... i%=0 . |
00005400  6c 65 6e 25 2d 31 0d 04  18 15 74 65 78 74 24 2b  |len%-1....text$+|
00005410  3d bd 28 70 74 72 25 3f  69 25 29 0d 04 19 08 ed  |=.(ptr%?i%).....|
00005420  20 69 25 0d 04 1a 0e f2  6b 62 28 74 65 78 74 24  | i%.....kb(text$|
00005430  29 0d 04 1b 05 e1 0d 04  1c 05 3a 0d 04 1d 19 dd  |).........:.....|
00005440  20 f2 6f 62 28 6d 65 6e  75 25 2c 6d 65 6e 75 6e  | .ob(menu%,menun|
00005450  75 6d 25 29 0d 04 1e 1f  ea 20 6e 75 6d 25 2c 77  |um%)..... num%,w|
00005460  69 64 74 68 25 2c 70 74  72 25 2c 69 25 2c 69 74  |idth%,ptr%,i%,it|
00005470  65 6d 24 0d 04 1f 07 ea  20 dc 0d 04 20 08 f7 20  |em$..... ... .. |
00005480  2b 31 0d 04 21 0d dc 20  4d 65 6e 75 23 2c 31 0d  |+1..!.. Menu#,1.|
00005490  04 22 0e dc 20 4b 6e 69  74 43 6f 6e 76 0d 04 23  |.".. KnitConv..#|
000054a0  14 dc 20 26 30 30 2c 69  6e 66 6f 25 2c 49 6e 66  |.. &00,info%,Inf|
000054b0  6f 0d 04 24 11 dc 20 26  38 30 2c 2d 31 2c 51 75  |o..$.. &80,-1,Qu|
000054c0  69 74 0d 04 25 0d dc 20  4d 65 6e 75 23 2c 32 0d  |it..%.. Menu#,2.|
000054d0  04 26 0f dc 20 50 72 6f  63 65 73 73 65 73 0d 04  |.&.. Processes..|
000054e0  27 1b dc 20 26 30 30 2c  2d 31 2c 52 65 6d 6f 76  |'.. &00,-1,Remov|
000054f0  65 20 70 69 63 74 75 72  65 0d 04 28 21 dc 20 26  |e picture..(!. &|
00005500  30 30 2c 73 70 72 69 74  65 6d 65 6e 75 25 2c 4d  |00,spritemenu%,M|
00005510  61 6b 65 20 73 70 72 69  74 65 0d 04 29 22 dc 20  |ake sprite..)". |
00005520  26 38 30 2c 6a 61 63 6d  65 6e 75 25 2c 44 6f 75  |&80,jacmenu%,Dou|
00005530  62 6c 65 20 4a 61 63 71  75 61 72 64 0d 04 2a 0d  |ble Jacquard..*.|
00005540  dc 20 4d 65 6e 75 23 2c  33 0d 04 2b 0e dc 20 4a  |. Menu#,3..+.. J|
00005550  61 63 71 75 61 72 64 0d  04 2c 15 dc 20 26 30 30  |acquard..,.. &00|
00005560  2c 2d 31 2c 53 74 61 6e  64 61 72 64 0d 04 2d 16  |,-1,Standard..-.|
00005570  dc 20 26 30 30 2c 2d 31  2c 45 6c 6f 6e 67 61 74  |. &00,-1,Elongat|
00005580  65 64 0d 04 2e 13 dc 20  26 38 30 2c 2d 31 2c 4a  |ed..... &80,-1,J|
00005590  69 67 73 61 77 0d 04 2f  0d dc 20 4d 65 6e 75 23  |igsaw../.. Menu#|
000055a0  2c 34 0d 04 30 0c dc 20  53 70 72 69 74 65 0d 04  |,4..0.. Sprite..|
000055b0  31 14 dc 20 26 30 30 2c  2d 31 2c 4c 6f 77 20 72  |1.. &00,-1,Low r|
000055c0  65 73 0d 04 32 15 dc 20  26 30 30 2c 2d 31 2c 48  |es..2.. &00,-1,H|
000055d0  69 67 68 20 72 65 73 0d  04 33 17 dc 20 26 30 30  |igh res..3.. &00|
000055e0  2c 2d 31 2c 31 36 20 43  6f 6c 6f 75 72 73 0d 04  |,-1,16 Colours..|
000055f0  34 18 dc 20 26 30 32 2c  2d 31 2c 32 35 36 20 43  |4.. &02,-1,256 C|
00005600  6f 6c 6f 75 72 73 0d 04  35 1c dc 20 26 30 30 2c  |olours..5.. &00,|
00005610  2d 31 2c 49 6e 63 6c 75  64 65 20 70 69 63 74 75  |-1,Include pictu|
00005620  72 65 0d 04 36 15 dc 20  26 38 30 2c 7a 6f 6f 6d  |re..6.. &80,zoom|
00005630  25 2c 53 63 61 6c 65 0d  04 37 05 f5 0d 04 38 05  |%,Scale..7....8.|
00005640  f5 0d 04 39 0b f3 20 69  74 65 6d 24 0d 04 3a 13  |...9.. item$..:.|
00005650  fd 20 69 74 65 6d 24 3d  22 4d 65 6e 75 23 22 0d  |. item$="Menu#".|
00005660  04 3b 0a f3 20 6e 75 6d  25 0d 04 3c 13 fd 20 6e  |.;.. num%..<.. n|
00005670  75 6d 25 3d 6d 65 6e 75  6e 75 6d 25 0d 04 3d 0c  |um%=menunum%..=.|
00005680  f3 20 24 6d 65 6e 75 25  0d 04 3e 1b 77 69 64 74  |. $menu%..>.widt|
00005690  68 25 3d 28 a9 28 24 6d  65 6e 75 25 29 2d 32 29  |h%=(.($menu%)-2)|
000056a0  2a 31 36 0d 04 3f 2d 6d  65 6e 75 25 21 31 32 3d  |*16..?-menu%!12=|
000056b0  26 30 30 30 37 30 32 30  37 3a 6d 65 6e 75 25 21  |&00070207:menu%!|
000056c0  32 30 3d 34 34 3a 6d 65  6e 75 25 21 32 34 3d 30  |20=44:menu%!24=0|
000056d0  0d 04 40 11 70 74 72 25  3d 6d 65 6e 75 25 2b 32  |..@.ptr%=menu%+2|
000056e0  38 0d 04 41 05 f5 0d 04  42 14 f3 20 21 70 74 72  |8..A....B.. !ptr|
000056f0  25 3a f3 20 70 74 72 25  21 34 0d 04 43 1b 70 74  |%:. ptr%!4..C.pt|
00005700  72 25 21 38 3d 26 37 30  30 30 30 32 31 3a f3 20  |r%!8=&7000021:. |
00005710  69 74 65 6d 24 0d 04 44  35 e7 20 28 a9 28 69 74  |item$..D5. (.(it|
00005720  65 6d 24 29 2b 31 29 2a  31 36 3e 77 69 64 74 68  |em$)+1)*16>width|
00005730  25 20 8c 20 77 69 64 74  68 25 3d 28 a9 28 69 74  |% . width%=(.(it|
00005740  65 6d 24 29 2b 31 29 2a  31 36 0d 04 45 13 e7 20  |em$)+1)*16..E.. |
00005750  a9 28 69 74 65 6d 24 29  3c 31 32 20 8c 0d 04 46  |.(item$)<12 ...F|
00005760  14 24 28 70 74 72 25 2b  31 32 29 3d 69 74 65 6d  |.$(ptr%+12)=item|
00005770  24 0d 04 47 05 cc 0d 04  48 13 70 74 72 25 21 38  |$..G....H.ptr%!8|
00005780  3d 26 37 30 30 30 31 32  31 0d 04 49 47 70 74 72  |=&7000121..IGptr|
00005790  25 21 31 32 3d 6d 65 6e  75 69 6e 64 66 72 65 65  |%!12=menuindfree|
000057a0  25 3a 20 24 6d 65 6e 75  69 6e 64 66 72 65 65 25  |%: $menuindfree%|
000057b0  3d 69 74 65 6d 24 3a 20  6d 65 6e 75 69 6e 64 66  |=item$: menuindf|
000057c0  72 65 65 25 2b 3d a9 28  69 74 65 6d 24 29 2b 31  |ree%+=.(item$)+1|
000057d0  0d 04 4a 28 70 74 72 25  21 31 36 3d 6d 65 6e 75  |..J(ptr%!16=menu|
000057e0  69 6e 64 25 3a 20 70 74  72 25 21 32 30 3d a9 28  |ind%: ptr%!20=.(|
000057f0  69 74 65 6d 24 29 2b 31  0d 04 4b 54 e7 20 6d 65  |item$)+1..KT. me|
00005800  6e 75 69 6e 64 66 72 65  65 25 3e 6d 65 6e 75 69  |nuindfree%>menui|
00005810  6e 64 25 2b 6d 65 6e 75  69 6e 64 73 69 7a 65 25  |nd%+menuindsize%|
00005820  20 8c 20 85 20 30 2c 22  49 6e 63 72 65 61 73 65  | . . 0,"Increase|
00005830  20 6d 65 6e 75 69 6e 64  73 69 7a 65 25 20 28 69  | menuindsize% (i|
00005840  6e 20 50 52 4f 43 69 6e  69 74 29 22 0d 04 4c 05  |n PROCinit)"..L.|
00005850  cd 0d 04 4d 0c 70 74 72  25 2b 3d 32 34 0d 04 4e  |...M.ptr%+=24..N|
00005860  1b fd 20 28 21 28 70 74  72 25 2d 32 34 29 20 80  |.. (!(ptr%-24) .|
00005870  20 26 38 30 29 3c 3e 30  0d 04 4f 13 6d 65 6e 75  | &80)<>0..O.menu|
00005880  25 21 31 36 3d 77 69 64  74 68 25 0d 04 50 07 f7  |%!16=width%..P..|
00005890  20 dc 0d 04 51 05 e1 0d  04 52 05 3a 0d 04 53 18  | ...Q....R.:..S.|
000058a0  dd 20 f2 72 62 28 6d 65  6e 75 25 2c 6d 78 25 2c  |. .rb(menu%,mx%,|
000058b0  6d 79 25 29 0d 04 54 13  6d 65 6e 75 6f 70 65 6e  |my%)..T.menuopen|
000058c0  25 3d 6d 65 6e 75 25 0d  04 55 12 c8 8e 20 6d 65  |%=menu%..U... me|
000058d0  6e 75 6f 70 65 6e 25 20  ca 0d 04 56 14 c9 20 70  |nuopen% ...V.. p|
000058e0  72 6f 63 65 73 73 6d 65  6e 75 25 20 3a 0d 04 57  |rocessmenu% :..W|
000058f0  10 f2 64 62 28 6d 78 25  2c 6d 79 25 29 0d 04 58  |..db(mx%,my%)..X|
00005900  0a 6d 78 25 2b 3d 32 0d  04 59 0b 6d 79 25 2b 3d  |.mx%+=2..Y.my%+=|
00005910  34 34 0d 04 5a 05 cb 0d  04 5b 1e c8 99 26 30 30  |44..Z....[...&00|
00005920  30 34 30 30 44 34 2c 2c  6d 65 6e 75 25 2c 6d 78  |0400D4,,menu%,mx|
00005930  25 2c 6d 79 25 0d 04 5c  05 e1 0d 04 5d 05 3a 0d  |%,my%..\....].:.|
00005940  04 5e 16 dd 20 f2 78 62  28 6d 65 6e 75 25 2c 69  |.^.. .xb(menu%,i|
00005950  74 65 6d 25 29 0d 04 5f  39 3f 28 6d 65 6e 75 25  |tem%).._9?(menu%|
00005960  2b 32 38 2b 69 74 65 6d  25 2a 32 34 29 3d 28 3f  |+28+item%*24)=(?|
00005970  28 6d 65 6e 75 25 2b 32  38 2b 69 74 65 6d 25 2a  |(menu%+28+item%*|
00005980  32 34 29 20 80 20 ac 20  30 29 20 82 20 31 0d 04  |24) . . 0) . 1..|
00005990  60 05 e1 0d 04 61 05 3a  0d 04 62 16 dd 20 f2 75  |`....a.:..b.. .u|
000059a0  62 28 6d 65 6e 75 25 2c  69 74 65 6d 25 29 0d 04  |b(menu%,item%)..|
000059b0  63 31 3f 28 6d 65 6e 75  25 2b 32 38 2b 69 74 65  |c1?(menu%+28+ite|
000059c0  6d 25 2a 32 34 29 3d 3f  28 6d 65 6e 75 25 2b 32  |m%*24)=?(menu%+2|
000059d0  38 2b 69 74 65 6d 25 2a  32 34 29 20 84 20 31 0d  |8+item%*24) . 1.|
000059e0  04 64 05 e1 0d 04 65 05  3a 0d 04 66 16 dd 20 f2  |.d....e.:..f.. .|
000059f0  79 62 28 6d 65 6e 75 25  2c 69 74 65 6d 25 29 0d  |yb(menu%,item%).|
00005a00  04 67 39 3f 28 6d 65 6e  75 25 2b 32 38 2b 69 74  |.g9?(menu%+28+it|
00005a10  65 6d 25 2a 32 34 29 3d  28 3f 28 6d 65 6e 75 25  |em%*24)=(?(menu%|
00005a20  2b 32 38 2b 69 74 65 6d  25 2a 32 34 29 20 80 20  |+28+item%*24) . |
00005a30  ac 20 31 29 20 82 20 30  0d 04 68 05 e1 0d 04 69  |. 1) . 0..h....i|
00005a40  05 3a 0d 04 6a 12 dd 20  f2 78 61 28 65 78 63 65  |.:..j.. .xa(exce|
00005a50  70 74 25 29 0d 04 6b 0a  ea 20 76 61 72 25 0d 04  |pt%)..k.. var%..|
00005a60  6c 10 c8 8e 20 65 78 63  65 70 74 25 20 ca 0d 04  |l... except% ...|
00005a70  6d 08 c9 20 2d 31 0d 04  6e 15 e3 20 76 61 72 25  |m.. -1..n.. var%|
00005a80  3d 30 20 b8 20 69 6c 69  73 74 25 0d 04 6f 14 f2  |=0 . ilist%..o..|
00005a90  79 62 28 69 6d 65 6e 75  25 2c 76 61 72 25 29 0d  |yb(imenu%,var%).|
00005aa0  04 70 0a ed 20 76 61 72  25 0d 04 71 18 e3 20 76  |.p.. var%..q.. v|
00005ab0  61 72 25 3d 30 20 b8 20  70 72 6f 63 6c 69 73 74  |ar%=0 . proclist|
00005ac0  25 0d 04 72 1a f2 79 62  28 70 72 6f 63 65 73 73  |%..r..yb(process|
00005ad0  6d 65 6e 75 25 2c 76 61  72 25 29 0d 04 73 0a ed  |menu%,var%)..s..|
00005ae0  20 76 61 72 25 0d 04 74  17 e3 20 76 61 72 25 3d  | var%..t.. var%=|
00005af0  30 20 b8 20 6a 61 63 6c  69 73 74 25 0d 04 75 16  |0 . jaclist%..u.|
00005b00  f2 79 62 28 6a 61 63 6d  65 6e 75 25 2c 76 61 72  |.yb(jacmenu%,var|
00005b10  25 29 0d 04 76 0a ed 20  76 61 72 25 0d 04 77 17  |%)..v.. var%..w.|
00005b20  e3 20 76 61 72 25 3d 30  20 b8 20 73 70 72 6c 69  |. var%=0 . sprli|
00005b30  73 74 25 0d 04 78 19 f2  79 62 28 73 70 72 69 74  |st%..x..yb(sprit|
00005b40  65 6d 65 6e 75 25 2c 76  61 72 25 29 0d 04 79 0a  |emenu%,var%)..y.|
00005b50  ed 20 76 61 72 25 0d 04  7a 0c c9 20 69 6d 65 6e  |. var%..z.. imen|
00005b60  75 25 0d 04 7b 18 e3 20  76 61 72 25 3d 30 20 b8  |u%..{.. var%=0 .|
00005b70  20 70 72 6f 63 6c 69 73  74 25 0d 04 7c 1a f2 79  | proclist%..|..y|
00005b80  62 28 70 72 6f 63 65 73  73 6d 65 6e 75 25 2c 76  |b(processmenu%,v|
00005b90  61 72 25 29 0d 04 7d 0a  ed 20 76 61 72 25 0d 04  |ar%)..}.. var%..|
00005ba0  7e 17 e3 20 76 61 72 25  3d 30 20 b8 20 6a 61 63  |~.. var%=0 . jac|
00005bb0  6c 69 73 74 25 0d 04 7f  16 f2 79 62 28 6a 61 63  |list%.....yb(jac|
00005bc0  6d 65 6e 75 25 2c 76 61  72 25 29 0d 04 80 0a ed  |menu%,var%).....|
00005bd0  20 76 61 72 25 0d 04 81  17 e3 20 76 61 72 25 3d  | var%..... var%=|
00005be0  30 20 b8 20 73 70 72 6c  69 73 74 25 0d 04 82 19  |0 . sprlist%....|
00005bf0  f2 79 62 28 73 70 72 69  74 65 6d 65 6e 75 25 2c  |.yb(spritemenu%,|
00005c00  76 61 72 25 29 0d 04 83  0a ed 20 76 61 72 25 0d  |var%)..... var%.|
00005c10  04 84 12 c9 20 70 72 6f  63 65 73 73 6d 65 6e 75  |.... processmenu|
00005c20  25 0d 04 85 15 e3 20 76  61 72 25 3d 30 20 b8 20  |%..... var%=0 . |
00005c30  69 6c 69 73 74 25 0d 04  86 14 f2 79 62 28 69 6d  |ilist%.....yb(im|
00005c40  65 6e 75 25 2c 76 61 72  25 29 0d 04 87 0a ed 20  |enu%,var%)..... |
00005c50  76 61 72 25 0d 04 88 17  e3 20 76 61 72 25 3d 30  |var%..... var%=0|
00005c60  20 b8 20 6a 61 63 6c 69  73 74 25 0d 04 89 16 f2  | . jaclist%.....|
00005c70  79 62 28 6a 61 63 6d 65  6e 75 25 2c 76 61 72 25  |yb(jacmenu%,var%|
00005c80  29 0d 04 8a 0a ed 20 76  61 72 25 0d 04 8b 0e c9  |)..... var%.....|
00005c90  20 6a 61 63 6d 65 6e 75  25 0d 04 8c 15 e3 20 76  | jacmenu%..... v|
00005ca0  61 72 25 3d 30 20 b8 20  69 6c 69 73 74 25 0d 04  |ar%=0 . ilist%..|
00005cb0  8d 14 f2 79 62 28 69 6d  65 6e 75 25 2c 76 61 72  |...yb(imenu%,var|
00005cc0  25 29 0d 04 8e 0a ed 20  76 61 72 25 0d 04 8f 18  |%)..... var%....|
00005cd0  e3 20 76 61 72 25 3d 30  20 b8 20 70 72 6f 63 6c  |. var%=0 . procl|
00005ce0  69 73 74 25 0d 04 90 1a  f2 79 62 28 70 72 6f 63  |ist%.....yb(proc|
00005cf0  65 73 73 6d 65 6e 75 25  2c 76 61 72 25 29 0d 04  |essmenu%,var%)..|
00005d00  91 0a ed 20 76 61 72 25  0d 04 92 17 e3 20 76 61  |... var%..... va|
00005d10  72 25 3d 30 20 b8 20 73  70 72 6c 69 73 74 25 0d  |r%=0 . sprlist%.|
00005d20  04 93 19 f2 79 62 28 73  70 72 69 74 65 6d 65 6e  |....yb(spritemen|
00005d30  75 25 2c 76 61 72 25 29  0d 04 94 0a ed 20 76 61  |u%,var%)..... va|
00005d40  72 25 0d 04 95 11 c9 20  73 70 72 69 74 65 6d 65  |r%..... spriteme|
00005d50  6e 75 25 0d 04 96 15 e3  20 76 61 72 25 3d 30 20  |nu%..... var%=0 |
00005d60  b8 20 69 6c 69 73 74 25  0d 04 97 14 f2 79 62 28  |. ilist%.....yb(|
00005d70  69 6d 65 6e 75 25 2c 76  61 72 25 29 0d 04 98 0a  |imenu%,var%)....|
00005d80  ed 20 76 61 72 25 0d 04  99 18 e3 20 76 61 72 25  |. var%..... var%|
00005d90  3d 30 20 b8 20 70 72 6f  63 6c 69 73 74 25 0d 04  |=0 . proclist%..|
00005da0  9a 1a f2 79 62 28 70 72  6f 63 65 73 73 6d 65 6e  |...yb(processmen|
00005db0  75 25 2c 76 61 72 25 29  0d 04 9b 0a ed 20 76 61  |u%,var%)..... va|
00005dc0  72 25 0d 04 9c 17 e3 20  76 61 72 25 3d 30 20 b8  |r%..... var%=0 .|
00005dd0  20 6a 61 63 6c 69 73 74  25 0d 04 9d 16 f2 79 62  | jaclist%.....yb|
00005de0  28 6a 61 63 6d 65 6e 75  25 2c 76 61 72 25 29 0d  |(jacmenu%,var%).|
00005df0  04 9e 0a ed 20 76 61 72  25 0d 04 9f 05 cb 0d 04  |.... var%.......|
00005e00  a0 05 e1 0d 04 a1 05 3a  0d 04 a2 16 dd 20 f2 77  |.......:..... .w|
00005e10  62 28 6d 65 6e 75 25 2c  69 74 65 6d 25 29 0d 04  |b(menu%,item%)..|
00005e20  a3 3f 3f 28 6d 65 6e 75  25 2b 33 38 2b 69 74 65  |.??(menu%+38+ite|
00005e30  6d 25 2a 32 34 29 3d 28  3f 28 6d 65 6e 75 25 2b  |m%*24)=(?(menu%+|
00005e40  33 38 2b 69 74 65 6d 25  2a 32 34 29 20 80 20 ac  |38+item%*24) . .|
00005e50  20 30 3c 3c 36 29 20 82  20 31 3c 3c 36 0d 04 a4  | 0<<6) . 1<<6...|
00005e60  05 e1 0d 04 a5 05 3a 0d  04 a6 1d dd 20 f2 71 62  |......:..... .qb|
00005e70  28 6d 65 6e 75 25 2c 69  74 65 6d 25 2c 73 68 61  |(menu%,item%,sha|
00005e80  64 65 25 29 0d 04 a7 44  3f 28 6d 65 6e 75 25 2b  |de%)...D?(menu%+|
00005e90  33 38 2b 69 74 65 6d 25  2a 32 34 29 3d 28 3f 28  |38+item%*24)=(?(|
00005ea0  6d 65 6e 75 25 2b 33 38  2b 69 74 65 6d 25 2a 32  |menu%+38+item%*2|
00005eb0  34 29 20 80 20 ac 20 31  3c 3c 36 29 20 82 20 73  |4) . . 1<<6) . s|
00005ec0  68 61 64 65 25 3c 3c 36  0d 04 a8 05 e1 0d 04 a9  |hade%<<6........|
00005ed0  05 3a 0d 04 aa 15 dd 20  a4 68 28 6d 65 6e 75 25  |.:..... .h(menu%|
00005ee0  2c 69 74 65 6d 25 29 0d  04 ab 22 3d 28 3f 28 6d  |,item%)..."=(?(m|
00005ef0  65 6e 75 25 2b 32 38 2b  69 74 65 6d 25 2a 32 34  |enu%+28+item%*24|
00005f00  29 20 80 20 31 29 3c 3e  30 0d 04 ac 05 3a 0d 04  |) . 1)<>0....:..|
00005f10  ad 18 dd 20 f2 64 62 28  20 f8 20 6d 78 25 2c 20  |... .db( . mx%, |
00005f20  f8 20 6d 79 25 29 0d 04  ae 2c ea 20 63 25 2c 6f  |. my%)...,. c%,o|
00005f30  78 25 2c 6f 79 25 2c 76  61 6d 69 6e 78 25 2c 76  |x%,oy%,vaminx%,v|
00005f40  61 6d 61 78 79 25 2c 6d  69 6e 79 25 2c 6d 61 78  |amaxy%,miny%,max|
00005f50  78 25 0d 04 af 23 ea 20  73 63 72 6f 6c 6c 78 6f  |x%...#. scrollxo|
00005f60  66 66 73 65 74 25 2c 73  63 72 6f 6c 6c 79 6f 66  |ffset%,scrollyof|
00005f70  66 73 65 74 25 0d 04 b0  11 63 25 3d 62 6c 6f 63  |fset%....c%=bloc|
00005f80  6b 25 2b 38 30 30 0d 04  b1 0e 63 25 21 30 3d 6d  |k%+800....c%!0=m|
00005f90  61 69 6e 25 0d 04 b2 14  c8 99 20 26 30 30 30 34  |ain%...... &0004|
00005fa0  30 30 43 42 2c 2c 63 25  0d 04 b3 10 76 61 6d 69  |00CB,,c%....vami|
00005fb0  6e 78 25 3d 63 25 21 34  0d 04 b4 11 76 61 6d 61  |nx%=c%!4....vama|
00005fc0  78 79 25 3d 63 25 21 31  36 0d 04 b5 18 73 63 72  |xy%=c%!16....scr|
00005fd0  6f 6c 6c 78 6f 66 66 73  65 74 25 3d 63 25 21 32  |ollxoffset%=c%!2|
00005fe0  30 0d 04 b6 18 73 63 72  6f 6c 6c 79 6f 66 66 73  |0....scrollyoffs|
00005ff0  65 74 25 3d 63 25 21 32  34 0d 04 b7 1e 6f 78 25  |et%=c%!24....ox%|
00006000  3d 76 61 6d 69 6e 78 25  2d 73 63 72 6f 6c 6c 78  |=vaminx%-scrollx|
00006010  6f 66 66 73 65 74 25 0d  04 b8 1e 6f 79 25 3d 76  |offset%....oy%=v|
00006020  61 6d 61 78 79 25 2d 73  63 72 6f 6c 6c 79 6f 66  |amaxy%-scrollyof|
00006030  66 73 65 74 25 0d 04 b9  0e 63 25 21 30 3d 6d 61  |fset%....c%!0=ma|
00006040  69 6e 25 0d 04 ba 0a 63  25 21 34 3d 35 0d 04 bb  |in%....c%!4=5...|
00006050  14 c8 99 20 26 30 30 30  34 30 30 43 45 2c 2c 63  |... &000400CE,,c|
00006060  25 0d 04 bc 0f 6d 69 6e  79 25 3d 63 25 21 31 32  |%....miny%=c%!12|
00006070  0d 04 bd 0f 6d 61 78 78  25 3d 63 25 21 31 36 0d  |....maxx%=c%!16.|
00006080  04 be 11 6d 78 25 3d 6f  78 25 2b 6d 61 78 78 25  |...mx%=ox%+maxx%|
00006090  0d 04 bf 11 6d 79 25 3d  6f 79 25 2b 6d 69 6e 79  |....my%=oy%+miny|
000060a0  25 0d 04 c0 05 e1 0d 04  c1 05 3a 0d 04 c2 0c dd  |%.........:.....|
000060b0  20 a4 6a 28 61 24 29 0d  04 c3 0e ea 20 61 25 2c  | .j(a$)..... a%,|
000060c0  6c 25 2c 73 25 0d 04 c4  0a 61 25 3d 8e 61 24 0d  |l%,s%....a%=.a$.|
000060d0  04 c5 0d 6c 25 3d a2 23  61 25 2b 34 0d 04 c6 09  |...l%=.#a%+4....|
000060e0  d9 20 23 61 25 0d 04 c7  0d 73 25 3d a4 61 28 6c  |. #a%....s%=.a(l|
000060f0  25 29 0d 04 c8 0a 21 73  25 3d 6c 25 0d 04 c9 1b  |%)....!s%=l%....|
00006100  c8 99 20 26 30 30 30 30  30 30 32 45 2c 26 31 30  |.. &0000002E,&10|
00006110  41 2c 73 25 2c 61 24 0d  04 ca 07 3d 73 25 0d 04  |A,s%,a$....=s%..|
00006120  cb 05 3a 0d 04 cc 0f dd  20 a4 61 28 73 69 7a 65  |..:..... .a(size|
00006130  25 29 0d 04 cd 0e 65 72  72 66 6c 61 67 25 3d 30  |%)....errflag%=0|
00006140  0d 04 ce 1b e7 20 68 65  61 70 25 3d 30 20 f2 6e  |..... heap%=0 .n|
00006150  62 28 73 69 7a 65 25 2b  31 36 29 0d 04 cf 12 e7  |b(size%+16).....|
00006160  20 ac 20 65 72 72 66 6c  61 67 25 20 8c 0d 04 d0  | . errflag% ....|
00006170  22 c8 99 20 26 30 30 30  32 30 30 31 44 2c 31 2c  |".. &0002001D,1,|
00006180  68 65 61 70 25 20 b8 20  2c 2c 66 72 65 65 25 0d  |heap% . ,,free%.|
00006190  04 d1 1e e7 20 66 72 65  65 25 3c 73 69 7a 65 25  |.... free%<size%|
000061a0  20 f2 63 61 28 73 69 7a  65 25 2c 31 29 0d 04 d2  | .ca(size%,1)...|
000061b0  12 e7 20 ac 20 65 72 72  66 6c 61 67 25 20 8c 0d  |.. . errflag% ..|
000061c0  04 d3 28 c8 99 20 26 30  30 30 32 30 30 31 44 2c  |..(.. &0002001D,|
000061d0  32 2c 68 65 61 70 25 2c  2c 73 69 7a 65 25 20 b8  |2,heap%,,size% .|
000061e0  20 2c 2c 70 74 72 25 0d  04 d4 05 cd 0d 04 d5 05  | ,,ptr%.........|
000061f0  cd 0d 04 d6 1b e7 20 65  72 72 66 6c 61 67 25 20  |...... errflag% |
00006200  8c 20 3d 30 20 8b 20 3d  70 74 72 25 0d 04 d7 05  |. =0 . =ptr%....|
00006210  3a 0d 04 d8 0e dd 20 a4  64 28 70 74 72 25 29 0d  |:..... .d(ptr%).|
00006220  04 d9 1d c8 99 20 26 30  30 30 32 30 30 31 44 2c  |..... &0002001D,|
00006230  33 2c 68 65 61 70 25 2c  70 74 72 25 0d 04 da 07  |3,heap%,ptr%....|
00006240  f2 71 61 0d 04 db 06 3d  30 0d 04 dc 05 3a 0d 04  |.qa....=0....:..|
00006250  dd 09 dd 20 f2 71 61 0d  04 de 11 ea 20 73 69 7a  |... .qa..... siz|
00006260  65 25 2c 78 25 2c 73 25  0d 04 df 22 c8 99 20 26  |e%,x%,s%...".. &|
00006270  30 30 30 32 30 30 31 44  2c 31 2c 68 65 61 70 25  |0002001D,1,heap%|
00006280  20 b8 20 2c 2c 73 69 7a  65 25 0d 04 e0 1f 73 69  | . ,,size%....si|
00006290  7a 65 25 3d 28 73 69 7a  65 25 20 81 20 70 61 67  |ze%=(size% . pag|
000062a0  65 25 29 2a 70 61 67 65  25 0d 04 e1 0d e7 20 73  |e%)*page%..... s|
000062b0  69 7a 65 25 20 8c 0d 04  e2 2e c8 99 20 26 30 30  |ize% ....... &00|
000062c0  30 32 30 30 31 44 2c 35  2c 68 65 61 70 25 2c 2c  |02001D,5,heap%,,|
000062d0  2d 73 69 7a 65 25 20 b8  20 2c 2c 2c 73 25 3b 66  |-size% . ,,,s%;f|
000062e0  6c 61 67 25 0d 04 e3 11  e7 20 66 6c 61 67 25 20  |lag%..... flag% |
000062f0  80 20 31 20 8c 0d 04 e4  19 78 25 3d 28 73 25 20  |. 1 .....x%=(s% |
00006300  81 20 70 61 67 65 25 29  2a 70 61 67 65 25 0d 04  |. page%)*page%..|
00006310  e5 27 e7 20 73 25 2d 78  25 20 c8 99 20 26 30 30  |.'. s%-x% .. &00|
00006320  30 32 30 30 31 44 2c 35  2c 68 65 61 70 25 2c 2c  |02001D,5,heap%,,|
00006330  73 25 2d 78 25 0d 04 e6  05 cc 0d 04 e7 0c 78 25  |s%-x%.........x%|
00006340  3d 73 69 7a 65 25 0d 04  e8 05 cd 0d 04 e9 1f c8  |=size%..........|
00006350  99 20 26 30 30 30 34 30  30 45 43 2c 61 70 70 73  |. &000400EC,apps|
00006360  69 7a 65 25 2d 78 25 2c  2d 31 0d 04 ea 1e 61 70  |ize%-x%,-1....ap|
00006370  70 73 69 7a 65 25 2d 3d  78 25 3a 68 65 61 70 73  |psize%-=x%:heaps|
00006380  69 7a 65 25 2d 3d 78 25  0d 04 eb 05 cd 0d 04 ec  |ize%-=x%........|
00006390  05 e1 0d 04 ed 05 3a 0d  04 ee 16 dd 20 f2 6d 28  |......:..... .m(|
000063a0  f8 20 70 74 72 25 2c 73  69 7a 65 25 29 0d 04 ef  |. ptr%,size%)...|
000063b0  0b ea 20 66 6c 61 67 25  0d 04 f0 10 65 72 72 66  |.. flag%....errf|
000063c0  6c 61 67 25 3d 30 3a f5  0d 04 f1 32 c8 99 20 26  |lag%=0:....2.. &|
000063d0  30 30 30 32 30 30 31 44  2c 34 2c 68 65 61 70 25  |0002001D,4,heap%|
000063e0  2c 70 74 72 25 2c 73 69  7a 65 25 20 b8 20 2c 2c  |,ptr%,size% . ,,|
000063f0  70 74 72 25 3b 66 6c 61  67 25 0d 04 f2 1c e7 20  |ptr%;flag%..... |
00006400  66 6c 61 67 25 20 80 20  31 20 f2 63 61 28 70 61  |flag% . 1 .ca(pa|
00006410  67 65 25 2c 31 29 0d 04  f3 20 fd 20 28 66 6c 61  |ge%,1)... . (fla|
00006420  67 25 20 80 20 31 29 3d  30 20 84 20 65 72 72 66  |g% . 1)=0 . errf|
00006430  6c 61 67 25 3d b9 0d 04  f4 12 e7 20 ac 20 65 72  |lag%=...... . er|
00006440  72 66 6c 61 67 25 20 8c  0d 04 f5 11 e7 20 73 69  |rflag% ...... si|
00006450  7a 65 25 3c 30 20 f2 71  61 0d 04 f6 05 cd 0d 04  |ze%<0 .qa.......|
00006460  f7 05 e1 0d 04 f8 05 3a  0d 04 f9 12 dd 20 f2 63  |.......:..... .c|
00006470  61 28 6d 65 6d 25 2c 78  25 29 0d 04 fa 0a ea 20  |a(mem%,x%)..... |
00006480  6e 65 77 25 0d 04 fb 28  c8 99 20 26 30 30 30 34  |new%...(.. &0004|
00006490  30 30 45 43 2c 61 70 70  73 69 7a 65 25 2b 6d 65  |00EC,appsize%+me|
000064a0  6d 25 2c 2d 31 20 b8 20  6e 65 77 25 0d 04 fc 1a  |m%,-1 . new%....|
000064b0  e7 20 6e 65 77 25 3c 61  70 70 73 69 7a 65 25 2b  |. new%<appsize%+|
000064c0  6d 65 6d 25 20 8c 0d 04  fd 0e 65 72 72 66 6c 61  |mem% .....errfla|
000064d0  67 25 3d b9 0d 04 fe 1c  c8 99 20 26 30 30 30 34  |g%=....... &0004|
000064e0  30 30 45 43 2c 61 70 70  73 69 7a 65 25 2c 2d 31  |00EC,appsize%,-1|
000064f0  0d 04 ff 1f 85 20 31 3c  3c 33 30 2c 22 4e 6f 74  |..... 1<<30,"Not|
00006500  20 65 6e 6f 75 67 68 20  6d 65 6d 6f 72 79 22 0d  | enough memory".|
00006510  05 00 05 cc 0d 05 01 2c  e7 20 78 25 20 c8 99 20  |.......,. x% .. |
00006520  26 30 30 30 32 30 30 31  44 2c 35 2c 68 65 61 70  |&0002001D,5,heap|
00006530  25 2c 2c 6e 65 77 25 2d  61 70 70 73 69 7a 65 25  |%,,new%-appsize%|
00006540  0d 05 02 1a 68 65 61 70  73 69 7a 65 25 3d 6e 65  |....heapsize%=ne|
00006550  77 25 2b 26 38 30 30 30  2d 93 0d 05 03 11 61 70  |w%+&8000-.....ap|
00006560  70 73 69 7a 65 25 3d 6e  65 77 25 0d 05 04 05 cd  |psize%=new%.....|
00006570  0d 05 05 05 e1 0d 05 06  05 3a 0d 05 07 14 dd 20  |.........:..... |
00006580  f2 6e 62 28 69 6e 69 74  73 69 7a 65 25 29 0d 05  |.nb(initsize%)..|
00006590  08 14 f2 63 61 28 69 6e  69 74 73 69 7a 65 25 2c  |...ca(initsize%,|
000065a0  30 29 0d 05 09 12 e7 20  ac 20 65 72 72 66 6c 61  |0)..... . errfla|
000065b0  67 25 20 8c 0d 05 0a 0b  68 65 61 70 25 3d 93 0d  |g% .....heap%=..|
000065c0  05 0b 23 c8 99 20 26 30  30 30 32 30 30 31 44 2c  |..#.. &0002001D,|
000065d0  30 2c 68 65 61 70 25 2c  2c 68 65 61 70 73 69 7a  |0,heap%,,heapsiz|
000065e0  65 25 0d 05 0c 05 cd 0d  05 0d 05 e1 0d 05 0e 05  |e%..............|
000065f0  3a 0d 05 0f 18 dd f2 76  28 6c 69 6e 65 25 2c 6d  |:......v(line%,m|
00006600  65 73 73 24 2c 76 61 72  29 0d 05 10 14 6d 65 73  |ess$,var)....mes|
00006610  73 24 3d c0 6d 65 73 73  24 2c 31 34 29 0d 05 11  |s$=.mess$,14)...|
00006620  0f 76 61 72 24 3d c3 28  76 61 72 29 0d 05 12 32  |.var$=.(var)...2|
00006630  f2 75 28 6c 69 6e 65 25  2c 6d 65 73 73 24 2b c4  |.u(line%,mess$+.|
00006640  32 35 2d a9 28 6d 65 73  73 24 29 2d a9 28 76 61  |25-.(mess$)-.(va|
00006650  72 24 29 2c 22 20 22 29  2b 76 61 72 24 29 0d 05  |r$)," ")+var$)..|
00006660  13 05 e1 0d 05 14 05 3a  0d 05 15 14 dd f2 75 28  |.......:......u(|
00006670  6c 69 6e 65 25 2c 6d 65  73 73 24 29 0d 05 16 1f  |line%,mess$)....|
00006680  c8 99 20 26 30 30 30 30  30 30 32 34 2c 22 64 62  |.. &00000024,"db|
00006690  24 6d 65 73 73 22 2c 22  58 58 22 0d 05 17 29 c8  |$mess","XX"...).|
000066a0  99 20 26 30 30 30 30 30  30 32 34 2c 22 64 62 24  |. &00000024,"db$|
000066b0  6d 65 73 73 22 2b c3 28  6c 69 6e 65 25 29 2c 6d  |mess"+.(line%),m|
000066c0  65 73 73 24 0d 05 18 05  e1 0d 05 19 05 3a 0d 05  |ess$.........:..|
000066d0  1a 10 dd 20 f2 6e 28 62  65 72 74 79 24 29 0d 05  |... .n(berty$)..|
000066e0  1b 0c ea 20 62 65 72 74  79 25 0d 05 1c 14 e7 20  |... berty%..... |
000066f0  62 65 72 74 79 66 69 6c  65 25 3d a3 20 8c 0d 05  |bertyfile%=. ...|
00006700  1d 26 62 65 72 74 79 25  3d ae 28 22 3c 4b 6e 69  |.&berty%=.("<Kni|
00006710  74 43 6f 6e 76 24 44 69  72 3e 2e 5e 2e 42 65 72  |tConv$Dir>.^.Ber|
00006720  74 79 22 29 0d 05 1e 0c  d9 23 62 65 72 74 79 25  |ty").....#berty%|
00006730  0d 05 1f 2b ff 28 22 53  65 74 54 79 70 65 3c 4b  |...+.("SetType<K|
00006740  6e 69 74 43 6f 6e 76 24  44 69 72 3e 2e 5e 2e 42  |nitConv$Dir>.^.B|
00006750  65 72 74 79 20 54 65 78  74 22 29 0d 05 20 10 62  |erty Text").. .b|
00006760  65 72 74 79 66 69 6c 65  25 3d b9 0d 05 21 05 cd  |ertyfile%=...!..|
00006770  0d 05 22 26 62 65 72 74  79 25 3d ad 28 22 3c 4b  |.."&berty%=.("<K|
00006780  6e 69 74 43 6f 6e 76 24  44 69 72 3e 2e 5e 2e 42  |nitConv$Dir>.^.B|
00006790  65 72 74 79 22 29 0d 05  23 15 cf 23 62 65 72 74  |erty")..#..#bert|
000067a0  79 25 3d a2 23 62 65 72  74 79 25 0d 05 24 0f d5  |y%=.#berty%..$..|
000067b0  23 62 65 72 74 79 25 2c  22 22 0d 05 25 13 d5 23  |#berty%,""..%..#|
000067c0  62 65 72 74 79 25 2c 62  65 72 74 79 24 0d 05 26  |berty%,berty$..&|
000067d0  0c d9 23 62 65 72 74 79  25 0d 05 27 25 2a 46 69  |..#berty%..'%*Fi|
000067e0  6c 65 72 5f 52 75 6e 20  3c 4b 6e 69 74 43 6f 6e  |ler_Run <KnitCon|
000067f0  76 24 44 69 72 3e 2e 5e  2e 42 65 72 74 79 0d 05  |v$Dir>.^.Berty..|
00006800  28 05 e1 0d 05 29 05 3a  0d 05 2a 11 dd 20 f2 73  |(....).:..*.. .s|
00006810  62 28 66 6e 61 6d 65 24  29 0d 05 2b 10 c8 8e 20  |b(fname$)..+... |
00006820  6d 61 6e 6e 65 72 25 20  ca 0d 05 2c 07 c9 20 31  |manner% ...,.. 1|
00006830  0d 05 2d 19 67 72 6f 77  73 24 3d 61 6e 73 5f 63  |..-.grows$=ans_c|
00006840  6f 6e 76 5f 72 6f 77 73  24 0d 05 2e 21 67 73 74  |onv_rows$...!gst|
00006850  69 74 63 68 65 73 24 3d  61 6e 73 5f 63 6f 6e 76  |itches$=ans_conv|
00006860  5f 73 74 69 74 63 68 65  73 24 0d 05 2f 16 61 6e  |_stitches$../.an|
00006870  73 5f 63 6f 6e 76 5f 72  6f 77 73 24 3d 22 30 22  |s_conv_rows$="0"|
00006880  0d 05 30 1a 61 6e 73 5f  63 6f 6e 76 5f 73 74 69  |..0.ans_conv_sti|
00006890  74 63 68 65 73 24 3d 22  30 22 0d 05 31 14 63 6f  |tches$="0"..1.co|
000068a0  6e 76 5f 72 6f 77 73 24  3d 22 30 2e 30 22 0d 05  |nv_rows$="0.0"..|
000068b0  32 18 63 6f 6e 76 5f 73  74 69 74 63 68 65 73 24  |2.conv_stitches$|
000068c0  3d 22 30 2e 30 22 0d 05  33 3d 67 68 65 69 67 68  |="0.0"..3=gheigh|
000068d0  74 24 3d c3 28 28 bb 28  74 65 6e 73 69 6f 6e 5f  |t$=.((.(tension_|
000068e0  73 71 5f 68 65 69 67 68  74 24 29 29 2f 28 bb 28  |sq_height$))/(.(|
000068f0  74 65 6e 73 69 6f 6e 5f  73 71 5f 72 6f 77 73 24  |tension_sq_rows$|
00006900  29 29 29 0d 05 34 3f 67  77 69 64 74 68 24 3d c3  |)))..4?gwidth$=.|
00006910  28 28 bb 28 74 65 6e 73  69 6f 6e 5f 73 71 5f 77  |((.(tension_sq_w|
00006920  69 64 74 68 24 29 29 2f  28 bb 28 74 65 6e 73 69  |idth$))/(.(tensi|
00006930  6f 6e 5f 73 71 5f 73 74  69 74 63 68 65 73 24 29  |on_sq_stitches$)|
00006940  29 29 0d 05 35 1b 74 65  6e 73 69 6f 6e 5f 73 71  |))..5.tension_sq|
00006950  5f 77 69 64 74 68 24 3d  22 30 2e 30 22 0d 05 36  |_width$="0.0"..6|
00006960  1c 74 65 6e 73 69 6f 6e  5f 73 71 5f 68 65 69 67  |.tension_sq_heig|
00006970  68 74 24 3d 22 30 2e 30  22 0d 05 37 1c 74 65 6e  |ht$="0.0"..7.ten|
00006980  73 69 6f 6e 5f 73 71 5f  73 74 69 74 63 68 65 73  |sion_sq_stitches|
00006990  24 3d 22 30 22 0d 05 38  18 74 65 6e 73 69 6f 6e  |$="0"..8.tension|
000069a0  5f 73 71 5f 72 6f 77 73  24 3d 22 30 22 0d 05 39  |_sq_rows$="0"..9|
000069b0  12 74 65 78 74 64 69 73  70 76 61 72 25 3d 36 0d  |.textdispvar%=6.|
000069c0  05 3a 0d 6d 61 69 6e 33  37 25 3d 30 0d 05 3b 11  |.:.main37%=0..;.|
000069d0  6d 61 73 74 65 72 67 72  65 79 25 3d 34 0d 05 3c  |mastergrey%=4..<|
000069e0  13 70 69 63 74 79 70 65  24 3d 22 6e 6f 6e 65 22  |.pictype$="none"|
000069f0  0d 05 3d 0d 6d 61 6e 6e  65 72 25 3d 30 0d 05 3e  |..=.manner%=0..>|
00006a00  0f f2 6a 62 28 66 6e 61  6d 65 24 29 0d 05 3f 07  |..jb(fname$)..?.|
00006a10  f2 76 62 0d 05 40 05 7f  0d 05 41 37 f2 67 62 28  |.vb..@....A7.gb(|
00006a20  22 54 68 65 72 65 20 69  73 20 6e 6f 20 70 69 63  |"There is no pic|
00006a30  74 75 72 65 20 74 6f 20  72 65 6d 6f 76 65 20 66  |ture to remove f|
00006a40  72 6f 6d 20 74 68 69 73  20 66 69 6c 65 22 29 0d  |rom this file").|
00006a50  05 42 05 cb 0d 05 43 05  e1 0d 05 44 05 3a 0d 05  |.B....C....D.:..|
00006a60  45 11 dd 20 f2 73 61 28  66 6e 61 6d 65 24 29 0d  |E.. .sa(fname$).|
00006a70  05 46 41 ea 20 77 78 25  2c 77 79 25 2c 6e 69 6e  |.FA. wx%,wy%,nin|
00006a80  78 25 2c 6d 61 78 78 25  2c 6d 69 6e 79 25 2c 6d  |x%,maxx%,miny%,m|
00006a90  61 78 79 25 2c 73 6d 69  6e 78 25 2c 73 6d 61 78  |axy%,sminx%,smax|
00006aa0  78 25 2c 73 6d 69 6e 79  25 2c 73 6d 61 78 79 25  |x%,sminy%,smaxy%|
00006ab0  0d 05 47 44 ea 20 78 63  25 2c 79 63 25 2c 65 78  |..GD. xc%,yc%,ex|
00006ac0  74 72 61 77 69 64 74 68  25 2c 73 63 72 61 64 64  |trawidth%,scradd|
00006ad0  72 25 2c 73 61 76 73 69  7a 65 25 2c 73 61 76 61  |r%,savsize%,sava|
00006ae0  72 65 61 25 2c 72 30 25  2c 72 31 25 2c 72 32 25  |rea%,r0%,r1%,r2%|
00006af0  2c 72 33 25 0d 05 48 46  ea 20 73 77 25 2c 72 68  |,r3%..HF. sw%,rh|
00006b00  25 2c 79 25 2c 78 25 2c  78 78 25 2c 77 25 2c 63  |%,y%,x%,xx%,w%,c|
00006b10  6f 6c 25 2c 79 6c 25 2c  79 68 25 2c 78 6c 25 2c  |ol%,yl%,yh%,xl%,|
00006b20  78 68 25 2c 6d 69 6e 25  2c 6d 61 78 25 2c 72 6f  |xh%,min%,max%,ro|
00006b30  77 25 2c 73 74 69 74 63  68 25 0d 05 49 33 ea 20  |w%,stitch%..I3. |
00006b40  73 63 6c 25 2c 6e 75 6d  6d 69 6e 25 2c 6e 75 6d  |scl%,nummin%,num|
00006b50  6d 61 78 25 2c 6e 75 6d  25 2c 78 6d 6f 76 65 25  |max%,num%,xmove%|
00006b60  2c 79 6d 6f 76 65 25 2c  73 79 6d 62 25 0d 05 4a  |,ymove%,symb%..J|
00006b70  06 f2 6f 0d 05 4b 09 77  78 25 3d 30 0d 05 4c 12  |..o..K.wx%=0..L.|
00006b80  77 79 25 3d 73 63 72 68  65 69 67 68 74 25 0d 05  |wy%=scrheight%..|
00006b90  4d 1c 6d 69 6e 78 25 3d  30 3a 20 6d 61 78 78 25  |M.minx%=0: maxx%|
00006ba0  3d 73 63 72 77 69 64 74  68 25 0d 05 4e 1d 6d 69  |=scrwidth%..N.mi|
00006bb0  6e 79 25 3d 30 3a 20 6d  61 78 79 25 3d 73 63 72  |ny%=0: maxy%=scr|
00006bc0  68 65 69 67 68 74 25 0d  05 4f 0c 73 6d 69 6e 78  |height%..O.sminx|
00006bd0  25 3d 30 0d 05 50 15 73  6d 61 78 78 25 3d 67 72  |%=0..P.smaxx%=gr|
00006be0  69 64 77 69 64 74 68 25  0d 05 51 0c 73 6d 69 6e  |idwidth%..Q.smin|
00006bf0  79 25 3d 30 0d 05 52 16  73 6d 61 78 79 25 3d 67  |y%=0..R.smaxy%=g|
00006c00  72 69 64 68 65 69 67 68  74 25 0d 05 53 15 78 63  |ridheight%..S.xc|
00006c10  25 3d 77 78 25 2b 72 75  6c 65 73 69 7a 65 25 0d  |%=wx%+rulesize%.|
00006c20  05 54 1d 79 63 25 3d 77  79 25 2d 65 64 69 74 68  |.T.yc%=wy%-edith|
00006c30  74 25 2b 72 75 6c 65 73  69 7a 65 25 0d 05 55 42  |t%+rulesize%..UB|
00006c40  65 78 74 72 61 77 69 64  74 68 25 3d 34 2d 28 73  |extrawidth%=4-(s|
00006c50  63 72 77 69 64 74 68 25  20 83 20 34 29 3a 20 e7  |crwidth% . 4): .|
00006c60  20 65 78 74 72 61 77 69  64 74 68 25 3d 34 20 8c  | extrawidth%=4 .|
00006c70  20 65 78 74 72 61 77 69  64 74 68 25 3d 30 0d 05  | extrawidth%=0..|
00006c80  56 33 73 63 72 73 69 7a  65 25 3d 28 73 63 72 77  |V3scrsize%=(scrw|
00006c90  69 64 74 68 25 2b 65 78  74 72 61 77 69 64 74 68  |idth%+extrawidth|
00006ca0  25 29 2a 73 63 72 68 65  69 67 68 74 25 2b 32 30  |%)*scrheight%+20|
00006cb0  30 0d 05 57 19 73 63 72  61 72 65 61 25 3d a4 61  |0..W.scrarea%=.a|
00006cc0  28 73 63 72 73 69 7a 65  25 29 0d 05 58 16 21 73  |(scrsize%)..X.!s|
00006cd0  63 72 61 72 65 61 25 3d  73 63 72 73 69 7a 65 25  |crarea%=scrsize%|
00006ce0  0d 05 59 11 73 63 72 61  72 65 61 25 21 38 3d 31  |..Y.scrarea%!8=1|
00006cf0  36 0d 05 5a 1f c8 99 20  26 30 30 30 30 30 30 32  |6..Z... &0000002|
00006d00  45 2c 32 35 36 2b 39 2c  73 63 72 61 72 65 61 25  |E,256+9,scrarea%|
00006d10  0d 05 5b 39 e7 20 73 63  72 6d 6f 64 65 25 3d 31  |..[9. scrmode%=1|
00006d20  32 20 84 20 73 63 72 6d  6f 64 65 25 3d 32 30 20  |2 . scrmode%=20 |
00006d30  8c 20 70 61 6c 66 6c 61  67 25 3d 31 20 8b 20 70  |. palflag%=1 . p|
00006d40  61 6c 66 6c 61 67 25 3d  30 0d 05 5c 50 c8 99 20  |alflag%=0..\P.. |
00006d50  26 30 30 30 30 30 30 32  45 2c 32 35 36 2b 31 35  |&0000002E,256+15|
00006d60  2c 73 63 72 61 72 65 61  25 2c 22 73 63 72 65 65  |,scrarea%,"scree|
00006d70  6e 22 2c 70 61 6c 66 6c  61 67 25 2c 73 63 72 77  |n",palflag%,scrw|
00006d80  69 64 74 68 25 2c 73 63  72 68 65 69 67 68 74 25  |idth%,scrheight%|
00006d90  2c 73 63 72 6d 6f 64 65  25 0d 05 5d 34 c8 99 20  |,scrmode%..]4.. |
00006da0  26 30 30 30 30 30 30 32  45 2c 26 31 31 38 2c 73  |&0000002E,&118,s|
00006db0  63 72 61 72 65 61 25 2c  22 73 63 72 65 65 6e 22  |crarea%,"screen"|
00006dc0  20 b8 20 2c 2c 73 63 72  61 64 64 72 25 0d 05 5e  | . ,,scraddr%..^|
00006dd0  21 e7 20 73 63 72 6d 6f  64 65 25 3d 31 32 20 84  |!. scrmode%=12 .|
00006de0  20 73 63 72 6d 6f 64 65  25 3d 32 30 20 8c 0d 05  | scrmode%=20 ...|
00006df0  5f 04 0d 05 60 14 e3 20  69 25 3d 30 20 b8 20 31  |_...`.. i%=0 . 1|
00006e00  32 34 20 88 20 34 0d 05  61 1f 21 28 73 63 72 61  |24 . 4..a.!(scra|
00006e10  64 64 72 25 2b 34 34 2b  69 25 29 3d 70 61 6c 31  |ddr%+44+i%)=pal1|
00006e20  36 25 21 69 25 0d 05 62  08 ed 20 69 25 0d 05 63  |6%!i%..b.. i%..c|
00006e30  05 cd 0d 05 64 37 c8 99  20 26 30 30 30 30 30 30  |....d7.. &000000|
00006e40  32 45 2c 35 31 32 2b 36  32 2c 73 63 72 61 72 65  |2E,512+62,scrare|
00006e50  61 25 2c 73 63 72 61 64  64 72 25 20 b8 20 2c 2c  |a%,scraddr% . ,,|
00006e60  2c 73 61 76 73 69 7a 65  25 0d 05 65 19 73 61 76  |,savsize%..e.sav|
00006e70  61 72 65 61 25 3d a4 61  28 73 61 76 73 69 7a 65  |area%=.a(savsize|
00006e80  25 29 0d 05 66 10 73 61  76 61 72 65 61 25 21 30  |%)..f.savarea%!0|
00006e90  3d 30 0d 05 67 44 c8 99  20 26 30 30 30 30 30 30  |=0..gD.. &000000|
00006ea0  32 45 2c 35 31 32 2b 36  30 2c 73 63 72 61 72 65  |2E,512+60,scrare|
00006eb0  61 25 2c 73 63 72 61 64  64 72 25 2c 73 61 76 61  |a%,scraddr%,sava|
00006ec0  72 65 61 25 20 b8 20 72  30 25 2c 72 31 25 2c 72  |rea% . r0%,r1%,r|
00006ed0  32 25 2c 72 33 25 0d 05  68 3a ee 20 85 20 ea 20  |2%,r3%..h:. . . |
00006ee0  3a c8 99 20 26 30 30 30  34 30 36 43 32 3a c8 99  |:.. &000406C2:..|
00006ef0  20 26 30 30 30 30 30 30  32 45 2c 72 30 25 2c 72  | &0000002E,r0%,r|
00006f00  31 25 2c 72 32 25 2c 72  33 25 3a f2 78 3a c8 98  |1%,r2%,r3%:.x:..|
00006f10  0d 05 69 08 ef 20 32 36  0d 05 6a 07 ef 20 35 0d  |..i.. 26..j.. 5.|
00006f20  05 6b 50 e7 20 73 63 72  6d 6f 64 65 25 3d 31 32  |.kP. scrmode%=12|
00006f30  20 84 20 73 63 72 6d 6f  64 65 25 3d 31 35 20 8c  | . scrmode%=15 .|
00006f40  20 ef 20 32 33 2c 31 37  2c 37 2c 25 31 30 2c 38  | . 23,17,7,%10,8|
00006f50  3b 38 3b 30 2c 30 20 8b  20 ef 20 32 33 2c 31 37  |;8;0,0 . . 23,17|
00006f60  2c 37 2c 25 31 30 2c 38  3b 31 36 3b 30 2c 30 0d  |,7,%10,8;16;0,0.|
00006f70  05 6c 26 c8 99 20 63 74  5f 73 65 74 67 63 6f 6c  |.l&.. ct_setgcol|
00006f80  25 2c a4 6c 28 62 61 63  6b 63 6f 6c 25 29 2c 2c  |%,.l(backcol%),,|
00006f90  2c 31 3c 3c 37 0d 05 6d  05 da 0d 05 6e 13 e7 20  |,1<<7..m....n.. |
00006fa0  73 70 72 69 74 65 6f 6e  25 3d b9 20 8c 0d 05 6f  |spriteon%=. ...o|
00006fb0  11 c8 8e 20 70 69 63 74  79 70 65 24 20 ca 0d 05  |... pictype$ ...|
00006fc0  70 0e c9 20 22 73 70 72  69 74 65 22 0d 05 71 15  |p.. "sprite"..q.|
00006fd0  62 6c 6f 63 6b 25 21 31  30 30 3d 78 63 25 3c 3c  |block%!100=xc%<<|
00006fe0  38 0d 05 72 28 62 6c 6f  63 6b 25 21 31 30 34 3d  |8..r(block%!104=|
00006ff0  28 79 63 25 2b 67 72 69  64 68 65 69 67 68 74 25  |(yc%+gridheight%|
00007000  2a 72 68 74 25 29 3c 3c  38 0d 05 73 27 62 6c 6f  |*rht%)<<8..s'blo|
00007010  63 6b 25 21 31 30 38 3d  28 78 63 25 2b 67 72 69  |ck%!108=(xc%+gri|
00007020  64 77 69 64 74 68 25 2a  73 74 77 25 29 3c 3c 38  |dwidth%*stw%)<<8|
00007030  0d 05 74 28 62 6c 6f 63  6b 25 21 31 31 32 3d 28  |..t(block%!112=(|
00007040  79 63 25 2b 67 72 69 64  68 65 69 67 68 74 25 2a  |yc%+gridheight%*|
00007050  72 68 74 25 29 3c 3c 38  0d 05 75 27 62 6c 6f 63  |rht%)<<8..u'bloc|
00007060  6b 25 21 31 31 36 3d 28  78 63 25 2b 67 72 69 64  |k%!116=(xc%+grid|
00007070  77 69 64 74 68 25 2a 73  74 77 25 29 3c 3c 38 0d  |width%*stw%)<<8.|
00007080  05 76 15 62 6c 6f 63 6b  25 21 31 32 30 3d 79 63  |.v.block%!120=yc|
00007090  25 3c 3c 38 0d 05 77 15  62 6c 6f 63 6b 25 21 31  |%<<8..w.block%!1|
000070a0  32 34 3d 78 63 25 3c 3c  38 0d 05 78 15 62 6c 6f  |24=xc%<<8..x.blo|
000070b0  63 6b 25 21 31 32 38 3d  79 63 25 3c 3c 38 0d 05  |ck%!128=yc%<<8..|
000070c0  79 04 0d 05 7a 48 c8 99  26 30 30 30 30 30 30 32  |y...zH..&0000002|
000070d0  45 2c 26 32 33 38 2c 73  6f 75 72 63 65 73 70 72  |E,&238,sourcespr|
000070e0  25 2c 73 6f 75 72 63 65  61 64 64 72 25 2c 31 2c  |%,sourceaddr%,1,|
000070f0  30 2c 30 2c 62 6c 6f 63  6b 25 2b 31 30 30 2c 74  |0,0,block%+100,t|
00007100  72 61 6e 73 74 61 62 6c  65 25 0d 05 7b 0c c9 20  |ranstable%..{.. |
00007110  22 64 72 61 77 22 0d 05  7c 2c 73 63 61 6c 65 78  |"draw"..|,scalex|
00007120  3d 28 28 28 67 72 69 64  77 69 64 74 68 25 2a 73  |=(((gridwidth%*s|
00007130  74 77 25 29 3c 3c 38 29  2f 28 64 72 61 77 78 25  |tw%)<<8)/(drawx%|
00007140  29 29 0d 05 7d 2f 73 63  61 6c 65 79 3d 28 28 28  |))..}/scaley=(((|
00007150  67 72 69 64 68 65 69 67  68 74 25 2a 72 68 74 25  |gridheight%*rht%|
00007160  29 3c 3c 38 29 2f 28 64  72 61 77 79 25 2d 31 29  |)<<8)/(drawy%-1)|
00007170  29 0d 05 7e 1e 74 72 61  6e 73 66 6f 72 6d 25 21  |)..~.transform%!|
00007180  30 20 3d 73 63 61 6c 65  78 2a 36 35 35 33 36 0d  |0 =scalex*65536.|
00007190  05 7f 13 74 72 61 6e 73  66 6f 72 6d 25 21 34 20  |...transform%!4 |
000071a0  3d 30 0d 05 80 13 74 72  61 6e 73 66 6f 72 6d 25  |=0....transform%|
000071b0  21 38 20 3d 30 0d 05 81  1e 74 72 61 6e 73 66 6f  |!8 =0....transfo|
000071c0  72 6d 25 21 31 32 3d 73  63 61 6c 65 79 2a 36 35  |rm%!12=scaley*65|
000071d0  35 33 36 0d 05 82 2e 74  72 61 6e 73 66 6f 72 6d  |536....transform|
000071e0  25 21 31 36 3d 28 78 63  25 3c 3c 38 29 2d 64 72  |%!16=(xc%<<8)-dr|
000071f0  61 77 78 6f 66 66 73 65  74 25 2a 73 63 61 6c 65  |awxoffset%*scale|
00007200  78 0d 05 83 2e 74 72 61  6e 73 66 6f 72 6d 25 21  |x....transform%!|
00007210  32 30 3d 28 79 63 25 3c  3c 38 29 2d 64 72 61 77  |20=(yc%<<8)-draw|
00007220  79 6f 66 66 73 65 74 25  2a 73 63 61 6c 65 79 0d  |yoffset%*scaley.|
00007230  05 84 04 0d 05 85 2e c8  99 20 26 30 30 30 34 35  |......... &00045|
00007240  35 34 30 2c 30 2c 64 72  61 77 25 2c 64 72 61 77  |540,0,draw%,draw|
00007250  6c 65 6e 25 2c 74 72 61  6e 73 66 6f 72 6d 25 2c  |len%,transform%,|
00007260  30 0d 05 86 05 cb 0d 05  87 05 cd 0d 05 88 10 c8  |0...............|
00007270  8e 20 6d 61 6e 6e 65 72  25 20 ca 0d 05 89 09 c9  |. manner% ......|
00007280  20 30 2c 31 0d 05 8a 04  0d 05 8b 1f 73 77 25 3d  | 0,1........sw%=|
00007290  73 74 77 25 2b 78 70 69  78 32 25 2a 28 67 72 69  |stw%+xpix2%*(gri|
000072a0  64 6f 6e 25 3d b9 29 0d  05 8c 1f 72 68 25 3d 72  |don%=.)....rh%=r|
000072b0  68 74 25 2b 79 70 69 78  32 25 2a 28 67 72 69 64  |ht%+ypix2%*(grid|
000072c0  6f 6e 25 3d b9 29 0d 05  8d 1c 79 25 3d 79 63 25  |on%=.)....y%=yc%|
000072d0  2d 79 70 69 78 25 2a 28  67 72 69 64 6f 6e 25 3d  |-ypix%*(gridon%=|
000072e0  b9 29 0d 05 8e 1d 78 78  25 3d 78 63 25 2d 78 70  |.)....xx%=xc%-xp|
000072f0  69 78 25 2a 28 67 72 69  64 6f 6e 25 3d b9 29 0d  |ix%*(gridon%=.).|
00007300  05 8f 26 e3 77 25 3d 73  6d 69 6e 78 25 b8 73 6d  |..&.w%=sminx%.sm|
00007310  61 78 78 25 2d 31 3a 78  25 3d 78 78 25 2b 77 25  |axx%-1:x%=xx%+w%|
00007320  2a 73 74 77 25 0d 05 90  51 e3 68 25 3d 73 6d 69  |*stw%...Q.h%=smi|
00007330  6e 79 25 b8 73 6d 61 78  79 25 2d 31 3a 63 6f 6c  |ny%.smaxy%-1:col|
00007340  25 3d 63 6f 6c 74 61 62  6c 65 25 3f 28 68 25 2a  |%=coltable%?(h%*|
00007350  67 72 69 64 77 69 64 74  68 25 2b 77 25 29 3a e7  |gridwidth%+w%):.|
00007360  73 68 6f 77 6d 61 73 6b  25 63 6f 6c 25 3d 63 6f  |showmask%col%=co|
00007370  6c 25 80 31 39 31 0d 05  91 50 e7 28 63 6f 6c 25  |l%.191...P.(col%|
00007380  80 31 39 32 29 3d 30 c8  99 63 74 5f 73 65 74 67  |.192)=0..ct_setg|
00007390  63 6f 6c 25 2c 70 61 6c  74 61 62 6c 65 25 21 28  |col%,paltable%!(|
000073a0  28 63 6f 6c 25 80 36 33  29 2a 34 29 3a c8 93 c8  |(col%.63)*4):...|
000073b0  90 78 25 2c 79 25 2b 68  25 2a 72 68 74 25 2c 73  |.x%,y%+h%*rht%,s|
000073c0  77 25 2c 72 68 25 0d 05  92 05 ed 0d 05 93 27 c8  |w%,rh%........'.|
000073d0  99 20 26 30 30 30 34 30  36 43 34 2c 28 28 38 30  |. &000406C4,((80|
000073e0  2a 77 25 29 20 81 20 67  72 69 64 77 69 64 74 68  |*w%) . gridwidth|
000073f0  25 29 0d 05 94 05 ed 0d  05 95 04 0d 05 96 1f c8  |%)..............|
00007400  99 20 63 74 5f 73 65 74  67 63 6f 6c 25 2c a4 6c  |. ct_setgcol%,.l|
00007410  28 67 72 69 64 63 6f 6c  25 29 0d 05 97 04 0d 05  |(gridcol%)......|
00007420  98 2c 79 6c 25 3d 79 63  25 2b 73 6d 69 6e 79 25  |.,yl%=yc%+sminy%|
00007430  2a 72 68 74 25 3a 20 79  68 25 3d 79 63 25 2b 73  |*rht%: yh%=yc%+s|
00007440  6d 61 78 79 25 2a 72 68  74 25 0d 05 99 18 e3 20  |maxy%*rht%..... |
00007450  78 25 3d 73 6d 69 6e 78  25 20 b8 20 73 6d 61 78  |x%=sminx% . smax|
00007460  78 25 0d 05 9a 15 ec 20  78 63 25 2b 78 25 2a 73  |x%..... xc%+x%*s|
00007470  74 77 25 2c 79 6c 25 0d  05 9b 15 df 20 78 63 25  |tw%,yl%..... xc%|
00007480  2b 78 25 2a 73 74 77 25  2c 79 68 25 0d 05 9c 08  |+x%*stw%,yh%....|
00007490  ed 20 78 25 0d 05 9d 13  c8 99 20 26 30 30 30 34  |. x%...... &0004|
000074a0  30 36 43 34 2c 38 34 0d  05 9e 04 0d 05 9f 2c 78  |06C4,84.......,x|
000074b0  6c 25 3d 78 63 25 2b 73  6d 69 6e 78 25 2a 73 74  |l%=xc%+sminx%*st|
000074c0  77 25 3a 20 78 68 25 3d  78 63 25 2b 73 6d 61 78  |w%: xh%=xc%+smax|
000074d0  78 25 2a 73 74 77 25 0d  05 a0 18 e3 20 79 25 3d  |x%*stw%..... y%=|
000074e0  73 6d 69 6e 79 25 20 b8  20 73 6d 61 78 79 25 0d  |sminy% . smaxy%.|
000074f0  05 a1 15 ec 20 78 6c 25  2c 79 63 25 2b 79 25 2a  |.... xl%,yc%+y%*|
00007500  72 68 74 25 0d 05 a2 15  df 20 78 68 25 2c 79 63  |rht%..... xh%,yc|
00007510  25 2b 79 25 2a 72 68 74  25 0d 05 a3 08 ed 20 79  |%+y%*rht%..... y|
00007520  25 0d 05 a4 13 c8 99 20  26 30 30 30 34 30 36 43  |%...... &000406C|
00007530  34 2c 38 38 0d 05 a5 1f  c8 99 20 63 74 5f 73 65  |4,88...... ct_se|
00007540  74 67 63 6f 6c 25 2c a4  6c 28 66 6f 72 65 63 6f  |tgcol%,.l(foreco|
00007550  6c 25 29 0d 05 a6 04 0d  05 a7 0a 6d 69 6e 25 3d  |l%)........min%=|
00007560  30 0d 05 a8 14 6d 61 78  25 3d 67 72 69 64 68 65  |0....max%=gridhe|
00007570  69 67 68 74 25 0d 05 a9  12 6d 69 6e 25 3d 6d 69  |ight%....min%=mi|
00007580  6e 25 20 81 20 31 30 0d  05 aa 12 6d 61 78 25 3d  |n% . 10....max%=|
00007590  6d 61 78 25 20 81 20 31  30 0d 05 ab 16 e3 20 72  |max% . 10..... r|
000075a0  6f 77 25 3d 6d 69 6e 25  20 b8 20 6d 61 78 25 0d  |ow%=min% . max%.|
000075b0  05 ac 0a 78 25 3d 78 63  25 0d 05 ad 1a 79 25 3d  |...x%=xc%....y%=|
000075c0  79 63 25 2b 72 6f 77 25  2a 72 68 74 25 2a 31 30  |yc%+row%*rht%*10|
000075d0  2b 31 36 0d 05 ae 2a ec  20 78 25 2b 28 31 36 2a  |+16...*. x%+(16*|
000075e0  28 72 6f 77 25 3e 30 29  29 2b 28 31 36 2a 28 72  |(row%>0))+(16*(r|
000075f0  6f 77 25 3e 39 29 29 2d  34 30 2c 79 25 0d 05 af  |ow%>9))-40,y%...|
00007600  0e f1 20 3b 72 6f 77 25  2a 31 30 0d 05 b0 11 ec  |.. ;row%*10.....|
00007610  20 78 25 2d 32 30 2c 79  25 2d 31 36 0d 05 b1 0e  | x%-20,y%-16....|
00007620  df 20 78 25 2c 79 25 2d  31 36 0d 05 b2 0a ed 20  |. x%,y%-16..... |
00007630  72 6f 77 25 0d 05 b3 13  c8 99 20 26 30 30 30 34  |row%...... &0004|
00007640  30 36 43 34 2c 39 32 0d  05 b4 04 0d 05 b5 14 6d  |06C4,92........m|
00007650  61 78 25 3d 67 72 69 64  68 65 69 67 68 74 25 0d  |ax%=gridheight%.|
00007660  05 b6 0a 6d 69 6e 25 3d  30 0d 05 b7 12 6d 69 6e  |...min%=0....min|
00007670  25 3d 6d 69 6e 25 20 81  20 31 30 0d 05 b8 12 6d  |%=min% . 10....m|
00007680  61 78 25 3d 6d 61 78 25  20 81 20 31 30 0d 05 b9  |ax%=max% . 10...|
00007690  16 e3 20 72 6f 77 25 3d  6d 69 6e 25 20 b8 20 6d  |.. row%=min% . m|
000076a0  61 78 25 0d 05 ba 1d 78  25 3d 78 63 25 2b 32 34  |ax%....x%=xc%+24|
000076b0  2b 67 72 69 64 77 69 64  74 68 25 2a 73 74 77 25  |+gridwidth%*stw%|
000076c0  0d 05 bb 1a 79 25 3d 72  6f 77 25 2a 72 68 74 25  |....y%=row%*rht%|
000076d0  2a 31 30 2b 79 63 25 2b  31 36 0d 05 bc 0b ec 20  |*10+yc%+16..... |
000076e0  78 25 2c 79 25 0d 05 bd  0e f1 20 3b 72 6f 77 25  |x%,y%..... ;row%|
000076f0  2a 31 30 0d 05 be 10 ec  20 78 25 2d 34 2c 79 25  |*10..... x%-4,y%|
00007700  2d 31 36 0d 05 bf 11 df  20 78 25 2d 32 34 2c 79  |-16..... x%-24,y|
00007710  25 2d 31 36 0d 05 c0 0a  ed 20 72 6f 77 25 0d 05  |%-16..... row%..|
00007720  c1 13 c8 99 20 26 30 30  30 34 30 36 43 34 2c 39  |.... &000406C4,9|
00007730  36 0d 05 c2 04 0d 05 c3  13 6d 61 78 25 3d 67 72  |6........max%=gr|
00007740  69 64 77 69 64 74 68 25  0d 05 c4 0a 6d 69 6e 25  |idwidth%....min%|
00007750  3d 30 0d 05 c5 12 6d 69  6e 25 3d 6d 69 6e 25 20  |=0....min%=min% |
00007760  81 20 31 30 0d 05 c6 12  6d 61 78 25 3d 6d 61 78  |. 10....max%=max|
00007770  25 20 81 20 31 30 0d 05  c7 19 e3 20 73 74 69 74  |% . 10..... stit|
00007780  63 68 25 3d 6d 69 6e 25  20 b8 20 6d 61 78 25 0d  |ch%=min% . max%.|
00007790  05 c8 1a 78 25 3d 78 63  25 2b 73 74 69 74 63 68  |...x%=xc%+stitch|
000077a0  25 2a 73 74 77 25 2a 31  30 0d 05 c9 0d 79 25 3d  |%*stw%*10....y%=|
000077b0  79 63 25 2d 32 34 0d 05  ca 2c ec 20 78 25 2b 28  |yc%-24...,. x%+(|
000077c0  31 36 2a 28 73 74 69 74  63 68 25 3e 30 29 29 2b  |16*(stitch%>0))+|
000077d0  28 38 2a 28 73 74 69 74  63 68 25 3e 39 29 29 2c  |(8*(stitch%>9)),|
000077e0  79 25 0d 05 cb 11 f1 20  3b 73 74 69 74 63 68 25  |y%..... ;stitch%|
000077f0  2a 31 30 0d 05 cc 0d ec  20 78 25 2c 79 25 2b 34  |*10..... x%,y%+4|
00007800  0d 05 cd 0e df 20 78 25  2c 79 25 2b 32 30 0d 05  |..... x%,y%+20..|
00007810  ce 0d ed 20 73 74 69 74  63 68 25 0d 05 cf 13 c8  |... stitch%.....|
00007820  99 20 26 30 30 30 34 30  36 43 34 2c 39 39 0d 05  |. &000406C4,99..|
00007830  d0 04 0d 05 d1 13 6d 61  78 25 3d 67 72 69 64 77  |......max%=gridw|
00007840  69 64 74 68 25 0d 05 d2  0a 6d 69 6e 25 3d 30 0d  |idth%....min%=0.|
00007850  05 d3 12 6d 69 6e 25 3d  6d 69 6e 25 20 81 20 31  |...min%=min% . 1|
00007860  30 0d 05 d4 12 6d 61 78  25 3d 6d 61 78 25 20 81  |0....max%=max% .|
00007870  20 31 30 0d 05 d5 19 e3  20 73 74 69 74 63 68 25  | 10..... stitch%|
00007880  3d 6d 69 6e 25 20 b8 20  6d 61 78 25 0d 05 d6 1a  |=min% . max%....|
00007890  78 25 3d 78 63 25 2b 73  74 69 74 63 68 25 2a 73  |x%=xc%+stitch%*s|
000078a0  74 77 25 2a 31 30 0d 05  d7 1b 79 25 3d 79 63 25  |tw%*10....y%=yc%|
000078b0  2b 67 72 69 64 68 65 69  67 68 74 25 2a 72 68 74  |+gridheight%*rht|
000078c0  25 0d 05 d8 2f ec 20 78  25 2b 28 31 36 2a 28 73  |%.../. x%+(16*(s|
000078d0  74 69 74 63 68 25 3e 30  29 29 2b 28 38 2a 28 73  |titch%>0))+(8*(s|
000078e0  74 69 74 63 68 25 3e 39  29 29 2c 79 25 2b 34 34  |titch%>9)),y%+44|
000078f0  0d 05 d9 11 f1 20 3b 73  74 69 74 63 68 25 2a 31  |..... ;stitch%*1|
00007900  30 0d 05 da 0b ec 20 78  25 2c 79 25 0d 05 db 0e  |0..... x%,y%....|
00007910  df 20 78 25 2c 79 25 2b  31 36 0d 05 dc 0d ed 20  |. x%,y%+16..... |
00007920  73 74 69 74 63 68 25 0d  05 dd 07 c9 20 32 0d 05  |stitch%..... 2..|
00007930  de 04 0d 05 df 14 73 63  6c 25 3d 28 73 74 77 25  |......scl%=(stw%|
00007940  2d 33 30 29 2f 32 0d 05  e0 14 6e 75 6d 6d 69 6e  |-30)/2....nummin|
00007950  25 3d 73 6d 69 6e 78 25  2d 31 0d 05 e1 14 6e 75  |%=sminx%-1....nu|
00007960  6d 6d 61 78 25 3d 73 6d  61 78 78 25 2b 31 0d 05  |mmax%=smaxx%+1..|
00007970  e2 16 6e 75 6d 6d 69 6e  25 2d 3d 6e 75 6d 6d 69  |..nummin%-=nummi|
00007980  6e 25 83 32 0d 05 e3 1b  e7 20 6e 75 6d 6d 69 6e  |n%.2..... nummin|
00007990  25 3c 30 20 8c 20 6e 75  6d 6d 69 6e 25 3d 30 0d  |%<0 . nummin%=0.|
000079a0  05 e4 2d e7 20 6e 75 6d  6d 61 78 25 3e 67 72 69  |..-. nummax%>gri|
000079b0  64 77 69 64 74 68 25 20  8c 20 6e 75 6d 6d 61 78  |dwidth% . nummax|
000079c0  25 3d 67 72 69 64 77 69  64 74 68 25 0d 05 e5 1e  |%=gridwidth%....|
000079d0  e3 20 78 25 3d 6e 75 6d  6d 69 6e 25 20 b8 20 6e  |. x%=nummin% . n|
000079e0  75 6d 6d 61 78 25 20 88  20 32 0d 05 e6 10 e7 20  |ummax% . 2..... |
000079f0  78 25 20 83 20 32 3d 30  20 8c 0d 05 e7 18 e7 20  |x% . 2=0 ...... |
00007a00  78 25 3c 3d 67 72 69 64  77 69 64 74 68 25 2f 32  |x%<=gridwidth%/2|
00007a10  20 8c 0d 05 e8 18 6e 75  6d 25 3d 67 72 69 64 77  | .....num%=gridw|
00007a20  69 64 74 68 25 2f 32 2d  78 25 0d 05 e9 33 e7 20  |idth%/2-x%...3. |
00007a30  6e 75 6d 25 20 83 20 32  3d 31 20 8c 20 6e 75 6d  |num% . 2=1 . num|
00007a40  25 2d 3d 31 20 3a 20 78  6d 6f 76 65 25 3d 73 74  |%-=1 : xmove%=st|
00007a50  77 25 20 8b 20 78 6d 6f  76 65 25 3d 30 0d 05 ea  |w% . xmove%=0...|
00007a60  1f c8 99 20 63 74 5f 73  65 74 67 63 6f 6c 25 2c  |... ct_setgcol%,|
00007a70  a4 6c 28 66 6f 72 65 63  6f 6c 25 29 0d 05 eb 46  |.l(forecol%)...F|
00007a80  e7 20 6e 75 6d 25 20 83  31 32 3d 30 20 8c 20 c8  |. num% .12=0 . .|
00007a90  99 20 63 74 5f 73 65 74  67 63 6f 6c 25 2c a4 6c  |. ct_setgcol%,.l|
00007aa0  28 31 31 29 20 8b 20 c8  99 20 63 74 5f 73 65 74  |(11) . .. ct_set|
00007ab0  67 63 6f 6c 25 2c a4 6c  28 67 72 69 64 63 6f 6c  |gcol%,.l(gridcol|
00007ac0  25 29 0d 05 ec 0e e7 20  6e 75 6d 25 3d 30 20 8c  |%)..... num%=0 .|
00007ad0  0d 05 ed 25 ec 20 78 63  25 2b 28 67 72 69 64 77  |...%. xc%+(gridw|
00007ae0  69 64 74 68 25 2f 32 29  2a 73 74 77 25 2d 38 2c  |idth%/2)*stw%-8,|
00007af0  79 63 25 2d 34 0d 05 ee  0b f1 20 3b 6e 75 6d 25  |yc%-4..... ;num%|
00007b00  0d 05 ef 37 ec 20 78 63  25 2b 28 67 72 69 64 77  |...7. xc%+(gridw|
00007b10  69 64 74 68 25 2f 32 29  2a 73 74 77 25 2d 38 2c  |idth%/2)*stw%-8,|
00007b20  79 63 25 2b 67 72 69 64  68 65 69 67 68 74 25 2a  |yc%+gridheight%*|
00007b30  72 68 74 25 2b 33 32 0d  05 f0 0b f1 20 3b 6e 75  |rht%+32..... ;nu|
00007b40  6d 25 0d 05 f1 05 cc 0d  05 f2 19 e7 20 6e 75 6d  |m%.......... num|
00007b50  25 3c 31 30 20 8c 20 78  6d 6f 76 65 25 2b 3d 38  |%<10 . xmove%+=8|
00007b60  0d 05 f3 23 ec 20 78 63  25 2b 78 25 2a 73 74 77  |...#. xc%+x%*stw|
00007b70  25 2b 78 6d 6f 76 65 25  2b 73 63 6c 25 2c 79 63  |%+xmove%+scl%,yc|
00007b80  25 2d 34 0d 05 f4 0b f1  20 3b 6e 75 6d 25 0d 05  |%-4..... ;num%..|
00007b90  f5 35 ec 20 78 63 25 2b  78 25 2a 73 74 77 25 2b  |.5. xc%+x%*stw%+|
00007ba0  78 6d 6f 76 65 25 2b 73  63 6c 25 2c 79 63 25 2b  |xmove%+scl%,yc%+|
00007bb0  67 72 69 64 68 65 69 67  68 74 25 2a 72 68 74 25  |gridheight%*rht%|
00007bc0  2b 33 32 0d 05 f6 0b f1  20 3b 6e 75 6d 25 0d 05  |+32..... ;num%..|
00007bd0  f7 05 cd 0d 05 f8 05 cc  0d 05 f9 18 6e 75 6d 25  |............num%|
00007be0  3d 78 25 2d 67 72 69 64  77 69 64 74 68 25 2f 32  |=x%-gridwidth%/2|
00007bf0  0d 05 fa 33 e7 20 6e 75  6d 25 20 83 20 32 3d 31  |...3. num% . 2=1|
00007c00  20 8c 20 6e 75 6d 25 2d  3d 31 20 3a 20 78 6d 6f  | . num%-=1 : xmo|
00007c10  76 65 25 3d 73 74 77 25  20 8b 20 78 6d 6f 76 65  |ve%=stw% . xmove|
00007c20  25 3d 30 0d 05 fb 46 e7  20 6e 75 6d 25 20 83 31  |%=0...F. num% .1|
00007c30  32 3d 30 20 8c 20 c8 99  20 63 74 5f 73 65 74 67  |2=0 . .. ct_setg|
00007c40  63 6f 6c 25 2c a4 6c 28  31 31 29 20 8b 20 c8 99  |col%,.l(11) . ..|
00007c50  20 63 74 5f 73 65 74 67  63 6f 6c 25 2c a4 6c 28  | ct_setgcol%,.l(|
00007c60  67 72 69 64 63 6f 6c 25  29 0d 05 fc 19 e7 20 6e  |gridcol%)..... n|
00007c70  75 6d 25 3c 31 30 20 8c  20 78 6d 6f 76 65 25 2d  |um%<10 . xmove%-|
00007c80  3d 38 0d 05 fd 27 ec 20  78 63 25 2b 28 78 25 2d  |=8...'. xc%+(x%-|
00007c90  31 29 2a 73 74 77 25 2d  78 6d 6f 76 65 25 2b 73  |1)*stw%-xmove%+s|
00007ca0  63 6c 25 2c 79 63 25 2d  34 0d 05 fe 17 e7 20 6e  |cl%,yc%-4..... n|
00007cb0  75 6d 25 3c 3e 30 20 8c  20 f1 20 3b 6e 75 6d 25  |um%<>0 . . ;num%|
00007cc0  0d 05 ff 39 ec 20 78 63  25 2b 28 78 25 2d 31 29  |...9. xc%+(x%-1)|
00007cd0  2a 73 74 77 25 2d 78 6d  6f 76 65 25 2b 73 63 6c  |*stw%-xmove%+scl|
00007ce0  25 2c 79 63 25 2b 67 72  69 64 68 65 69 67 68 74  |%,yc%+gridheight|
00007cf0  25 2a 72 68 74 25 2b 33  32 0d 06 00 17 e7 20 6e  |%*rht%+32..... n|
00007d00  75 6d 25 3c 3e 30 20 8c  20 f1 20 3b 6e 75 6d 25  |um%<>0 . . ;num%|
00007d10  0d 06 01 05 cd 0d 06 02  05 cd 0d 06 03 08 ed 20  |............... |
00007d20  78 25 0d 06 04 04 0d 06  05 14 6e 75 6d 6d 69 6e  |x%........nummin|
00007d30  25 3d 73 6d 69 6e 79 25  2d 31 0d 06 06 14 6e 75  |%=sminy%-1....nu|
00007d40  6d 6d 61 78 25 3d 73 6d  61 78 79 25 2b 31 0d 06  |mmax%=smaxy%+1..|
00007d50  07 18 6e 75 6d 6d 69 6e  25 2d 3d 6e 75 6d 6d 69  |..nummin%-=nummi|
00007d60  6e 25 20 83 20 32 0d 06  08 18 6e 75 6d 6d 61 78  |n% . 2....nummax|
00007d70  25 2b 3d 6e 75 6d 6d 61  78 25 20 83 20 32 0d 06  |%+=nummax% . 2..|
00007d80  09 1b e7 20 6e 75 6d 6d  69 6e 25 3c 30 20 8c 20  |... nummin%<0 . |
00007d90  6e 75 6d 6d 69 6e 25 3d  30 0d 06 0a 2f e7 20 6e  |nummin%=0.../. n|
00007da0  75 6d 6d 61 78 25 3e 67  72 69 64 68 65 69 67 68  |ummax%>gridheigh|
00007db0  74 25 20 8c 20 6e 75 6d  6d 61 78 25 3d 67 72 69  |t% . nummax%=gri|
00007dc0  64 68 65 69 67 68 74 25  0d 06 0b 1e e3 20 79 25  |dheight%..... y%|
00007dd0  3d 6e 75 6d 6d 69 6e 25  20 b8 20 6e 75 6d 6d 61  |=nummin% . numma|
00007de0  78 25 20 88 20 32 0d 06  0c 25 e7 20 79 25 3d 30  |x% . 2...%. y%=0|
00007df0  20 8c 20 79 6d 6f 76 65  25 3d 31 32 20 8b 20 79  | . ymove%=12 . y|
00007e00  6d 6f 76 65 25 3d 2d 73  63 6c 25 0d 06 0d 22 e7  |move%=-scl%...".|
00007e10  20 79 25 3c 31 30 20 8c  20 78 6d 6f 76 65 25 3d  | y%<10 . xmove%=|
00007e20  31 36 20 8b 20 78 6d 6f  76 65 25 3d 30 0d 06 0e  |16 . xmove%=0...|
00007e30  18 e7 20 79 25 3e 39 39  20 8c 20 78 6d 6f 76 65  |.. y%>99 . xmove|
00007e40  25 3d 2d 31 36 0d 06 0f  44 e7 20 79 25 20 83 31  |%=-16...D. y% .1|
00007e50  30 3d 30 20 8c 20 c8 99  20 63 74 5f 73 65 74 67  |0=0 . .. ct_setg|
00007e60  63 6f 6c 25 2c a4 6c 28  31 31 29 20 8b 20 c8 99  |col%,.l(11) . ..|
00007e70  20 63 74 5f 73 65 74 67  63 6f 6c 25 2c a4 6c 28  | ct_setgcol%,.l(|
00007e80  67 72 69 64 63 6f 6c 25  29 0d 06 10 28 ec 20 78  |gridcol%)...(. x|
00007e90  63 25 2d 33 36 2b 78 6d  6f 76 65 25 2c 79 63 25  |c%-36+xmove%,yc%|
00007ea0  2b 79 25 2a 72 68 74 25  2d 32 2b 79 6d 6f 76 65  |+y%*rht%-2+ymove|
00007eb0  25 0d 06 11 09 f1 20 3b  79 25 0d 06 12 30 ec 20  |%..... ;y%...0. |
00007ec0  78 63 25 2b 67 72 69 64  77 69 64 74 68 25 2a 73  |xc%+gridwidth%*s|
00007ed0  74 77 25 2b 34 2c 79 63  25 2b 79 25 2a 72 68 74  |tw%+4,yc%+y%*rht|
00007ee0  25 2d 32 2b 79 6d 6f 76  65 25 0d 06 13 09 f1 20  |%-2+ymove%..... |
00007ef0  3b 79 25 0d 06 14 08 ed  20 79 25 0d 06 15 1f c8  |;y%..... y%.....|
00007f00  99 20 63 74 5f 73 65 74  67 63 6f 6c 25 2c a4 6c  |. ct_setgcol%,.l|
00007f10  28 67 72 69 64 63 6f 6c  25 29 0d 06 16 04 0d 06  |(gridcol%)......|
00007f20  17 2c 79 6c 25 3d 79 63  25 2b 73 6d 69 6e 79 25  |.,yl%=yc%+sminy%|
00007f30  2a 72 68 74 25 3a 20 79  68 25 3d 79 63 25 2b 73  |*rht%: yh%=yc%+s|
00007f40  6d 61 78 79 25 2a 72 68  74 25 0d 06 18 18 e3 20  |maxy%*rht%..... |
00007f50  78 25 3d 73 6d 69 6e 78  25 20 b8 20 73 6d 61 78  |x%=sminx% . smax|
00007f60  78 25 0d 06 19 52 e7 20  28 67 72 69 64 77 69 64  |x%...R. (gridwid|
00007f70  74 68 25 2f 32 2d 78 25  29 83 31 32 3d 30 20 8c  |th%/2-x%).12=0 .|
00007f80  20 c8 99 20 63 74 5f 73  65 74 67 63 6f 6c 25 2c  | .. ct_setgcol%,|
00007f90  a4 6c 28 31 31 29 20 8b  20 c8 99 20 63 74 5f 73  |.l(11) . .. ct_s|
00007fa0  65 74 67 63 6f 6c 25 2c  a4 6c 28 67 72 69 64 63  |etgcol%,.l(gridc|
00007fb0  6f 6c 25 29 0d 06 1a 15  ec 20 78 63 25 2b 78 25  |ol%)..... xc%+x%|
00007fc0  2a 73 74 77 25 2c 79 6c  25 0d 06 1b 15 df 20 78  |*stw%,yl%..... x|
00007fd0  63 25 2b 78 25 2a 73 74  77 25 2c 79 68 25 0d 06  |c%+x%*stw%,yh%..|
00007fe0  1c 08 ed 20 78 25 0d 06  1d 04 0d 06 1e 2c 78 6c  |... x%.......,xl|
00007ff0  25 3d 78 63 25 2b 73 6d  69 6e 78 25 2a 73 74 77  |%=xc%+sminx%*stw|
00008000  25 3a 20 78 68 25 3d 78  63 25 2b 73 6d 61 78 78  |%: xh%=xc%+smaxx|
00008010  25 2a 73 74 77 25 0d 06  1f 18 e3 20 79 25 3d 73  |%*stw%..... y%=s|
00008020  6d 69 6e 79 25 20 b8 20  73 6d 61 78 79 25 0d 06  |miny% . smaxy%..|
00008030  20 45 e7 20 79 25 20 83  20 31 30 3d 30 20 8c 20  | E. y% . 10=0 . |
00008040  c8 99 20 63 74 5f 73 65  74 67 63 6f 6c 25 2c a4  |.. ct_setgcol%,.|
00008050  6c 28 31 31 29 20 8b 20  c8 99 20 63 74 5f 73 65  |l(11) . .. ct_se|
00008060  74 67 63 6f 6c 25 2c a4  6c 28 67 72 69 64 63 6f  |tgcol%,.l(gridco|
00008070  6c 25 29 0d 06 21 15 ec  20 78 6c 25 2c 79 63 25  |l%)..!.. xl%,yc%|
00008080  2b 79 25 2a 72 68 74 25  0d 06 22 15 df 20 78 68  |+y%*rht%..".. xh|
00008090  25 2c 79 63 25 2b 79 25  2a 72 68 74 25 0d 06 23  |%,yc%+y%*rht%..#|
000080a0  08 ed 20 79 25 0d 06 24  04 0d 06 25 27 74 72 61  |.. y%..$...%'tra|
000080b0  6e 73 66 6f 72 6d 25 21  30 20 3d 28 65 64 6d 75  |nsform%!0 =(edmu|
000080c0  6c 25 2f 65 64 64 69 76  25 29 2a 36 35 35 33 36  |l%/eddiv%)*65536|
000080d0  0d 06 26 13 74 72 61 6e  73 66 6f 72 6d 25 21 34  |..&.transform%!4|
000080e0  20 3d 30 0d 06 27 13 74  72 61 6e 73 66 6f 72 6d  | =0..'.transform|
000080f0  25 21 38 20 3d 30 0d 06  28 27 74 72 61 6e 73 66  |%!8 =0..('transf|
00008100  6f 72 6d 25 21 31 32 3d  28 65 64 6d 75 6c 25 2f  |orm%!12=(edmul%/|
00008110  65 64 64 69 76 25 29 2a  36 35 35 33 36 0d 06 29  |eddiv%)*65536..)|
00008120  1c 79 25 3d 79 63 25 2d  79 70 69 78 25 2a 28 67  |.y%=yc%-ypix%*(g|
00008130  72 69 64 6f 6e 25 3d b9  29 0d 06 2a 1d 78 78 25  |ridon%=.)..*.xx%|
00008140  3d 78 63 25 2d 78 70 69  78 25 2a 28 67 72 69 64  |=xc%-xpix%*(grid|
00008150  6f 6e 25 3d b9 29 0d 06  2b 71 e3 77 25 3d 73 6d  |on%=.)..+q.w%=sm|
00008160  69 6e 78 25 b8 73 6d 61  78 78 25 2d 31 3a 78 25  |inx%.smaxx%-1:x%|
00008170  3d 78 78 25 2b 77 25 2a  73 74 77 25 3a 74 72 61  |=xx%+w%*stw%:tra|
00008180  6e 73 66 6f 72 6d 25 21  31 36 3d 78 25 3c 3c 38  |nsform%!16=x%<<8|
00008190  3a e3 68 25 3d 73 6d 69  6e 79 25 b8 73 6d 61 78  |:.h%=sminy%.smax|
000081a0  79 25 2d 31 3a 73 79 6d  62 25 3d 63 6f 6c 74 61  |y%-1:symb%=colta|
000081b0  62 6c 65 25 3f 28 68 25  2a 67 72 69 64 77 69 64  |ble%?(h%*gridwid|
000081c0  74 68 25 2b 77 25 29 0d  06 2c 15 e7 20 28 73 79  |th%+w%)..,.. (sy|
000081d0  6d 62 25 80 31 32 38 29  3d 30 20 8c 0d 06 2d 21  |mb%.128)=0 ...-!|
000081e0  74 72 61 6e 73 66 6f 72  6d 25 21 32 30 3d 28 79  |transform%!20=(y|
000081f0  25 2b 68 25 2a 72 68 74  25 29 3c 3c 38 0d 06 2e  |%+h%*rht%)<<8...|
00008200  48 c8 99 20 26 30 30 30  34 35 35 34 30 2c 30 2c  |H.. &00045540,0,|
00008210  73 79 6d 62 70 6f 69 6e  74 25 21 28 73 79 6d 62  |symbpoint%!(symb|
00008220  25 2a 34 29 2c 73 79 6d  62 73 69 7a 65 25 21 28  |%*4),symbsize%!(|
00008230  73 79 6d 62 25 2a 34 29  2c 74 72 61 6e 73 66 6f  |symb%*4),transfo|
00008240  72 6d 25 2c 30 0d 06 2f  05 cd 0d 06 30 07 ed 3a  |rm%,0../....0..:|
00008250  ed 0d 06 31 05 cb 0d 06  32 20 c8 99 20 26 30 30  |...1....2 .. &00|
00008260  30 30 30 30 32 45 2c 72  30 25 2c 72 31 25 2c 72  |00002E,r0%,r1%,r|
00008270  32 25 2c 72 33 25 0d 06  33 27 c8 99 20 26 30 30  |2%,r3%..3'.. &00|
00008280  30 30 30 30 32 45 2c 32  35 36 2b 31 32 2c 73 63  |00002E,256+12,sc|
00008290  72 61 72 65 61 25 2c 66  6e 61 6d 65 24 0d 06 34  |rarea%,fname$..4|
000082a0  07 f2 76 62 0d 06 35 05  e1 0d 06 36 05 3a 0d 06  |..vb..5....6.:..|
000082b0  37 12 dd 20 a4 6c 28 77  69 6d 70 63 6f 6c 25 29  |7.. .l(wimpcol%)|
000082c0  0d 06 38 11 c8 8e 20 77  69 6d 70 63 6f 6c 25 20  |..8... wimpcol% |
000082d0  ca 0d 06 39 17 c9 20 30  3a 20 72 67 62 25 3d 26  |...9.. 0: rgb%=&|
000082e0  46 46 46 46 46 46 30 30  0d 06 3a 17 c9 20 31 3a  |FFFFFF00..:.. 1:|
000082f0  20 72 67 62 25 3d 26 44  44 44 44 44 44 30 30 0d  | rgb%=&DDDDDD00.|
00008300  06 3b 17 c9 20 32 3a 20  72 67 62 25 3d 26 42 42  |.;.. 2: rgb%=&BB|
00008310  42 42 42 42 30 30 0d 06  3c 17 c9 20 33 3a 20 72  |BBBB00..<.. 3: r|
00008320  67 62 25 3d 26 39 39 39  39 39 39 30 30 0d 06 3d  |gb%=&99999900..=|
00008330  17 c9 20 34 3a 20 72 67  62 25 3d 26 37 37 37 37  |.. 4: rgb%=&7777|
00008340  37 37 30 30 0d 06 3e 17  c9 20 35 3a 20 72 67 62  |7700..>.. 5: rgb|
00008350  25 3d 26 35 35 35 35 35  35 30 30 0d 06 3f 17 c9  |%=&55555500..?..|
00008360  20 36 3a 20 72 67 62 25  3d 26 33 33 33 33 33 33  | 6: rgb%=&333333|
00008370  30 30 0d 06 40 17 c9 20  37 3a 20 72 67 62 25 3d  |00..@.. 7: rgb%=|
00008380  26 30 30 30 30 30 30 30  30 0d 06 41 17 c9 20 38  |&00000000..A.. 8|
00008390  3a 20 72 67 62 25 3d 26  39 39 34 34 30 30 30 30  |: rgb%=&99440000|
000083a0  0d 06 42 17 c9 20 39 3a  20 72 67 62 25 3d 26 30  |..B.. 9: rgb%=&0|
000083b0  30 45 45 45 45 30 30 0d  06 43 17 c9 20 31 30 3a  |0EEEE00..C.. 10:|
000083c0  72 67 62 25 3d 26 30 30  43 43 30 30 30 30 0d 06  |rgb%=&00CC0000..|
000083d0  44 17 c9 20 31 31 3a 72  67 62 25 3d 26 30 30 30  |D.. 11:rgb%=&000|
000083e0  30 44 44 30 30 0d 06 45  17 c9 20 31 32 3a 72 67  |0DD00..E.. 12:rg|
000083f0  62 25 3d 26 42 42 45 45  45 45 30 30 0d 06 46 17  |b%=&BBEEEE00..F.|
00008400  c9 20 31 33 3a 72 67 62  25 3d 26 30 30 38 38 35  |. 13:rgb%=&00885|
00008410  35 30 30 0d 06 47 17 c9  20 31 34 3a 72 67 62 25  |500..G.. 14:rgb%|
00008420  3d 26 30 30 42 42 46 46  30 30 0d 06 48 17 c9 20  |=&00BBFF00..H.. |
00008430  31 35 3a 72 67 62 25 3d  26 46 46 42 42 30 30 30  |15:rgb%=&FFBB000|
00008440  30 0d 06 49 05 cb 0d 06  4a 09 3d 72 67 62 25 0d  |0..I....J.=rgb%.|
00008450  06 4b 05 3a 0d 06 4c 09  dd 20 f2 7a 62 0d 06 4d  |.K.:..L.. .zb..M|
00008460  19 77 69 6d 70 70 61 6c  25 21 30 3d 20 26 46 46  |.wimppal%!0= &FF|
00008470  46 46 46 46 30 30 0d 06  4e 19 77 69 6d 70 70 61  |FFFF00..N.wimppa|
00008480  6c 25 21 34 3d 20 26 44  44 44 44 44 44 30 30 0d  |l%!4= &DDDDDD00.|
00008490  06 4f 19 77 69 6d 70 70  61 6c 25 21 38 3d 20 26  |.O.wimppal%!8= &|
000084a0  42 42 42 42 42 42 30 30  0d 06 50 1a 77 69 6d 70  |BBBBBB00..P.wimp|
000084b0  70 61 6c 25 21 31 32 3d  20 26 39 39 39 39 39 39  |pal%!12= &999999|
000084c0  30 30 0d 06 51 1a 77 69  6d 70 70 61 6c 25 21 31  |00..Q.wimppal%!1|
000084d0  36 3d 20 26 37 37 37 37  37 37 30 30 0d 06 52 1a  |6= &77777700..R.|
000084e0  77 69 6d 70 70 61 6c 25  21 32 30 3d 20 26 35 35  |wimppal%!20= &55|
000084f0  35 35 35 35 30 30 0d 06  53 1a 77 69 6d 70 70 61  |555500..S.wimppa|
00008500  6c 25 21 32 34 3d 20 26  33 33 33 33 33 33 30 30  |l%!24= &33333300|
00008510  0d 06 54 1a 77 69 6d 70  70 61 6c 25 21 32 38 3d  |..T.wimppal%!28=|
00008520  20 26 30 30 30 30 30 30  30 30 0d 06 55 1a 77 69  | &00000000..U.wi|
00008530  6d 70 70 61 6c 25 21 33  32 3d 20 26 39 39 34 34  |mppal%!32= &9944|
00008540  30 30 30 30 0d 06 56 1a  77 69 6d 70 70 61 6c 25  |0000..V.wimppal%|
00008550  21 33 36 3d 20 26 30 30  45 45 45 45 30 30 0d 06  |!36= &00EEEE00..|
00008560  57 1a 77 69 6d 70 70 61  6c 25 21 34 30 3d 20 26  |W.wimppal%!40= &|
00008570  30 30 43 43 30 30 30 30  0d 06 58 1a 77 69 6d 70  |00CC0000..X.wimp|
00008580  70 61 6c 25 21 34 34 3d  20 26 30 30 30 30 44 44  |pal%!44= &0000DD|
00008590  30 30 0d 06 59 1a 77 69  6d 70 70 61 6c 25 21 34  |00..Y.wimppal%!4|
000085a0  38 3d 20 26 42 42 45 45  45 45 30 30 0d 06 5a 1a  |8= &BBEEEE00..Z.|
000085b0  77 69 6d 70 70 61 6c 25  21 35 32 3d 20 26 30 30  |wimppal%!52= &00|
000085c0  38 38 35 35 30 30 0d 06  5b 1a 77 69 6d 70 70 61  |885500..[.wimppa|
000085d0  6c 25 21 35 36 3d 20 26  30 30 42 42 46 46 30 30  |l%!56= &00BBFF00|
000085e0  0d 06 5c 1a 77 69 6d 70  70 61 6c 25 21 36 30 3d  |..\.wimppal%!60=|
000085f0  20 26 46 46 42 42 30 30  30 30 0d 06 5d 05 e1 0d  | &FFBB0000..]...|
00008600  06 5e 05 3a 0d 06 5f 09  dd 20 f2 76 62 0d 06 60  |.^.:.._.. .vb..`|
00008610  2c e7 20 63 6f 6c 74 61  62 6c 65 25 3c 3e 30 20  |,. coltable%<>0 |
00008620  8c 20 63 6f 6c 74 61 62  6c 65 25 3d a4 64 28 63  |. coltable%=.d(c|
00008630  6f 6c 74 61 62 6c 65 25  29 0d 06 61 2f e7 20 6e  |oltable%)..a/. n|
00008640  61 6d 65 74 61 62 6c 65  25 3c 3e 30 20 8c 20 6e  |ametable%<>0 . n|
00008650  61 6d 65 74 61 62 6c 65  25 3d a4 64 28 6e 61 6d  |ametable%=.d(nam|
00008660  65 74 61 62 6c 65 25 29  0d 06 62 2c e7 20 70 61  |etable%)..b,. pa|
00008670  6c 74 61 62 6c 65 25 3c  3e 30 20 8c 20 70 61 6c  |ltable%<>0 . pal|
00008680  74 61 62 6c 65 25 3d a4  64 28 70 61 6c 74 61 62  |table%=.d(paltab|
00008690  6c 65 25 29 0d 06 63 2f  e7 20 73 6f 75 72 63 65  |le%)..c/. source|
000086a0  73 70 72 25 3c 3e 30 20  8c 20 73 6f 75 72 63 65  |spr%<>0 . source|
000086b0  73 70 72 25 3d a4 64 28  73 6f 75 72 63 65 73 70  |spr%=.d(sourcesp|
000086c0  72 25 29 0d 06 64 20 e7  20 64 72 61 77 25 3c 3e  |r%)..d . draw%<>|
000086d0  30 20 8c 20 64 72 61 77  25 3d a4 64 28 64 72 61  |0 . draw%=.d(dra|
000086e0  77 25 29 0d 06 65 29 e7  20 73 63 72 61 72 65 61  |w%)..e). scrarea|
000086f0  25 3c 3e 30 20 8c 20 73  63 72 61 72 65 61 25 3d  |%<>0 . scrarea%=|
00008700  a4 64 28 73 63 72 61 72  65 61 25 29 0d 06 66 32  |.d(scrarea%)..f2|
00008710  e7 20 74 72 61 6e 73 74  61 62 6c 65 25 3c 3e 30  |. transtable%<>0|
00008720  20 8c 20 74 72 61 6e 73  74 61 62 6c 65 25 3d a4  | . transtable%=.|
00008730  64 28 74 72 61 6e 73 74  61 62 6c 65 25 29 0d 06  |d(transtable%)..|
00008740  67 2f e7 20 73 79 6d 62  73 74 6f 72 65 25 3c 3e  |g/. symbstore%<>|
00008750  30 20 8c 20 73 79 6d 62  73 74 6f 72 65 25 3d a4  |0 . symbstore%=.|
00008760  64 28 73 79 6d 62 73 74  6f 72 65 25 29 0d 06 68  |d(symbstore%)..h|
00008770  2f e7 20 73 79 6d 62 70  6f 69 6e 74 25 3c 3e 30  |/. symbpoint%<>0|
00008780  20 8c 20 73 79 6d 62 70  6f 69 6e 74 25 3d a4 64  | . symbpoint%=.d|
00008790  28 73 79 6d 62 70 6f 69  6e 74 25 29 0d 06 69 2c  |(symbpoint%)..i,|
000087a0  e7 20 73 79 6d 62 73 69  7a 65 25 3c 3e 30 20 8c  |. symbsize%<>0 .|
000087b0  20 73 79 6d 62 73 69 7a  65 25 3d a4 64 28 73 79  | symbsize%=.d(sy|
000087c0  6d 62 73 69 7a 65 25 29  0d 06 6a 38 e7 20 64 65  |mbsize%)..j8. de|
000087d0  73 63 69 6e 66 6f 62 75  66 66 25 3c 3e 30 20 8c  |scinfobuff%<>0 .|
000087e0  20 64 65 73 63 69 6e 66  6f 62 75 66 66 25 3d a4  | descinfobuff%=.|
000087f0  64 28 64 65 73 63 69 6e  66 6f 62 75 66 66 25 29  |d(descinfobuff%)|
00008800  0d 06 6b 2c e7 20 64 65  73 63 62 75 66 66 25 3c  |..k,. descbuff%<|
00008810  3e 30 20 8c 20 64 65 73  63 62 75 66 66 25 3d a4  |>0 . descbuff%=.|
00008820  64 28 64 65 73 63 62 75  66 66 25 29 0d 06 6c 47  |d(descbuff%)..lG|
00008830  e7 20 65 78 74 72 61 64  65 73 63 69 6e 66 6f 62  |. extradescinfob|
00008840  75 66 66 25 3c 3e 30 20  8c 20 65 78 74 72 61 64  |uff%<>0 . extrad|
00008850  65 73 63 69 6e 66 6f 62  75 66 66 25 3d a4 64 28  |escinfobuff%=.d(|
00008860  65 78 74 72 61 64 65 73  63 69 6e 66 6f 62 75 66  |extradescinfobuf|
00008870  66 25 29 0d 06 6d 3b e7  20 65 78 74 72 61 64 65  |f%)..m;. extrade|
00008880  73 63 62 75 66 66 25 3c  3e 30 20 8c 20 65 78 74  |scbuff%<>0 . ext|
00008890  72 61 64 65 73 63 62 75  66 66 25 3d a4 64 28 65  |radescbuff%=.d(e|
000088a0  78 74 72 61 64 65 73 63  62 75 66 66 25 29 0d 06  |xtradescbuff%)..|
000088b0  6e 2c e7 20 63 6f 6c 6f  72 64 65 72 25 3c 3e 30  |n,. colorder%<>0|
000088c0  20 8c 20 63 6f 6c 6f 72  64 65 72 25 3d a4 64 28  | . colorder%=.d(|
000088d0  63 6f 6c 6f 72 64 65 72  25 29 0d 06 6f 28 6a 61  |colorder%)..o(ja|
000088e0  63 74 79 70 65 25 3d 30  20 3a 20 72 65 73 74 79  |ctype%=0 : resty|
000088f0  70 65 25 3d 30 20 3a 20  63 6f 6c 74 79 70 65 25  |pe%=0 : coltype%|
00008900  3d 32 0d 06 70 05 e1 0d  06 71 05 3a 0d 06 72 09  |=2..p....q.:..r.|
00008910  dd 20 f2 68 62 0d 06 73  16 c8 99 20 26 30 30 30  |. .hb..s... &000|
00008920  34 30 30 44 32 2c 2d 31  2c 2d 31 0d 06 74 1c f2  |400D2,-1,-1..t..|
00008930  6d 62 28 6d 61 69 6e 25  2c 31 2c 31 3c 3c 32 32  |mb(main%,1,1<<22|
00008940  2c 31 3c 3c 32 32 29 0d  06 75 1d f2 6d 62 28 6d  |,1<<22)..u..mb(m|
00008950  61 69 6e 25 2c 32 2c 33  3c 3c 32 34 2c 31 35 3c  |ain%,2,3<<24,15<|
00008960  3c 32 34 29 0d 06 76 1c  f2 6d 62 28 6d 61 69 6e  |<24)..v..mb(main|
00008970  25 2c 33 2c 31 3c 3c 32  32 2c 31 3c 3c 32 32 29  |%,3,1<<22,1<<22)|
00008980  0d 06 77 1d f2 6d 62 28  6d 61 69 6e 25 2c 37 2c  |..w..mb(main%,7,|
00008990  31 3c 3c 32 34 2c 31 35  3c 3c 32 34 29 0d 06 78  |1<<24,15<<24)..x|
000089a0  0b 6f 70 74 25 3d 2d 31  0d 06 79 38 24 6f 70 74  |.opt%=-1..y8$opt|
000089b0  69 6f 6e 25 3d 22 50 6c  65 61 73 65 20 63 68 6f  |ion%="Please cho|
000089c0  6f 73 65 20 61 20 63 6f  6e 76 65 72 73 69 6f 6e  |ose a conversion|
000089d0  20 70 72 6f 63 65 73 73  20 20 3e 20 3e 20 3e 22  | process  > > >"|
000089e0  0d 06 7a 14 f2 6d 62 28  6d 61 69 6e 25 2c 34 2c  |..z..mb(main%,4,|
000089f0  30 2c 30 29 0d 06 7b 0a  f2 74 62 28 31 29 0d 06  |0,0)..{..tb(1)..|
00008a00  7c 0b f2 78 61 28 2d 31  29 0d 06 7d 05 e1 0d 06  ||..xa(-1)..}....|
00008a10  7e 05 3a 0d 06 7f 08 dd  20 f2 6f 0d 06 80 6d e7  |~.:..... .o...m.|
00008a20  20 bb 28 74 65 6e 73 69  6f 6e 5f 73 71 5f 73 74  | .(tension_sq_st|
00008a30  69 74 63 68 65 73 24 29  3c 3e 30 20 8c 20 73 74  |itches$)<>0 . st|
00008a40  69 74 63 68 5f 77 69 64  74 68 3d bb 28 74 65 6e  |itch_width=.(ten|
00008a50  73 69 6f 6e 5f 73 71 5f  77 69 64 74 68 24 29 2f  |sion_sq_width$)/|
00008a60  bb 28 74 65 6e 73 69 6f  6e 5f 73 71 5f 73 74 69  |.(tension_sq_sti|
00008a70  74 63 68 65 73 24 29 20  8b 20 73 74 69 74 63 68  |tches$) . stitch|
00008a80  5f 77 69 64 74 68 3d 30  0d 06 81 62 e7 20 bb 28  |_width=0...b. .(|
00008a90  74 65 6e 73 69 6f 6e 5f  73 71 5f 72 6f 77 73 24  |tension_sq_rows$|
00008aa0  29 3c 3e 30 20 8c 20 72  6f 77 5f 68 65 69 67 68  |)<>0 . row_heigh|
00008ab0  74 3d bb 28 74 65 6e 73  69 6f 6e 5f 73 71 5f 68  |t=.(tension_sq_h|
00008ac0  65 69 67 68 74 24 29 2f  bb 28 74 65 6e 73 69 6f  |eight$)/.(tensio|
00008ad0  6e 5f 73 71 5f 72 6f 77  73 24 29 20 8b 20 72 6f  |n_sq_rows$) . ro|
00008ae0  77 5f 68 65 69 67 68 74  3d 30 0d 06 82 10 c8 8e  |w_height=0......|
00008af0  20 6d 61 6e 6e 65 72 25  20 ca 0d 06 83 07 c9 20  | manner% ...... |
00008b00  30 0d 06 84 1c 73 74 69  74 63 68 77 69 64 74 68  |0....stitchwidth|
00008b10  3d a4 62 28 bb 67 77 69  64 74 68 24 29 0d 06 85  |=.b(.gwidth$)...|
00008b20  17 72 6f 77 68 74 3d a4  62 28 bb 67 68 65 69 67  |.rowht=.b(.gheig|
00008b30  68 74 24 29 0d 06 86 1f  73 74 69 74 63 68 77 69  |ht$)....stitchwi|
00008b40  64 74 68 25 3d a8 28 73  74 69 74 63 68 77 69 64  |dth%=.(stitchwid|
00008b50  74 68 29 0d 06 87 13 72  6f 77 68 74 25 3d a8 28  |th)....rowht%=.(|
00008b60  72 6f 77 68 74 29 0d 06  88 1a 67 72 69 64 77 69  |rowht)....gridwi|
00008b70  64 74 68 25 3d bb 67 73  74 69 74 63 68 65 73 24  |dth%=.gstitches$|
00008b80  0d 06 89 17 67 72 69 64  68 65 69 67 68 74 25 3d  |....gridheight%=|
00008b90  bb 67 72 6f 77 73 24 0d  06 8a 08 67 25 3d 30 0d  |.grows$....g%=0.|
00008ba0  06 8b 0f 73 70 72 69 74  65 6f 6e 25 3d a3 0d 06  |...spriteon%=...|
00008bb0  8c 07 c9 20 31 0d 06 8d  22 67 72 69 64 77 69 64  |... 1..."gridwid|
00008bc0  74 68 25 3d bb 61 6e 73  5f 63 6f 6e 76 5f 73 74  |th%=.ans_conv_st|
00008bd0  69 74 63 68 65 73 24 0d  06 8e 1f 67 72 69 64 68  |itches$....gridh|
00008be0  65 69 67 68 74 25 3d bb  61 6e 73 5f 63 6f 6e 76  |eight%=.ans_conv|
00008bf0  5f 72 6f 77 73 24 0d 06  8f 20 73 74 69 74 63 68  |_rows$... stitch|
00008c00  77 69 64 74 68 3d a4 62  28 73 74 69 74 63 68 5f  |width=.b(stitch_|
00008c10  77 69 64 74 68 29 0d 06  90 18 72 6f 77 68 74 3d  |width)....rowht=|
00008c20  a4 62 28 72 6f 77 5f 68  65 69 67 68 74 29 0d 06  |.b(row_height)..|
00008c30  91 1f 73 74 69 74 63 68  77 69 64 74 68 25 3d a8  |..stitchwidth%=.|
00008c40  28 73 74 69 74 63 68 77  69 64 74 68 29 0d 06 92  |(stitchwidth)...|
00008c50  13 72 6f 77 68 74 25 3d  a8 28 72 6f 77 68 74 29  |.rowht%=.(rowht)|
00008c60  0d 06 93 08 67 25 3d 30  0d 06 94 1f 73 70 72 69  |....g%=0....spri|
00008c70  74 65 6f 6e 25 3d a4 68  28 73 70 72 69 74 65 6d  |teon%=.h(spritem|
00008c80  65 6e 75 25 2c 34 29 0d  06 95 07 c9 20 32 0d 06  |enu%,4)..... 2..|
00008c90  96 1a 67 72 69 64 77 69  64 74 68 25 3d bb 67 73  |..gridwidth%=.gs|
00008ca0  74 69 74 63 68 65 73 24  0d 06 97 17 67 72 69 64  |titches$....grid|
00008cb0  68 65 69 67 68 74 25 3d  bb 67 72 6f 77 73 24 0d  |height%=.grows$.|
00008cc0  06 98 0d 72 6f 77 68 74  25 3d 33 30 0d 06 99 13  |...rowht%=30....|
00008cd0  73 74 69 74 63 68 77 69  64 74 68 25 3d 33 30 0d  |stitchwidth%=30.|
00008ce0  06 9a 15 72 6f 77 68 74  3d 33 30 3a 20 72 68 74  |...rowht=30: rht|
00008cf0  25 3d 33 30 0d 06 9b 1b  73 74 69 74 63 68 77 69  |%=30....stitchwi|
00008d00  64 74 68 3d 33 30 3a 20  73 74 77 25 3d 33 30 0d  |dth=30: stw%=30.|
00008d10  06 9c 0f 73 70 72 69 74  65 6f 6e 25 3d a3 0d 06  |...spriteon%=...|
00008d20  9d 05 cb 0d 06 9e 15 65  64 6d 75 6c 25 3d bb 24  |.......edmul%=.$|
00008d30  7a 6f 6f 6d 6d 75 6c 25  0d 06 9f 15 65 64 64 69  |zoommul%....eddi|
00008d40  76 25 3d bb 24 7a 6f 6f  6d 64 69 76 25 0d 06 a0  |v%=.$zoomdiv%...|
00008d50  2f 73 74 69 74 63 68 77  69 64 74 68 25 3d a8 28  |/stitchwidth%=.(|
00008d60  28 73 74 69 74 63 68 77  69 64 74 68 2a 65 64 6d  |(stitchwidth*edm|
00008d70  75 6c 25 29 2f 65 64 64  69 76 25 29 0d 06 a1 23  |ul%)/eddiv%)...#|
00008d80  72 6f 77 68 74 25 3d a8  28 28 72 6f 77 68 74 2a  |rowht%=.((rowht*|
00008d90  65 64 6d 75 6c 25 29 2f  65 64 64 69 76 25 29 0d  |edmul%)/eddiv%).|
00008da0  06 a2 15 73 74 77 25 3d  73 74 69 74 63 68 77 69  |...stw%=stitchwi|
00008db0  64 74 68 25 0d 06 a3 0f  72 68 74 25 3d 72 6f 77  |dth%....rht%=row|
00008dc0  68 74 25 0d 06 a4 0d 67  72 69 64 6f 6e 25 3d b9  |ht%....gridon%=.|
00008dd0  0d 06 a5 0f 73 68 6f 77  6d 61 73 6b 25 3d b9 0d  |....showmask%=..|
00008de0  06 a6 10 72 75 6c 65 73  69 7a 65 25 3d 38 30 0d  |...rulesize%=80.|
00008df0  06 a7 0e 74 62 61 72 68  74 25 3d 30 30 0d 06 a8  |...tbarht%=00...|
00008e00  11 c8 8e 20 62 61 63 6b  63 6f 6c 25 20 ca 0d 06  |... backcol% ...|
00008e10  a9 18 c9 20 34 2c 35 2c  36 2c 37 2c 38 2c 31 30  |... 4,5,6,7,8,10|
00008e20  2c 31 31 2c 31 33 0d 06  aa 0e 66 6f 72 65 63 6f  |,11,13....foreco|
00008e30  6c 25 3d 30 0d 06 ab 05  7f 0d 06 ac 0e 66 6f 72  |l%=0.........for|
00008e40  65 63 6f 6c 25 3d 37 0d  06 ad 05 cb 0d 06 ae 0f  |ecol%=7.........|
00008e50  72 68 74 25 3d 72 6f 77  68 74 25 0d 06 af 15 73  |rht%=rowht%....s|
00008e60  74 77 25 3d 73 74 69 74  63 68 77 69 64 74 68 25  |tw%=stitchwidth%|
00008e70  0d 06 b0 15 e7 20 6d 61  6e 6e 65 72 25 3d 32 20  |..... manner%=2 |
00008e80  8c 20 f2 6f 61 0d 06 b1  1b e7 20 a4 68 28 73 70  |. .oa..... .h(sp|
00008e90  72 69 74 65 6d 65 6e 75  25 2c 30 29 3d b9 20 8c  |ritemenu%,0)=. .|
00008ea0  0d 06 b2 33 e7 20 a4 68  28 73 70 72 69 74 65 6d  |...3. .h(spritem|
00008eb0  65 6e 75 25 2c 32 29 20  8c 20 73 63 72 6d 6f 64  |enu%,2) . scrmod|
00008ec0  65 25 3d 31 32 20 8b 20  73 63 72 6d 6f 64 65 25  |e%=12 . scrmode%|
00008ed0  3d 31 35 0d 06 b3 05 cc  0d 06 b4 33 e7 20 a4 68  |=15........3. .h|
00008ee0  28 73 70 72 69 74 65 6d  65 6e 75 25 2c 32 29 20  |(spritemenu%,2) |
00008ef0  8c 20 73 63 72 6d 6f 64  65 25 3d 32 30 20 8b 20  |. scrmode%=20 . |
00008f00  73 63 72 6d 6f 64 65 25  3d 32 31 0d 06 b5 05 cd  |scrmode%=21.....|
00008f10  0d 06 b6 17 78 65 66 25  3d a4 6b 28 73 63 72 6d  |....xef%=.k(scrm|
00008f20  6f 64 65 25 2c 34 29 0d  06 b7 17 79 65 66 25 3d  |ode%,4)....yef%=|
00008f30  a4 6b 28 73 63 72 6d 6f  64 65 25 2c 35 29 0d 06  |.k(scrmode%,5)..|
00008f40  b8 21 78 70 69 78 25 3d  31 3c 3c 78 65 66 25 3a  |.!xpix%=1<<xef%:|
00008f50  20 78 70 69 78 32 25 3d  32 3c 3c 78 65 66 25 0d  | xpix2%=2<<xef%.|
00008f60  06 b9 21 79 70 69 78 25  3d 31 3c 3c 79 65 66 25  |..!ypix%=1<<yef%|
00008f70  3a 20 79 70 69 78 32 25  3d 32 3c 3c 79 65 66 25  |: ypix2%=2<<yef%|
00008f80  0d 06 ba 39 73 63 72 77  69 64 74 68 25 3d 28 67  |...9scrwidth%=(g|
00008f90  72 69 64 77 69 64 74 68  25 2a 73 74 69 74 63 68  |ridwidth%*stitch|
00008fa0  77 69 64 74 68 25 2b 32  2a 72 75 6c 65 73 69 7a  |width%+2*rulesiz|
00008fb0  65 25 29 3e 3e 78 65 66  25 0d 06 bb 35 73 63 72  |e%)>>xef%...5scr|
00008fc0  68 65 69 67 68 74 25 3d  28 67 72 69 64 68 65 69  |height%=(gridhei|
00008fd0  67 68 74 25 2a 72 6f 77  68 74 25 2b 32 2a 72 75  |ght%*rowht%+2*ru|
00008fe0  6c 65 73 69 7a 65 25 29  3e 3e 79 65 66 25 0d 06  |lesize%)>>yef%..|
00008ff0  bc 16 65 64 69 74 68 74  25 3d 73 63 72 68 65 69  |..editht%=scrhei|
00009000  67 68 74 25 0d 06 bd 19  e7 20 70 69 63 74 79 70  |ght%..... pictyp|
00009010  65 24 3d 22 73 70 72 69  74 65 22 20 8c 0d 06 be  |e$="sprite" ....|
00009020  42 e7 20 73 63 72 6d 6f  64 65 25 3d 31 32 20 84  |B. scrmode%=12 .|
00009030  20 73 63 72 6d 6f 64 65  25 3d 32 30 20 8c 20 70  | scrmode%=20 . p|
00009040  61 6c 70 6f 69 6e 74 25  3d 77 69 6d 70 70 61 6c  |alpoint%=wimppal|
00009050  25 20 8b 20 70 61 6c 70  6f 69 6e 74 25 3d 30 0d  |% . palpoint%=0.|
00009060  06 bf 4e c8 99 20 26 30  30 30 34 30 37 34 30 2c  |..N.. &00040740,|
00009070  73 6f 75 72 63 65 73 70  72 25 2c 73 6f 75 72 63  |sourcespr%,sourc|
00009080  65 61 64 64 72 25 2c 73  63 72 6d 6f 64 65 25 2c  |eaddr%,scrmode%,|
00009090  70 61 6c 70 6f 69 6e 74  25 2c 30 2c 31 2c 30 2c  |palpoint%,0,1,0,|
000090a0  30 20 b8 20 2c 2c 2c 2c  73 69 7a 65 25 0d 06 c0  |0 . ,,,,size%...|
000090b0  19 74 72 61 6e 73 74 61  62 6c 65 25 3d a4 61 28  |.transtable%=.a(|
000090c0  73 69 7a 65 25 29 0d 06  c1 4c c8 99 20 26 30 30  |size%)...L.. &00|
000090d0  30 34 30 37 34 30 2c 73  6f 75 72 63 65 73 70 72  |040740,sourcespr|
000090e0  25 2c 73 6f 75 72 63 65  61 64 64 72 25 2c 73 63  |%,sourceaddr%,sc|
000090f0  72 6d 6f 64 65 25 2c 70  61 6c 70 6f 69 6e 74 25  |rmode%,palpoint%|
00009100  2c 74 72 61 6e 73 74 61  62 6c 65 25 2c 31 2c 30  |,transtable%,1,0|
00009110  2c 30 0d 06 c2 05 cd 0d  06 c3 05 e1 0d 06 c4 05  |,0..............|
00009120  3a 0d 06 c5 0c dd 20 a4  62 28 63 6d 29 0d 06 c6  |:..... .b(cm)...|
00009130  0c ea 20 66 61 63 74 6f  72 0d 06 c7 13 e7 20 75  |.. factor..... u|
00009140  6e 69 74 6d 65 6e 75 25  3d b9 20 8c 0d 06 c8 0e  |nitmenu%=. .....|
00009150  66 61 63 74 6f 72 3d 31  38 30 0d 06 c9 05 cc 0d  |factor=180......|
00009160  06 ca 11 66 61 63 74 6f  72 3d 37 30 2e 38 36 36  |...factor=70.866|
00009170  0d 06 cb 05 cd 0d 06 cc  0e 3d 63 6d 2a 66 61 63  |.........=cm*fac|
00009180  74 6f 72 0d 06 cd 05 3a  0d 06 ce 09 dd 20 f2 6f  |tor....:..... .o|
00009190  61 0d 06 cf 58 ea 20 69  25 2c 63 25 2c 73 69 7a  |a...X. i%,c%,siz|
000091a0  65 25 2c 6e 75 6d 25 2c  6f 6c 64 69 25 2c 70 74  |e%,num%,oldi%,pt|
000091b0  72 25 2c 70 6f 63 68 6c  65 25 2c 65 78 74 72 61  |r%,pochle%,extra|
000091c0  73 79 6d 62 25 2c 65 78  74 72 61 73 69 7a 65 25  |symb%,extrasize%|
000091d0  2c 65 78 74 72 61 6e 75  6d 25 2c 65 78 74 72 61  |,extranum%,extra|
000091e0  69 25 2c 66 6c 61 67 73  25 0d 06 d0 04 0d 06 d1  |i%,flags%.......|
000091f0  47 c8 99 20 26 30 30 30  30 30 30 32 39 2c 32 38  |G.. &00000029,28|
00009200  2c 22 3c 4b 6e 69 74 43  6f 6e 76 24 44 69 72 3e  |,"<KnitConv$Dir>|
00009210  2e 52 65 73 6f 75 72 63  65 73 2e 53 79 6d 62 6f  |.Resources.Symbo|
00009220  6c 73 2e 2a 22 20 b8 20  2c 2c 73 69 7a 65 25 2c  |ls.*" . ,,size%,|
00009230  6e 75 6d 25 0d 06 d2 46  c8 99 20 26 30 30 30 30  |num%...F.. &0000|
00009240  30 30 32 39 2c 32 38 2c  22 3c 4b 6e 69 74 43 6f  |0029,28,"<KnitCo|
00009250  6e 76 24 44 69 72 3e 2e  52 65 73 6f 75 72 63 65  |nv$Dir>.Resource|
00009260  73 2e 53 79 6d 62 6f 6c  73 2e 44 65 73 63 72 69  |s.Symbols.Descri|
00009270  62 65 22 20 b8 20 2c 2c  69 25 0d 06 d3 0b 6e 75  |be" . ,,i%....nu|
00009280  6d 25 2d 3d 31 0d 06 d4  50 c8 99 20 26 30 30 30  |m%-=1...P.. &000|
00009290  32 30 30 32 39 2c 32 38  2c 22 3c 4b 6e 69 74 43  |20029,28,"<KnitC|
000092a0  6f 6e 76 24 44 69 72 3e  2e 5e 2e 53 79 6d 62 6f  |onv$Dir>.^.Symbo|
000092b0  6c 73 2e 2a 22 20 b8 20  2c 2c 65 78 74 72 61 73  |ls.*" . ,,extras|
000092c0  69 7a 65 25 2c 65 78 74  72 61 6e 75 6d 25 3b 66  |ize%,extranum%;f|
000092d0  6c 61 67 73 25 0d 06 d5  16 e7 20 28 66 6c 61 67  |lags%..... (flag|
000092e0  73 25 20 80 20 31 29 3d  31 20 8c 0d 06 d6 1c 65  |s% . 1)=1 .....e|
000092f0  78 74 72 61 73 69 7a 65  25 3d 30 3a 65 78 74 72  |xtrasize%=0:extr|
00009300  61 6e 75 6d 25 3d 30 0d  06 d7 10 65 78 74 72 61  |anum%=0....extra|
00009310  73 79 6d 62 25 3d a3 0d  06 d8 05 cc 0d 06 d9 10  |symb%=..........|
00009320  65 78 74 72 61 73 79 6d  62 25 3d b9 0d 06 da 05  |extrasymb%=.....|
00009330  cd 0d 06 db 4a c8 99 20  26 30 30 30 32 30 30 32  |....J.. &0002002|
00009340  39 2c 32 38 2c 22 3c 4b  6e 69 74 43 6f 6e 76 24  |9,28,"<KnitConv$|
00009350  44 69 72 3e 2e 5e 2e 53  79 6d 62 6f 6c 73 2e 44  |Dir>.^.Symbols.D|
00009360  65 73 63 72 69 62 65 22  20 b8 20 2c 2c 65 78 74  |escribe" . ,,ext|
00009370  72 61 69 25 3b 66 6c 61  67 73 25 0d 06 dc 4b e7  |rai%;flags%...K.|
00009380  20 28 66 6c 61 67 73 25  20 80 20 31 29 3d 31 20  | (flags% . 1)=1 |
00009390  8c 20 65 78 74 72 61 69  25 3d 30 20 8b 20 65 78  |. extrai%=0 . ex|
000093a0  74 72 61 6e 75 6d 25 2d  3d 31 3a e7 20 65 78 74  |tranum%-=1:. ext|
000093b0  72 61 6e 75 6d 25 3c 30  20 8c 20 65 78 74 72 61  |ranum%<0 . extra|
000093c0  6e 75 6d 25 3d 30 0d 06  dd 1d 73 79 6d 62 6d 61  |num%=0....symbma|
000093d0  78 25 3d 6e 75 6d 25 2b  65 78 74 72 61 6e 75 6d  |x%=num%+extranum|
000093e0  25 2d 31 0d 06 de 0f 69  25 2b 3d 65 78 74 72 61  |%-1....i%+=extra|
000093f0  69 25 0d 06 df 26 73 79  6d 62 73 74 6f 72 65 25  |i%...&symbstore%|
00009400  3d a4 61 28 73 69 7a 65  25 2b 65 78 74 72 61 73  |=.a(size%+extras|
00009410  69 7a 65 25 2d 69 25 29  0d 06 e0 25 73 79 6d 62  |ize%-i%)...%symb|
00009420  70 6f 69 6e 74 25 3d a4  61 28 28 6e 75 6d 25 2b  |point%=.a((num%+|
00009430  65 78 74 72 61 6e 75 6d  25 29 2a 34 29 0d 06 e1  |extranum%)*4)...|
00009440  24 73 79 6d 62 73 69 7a  65 25 3d a4 61 28 28 6e  |$symbsize%=.a((n|
00009450  75 6d 25 2b 65 78 74 72  61 6e 75 6d 25 29 2a 34  |um%+extranum%)*4|
00009460  29 0d 06 e2 2f e7 20 6e  61 6d 65 74 61 62 6c 65  |).../. nametable|
00009470  25 3c 3e 30 20 8c 20 6e  61 6d 65 74 61 62 6c 65  |%<>0 . nametable|
00009480  25 3d a4 64 28 6e 61 6d  65 74 61 62 6c 65 25 29  |%=.d(nametable%)|
00009490  0d 06 e3 26 6e 61 6d 65  74 61 62 6c 65 25 3d a4  |...&nametable%=.|
000094a0  61 28 28 6e 75 6d 25 2b  65 78 74 72 61 6e 75 6d  |a((num%+extranum|
000094b0  25 29 2a 31 31 29 0d 06  e4 04 0d 06 e5 4d c8 99  |%)*11).......M..|
000094c0  26 30 30 30 30 30 30 30  43 2c 39 2c 22 3c 4b 6e  |&0000000C,9,"<Kn|
000094d0  69 74 43 6f 6e 76 24 44  69 72 3e 2e 52 65 73 6f  |itConv$Dir>.Reso|
000094e0  75 72 63 65 73 2e 53 79  6d 62 6f 6c 73 22 2c 62  |urces.Symbols",b|
000094f0  6c 6f 63 6b 25 2c 6e 75  6d 25 2b 31 2c 30 2c 33  |lock%,num%+1,0,3|
00009500  30 30 30 2c 22 2a 22 0d  06 e6 21 69 25 3d 30 20  |000,"*"...!i%=0 |
00009510  3a 20 6f 6c 64 69 25 3d  62 6c 6f 63 6b 25 3a 70  |: oldi%=block%:p|
00009520  6f 63 68 6c 65 25 3d 30  0d 06 e7 11 e3 20 63 25  |ochle%=0..... c%|
00009530  3d 30 20 b8 20 6e 75 6d  25 0d 06 e8 13 c8 95 20  |=0 . num%...... |
00009540  62 6c 6f 63 6b 25 3f 69  25 3c 3e 30 0d 06 e9 09  |block%?i%<>0....|
00009550  69 25 2b 3d 31 0d 06 ea  05 ce 0d 06 eb 10 62 6c  |i%+=1.........bl|
00009560  6f 63 6b 25 3f 69 25 3d  31 33 0d 06 ec 1b e7 20  |ock%?i%=13..... |
00009570  24 28 6f 6c 64 69 25 29  3d 22 44 65 73 63 72 69  |$(oldi%)="Descri|
00009580  62 65 22 20 8c 0d 06 ed  0d 70 6f 63 68 6c 65 25  |be" .....pochle%|
00009590  3d 31 0d 06 ee 05 cc 0d  06 ef 2a 24 28 6e 61 6d  |=1........*$(nam|
000095a0  65 74 61 62 6c 65 25 2b  28 63 25 2d 70 6f 63 68  |etable%+(c%-poch|
000095b0  6c 65 25 29 2a 31 31 29  3d 24 28 6f 6c 64 69 25  |le%)*11)=$(oldi%|
000095c0  29 0d 06 f0 05 cd 0d 06  f1 09 69 25 2b 3d 31 0d  |).........i%+=1.|
000095d0  06 f2 13 6f 6c 64 69 25  3d 62 6c 6f 63 6b 25 2b  |...oldi%=block%+|
000095e0  69 25 0d 06 f3 08 ed 20  63 25 0d 06 f4 13 63 25  |i%..... c%....c%|
000095f0  3d 30 3a 20 70 6f 63 68  6c 65 25 3d 30 0d 06 f5  |=0: pochle%=0...|
00009600  04 0d 06 f6 13 e3 20 69  25 3d 30 20 b8 20 6e 75  |...... i%=0 . nu|
00009610  6d 25 2d 31 0d 06 f7 41  70 61 74 68 24 3d 22 3c  |m%-1...Apath$="<|
00009620  4b 6e 69 74 43 6f 6e 76  24 44 69 72 3e 2e 52 65  |KnitConv$Dir>.Re|
00009630  73 6f 75 72 63 65 73 2e  53 79 6d 62 6f 6c 73 2e  |sources.Symbols.|
00009640  22 2b 24 28 6e 61 6d 65  74 61 62 6c 65 25 2b 69  |"+$(nametable%+i|
00009650  25 2a 31 31 29 0d 06 f8  35 c8 99 26 30 30 30 30  |%*11)...5..&0000|
00009660  30 30 30 38 2c 26 46 46  2c 70 61 74 68 24 2c 73  |0008,&FF,path$,s|
00009670  79 6d 62 73 74 6f 72 65  25 2b 63 25 2c 30 20 b8  |ymbstore%+c%,0 .|
00009680  20 2c 2c 2c 2c 73 69 7a  65 25 0d 06 f9 23 73 79  | ,,,,size%...#sy|
00009690  6d 62 70 6f 69 6e 74 25  21 28 69 25 2a 34 29 3d  |mbpoint%!(i%*4)=|
000096a0  73 79 6d 62 73 74 6f 72  65 25 2b 63 25 0d 06 fa  |symbstore%+c%...|
000096b0  1a 73 79 6d 62 73 69 7a  65 25 21 28 69 25 2a 34  |.symbsize%!(i%*4|
000096c0  29 3d 73 69 7a 65 25 0d  06 fb 0d 63 25 2b 3d 73  |)=size%....c%+=s|
000096d0  69 7a 65 25 0d 06 fc 08  ed 20 69 25 0d 06 fd 14  |ize%..... i%....|
000096e0  e7 20 65 78 74 72 61 73  79 6d 62 25 3d b9 20 8c  |. extrasymb%=. .|
000096f0  0d 06 fe 04 0d 06 ff 0b  70 74 72 25 3d 63 25 0d  |........ptr%=c%.|
00009700  07 00 4a c8 99 26 30 30  30 30 30 30 30 43 2c 39  |..J..&0000000C,9|
00009710  2c 22 3c 4b 6e 69 74 43  6f 6e 76 24 44 69 72 3e  |,"<KnitConv$Dir>|
00009720  2e 5e 2e 53 79 6d 62 6f  6c 73 22 2c 62 6c 6f 63  |.^.Symbols",bloc|
00009730  6b 25 2c 65 78 74 72 61  6e 75 6d 25 2b 31 2c 30  |k%,extranum%+1,0|
00009740  2c 33 30 30 30 2c 22 2a  22 0d 07 01 21 69 25 3d  |,3000,"*"...!i%=|
00009750  30 20 3a 20 6f 6c 64 69  25 3d 62 6c 6f 63 6b 25  |0 : oldi%=block%|
00009760  3a 70 6f 63 68 6c 65 25  3d 30 0d 07 02 1e e3 20  |:pochle%=0..... |
00009770  63 25 3d 6e 75 6d 25 20  b8 20 6e 75 6d 25 2b 65  |c%=num% . num%+e|
00009780  78 74 72 61 6e 75 6d 25  0d 07 03 13 c8 95 20 62  |xtranum%...... b|
00009790  6c 6f 63 6b 25 3f 69 25  3c 3e 30 0d 07 04 09 69  |lock%?i%<>0....i|
000097a0  25 2b 3d 31 0d 07 05 05  ce 0d 07 06 10 62 6c 6f  |%+=1.........blo|
000097b0  63 6b 25 3f 69 25 3d 31  33 0d 07 07 1b e7 20 24  |ck%?i%=13..... $|
000097c0  28 6f 6c 64 69 25 29 3d  22 44 65 73 63 72 69 62  |(oldi%)="Describ|
000097d0  65 22 20 8c 0d 07 08 0d  70 6f 63 68 6c 65 25 3d  |e" .....pochle%=|
000097e0  31 0d 07 09 05 cc 0d 07  0a 2a 24 28 6e 61 6d 65  |1........*$(name|
000097f0  74 61 62 6c 65 25 2b 28  63 25 2d 70 6f 63 68 6c  |table%+(c%-pochl|
00009800  65 25 29 2a 31 31 29 3d  24 28 6f 6c 64 69 25 29  |e%)*11)=$(oldi%)|
00009810  0d 07 0b 05 cd 0d 07 0c  09 69 25 2b 3d 31 0d 07  |.........i%+=1..|
00009820  0d 13 6f 6c 64 69 25 3d  62 6c 6f 63 6b 25 2b 69  |..oldi%=block%+i|
00009830  25 0d 07 0e 08 ed 20 63  25 0d 07 0f 16 63 25 3d  |%..... c%....c%=|
00009840  70 74 72 25 3a 20 70 6f  63 68 6c 65 25 3d 30 0d  |ptr%: pochle%=0.|
00009850  07 10 04 0d 07 11 20 e3  20 69 25 3d 6e 75 6d 25  |...... . i%=num%|
00009860  20 b8 20 6e 75 6d 25 2b  65 78 74 72 61 6e 75 6d  | . num%+extranum|
00009870  25 2d 31 0d 07 12 39 70  61 74 68 24 3d 22 3c 4b  |%-1...9path$="<K|
00009880  6e 69 74 43 6f 6e 76 24  44 69 72 3e 2e 5e 2e 53  |nitConv$Dir>.^.S|
00009890  79 6d 62 6f 6c 73 2e 22  2b 24 28 6e 61 6d 65 74  |ymbols."+$(namet|
000098a0  61 62 6c 65 25 2b 69 25  2a 31 31 29 0d 07 13 35  |able%+i%*11)...5|
000098b0  c8 99 26 30 30 30 30 30  30 30 38 2c 26 46 46 2c  |..&00000008,&FF,|
000098c0  70 61 74 68 24 2c 73 79  6d 62 73 74 6f 72 65 25  |path$,symbstore%|
000098d0  2b 63 25 2c 30 20 b8 20  2c 2c 2c 2c 73 69 7a 65  |+c%,0 . ,,,,size|
000098e0  25 0d 07 14 23 73 79 6d  62 70 6f 69 6e 74 25 21  |%...#symbpoint%!|
000098f0  28 69 25 2a 34 29 3d 73  79 6d 62 73 74 6f 72 65  |(i%*4)=symbstore|
00009900  25 2b 63 25 0d 07 15 1a  73 79 6d 62 73 69 7a 65  |%+c%....symbsize|
00009910  25 21 28 69 25 2a 34 29  3d 73 69 7a 65 25 0d 07  |%!(i%*4)=size%..|
00009920  16 0d 63 25 2b 3d 73 69  7a 65 25 0d 07 17 08 ed  |..c%+=size%.....|
00009930  20 69 25 0d 07 18 05 cd  0d 07 19 05 e1 0d 07 1a  | i%.............|
00009940  05 3a 0d 07 1b 11 dd 20  f2 6a 61 28 66 6e 61 6d  |.:..... .ja(fnam|
00009950  65 24 29 0d 07 1c 4f ea  20 63 6f 6c 6e 75 6d 25  |e$)...O. colnum%|
00009960  2c 74 6f 70 72 6f 77 25  2c 62 6c 61 6e 6b 25 2c  |,toprow%,blank%,|
00009970  6c 69 6e 65 25 2c 73 74  69 74 63 68 25 2c 6e 74  |line%,stitch%,nt|
00009980  61 62 6c 65 73 69 7a 65  25 2c 6e 74 61 62 6c 65  |ablesize%,ntable|
00009990  25 2c 6e 65 77 72 6f 77  25 2c 6e 65 77 72 6f 77  |%,newrow%,newrow|
000099a0  73 25 0d 07 1d 51 ea 20  63 6f 6c 6f 72 64 65 72  |s%...Q. colorder|
000099b0  25 2c 6e 65 78 74 63 6f  6c 25 2c 63 6f 6c 73 66  |%,nextcol%,colsf|
000099c0  6f 75 6e 64 25 2c 63 6f  6c 25 2c 6e 65 77 6c 69  |ound%,col%,newli|
000099d0  6e 65 25 2c 64 75 70 73  25 2c 62 69 67 74 61 62  |ne%,dups%,bigtab|
000099e0  6c 65 25 2c 69 25 2c 6f  6c 64 72 6f 77 25 2c 72  |le%,i%,oldrow%,r|
000099f0  6f 77 25 0d 07 1e 11 e7  20 6d 61 6e 6e 65 72 25  |ow%..... manner%|
00009a00  3d 32 20 8c 0d 07 1f 6b  f2 67 62 28 22 53 6f 72  |=2 ....k.gb("Sor|
00009a10  72 79 2c 20 74 68 65 20  6d 61 6b 65 20 6a 61 63  |ry, the make jac|
00009a20  71 75 61 72 64 20 70 72  6f 63 65 73 73 20 6f 6e  |quard process on|
00009a30  6c 79 20 77 6f 72 6b 73  20 77 69 74 68 20 27 47  |ly works with 'G|
00009a40  72 69 64 20 6f 6e 6c 79  27 20 6f 72 20 27 47 72  |rid only' or 'Gr|
00009a50  69 64 20 26 20 70 69 63  74 75 72 65 27 20 45 61  |id & picture' Ea|
00009a60  73 79 4b 6e 69 74 20 66  69 6c 65 73 2e 22 29 0d  |syKnit files.").|
00009a70  07 20 05 cc 0d 07 21 19  e7 20 a4 68 28 6a 61 63  |. ....!.. .h(jac|
00009a80  6d 65 6e 75 25 2c 32 29  3d 20 b9 20 8c 0d 07 22  |menu%,2)= . ..."|
00009a90  07 f2 6b 61 0d 07 23 05  cc 0d 07 24 07 f2 69 61  |..ka..#....$..ia|
00009aa0  0d 07 25 0e 63 6f 6c 6e  75 6d 25 3d a4 63 0d 07  |..%.colnum%=.c..|
00009ab0  26 0d 74 6f 70 72 6f 77  25 3d 30 0d 07 27 0c 62  |&.toprow%=0..'.b|
00009ac0  6c 61 6e 6b 25 3d b9 0d  07 28 17 6c 69 6e 65 25  |lank%=...(.line%|
00009ad0  3d 67 72 69 64 68 65 69  67 68 74 25 2d 31 0d 07  |=gridheight%-1..|
00009ae0  29 05 f5 0d 07 2a 0d 73  74 69 74 63 68 25 3d 30  |)....*.stitch%=0|
00009af0  0d 07 2b 05 f5 0d 07 2c  3a e7 20 3f 28 63 6f 6c  |..+....,:. ?(col|
00009b00  74 61 62 6c 65 25 2b 6c  69 6e 65 25 2a 67 72 69  |table%+line%*gri|
00009b10  64 77 69 64 74 68 25 2b  73 74 69 74 63 68 25 29  |dwidth%+stitch%)|
00009b20  3c 31 32 38 20 8c 20 62  6c 61 6e 6b 25 3d a3 0d  |<128 . blank%=..|
00009b30  07 2d 0e 73 74 69 74 63  68 25 2b 3d 31 0d 07 2e  |.-.stitch%+=1...|
00009b40  23 fd 20 73 74 69 74 63  68 25 3d 67 72 69 64 77  |#. stitch%=gridw|
00009b50  69 64 74 68 25 20 84 20  62 6c 61 6e 6b 25 3d a3  |idth% . blank%=.|
00009b60  0d 07 2f 0c 6c 69 6e 65  25 2d 3d 31 0d 07 30 19  |../.line%-=1..0.|
00009b70  fd 20 6c 69 6e 65 25 3d  2d 31 20 84 20 62 6c 61  |. line%=-1 . bla|
00009b80  6e 6b 25 3d a3 0d 07 31  13 74 6f 70 72 6f 77 25  |nk%=...1.toprow%|
00009b90  3d 6c 69 6e 65 25 2b 32  0d 07 32 2a 6e 74 61 62  |=line%+2..2*ntab|
00009ba0  6c 65 73 69 7a 65 25 3d  67 72 69 64 77 69 64 74  |lesize%=gridwidt|
00009bb0  68 25 2a 74 6f 70 72 6f  77 25 2a 63 6f 6c 6e 75  |h%*toprow%*colnu|
00009bc0  6d 25 0d 07 33 23 6e 74  61 62 6c 65 73 69 7a 65  |m%..3#ntablesize|
00009bd0  25 3d 6e 74 61 62 6c 65  73 69 7a 65 25 2a 64 6f  |%=ntablesize%*do|
00009be0  75 62 6c 65 25 0d 07 34  1b 6e 74 61 62 6c 65 25  |uble%..4.ntable%|
00009bf0  3d a4 61 28 6e 74 61 62  6c 65 73 69 7a 65 25 29  |=.a(ntablesize%)|
00009c00  0d 07 35 19 63 6f 6c 6f  72 64 65 72 25 3d a4 61  |..5.colorder%=.a|
00009c10  28 63 6f 6c 6e 75 6d 25  29 0d 07 36 18 e3 20 63  |(colnum%)..6.. c|
00009c20  6f 6c 25 3d 30 20 b8 20  63 6f 6c 6e 75 6d 25 2d  |ol%=0 . colnum%-|
00009c30  31 0d 07 37 16 63 6f 6c  6f 72 64 65 72 25 3f 63  |1..7.colorder%?c|
00009c40  6f 6c 25 3d 32 35 35 0d  07 38 0a ed 20 63 6f 6c  |ol%=255..8.. col|
00009c50  25 0d 07 39 0b 6c 69 6e  65 25 3d 30 0d 07 3a 0e  |%..9.line%=0..:.|
00009c60  6e 65 78 74 63 6f 6c 25  3d 30 0d 07 3b 10 63 6f  |nextcol%=0..;.co|
00009c70  6c 73 66 6f 75 6e 64 25  3d 30 0d 07 3c 05 f5 0d  |lsfound%=0..<...|
00009c80  07 3d 0d 73 74 69 74 63  68 25 3d 30 0d 07 3e 05  |.=.stitch%=0..>.|
00009c90  f5 0d 07 3f 2e 63 6f 6c  25 3d 3f 28 63 6f 6c 74  |...?.col%=?(colt|
00009ca0  61 62 6c 65 25 2b 6c 69  6e 65 25 2a 67 72 69 64  |able%+line%*grid|
00009cb0  77 69 64 74 68 25 2b 73  74 69 74 63 68 25 29 0d  |width%+stitch%).|
00009cc0  07 40 12 e7 20 63 6f 6c  25 20 3c 20 31 32 38 20  |.@.. col% < 128 |
00009cd0  8c 0d 07 41 12 63 6f 6c  25 3d 63 6f 6c 25 20 80  |...A.col%=col% .|
00009ce0  20 36 33 0d 07 42 0c 66  6f 75 6e 64 25 3d a3 0d  | 63..B.found%=..|
00009cf0  07 43 08 69 25 3d 30 0d  07 44 18 c8 95 20 63 6f  |.C.i%=0..D... co|
00009d00  6c 6f 72 64 65 72 25 3f  69 25 3c 3e 32 35 35 0d  |lorder%?i%<>255.|
00009d10  07 45 22 e7 20 63 6f 6c  6f 72 64 65 72 25 3f 69  |.E". colorder%?i|
00009d20  25 3d 63 6f 6c 25 20 8c  20 66 6f 75 6e 64 25 3d  |%=col% . found%=|
00009d30  b9 0d 07 46 09 69 25 2b  3d 31 0d 07 47 05 ce 0d  |...F.i%+=1..G...|
00009d40  07 48 32 e7 20 66 6f 75  6e 64 25 3d 20 a3 20 8c  |.H2. found%= . .|
00009d50  20 63 6f 6c 6f 72 64 65  72 25 3f 69 25 3d 63 6f  | colorder%?i%=co|
00009d60  6c 25 3a 20 63 6f 6c 73  66 6f 75 6e 64 25 2b 3d  |l%: colsfound%+=|
00009d70  31 0d 07 49 05 cd 0d 07  4a 0e 73 74 69 74 63 68  |1..I....J.stitch|
00009d80  25 2b 3d 31 0d 07 4b 2f  fd 20 73 74 69 74 63 68  |%+=1..K/. stitch|
00009d90  25 3d 20 67 72 69 64 77  69 64 74 68 25 20 84 20  |%= gridwidth% . |
00009da0  20 63 6f 6c 73 66 6f 75  6e 64 25 3d 63 6f 6c 6e  | colsfound%=coln|
00009db0  75 6d 25 0d 07 4c 0c 6c  69 6e 65 25 2b 3d 31 0d  |um%..L.line%+=1.|
00009dc0  07 4d 28 fd 20 6c 69 6e  65 25 3d 74 6f 70 72 6f  |.M(. line%=topro|
00009dd0  77 25 20 84 20 63 6f 6c  73 66 6f 75 6e 64 25 3d  |w% . colsfound%=|
00009de0  63 6f 6c 6e 75 6d 25 0d  07 4e 1b 74 6f 74 25 3d  |colnum%..N.tot%=|
00009df0  74 6f 70 72 6f 77 25 2a  67 72 69 64 77 69 64 74  |toprow%*gridwidt|
00009e00  68 25 0d 07 4f 0b 64 6f  6e 65 25 3d 30 0d 07 50  |h%..O.done%=0..P|
00009e10  19 e3 20 6c 69 6e 65 25  3d 30 20 b8 20 74 6f 70  |.. line%=0 . top|
00009e20  72 6f 77 25 2d 31 0d 07  51 1f e3 20 73 74 69 74  |row%-1..Q.. stit|
00009e30  63 68 25 3d 20 30 20 b8  20 67 72 69 64 77 69 64  |ch%= 0 . gridwid|
00009e40  74 68 25 2d 31 0d 07 52  1c e3 20 6e 65 77 6c 69  |th%-1..R.. newli|
00009e50  6e 65 25 3d 30 20 b8 20  63 6f 6c 6e 75 6d 25 2d  |ne%=0 . colnum%-|
00009e60  31 0d 07 53 3f e7 20 63  6f 6c 74 61 62 6c 65 25  |1..S?. coltable%|
00009e70  3f 28 6c 69 6e 65 25 2a  67 72 69 64 77 69 64 74  |?(line%*gridwidt|
00009e80  68 25 2b 73 74 69 74 63  68 25 29 3d 63 6f 6c 6f  |h%+stitch%)=colo|
00009e90  72 64 65 72 25 3f 6e 65  77 6c 69 6e 65 25 20 8c  |rder%?newline% .|
00009ea0  0d 07 54 56 3f 28 6e 74  61 62 6c 65 25 2b 6c 69  |..TV?(ntable%+li|
00009eb0  6e 65 25 2a 67 72 69 64  77 69 64 74 68 25 2a 63  |ne%*gridwidth%*c|
00009ec0  6f 6c 6e 75 6d 25 2b 6e  65 77 6c 69 6e 65 25 2a  |olnum%+newline%*|
00009ed0  67 72 69 64 77 69 64 74  68 25 2b 73 74 69 74 63  |gridwidth%+stitc|
00009ee0  68 25 29 3d 63 6f 6c 6f  72 64 65 72 25 3f 6e 65  |h%)=colorder%?ne|
00009ef0  77 6c 69 6e 65 25 0d 07  55 05 cc 0d 07 56 47 3f  |wline%..U....VG?|
00009f00  28 6e 74 61 62 6c 65 25  2b 6c 69 6e 65 25 2a 67  |(ntable%+line%*g|
00009f10  72 69 64 77 69 64 74 68  25 2a 63 6f 6c 6e 75 6d  |ridwidth%*colnum|
00009f20  25 2b 6e 65 77 6c 69 6e  65 25 2a 67 72 69 64 77  |%+newline%*gridw|
00009f30  69 64 74 68 25 2b 73 74  69 74 63 68 25 29 3d 31  |idth%+stitch%)=1|
00009f40  32 38 0d 07 57 05 cd 0d  07 58 0e ed 20 6e 65 77  |28..W....X.. new|
00009f50  6c 69 6e 65 25 0d 07 59  0c 64 6f 6e 65 25 2b 3d  |line%..Y.done%+=|
00009f60  31 0d 07 5a 25 c8 99 20  26 30 30 30 34 30 36 43  |1..Z%.. &000406C|
00009f70  34 2c 28 28 31 30 30 2a  64 6f 6e 65 25 29 20 81  |4,((100*done%) .|
00009f80  20 74 6f 74 25 29 0d 07  5b 0d ed 20 73 74 69 74  | tot%)..[.. stit|
00009f90  63 68 25 0d 07 5c 0b ed  20 6c 69 6e 65 25 0d 07  |ch%..\.. line%..|
00009fa0  5d 11 e7 20 64 6f 75 62  6c 65 25 3d 32 20 8c 0d  |].. double%=2 ..|
00009fb0  07 5e 1d 6f 6c 64 72 6f  77 25 3d 28 74 6f 70 72  |.^.oldrow%=(topr|
00009fc0  6f 77 25 2a 63 6f 6c 6e  75 6d 25 29 0d 07 5f 15  |ow%*colnum%).._.|
00009fd0  6e 65 77 72 6f 77 25 3d  6f 6c 64 72 6f 77 25 2a  |newrow%=oldrow%*|
00009fe0  32 0d 07 60 1b 74 6f 74  25 3d 6e 65 77 72 6f 77  |2..`.tot%=newrow|
00009ff0  25 2a 67 72 69 64 77 69  64 74 68 25 0d 07 61 0b  |%*gridwidth%..a.|
0000a000  64 6f 6e 65 25 3d 30 0d  07 62 1d e3 20 72 6f 77  |done%=0..b.. row|
0000a010  25 3d 6e 65 77 72 6f 77  25 2d 31 20 b8 20 31 20  |%=newrow%-1 . 1 |
0000a020  88 20 2d 32 0d 07 63 0e  6f 6c 64 72 6f 77 25 2d  |. -2..c.oldrow%-|
0000a030  3d 31 0d 07 64 1e e3 20  73 74 69 74 63 68 25 3d  |=1..d.. stitch%=|
0000a040  30 20 b8 20 67 72 69 64  77 69 64 74 68 25 2d 31  |0 . gridwidth%-1|
0000a050  0d 07 65 4a 6e 74 61 62  6c 65 25 3f 28 72 6f 77  |..eJntable%?(row|
0000a060  25 2a 67 72 69 64 77 69  64 74 68 25 2b 73 74 69  |%*gridwidth%+sti|
0000a070  74 63 68 25 29 3d 6e 74  61 62 6c 65 25 3f 28 6f  |tch%)=ntable%?(o|
0000a080  6c 64 72 6f 77 25 2a 67  72 69 64 77 69 64 74 68  |ldrow%*gridwidth|
0000a090  25 2b 73 74 69 74 63 68  25 29 0d 07 66 4e 6e 74  |%+stitch%)..fNnt|
0000a0a0  61 62 6c 65 25 3f 28 28  72 6f 77 25 2d 31 29 2a  |able%?((row%-1)*|
0000a0b0  67 72 69 64 77 69 64 74  68 25 2b 73 74 69 74 63  |gridwidth%+stitc|
0000a0c0  68 25 29 3d 6e 74 61 62  6c 65 25 3f 28 6f 6c 64  |h%)=ntable%?(old|
0000a0d0  72 6f 77 25 2a 67 72 69  64 77 69 64 74 68 25 2b  |row%*gridwidth%+|
0000a0e0  73 74 69 74 63 68 25 29  0d 07 67 0c 64 6f 6e 65  |stitch%)..g.done|
0000a0f0  25 2b 3d 31 0d 07 68 25  c8 99 20 26 30 30 30 34  |%+=1..h%.. &0004|
0000a100  30 36 43 34 2c 28 28 31  30 30 2a 64 6f 6e 65 25  |06C4,((100*done%|
0000a110  29 20 81 20 74 6f 74 25  29 0d 07 69 0d ed 20 73  |) . tot%)..i.. s|
0000a120  74 69 74 63 68 25 0d 07  6a 0a ed 20 72 6f 77 25  |titch%..j.. row%|
0000a130  0d 07 6b 05 cd 0d 07 6c  24 6e 65 77 72 6f 77 73  |..k....l$newrows|
0000a140  25 3d 74 6f 70 72 6f 77  25 2a 63 6f 6c 6e 75 6d  |%=toprow%*colnum|
0000a150  25 2a 64 6f 75 62 6c 65  25 0d 07 6d 04 0d 07 6e  |%*double%..m...n|
0000a160  13 e7 20 6e 65 77 72 6f  77 73 25 3c 33 36 20 8c  |.. newrows%<36 .|
0000a170  0d 07 6f 2e 64 75 70 73  25 3d 33 36 20 81 20 28  |..o.dups%=36 . (|
0000a180  6e 65 77 72 6f 77 73 25  29 2d 28 33 36 20 83 20  |newrows%)-(36 . |
0000a190  28 6e 65 77 72 6f 77 73  25 29 3c 3e 30 29 0d 07  |(newrows%)<>0)..|
0000a1a0  70 2b 62 69 67 74 61 62  6c 65 25 3d a4 61 28 6e  |p+bigtable%=.a(n|
0000a1b0  65 77 72 6f 77 73 25 2a  67 72 69 64 77 69 64 74  |ewrows%*gridwidt|
0000a1c0  68 25 2a 64 75 70 73 25  29 0d 07 71 22 74 6f 74  |h%*dups%)..q"tot|
0000a1d0  25 3d 64 75 70 73 25 2a  6e 65 77 72 6f 77 73 25  |%=dups%*newrows%|
0000a1e0  2a 67 72 69 64 77 69 64  74 68 25 0d 07 72 0b 64  |*gridwidth%..r.d|
0000a1f0  6f 6e 65 25 3d 30 0d 07  73 14 e3 20 69 25 3d 30  |one%=0..s.. i%=0|
0000a200  20 b8 20 64 75 70 73 25  2d 31 0d 07 74 25 e3 20  | . dups%-1..t%. |
0000a210  73 74 69 74 63 68 25 3d  30 20 b8 20 6e 65 77 72  |stitch%=0 . newr|
0000a220  6f 77 73 25 2a 67 72 69  64 77 69 64 74 68 25 0d  |ows%*gridwidth%.|
0000a230  07 75 3e 62 69 67 74 61  62 6c 65 25 3f 28 69 25  |.u>bigtable%?(i%|
0000a240  2a 6e 65 77 72 6f 77 73  25 2a 67 72 69 64 77 69  |*newrows%*gridwi|
0000a250  64 74 68 25 2b 73 74 69  74 63 68 25 29 3d 6e 74  |dth%+stitch%)=nt|
0000a260  61 62 6c 65 25 3f 73 74  69 74 63 68 25 0d 07 76  |able%?stitch%..v|
0000a270  0c 64 6f 6e 65 25 2b 3d  31 0d 07 77 25 c8 99 20  |.done%+=1..w%.. |
0000a280  26 30 30 30 34 30 36 43  34 2c 28 28 31 30 30 2a  |&000406C4,((100*|
0000a290  64 6f 6e 65 25 29 20 81  20 74 6f 74 25 29 0d 07  |done%) . tot%)..|
0000a2a0  78 0d ed 20 73 74 69 74  63 68 25 0d 07 79 08 ed  |x.. stitch%..y..|
0000a2b0  20 69 25 0d 07 7a 17 6e  74 61 62 6c 65 25 3d a4  | i%..z.ntable%=.|
0000a2c0  64 28 6e 74 61 62 6c 65  25 29 0d 07 7b 15 6e 74  |d(ntable%)..{.nt|
0000a2d0  61 62 6c 65 25 3d 62 69  67 74 61 62 6c 65 25 0d  |able%=bigtable%.|
0000a2e0  07 7c 19 74 6f 70 72 6f  77 25 3d 74 6f 70 72 6f  |.|.toprow%=topro|
0000a2f0  77 25 2a 64 75 70 73 25  0d 07 7d 29 6e 74 61 62  |w%*dups%..})ntab|
0000a300  6c 65 73 69 7a 65 25 3d  6e 65 77 72 6f 77 73 25  |lesize%=newrows%|
0000a310  2a 67 72 69 64 77 69 64  74 68 25 2a 64 75 70 73  |*gridwidth%*dups|
0000a320  25 0d 07 7e 05 cd 0d 07  7f 1b 63 6f 6c 74 61 62  |%..~......coltab|
0000a330  6c 65 25 3d a4 64 28 63  6f 6c 74 61 62 6c 65 25  |le%=.d(coltable%|
0000a340  29 0d 07 80 15 63 6f 6c  74 61 62 6c 65 25 3d 6e  |)....coltable%=n|
0000a350  74 61 62 6c 65 25 0d 07  81 1d 63 6f 6c 74 61 62  |table%....coltab|
0000a360  6c 65 73 69 7a 65 25 3d  6e 74 61 62 6c 65 73 69  |lesize%=ntablesi|
0000a370  7a 65 25 0d 07 82 25 67  72 6f 77 73 24 3d c3 28  |ze%...%grows$=.(|
0000a380  74 6f 70 72 6f 77 25 2a  63 6f 6c 6e 75 6d 25 2a  |toprow%*colnum%*|
0000a390  64 6f 75 62 6c 65 25 29  0d 07 83 11 e7 20 6d 61  |double%)..... ma|
0000a3a0  6e 6e 65 72 25 3d 31 20  8c 0d 07 84 39 67 68 65  |nner%=1 ....9ghe|
0000a3b0  69 67 68 74 24 3d c3 28  bb 28 74 65 6e 73 69 6f  |ight$=.(.(tensio|
0000a3c0  6e 5f 73 71 5f 68 65 69  67 68 74 24 29 2f bb 28  |n_sq_height$)/.(|
0000a3d0  74 65 6e 73 69 6f 6e 5f  73 71 5f 72 6f 77 73 24  |tension_sq_rows$|
0000a3e0  29 29 0d 07 85 3b 67 77  69 64 74 68 24 3d c3 28  |))...;gwidth$=.(|
0000a3f0  bb 28 74 65 6e 73 69 6f  6e 5f 73 71 5f 77 69 64  |.(tension_sq_wid|
0000a400  74 68 24 29 2f bb 28 74  65 6e 73 69 6f 6e 5f 73  |th$)/.(tension_s|
0000a410  71 5f 73 74 69 74 63 68  65 73 24 29 29 0d 07 86  |q_stitches$))...|
0000a420  21 67 73 74 69 74 63 68  65 73 24 3d 61 6e 73 5f  |!gstitches$=ans_|
0000a430  63 6f 6e 76 5f 73 74 69  74 63 68 65 73 24 0d 07  |conv_stitches$..|
0000a440  87 05 cd 0d 07 88 1b 74  65 6e 73 69 6f 6e 5f 73  |.......tension_s|
0000a450  71 5f 77 69 64 74 68 24  3d 22 30 2e 30 22 0d 07  |q_width$="0.0"..|
0000a460  89 1c 74 65 6e 73 69 6f  6e 5f 73 71 5f 68 65 69  |..tension_sq_hei|
0000a470  67 68 74 24 3d 22 30 2e  30 22 0d 07 8a 1c 74 65  |ght$="0.0"....te|
0000a480  6e 73 69 6f 6e 5f 73 71  5f 73 74 69 74 63 68 65  |nsion_sq_stitche|
0000a490  73 24 3d 22 30 22 0d 07  8b 18 74 65 6e 73 69 6f  |s$="0"....tensio|
0000a4a0  6e 5f 73 71 5f 72 6f 77  73 24 3d 22 30 22 0d 07  |n_sq_rows$="0"..|
0000a4b0  8c 16 61 6e 73 5f 63 6f  6e 76 5f 72 6f 77 73 24  |..ans_conv_rows$|
0000a4c0  3d 22 30 22 0d 07 8d 1a  61 6e 73 5f 63 6f 6e 76  |="0"....ans_conv|
0000a4d0  5f 73 74 69 74 63 68 65  73 24 3d 22 30 22 0d 07  |_stitches$="0"..|
0000a4e0  8e 14 63 6f 6e 76 5f 72  6f 77 73 24 3d 22 30 2e  |..conv_rows$="0.|
0000a4f0  30 22 0d 07 8f 18 63 6f  6e 76 5f 73 74 69 74 63  |0"....conv_stitc|
0000a500  68 65 73 24 3d 22 30 2e  30 22 0d 07 90 12 74 65  |hes$="0.0"....te|
0000a510  78 74 64 69 73 70 76 61  72 25 3d 36 0d 07 91 0d  |xtdispvar%=6....|
0000a520  6d 61 69 6e 33 37 25 3d  30 0d 07 92 0c 6d 61 69  |main37%=0....mai|
0000a530  6e 30 25 3d 30 0d 07 93  11 6d 61 73 74 65 72 67  |n0%=0....masterg|
0000a540  72 65 79 25 3d 34 0d 07  94 13 70 69 63 74 79 70  |rey%=4....pictyp|
0000a550  65 24 3d 22 6e 6f 6e 65  22 0d 07 95 0f 73 70 72  |e$="none"....spr|
0000a560  69 74 65 6f 6e 25 3d a3  0d 07 96 0d 6d 61 6e 6e  |iteon%=.....mann|
0000a570  65 72 25 3d 30 0d 07 97  0f 73 63 6c 6d 75 6c 24  |er%=0....sclmul$|
0000a580  3d 22 31 22 0d 07 98 0f  73 63 6c 64 69 76 24 3d  |="1"....scldiv$=|
0000a590  22 31 22 0d 07 99 0f f2  6a 62 28 66 6e 61 6d 65  |"1".....jb(fname|
0000a5a0  24 29 0d 07 9a 07 f2 76  62 0d 07 9b 05 cd 0d 07  |$).....vb.......|
0000a5b0  9c 05 cd 0d 07 9d 05 e1  0d 07 9e 05 3a 0d 07 9f  |............:...|
0000a5c0  08 dd 20 a4 63 0d 07 a0  12 ea 20 6e 75 6d 25 2c  |.. .c..... num%,|
0000a5d0  69 25 2c 63 6f 6c 25 0d  07 a1 0a 6e 75 6d 25 3d  |i%,col%....num%=|
0000a5e0  30 0d 07 a2 20 e3 20 69  25 3d 62 6c 6f 63 6b 25  |0... . i%=block%|
0000a5f0  20 b8 20 62 6c 6f 63 6b  25 2b 6d 61 78 63 6f 6c  | . block%+maxcol|
0000a600  25 0d 07 a3 09 3f 69 25  3d 30 0d 07 a4 08 ed 20  |%....?i%=0..... |
0000a610  69 25 0d 07 a5 25 e3 20  69 25 3d 30 20 b8 20 67  |i%...%. i%=0 . g|
0000a620  72 69 64 77 69 64 74 68  25 2a 67 72 69 64 68 65  |ridwidth%*gridhe|
0000a630  69 67 68 74 25 2d 31 0d  07 a6 1c 63 6f 6c 25 3d  |ight%-1....col%=|
0000a640  28 63 6f 6c 74 61 62 6c  65 25 3f 69 25 29 20 80  |(coltable%?i%) .|
0000a650  20 36 33 0d 07 a7 11 62  6c 6f 63 6b 25 3f 63 6f  | 63....block%?co|
0000a660  6c 25 3d 31 0d 07 a8 08  ed 20 69 25 0d 07 a9 20  |l%=1..... i%... |
0000a670  e3 20 69 25 3d 62 6c 6f  63 6b 25 20 b8 20 62 6c  |. i%=block% . bl|
0000a680  6f 63 6b 25 2b 6d 61 78  63 6f 6c 25 0d 07 aa 16  |ock%+maxcol%....|
0000a690  e7 20 3f 69 25 3c 3e 30  20 8c 20 6e 75 6d 25 2b  |. ?i%<>0 . num%+|
0000a6a0  3d 31 0d 07 ab 08 ed 20  69 25 0d 07 ac 09 3d 6e  |=1..... i%....=n|
0000a6b0  75 6d 25 0d 07 ad 05 3a  0d 07 ae 09 dd 20 f2 69  |um%....:..... .i|
0000a6c0  61 0d 07 af 6d e7 20 bb  28 74 65 6e 73 69 6f 6e  |a...m. .(tension|
0000a6d0  5f 73 71 5f 73 74 69 74  63 68 65 73 24 29 3c 3e  |_sq_stitches$)<>|
0000a6e0  30 20 8c 20 73 74 69 74  63 68 5f 77 69 64 74 68  |0 . stitch_width|
0000a6f0  3d bb 28 74 65 6e 73 69  6f 6e 5f 73 71 5f 77 69  |=.(tension_sq_wi|
0000a700  64 74 68 24 29 2f bb 28  74 65 6e 73 69 6f 6e 5f  |dth$)/.(tension_|
0000a710  73 71 5f 73 74 69 74 63  68 65 73 24 29 20 8b 20  |sq_stitches$) . |
0000a720  73 74 69 74 63 68 5f 77  69 64 74 68 3d 30 0d 07  |stitch_width=0..|
0000a730  b0 62 e7 20 bb 28 74 65  6e 73 69 6f 6e 5f 73 71  |.b. .(tension_sq|
0000a740  5f 72 6f 77 73 24 29 3c  3e 30 20 8c 20 72 6f 77  |_rows$)<>0 . row|
0000a750  5f 68 65 69 67 68 74 3d  bb 28 74 65 6e 73 69 6f  |_height=.(tensio|
0000a760  6e 5f 73 71 5f 68 65 69  67 68 74 24 29 2f bb 28  |n_sq_height$)/.(|
0000a770  74 65 6e 73 69 6f 6e 5f  73 71 5f 72 6f 77 73 24  |tension_sq_rows$|
0000a780  29 20 8b 20 72 6f 77 5f  68 65 69 67 68 74 3d 30  |) . row_height=0|
0000a790  0d 07 b1 10 c8 8e 20 6d  61 6e 6e 65 72 25 20 ca  |...... manner% .|
0000a7a0  0d 07 b2 07 c9 20 30 0d  07 b3 1c 73 74 69 74 63  |..... 0....stitc|
0000a7b0  68 77 69 64 74 68 3d a4  62 28 bb 67 77 69 64 74  |hwidth=.b(.gwidt|
0000a7c0  68 24 29 0d 07 b4 17 72  6f 77 68 74 3d a4 62 28  |h$)....rowht=.b(|
0000a7d0  bb 67 68 65 69 67 68 74  24 29 0d 07 b5 1f 73 74  |.gheight$)....st|
0000a7e0  69 74 63 68 77 69 64 74  68 25 3d a8 28 73 74 69  |itchwidth%=.(sti|
0000a7f0  74 63 68 77 69 64 74 68  29 0d 07 b6 13 72 6f 77  |tchwidth)....row|
0000a800  68 74 25 3d a8 28 72 6f  77 68 74 29 0d 07 b7 1a  |ht%=.(rowht)....|
0000a810  67 72 69 64 77 69 64 74  68 25 3d bb 67 73 74 69  |gridwidth%=.gsti|
0000a820  74 63 68 65 73 24 0d 07  b8 17 67 72 69 64 68 65  |tches$....gridhe|
0000a830  69 67 68 74 25 3d bb 67  72 6f 77 73 24 0d 07 b9  |ight%=.grows$...|
0000a840  07 c9 20 31 0d 07 ba 22  67 72 69 64 77 69 64 74  |.. 1..."gridwidt|
0000a850  68 25 3d bb 61 6e 73 5f  63 6f 6e 76 5f 73 74 69  |h%=.ans_conv_sti|
0000a860  74 63 68 65 73 24 0d 07  bb 1f 67 72 69 64 68 65  |tches$....gridhe|
0000a870  69 67 68 74 25 3d bb 61  6e 73 5f 63 6f 6e 76 5f  |ight%=.ans_conv_|
0000a880  72 6f 77 73 24 0d 07 bc  20 73 74 69 74 63 68 77  |rows$... stitchw|
0000a890  69 64 74 68 3d a4 62 28  73 74 69 74 63 68 5f 77  |idth=.b(stitch_w|
0000a8a0  69 64 74 68 29 0d 07 bd  18 72 6f 77 68 74 3d a4  |idth)....rowht=.|
0000a8b0  62 28 72 6f 77 5f 68 65  69 67 68 74 29 0d 07 be  |b(row_height)...|
0000a8c0  1f 73 74 69 74 63 68 77  69 64 74 68 25 3d a8 28  |.stitchwidth%=.(|
0000a8d0  73 74 69 74 63 68 77 69  64 74 68 29 0d 07 bf 13  |stitchwidth)....|
0000a8e0  72 6f 77 68 74 25 3d a8  28 72 6f 77 68 74 29 0d  |rowht%=.(rowht).|
0000a8f0  07 c0 05 cb 0d 07 c1 2e  e7 20 a4 68 28 6a 61 63  |......... .h(jac|
0000a900  6d 65 6e 75 25 2c 30 29  3d b9 20 8c 20 64 6f 75  |menu%,0)=. . dou|
0000a910  62 6c 65 25 3d 32 20 8b  20 64 6f 75 62 6c 65 25  |ble%=2 . double%|
0000a920  3d 31 0d 07 c2 05 e1 0d  07 c3 05 3a 0d 07 c4 09  |=1.........:....|
0000a930  dd 20 f2 6b 61 0d 07 c5  5c ea 20 66 6f 75 6e 64  |. .ka...\. found|
0000a940  25 2c 20 6a 69 67 74 61  62 6c 65 25 2c 20 6e 72  |%, jigtable%, nr|
0000a950  6f 77 73 25 2c 20 72 6f  77 25 2c 20 73 74 69 74  |ows%, row%, stit|
0000a960  63 68 25 2c 20 6e 73 74  69 74 63 68 65 73 25 2c  |ch%, nstitches%,|
0000a970  20 63 6f 6c 25 2c 20 69  25 2c 20 6a 69 67 72 6f  | col%, i%, jigro|
0000a980  77 25 2c 20 62 6c 61 6e  6b 25 2c 20 6c 69 6e 65  |w%, blank%, line|
0000a990  25 0d 07 c6 16 ea 20 64  75 70 73 25 2c 20 62 69  |%..... dups%, bi|
0000a9a0  67 74 61 62 6c 65 25 0d  07 c7 10 c8 8e 20 6d 61  |gtable%...... ma|
0000a9b0  6e 6e 65 72 25 20 ca 0d  07 c8 35 c9 20 30 20 3a  |nner% ....5. 0 :|
0000a9c0  20 6e 72 6f 77 73 25 3d  bb 28 67 72 6f 77 73 24  | nrows%=.(grows$|
0000a9d0  29 20 3a 20 6e 73 74 69  74 63 68 65 73 25 3d bb  |) : nstitches%=.|
0000a9e0  28 67 73 74 69 74 63 68  65 73 24 29 0d 07 c9 45  |(gstitches$)...E|
0000a9f0  c9 20 31 20 3a 20 6e 72  6f 77 73 25 3d bb 28 61  |. 1 : nrows%=.(a|
0000aa00  6e 73 5f 63 6f 6e 76 5f  72 6f 77 73 24 29 20 3a  |ns_conv_rows$) :|
0000aa10  20 6e 73 74 69 74 63 68  65 73 25 3d bb 28 61 6e  | nstitches%=.(an|
0000aa20  73 5f 63 6f 6e 76 5f 73  74 69 74 63 68 65 73 24  |s_conv_stitches$|
0000aa30  29 0d 07 ca 05 cb 0d 07  cb 0c 62 6c 61 6e 6b 25  |).........blank%|
0000aa40  3d b9 0d 07 cc 12 6c 69  6e 65 25 3d 6e 72 6f 77  |=.....line%=nrow|
0000aa50  73 25 2d 31 0d 07 cd 05  f5 0d 07 ce 0d 73 74 69  |s%-1.........sti|
0000aa60  74 63 68 25 3d 30 0d 07  cf 05 f5 0d 07 d0 3a e7  |tch%=0........:.|
0000aa70  20 3f 28 63 6f 6c 74 61  62 6c 65 25 2b 6c 69 6e  | ?(coltable%+lin|
0000aa80  65 25 2a 6e 73 74 69 74  63 68 65 73 25 2b 73 74  |e%*nstitches%+st|
0000aa90  69 74 63 68 25 29 3c 31  32 38 20 8c 20 62 6c 61  |itch%)<128 . bla|
0000aaa0  6e 6b 25 3d a3 0d 07 d1  0e 73 74 69 74 63 68 25  |nk%=.....stitch%|
0000aab0  2b 3d 31 0d 07 d2 23 fd  20 73 74 69 74 63 68 25  |+=1...#. stitch%|
0000aac0  3d 6e 73 74 69 74 63 68  65 73 25 20 84 20 62 6c  |=nstitches% . bl|
0000aad0  61 6e 6b 25 3d a3 0d 07  d3 0c 6c 69 6e 65 25 2d  |ank%=.....line%-|
0000aae0  3d 31 0d 07 d4 19 fd 20  6c 69 6e 65 25 3d 2d 31  |=1..... line%=-1|
0000aaf0  20 84 20 62 6c 61 6e 6b  25 3d a3 0d 07 d5 12 6e  | . blank%=.....n|
0000ab00  72 6f 77 73 25 3d 6c 69  6e 65 25 2b 31 0d 07 d6  |rows%=line%+1...|
0000ab10  17 e7 20 28 6e 72 6f 77  73 25 20 83 20 32 29 3c  |.. (nrows% . 2)<|
0000ab20  3e 31 20 8c 0d 07 d7 9a  f2 67 62 28 22 54 68 65  |>1 ......gb("The|
0000ab30  72 65 20 69 73 20 61 6e  20 6f 64 64 20 6e 75 6d  |re is an odd num|
0000ab40  62 65 72 20 6f 66 20 72  6f 77 73 20 69 6e 20 74  |ber of rows in t|
0000ab50  68 65 20 70 61 74 74 65  72 6e 20 79 6f 75 20 68  |he pattern you h|
0000ab60  61 76 65 20 64 72 61 67  67 65 64 20 69 6e 2e 20  |ave dragged in. |
0000ab70  4a 69 67 73 61 77 20 70  61 74 74 65 72 6e 73 20  |Jigsaw patterns |
0000ab80  63 61 6e 20 6f 6e 6c 79  20 62 65 20 6d 61 64 65  |can only be made|
0000ab90  20 66 72 6f 6d 20 61 20  70 61 74 74 65 72 6e 20  | from a pattern |
0000aba0  77 69 74 68 20 61 6e 20  65 76 65 6e 20 6e 75 6d  |with an even num|
0000abb0  62 65 72 20 6f 66 20 72  6f 77 73 2e 22 29 0d 07  |ber of rows.")..|
0000abc0  d8 05 cc 0d 07 d9 33 6a  69 67 74 61 62 6c 65 25  |......3jigtable%|
0000abd0  3d a4 61 28 28 6d 61 78  63 6f 6c 25 2b 31 29 2a  |=.a((maxcol%+1)*|
0000abe0  28 6e 72 6f 77 73 25 2b  31 29 2a 6e 73 74 69 74  |(nrows%+1)*nstit|
0000abf0  63 68 65 73 25 29 0d 07  da 0d 6a 69 67 72 6f 77  |ches%)....jigrow|
0000ac00  25 3d 30 0d 07 db 04 0d  07 dc 1b e3 20 72 6f 77  |%=0......... row|
0000ac10  25 3d 30 20 b8 20 6e 72  6f 77 73 25 2d 31 20 88  |%=0 . nrows%-1 .|
0000ac20  20 32 0d 07 dd 33 e3 20  63 6f 6c 25 3d 30 20 b8  | 2...3. col%=0 .|
0000ac30  20 6d 61 78 63 6f 6c 25  2b 31 20 3a 20 62 6c 6f  | maxcol%+1 : blo|
0000ac40  63 6b 25 3f 63 6f 6c 25  3d 32 35 35 20 3a 20 ed  |ck%?col%=255 : .|
0000ac50  20 63 6f 6c 25 0d 07 de  04 0d 07 df 20 e3 20 73  | col%....... . s|
0000ac60  74 69 74 63 68 25 3d 30  20 b8 20 32 2a 6e 73 74  |titch%=0 . 2*nst|
0000ac70  69 74 63 68 65 73 25 2d  31 0d 07 e0 2c 63 6f 6c  |itches%-1...,col|
0000ac80  25 3d 63 6f 6c 74 61 62  6c 65 25 3f 28 72 6f 77  |%=coltable%?(row|
0000ac90  25 2a 6e 73 74 69 74 63  68 65 73 25 2b 73 74 69  |%*nstitches%+sti|
0000aca0  74 63 68 25 29 0d 07 e1  09 69 25 3d 2d 31 0d 07  |tch%)....i%=-1..|
0000acb0  e2 05 f5 0d 07 e3 09 69  25 2b 3d 31 0d 07 e4 31  |.......i%+=1...1|
0000acc0  fd 20 62 6c 6f 63 6b 25  3f 69 25 3d 32 35 35 20  |. block%?i%=255 |
0000acd0  84 20 62 6c 6f 63 6b 25  3f 69 25 3d 63 6f 6c 25  |. block%?i%=col%|
0000ace0  20 84 20 69 25 3e 6d 61  78 63 6f 6c 25 0d 07 e5  | . i%>maxcol%...|
0000acf0  24 e7 20 62 6c 6f 63 6b  25 3f 69 25 3d 32 35 35  |$. block%?i%=255|
0000ad00  20 8c 20 62 6c 6f 63 6b  25 3f 69 25 3d 63 6f 6c  | . block%?i%=col|
0000ad10  25 0d 07 e6 0d ed 20 73  74 69 74 63 68 25 0d 07  |%..... stitch%..|
0000ad20  e7 04 0d 07 e8 1e e3 20  73 74 69 74 63 68 25 3d  |....... stitch%=|
0000ad30  30 20 b8 20 6e 73 74 69  74 63 68 65 73 25 2d 31  |0 . nstitches%-1|
0000ad40  0d 07 e9 91 e7 20 63 6f  6c 74 61 62 6c 65 25 3f  |..... coltable%?|
0000ad50  28 72 6f 77 25 2a 6e 73  74 69 74 63 68 65 73 25  |(row%*nstitches%|
0000ad60  2b 73 74 69 74 63 68 25  29 3d 79 61 72 6e 63 6f  |+stitch%)=yarnco|
0000ad70  6c 25 20 8c 20 6a 69 67  74 61 62 6c 65 25 3f 28  |l% . jigtable%?(|
0000ad80  6a 69 67 72 6f 77 25 2a  6e 73 74 69 74 63 68 65  |jigrow%*nstitche|
0000ad90  73 25 2b 73 74 69 74 63  68 25 29 3d 79 61 72 6e  |s%+stitch%)=yarn|
0000ada0  63 6f 6c 25 20 8b 20 6a  69 67 74 61 62 6c 65 25  |col% . jigtable%|
0000adb0  3f 28 6a 69 67 72 6f 77  25 2a 6e 73 74 69 74 63  |?(jigrow%*nstitc|
0000adc0  68 65 73 25 2b 73 74 69  74 63 68 25 29 3d 31 32  |hes%+stitch%)=12|
0000add0  38 0d 07 ea 0d ed 20 73  74 69 74 63 68 25 0d 07  |8..... stitch%..|
0000ade0  eb 0e 6a 69 67 72 6f 77  25 2b 3d 31 0d 07 ec 04  |..jigrow%+=1....|
0000adf0  0d 07 ed 08 69 25 3d 30  0d 07 ee 15 c8 95 20 62  |....i%=0...... b|
0000ae00  6c 6f 63 6b 25 3f 69 25  3c 3e 32 35 35 0d 07 ef  |lock%?i%<>255...|
0000ae10  12 63 6f 6c 25 3d 62 6c  6f 63 6b 25 3f 69 25 0d  |.col%=block%?i%.|
0000ae20  07 f0 16 e7 20 63 6f 6c  25 3c 3e 79 61 72 6e 63  |.... col%<>yarnc|
0000ae30  6f 6c 25 20 8c 0d 07 f1  1e e3 20 73 74 69 74 63  |ol% ...... stitc|
0000ae40  68 25 3d 30 20 b8 20 6e  73 74 69 74 63 68 65 73  |h%=0 . nstitches|
0000ae50  25 2d 31 0d 07 f2 89 e7  20 63 6f 6c 74 61 62 6c  |%-1..... coltabl|
0000ae60  65 25 3f 28 72 6f 77 25  2a 6e 73 74 69 74 63 68  |e%?(row%*nstitch|
0000ae70  65 73 25 2b 73 74 69 74  63 68 25 29 3d 63 6f 6c  |es%+stitch%)=col|
0000ae80  25 20 8c 20 6a 69 67 74  61 62 6c 65 25 3f 28 6a  |% . jigtable%?(j|
0000ae90  69 67 72 6f 77 25 2a 6e  73 74 69 74 63 68 65 73  |igrow%*nstitches|
0000aea0  25 2b 73 74 69 74 63 68  25 29 3d 63 6f 6c 25 20  |%+stitch%)=col% |
0000aeb0  8b 20 6a 69 67 74 61 62  6c 65 25 3f 28 6a 69 67  |. jigtable%?(jig|
0000aec0  72 6f 77 25 2a 6e 73 74  69 74 63 68 65 73 25 2b  |row%*nstitches%+|
0000aed0  73 74 69 74 63 68 25 29  3d 31 32 38 0d 07 f3 0d  |stitch%)=128....|
0000aee0  ed 20 73 74 69 74 63 68  25 0d 07 f4 0e 6a 69 67  |. stitch%....jig|
0000aef0  72 6f 77 25 2b 3d 31 0d  07 f5 1e e3 20 73 74 69  |row%+=1..... sti|
0000af00  74 63 68 25 3d 30 20 b8  20 6e 73 74 69 74 63 68  |tch%=0 . nstitch|
0000af10  65 73 25 2d 31 0d 07 f6  8d e7 20 63 6f 6c 74 61  |es%-1..... colta|
0000af20  62 6c 65 25 3f 28 28 72  6f 77 25 2b 31 29 2a 6e  |ble%?((row%+1)*n|
0000af30  73 74 69 74 63 68 65 73  25 2b 73 74 69 74 63 68  |stitches%+stitch|
0000af40  25 29 3d 63 6f 6c 25 20  8c 20 6a 69 67 74 61 62  |%)=col% . jigtab|
0000af50  6c 65 25 3f 28 6a 69 67  72 6f 77 25 2a 6e 73 74  |le%?(jigrow%*nst|
0000af60  69 74 63 68 65 73 25 2b  73 74 69 74 63 68 25 29  |itches%+stitch%)|
0000af70  3d 63 6f 6c 25 20 8b 20  6a 69 67 74 61 62 6c 65  |=col% . jigtable|
0000af80  25 3f 28 6a 69 67 72 6f  77 25 2a 6e 73 74 69 74  |%?(jigrow%*nstit|
0000af90  63 68 65 73 25 2b 73 74  69 74 63 68 25 29 3d 31  |ches%+stitch%)=1|
0000afa0  32 38 0d 07 f7 0d ed 20  73 74 69 74 63 68 25 0d  |28..... stitch%.|
0000afb0  07 f8 0e 6a 69 67 72 6f  77 25 2b 3d 31 0d 07 f9  |...jigrow%+=1...|
0000afc0  05 cd 0d 07 fa 09 69 25  2b 3d 31 0d 07 fb 05 ce  |......i%+=1.....|
0000afd0  0d 07 fc 04 0d 07 fd 1e  e3 20 73 74 69 74 63 68  |......... stitch|
0000afe0  25 3d 30 20 b8 20 6e 73  74 69 74 63 68 65 73 25  |%=0 . nstitches%|
0000aff0  2d 31 0d 07 fe 95 e7 20  63 6f 6c 74 61 62 6c 65  |-1..... coltable|
0000b000  25 3f 28 28 72 6f 77 25  2b 31 29 2a 6e 73 74 69  |%?((row%+1)*nsti|
0000b010  74 63 68 65 73 25 2b 73  74 69 74 63 68 25 29 3d  |tches%+stitch%)=|
0000b020  79 61 72 6e 63 6f 6c 25  20 8c 20 6a 69 67 74 61  |yarncol% . jigta|
0000b030  62 6c 65 25 3f 28 6a 69  67 72 6f 77 25 2a 6e 73  |ble%?(jigrow%*ns|
0000b040  74 69 74 63 68 65 73 25  2b 73 74 69 74 63 68 25  |titches%+stitch%|
0000b050  29 3d 79 61 72 6e 63 6f  6c 25 20 8b 20 6a 69 67  |)=yarncol% . jig|
0000b060  74 61 62 6c 65 25 3f 28  6a 69 67 72 6f 77 25 2a  |table%?(jigrow%*|
0000b070  6e 73 74 69 74 63 68 65  73 25 2b 73 74 69 74 63  |nstitches%+stitc|
0000b080  68 25 29 3d 31 32 38 0d  07 ff 0d ed 20 73 74 69  |h%)=128..... sti|
0000b090  74 63 68 25 0d 08 00 0e  6a 69 67 72 6f 77 25 2b  |tch%....jigrow%+|
0000b0a0  3d 31 0d 08 01 0a ed 20  72 6f 77 25 0d 08 02 04  |=1..... row%....|
0000b0b0  0d 08 03 12 e7 20 6a 69  67 72 6f 77 25 3c 33 36  |..... jigrow%<36|
0000b0c0  20 8c 0d 08 04 2c 64 75  70 73 25 3d 33 36 20 81  | ....,dups%=36 .|
0000b0d0  20 28 6a 69 67 72 6f 77  25 29 2d 28 33 36 20 83  | (jigrow%)-(36 .|
0000b0e0  20 28 6a 69 67 72 6f 77  25 29 3c 3e 30 29 0d 08  | (jigrow%)<>0)..|
0000b0f0  05 36 62 69 67 74 61 62  6c 65 25 3d a4 61 28 6a  |.6bigtable%=.a(j|
0000b100  69 67 72 6f 77 25 2a 6e  73 74 69 74 63 68 65 73  |igrow%*nstitches|
0000b110  25 2a 28 6d 61 78 63 6f  6c 25 2b 31 29 2a 64 75  |%*(maxcol%+1)*du|
0000b120  70 73 25 29 0d 08 06 14  e3 20 69 25 3d 30 20 b8  |ps%)..... i%=0 .|
0000b130  20 64 75 70 73 25 2d 31  0d 08 07 24 e3 20 73 74  | dups%-1...$. st|
0000b140  69 74 63 68 25 3d 30 20  b8 20 6a 69 67 72 6f 77  |itch%=0 . jigrow|
0000b150  25 2a 6e 73 74 69 74 63  68 65 73 25 0d 08 08 3f  |%*nstitches%...?|
0000b160  62 69 67 74 61 62 6c 65  25 3f 28 69 25 2a 6a 69  |bigtable%?(i%*ji|
0000b170  67 72 6f 77 25 2a 6e 73  74 69 74 63 68 65 73 25  |grow%*nstitches%|
0000b180  2b 73 74 69 74 63 68 25  29 3d 6a 69 67 74 61 62  |+stitch%)=jigtab|
0000b190  6c 65 25 3f 73 74 69 74  63 68 25 0d 08 09 0d ed  |le%?stitch%.....|
0000b1a0  20 73 74 69 74 63 68 25  0d 08 0a 08 ed 20 69 25  | stitch%..... i%|
0000b1b0  0d 08 0b 1b 6a 69 67 74  61 62 6c 65 25 3d a4 64  |....jigtable%=.d|
0000b1c0  28 6a 69 67 74 61 62 6c  65 25 29 0d 08 0c 17 6a  |(jigtable%)....j|
0000b1d0  69 67 74 61 62 6c 65 25  3d 62 69 67 74 61 62 6c  |igtable%=bigtabl|
0000b1e0  65 25 0d 08 0d 19 6a 69  67 72 6f 77 25 3d 6a 69  |e%....jigrow%=ji|
0000b1f0  67 72 6f 77 25 2a 64 75  70 73 25 0d 08 0e 05 cd  |grow%*dups%.....|
0000b200  0d 08 0f 1b 63 6f 6c 74  61 62 6c 65 25 3d a4 64  |....coltable%=.d|
0000b210  28 63 6f 6c 74 61 62 6c  65 25 29 0d 08 10 17 63  |(coltable%)....c|
0000b220  6f 6c 74 61 62 6c 65 25  3d 6a 69 67 74 61 62 6c  |oltable%=jigtabl|
0000b230  65 25 0d 08 11 24 63 6f  6c 74 61 62 6c 65 73 69  |e%...$coltablesi|
0000b240  7a 65 25 3d 6e 73 74 69  74 63 68 65 73 25 2a 6a  |ze%=nstitches%*j|
0000b250  69 67 72 6f 77 25 0d 08  12 15 67 72 6f 77 73 24  |igrow%....grows$|
0000b260  3d c3 28 6a 69 67 72 6f  77 25 29 0d 08 13 11 e7  |=.(jigrow%).....|
0000b270  20 6d 61 6e 6e 65 72 25  3d 31 20 8c 0d 08 14 39  | manner%=1 ....9|
0000b280  67 68 65 69 67 68 74 24  3d c3 28 bb 28 74 65 6e  |gheight$=.(.(ten|
0000b290  73 69 6f 6e 5f 73 71 5f  68 65 69 67 68 74 24 29  |sion_sq_height$)|
0000b2a0  2f bb 28 74 65 6e 73 69  6f 6e 5f 73 71 5f 72 6f  |/.(tension_sq_ro|
0000b2b0  77 73 24 29 29 0d 08 15  3b 67 77 69 64 74 68 24  |ws$))...;gwidth$|
0000b2c0  3d c3 28 bb 28 74 65 6e  73 69 6f 6e 5f 73 71 5f  |=.(.(tension_sq_|
0000b2d0  77 69 64 74 68 24 29 2f  bb 28 74 65 6e 73 69 6f  |width$)/.(tensio|
0000b2e0  6e 5f 73 71 5f 73 74 69  74 63 68 65 73 24 29 29  |n_sq_stitches$))|
0000b2f0  0d 08 16 21 67 73 74 69  74 63 68 65 73 24 3d 61  |...!gstitches$=a|
0000b300  6e 73 5f 63 6f 6e 76 5f  73 74 69 74 63 68 65 73  |ns_conv_stitches|
0000b310  24 0d 08 17 05 cd 0d 08  18 1b 74 65 6e 73 69 6f  |$.........tensio|
0000b320  6e 5f 73 71 5f 77 69 64  74 68 24 3d 22 30 2e 30  |n_sq_width$="0.0|
0000b330  22 0d 08 19 1c 74 65 6e  73 69 6f 6e 5f 73 71 5f  |"....tension_sq_|
0000b340  68 65 69 67 68 74 24 3d  22 30 2e 30 22 0d 08 1a  |height$="0.0"...|
0000b350  1c 74 65 6e 73 69 6f 6e  5f 73 71 5f 73 74 69 74  |.tension_sq_stit|
0000b360  63 68 65 73 24 3d 22 30  22 0d 08 1b 18 74 65 6e  |ches$="0"....ten|
0000b370  73 69 6f 6e 5f 73 71 5f  72 6f 77 73 24 3d 22 30  |sion_sq_rows$="0|
0000b380  22 0d 08 1c 16 61 6e 73  5f 63 6f 6e 76 5f 72 6f  |"....ans_conv_ro|
0000b390  77 73 24 3d 22 30 22 0d  08 1d 1a 61 6e 73 5f 63  |ws$="0"....ans_c|
0000b3a0  6f 6e 76 5f 73 74 69 74  63 68 65 73 24 3d 22 30  |onv_stitches$="0|
0000b3b0  22 0d 08 1e 14 63 6f 6e  76 5f 72 6f 77 73 24 3d  |"....conv_rows$=|
0000b3c0  22 30 2e 30 22 0d 08 1f  18 63 6f 6e 76 5f 73 74  |"0.0"....conv_st|
0000b3d0  69 74 63 68 65 73 24 3d  22 30 2e 30 22 0d 08 20  |itches$="0.0".. |
0000b3e0  12 74 65 78 74 64 69 73  70 76 61 72 25 3d 36 0d  |.textdispvar%=6.|
0000b3f0  08 21 0d 6d 61 69 6e 33  37 25 3d 30 0d 08 22 0c  |.!.main37%=0..".|
0000b400  6d 61 69 6e 30 25 3d 30  0d 08 23 11 6d 61 73 74  |main0%=0..#.mast|
0000b410  65 72 67 72 65 79 25 3d  34 0d 08 24 13 70 69 63  |ergrey%=4..$.pic|
0000b420  74 79 70 65 24 3d 22 6e  6f 6e 65 22 0d 08 25 0f  |type$="none"..%.|
0000b430  73 70 72 69 74 65 6f 6e  25 3d a3 0d 08 26 0d 6d  |spriteon%=...&.m|
0000b440  61 6e 6e 65 72 25 3d 30  0d 08 27 0f 73 63 6c 6d  |anner%=0..'.sclm|
0000b450  75 6c 24 3d 22 31 22 0d  08 28 0f 73 63 6c 64 69  |ul$="1"..(.scldi|
0000b460  76 24 3d 22 31 22 0d 08  29 0f f2 6a 62 28 66 6e  |v$="1"..)..jb(fn|
0000b470  61 6d 65 24 29 0d 08 2a  05 cd 0d 08 2b 07 f2 76  |ame$)..*....+..v|
0000b480  62 0d 08 2c 05 cd 0d 08  2d 05 e1 0d ff           |b..,....-....|
0000b48d