Home » Archimedes archive » Acorn User » AU 1994-12.adf » !StarInfo_StarInfo » Burrows/!Trans/!RunImage

Burrows/!Trans/!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 1994-12.adf » !StarInfo_StarInfo
Filename: Burrows/!Trans/!RunImage
Read OK:
File size: A3EF bytes
Load address: 0000
Exec address: 0000
File contents
   10 DIM block% 1000
   20 PROCUser_SetVariables
   30 ON ERROR q%=FNWimp_ErrorBoxOK("Unexpected ERROR: "+REPORT$,app$) : END
   40 TaskHandle%=FNWimp_Initialise(app$)
   50 ON ERROR q%=FNWimp_ErrorBoxOK("Unexpected ERROR: "+REPORT$,app$) : q%=FNWimp_CloseDown(TaskHandle%) : END
   60 PROCUser_LoadResources
   70 PROCUser_SetUpResources
   80 PROCUser_SetUpMenus
   90 quit%=FALSE
  100 ON ERROR q%=FNWimp_ErrorBoxOK("Unexpected ERROR: "+REPORT$,app$) : quit%=TRUE
  110 WHILE quit%=FALSE
  120 PROCUser_Poll
  130 ENDWHILE
  140 PROCUser_AppClosingDown
  150 q%=FNWimp_CloseDown(TaskHandle%)
  160 END
  170
  180
  190 DEF PROCUser_SetVariables
  200 app$="Transistor"
  210 fontarray%=FNWimp_InitFontsArray
  220 buzzer%=FALSE
  230 resistor%=3
  240 ENDPROC
  250 :
  260 DEF PROCUser_LoadResources
  270 sparea%=FNWimp_LoadSprites("<Electronics$Dir>.Sprites")
  280 PROCWimp_OpenTemplate("<Electronics$Dir>.Templates")
  290 length%=70 : DIM iconSpace% length%
  300 tools1%=FNWimp_LoadTemplate("Tools1",iconSpace%,length%,sparea%)
  310 length%=32 : DIM iconSpace% length%
  320 tools2%=FNWimp_LoadTemplate("Tools2",iconSpace%,length%,sparea%)
  330 length%=205 : DIM iconSpace% length%
  340 info_window%=FNWimp_LoadTemplateFontZ("info",iconSpace%,length%,sparea%,fontarray%)
  350 length%=130 : DIM iconSpace% length%
  360 design%=FNWimp_LoadTemplateFontZ("design",iconSpace%,length%,sparea%,fontarray%)
  370 length%=200 : DIM iconSpace% length%
  380 test%=FNWimp_LoadTemplateFontZ("Test",iconSpace%,length%,sparea%,fontarray%)
  390 length%=30 : DIM iconSpace% length%
  400 res_wind%=FNWimp_LoadTemplate("RESISTOR",iconSpace%,length%,sparea%)
  410 length%=85 : DIM iconSpace% length%
  420 options%=FNWimp_LoadTemplateFontZ("options",iconSpace%,length%,sparea%,fontarray%)
  430 length%=15 : DIM iconSpace% length%
  440 res1%=FNWimp_LoadTemplateFontZ("Res",iconSpace%,length%,sparea%,fontarray%)
  450 DIM iconSpace% length%
  460 res2%=FNWimp_LoadTemplateFontZ("Res",iconSpace%,length%,sparea%,fontarray%)
  470 length%=75 : DIM iconSpace% length%
  480 ldr1%=FNWimp_LoadTemplateFontZ("LDR",iconSpace%,length%,sparea%,fontarray%)
  490 DIM iconSpace% length%
  500 ldr2%=FNWimp_LoadTemplateFontZ("LDR",iconSpace%,length%,sparea%,fontarray%)
  510 length%=49: DIM iconSpace% length%
  520 vres1%=FNWimp_LoadTemplateFontZ("VRES",iconSpace%,length%,sparea%,fontarray%)
  530 DIM iconSpace% length%
  540 vres2%=FNWimp_LoadTemplateFontZ("VRES",iconSpace%,length%,sparea%,fontarray%)
  550 length%=55: DIM iconSpace% length%
  560 thermistor1%=FNWimp_LoadTemplateFontZ("thermistor",iconSpace%,length%,sparea%,fontarray%)
  570 DIM iconSpace% length%
  580 thermistor2%=FNWimp_LoadTemplateFontZ("thermistor",iconSpace%,length%,sparea%,fontarray%)
  590 length%=55: DIM iconSpace% length%
  600 Mprobe1%=FNWimp_LoadTemplateFontZ("wet",iconSpace%,length%,sparea%,fontarray%)
  610 DIM iconSpace% length%
  620 Mprobe2%=FNWimp_LoadTemplateFontZ("wet",iconSpace%,length%,sparea%,fontarray%)
  630 length%=15: DIM iconSpace% length%
  640 switch1%=FNWimp_LoadTemplateFontZ("switch",iconSpace%,length%,sparea%,fontarray%)
  650 DIM iconSpace% length%
  660 switch2%=FNWimp_LoadTemplateFontZ("switch",iconSpace%,length%,sparea%,fontarray%)
  670 PROCWimp_CloseTemplate
  680 current_window%=design%
  690 current_top%=res1%
  700 current_bottom%=res2%
  710 ENDPROC
  720 :
  730 DEF PROCUser_SetUpResources
  740 iconbar_icon%=FNWimp_CreateIcon(-1,0,0,80,80,%11000000011010,"!Trans")
  750 PROCWimp_WriteIconValidation(design%,3,"Sres")
  760 PROCWimp_WriteIconValidation(design%,4,"Sres")
  770 ENDPROC
  780 :
  790 DEF PROCUser_SetUpMenus
  800 SYS "Font_FindFont",,"homerton.medium",16*12,16*12 TO homerton%
  810 iconbar_menu%=FNWimp_setupmenuFromStringFontyitems(app$+"\Info>"+(STR$ info_window%)+"\Options>"+(STR$ options%)+"\Quit",homerton%)
  820 DIM menu_IND% 32*6
  830 res_menu%=FNWimp_setupmenuFromStringINDFontyitems(menu_IND%,"Input\LDR\Thermistor\Moisture Probe\Switch\Resistor\Variable Resistor",homerton%)
  840 out_menu%=FNWimp_setupmenuFromStringFontyitems("Output\Lamp\LED\Buzzer",homerton%)
  850 enter_menu%=FNWimp_setupmenuFromStringFontyitems("Enter\R1>"+(STR$ res_menu%)+"\R2>"+(STR$ res_menu%)+"\Output>"+(STR$ out_menu%),homerton%)
  860 design_menu%=FNWimp_setupmenuFromStringFontyitems(app$+"\Enter>"+(STR$ enter_menu%)+"\Test\Toolboxes",homerton%)
  870 PROCWimp_MenuTickItem(design_menu%,2)
  880 test_menu%=FNWimp_setupmenuFromStringFontyitems(app$+"\ReDesign",homerton%)
  890 ENDPROC
  900 :
  910 DEF PROCUser_AppClosingDown
  920 SYS "Font_LoseFont",homerton%
  930 PROCWimp_RemoveFontsArray(fontarray%)
  940 ENDPROC
  950 :
  960 DEF PROCUser_Poll
  970 SYS "OS_ReadMonotonicTime" TO time%
  980 time%+=70
  990 IF buzzer%=FALSE SYS "Wimp_Poll",&3833,block% TO reason%
 1000 IF buzzer%=TRUE SYS "Wimp_PollIdle",&3832,block%,time% TO reason%
 1010 CASE reason% OF
 1020 WHEN 0: VDU 7
 1030 WHEN 2:SYS "Wimp_OpenWindow",,block%
 1040        PROCPollOpenWindow
 1050 WHEN 3:SYS "Wimp_CloseWindow",,block%
 1060        PROCPoll_WindowClosed(!block%)
 1070 WHEN 6:PROCPoll_MouseClick(block%!12,block%!16,block%!8)
 1080 WHEN 7:PROCPoll_EndDrag
 1090 WHEN 8:PROCPoll_KeyPress(!block%,block%!4,block%!24)
 1100 WHEN 9:PROCPoll_MenuSelection
 1110 WHEN 17,18 :PROCPoll_IncommingMessage(block%!16)
 1120 ENDCASE
 1130 ENDPROC
 1140 :
 1150 DEF PROCPollOpenWindow
 1160 CASE !block% OF
 1170      WHEN design%: PROCUser_OpenDesignANDTools
 1180      WHEN test%: PROCUser_OpenTestANDTools(current_top%,current_bottom%)
 1190 ENDCASE
 1200 ENDPROC
 1210 :
 1220 DEF PROCPoll_WindowClosed(window%)
 1230 CASE window% OF
 1240      WHEN design%: PROCWimp_CloseWindow(tools1%)
 1250                    PROCWimp_CloseWindow(tools2%)
 1260      WHEN test%: PROCWimp_CloseWindow(current_top%)
 1270                  PROCWimp_CloseWindow(current_bottom%)
 1280                  buzzer%=FALSE
 1290 ENDCASE
 1300 ENDPROC
 1310 :
 1320 DEF PROCPoll_MouseClick(window%,icon%,button%)
 1330 REM Don't forget when you are opening menus you must up date <CurrentMenu%>
 1340 LOCAL x%,y%,a$
 1350 CASE window% OF
 1360      WHEN -2:PROCMouseClick_IconBar(icon%,button%)
 1370      WHEN tools1%:PROCMouseClick_ToolsBar(icon%,button%)
 1380      WHEN tools2%:PROCMouseClick_ToolsBar(icon%+6,button%)
 1390      WHEN design%:PROCMouseClick_Design(icon%,button%)
 1400      WHEN test%:PROCMouseClick_Test(icon%,button%)
 1410      WHEN res1%,res2%:IF button%=2 AND icon%<>4 THEN
 1420                        PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4)
 1430                        CurrentMenu%=test_menu%
 1440                       ENDIF
 1450                       IF icon%=4 THEN
 1460                        x%=!block%-64 : y%=block%!4
 1470                        a$=FNWimp_ReadIconText(window%,3)
 1480                         CASE FNMisc_TurnToLowerCase(RIGHT$(a$)) OF
 1490                              WHEN "r": a$=LEFT$(a$)
 1500                              WHEN "k": a$=LEFT$(a$)+"000"
 1510                              WHEN "m": a$=LEFT$(a$)+"000000"
 1520                         ENDCASE
 1530                         SYS "Wimp_WhichIcon",options%,block%,&3F0000,&210000
 1540                         IF !block%=2 OR !block%=3 THEN resistor%=(!block%)+1
 1550           CASE resistor% OF
 1560                WHEN 3:
 1570                        PROCWimp_ShowMenu(res_wind%,x%,y%)
 1580                        CurrentMenu%=res_wind%
 1590                        PROCWimp_WriteIconValidation(res_wind%,1,"S"+MID$(a$,1,1))
 1600                        PROCWimp_WriteIconValidation(res_wind%,2,"S"+MID$(a$,2,1))
 1610             PROCWimp_WriteIconValidation(res_wind%,3,"S"+STR$(LEN(MID$(a$,3,LEN a$))))
 1620                        PROCWimp_WriteIconValidation(res_wind%,4,"Sresistor4")
 1630                WHEN 4:
 1640                        PROCWimp_ShowMenu(res_wind%,x%,y%)
 1650                        CurrentMenu%=res_wind%
 1660                        PROCWimp_WriteIconValidation(res_wind%,0,"S"+MID$(a$,1,1))
 1670                        PROCWimp_WriteIconValidation(res_wind%,1,"S"+MID$(a$,2,1))
 1680                        PROCWimp_WriteIconValidation(res_wind%,2,"S"+MID$(a$,3,1))
 1690             PROCWimp_WriteIconValidation(res_wind%,3,"S"+STR$(LEN(MID$(a$,4,LEN a$))))
 1700                        PROCWimp_WriteIconValidation(res_wind%,4,"Sresistor5")
 1710
 1720           ENDCASE
 1730                       ENDIF
 1740      WHEN vres1%,vres2%:PROCMouseClick_Vres(window%,icon%,button%)
 1750      WHEN ldr1%,ldr2%:PROCMouseClick_LDR(window%,icon%,button%)
 1760      WHEN thermistor1%,thermistor2%:PROCMouseClick_Thermistor(window%,icon%,button%)
 1770      WHEN Mprobe1%,Mprobe2%:PROCMouseClick_MoistureProbe(window%,icon%,button%)
 1780      WHEN switch1%,switch2%:IF button%<>2 THEN PROCCalculate ELSE PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4) : CurrentMenu%=test_menu%
 1790 ENDCASE
 1800 ENDPROC
 1810 :
 1820 DEF PROCMouseClick_Thermistor(window%,icon%,button%)
 1830 LOCAL a,a$,zz$,z$,z%
 1840 CASE button% OF
 1850      WHEN 2: PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4)
 1860              CurrentMenu%=test_menu%
 1870      WHEN 1,4: a=VAL(FNWimp_ReadIconText(window%,4))
 1880                IF a>200 THEN a=200
 1890                IF a<-50 THEN a=-50
 1900                zz$=STR$ a
 1910                IF INSTR(zz$,".")=0 THEN z%=LEN zz$ ELSE z%=INSTR(zz$,".")+1
 1920                z$=LEFT$(zz$,z%)
 1930                IF INSTR(z$,".")<>0 AND RIGHT$(z$)<>"5" THEN z$=LEFT$(z$)+"5"
 1940                CASE icon% OF
 1950                     WHEN 5: a=VAL(z$)
 1960                             IF a<200 THEN a+=0.5
 1970                             PROCWimp_WriteIconText(window%,4,STR$ a)
 1980                             IF a>=-50 AND a<-25 THEN a$="R7;Sh-"
 1990                             IF a>=-25 AND a<0 THEN a$="R7;Sh0"
 2000                             IF a>=0 AND a<25 THEN a$="R7;Sh1"
 2010                             IF a>=25 AND a<50 THEN a$="R7;Sh2"
 2020                             IF a>=50 AND a<75 THEN a$="R7;Sh3"
 2030                             IF a>=75 AND a<100 THEN a$="R7;Sh4"
 2040                             IF a>=100 AND a<125 THEN a$="R7;Sh5"
 2050                             IF a>=125 AND a<150 THEN a$="R7;Sh6"
 2060                             IF a>=150 AND a<175 THEN a$="R7;Sh7"
 2070                             IF a>=175 AND a<201 THEN a$="R7;Sh8"
 2080                             PROCWimp_WriteIconValidation(window%,2,a$)
 2090                             a=(250-(a+50))*4000
 2100                             IF a<1000 THEN a$=STR$(a)
 2110                             IF a>=1000 AND a<1000000 THEN a$=STR$(a/1000)+"K"
 2120                             IF a>=1000000 THEN a$=STR$(a/1000000)+"M"
 2130                             PROCWimp_WriteIconText(window%,9,a$)
 2140                             PROCCalculate
 2150                     WHEN 6: a=VAL(z$)
 2160                             IF a>-50 THEN a-=0.5
 2170                             PROCWimp_WriteIconText(window%,4,STR$ a)
 2180                             IF a>=-50 AND a<-25 THEN a$="R7;Sh-"
 2190                             IF a>=-25 AND a<0 THEN a$="R7;Sh0"
 2200                             IF a>=0 AND a<25 THEN a$="R7;Sh1"
 2210                             IF a>=25 AND a<50 THEN a$="R7;Sh2"
 2220                             IF a>=50 AND a<75 THEN a$="R7;Sh3"
 2230                             IF a>=75 AND a<100 THEN a$="R7;Sh4"
 2240                             IF a>=100 AND a<125 THEN a$="R7;Sh5"
 2250                             IF a>=125 AND a<150 THEN a$="R7;Sh6"
 2260                             IF a>=150 AND a<175 THEN a$="R7;Sh7"
 2270                             IF a>=175 AND a<201 THEN a$="R7;Sh8"
 2280                             PROCWimp_WriteIconValidation(window%,2,a$)
 2290                             a=(250-(a+50))*4000
 2300                             IF a<1000 THEN a$=STR$(a)
 2310                             IF a>=1000 AND a<1000000 THEN a$=STR$(a/1000)+"K"
 2320                             IF a>=1000000 THEN a$=STR$(a/1000000)+"M"
 2330                             PROCWimp_WriteIconText(window%,9,a$)
 2340                             PROCCalculate
 2350                ENDCASE
 2360 ENDCASE
 2370 ENDPROC
 2380 :
 2390 DEF PROCMouseClick_MoistureProbe(window%,icon%,button%)
 2400 LOCAL a%,a$
 2410 CASE button% OF
 2420      WHEN 2: PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4)
 2430              CurrentMenu%=test_menu%
 2440      WHEN 1,4: CASE icon% OF
 2450                     WHEN 5: a%=VAL(FNWimp_ReadIconText(window%,4))
 2460                             IF a%<10 THEN a%+=1
 2470                             PROCWimp_WriteIconText(window%,4,STR$ a%)
 2480                             PROCWimp_WriteIconValidation(window%,2,"sw"+STR$ a%)
 2490                             IF a%=0 THEN a%=1000000 ELSE a%=(600-((a%-1)*50))*1000
 2500                             IF a%<1000 THEN a$=STR$(a%)
 2510                             IF a%>=1000 AND a%<1000000 THEN a$=STR$(a%/1000)+"K"
 2520                             IF a%>=1000000 THEN a$=STR$(a%/1000000)+"M"
 2530                             PROCWimp_WriteIconText(window%,7,a$)
 2540                             PROCCalculate
 2550                     WHEN 6: a%=VAL(FNWimp_ReadIconText(window%,4))
 2560                             IF a%>0 THEN a%-=1
 2570                             PROCWimp_WriteIconText(window%,4,STR$ a%)
 2580                             PROCWimp_WriteIconValidation(window%,2,"sw"+STR$ a%)
 2590                             IF a%=0 THEN a%=1000000 ELSE a%=(600-((a%-1)*50))*1000
 2600                             IF a%<1000 THEN a$=STR$(a%)
 2610                             IF a%>=1000 AND a%<1000000 THEN a$=STR$(a%/1000)+"K"
 2620                             IF a%>=1000000 THEN a$=STR$(a%/1000000)+"M"
 2630                             PROCWimp_WriteIconText(window%,7,a$)
 2640                             PROCCalculate
 2650                ENDCASE
 2660 ENDCASE
 2670 ENDPROC
 2680 :
 2690 DEF PROCMouseClick_Vres(window%,icon%,button%)
 2700 LOCAL a%,a$
 2710 CASE button% OF
 2720      WHEN 2: PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4)
 2730              CurrentMenu%=test_menu%
 2740      WHEN 1,4: CASE icon% OF
 2750                     WHEN 5: a%=VAL(FNWimp_ReadIconText(window%,4))
 2760                             IF a%<250 THEN a%+=1
 2770                             PROCWimp_WriteIconText(window%,4,STR$ a%)
 2780                             a%=a%*4000
 2790                             IF a%<1000 THEN a$=STR$(a%)
 2800                             IF a%>=1000 AND a%<1000000 THEN a$=STR$(a%/1000)+"K"
 2810                             IF a%>=1000000 THEN a$=STR$(a%/1000000)+"M"
 2820                             PROCWimp_WriteIconText(window%,9,a$)
 2830                             PROCCalculate
 2840                     WHEN 6: a%=VAL(FNWimp_ReadIconText(window%,4))
 2850                             IF a%>0 THEN a%-=1
 2860                             PROCWimp_WriteIconText(window%,4,STR$ a%)
 2870                             a%=a%*4000
 2880                             IF a%<1000 THEN a$=STR$(a%)
 2890                             IF a%>=1000 AND a%<1000000 THEN a$=STR$(a%/1000)+"K"
 2900                             IF a%>=1000000 THEN a$=STR$(a%/1000000)+"M"
 2910                             PROCWimp_WriteIconText(window%,9,a$)
 2920                             PROCCalculate
 2930                ENDCASE
 2940 ENDCASE
 2950 ENDPROC
 2960 :
 2970 DEF PROCMouseClick_LDR(window%,icon%,button%)
 2980 LOCAL a,a$,zz$,z$,z%
 2990 CASE button% OF
 3000      WHEN 2: PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4)
 3010              CurrentMenu%=test_menu%
 3020      WHEN 1,4: a=VAL(FNWimp_ReadIconText(window%,4))
 3030                IF a>100 THEN a=100
 3040                IF a<0 THEN a=0
 3050                zz$=STR$ a
 3060                IF INSTR(zz$,".")=0 THEN z%=LEN zz$ ELSE z%=INSTR(zz$,".")+1
 3070                z$=LEFT$(zz$,z%)
 3080                IF INSTR(z$,".")<>0 AND RIGHT$(z$)<>"5" THEN z$=LEFT$(z$)+"5"
 3090                CASE icon% OF
 3100                     WHEN 5: a=VAL(z$)
 3110                             IF a<100 THEN a+=0.5
 3120                             PROCWimp_WriteIconText(window%,4,STR$ a)
 3130                             IF a>=0 AND a<20 THEN a$="Sbulb00"
 3140                             IF a>=20 AND a<40 THEN a$="Sbulb20"
 3150                             IF a>=40 AND a<60 THEN a$="Sbulb40"
 3160                             IF a>=60 AND a<80 THEN a$="Sbulb60"
 3170                             IF a>=80 AND a<100 THEN a$="Sbulb80"
 3180                             IF a=100 THEN a$="Sbulb100"
 3190                             PROCWimp_WriteIconValidation(window%,2,a$)
 3200                             a=(100-a)*10000
 3210                             IF a<1000 THEN a$=STR$(a)
 3220                             IF a>=1000 AND a<1000000 THEN a$=STR$(a/1000)+"K"
 3230                             IF a>=1000000 THEN a$=STR$(a/1000000)+"M"
 3240                             PROCWimp_WriteIconText(window%,9,a$)
 3250                             PROCCalculate
 3260                     WHEN 6: a=VAL(z$)
 3270                             IF a>0 THEN a-=0.5
 3280                             PROCWimp_WriteIconText(window%,4,STR$ a)
 3290                             IF a>=0 AND a<20 THEN a$="Sbulb00"
 3300                             IF a>=20 AND a<40 THEN a$="Sbulb20"
 3310                             IF a>=40 AND a<60 THEN a$="Sbulb40"
 3320                             IF a>=60 AND a<80 THEN a$="Sbulb60"
 3330                             IF a>=80 AND a<100 THEN a$="Sbulb80"
 3340                             IF a=100 THEN a$="Sbulb100"
 3350                             PROCWimp_WriteIconValidation(window%,2,a$)
 3360                             a=(100-a)*10000
 3370                             IF a<1000 THEN a$=STR$(a)
 3380                             IF a>=1000 AND a<1000000 THEN a$=STR$(a/1000)+"K"
 3390                             IF a>=1000000 THEN a$=STR$(a/1000000)+"M"
 3400                             PROCWimp_WriteIconText(window%,9,a$)
 3410                             PROCCalculate
 3420                ENDCASE
 3430 ENDCASE
 3440 ENDPROC
 3450 :
 3460 DEF PROCMouseClick_Design(icon%,button%)
 3470 CASE button% OF
 3480      WHEN 2: PROCWimp_ShowMenu(design_menu%,!block%-64,block%!4)
 3490              CurrentMenu%=design_menu%
 3500 ENDCASE
 3510 ENDPROC
 3520 :
 3530 DEF PROCMouseClick_Test(icon%,button%)
 3540 CASE button% OF
 3550      WHEN 2: PROCWimp_ShowMenu(test_menu%,!block%-64,block%!4)
 3560              CurrentMenu%=test_menu%
 3570      WHEN 1,4: CASE icon% OF
 3580                ENDCASE
 3590 ENDCASE
 3600 ENDPROC
 3610 :
 3620 DEF PROCMouseClick_IconBar(icon%,button%)
 3630 CASE button% OF
 3640      WHEN 1,4: IF  current_window%=design% THEN PROCUser_OpenDesignANDTools
 3650                IF  current_window%=test% THEN PROCUser_OpenTestANDTools(current_top%,current_bottom%) : PROCCalculate
 3660      WHEN 2: PROCWimp_ShowMenuIconBar(iconbar_menu%,!block%-64,3,0)
 3670              CurrentMenu%=iconbar_menu%
 3680 ENDCASE
 3690 ENDPROC
 3700 :
 3710 DEF PROCMouseClick_ToolsBar(icon%,button%)
 3720 CASE button% OF
 3730      WHEN 16,64: IF icon%<6 THEN
 3740                  PROCWimp_DragBox(tools1%,icon%)
 3750                  ELSE
 3760                  PROCWimp_DragBox(tools2%,icon%-6)
 3770                  ENDIF
 3780                  currentdrag%=tools1%
 3790                  currentTOOLSdrag%=icon%
 3800 ENDCASE
 3810 ENDPROC
 3820 :
 3830 DEF PROCPoll_EndDrag
 3840 LOCAL wind%,icon%
 3850 IF currentdrag%=tools1% THEN
 3860 SYS "Wimp_GetPointerInfo",,block%
 3870 wind%=block%!12 : icon%=block%!16
 3880 IF wind%=design% AND (icon%=3 OR icon%=4 OR icon%=11 OR icon%=12 OR icon%=13) THEN
 3890           CASE currentTOOLSdrag% OF
 3900                WHEN 0: IF icon%=12 OR icon%=13 THEN icon%-=9
 3910                        IF icon%=3 OR icon%=4 THEN
 3920                        PROCWimp_HalfSize(design%,icon%)
 3930                        PROCWimp_WriteIconValidation(design%,icon%,"Sldr")
 3940                        PROCWimp_WriteIconText(design%,9+icon%,"")
 3950                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 3960                        IF FNWimp_GetCaretPositionWindow=design% THEN
 3970                           PROCWimp_DisownCaret
 3980                        ENDIF
 3990                        ENDIF
 4000                WHEN 1: IF icon%=12 OR icon%=13 THEN icon%-=9
 4010                        IF icon%=3 OR icon%=4 THEN
 4020                        PROCWimp_HalfSize(design%,icon%)
 4030                        PROCWimp_WriteIconValidation(design%,icon%,"Svres")
 4040                        PROCWimp_WriteIconText(design%,9+icon%,"")
 4050                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 4060                        IF FNWimp_GetCaretPositionWindow=design% THEN
 4070                           PROCWimp_DisownCaret
 4080                        ENDIF
 4090                        ENDIF
 4100                WHEN 2: IF icon%=12 OR icon%=13 THEN icon%-=9
 4110                        IF icon%=3 OR icon%=4 THEN
 4120                        PROCWimp_HalfSize(design%,icon%)
 4130                        PROCWimp_WriteIconValidation(design%,icon%,"Sres")
 4140                        PROCWimp_WriteIconText(design%,9+icon%,"100K")
 4150                        PROCWimp_SetIconButtonType(design%,9+icon%,15)
 4160                        ENDIF
 4170                WHEN 3: IF icon%=12 OR icon%=13 THEN icon%-=9
 4180                        IF icon%=3 OR icon%=4 THEN
 4190                        PROCWimp_HalfSize(design%,icon%)
 4200                        PROCWimp_WriteIconValidation(design%,icon%,"Sther")
 4210                        PROCWimp_WriteIconText(design%,9+icon%,"")
 4220                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 4230                        ENDIF
 4240                WHEN 4: IF icon%=12 OR icon%=13 THEN icon%-=9
 4250                        IF icon%=3 OR icon%=4 THEN
 4260                        PROCWimp_FullSize(design%,icon%)
 4270                        PROCWimp_WriteIconValidation(design%,icon%,"Swet")
 4280                        PROCWimp_WriteIconText(design%,9+icon%,"")
 4290                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 4300                        ENDIF
 4310                WHEN 5: IF icon%=12 OR icon%=13 THEN icon%-=9
 4320                        IF icon%=3 OR icon%=4 THEN
 4330                        PROCWimp_FullSize(design%,icon%)
 4340                        PROCWimp_WriteIconValidation(design%,icon%,"Ssw")
 4350                        PROCWimp_WriteIconText(design%,9+icon%,"")
 4360                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 4370                        ENDIF
 4380                WHEN 6: IF icon%=11 THEN
 4390                        PROCWimp_WriteIconValidation(design%,icon%,"Slamp1")
 4400                        ENDIF
 4410                WHEN 7: IF icon%=11 THEN
 4420                        PROCWimp_WriteIconValidation(design%,icon%,"Sled1")
 4430                        ENDIF
 4440                WHEN 8: IF icon%=11 THEN
 4450                        PROCWimp_WriteIconValidation(design%,icon%,"Sbuzz1")
 4460                        ENDIF
 4470           ENDCASE
 4480 ENDIF
 4490 ENDIF
 4500 ENDPROC
 4510 :
 4520 DEF PROCPoll_KeyPress(window%,icon%,key%)
 4530 LOCAL a%,a$,a,z%,z$,zz$
 4540 CASE window% OF
 4550      WHEN vres1%,vres2%: IF key%=13 THEN
 4560                             a%=VAL(FNWimp_ReadIconText(window%,4))
 4570                             IF a%<0 THEN a%=0
 4580                             IF a%>250 THEN a%=250
 4590                             PROCWimp_WriteIconText(window%,4,STR$ a%)
 4600                             a%=a%*4000
 4610                             IF a%<1000 THEN a$=STR$(a%)
 4620                             IF a%>=1000 AND a%<1000000 THEN a$=STR$(a%/1000)+"K"
 4630                             IF a%>=1000000 THEN a$=STR$(a%/1000000)+"M"
 4640                             PROCWimp_WriteIconText(window%,9,a$)
 4650                             PROCCalculate
 4660                          ELSE
 4670                             PROCWimp_ProcessKey(key%)
 4680                          ENDIF
 4690      WHEN Mprobe1%,Mprobe2%: IF key%=13 THEN
 4700                             a%=VAL(FNWimp_ReadIconText(window%,4))
 4710                             IF a%<0 THEN a%=0
 4720                             IF a%>10 THEN a%=10
 4730                             PROCWimp_WriteIconText(window%,4,STR$ a%)
 4740                             PROCWimp_WriteIconValidation(window%,2,"sw"+STR$ a%)
 4750                             IF a%=0 THEN a%=1000000 ELSE a%=(600-((a%-1)*50))*1000
 4760                             IF a%<1000 THEN a$=STR$(a%)
 4770                             IF a%>=1000 AND a%<1000000 THEN a$=STR$(a%/1000)+"K"
 4780                             IF a%>=1000000 THEN a$=STR$(a%/1000000)+"M"
 4790                             PROCWimp_WriteIconText(window%,7,a$)
 4800                             PROCCalculate
 4810                          ELSE
 4820                             PROCWimp_ProcessKey(key%)
 4830                          ENDIF
 4840      WHEN ldr1%,ldr2%: IF key%=13 THEN
 4850                             a=VAL(FNWimp_ReadIconText(window%,4))
 4860                             IF a>100 THEN a=100
 4870                             IF a<0 THEN a=0
 4880                             zz$=STR$ a
 4890                      IF INSTR(zz$,".")=0 THEN z%=LEN zz$ ELSE z%=INSTR(zz$,".")+1
 4900                             z$=LEFT$(zz$,z%)
 4910                             IF INSTR(z$,".")<>0 AND RIGHT$(z$)<>"5" THEN z$=LEFT$(z$)+"5"
 4920                             PROCWimp_WriteIconText(window%,4,z$)
 4930                             IF a>=0 AND a<20 THEN a$="Sbulb00"
 4940                             IF a>=20 AND a<40 THEN a$="Sbulb20"
 4950                             IF a>=40 AND a<60 THEN a$="Sbulb40"
 4960                             IF a>=60 AND a<80 THEN a$="Sbulb60"
 4970                             IF a>=80 AND a<100 THEN a$="Sbulb80"
 4980                             IF a=100 THEN a$="Sbulb100"
 4990                             PROCWimp_WriteIconValidation(window%,2,a$)
 5000                             a=(100-(VAL z$))*10000
 5010                             IF a<1000 THEN a$=STR$(a)
 5020                             IF a>=1000 AND a<1000000 THEN a$=STR$(a/1000)+"K"
 5030                             IF a>=1000000 THEN a$=STR$(a/1000000)+"M"
 5040                             PROCWimp_WriteIconText(window%,9,a$)
 5050                             PROCCalculate
 5060                          ELSE
 5070                             PROCWimp_ProcessKey(key%)
 5080                          ENDIF
 5090      WHEN thermistor1%,thermistor2%: IF key%=13 THEN
 5100                             a=VAL(FNWimp_ReadIconText(window%,4))
 5110                             IF a>200 THEN a=200
 5120                             IF a<-50 THEN a=-50
 5130                             IF a>=-50 AND a<-25 THEN a$="R7;Sh-"
 5140                             IF a>=-25 AND a<0 THEN a$="R7;Sh0"
 5150                             IF a>=0 AND a<25 THEN a$="R7;Sh1"
 5160                             IF a>=25 AND a<50 THEN a$="R7;Sh2"
 5170                             IF a>=50 AND a<75 THEN a$="R7;Sh3"
 5180                             IF a>=75 AND a<100 THEN a$="R7;Sh4"
 5190                             IF a>=100 AND a<125 THEN a$="R7;Sh5"
 5200                             IF a>=125 AND a<150 THEN a$="R7;Sh6"
 5210                             IF a>=150 AND a<175 THEN a$="R7;Sh7"
 5220                             IF a>=175 AND a<201 THEN a$="R7;Sh8"
 5230                             PROCWimp_WriteIconValidation(window%,2,a$)
 5240                             zz$=STR$ a
 5250                      IF INSTR(zz$,".")=0 THEN z%=LEN zz$ ELSE z%=INSTR(zz$,".")+1
 5260                             z$=LEFT$(zz$,z%)
 5270                             IF INSTR(z$,".")<>0 AND RIGHT$(z$)<>"5" THEN z$=LEFT$(z$)+"5"
 5280                             PROCWimp_WriteIconText(window%,4,z$)
 5290                             a=(250-((VAL z$)+50))*4000
 5300                             IF a<1000 THEN a$=STR$(a)
 5310                             IF a>=1000 AND a<1000000 THEN a$=STR$(a/1000)+"K"
 5320                             IF a>=1000000 THEN a$=STR$(a/1000000)+"M"
 5330                             PROCWimp_WriteIconText(window%,9,a$)
 5340                             PROCCalculate
 5350                          ELSE
 5360                             PROCWimp_ProcessKey(key%)
 5370                          ENDIF
 5380      OTHERWISE : PROCWimp_ProcessKey(key%)
 5390 ENDCASE
 5400 ENDPROC
 5410 :
 5420 DEF PROCPoll_MenuSelection
 5430 sel1%=!block% : sel2%=block%!4 : sel3%=block%!8
 5440 SYS "Wimp_GetPointerInfo",,block%
 5450 button%=block%!8
 5460 CASE CurrentMenu% OF
 5470      WHEN iconbar_menu%: CASE sel1% OF
 5480                               WHEN 2: quit%=TRUE
 5490                          ENDCASE
 5500      WHEN design_menu%: CASE sel1% OF
 5510                               WHEN 0: CASE sel2% OF
 5520                                            WHEN 0,1: icon%=sel2%+3
 5530           CASE sel3% OF
 5540                WHEN 0: PROCWimp_HalfSize(design%,icon%)
 5550                        PROCWimp_WriteIconValidation(design%,icon%,"Sldr")
 5560                        PROCWimp_WriteIconText(design%,9+icon%,"")
 5570                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 5580                        IF FNWimp_GetCaretPositionWindow=design% THEN
 5590                           PROCWimp_DisownCaret
 5600                        ENDIF
 5610                WHEN 5: PROCWimp_HalfSize(design%,icon%)
 5620                        PROCWimp_WriteIconValidation(design%,icon%,"Svres")
 5630                        PROCWimp_WriteIconText(design%,9+icon%,"")
 5640                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 5650                        IF FNWimp_GetCaretPositionWindow=design% THEN
 5660                           PROCWimp_DisownCaret
 5670                        ENDIF
 5680                WHEN 4: PROCWimp_HalfSize(design%,icon%)
 5690                        PROCWimp_WriteIconValidation(design%,icon%,"Sres")
 5700                        PROCWimp_WriteIconText(design%,9+icon%,"100K")
 5710                        PROCWimp_SetIconButtonType(design%,9+icon%,15)
 5720                WHEN 1: PROCWimp_HalfSize(design%,icon%)
 5730                        PROCWimp_WriteIconValidation(design%,icon%,"Sther")
 5740                        PROCWimp_WriteIconText(design%,9+icon%,"")
 5750                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 5760                        IF FNWimp_GetCaretPositionWindow=design% THEN
 5770                           PROCWimp_DisownCaret
 5780                        ENDIF
 5790                WHEN 2: PROCWimp_FullSize(design%,icon%)
 5800                        PROCWimp_WriteIconValidation(design%,icon%,"Swet")
 5810                        PROCWimp_WriteIconText(design%,9+icon%,"")
 5820                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 5830                        IF FNWimp_GetCaretPositionWindow=design% THEN
 5840                           PROCWimp_DisownCaret
 5850                        ENDIF
 5860                WHEN 3: PROCWimp_FullSize(design%,icon%)
 5870                        PROCWimp_WriteIconValidation(design%,icon%,"Ssw")
 5880                        PROCWimp_WriteIconText(design%,9+icon%,"")
 5890                        PROCWimp_SetIconButtonType(design%,9+icon%,0)
 5900                        IF FNWimp_GetCaretPositionWindow=design% THEN
 5910                           PROCWimp_DisownCaret
 5920                        ENDIF
 5930                        ENDCASE
 5940                                            WHEN 2: CASE sel3% OF
 5950                                WHEN 0: PROCWimp_WriteIconValidation(design%,11,"Slamp1")
 5960                                WHEN 1: PROCWimp_WriteIconValidation(design%,11,"Sled1")
 5970                                WHEN 2: PROCWimp_WriteIconValidation(design%,11,"Sbuzz1")
 5980                                                    ENDCASE
 5990                                       ENDCASE
 6000                               WHEN 1: PROCWimp_CloseWindow(design%)
 6010                                       PROCWimp_CloseWindow(tools1%)
 6020                                       PROCWimp_CloseWindow(tools2%)
 6030                                       current_window%=test%
 6040                                       button%=3
 6050                                       PROCTest
 6060                               WHEN 2: IF FNWimp_MenuTicked(design_menu%,2) THEN
 6070                                       PROCWimp_MenuUnTickItem(design_menu%,2)
 6080                                       PROCWimp_CloseWindow(tools1%)
 6090                                       PROCWimp_CloseWindow(tools2%)
 6100                                       ELSE
 6110                                       PROCWimp_MenuTickItem(design_menu%,2)
 6120                                       PROCUser_OpenDesignANDTools
 6130                                       ENDIF
 6140                          ENDCASE
 6150      WHEN test_menu%:  CASE sel1% OF
 6160                              WHEN 0: PROCUser_OpenDesignANDTools
 6170                                      PROCWimp_CloseWindow(test%)
 6180                                      PROCWimp_CloseWindow(current_top%)
 6190                                      PROCWimp_CloseWindow(current_bottom%)
 6200                                      current_window%=design%
 6210                                      buzzer%=FALSE
 6220                                      button%=3
 6230                        ENDCASE
 6240 ENDCASE
 6250 IF button%=1 THEN PROCWimp_ShowMenu(CurrentMenu%,0,0)
 6260 ENDPROC
 6270 :
 6280 DEF PROCPoll_IncommingMessage(message%)
 6290 CASE message% OF
 6300      WHEN 0: quit%=TRUE
 6310 ENDCASE
 6320 ENDPROC
 6330 :
 6340 DEF PROCWimp_DragBox(window%,icon%)
 6350 LOCALx%,y%
 6360  !block%=window%
 6370  SYS"Wimp_GetWindowState",,block%
 6380  x%=block%!4-block%!20:y%=block%!16-block%!24
 6390  block%!4=icon%
 6400  SYS"Wimp_GetIconState",,block%
 6410  !block%=window%
 6420  block%!4=5
 6430  block%!8=x%+block%!8:block%!12=y%+block%!12
 6440  block%!16=x%+block%!16:block%!20=y%+block%!20
 6450  block%!24=0:block%!28=0
 6460  block%!32=&7FFFFFFF:block%!36=&7FFFFFFF
 6470  SYS"Wimp_DragBox",,block%
 6480 ENDPROC
 6490 :
 6500 DEF PROCTest
 6510 PROCWimp_ChangeWindowTitle(test%,FNWimp_ReadIconText(design%,1))
 6520 PROCWimp_WriteIconValidation(test%,2,FNWimp_ReadIconValidation(design%,3))
 6530 PROCWimp_WriteIconValidation(test%,1,FNWimp_ReadIconValidation(design%,4))
 6540 PROCWimp_WriteIconValidation(test%,3,FNWimp_ReadIconValidation(design%,11))
 6550 CASE FNMisc_TurnToLowerCase(FNWimp_ReadIconValidation(test%,2)) OF
 6560      WHEN "svres" : current_top%=vres1%
 6570                     PROCWimp_HalfSize(test%,2)
 6580      WHEN "sres" : current_top%=res1%
 6590                    PROCWimp_WriteIconText(res1%,3,FNWimp_ReadIconText(design%,12))
 6600                    PROCWimp_HalfSize(test%,2)
 6610      WHEN "sldr" : current_top%=ldr1%
 6620                    PROCWimp_HalfSize(test%,2)
 6630      WHEN "sther" : current_top%=thermistor1%
 6640                     PROCWimp_HalfSize(test%,2)
 6650      WHEN "ssw" : current_top%=switch1%
 6660                   PROCWimp_FullSize(test%,2)
 6670      WHEN "swet" : current_top%=Mprobe1%
 6680                    PROCWimp_FullSize(test%,2)
 6690 ENDCASE
 6700 CASE FNMisc_TurnToLowerCase(FNWimp_ReadIconValidation(test%,1)) OF
 6710      WHEN "svres" : current_bottom%=vres2%
 6720                     PROCWimp_HalfSize(test%,1)
 6730      WHEN "sres" : current_bottom%=res2%
 6740                    PROCWimp_WriteIconText(res2%,3,FNWimp_ReadIconText(design%,13))
 6750                    PROCWimp_HalfSize(test%,1)
 6760      WHEN "sldr" : current_bottom%=ldr2%
 6770                    PROCWimp_HalfSize(test%,1)
 6780      WHEN "sther" : current_bottom%=thermistor2%
 6790                     PROCWimp_HalfSize(test%,1)
 6800      WHEN "ssw" : current_bottom%=switch2%
 6810                   PROCWimp_FullSize(test%,1)
 6820      WHEN "swet" : current_bottom%=Mprobe2%
 6830                    PROCWimp_FullSize(test%,1)
 6840 ENDCASE
 6850 PROCUser_OpenTestANDTools(current_top%,current_bottom%)
 6860 PROCCalculate
 6870 ENDPROC
 6880 :
 6890 DEF PROCCalculate
 6900 LOCAL vout,vout$,r1$,r2$,q%,a$
 6910 CASE current_top% OF
 6920      WHEN vres1%,ldr1%,thermistor1%: r1$=FNWimp_ReadIconText(current_top%,9)
 6930      WHEN res1%: r1$=FNWimp_ReadIconText(current_top%,3)
 6940      WHEN Mprobe1%: r1$=FNWimp_ReadIconText(current_top%,7)
 6950      WHEN switch1%: !block%=switch1% : block%!4=2
 6960                     SYS "Wimp_GetIconState",,block%
 6970                     IF ((block%!24) AND (1<<21))>0 THEN r1$="0" ELSE r1$="9999M"
 6980 ENDCASE
 6990 CASE current_bottom% OF
 7000      WHEN vres2%,ldr2%,thermistor2%: r2$=FNWimp_ReadIconText(current_bottom%,9)
 7010      WHEN res2%: r2$=FNWimp_ReadIconText(current_bottom%,3)
 7020      WHEN Mprobe2%: r2$=FNWimp_ReadIconText(current_bottom%,7)
 7030      WHEN switch2%: !block%=switch2% : block%!4=2
 7040                     SYS "Wimp_GetIconState",,block%
 7050                     IF ((block%!24) AND (1<<21))>0 THEN r2$="0" ELSE r2$="9999M"
 7060 ENDCASE
 7070 PROCWimp_WriteIconText(test%,20,r2$)
 7080 PROCWimp_WriteIconText(test%,19,r1$+" + "+r2$)
 7090 CASE FNMisc_TurnToLowerCase(RIGHT$(r1$)) OF
 7100      WHEN "r": r1$=LEFT$(r1$)
 7110      WHEN "k": r1$=LEFT$(r1$)+"000"
 7120      WHEN "m": r1$=LEFT$(r1$)+"000000"
 7130 ENDCASE
 7140 CASE FNMisc_TurnToLowerCase(RIGHT$(r2$)) OF
 7150      WHEN "r": r2$=LEFT$(r2$)
 7160      WHEN "k": r2$=LEFT$(r2$)+"000"
 7170      WHEN "m": r2$=LEFT$(r2$)+"000000"
 7180 ENDCASE
 7190 IF VAL(r1$)=0 AND VAL(r2$)=0 THEN r1$="1" : r2$="1"
 7200 vout=(INT(EVAL(r2$+"/"+"("+r1$+" + "+r2$+")*5")*100))/100
 7210 vout$=LEFT$(STR$ vout,4)
 7220 IF vout>=0.7 THEN
 7230                a$=FNMisc_TurnToLowerCase(LEFT$(FNWimp_ReadIconValidation(test%,3)))
 7240                IF a$<>"sbuzz" THEN PROCWimp_WriteIconValidation(test%,3,a$+"2")
 7250                IF a$="sbuzz" THEN buzzer%=TRUE
 7260 ELSE
 7270                a$=FNMisc_TurnToLowerCase(LEFT$(FNWimp_ReadIconValidation(test%,3)))
 7280                IF a$<>"sbuzz" THEN PROCWimp_WriteIconValidation(test%,3,a$+"1")
 7290                IF a$="sbuzz" THEN buzzer%=FALSE
 7300 ENDIF
 7310 PROCWimp_WriteIconText(test%,23,vout$+"V")
 7320 PROCWimp_WriteIconText(test%,5,vout$)
 7330 ENDPROC
 7340 :
 7350 DEF PROCUser_OpenDesignANDTools
 7360 LOCAL a%,b%,c%
 7370 !block%=design%
 7380 SYS "Wimp_GetWindowState",,block%
 7390 block%!28=-1
 7400 SYS "Wimp_OpenWindow",,block%
 7410 IF FNWimp_MenuTicked(design_menu%,2) THEN
 7420 a%=block%!4 : b%=block%!8 : c%=block%!16
 7430 !block%=tools2%
 7440 block%!4=a% :block%!8=b%-130
 7450 block%!12=a%+462 :block%!16=b%-4
 7460 block%!28=-1
 7470 SYS "Wimp_OpenWindow",,block%
 7480 !block%=tools1%
 7490 block%!4=a%-250 :block%!8=b%-116
 7500 block%!12=a%+156 :block%!16=c%
 7510 block%!28=-1
 7520 SYS "Wimp_OpenWindow",,block%
 7530 ENDIF
 7540 ENDPROC
 7550 :
 7560 DEF PROCUser_OpenTestANDTools(top%,bot%)
 7570 LOCAL a%,b%,c%
 7580 !block%=test%
 7590 SYS "Wimp_GetWindowState",,block%
 7600 block%!28=-1
 7610 SYS "Wimp_OpenWindow",,block%
 7620 a%=block%!4 : b%=block%!8 : c%=block%!16
 7630 !block%=top%
 7640 block%!4=a%-348 :block%!8=c%-264
 7650 block%!12=a% :block%!16=c%
 7660 block%!28=-1
 7670 SYS "Wimp_OpenWindow",,block%
 7680 !block%=bot%
 7690 block%!4=a%-348 :block%!8=c%-528
 7700 block%!12=a% :block%!16=c%-264
 7710 block%!28=-1
 7720 SYS "Wimp_OpenWindow",,block%
 7730 ENDPROC
 7740 :
 7750 DEF FNMisc_TurnToLowerCase(a$)
 7760 LOCAL q$,q%
 7770 q$=""
 7780 FOR q%=1 TO LEN a$
 7790 q$+=CHR$((ASC MID$(a$,q%,1)) OR 32)
 7800 NEXT
 7810 =q$
 7820 :
 7830 DEF FNWimp_CreateIcon(whan%,ix%,iy%,iw%,ih%,flag%,text$)
 7840 LOCAL ihandle%
 7850 !block%=whan%
 7860 block%!4=ix%
 7870 block%!8=iy%
 7880 block%!12=ix%+iw%
 7890 block%!16=iy%+ih%
 7900 block%!20=flag%
 7910 $(block%+24)=text$
 7920 SYS "Wimp_CreateIcon",,block% TO ihandle%
 7930 =ihandle%
 7940 :
 7950 DEF PROCWimp_SetIconButtonType(whan%,icon%,type%)
 7960 !block%=whan% : block%!4=icon% : block%!8=(type%<<12) : block%!12=&F<<12
 7970 SYS "Wimp_SetIconState",,block%
 7980 ENDPROC
 7990 :
 8000 DEF FNWimp_ReadIconText(whan%,icon%)
 8010 !block%=whan%
 8020 block%!4=icon%
 8030 SYS "Wimp_GetIconState",,block%
 8040 =$(block%!28)
 8050 :
 8060 DEF PROCWimp_WriteIconText(whan%,icon%,text$)
 8070 !block%=whan%
 8080 block%!4=icon%
 8090 SYS "Wimp_GetIconState",,block%
 8100 $(block%!28)=text$
 8110 block%!8=0 : block%!12=0
 8120 SYS "Wimp_SetIconState",,block%
 8130 ENDPROC
 8140 :
 8150 DEF FNWimp_ReadIconValidation(whan%,icon%)
 8160 !block%=whan%
 8170 block%!4=icon%
 8180 SYS "Wimp_GetIconState",,block%
 8190 =$(block%!32)
 8200 :
 8210 DEF PROCWimp_WriteIconValidation(whan%,icon%,valid$)
 8220 !block%=whan%
 8230 block%!4=icon%
 8240 SYS "Wimp_GetIconState",,block%
 8250 $(block%!32)=valid$
 8260 block%!8=0 : block%!12=0
 8270 SYS "Wimp_SetIconState",,block%
 8280 ENDPROC
 8290 :
 8300 DEF PROCWimp_ShowMenu(menu%,x%,y%)
 8310 SYS "Wimp_CreateMenu",,menu%,x%,y%
 8320 ENDPROC
 8330 :
 8340 DEF PROCWimp_ShowMenuIconBar(menu%,x%,items%,lines%)
 8350 PROCWimp_ShowMenu(menu%,x%,(lines%*22)+(items%*44)+96)
 8360 ENDPROC
 8370 :
 8380 DEF FNWimp_MenuNoOfEntries(menu$)
 8390 LOCAL n% ,j% : n%=0 : j%=0
 8400 REPEAT
 8410 j%=INSTR(menu$,"\",j%+1)
 8420 IF j%<>0 THEN n%+=1
 8430 UNTIL j%=0
 8440 =n%
 8450 :
 8460 DEF FNWimp_setupmenuFromStringFontyitems(menu$,font%)
 8470 LOCAL menu%,index%,width%,length%,k%,s%
 8480 DIM menu% 28+FNWimp_MenuNoOfEntries(menu$)*24
 8490 menu%?12=7   : menu%?13=2  : menu%?14=7 :menu%?15=0
 8500 menu%!16=140 : menu%!20=44 : menu%!24=0
 8510 index%=menu%+28
 8520 $menu%=LEFT$(menu$,INSTR(menu$,"\")-1)
 8530 width%=LEN(LEFT$(menu$,INSTR(menu$,"\")-1))
 8540 menu$+="\" : Menu_NoOfEntries%=0
 8550 WHILE menu$<>""
 8560 menu$=MID$(menu$,INSTR(menu$,"\")+1)
 8570 CASE menu$ OF
 8580  WHEN ""
 8590  OTHERWISE :
 8600  !index%=0 : index%!4=-1 : index%!8=&21 OR ((font%<<24) OR (1<<6))
 8610   length%=INSTR(menu$,"\")-1
 8620   k%=INSTR(LEFT$(menu$,length%),">")
 8630   CASE k% OF
 8640    WHEN 0
 8650    OTHERWISE
 8660     s%=EVAL(MID$(menu$,k%+1,length%-k%))
 8670     index%!4=s%
 8680     length%=k%-1
 8690   ENDCASE
 8700   $(index%+12)=LEFT$(menu$,length%)
 8710   IF length%>width% THEN width%=length%
 8720  index%+=24
 8730 ENDCASE
 8740 ENDWHILE
 8750 menu%!16=16*(width%+1)
 8760 index%!-24=index%!-24 OR &80 :
 8770 =menu%
 8780 :
 8790 DEF FNWimp_LoadSprites(file$)
 8800 LOCAL file%,size%,area%
 8810 file%=OPENIN file$
 8820 size%=(EXT#file%)+16
 8830 CLOSE#file%
 8840 DIM area% size%
 8850 !area%=size%
 8860 area%!8=0
 8870 SYS "OS_SpriteOp",&109,area%
 8880 SYS "OS_SpriteOp",&10A,area%,file$
 8890 =area%
 8900 :
 8910 DEF FNWimp_ErrorBox(err$,title$,flags%)
 8920 LOCAL q%
 8930 !block%=255
 8940 $(block%+4)=err$+CHR$0
 8950 SYS "Wimp_ReportError",block%,flags%,title$ TO ,q%
 8960 =q%
 8970 :
 8980 DEF FNWimp_ErrorBoxOK(err$,title$)
 8990 =FNWimp_ErrorBox(err$,title$,1)
 9000 :
 9010 DEF FNWimp_Initialise(appname$)
 9020 LOCAL taskhandle%
 9030 SYS "Wimp_Initialise",310,&4B534154,appname$ TO ,taskhandle%
 9040 =taskhandle%
 9050 :
 9060 DEF FNWimp_CloseDown(taskhandle%)
 9070 SYS "Wimp_CloseDown",taskhandle%,&4B534154
 9080 =0
 9090 :
 9100 DEF PROCWimp_ProcessKey(key%)
 9110 SYS "Wimp_ProcessKey",key%
 9120 ENDPROC
 9130 :
 9140 DEF PROCWimp_CloseWindow(win%)
 9150 !block%=win%
 9160 SYS "Wimp_GetWindowState",,block%
 9170 SYS "Wimp_CloseWindow",,block%
 9180 ENDPROC
 9190 :
 9200 DEF FNWimp_InitFontsArray
 9210 LOCAL fontZ%,N
 9220 DIM fontZ% 256
 9230 FOR N=0 TO 256 STEP 4
 9240 !(N+fontZ%)=0
 9250 NEXT
 9260 =fontZ%
 9270 :
 9280 DEF PROCWimp_RemoveFontsArray(fontZZ%)
 9290 SYS "Hourglass_On"
 9300 FOR n%=0 TO 255
 9310 SYS "Hourglass_Percentage",(n%/255)*100
 9320 q%=?(fontZZ%+n%)
 9330 WHILE q%>0
 9340 SYS "Font_LoseFont",n%
 9350 q%-=1
 9360 ENDWHILE
 9370 NEXT
 9380 SYS "Hourglass_Off"
 9390 ENDPROC
 9400 :
 9410 DEF PROCWimp_OpenWindow(win%)
 9420 !block%=win%
 9430 SYS "Wimp_GetWindowState",,block%
 9440 block%!28=-1
 9450 SYS "Wimp_OpenWindow",,block%
 9460 ENDPROC
 9470 :
 9480 DEF PROCWimp_OpenTemplate(file$)
 9490 SYS "Wimp_OpenTemplate",,file$
 9500 ENDPROC
 9510 :
 9520 DEF PROCWimp_CloseTemplate
 9530 SYS "Wimp_CloseTemplate"
 9540 ENDPROC
 9550 :
 9560 DEF FNWimp_LoadTemplateFontZ(template$,iconSpace%,length%,spri%,fontarray%)
 9570 LOCAL q%
 9580 SYS "Wimp_LoadTemplate",,block%,iconSpace%,iconSpace%+length%,fontarray%,template$,0
 9590 block%!64=spri%
 9600 SYS "Wimp_CreateWindow",,block% TO q%
 9610 =q%
 9620 :
 9630 DEF FNWimp_LoadTemplate(template$,iconSpace%,length%,spri%)
 9640 LOCAL q%
 9650 SYS "Wimp_LoadTemplate",,block%,iconSpace%,iconSpace%+length%,0,template$,0
 9660 block%!64=spri%
 9670 SYS "Wimp_CreateWindow",,block% TO q%
 9680 =q%
 9690 :
 9700 DEF PROCWimp_ChangeWindowTitle(win%,text$)
 9710 LOCAL q%
 9720 !block%=win%
 9730 SYS "Wimp_GetWindowInfo",,block%
 9740 q%=block%!76
 9750 $q%=text$
 9760 block%!84=LEN text$
 9770 ENDPROC
 9780 :
 9790 DEF FNWimp_GetCaretPositionWindow
 9800 SYS "Wimp_GetCaretPosition",,block%
 9810 =!block%
 9820 :
 9830 DEF PROCWimp_DisownCaret
 9840 SYS "Wimp_SetCaretPosition",-1
 9850 ENDPROC
 9860 :
 9870 DEF PROCWimp_HalfSize(wind%,icon%)
 9880 !block%=wind%
 9890 block%!4=icon%
 9900 block%!8=1<<11
 9910 block%!12=1<<11
 9920 SYS "Wimp_SetIconState",,block%
 9930 ENDPROC
 9940 :
 9950 DEF PROCWimp_FullSize(wind%,icon%)
 9960 !block%=wind%
 9970 block%!4=icon%
 9980 block%!8=0
 9990 block%!12=1<<11
10000 SYS "Wimp_SetIconState",,block%
10010 ENDPROC
10020 :
10030 DEF FNWimp_setupmenuFromStringINDFontyitems(menuIND%,menu$,font%)
10040 LOCAL menu%,index%,width%,length%,k%,s%
10050 DIM menu% 28+FNWimp_MenuNoOfEntries(menu$)*24
10060 menu%?12=7   : menu%?13=2  : menu%?14=7 :menu%?15=0
10070 menu%!16=140 : menu%!20=44 : menu%!24=0
10080 index%=menu%+28
10090 $menu%=LEFT$(menu$,INSTR(menu$,"\")-1)
10100 width%=LEN(LEFT$(menu$,INSTR(menu$,"\")-1))
10110 menu$+="\" : Menu_NoOfEntries%=0
10120 WHILE menu$<>""
10130 menu$=MID$(menu$,INSTR(menu$,"\")+1)
10140 CASE menu$ OF
10150  WHEN ""
10160  OTHERWISE :
10170  !index%=0 : index%!4=-1 : index%!8=&121 OR ((font%<<24) OR (1<<6))
10180   length%=INSTR(menu$,"\")-1
10190   k%=INSTR(LEFT$(menu$,length%),">")
10200   CASE k% OF
10210    WHEN 0
10220    OTHERWISE
10230     s%=EVAL(MID$(menu$,k%+1,length%-k%))
10240     index%!4=s%
10250     length%=k%-1
10260   ENDCASE
10270   index%!12=menuIND%
10280   index%!18=-1
10290   index%!22=32
10300   $menuIND%=LEFT$(menu$,length%)
10310   menuIND%+=32
10320   IF length%>width% THEN width%=length%
10330  index%+=24
10340 ENDCASE
10350 ENDWHILE
10360 menu%!16=16*(width%+1)
10370 index%!-24=index%!-24 OR &80 :
10380 =menu%
10390 :
10400 DEF PROCWimp_MenuTickItem(menu%,item%)
10410 LOCAL a%
10420 a%=menu%+28+(item%*24)
10430 ?a%=(?a% OR 1)
10440 ENDPROC
10450 :
10460 DEF PROCWimp_MenuUnTickItem(menu%,item%)
10470 LOCAL a%
10480 a%=menu%+28+(item%*24)
10490 ?a%=(?a% AND 254)
10500 ENDPROC
10510 :
10520 DEF FNWimp_MenuTicked(menu%,item%)
10530 LOCAL a%
10540 a%=menu%+28+(item%*24)
10550 =(?a% AND 1)>0
10560 :

 � block% 1000
 �User_SetVariables
> � � q%=�Wimp_ErrorBoxOK("Unexpected ERROR: "+�$,app$) : �
(' TaskHandle%=�Wimp_Initialise(app$)
2` � � q%=�Wimp_ErrorBoxOK("Unexpected ERROR: "+�$,app$) : q%=�Wimp_CloseDown(TaskHandle%) : �
< �User_LoadResources
F �User_SetUpResources
P �User_SetUpMenus
Z quit%=�
dD � � q%=�Wimp_ErrorBoxOK("Unexpected ERROR: "+�$,app$) : quit%=�
n ȕ quit%=�
x �User_Poll
� �
� �User_AppClosingDown
�$ q%=�Wimp_CloseDown(TaskHandle%)
� �
�
�
� � �User_SetVariables
� app$="Transistor"
�$ fontarray%=�Wimp_InitFontsArray
� buzzer%=�
� resistor%=3
� �
� :
 � �User_LoadResources
; sparea%=�Wimp_LoadSprites("<Electronics$Dir>.Sprites")
6 �Wimp_OpenTemplate("<Electronics$Dir>.Templates")
"& length%=70 : � iconSpace% length%
,D tools1%=�Wimp_LoadTemplate("Tools1",iconSpace%,length%,sparea%)
6& length%=32 : � iconSpace% length%
@D tools2%=�Wimp_LoadTemplate("Tools2",iconSpace%,length%,sparea%)
J' length%=205 : � iconSpace% length%
TW info_window%=�Wimp_LoadTemplateFontZ("info",iconSpace%,length%,sparea%,fontarray%)
^' length%=130 : � iconSpace% length%
hT design%=�Wimp_LoadTemplateFontZ("design",iconSpace%,length%,sparea%,fontarray%)
r' length%=200 : � iconSpace% length%
|P test%=�Wimp_LoadTemplateFontZ("Test",iconSpace%,length%,sparea%,fontarray%)
�& length%=30 : � iconSpace% length%
�H res_wind%=�Wimp_LoadTemplate("RESISTOR",iconSpace%,length%,sparea%)
�& length%=85 : � iconSpace% length%
�V options%=�Wimp_LoadTemplateFontZ("options",iconSpace%,length%,sparea%,fontarray%)
�& length%=15 : � iconSpace% length%
�O res1%=�Wimp_LoadTemplateFontZ("Res",iconSpace%,length%,sparea%,fontarray%)
� � iconSpace% length%
�O res2%=�Wimp_LoadTemplateFontZ("Res",iconSpace%,length%,sparea%,fontarray%)
�& length%=75 : � iconSpace% length%
�O ldr1%=�Wimp_LoadTemplateFontZ("LDR",iconSpace%,length%,sparea%,fontarray%)
� � iconSpace% length%
�O ldr2%=�Wimp_LoadTemplateFontZ("LDR",iconSpace%,length%,sparea%,fontarray%)
�% length%=49: � iconSpace% length%
Q vres1%=�Wimp_LoadTemplateFontZ("VRES",iconSpace%,length%,sparea%,fontarray%)
 � iconSpace% length%
Q vres2%=�Wimp_LoadTemplateFontZ("VRES",iconSpace%,length%,sparea%,fontarray%)
&% length%=55: � iconSpace% length%
0] thermistor1%=�Wimp_LoadTemplateFontZ("thermistor",iconSpace%,length%,sparea%,fontarray%)
: � iconSpace% length%
D] thermistor2%=�Wimp_LoadTemplateFontZ("thermistor",iconSpace%,length%,sparea%,fontarray%)
N% length%=55: � iconSpace% length%
XR Mprobe1%=�Wimp_LoadTemplateFontZ("wet",iconSpace%,length%,sparea%,fontarray%)
b � iconSpace% length%
lR Mprobe2%=�Wimp_LoadTemplateFontZ("wet",iconSpace%,length%,sparea%,fontarray%)
v% length%=15: � iconSpace% length%
�U switch1%=�Wimp_LoadTemplateFontZ("switch",iconSpace%,length%,sparea%,fontarray%)
� � iconSpace% length%
�U switch2%=�Wimp_LoadTemplateFontZ("switch",iconSpace%,length%,sparea%,fontarray%)
� �Wimp_CloseTemplate
� current_window%=design%
� current_top%=res1%
� current_bottom%=res2%
� �
� :
� � �User_SetUpResources
�J iconbar_icon%=�Wimp_CreateIcon(-1,0,0,80,80,%11000000011010,"!Trans")
�0 �Wimp_WriteIconValidation(design%,3,"Sres")
�0 �Wimp_WriteIconValidation(design%,4,"Sres")
 �
 :
 � �User_SetUpMenus
 B ș "Font_FindFont",,"homerton.medium",16*12,16*12 � homerton%
*� iconbar_menu%=�Wimp_setupmenuFromStringFontyitems(app$+"\Info>"+(� info_window%)+"\Options>"+(� options%)+"\Quit",homerton%)
4 � menu_IND% 32*6
>� res_menu%=�Wimp_setupmenuFromStringINDFontyitems(menu_IND%,"Input\LDR\Thermistor\Moisture Probe\Switch\Resistor\Variable Resistor",homerton%)
HV out_menu%=�Wimp_setupmenuFromStringFontyitems("Output\Lamp\LED\Buzzer",homerton%)
R� enter_menu%=�Wimp_setupmenuFromStringFontyitems("Enter\R1>"+(� res_menu%)+"\R2>"+(� res_menu%)+"\Output>"+(� out_menu%),homerton%)
\q design_menu%=�Wimp_setupmenuFromStringFontyitems(app$+"\Enter>"+(� enter_menu%)+"\Test\Toolboxes",homerton%)
f' �Wimp_MenuTickItem(design_menu%,2)
pO test_menu%=�Wimp_setupmenuFromStringFontyitems(app$+"\ReDesign",homerton%)
z �
� :
� � �User_AppClosingDown
�! ș "Font_LoseFont",homerton%
�' �Wimp_RemoveFontsArray(fontarray%)
� �
� :
� � �User_Poll
�& ș "OS_ReadMonotonicTime" � time%
� time%+=70
�6 � buzzer%=� ș "Wimp_Poll",&3833,block% � reason%
�@ � buzzer%=� ș "Wimp_PollIdle",&3832,block%,time% � reason%
� Ȏ reason% �
�
 � 0: � 7
% � 2:ș "Wimp_OpenWindow",,block%
        �PollOpenWindow
& � 3:È™ "Wimp_CloseWindow",,block%
$'        �Poll_WindowClosed(!block%)
.7 � 6:�Poll_MouseClick(block%!12,block%!16,block%!8)
8 � 7:�Poll_EndDrag
B3 � 8:�Poll_KeyPress(!block%,block%!4,block%!24)
L � 9:�Poll_MenuSelection
V/ � 17,18 :�Poll_IncommingMessage(block%!16)
` �
j �
t :
~ � �PollOpenWindow
� Ȏ !block% �
�-      � design%: �User_OpenDesignANDTools
�G      � test%: �User_OpenTestANDTools(current_top%,current_bottom%)
� �
� �
� :
�" � �Poll_WindowClosed(window%)
� Ȏ window% �
�/      � design%: �Wimp_CloseWindow(tools1%)
�2                    �Wimp_CloseWindow(tools2%)
�2      � test%: �Wimp_CloseWindow(current_top%)
�8                  �Wimp_CloseWindow(current_bottom%)
                  buzzer%=�

 �
 �
 :
(. � �Poll_MouseClick(window%,icon%,button%)
2N � Don't forget when you are opening menus you must up date <CurrentMenu%>
< � x%,y%,a$
F Ȏ window% �
P1      � -2:�MouseClick_IconBar(icon%,button%)
Z7      � tools1%:�MouseClick_ToolsBar(icon%,button%)
d9      � tools2%:�MouseClick_ToolsBar(icon%+6,button%)
n5      � design%:�MouseClick_Design(icon%,button%)
x1      � test%:�MouseClick_Test(icon%,button%)
�0      � res1%,res2%:� button%=2 � icon%<>4 �
�J                        �Wimp_ShowMenu(test_menu%,!block%-64,block%!4)
�3                        CurrentMenu%=test_menu%
�                       �
�&                       � icon%=4 �
�7                        x%=!block%-64 : y%=block%!4
�<                        a$=�Wimp_ReadIconText(window%,3)
�=                         Ȏ �Misc_TurnToLowerCase(�a$)) �
�0                              � "r": a$=�a$)
�6                              � "k": a$=�a$)+"000"
�9                              � "m": a$=�a$)+"000000"
�                         �
�P                         ș "Wimp_WhichIcon",options%,block%,&3F0000,&210000
L                         � !block%=2 � !block%=3 � resistor%=(!block%)+1
           Ȏ resistor% �
                � 3:
";                        �Wimp_ShowMenu(res_wind%,x%,y%)
,2                        CurrentMenu%=res_wind%
6O                        �Wimp_WriteIconValidation(res_wind%,1,"S"+�a$,1,1))
@O                        �Wimp_WriteIconValidation(res_wind%,2,"S"+�a$,2,1))
JM             �Wimp_WriteIconValidation(res_wind%,3,"S"+�(�(�a$,3,� a$))))
TO                        �Wimp_WriteIconValidation(res_wind%,4,"Sresistor4")
^                � 4:
h;                        �Wimp_ShowMenu(res_wind%,x%,y%)
r2                        CurrentMenu%=res_wind%
|O                        �Wimp_WriteIconValidation(res_wind%,0,"S"+�a$,1,1))
�O                        �Wimp_WriteIconValidation(res_wind%,1,"S"+�a$,2,1))
�O                        �Wimp_WriteIconValidation(res_wind%,2,"S"+�a$,3,1))
�M             �Wimp_WriteIconValidation(res_wind%,3,"S"+�(�(�a$,4,� a$))))
�O                        �Wimp_WriteIconValidation(res_wind%,4,"Sresistor5")
�
�           �
�                       �
�A      � vres1%,vres2%:�MouseClick_Vres(window%,icon%,button%)
�>      � ldr1%,ldr2%:�MouseClick_LDR(window%,icon%,button%)
�S      � thermistor1%,thermistor2%:�MouseClick_Thermistor(window%,icon%,button%)
�N      � Mprobe1%,Mprobe2%:�MouseClick_MoistureProbe(window%,icon%,button%)
�      � switch1%,switch2%:� button%<>2 � �Calculate � �Wimp_ShowMenu(test_menu%,!block%-64,block%!4) : CurrentMenu%=test_menu%
� �
 �
 :
4 � �MouseClick_Thermistor(window%,icon%,button%)
& � a,a$,zz$,z$,z%
0 Ȏ button% �
:=      � 2: �Wimp_ShowMenu(test_menu%,!block%-64,block%!4)
D)              CurrentMenu%=test_menu%
N3      � 1,4: a=�(�Wimp_ReadIconText(window%,4))
X#                � a>200 � a=200
b#                � a<-50 � a=-50
l                zz$=� a
v=                � �zz$,".")=0 � z%=� zz$ � z%=�zz$,".")+1
�                z$=�zz$,z%)
�;                � �z$,".")<>0 � �z$)<>"5" � z$=�z$)+"5"
�                Ȏ icon% �
�%                     � 5: a=�(z$)
�1                             � a<200 � a+=0.5
�C                             �Wimp_WriteIconText(window%,4,� a)
�?                             � a>=-50 � a<-25 � a$="R7;Sh-"
�=                             � a>=-25 � a<0 � a$="R7;Sh0"
�<                             � a>=0 � a<25 � a$="R7;Sh1"
�=                             � a>=25 � a<50 � a$="R7;Sh2"
�=                             � a>=50 � a<75 � a$="R7;Sh3"
�>                             � a>=75 � a<100 � a$="R7;Sh4"
�?                             � a>=100 � a<125 � a$="R7;Sh5"
?                             � a>=125 � a<150 � a$="R7;Sh6"
?                             � a>=150 � a<175 � a$="R7;Sh7"
?                             � a>=175 � a<201 � a$="R7;Sh8"
 H                             �Wimp_WriteIconValidation(window%,2,a$)
*4                             a=(250-(a+50))*4000
43                             � a<1000 � a$=�(a)
>I                             � a>=1000 � a<1000000 � a$=�(a/1000)+"K"
HC                             � a>=1000000 � a$=�(a/1000000)+"M"
RB                             �Wimp_WriteIconText(window%,9,a$)
\+                             �Calculate
f%                     � 6: a=�(z$)
p1                             � a>-50 � a-=0.5
zC                             �Wimp_WriteIconText(window%,4,� a)
�?                             � a>=-50 � a<-25 � a$="R7;Sh-"
�=                             � a>=-25 � a<0 � a$="R7;Sh0"
�<                             � a>=0 � a<25 � a$="R7;Sh1"
�=                             � a>=25 � a<50 � a$="R7;Sh2"
�=                             � a>=50 � a<75 � a$="R7;Sh3"
�>                             � a>=75 � a<100 � a$="R7;Sh4"
�?                             � a>=100 � a<125 � a$="R7;Sh5"
�?                             � a>=125 � a<150 � a$="R7;Sh6"
�?                             � a>=150 � a<175 � a$="R7;Sh7"
�?                             � a>=175 � a<201 � a$="R7;Sh8"
�H                             �Wimp_WriteIconValidation(window%,2,a$)
�4                             a=(250-(a+50))*4000
�3                             � a<1000 � a$=�(a)
	I                             � a>=1000 � a<1000000 � a$=�(a/1000)+"K"
	C                             � a>=1000000 � a$=�(a/1000000)+"M"
	B                             �Wimp_WriteIconText(window%,9,a$)
	$+                             �Calculate
	.                �
	8 �
	B �
	L :
	V7 � �MouseClick_MoistureProbe(window%,icon%,button%)
	` � a%,a$
	j Ȏ button% �
	t=      � 2: �Wimp_ShowMenu(test_menu%,!block%-64,block%!4)
	~)              CurrentMenu%=test_menu%
	�      � 1,4: Ȏ icon% �
	�A                     � 5: a%=�(�Wimp_ReadIconText(window%,4))
	�0                             � a%<10 � a%+=1
	�D                             �Wimp_WriteIconText(window%,4,� a%)
	�O                             �Wimp_WriteIconValidation(window%,2,"sw"+� a%)
	�P                             � a%=0 � a%=1000000 � a%=(600-((a%-1)*50))*1000
	�5                             � a%<1000 � a$=�(a%)
	�L                             � a%>=1000 � a%<1000000 � a$=�(a%/1000)+"K"
	�E                             � a%>=1000000 � a$=�(a%/1000000)+"M"
	�B                             �Wimp_WriteIconText(window%,7,a$)
	�+                             �Calculate
	�A                     � 6: a%=�(�Wimp_ReadIconText(window%,4))
/                             � a%>0 � a%-=1

D                             �Wimp_WriteIconText(window%,4,� a%)
O                             �Wimp_WriteIconValidation(window%,2,"sw"+� a%)
P                             � a%=0 � a%=1000000 � a%=(600-((a%-1)*50))*1000
(5                             � a%<1000 � a$=�(a%)
2L                             � a%>=1000 � a%<1000000 � a$=�(a%/1000)+"K"
<E                             � a%>=1000000 � a$=�(a%/1000000)+"M"
FB                             �Wimp_WriteIconText(window%,7,a$)
P+                             �Calculate
Z                �
d �
n �
x :
�. � �MouseClick_Vres(window%,icon%,button%)
� � a%,a$
� Ȏ button% �
�=      � 2: �Wimp_ShowMenu(test_menu%,!block%-64,block%!4)
�)              CurrentMenu%=test_menu%
�      � 1,4: Ȏ icon% �
�A                     � 5: a%=�(�Wimp_ReadIconText(window%,4))
�1                             � a%<250 � a%+=1
�D                             �Wimp_WriteIconText(window%,4,� a%)
�+                             a%=a%*4000
�5                             � a%<1000 � a$=�(a%)
�L                             � a%>=1000 � a%<1000000 � a$=�(a%/1000)+"K"
�E                             � a%>=1000000 � a$=�(a%/1000000)+"M"
B                             �Wimp_WriteIconText(window%,9,a$)
+                             �Calculate
A                     � 6: a%=�(�Wimp_ReadIconText(window%,4))
"/                             � a%>0 � a%-=1
,D                             �Wimp_WriteIconText(window%,4,� a%)
6+                             a%=a%*4000
@5                             � a%<1000 � a$=�(a%)
JL                             � a%>=1000 � a%<1000000 � a$=�(a%/1000)+"K"
TE                             � a%>=1000000 � a$=�(a%/1000000)+"M"
^B                             �Wimp_WriteIconText(window%,9,a$)
h+                             �Calculate
r                �
| �
� �
� :
�- � �MouseClick_LDR(window%,icon%,button%)
� � a,a$,zz$,z$,z%
� Ȏ button% �
�=      � 2: �Wimp_ShowMenu(test_menu%,!block%-64,block%!4)
�)              CurrentMenu%=test_menu%
�3      � 1,4: a=�(�Wimp_ReadIconText(window%,4))
�#                � a>100 � a=100
�                � a<0 � a=0
�                zz$=� a
�=                � �zz$,".")=0 � z%=� zz$ � z%=�zz$,".")+1
�                z$=�zz$,z%)
;                � �z$,".")<>0 � �z$)<>"5" � z$=�z$)+"5"
                Ȏ icon% �
%                     � 5: a=�(z$)
&1                             � a<100 � a+=0.5
0C                             �Wimp_WriteIconText(window%,4,� a)
:=                             � a>=0 � a<20 � a$="Sbulb00"
D>                             � a>=20 � a<40 � a$="Sbulb20"
N>                             � a>=40 � a<60 � a$="Sbulb40"
X>                             � a>=60 � a<80 � a$="Sbulb60"
b?                             � a>=80 � a<100 � a$="Sbulb80"
l8                             � a=100 � a$="Sbulb100"
vH                             �Wimp_WriteIconValidation(window%,2,a$)
�0                             a=(100-a)*10000
�3                             � a<1000 � a$=�(a)
�I                             � a>=1000 � a<1000000 � a$=�(a/1000)+"K"
�C                             � a>=1000000 � a$=�(a/1000000)+"M"
�B                             �Wimp_WriteIconText(window%,9,a$)
�+                             �Calculate
�%                     � 6: a=�(z$)
�/                             � a>0 � a-=0.5
�C                             �Wimp_WriteIconText(window%,4,� a)
�=                             � a>=0 � a<20 � a$="Sbulb00"
�>                             � a>=20 � a<40 � a$="Sbulb20"
�>                             � a>=40 � a<60 � a$="Sbulb40"
�>                             � a>=60 � a<80 � a$="Sbulb60"

?                             � a>=80 � a<100 � a$="Sbulb80"

8                             � a=100 � a$="Sbulb100"

H                             �Wimp_WriteIconValidation(window%,2,a$)

 0                             a=(100-a)*10000

*3                             � a<1000 � a$=�(a)

4I                             � a>=1000 � a<1000000 � a$=�(a/1000)+"K"

>C                             � a>=1000000 � a$=�(a/1000000)+"M"

HB                             �Wimp_WriteIconText(window%,9,a$)

R+                             �Calculate

\                �

f �

p �

z :

�( � �MouseClick_Design(icon%,button%)

� Ȏ button% �

�?      � 2: �Wimp_ShowMenu(design_menu%,!block%-64,block%!4)

�+              CurrentMenu%=design_menu%

� �

� �

� :

�& � �MouseClick_Test(icon%,button%)

� Ȏ button% �

�=      � 2: �Wimp_ShowMenu(test_menu%,!block%-64,block%!4)

�)              CurrentMenu%=test_menu%

�      � 1,4: Ȏ icon% �

�                �
 �
 �
 :
$) � �MouseClick_IconBar(icon%,button%)
. Ȏ button% �
8F      � 1,4: �  current_window%=design% � �User_OpenDesignANDTools
Bp                �  current_window%=test% � �User_OpenTestANDTools(current_top%,current_bottom%) : �Calculate
LB      � 2: �Wimp_ShowMenuIconBar(iconbar_menu%,!block%-64,3,0)
V,              CurrentMenu%=iconbar_menu%
` �
j �
t :
~* � �MouseClick_ToolsBar(icon%,button%)
� Ȏ button% �
�      � 16,64: � icon%<6 �
�2                  �Wimp_DragBox(tools1%,icon%)
�                  �
�4                  �Wimp_DragBox(tools2%,icon%-6)
�                  �
�*                  currentdrag%=tools1%
�-                  currentTOOLSdrag%=icon%
� �
� �
� :
� � �Poll_EndDrag
 � wind%,icon%

 � currentdrag%=tools1% �
% È™ "Wimp_GetPointerInfo",,block%
& wind%=block%!12 : icon%=block%!16
(M � wind%=design% � (icon%=3 � icon%=4 � icon%=11 � icon%=12 � icon%=13) �
2%           Ȏ currentTOOLSdrag% �
<9                � 0: � icon%=12 � icon%=13 � icon%-=9
F1                        � icon%=3 � icon%=4 �
P9                        �Wimp_HalfSize(design%,icon%)
ZK                        �Wimp_WriteIconValidation(design%,icon%,"Sldr")
dC                        �Wimp_WriteIconText(design%,9+icon%,"")
nF                        �Wimp_SetIconButtonType(design%,9+icon%,0)
xD                        � �Wimp_GetCaretPositionWindow=design% �
�0                           �Wimp_DisownCaret
�                        �
�                        �
�9                � 1: � icon%=12 � icon%=13 � icon%-=9
�1                        � icon%=3 � icon%=4 �
�9                        �Wimp_HalfSize(design%,icon%)
�L                        �Wimp_WriteIconValidation(design%,icon%,"Svres")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
�F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
�D                        � �Wimp_GetCaretPositionWindow=design% �
�0                           �Wimp_DisownCaret
�                        �
�                        �
9                � 2: � icon%=12 � icon%=13 � icon%-=9
1                        � icon%=3 � icon%=4 �
9                        �Wimp_HalfSize(design%,icon%)
"K                        �Wimp_WriteIconValidation(design%,icon%,"Sres")
,G                        �Wimp_WriteIconText(design%,9+icon%,"100K")
6G                        �Wimp_SetIconButtonType(design%,9+icon%,15)
@                        �
J9                � 3: � icon%=12 � icon%=13 � icon%-=9
T1                        � icon%=3 � icon%=4 �
^9                        �Wimp_HalfSize(design%,icon%)
hL                        �Wimp_WriteIconValidation(design%,icon%,"Sther")
rC                        �Wimp_WriteIconText(design%,9+icon%,"")
|F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
�                        �
�9                � 4: � icon%=12 � icon%=13 � icon%-=9
�1                        � icon%=3 � icon%=4 �
�9                        �Wimp_FullSize(design%,icon%)
�K                        �Wimp_WriteIconValidation(design%,icon%,"Swet")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
�F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
�                        �
�9                � 5: � icon%=12 � icon%=13 � icon%-=9
�1                        � icon%=3 � icon%=4 �
�9                        �Wimp_FullSize(design%,icon%)
�J                        �Wimp_WriteIconValidation(design%,icon%,"Ssw")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
                        �
%                � 6: � icon%=11 �
&M                        �Wimp_WriteIconValidation(design%,icon%,"Slamp1")
0                        �
:%                � 7: � icon%=11 �
DL                        �Wimp_WriteIconValidation(design%,icon%,"Sled1")
N                        �
X%                � 8: � icon%=11 �
bM                        �Wimp_WriteIconValidation(design%,icon%,"Sbuzz1")
l                        �
v           �
� �
� �
� �
� :
�) � �Poll_KeyPress(window%,icon%,key%)
� � a%,a$,a,z%,z$,zz$
� Ȏ window% �
�&      � vres1%,vres2%: � key%=13 �
�D                             a%=�(�Wimp_ReadIconText(window%,4))
�.                             � a%<0 � a%=0
�2                             � a%>250 � a%=250
�D                             �Wimp_WriteIconText(window%,4,� a%)
�+                             a%=a%*4000
5                             � a%<1000 � a$=�(a%)
L                             � a%>=1000 � a%<1000000 � a$=�(a%/1000)+"K"
E                             � a%>=1000000 � a$=�(a%/1000000)+"M"
 B                             �Wimp_WriteIconText(window%,9,a$)
*+                             �Calculate
4                          �
>7                             �Wimp_ProcessKey(key%)
H                          �
R*      � Mprobe1%,Mprobe2%: � key%=13 �
\D                             a%=�(�Wimp_ReadIconText(window%,4))
f.                             � a%<0 � a%=0
p0                             � a%>10 � a%=10
zD                             �Wimp_WriteIconText(window%,4,� a%)
�O                             �Wimp_WriteIconValidation(window%,2,"sw"+� a%)
�P                             � a%=0 � a%=1000000 � a%=(600-((a%-1)*50))*1000
�5                             � a%<1000 � a$=�(a%)
�L                             � a%>=1000 � a%<1000000 � a$=�(a%/1000)+"K"
�E                             � a%>=1000000 � a$=�(a%/1000000)+"M"
�B                             �Wimp_WriteIconText(window%,7,a$)
�+                             �Calculate
�                          �
�7                             �Wimp_ProcessKey(key%)
�                          �
�$      � ldr1%,ldr2%: � key%=13 �
�C                             a=�(�Wimp_ReadIconText(window%,4))
�0                             � a>100 � a=100
,                             � a<0 � a=0
(                             zz$=� a
C                      � �zz$,".")=0 � z%=� zz$ � z%=�zz$,".")+1
$,                             z$=�zz$,z%)
.H                             � �z$,".")<>0 � �z$)<>"5" � z$=�z$)+"5"
8B                             �Wimp_WriteIconText(window%,4,z$)
B=                             � a>=0 � a<20 � a$="Sbulb00"
L>                             � a>=20 � a<40 � a$="Sbulb20"
V>                             � a>=40 � a<60 � a$="Sbulb40"
`>                             � a>=60 � a<80 � a$="Sbulb60"
j?                             � a>=80 � a<100 � a$="Sbulb80"
t8                             � a=100 � a$="Sbulb100"
~H                             �Wimp_WriteIconValidation(window%,2,a$)
�5                             a=(100-(� z$))*10000
�3                             � a<1000 � a$=�(a)
�I                             � a>=1000 � a<1000000 � a$=�(a/1000)+"K"
�C                             � a>=1000000 � a$=�(a/1000000)+"M"
�B                             �Wimp_WriteIconText(window%,9,a$)
�+                             �Calculate
�                          �
�7                             �Wimp_ProcessKey(key%)
�                          �
�2      � thermistor1%,thermistor2%: � key%=13 �
�C                             a=�(�Wimp_ReadIconText(window%,4))
�0                             � a>200 � a=200
0                             � a<-50 � a=-50

?                             � a>=-50 � a<-25 � a$="R7;Sh-"
=                             � a>=-25 � a<0 � a$="R7;Sh0"
<                             � a>=0 � a<25 � a$="R7;Sh1"
(=                             � a>=25 � a<50 � a$="R7;Sh2"
2=                             � a>=50 � a<75 � a$="R7;Sh3"
<>                             � a>=75 � a<100 � a$="R7;Sh4"
F?                             � a>=100 � a<125 � a$="R7;Sh5"
P?                             � a>=125 � a<150 � a$="R7;Sh6"
Z?                             � a>=150 � a<175 � a$="R7;Sh7"
d?                             � a>=175 � a<201 � a$="R7;Sh8"
nH                             �Wimp_WriteIconValidation(window%,2,a$)
x(                             zz$=� a
�C                      � �zz$,".")=0 � z%=� zz$ � z%=�zz$,".")+1
�,                             z$=�zz$,z%)
�H                             � �z$,".")<>0 � �z$)<>"5" � z$=�z$)+"5"
�B                             �Wimp_WriteIconText(window%,4,z$)
�9                             a=(250-((� z$)+50))*4000
�3                             � a<1000 � a$=�(a)
�I                             � a>=1000 � a<1000000 � a$=�(a/1000)+"K"
�C                             � a>=1000000 � a$=�(a/1000000)+"M"
�B                             �Wimp_WriteIconText(window%,9,a$)
�+                             �Calculate
�                          �
�7                             �Wimp_ProcessKey(key%)
�                          �
$       : �Wimp_ProcessKey(key%)
 �
 �
" :
, � �Poll_MenuSelection
64 sel1%=!block% : sel2%=block%!4 : sel3%=block%!8
@% È™ "Wimp_GetPointerInfo",,block%
J button%=block%!8
T Ȏ CurrentMenu% �
^%      � iconbar_menu%: Ȏ sel1% �
h/                               � 2: quit%=�
r                          �
|$      � design_menu%: Ȏ sel1% �
�2                               � 0: Ȏ sel2% �
�D                                            � 0,1: icon%=sel2%+3
�           Ȏ sel3% �
�6                � 0: �Wimp_HalfSize(design%,icon%)
�K                        �Wimp_WriteIconValidation(design%,icon%,"Sldr")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
�F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
�D                        � �Wimp_GetCaretPositionWindow=design% �
�0                           �Wimp_DisownCaret
�                        �
�6                � 5: �Wimp_HalfSize(design%,icon%)
�L                        �Wimp_WriteIconValidation(design%,icon%,"Svres")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
D                        � �Wimp_GetCaretPositionWindow=design% �
0                           �Wimp_DisownCaret
&                        �
06                � 4: �Wimp_HalfSize(design%,icon%)
:K                        �Wimp_WriteIconValidation(design%,icon%,"Sres")
DG                        �Wimp_WriteIconText(design%,9+icon%,"100K")
NG                        �Wimp_SetIconButtonType(design%,9+icon%,15)
X6                � 1: �Wimp_HalfSize(design%,icon%)
bL                        �Wimp_WriteIconValidation(design%,icon%,"Sther")
lC                        �Wimp_WriteIconText(design%,9+icon%,"")
vF                        �Wimp_SetIconButtonType(design%,9+icon%,0)
�D                        � �Wimp_GetCaretPositionWindow=design% �
�0                           �Wimp_DisownCaret
�                        �
�6                � 2: �Wimp_FullSize(design%,icon%)
�K                        �Wimp_WriteIconValidation(design%,icon%,"Swet")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
�F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
�D                        � �Wimp_GetCaretPositionWindow=design% �
�0                           �Wimp_DisownCaret
�                        �
�6                � 3: �Wimp_FullSize(design%,icon%)
�J                        �Wimp_WriteIconValidation(design%,icon%,"Ssw")
�C                        �Wimp_WriteIconText(design%,9+icon%,"")
F                        �Wimp_SetIconButtonType(design%,9+icon%,0)
D                        � �Wimp_GetCaretPositionWindow=design% �
0                           �Wimp_DisownCaret
                         �
*                        �
4?                                            � 2: Ȏ sel3% �
>W                                � 0: �Wimp_WriteIconValidation(design%,11,"Slamp1")
HV                                � 1: �Wimp_WriteIconValidation(design%,11,"Sled1")
RW                                � 2: �Wimp_WriteIconValidation(design%,11,"Sbuzz1")
\9                                                    �
f,                                       �
pB                               � 1: �Wimp_CloseWindow(design%)
zE                                       �Wimp_CloseWindow(tools1%)
�E                                       �Wimp_CloseWindow(tools2%)
�@                                       current_window%=test%
�4                                       button%=3
�0                                       �Test
�L                               � 2: � �Wimp_MenuTicked(design_menu%,2) �
�O                                       �Wimp_MenuUnTickItem(design_menu%,2)
�E                                       �Wimp_CloseWindow(tools1%)
�E                                       �Wimp_CloseWindow(tools2%)
�,                                       �
�M                                       �Wimp_MenuTickItem(design_menu%,2)
�C                                       �User_OpenDesignANDTools
�,                                       �
�                          �
#      � test_menu%:  Ȏ sel1% �
?                              � 0: �User_OpenDesignANDTools
B                                      �Wimp_CloseWindow(test%)
$I                                      �Wimp_CloseWindow(current_top%)
.L                                      �Wimp_CloseWindow(current_bottom%)
8A                                      current_window%=design%
B3                                      buzzer%=�
L3                                      button%=3
V                        �
` �
j3 � button%=1 � �Wimp_ShowMenu(CurrentMenu%,0,0)
t �
~ :
�' � �Poll_IncommingMessage(message%)
� Ȏ message% �
�      � 0: quit%=�
� �
� �
� :
�# � �Wimp_DragBox(window%,icon%)
� �x%,y%
�  !block%=window%
�%  ș"Wimp_GetWindowState",,block%
�2  x%=block%!4-block%!20:y%=block%!16-block%!24
�  block%!4=icon%
#  È™"Wimp_GetIconState",,block%

  !block%=window%
  block%!4=5
1  block%!8=x%+block%!8:block%!12=y%+block%!12
(3  block%!16=x%+block%!16:block%!20=y%+block%!20
2  block%!24=0:block%!28=0
<-  block%!32=&7FFFFFFF:block%!36=&7FFFFFFF
F  È™"Wimp_DragBox",,block%
P �
Z :
d � �Test
nA �Wimp_ChangeWindowTitle(test%,�Wimp_ReadIconText(design%,1))
xK �Wimp_WriteIconValidation(test%,2,�Wimp_ReadIconValidation(design%,3))
�K �Wimp_WriteIconValidation(test%,1,�Wimp_ReadIconValidation(design%,4))
�L �Wimp_WriteIconValidation(test%,3,�Wimp_ReadIconValidation(design%,11))
�B Ȏ �Misc_TurnToLowerCase(�Wimp_ReadIconValidation(test%,2)) �
�)      � "svres" : current_top%=vres1%
�0                     �Wimp_HalfSize(test%,2)
�'      � "sres" : current_top%=res1%
�S                    �Wimp_WriteIconText(res1%,3,�Wimp_ReadIconText(design%,12))
�/                    �Wimp_HalfSize(test%,2)
�'      � "sldr" : current_top%=ldr1%
�/                    �Wimp_HalfSize(test%,2)
�/      � "sther" : current_top%=thermistor1%
�0                     �Wimp_HalfSize(test%,2)
�)      � "ssw" : current_top%=switch1%
.                   �Wimp_FullSize(test%,2)
*      � "swet" : current_top%=Mprobe1%
/                    �Wimp_FullSize(test%,2)
" �
,B ÈŽ �Misc_TurnToLowerCase(�Wimp_ReadIconValidation(test%,1)) �
6,      � "svres" : current_bottom%=vres2%
@0                     �Wimp_HalfSize(test%,1)
J*      � "sres" : current_bottom%=res2%
TS                    �Wimp_WriteIconText(res2%,3,�Wimp_ReadIconText(design%,13))
^/                    �Wimp_HalfSize(test%,1)
h*      � "sldr" : current_bottom%=ldr2%
r/                    �Wimp_HalfSize(test%,1)
|2      � "sther" : current_bottom%=thermistor2%
�0                     �Wimp_HalfSize(test%,1)
�,      � "ssw" : current_bottom%=switch2%
�.                   �Wimp_FullSize(test%,1)
�-      � "swet" : current_bottom%=Mprobe2%
�/                    �Wimp_FullSize(test%,1)
� �
�9 �User_OpenTestANDTools(current_top%,current_bottom%)
� �Calculate
� �
� :
� � �Calculate
� � vout,vout$,r1$,r2$,q%,a$
� ÈŽ current_top% �
M      � vres1%,ldr1%,thermistor1%: r1$=�Wimp_ReadIconText(current_top%,9)
9      � res1%: r1$=�Wimp_ReadIconText(current_top%,3)
<      � Mprobe1%: r1$=�Wimp_ReadIconText(current_top%,7)
&3      � switch1%: !block%=switch1% : block%!4=2
07                     È™ "Wimp_GetIconState",,block%
:L                     � ((block%!24) � (1<<21))>0 � r1$="0" � r1$="9999M"
D �
N Ȏ current_bottom% �
XP      � vres2%,ldr2%,thermistor2%: r2$=�Wimp_ReadIconText(current_bottom%,9)
b<      � res2%: r2$=�Wimp_ReadIconText(current_bottom%,3)
l?      � Mprobe2%: r2$=�Wimp_ReadIconText(current_bottom%,7)
v3      � switch2%: !block%=switch2% : block%!4=2
�7                     ș "Wimp_GetIconState",,block%
�L                     � ((block%!24) � (1<<21))>0 � r2$="0" � r2$="9999M"
� �
�& �Wimp_WriteIconText(test%,20,r2$)
�0 �Wimp_WriteIconText(test%,19,r1$+" + "+r2$)
�& Ȏ �Misc_TurnToLowerCase(�r1$)) �
�      � "r": r1$=�r1$)
�       � "k": r1$=�r1$)+"000"
�#      � "m": r1$=�r1$)+"000000"
� �
�& Ȏ �Misc_TurnToLowerCase(�r2$)) �
�      � "r": r2$=�r2$)
�       � "k": r2$=�r2$)+"000"
#      � "m": r2$=�r2$)+"000000"
 �
. � �(r1$)=0 � �(r2$)=0 � r1$="1" : r2$="1"
 9 vout=(�(�(r2$+"/"+"("+r1$+" + "+r2$+")*5")*100))/100
* vout$=�� vout,4)
4 � vout>=0.7 �
>Q                a$=�Misc_TurnToLowerCase(��Wimp_ReadIconValidation(test%,3)))
HM                � a$<>"sbuzz" � �Wimp_WriteIconValidation(test%,3,a$+"2")
R,                � a$="sbuzz" � buzzer%=�
\ �
fQ                a$=�Misc_TurnToLowerCase(��Wimp_ReadIconValidation(test%,3)))
pM                � a$<>"sbuzz" � �Wimp_WriteIconValidation(test%,3,a$+"1")
z,                � a$="sbuzz" � buzzer%=�
� �
�, �Wimp_WriteIconText(test%,23,vout$+"V")
�' �Wimp_WriteIconText(test%,5,vout$)
� �
� :
� � �User_OpenDesignANDTools
� � a%,b%,c%
� !block%=design%
�% ș "Wimp_GetWindowState",,block%
� block%!28=-1
�! ș "Wimp_OpenWindow",,block%
�) � �Wimp_MenuTicked(design_menu%,2) �
�- a%=block%!4 : b%=block%!8 : c%=block%!16
 !block%=tools2%
! block%!4=a% :block%!8=b%-130
% block%!12=a%+462 :block%!16=b%-4
$ block%!28=-1
.! È™ "Wimp_OpenWindow",,block%
8 !block%=tools1%
B% block%!4=a%-250 :block%!8=b%-116
L# block%!12=a%+156 :block%!16=c%
V block%!28=-1
`! È™ "Wimp_OpenWindow",,block%
j �
t �
~ :
�( � �User_OpenTestANDTools(top%,bot%)
� � a%,b%,c%
� !block%=test%
�% ș "Wimp_GetWindowState",,block%
� block%!28=-1
�! ș "Wimp_OpenWindow",,block%
�- a%=block%!4 : b%=block%!8 : c%=block%!16
� !block%=top%
�% block%!4=a%-348 :block%!8=c%-264
� block%!12=a% :block%!16=c%
� block%!28=-1
�! ș "Wimp_OpenWindow",,block%
 !block%=bot%

% block%!4=a%-348 :block%!8=c%-528
# block%!12=a% :block%!16=c%-264
 block%!28=-1
(! È™ "Wimp_OpenWindow",,block%
2 �
< :
F  � �Misc_TurnToLowerCase(a$)
P � q$,q%
Z
 q$=""
d � q%=1 � � a$
n q$+=�((� �a$,q%,1)) � 32)
x �
� =q$
� :
�: � �Wimp_CreateIcon(whan%,ix%,iy%,iw%,ih%,flag%,text$)
� � ihandle%
� !block%=whan%
� block%!4=ix%
� block%!8=iy%
� block%!12=ix%+iw%
� block%!16=iy%+ih%
� block%!20=flag%
� $(block%+24)=text$
�, ș "Wimp_CreateIcon",,block% � ihandle%
� =ihandle%
 :
1 � �Wimp_SetIconButtonType(whan%,icon%,type%)
M !block%=whan% : block%!4=icon% : block%!8=(type%<<12) : block%!12=&F<<12
"# È™ "Wimp_SetIconState",,block%
, �
6 :
@& � �Wimp_ReadIconText(whan%,icon%)
J !block%=whan%
T block%!4=icon%
^# È™ "Wimp_GetIconState",,block%
h =$(block%!28)
r :
|- � �Wimp_WriteIconText(whan%,icon%,text$)
� !block%=whan%
� block%!4=icon%
�# ș "Wimp_GetIconState",,block%
� $(block%!28)=text$
� block%!8=0 : block%!12=0
�# ș "Wimp_SetIconState",,block%
� �
� :
�, � �Wimp_ReadIconValidation(whan%,icon%)
� !block%=whan%
� block%!4=icon%
�# ș "Wimp_GetIconState",,block%
� =$(block%!32)
  :
 4 � �Wimp_WriteIconValidation(whan%,icon%,valid$)
  !block%=whan%
 & block%!4=icon%
 0# È™ "Wimp_GetIconState",,block%
 : $(block%!32)=valid$
 D block%!8=0 : block%!12=0
 N# È™ "Wimp_SetIconState",,block%
 X �
 b :
 l" � �Wimp_ShowMenu(menu%,x%,y%)
 v& È™ "Wimp_CreateMenu",,menu%,x%,y%
 � �
 � :
 �4 � �Wimp_ShowMenuIconBar(menu%,x%,items%,lines%)
 �8 �Wimp_ShowMenu(menu%,x%,(lines%*22)+(items%*44)+96)
 � �
 � :
 �# � �Wimp_MenuNoOfEntries(menu$)
 � � n% ,j% : n%=0 : j%=0
 � �
 � j%=�menu$,"\",j%+1)
 � � j%<>0 � n%+=1
 � � j%=0
 � =n%
! :
!7 � �Wimp_setupmenuFromStringFontyitems(menu$,font%)
!( � menu%,index%,width%,length%,k%,s%
! / � menu% 28+�Wimp_MenuNoOfEntries(menu$)*24
!*8 menu%?12=7   : menu%?13=2  : menu%?14=7 :menu%?15=0
!4, menu%!16=140 : menu%!20=44 : menu%!24=0
!> index%=menu%+28
!H! $menu%=�menu$,�menu$,"\")-1)
!R$ width%=�(�menu$,�menu$,"\")-1))
!\% menu$+="\" : Menu_NoOfEntries%=0
!f È• menu$<>""
!p  menu$=�menu$,�menu$,"\")+1)
!z Ȏ menu$ �
!�
  � ""
!�	   :
!�E  !index%=0 : index%!4=-1 : index%!8=&21 � ((font%<<24) � (1<<6))
!�   length%=�menu$,"\")-1
!�   k%=��menu$,length%),">")
!�   Ȏ k% �
!�    � 0
!�	    
!�&     s%=�(�menu$,k%+1,length%-k%))
!�     index%!4=s%
!�     length%=k%-1
!�   �
!�#   $(index%+12)=�menu$,length%)
"(   � length%>width% � width%=length%
"  index%+=24
" �
"$ �
". menu%!16=16*(width%+1)
"8" index%!-24=index%!-24 � &80 :
"B =menu%
"L :
"V � �Wimp_LoadSprites(file$)
"` � file%,size%,area%
"j file%=� file$
"t size%=(�#file%)+16
"~ �#file%
"� � area% size%
"� !area%=size%
"� area%!8=0
"�  ș "OS_SpriteOp",&109,area%
"�& ș "OS_SpriteOp",&10A,area%,file$
"� =area%
"� :
"�) � �Wimp_ErrorBox(err$,title$,flags%)
"�	 � q%
"� !block%=255
"� $(block%+4)=err$+�0
"�5 ș "Wimp_ReportError",block%,flags%,title$ � ,q%
# =q%
#
 :
#$ � �Wimp_ErrorBoxOK(err$,title$)
## =�Wimp_ErrorBox(err$,title$,1)
#( :
#2! � �Wimp_Initialise(appname$)
#< � taskhandle%
#F? ș "Wimp_Initialise",310,&4B534154,appname$ � ,taskhandle%
#P =taskhandle%
#Z :
#d# � �Wimp_CloseDown(taskhandle%)
#n. È™ "Wimp_CloseDown",taskhandle%,&4B534154
#x =0
#� :
#� � �Wimp_ProcessKey(key%)
#� ș "Wimp_ProcessKey",key%
#� �
#� :
#� � �Wimp_CloseWindow(win%)
#� !block%=win%
#�% ș "Wimp_GetWindowState",,block%
#�" ș "Wimp_CloseWindow",,block%
#� �
#� :
#� � �Wimp_InitFontsArray
#� � fontZ%,N
$ � fontZ% 256
$ � N=0 � 256 � 4
$ !(N+fontZ%)=0
$" �
$, =fontZ%
$6 :
$@& � �Wimp_RemoveFontsArray(fontZZ%)
$J È™ "Hourglass_On"
$T � n%=0 � 255
$^+ È™ "Hourglass_Percentage",(n%/255)*100
$h q%=?(fontZZ%+n%)
$r È• q%>0
$| È™ "Font_LoseFont",n%
$�
 q%-=1
$� �
$� �
$� ș "Hourglass_Off"
$� �
$� :
$� � �Wimp_OpenWindow(win%)
$� !block%=win%
$�% ș "Wimp_GetWindowState",,block%
$� block%!28=-1
$�! ș "Wimp_OpenWindow",,block%
$� �
$� :
%  � �Wimp_OpenTemplate(file$)
%" È™ "Wimp_OpenTemplate",,file$
% �
%& :
%0 � �Wimp_CloseTemplate
%: È™ "Wimp_CloseTemplate"
%D �
%N :
%XM � �Wimp_LoadTemplateFontZ(template$,iconSpace%,length%,spri%,fontarray%)
%b	 � q%
%lX È™ "Wimp_LoadTemplate",,block%,iconSpace%,iconSpace%+length%,fontarray%,template$,0
%v block%!64=spri%
%�( ș "Wimp_CreateWindow",,block% � q%
%� =q%
%� :
%�= � �Wimp_LoadTemplate(template$,iconSpace%,length%,spri%)
%�	 � q%
%�O ș "Wimp_LoadTemplate",,block%,iconSpace%,iconSpace%+length%,0,template$,0
%� block%!64=spri%
%�( ș "Wimp_CreateWindow",,block% � q%
%� =q%
%� :
%�* � �Wimp_ChangeWindowTitle(win%,text$)
%�	 � q%
%� !block%=win%
&$ È™ "Wimp_GetWindowInfo",,block%
& q%=block%!76
& $q%=text$
&  block%!84=� text$
&* �
&4 :
&># � �Wimp_GetCaretPositionWindow
&H' È™ "Wimp_GetCaretPosition",,block%
&R
 =!block%
&\ :
&f � �Wimp_DisownCaret
&p" È™ "Wimp_SetCaretPosition",-1
&z �
&� :
&�" � �Wimp_HalfSize(wind%,icon%)
&� !block%=wind%
&� block%!4=icon%
&� block%!8=1<<11
&� block%!12=1<<11
&�# ș "Wimp_SetIconState",,block%
&� �
&� :
&�" � �Wimp_FullSize(wind%,icon%)
&� !block%=wind%
&� block%!4=icon%
&� block%!8=0
' block%!12=1<<11
'# È™ "Wimp_SetIconState",,block%
' �
'$ :
'.C � �Wimp_setupmenuFromStringINDFontyitems(menuIND%,menu$,font%)
'8( � menu%,index%,width%,length%,k%,s%
'B/ � menu% 28+�Wimp_MenuNoOfEntries(menu$)*24
'L8 menu%?12=7   : menu%?13=2  : menu%?14=7 :menu%?15=0
'V, menu%!16=140 : menu%!20=44 : menu%!24=0
'` index%=menu%+28
'j! $menu%=�menu$,�menu$,"\")-1)
't$ width%=�(�menu$,�menu$,"\")-1))
'~% menu$+="\" : Menu_NoOfEntries%=0
'� ȕ menu$<>""
'�  menu$=�menu$,�menu$,"\")+1)
'� Ȏ menu$ �
'�
  � ""
'�	   :
'�F  !index%=0 : index%!4=-1 : index%!8=&121 � ((font%<<24) � (1<<6))
'�   length%=�menu$,"\")-1
'�   k%=��menu$,length%),">")
'�   Ȏ k% �
'�    � 0
'�	    
'�&     s%=�(�menu$,k%+1,length%-k%))
(     index%!4=s%
(
     length%=k%-1
(   �
(   index%!12=menuIND%
((   index%!18=-1
(2   index%!22=32
(<    $menuIND%=�menu$,length%)
(F   menuIND%+=32
(P(   � length%>width% � width%=length%
(Z  index%+=24
(d �
(n �
(x menu%!16=16*(width%+1)
(�" index%!-24=index%!-24 � &80 :
(� =menu%
(� :
(�& � �Wimp_MenuTickItem(menu%,item%)
(�	 � a%
(� a%=menu%+28+(item%*24)
(� ?a%=(?a% � 1)
(� �
(� :
(�( � �Wimp_MenuUnTickItem(menu%,item%)
(�	 � a%
(� a%=menu%+28+(item%*24)
(� ?a%=(?a% � 254)
) �
) :
)$ � �Wimp_MenuTicked(menu%,item%)
)"	 � a%
), a%=menu%+28+(item%*24)
)6 =(?a% � 1)>0
)@ :
�
00000000  0d 00 0a 12 20 de 20 62  6c 6f 63 6b 25 20 31 30  |.... . block% 10|
00000010  30 30 0d 00 14 17 20 f2  55 73 65 72 5f 53 65 74  |00.... .User_Set|
00000020  56 61 72 69 61 62 6c 65  73 0d 00 1e 3e 20 ee 20  |Variables...> . |
00000030  85 20 71 25 3d a4 57 69  6d 70 5f 45 72 72 6f 72  |. q%=.Wimp_Error|
00000040  42 6f 78 4f 4b 28 22 55  6e 65 78 70 65 63 74 65  |BoxOK("Unexpecte|
00000050  64 20 45 52 52 4f 52 3a  20 22 2b f6 24 2c 61 70  |d ERROR: "+.$,ap|
00000060  70 24 29 20 3a 20 e0 0d  00 28 27 20 54 61 73 6b  |p$) : ...(' Task|
00000070  48 61 6e 64 6c 65 25 3d  a4 57 69 6d 70 5f 49 6e  |Handle%=.Wimp_In|
00000080  69 74 69 61 6c 69 73 65  28 61 70 70 24 29 0d 00  |itialise(app$)..|
00000090  32 60 20 ee 20 85 20 71  25 3d a4 57 69 6d 70 5f  |2` . . q%=.Wimp_|
000000a0  45 72 72 6f 72 42 6f 78  4f 4b 28 22 55 6e 65 78  |ErrorBoxOK("Unex|
000000b0  70 65 63 74 65 64 20 45  52 52 4f 52 3a 20 22 2b  |pected ERROR: "+|
000000c0  f6 24 2c 61 70 70 24 29  20 3a 20 71 25 3d a4 57  |.$,app$) : q%=.W|
000000d0  69 6d 70 5f 43 6c 6f 73  65 44 6f 77 6e 28 54 61  |imp_CloseDown(Ta|
000000e0  73 6b 48 61 6e 64 6c 65  25 29 20 3a 20 e0 0d 00  |skHandle%) : ...|
000000f0  3c 18 20 f2 55 73 65 72  5f 4c 6f 61 64 52 65 73  |<. .User_LoadRes|
00000100  6f 75 72 63 65 73 0d 00  46 19 20 f2 55 73 65 72  |ources..F. .User|
00000110  5f 53 65 74 55 70 52 65  73 6f 75 72 63 65 73 0d  |_SetUpResources.|
00000120  00 50 15 20 f2 55 73 65  72 5f 53 65 74 55 70 4d  |.P. .User_SetUpM|
00000130  65 6e 75 73 0d 00 5a 0c  20 71 75 69 74 25 3d a3  |enus..Z. quit%=.|
00000140  0d 00 64 44 20 ee 20 85  20 71 25 3d a4 57 69 6d  |..dD . . q%=.Wim|
00000150  70 5f 45 72 72 6f 72 42  6f 78 4f 4b 28 22 55 6e  |p_ErrorBoxOK("Un|
00000160  65 78 70 65 63 74 65 64  20 45 52 52 4f 52 3a 20  |expected ERROR: |
00000170  22 2b f6 24 2c 61 70 70  24 29 20 3a 20 71 75 69  |"+.$,app$) : qui|
00000180  74 25 3d b9 0d 00 6e 0f  20 c8 95 20 71 75 69 74  |t%=...n. .. quit|
00000190  25 3d a3 0d 00 78 0f 20  f2 55 73 65 72 5f 50 6f  |%=...x. .User_Po|
000001a0  6c 6c 0d 00 82 06 20 ce  0d 00 8c 19 20 f2 55 73  |ll.... ..... .Us|
000001b0  65 72 5f 41 70 70 43 6c  6f 73 69 6e 67 44 6f 77  |er_AppClosingDow|
000001c0  6e 0d 00 96 24 20 71 25  3d a4 57 69 6d 70 5f 43  |n...$ q%=.Wimp_C|
000001d0  6c 6f 73 65 44 6f 77 6e  28 54 61 73 6b 48 61 6e  |loseDown(TaskHan|
000001e0  64 6c 65 25 29 0d 00 a0  06 20 e0 0d 00 aa 04 0d  |dle%).... ......|
000001f0  00 b4 04 0d 00 be 19 20  dd 20 f2 55 73 65 72 5f  |....... . .User_|
00000200  53 65 74 56 61 72 69 61  62 6c 65 73 0d 00 c8 16  |SetVariables....|
00000210  20 61 70 70 24 3d 22 54  72 61 6e 73 69 73 74 6f  | app$="Transisto|
00000220  72 22 0d 00 d2 24 20 66  6f 6e 74 61 72 72 61 79  |r"...$ fontarray|
00000230  25 3d a4 57 69 6d 70 5f  49 6e 69 74 46 6f 6e 74  |%=.Wimp_InitFont|
00000240  73 41 72 72 61 79 0d 00  dc 0e 20 62 75 7a 7a 65  |sArray.... buzze|
00000250  72 25 3d a3 0d 00 e6 10  20 72 65 73 69 73 74 6f  |r%=..... resisto|
00000260  72 25 3d 33 0d 00 f0 06  20 e1 0d 00 fa 06 20 3a  |r%=3.... ..... :|
00000270  0d 01 04 1a 20 dd 20 f2  55 73 65 72 5f 4c 6f 61  |.... . .User_Loa|
00000280  64 52 65 73 6f 75 72 63  65 73 0d 01 0e 3b 20 73  |dResources...; s|
00000290  70 61 72 65 61 25 3d a4  57 69 6d 70 5f 4c 6f 61  |parea%=.Wimp_Loa|
000002a0  64 53 70 72 69 74 65 73  28 22 3c 45 6c 65 63 74  |dSprites("<Elect|
000002b0  72 6f 6e 69 63 73 24 44  69 72 3e 2e 53 70 72 69  |ronics$Dir>.Spri|
000002c0  74 65 73 22 29 0d 01 18  36 20 f2 57 69 6d 70 5f  |tes")...6 .Wimp_|
000002d0  4f 70 65 6e 54 65 6d 70  6c 61 74 65 28 22 3c 45  |OpenTemplate("<E|
000002e0  6c 65 63 74 72 6f 6e 69  63 73 24 44 69 72 3e 2e  |lectronics$Dir>.|
000002f0  54 65 6d 70 6c 61 74 65  73 22 29 0d 01 22 26 20  |Templates").."& |
00000300  6c 65 6e 67 74 68 25 3d  37 30 20 3a 20 de 20 69  |length%=70 : . i|
00000310  63 6f 6e 53 70 61 63 65  25 20 6c 65 6e 67 74 68  |conSpace% length|
00000320  25 0d 01 2c 44 20 74 6f  6f 6c 73 31 25 3d a4 57  |%..,D tools1%=.W|
00000330  69 6d 70 5f 4c 6f 61 64  54 65 6d 70 6c 61 74 65  |imp_LoadTemplate|
00000340  28 22 54 6f 6f 6c 73 31  22 2c 69 63 6f 6e 53 70  |("Tools1",iconSp|
00000350  61 63 65 25 2c 6c 65 6e  67 74 68 25 2c 73 70 61  |ace%,length%,spa|
00000360  72 65 61 25 29 0d 01 36  26 20 6c 65 6e 67 74 68  |rea%)..6& length|
00000370  25 3d 33 32 20 3a 20 de  20 69 63 6f 6e 53 70 61  |%=32 : . iconSpa|
00000380  63 65 25 20 6c 65 6e 67  74 68 25 0d 01 40 44 20  |ce% length%..@D |
00000390  74 6f 6f 6c 73 32 25 3d  a4 57 69 6d 70 5f 4c 6f  |tools2%=.Wimp_Lo|
000003a0  61 64 54 65 6d 70 6c 61  74 65 28 22 54 6f 6f 6c  |adTemplate("Tool|
000003b0  73 32 22 2c 69 63 6f 6e  53 70 61 63 65 25 2c 6c  |s2",iconSpace%,l|
000003c0  65 6e 67 74 68 25 2c 73  70 61 72 65 61 25 29 0d  |ength%,sparea%).|
000003d0  01 4a 27 20 6c 65 6e 67  74 68 25 3d 32 30 35 20  |.J' length%=205 |
000003e0  3a 20 de 20 69 63 6f 6e  53 70 61 63 65 25 20 6c  |: . iconSpace% l|
000003f0  65 6e 67 74 68 25 0d 01  54 57 20 69 6e 66 6f 5f  |ength%..TW info_|
00000400  77 69 6e 64 6f 77 25 3d  a4 57 69 6d 70 5f 4c 6f  |window%=.Wimp_Lo|
00000410  61 64 54 65 6d 70 6c 61  74 65 46 6f 6e 74 5a 28  |adTemplateFontZ(|
00000420  22 69 6e 66 6f 22 2c 69  63 6f 6e 53 70 61 63 65  |"info",iconSpace|
00000430  25 2c 6c 65 6e 67 74 68  25 2c 73 70 61 72 65 61  |%,length%,sparea|
00000440  25 2c 66 6f 6e 74 61 72  72 61 79 25 29 0d 01 5e  |%,fontarray%)..^|
00000450  27 20 6c 65 6e 67 74 68  25 3d 31 33 30 20 3a 20  |' length%=130 : |
00000460  de 20 69 63 6f 6e 53 70  61 63 65 25 20 6c 65 6e  |. iconSpace% len|
00000470  67 74 68 25 0d 01 68 54  20 64 65 73 69 67 6e 25  |gth%..hT design%|
00000480  3d a4 57 69 6d 70 5f 4c  6f 61 64 54 65 6d 70 6c  |=.Wimp_LoadTempl|
00000490  61 74 65 46 6f 6e 74 5a  28 22 64 65 73 69 67 6e  |ateFontZ("design|
000004a0  22 2c 69 63 6f 6e 53 70  61 63 65 25 2c 6c 65 6e  |",iconSpace%,len|
000004b0  67 74 68 25 2c 73 70 61  72 65 61 25 2c 66 6f 6e  |gth%,sparea%,fon|
000004c0  74 61 72 72 61 79 25 29  0d 01 72 27 20 6c 65 6e  |tarray%)..r' len|
000004d0  67 74 68 25 3d 32 30 30  20 3a 20 de 20 69 63 6f  |gth%=200 : . ico|
000004e0  6e 53 70 61 63 65 25 20  6c 65 6e 67 74 68 25 0d  |nSpace% length%.|
000004f0  01 7c 50 20 74 65 73 74  25 3d a4 57 69 6d 70 5f  |.|P test%=.Wimp_|
00000500  4c 6f 61 64 54 65 6d 70  6c 61 74 65 46 6f 6e 74  |LoadTemplateFont|
00000510  5a 28 22 54 65 73 74 22  2c 69 63 6f 6e 53 70 61  |Z("Test",iconSpa|
00000520  63 65 25 2c 6c 65 6e 67  74 68 25 2c 73 70 61 72  |ce%,length%,spar|
00000530  65 61 25 2c 66 6f 6e 74  61 72 72 61 79 25 29 0d  |ea%,fontarray%).|
00000540  01 86 26 20 6c 65 6e 67  74 68 25 3d 33 30 20 3a  |..& length%=30 :|
00000550  20 de 20 69 63 6f 6e 53  70 61 63 65 25 20 6c 65  | . iconSpace% le|
00000560  6e 67 74 68 25 0d 01 90  48 20 72 65 73 5f 77 69  |ngth%...H res_wi|
00000570  6e 64 25 3d a4 57 69 6d  70 5f 4c 6f 61 64 54 65  |nd%=.Wimp_LoadTe|
00000580  6d 70 6c 61 74 65 28 22  52 45 53 49 53 54 4f 52  |mplate("RESISTOR|
00000590  22 2c 69 63 6f 6e 53 70  61 63 65 25 2c 6c 65 6e  |",iconSpace%,len|
000005a0  67 74 68 25 2c 73 70 61  72 65 61 25 29 0d 01 9a  |gth%,sparea%)...|
000005b0  26 20 6c 65 6e 67 74 68  25 3d 38 35 20 3a 20 de  |& length%=85 : .|
000005c0  20 69 63 6f 6e 53 70 61  63 65 25 20 6c 65 6e 67  | iconSpace% leng|
000005d0  74 68 25 0d 01 a4 56 20  6f 70 74 69 6f 6e 73 25  |th%...V options%|
000005e0  3d a4 57 69 6d 70 5f 4c  6f 61 64 54 65 6d 70 6c  |=.Wimp_LoadTempl|
000005f0  61 74 65 46 6f 6e 74 5a  28 22 6f 70 74 69 6f 6e  |ateFontZ("option|
00000600  73 22 2c 69 63 6f 6e 53  70 61 63 65 25 2c 6c 65  |s",iconSpace%,le|
00000610  6e 67 74 68 25 2c 73 70  61 72 65 61 25 2c 66 6f  |ngth%,sparea%,fo|
00000620  6e 74 61 72 72 61 79 25  29 0d 01 ae 26 20 6c 65  |ntarray%)...& le|
00000630  6e 67 74 68 25 3d 31 35  20 3a 20 de 20 69 63 6f  |ngth%=15 : . ico|
00000640  6e 53 70 61 63 65 25 20  6c 65 6e 67 74 68 25 0d  |nSpace% length%.|
00000650  01 b8 4f 20 72 65 73 31  25 3d a4 57 69 6d 70 5f  |..O res1%=.Wimp_|
00000660  4c 6f 61 64 54 65 6d 70  6c 61 74 65 46 6f 6e 74  |LoadTemplateFont|
00000670  5a 28 22 52 65 73 22 2c  69 63 6f 6e 53 70 61 63  |Z("Res",iconSpac|
00000680  65 25 2c 6c 65 6e 67 74  68 25 2c 73 70 61 72 65  |e%,length%,spare|
00000690  61 25 2c 66 6f 6e 74 61  72 72 61 79 25 29 0d 01  |a%,fontarray%)..|
000006a0  c2 19 20 de 20 69 63 6f  6e 53 70 61 63 65 25 20  |.. . iconSpace% |
000006b0  6c 65 6e 67 74 68 25 0d  01 cc 4f 20 72 65 73 32  |length%...O res2|
000006c0  25 3d a4 57 69 6d 70 5f  4c 6f 61 64 54 65 6d 70  |%=.Wimp_LoadTemp|
000006d0  6c 61 74 65 46 6f 6e 74  5a 28 22 52 65 73 22 2c  |lateFontZ("Res",|
000006e0  69 63 6f 6e 53 70 61 63  65 25 2c 6c 65 6e 67 74  |iconSpace%,lengt|
000006f0  68 25 2c 73 70 61 72 65  61 25 2c 66 6f 6e 74 61  |h%,sparea%,fonta|
00000700  72 72 61 79 25 29 0d 01  d6 26 20 6c 65 6e 67 74  |rray%)...& lengt|
00000710  68 25 3d 37 35 20 3a 20  de 20 69 63 6f 6e 53 70  |h%=75 : . iconSp|
00000720  61 63 65 25 20 6c 65 6e  67 74 68 25 0d 01 e0 4f  |ace% length%...O|
00000730  20 6c 64 72 31 25 3d a4  57 69 6d 70 5f 4c 6f 61  | ldr1%=.Wimp_Loa|
00000740  64 54 65 6d 70 6c 61 74  65 46 6f 6e 74 5a 28 22  |dTemplateFontZ("|
00000750  4c 44 52 22 2c 69 63 6f  6e 53 70 61 63 65 25 2c  |LDR",iconSpace%,|
00000760  6c 65 6e 67 74 68 25 2c  73 70 61 72 65 61 25 2c  |length%,sparea%,|
00000770  66 6f 6e 74 61 72 72 61  79 25 29 0d 01 ea 19 20  |fontarray%).... |
00000780  de 20 69 63 6f 6e 53 70  61 63 65 25 20 6c 65 6e  |. iconSpace% len|
00000790  67 74 68 25 0d 01 f4 4f  20 6c 64 72 32 25 3d a4  |gth%...O ldr2%=.|
000007a0  57 69 6d 70 5f 4c 6f 61  64 54 65 6d 70 6c 61 74  |Wimp_LoadTemplat|
000007b0  65 46 6f 6e 74 5a 28 22  4c 44 52 22 2c 69 63 6f  |eFontZ("LDR",ico|
000007c0  6e 53 70 61 63 65 25 2c  6c 65 6e 67 74 68 25 2c  |nSpace%,length%,|
000007d0  73 70 61 72 65 61 25 2c  66 6f 6e 74 61 72 72 61  |sparea%,fontarra|
000007e0  79 25 29 0d 01 fe 25 20  6c 65 6e 67 74 68 25 3d  |y%)...% length%=|
000007f0  34 39 3a 20 de 20 69 63  6f 6e 53 70 61 63 65 25  |49: . iconSpace%|
00000800  20 6c 65 6e 67 74 68 25  0d 02 08 51 20 76 72 65  | length%...Q vre|
00000810  73 31 25 3d a4 57 69 6d  70 5f 4c 6f 61 64 54 65  |s1%=.Wimp_LoadTe|
00000820  6d 70 6c 61 74 65 46 6f  6e 74 5a 28 22 56 52 45  |mplateFontZ("VRE|
00000830  53 22 2c 69 63 6f 6e 53  70 61 63 65 25 2c 6c 65  |S",iconSpace%,le|
00000840  6e 67 74 68 25 2c 73 70  61 72 65 61 25 2c 66 6f  |ngth%,sparea%,fo|
00000850  6e 74 61 72 72 61 79 25  29 0d 02 12 19 20 de 20  |ntarray%).... . |
00000860  69 63 6f 6e 53 70 61 63  65 25 20 6c 65 6e 67 74  |iconSpace% lengt|
00000870  68 25 0d 02 1c 51 20 76  72 65 73 32 25 3d a4 57  |h%...Q vres2%=.W|
00000880  69 6d 70 5f 4c 6f 61 64  54 65 6d 70 6c 61 74 65  |imp_LoadTemplate|
00000890  46 6f 6e 74 5a 28 22 56  52 45 53 22 2c 69 63 6f  |FontZ("VRES",ico|
000008a0  6e 53 70 61 63 65 25 2c  6c 65 6e 67 74 68 25 2c  |nSpace%,length%,|
000008b0  73 70 61 72 65 61 25 2c  66 6f 6e 74 61 72 72 61  |sparea%,fontarra|
000008c0  79 25 29 0d 02 26 25 20  6c 65 6e 67 74 68 25 3d  |y%)..&% length%=|
000008d0  35 35 3a 20 de 20 69 63  6f 6e 53 70 61 63 65 25  |55: . iconSpace%|
000008e0  20 6c 65 6e 67 74 68 25  0d 02 30 5d 20 74 68 65  | length%..0] the|
000008f0  72 6d 69 73 74 6f 72 31  25 3d a4 57 69 6d 70 5f  |rmistor1%=.Wimp_|
00000900  4c 6f 61 64 54 65 6d 70  6c 61 74 65 46 6f 6e 74  |LoadTemplateFont|
00000910  5a 28 22 74 68 65 72 6d  69 73 74 6f 72 22 2c 69  |Z("thermistor",i|
00000920  63 6f 6e 53 70 61 63 65  25 2c 6c 65 6e 67 74 68  |conSpace%,length|
00000930  25 2c 73 70 61 72 65 61  25 2c 66 6f 6e 74 61 72  |%,sparea%,fontar|
00000940  72 61 79 25 29 0d 02 3a  19 20 de 20 69 63 6f 6e  |ray%)..:. . icon|
00000950  53 70 61 63 65 25 20 6c  65 6e 67 74 68 25 0d 02  |Space% length%..|
00000960  44 5d 20 74 68 65 72 6d  69 73 74 6f 72 32 25 3d  |D] thermistor2%=|
00000970  a4 57 69 6d 70 5f 4c 6f  61 64 54 65 6d 70 6c 61  |.Wimp_LoadTempla|
00000980  74 65 46 6f 6e 74 5a 28  22 74 68 65 72 6d 69 73  |teFontZ("thermis|
00000990  74 6f 72 22 2c 69 63 6f  6e 53 70 61 63 65 25 2c  |tor",iconSpace%,|
000009a0  6c 65 6e 67 74 68 25 2c  73 70 61 72 65 61 25 2c  |length%,sparea%,|
000009b0  66 6f 6e 74 61 72 72 61  79 25 29 0d 02 4e 25 20  |fontarray%)..N% |
000009c0  6c 65 6e 67 74 68 25 3d  35 35 3a 20 de 20 69 63  |length%=55: . ic|
000009d0  6f 6e 53 70 61 63 65 25  20 6c 65 6e 67 74 68 25  |onSpace% length%|
000009e0  0d 02 58 52 20 4d 70 72  6f 62 65 31 25 3d a4 57  |..XR Mprobe1%=.W|
000009f0  69 6d 70 5f 4c 6f 61 64  54 65 6d 70 6c 61 74 65  |imp_LoadTemplate|
00000a00  46 6f 6e 74 5a 28 22 77  65 74 22 2c 69 63 6f 6e  |FontZ("wet",icon|
00000a10  53 70 61 63 65 25 2c 6c  65 6e 67 74 68 25 2c 73  |Space%,length%,s|
00000a20  70 61 72 65 61 25 2c 66  6f 6e 74 61 72 72 61 79  |parea%,fontarray|
00000a30  25 29 0d 02 62 19 20 de  20 69 63 6f 6e 53 70 61  |%)..b. . iconSpa|
00000a40  63 65 25 20 6c 65 6e 67  74 68 25 0d 02 6c 52 20  |ce% length%..lR |
00000a50  4d 70 72 6f 62 65 32 25  3d a4 57 69 6d 70 5f 4c  |Mprobe2%=.Wimp_L|
00000a60  6f 61 64 54 65 6d 70 6c  61 74 65 46 6f 6e 74 5a  |oadTemplateFontZ|
00000a70  28 22 77 65 74 22 2c 69  63 6f 6e 53 70 61 63 65  |("wet",iconSpace|
00000a80  25 2c 6c 65 6e 67 74 68  25 2c 73 70 61 72 65 61  |%,length%,sparea|
00000a90  25 2c 66 6f 6e 74 61 72  72 61 79 25 29 0d 02 76  |%,fontarray%)..v|
00000aa0  25 20 6c 65 6e 67 74 68  25 3d 31 35 3a 20 de 20  |% length%=15: . |
00000ab0  69 63 6f 6e 53 70 61 63  65 25 20 6c 65 6e 67 74  |iconSpace% lengt|
00000ac0  68 25 0d 02 80 55 20 73  77 69 74 63 68 31 25 3d  |h%...U switch1%=|
00000ad0  a4 57 69 6d 70 5f 4c 6f  61 64 54 65 6d 70 6c 61  |.Wimp_LoadTempla|
00000ae0  74 65 46 6f 6e 74 5a 28  22 73 77 69 74 63 68 22  |teFontZ("switch"|
00000af0  2c 69 63 6f 6e 53 70 61  63 65 25 2c 6c 65 6e 67  |,iconSpace%,leng|
00000b00  74 68 25 2c 73 70 61 72  65 61 25 2c 66 6f 6e 74  |th%,sparea%,font|
00000b10  61 72 72 61 79 25 29 0d  02 8a 19 20 de 20 69 63  |array%).... . ic|
00000b20  6f 6e 53 70 61 63 65 25  20 6c 65 6e 67 74 68 25  |onSpace% length%|
00000b30  0d 02 94 55 20 73 77 69  74 63 68 32 25 3d a4 57  |...U switch2%=.W|
00000b40  69 6d 70 5f 4c 6f 61 64  54 65 6d 70 6c 61 74 65  |imp_LoadTemplate|
00000b50  46 6f 6e 74 5a 28 22 73  77 69 74 63 68 22 2c 69  |FontZ("switch",i|
00000b60  63 6f 6e 53 70 61 63 65  25 2c 6c 65 6e 67 74 68  |conSpace%,length|
00000b70  25 2c 73 70 61 72 65 61  25 2c 66 6f 6e 74 61 72  |%,sparea%,fontar|
00000b80  72 61 79 25 29 0d 02 9e  18 20 f2 57 69 6d 70 5f  |ray%).... .Wimp_|
00000b90  43 6c 6f 73 65 54 65 6d  70 6c 61 74 65 0d 02 a8  |CloseTemplate...|
00000ba0  1c 20 63 75 72 72 65 6e  74 5f 77 69 6e 64 6f 77  |. current_window|
00000bb0  25 3d 64 65 73 69 67 6e  25 0d 02 b2 17 20 63 75  |%=design%.... cu|
00000bc0  72 72 65 6e 74 5f 74 6f  70 25 3d 72 65 73 31 25  |rrent_top%=res1%|
00000bd0  0d 02 bc 1a 20 63 75 72  72 65 6e 74 5f 62 6f 74  |.... current_bot|
00000be0  74 6f 6d 25 3d 72 65 73  32 25 0d 02 c6 06 20 e1  |tom%=res2%.... .|
00000bf0  0d 02 d0 06 20 3a 0d 02  da 1b 20 dd 20 f2 55 73  |.... :.... . .Us|
00000c00  65 72 5f 53 65 74 55 70  52 65 73 6f 75 72 63 65  |er_SetUpResource|
00000c10  73 0d 02 e4 4a 20 69 63  6f 6e 62 61 72 5f 69 63  |s...J iconbar_ic|
00000c20  6f 6e 25 3d a4 57 69 6d  70 5f 43 72 65 61 74 65  |on%=.Wimp_Create|
00000c30  49 63 6f 6e 28 2d 31 2c  30 2c 30 2c 38 30 2c 38  |Icon(-1,0,0,80,8|
00000c40  30 2c 25 31 31 30 30 30  30 30 30 30 31 31 30 31  |0,%1100000001101|
00000c50  30 2c 22 21 54 72 61 6e  73 22 29 0d 02 ee 30 20  |0,"!Trans")...0 |
00000c60  f2 57 69 6d 70 5f 57 72  69 74 65 49 63 6f 6e 56  |.Wimp_WriteIconV|
00000c70  61 6c 69 64 61 74 69 6f  6e 28 64 65 73 69 67 6e  |alidation(design|
00000c80  25 2c 33 2c 22 53 72 65  73 22 29 0d 02 f8 30 20  |%,3,"Sres")...0 |
00000c90  f2 57 69 6d 70 5f 57 72  69 74 65 49 63 6f 6e 56  |.Wimp_WriteIconV|
00000ca0  61 6c 69 64 61 74 69 6f  6e 28 64 65 73 69 67 6e  |alidation(design|
00000cb0  25 2c 34 2c 22 53 72 65  73 22 29 0d 03 02 06 20  |%,4,"Sres").... |
00000cc0  e1 0d 03 0c 06 20 3a 0d  03 16 17 20 dd 20 f2 55  |..... :.... . .U|
00000cd0  73 65 72 5f 53 65 74 55  70 4d 65 6e 75 73 0d 03  |ser_SetUpMenus..|
00000ce0  20 42 20 c8 99 20 22 46  6f 6e 74 5f 46 69 6e 64  | B .. "Font_Find|
00000cf0  46 6f 6e 74 22 2c 2c 22  68 6f 6d 65 72 74 6f 6e  |Font",,"homerton|
00000d00  2e 6d 65 64 69 75 6d 22  2c 31 36 2a 31 32 2c 31  |.medium",16*12,1|
00000d10  36 2a 31 32 20 b8 20 68  6f 6d 65 72 74 6f 6e 25  |6*12 . homerton%|
00000d20  0d 03 2a 81 20 69 63 6f  6e 62 61 72 5f 6d 65 6e  |..*. iconbar_men|
00000d30  75 25 3d a4 57 69 6d 70  5f 73 65 74 75 70 6d 65  |u%=.Wimp_setupme|
00000d40  6e 75 46 72 6f 6d 53 74  72 69 6e 67 46 6f 6e 74  |nuFromStringFont|
00000d50  79 69 74 65 6d 73 28 61  70 70 24 2b 22 5c 49 6e  |yitems(app$+"\In|
00000d60  66 6f 3e 22 2b 28 c3 20  69 6e 66 6f 5f 77 69 6e  |fo>"+(. info_win|
00000d70  64 6f 77 25 29 2b 22 5c  4f 70 74 69 6f 6e 73 3e  |dow%)+"\Options>|
00000d80  22 2b 28 c3 20 6f 70 74  69 6f 6e 73 25 29 2b 22  |"+(. options%)+"|
00000d90  5c 51 75 69 74 22 2c 68  6f 6d 65 72 74 6f 6e 25  |\Quit",homerton%|
00000da0  29 0d 03 34 15 20 de 20  6d 65 6e 75 5f 49 4e 44  |)..4. . menu_IND|
00000db0  25 20 33 32 2a 36 0d 03  3e 92 20 72 65 73 5f 6d  |% 32*6..>. res_m|
00000dc0  65 6e 75 25 3d a4 57 69  6d 70 5f 73 65 74 75 70  |enu%=.Wimp_setup|
00000dd0  6d 65 6e 75 46 72 6f 6d  53 74 72 69 6e 67 49 4e  |menuFromStringIN|
00000de0  44 46 6f 6e 74 79 69 74  65 6d 73 28 6d 65 6e 75  |DFontyitems(menu|
00000df0  5f 49 4e 44 25 2c 22 49  6e 70 75 74 5c 4c 44 52  |_IND%,"Input\LDR|
00000e00  5c 54 68 65 72 6d 69 73  74 6f 72 5c 4d 6f 69 73  |\Thermistor\Mois|
00000e10  74 75 72 65 20 50 72 6f  62 65 5c 53 77 69 74 63  |ture Probe\Switc|
00000e20  68 5c 52 65 73 69 73 74  6f 72 5c 56 61 72 69 61  |h\Resistor\Varia|
00000e30  62 6c 65 20 52 65 73 69  73 74 6f 72 22 2c 68 6f  |ble Resistor",ho|
00000e40  6d 65 72 74 6f 6e 25 29  0d 03 48 56 20 6f 75 74  |merton%)..HV out|
00000e50  5f 6d 65 6e 75 25 3d a4  57 69 6d 70 5f 73 65 74  |_menu%=.Wimp_set|
00000e60  75 70 6d 65 6e 75 46 72  6f 6d 53 74 72 69 6e 67  |upmenuFromString|
00000e70  46 6f 6e 74 79 69 74 65  6d 73 28 22 4f 75 74 70  |Fontyitems("Outp|
00000e80  75 74 5c 4c 61 6d 70 5c  4c 45 44 5c 42 75 7a 7a  |ut\Lamp\LED\Buzz|
00000e90  65 72 22 2c 68 6f 6d 65  72 74 6f 6e 25 29 0d 03  |er",homerton%)..|
00000ea0  52 87 20 65 6e 74 65 72  5f 6d 65 6e 75 25 3d a4  |R. enter_menu%=.|
00000eb0  57 69 6d 70 5f 73 65 74  75 70 6d 65 6e 75 46 72  |Wimp_setupmenuFr|
00000ec0  6f 6d 53 74 72 69 6e 67  46 6f 6e 74 79 69 74 65  |omStringFontyite|
00000ed0  6d 73 28 22 45 6e 74 65  72 5c 52 31 3e 22 2b 28  |ms("Enter\R1>"+(|
00000ee0  c3 20 72 65 73 5f 6d 65  6e 75 25 29 2b 22 5c 52  |. res_menu%)+"\R|
00000ef0  32 3e 22 2b 28 c3 20 72  65 73 5f 6d 65 6e 75 25  |2>"+(. res_menu%|
00000f00  29 2b 22 5c 4f 75 74 70  75 74 3e 22 2b 28 c3 20  |)+"\Output>"+(. |
00000f10  6f 75 74 5f 6d 65 6e 75  25 29 2c 68 6f 6d 65 72  |out_menu%),homer|
00000f20  74 6f 6e 25 29 0d 03 5c  71 20 64 65 73 69 67 6e  |ton%)..\q design|
00000f30  5f 6d 65 6e 75 25 3d a4  57 69 6d 70 5f 73 65 74  |_menu%=.Wimp_set|
00000f40  75 70 6d 65 6e 75 46 72  6f 6d 53 74 72 69 6e 67  |upmenuFromString|
00000f50  46 6f 6e 74 79 69 74 65  6d 73 28 61 70 70 24 2b  |Fontyitems(app$+|
00000f60  22 5c 45 6e 74 65 72 3e  22 2b 28 c3 20 65 6e 74  |"\Enter>"+(. ent|
00000f70  65 72 5f 6d 65 6e 75 25  29 2b 22 5c 54 65 73 74  |er_menu%)+"\Test|
00000f80  5c 54 6f 6f 6c 62 6f 78  65 73 22 2c 68 6f 6d 65  |\Toolboxes",home|
00000f90  72 74 6f 6e 25 29 0d 03  66 27 20 f2 57 69 6d 70  |rton%)..f' .Wimp|
00000fa0  5f 4d 65 6e 75 54 69 63  6b 49 74 65 6d 28 64 65  |_MenuTickItem(de|
00000fb0  73 69 67 6e 5f 6d 65 6e  75 25 2c 32 29 0d 03 70  |sign_menu%,2)..p|
00000fc0  4f 20 74 65 73 74 5f 6d  65 6e 75 25 3d a4 57 69  |O test_menu%=.Wi|
00000fd0  6d 70 5f 73 65 74 75 70  6d 65 6e 75 46 72 6f 6d  |mp_setupmenuFrom|
00000fe0  53 74 72 69 6e 67 46 6f  6e 74 79 69 74 65 6d 73  |StringFontyitems|
00000ff0  28 61 70 70 24 2b 22 5c  52 65 44 65 73 69 67 6e  |(app$+"\ReDesign|
00001000  22 2c 68 6f 6d 65 72 74  6f 6e 25 29 0d 03 7a 06  |",homerton%)..z.|
00001010  20 e1 0d 03 84 06 20 3a  0d 03 8e 1b 20 dd 20 f2  | ..... :.... . .|
00001020  55 73 65 72 5f 41 70 70  43 6c 6f 73 69 6e 67 44  |User_AppClosingD|
00001030  6f 77 6e 0d 03 98 21 20  c8 99 20 22 46 6f 6e 74  |own...! .. "Font|
00001040  5f 4c 6f 73 65 46 6f 6e  74 22 2c 68 6f 6d 65 72  |_LoseFont",homer|
00001050  74 6f 6e 25 0d 03 a2 27  20 f2 57 69 6d 70 5f 52  |ton%...' .Wimp_R|
00001060  65 6d 6f 76 65 46 6f 6e  74 73 41 72 72 61 79 28  |emoveFontsArray(|
00001070  66 6f 6e 74 61 72 72 61  79 25 29 0d 03 ac 06 20  |fontarray%).... |
00001080  e1 0d 03 b6 06 20 3a 0d  03 c0 11 20 dd 20 f2 55  |..... :.... . .U|
00001090  73 65 72 5f 50 6f 6c 6c  0d 03 ca 26 20 c8 99 20  |ser_Poll...& .. |
000010a0  22 4f 53 5f 52 65 61 64  4d 6f 6e 6f 74 6f 6e 69  |"OS_ReadMonotoni|
000010b0  63 54 69 6d 65 22 20 b8  20 74 69 6d 65 25 0d 03  |cTime" . time%..|
000010c0  d4 0e 20 74 69 6d 65 25  2b 3d 37 30 0d 03 de 36  |.. time%+=70...6|
000010d0  20 e7 20 62 75 7a 7a 65  72 25 3d a3 20 c8 99 20  | . buzzer%=. .. |
000010e0  22 57 69 6d 70 5f 50 6f  6c 6c 22 2c 26 33 38 33  |"Wimp_Poll",&383|
000010f0  33 2c 62 6c 6f 63 6b 25  20 b8 20 72 65 61 73 6f  |3,block% . reaso|
00001100  6e 25 0d 03 e8 40 20 e7  20 62 75 7a 7a 65 72 25  |n%...@ . buzzer%|
00001110  3d b9 20 c8 99 20 22 57  69 6d 70 5f 50 6f 6c 6c  |=. .. "Wimp_Poll|
00001120  49 64 6c 65 22 2c 26 33  38 33 32 2c 62 6c 6f 63  |Idle",&3832,bloc|
00001130  6b 25 2c 74 69 6d 65 25  20 b8 20 72 65 61 73 6f  |k%,time% . reaso|
00001140  6e 25 0d 03 f2 11 20 c8  8e 20 72 65 61 73 6f 6e  |n%.... .. reason|
00001150  25 20 ca 0d 03 fc 0d 20  c9 20 30 3a 20 ef 20 37  |% ..... . 0: . 7|
00001160  0d 04 06 25 20 c9 20 32  3a c8 99 20 22 57 69 6d  |...% . 2:.. "Wim|
00001170  70 5f 4f 70 65 6e 57 69  6e 64 6f 77 22 2c 2c 62  |p_OpenWindow",,b|
00001180  6c 6f 63 6b 25 0d 04 10  1b 20 20 20 20 20 20 20  |lock%....       |
00001190  20 f2 50 6f 6c 6c 4f 70  65 6e 57 69 6e 64 6f 77  | .PollOpenWindow|
000011a0  0d 04 1a 26 20 c9 20 33  3a c8 99 20 22 57 69 6d  |...& . 3:.. "Wim|
000011b0  70 5f 43 6c 6f 73 65 57  69 6e 64 6f 77 22 2c 2c  |p_CloseWindow",,|
000011c0  62 6c 6f 63 6b 25 0d 04  24 27 20 20 20 20 20 20  |block%..$'      |
000011d0  20 20 f2 50 6f 6c 6c 5f  57 69 6e 64 6f 77 43 6c  |  .Poll_WindowCl|
000011e0  6f 73 65 64 28 21 62 6c  6f 63 6b 25 29 0d 04 2e  |osed(!block%)...|
000011f0  37 20 c9 20 36 3a f2 50  6f 6c 6c 5f 4d 6f 75 73  |7 . 6:.Poll_Mous|
00001200  65 43 6c 69 63 6b 28 62  6c 6f 63 6b 25 21 31 32  |eClick(block%!12|
00001210  2c 62 6c 6f 63 6b 25 21  31 36 2c 62 6c 6f 63 6b  |,block%!16,block|
00001220  25 21 38 29 0d 04 38 16  20 c9 20 37 3a f2 50 6f  |%!8)..8. . 7:.Po|
00001230  6c 6c 5f 45 6e 64 44 72  61 67 0d 04 42 33 20 c9  |ll_EndDrag..B3 .|
00001240  20 38 3a f2 50 6f 6c 6c  5f 4b 65 79 50 72 65 73  | 8:.Poll_KeyPres|
00001250  73 28 21 62 6c 6f 63 6b  25 2c 62 6c 6f 63 6b 25  |s(!block%,block%|
00001260  21 34 2c 62 6c 6f 63 6b  25 21 32 34 29 0d 04 4c  |!4,block%!24)..L|
00001270  1c 20 c9 20 39 3a f2 50  6f 6c 6c 5f 4d 65 6e 75  |. . 9:.Poll_Menu|
00001280  53 65 6c 65 63 74 69 6f  6e 0d 04 56 2f 20 c9 20  |Selection..V/ . |
00001290  31 37 2c 31 38 20 3a f2  50 6f 6c 6c 5f 49 6e 63  |17,18 :.Poll_Inc|
000012a0  6f 6d 6d 69 6e 67 4d 65  73 73 61 67 65 28 62 6c  |ommingMessage(bl|
000012b0  6f 63 6b 25 21 31 36 29  0d 04 60 06 20 cb 0d 04  |ock%!16)..`. ...|
000012c0  6a 06 20 e1 0d 04 74 06  20 3a 0d 04 7e 16 20 dd  |j. ...t. :..~. .|
000012d0  20 f2 50 6f 6c 6c 4f 70  65 6e 57 69 6e 64 6f 77  | .PollOpenWindow|
000012e0  0d 04 88 11 20 c8 8e 20  21 62 6c 6f 63 6b 25 20  |.... .. !block% |
000012f0  ca 0d 04 92 2d 20 20 20  20 20 20 c9 20 64 65 73  |....-      . des|
00001300  69 67 6e 25 3a 20 f2 55  73 65 72 5f 4f 70 65 6e  |ign%: .User_Open|
00001310  44 65 73 69 67 6e 41 4e  44 54 6f 6f 6c 73 0d 04  |DesignANDTools..|
00001320  9c 47 20 20 20 20 20 20  c9 20 74 65 73 74 25 3a  |.G      . test%:|
00001330  20 f2 55 73 65 72 5f 4f  70 65 6e 54 65 73 74 41  | .User_OpenTestA|
00001340  4e 44 54 6f 6f 6c 73 28  63 75 72 72 65 6e 74 5f  |NDTools(current_|
00001350  74 6f 70 25 2c 63 75 72  72 65 6e 74 5f 62 6f 74  |top%,current_bot|
00001360  74 6f 6d 25 29 0d 04 a6  06 20 cb 0d 04 b0 06 20  |tom%).... ..... |
00001370  e1 0d 04 ba 06 20 3a 0d  04 c4 22 20 dd 20 f2 50  |..... :..." . .P|
00001380  6f 6c 6c 5f 57 69 6e 64  6f 77 43 6c 6f 73 65 64  |oll_WindowClosed|
00001390  28 77 69 6e 64 6f 77 25  29 0d 04 ce 11 20 c8 8e  |(window%).... ..|
000013a0  20 77 69 6e 64 6f 77 25  20 ca 0d 04 d8 2f 20 20  | window% ..../  |
000013b0  20 20 20 20 c9 20 64 65  73 69 67 6e 25 3a 20 f2  |    . design%: .|
000013c0  57 69 6d 70 5f 43 6c 6f  73 65 57 69 6e 64 6f 77  |Wimp_CloseWindow|
000013d0  28 74 6f 6f 6c 73 31 25  29 0d 04 e2 32 20 20 20  |(tools1%)...2   |
000013e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000013f0  20 f2 57 69 6d 70 5f 43  6c 6f 73 65 57 69 6e 64  | .Wimp_CloseWind|
00001400  6f 77 28 74 6f 6f 6c 73  32 25 29 0d 04 ec 32 20  |ow(tools2%)...2 |
00001410  20 20 20 20 20 c9 20 74  65 73 74 25 3a 20 f2 57  |     . test%: .W|
00001420  69 6d 70 5f 43 6c 6f 73  65 57 69 6e 64 6f 77 28  |imp_CloseWindow(|
00001430  63 75 72 72 65 6e 74 5f  74 6f 70 25 29 0d 04 f6  |current_top%)...|
00001440  38 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |8               |
00001450  20 20 20 f2 57 69 6d 70  5f 43 6c 6f 73 65 57 69  |   .Wimp_CloseWi|
00001460  6e 64 6f 77 28 63 75 72  72 65 6e 74 5f 62 6f 74  |ndow(current_bot|
00001470  74 6f 6d 25 29 0d 05 00  1f 20 20 20 20 20 20 20  |tom%)....       |
00001480  20 20 20 20 20 20 20 20  20 20 20 62 75 7a 7a 65  |           buzze|
00001490  72 25 3d a3 0d 05 0a 06  20 cb 0d 05 14 06 20 e1  |r%=..... ..... .|
000014a0  0d 05 1e 06 20 3a 0d 05  28 2e 20 dd 20 f2 50 6f  |.... :..(. . .Po|
000014b0  6c 6c 5f 4d 6f 75 73 65  43 6c 69 63 6b 28 77 69  |ll_MouseClick(wi|
000014c0  6e 64 6f 77 25 2c 69 63  6f 6e 25 2c 62 75 74 74  |ndow%,icon%,butt|
000014d0  6f 6e 25 29 0d 05 32 4e  20 f4 20 44 6f 6e 27 74  |on%)..2N . Don't|
000014e0  20 66 6f 72 67 65 74 20  77 68 65 6e 20 79 6f 75  | forget when you|
000014f0  20 61 72 65 20 6f 70 65  6e 69 6e 67 20 6d 65 6e  | are opening men|
00001500  75 73 20 79 6f 75 20 6d  75 73 74 20 75 70 20 64  |us you must up d|
00001510  61 74 65 20 3c 43 75 72  72 65 6e 74 4d 65 6e 75  |ate <CurrentMenu|
00001520  25 3e 0d 05 3c 0f 20 ea  20 78 25 2c 79 25 2c 61  |%>..<. . x%,y%,a|
00001530  24 0d 05 46 11 20 c8 8e  20 77 69 6e 64 6f 77 25  |$..F. .. window%|
00001540  20 ca 0d 05 50 31 20 20  20 20 20 20 c9 20 2d 32  | ...P1      . -2|
00001550  3a f2 4d 6f 75 73 65 43  6c 69 63 6b 5f 49 63 6f  |:.MouseClick_Ico|
00001560  6e 42 61 72 28 69 63 6f  6e 25 2c 62 75 74 74 6f  |nBar(icon%,butto|
00001570  6e 25 29 0d 05 5a 37 20  20 20 20 20 20 c9 20 74  |n%)..Z7      . t|
00001580  6f 6f 6c 73 31 25 3a f2  4d 6f 75 73 65 43 6c 69  |ools1%:.MouseCli|
00001590  63 6b 5f 54 6f 6f 6c 73  42 61 72 28 69 63 6f 6e  |ck_ToolsBar(icon|
000015a0  25 2c 62 75 74 74 6f 6e  25 29 0d 05 64 39 20 20  |%,button%)..d9  |
000015b0  20 20 20 20 c9 20 74 6f  6f 6c 73 32 25 3a f2 4d  |    . tools2%:.M|
000015c0  6f 75 73 65 43 6c 69 63  6b 5f 54 6f 6f 6c 73 42  |ouseClick_ToolsB|
000015d0  61 72 28 69 63 6f 6e 25  2b 36 2c 62 75 74 74 6f  |ar(icon%+6,butto|
000015e0  6e 25 29 0d 05 6e 35 20  20 20 20 20 20 c9 20 64  |n%)..n5      . d|
000015f0  65 73 69 67 6e 25 3a f2  4d 6f 75 73 65 43 6c 69  |esign%:.MouseCli|
00001600  63 6b 5f 44 65 73 69 67  6e 28 69 63 6f 6e 25 2c  |ck_Design(icon%,|
00001610  62 75 74 74 6f 6e 25 29  0d 05 78 31 20 20 20 20  |button%)..x1    |
00001620  20 20 c9 20 74 65 73 74  25 3a f2 4d 6f 75 73 65  |  . test%:.Mouse|
00001630  43 6c 69 63 6b 5f 54 65  73 74 28 69 63 6f 6e 25  |Click_Test(icon%|
00001640  2c 62 75 74 74 6f 6e 25  29 0d 05 82 30 20 20 20  |,button%)...0   |
00001650  20 20 20 c9 20 72 65 73  31 25 2c 72 65 73 32 25  |   . res1%,res2%|
00001660  3a e7 20 62 75 74 74 6f  6e 25 3d 32 20 80 20 69  |:. button%=2 . i|
00001670  63 6f 6e 25 3c 3e 34 20  8c 0d 05 8c 4a 20 20 20  |con%<>4 ....J   |
00001680  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001690  20 20 20 20 20 f2 57 69  6d 70 5f 53 68 6f 77 4d  |     .Wimp_ShowM|
000016a0  65 6e 75 28 74 65 73 74  5f 6d 65 6e 75 25 2c 21  |enu(test_menu%,!|
000016b0  62 6c 6f 63 6b 25 2d 36  34 2c 62 6c 6f 63 6b 25  |block%-64,block%|
000016c0  21 34 29 0d 05 96 33 20  20 20 20 20 20 20 20 20  |!4)...3         |
000016d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |               C|
000016e0  75 72 72 65 6e 74 4d 65  6e 75 25 3d 74 65 73 74  |urrentMenu%=test|
000016f0  5f 6d 65 6e 75 25 0d 05  a0 1c 20 20 20 20 20 20  |_menu%....      |
00001700  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001710  20 cd 0d 05 aa 26 20 20  20 20 20 20 20 20 20 20  | ....&          |
00001720  20 20 20 20 20 20 20 20  20 20 20 20 20 e7 20 69  |             . i|
00001730  63 6f 6e 25 3d 34 20 8c  0d 05 b4 37 20 20 20 20  |con%=4 ....7    |
00001740  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001750  20 20 20 20 78 25 3d 21  62 6c 6f 63 6b 25 2d 36  |    x%=!block%-6|
00001760  34 20 3a 20 79 25 3d 62  6c 6f 63 6b 25 21 34 0d  |4 : y%=block%!4.|
00001770  05 be 3c 20 20 20 20 20  20 20 20 20 20 20 20 20  |..<             |
00001780  20 20 20 20 20 20 20 20  20 20 20 61 24 3d a4 57  |           a$=.W|
00001790  69 6d 70 5f 52 65 61 64  49 63 6f 6e 54 65 78 74  |imp_ReadIconText|
000017a0  28 77 69 6e 64 6f 77 25  2c 33 29 0d 05 c8 3d 20  |(window%,3)...= |
000017b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000017c0  20 20 20 20 20 20 20 20  c8 8e 20 a4 4d 69 73 63  |        .. .Misc|
000017d0  5f 54 75 72 6e 54 6f 4c  6f 77 65 72 43 61 73 65  |_TurnToLowerCase|
000017e0  28 c2 61 24 29 29 20 ca  0d 05 d2 30 20 20 20 20  |(.a$)) ....0    |
000017f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001800  20 20 20 20 20 20 20 20  20 20 c9 20 22 72 22 3a  |          . "r":|
00001810  20 61 24 3d c0 61 24 29  0d 05 dc 36 20 20 20 20  | a$=.a$)...6    |
00001820  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001830  20 20 20 20 20 20 20 20  20 20 c9 20 22 6b 22 3a  |          . "k":|
00001840  20 61 24 3d c0 61 24 29  2b 22 30 30 30 22 0d 05  | a$=.a$)+"000"..|
00001850  e6 39 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.9              |
00001860  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001870  c9 20 22 6d 22 3a 20 61  24 3d c0 61 24 29 2b 22  |. "m": a$=.a$)+"|
00001880  30 30 30 30 30 30 22 0d  05 f0 1e 20 20 20 20 20  |000000"....     |
00001890  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000018a0  20 20 20 20 cb 0d 05 fa  50 20 20 20 20 20 20 20  |    ....P       |
000018b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000018c0  20 20 c8 99 20 22 57 69  6d 70 5f 57 68 69 63 68  |  .. "Wimp_Which|
000018d0  49 63 6f 6e 22 2c 6f 70  74 69 6f 6e 73 25 2c 62  |Icon",options%,b|
000018e0  6c 6f 63 6b 25 2c 26 33  46 30 30 30 30 2c 26 32  |lock%,&3F0000,&2|
000018f0  31 30 30 30 30 0d 06 04  4c 20 20 20 20 20 20 20  |10000...L       |
00001900  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001910  20 20 e7 20 21 62 6c 6f  63 6b 25 3d 32 20 84 20  |  . !block%=2 . |
00001920  21 62 6c 6f 63 6b 25 3d  33 20 8c 20 72 65 73 69  |!block%=3 . resi|
00001930  73 74 6f 72 25 3d 28 21  62 6c 6f 63 6b 25 29 2b  |stor%=(!block%)+|
00001940  31 0d 06 0e 1d 20 20 20  20 20 20 20 20 20 20 20  |1....           |
00001950  c8 8e 20 72 65 73 69 73  74 6f 72 25 20 ca 0d 06  |.. resistor% ...|
00001960  18 18 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001970  20 20 c9 20 33 3a 0d 06  22 3b 20 20 20 20 20 20  |  . 3:..";      |
00001980  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001990  20 20 f2 57 69 6d 70 5f  53 68 6f 77 4d 65 6e 75  |  .Wimp_ShowMenu|
000019a0  28 72 65 73 5f 77 69 6e  64 25 2c 78 25 2c 79 25  |(res_wind%,x%,y%|
000019b0  29 0d 06 2c 32 20 20 20  20 20 20 20 20 20 20 20  |)..,2           |
000019c0  20 20 20 20 20 20 20 20  20 20 20 20 20 43 75 72  |             Cur|
000019d0  72 65 6e 74 4d 65 6e 75  25 3d 72 65 73 5f 77 69  |rentMenu%=res_wi|
000019e0  6e 64 25 0d 06 36 4f 20  20 20 20 20 20 20 20 20  |nd%..6O         |
000019f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00001a00  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 56 61  |Wimp_WriteIconVa|
00001a10  6c 69 64 61 74 69 6f 6e  28 72 65 73 5f 77 69 6e  |lidation(res_win|
00001a20  64 25 2c 31 2c 22 53 22  2b c1 61 24 2c 31 2c 31  |d%,1,"S"+.a$,1,1|
00001a30  29 29 0d 06 40 4f 20 20  20 20 20 20 20 20 20 20  |))..@O          |
00001a40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00001a50  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 56 61 6c  |imp_WriteIconVal|
00001a60  69 64 61 74 69 6f 6e 28  72 65 73 5f 77 69 6e 64  |idation(res_wind|
00001a70  25 2c 32 2c 22 53 22 2b  c1 61 24 2c 32 2c 31 29  |%,2,"S"+.a$,2,1)|
00001a80  29 0d 06 4a 4d 20 20 20  20 20 20 20 20 20 20 20  |)..JM           |
00001a90  20 20 f2 57 69 6d 70 5f  57 72 69 74 65 49 63 6f  |  .Wimp_WriteIco|
00001aa0  6e 56 61 6c 69 64 61 74  69 6f 6e 28 72 65 73 5f  |nValidation(res_|
00001ab0  77 69 6e 64 25 2c 33 2c  22 53 22 2b c3 28 a9 28  |wind%,3,"S"+.(.(|
00001ac0  c1 61 24 2c 33 2c a9 20  61 24 29 29 29 29 0d 06  |.a$,3,. a$))))..|
00001ad0  54 4f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |TO              |
00001ae0  20 20 20 20 20 20 20 20  20 20 f2 57 69 6d 70 5f  |          .Wimp_|
00001af0  57 72 69 74 65 49 63 6f  6e 56 61 6c 69 64 61 74  |WriteIconValidat|
00001b00  69 6f 6e 28 72 65 73 5f  77 69 6e 64 25 2c 34 2c  |ion(res_wind%,4,|
00001b10  22 53 72 65 73 69 73 74  6f 72 34 22 29 0d 06 5e  |"Sresistor4")..^|
00001b20  18 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001b30  20 c9 20 34 3a 0d 06 68  3b 20 20 20 20 20 20 20  | . 4:..h;       |
00001b40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001b50  20 f2 57 69 6d 70 5f 53  68 6f 77 4d 65 6e 75 28  | .Wimp_ShowMenu(|
00001b60  72 65 73 5f 77 69 6e 64  25 2c 78 25 2c 79 25 29  |res_wind%,x%,y%)|
00001b70  0d 06 72 32 20 20 20 20  20 20 20 20 20 20 20 20  |..r2            |
00001b80  20 20 20 20 20 20 20 20  20 20 20 20 43 75 72 72  |            Curr|
00001b90  65 6e 74 4d 65 6e 75 25  3d 72 65 73 5f 77 69 6e  |entMenu%=res_win|
00001ba0  64 25 0d 06 7c 4f 20 20  20 20 20 20 20 20 20 20  |d%..|O          |
00001bb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00001bc0  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 56 61 6c  |imp_WriteIconVal|
00001bd0  69 64 61 74 69 6f 6e 28  72 65 73 5f 77 69 6e 64  |idation(res_wind|
00001be0  25 2c 30 2c 22 53 22 2b  c1 61 24 2c 31 2c 31 29  |%,0,"S"+.a$,1,1)|
00001bf0  29 0d 06 86 4f 20 20 20  20 20 20 20 20 20 20 20  |)...O           |
00001c00  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 57 69  |             .Wi|
00001c10  6d 70 5f 57 72 69 74 65  49 63 6f 6e 56 61 6c 69  |mp_WriteIconVali|
00001c20  64 61 74 69 6f 6e 28 72  65 73 5f 77 69 6e 64 25  |dation(res_wind%|
00001c30  2c 31 2c 22 53 22 2b c1  61 24 2c 32 2c 31 29 29  |,1,"S"+.a$,2,1))|
00001c40  0d 06 90 4f 20 20 20 20  20 20 20 20 20 20 20 20  |...O            |
00001c50  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
00001c60  70 5f 57 72 69 74 65 49  63 6f 6e 56 61 6c 69 64  |p_WriteIconValid|
00001c70  61 74 69 6f 6e 28 72 65  73 5f 77 69 6e 64 25 2c  |ation(res_wind%,|
00001c80  32 2c 22 53 22 2b c1 61  24 2c 33 2c 31 29 29 0d  |2,"S"+.a$,3,1)).|
00001c90  06 9a 4d 20 20 20 20 20  20 20 20 20 20 20 20 20  |..M             |
00001ca0  f2 57 69 6d 70 5f 57 72  69 74 65 49 63 6f 6e 56  |.Wimp_WriteIconV|
00001cb0  61 6c 69 64 61 74 69 6f  6e 28 72 65 73 5f 77 69  |alidation(res_wi|
00001cc0  6e 64 25 2c 33 2c 22 53  22 2b c3 28 a9 28 c1 61  |nd%,3,"S"+.(.(.a|
00001cd0  24 2c 34 2c a9 20 61 24  29 29 29 29 0d 06 a4 4f  |$,4,. a$))))...O|
00001ce0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001cf0  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 57 72  |        .Wimp_Wr|
00001d00  69 74 65 49 63 6f 6e 56  61 6c 69 64 61 74 69 6f  |iteIconValidatio|
00001d10  6e 28 72 65 73 5f 77 69  6e 64 25 2c 34 2c 22 53  |n(res_wind%,4,"S|
00001d20  72 65 73 69 73 74 6f 72  35 22 29 0d 06 ae 04 0d  |resistor5").....|
00001d30  06 b8 10 20 20 20 20 20  20 20 20 20 20 20 cb 0d  |...           ..|
00001d40  06 c2 1c 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00001d50  20 20 20 20 20 20 20 20  20 20 cd 0d 06 cc 41 20  |          ....A |
00001d60  20 20 20 20 20 c9 20 76  72 65 73 31 25 2c 76 72  |     . vres1%,vr|
00001d70  65 73 32 25 3a f2 4d 6f  75 73 65 43 6c 69 63 6b  |es2%:.MouseClick|
00001d80  5f 56 72 65 73 28 77 69  6e 64 6f 77 25 2c 69 63  |_Vres(window%,ic|
00001d90  6f 6e 25 2c 62 75 74 74  6f 6e 25 29 0d 06 d6 3e  |on%,button%)...>|
00001da0  20 20 20 20 20 20 c9 20  6c 64 72 31 25 2c 6c 64  |      . ldr1%,ld|
00001db0  72 32 25 3a f2 4d 6f 75  73 65 43 6c 69 63 6b 5f  |r2%:.MouseClick_|
00001dc0  4c 44 52 28 77 69 6e 64  6f 77 25 2c 69 63 6f 6e  |LDR(window%,icon|
00001dd0  25 2c 62 75 74 74 6f 6e  25 29 0d 06 e0 53 20 20  |%,button%)...S  |
00001de0  20 20 20 20 c9 20 74 68  65 72 6d 69 73 74 6f 72  |    . thermistor|
00001df0  31 25 2c 74 68 65 72 6d  69 73 74 6f 72 32 25 3a  |1%,thermistor2%:|
00001e00  f2 4d 6f 75 73 65 43 6c  69 63 6b 5f 54 68 65 72  |.MouseClick_Ther|
00001e10  6d 69 73 74 6f 72 28 77  69 6e 64 6f 77 25 2c 69  |mistor(window%,i|
00001e20  63 6f 6e 25 2c 62 75 74  74 6f 6e 25 29 0d 06 ea  |con%,button%)...|
00001e30  4e 20 20 20 20 20 20 c9  20 4d 70 72 6f 62 65 31  |N      . Mprobe1|
00001e40  25 2c 4d 70 72 6f 62 65  32 25 3a f2 4d 6f 75 73  |%,Mprobe2%:.Mous|
00001e50  65 43 6c 69 63 6b 5f 4d  6f 69 73 74 75 72 65 50  |eClick_MoistureP|
00001e60  72 6f 62 65 28 77 69 6e  64 6f 77 25 2c 69 63 6f  |robe(window%,ico|
00001e70  6e 25 2c 62 75 74 74 6f  6e 25 29 0d 06 f4 82 20  |n%,button%).... |
00001e80  20 20 20 20 20 c9 20 73  77 69 74 63 68 31 25 2c  |     . switch1%,|
00001e90  73 77 69 74 63 68 32 25  3a e7 20 62 75 74 74 6f  |switch2%:. butto|
00001ea0  6e 25 3c 3e 32 20 8c 20  f2 43 61 6c 63 75 6c 61  |n%<>2 . .Calcula|
00001eb0  74 65 20 8b 20 f2 57 69  6d 70 5f 53 68 6f 77 4d  |te . .Wimp_ShowM|
00001ec0  65 6e 75 28 74 65 73 74  5f 6d 65 6e 75 25 2c 21  |enu(test_menu%,!|
00001ed0  62 6c 6f 63 6b 25 2d 36  34 2c 62 6c 6f 63 6b 25  |block%-64,block%|
00001ee0  21 34 29 20 3a 20 43 75  72 72 65 6e 74 4d 65 6e  |!4) : CurrentMen|
00001ef0  75 25 3d 74 65 73 74 5f  6d 65 6e 75 25 0d 06 fe  |u%=test_menu%...|
00001f00  06 20 cb 0d 07 08 06 20  e1 0d 07 12 06 20 3a 0d  |. ..... ..... :.|
00001f10  07 1c 34 20 dd 20 f2 4d  6f 75 73 65 43 6c 69 63  |..4 . .MouseClic|
00001f20  6b 5f 54 68 65 72 6d 69  73 74 6f 72 28 77 69 6e  |k_Thermistor(win|
00001f30  64 6f 77 25 2c 69 63 6f  6e 25 2c 62 75 74 74 6f  |dow%,icon%,butto|
00001f40  6e 25 29 0d 07 26 15 20  ea 20 61 2c 61 24 2c 7a  |n%)..&. . a,a$,z|
00001f50  7a 24 2c 7a 24 2c 7a 25  0d 07 30 11 20 c8 8e 20  |z$,z$,z%..0. .. |
00001f60  62 75 74 74 6f 6e 25 20  ca 0d 07 3a 3d 20 20 20  |button% ...:=   |
00001f70  20 20 20 c9 20 32 3a 20  f2 57 69 6d 70 5f 53 68  |   . 2: .Wimp_Sh|
00001f80  6f 77 4d 65 6e 75 28 74  65 73 74 5f 6d 65 6e 75  |owMenu(test_menu|
00001f90  25 2c 21 62 6c 6f 63 6b  25 2d 36 34 2c 62 6c 6f  |%,!block%-64,blo|
00001fa0  63 6b 25 21 34 29 0d 07  44 29 20 20 20 20 20 20  |ck%!4)..D)      |
00001fb0  20 20 20 20 20 20 20 20  43 75 72 72 65 6e 74 4d  |        CurrentM|
00001fc0  65 6e 75 25 3d 74 65 73  74 5f 6d 65 6e 75 25 0d  |enu%=test_menu%.|
00001fd0  07 4e 33 20 20 20 20 20  20 c9 20 31 2c 34 3a 20  |.N3      . 1,4: |
00001fe0  61 3d bb 28 a4 57 69 6d  70 5f 52 65 61 64 49 63  |a=.(.Wimp_ReadIc|
00001ff0  6f 6e 54 65 78 74 28 77  69 6e 64 6f 77 25 2c 34  |onText(window%,4|
00002000  29 29 0d 07 58 23 20 20  20 20 20 20 20 20 20 20  |))..X#          |
00002010  20 20 20 20 20 20 e7 20  61 3e 32 30 30 20 8c 20  |      . a>200 . |
00002020  61 3d 32 30 30 0d 07 62  23 20 20 20 20 20 20 20  |a=200..b#       |
00002030  20 20 20 20 20 20 20 20  20 e7 20 61 3c 2d 35 30  |         . a<-50|
00002040  20 8c 20 61 3d 2d 35 30  0d 07 6c 1b 20 20 20 20  | . a=-50..l.    |
00002050  20 20 20 20 20 20 20 20  20 20 20 20 7a 7a 24 3d  |            zz$=|
00002060  c3 20 61 0d 07 76 3d 20  20 20 20 20 20 20 20 20  |. a..v=         |
00002070  20 20 20 20 20 20 20 e7  20 a7 7a 7a 24 2c 22 2e  |       . .zz$,".|
00002080  22 29 3d 30 20 8c 20 7a  25 3d a9 20 7a 7a 24 20  |")=0 . z%=. zz$ |
00002090  8b 20 7a 25 3d a7 7a 7a  24 2c 22 2e 22 29 2b 31  |. z%=.zz$,".")+1|
000020a0  0d 07 80 1f 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
000020b0  20 20 20 20 7a 24 3d c0  7a 7a 24 2c 7a 25 29 0d  |    z$=.zz$,z%).|
000020c0  07 8a 3b 20 20 20 20 20  20 20 20 20 20 20 20 20  |..;             |
000020d0  20 20 20 e7 20 a7 7a 24  2c 22 2e 22 29 3c 3e 30  |   . .z$,".")<>0|
000020e0  20 80 20 c2 7a 24 29 3c  3e 22 35 22 20 8c 20 7a  | . .z$)<>"5" . z|
000020f0  24 3d c0 7a 24 29 2b 22  35 22 0d 07 94 1e 20 20  |$=.z$)+"5"....  |
00002100  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c8 8e  |              ..|
00002110  20 69 63 6f 6e 25 20 ca  0d 07 9e 25 20 20 20 20  | icon% ....%    |
00002120  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002130  20 c9 20 35 3a 20 61 3d  bb 28 7a 24 29 0d 07 a8  | . 5: a=.(z$)...|
00002140  31 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |1               |
00002150  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00002160  61 3c 32 30 30 20 8c 20  61 2b 3d 30 2e 35 0d 07  |a<200 . a+=0.5..|
00002170  b2 43 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.C              |
00002180  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00002190  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 54 65  |Wimp_WriteIconTe|
000021a0  78 74 28 77 69 6e 64 6f  77 25 2c 34 2c c3 20 61  |xt(window%,4,. a|
000021b0  29 0d 07 bc 3f 20 20 20  20 20 20 20 20 20 20 20  |)...?           |
000021c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000021d0  20 20 e7 20 61 3e 3d 2d  35 30 20 80 20 61 3c 2d  |  . a>=-50 . a<-|
000021e0  32 35 20 8c 20 61 24 3d  22 52 37 3b 53 68 2d 22  |25 . a$="R7;Sh-"|
000021f0  0d 07 c6 3d 20 20 20 20  20 20 20 20 20 20 20 20  |...=            |
00002200  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002210  20 e7 20 61 3e 3d 2d 32  35 20 80 20 61 3c 30 20  | . a>=-25 . a<0 |
00002220  8c 20 61 24 3d 22 52 37  3b 53 68 30 22 0d 07 d0  |. a$="R7;Sh0"...|
00002230  3c 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |<               |
00002240  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00002250  61 3e 3d 30 20 80 20 61  3c 32 35 20 8c 20 61 24  |a>=0 . a<25 . a$|
00002260  3d 22 52 37 3b 53 68 31  22 0d 07 da 3d 20 20 20  |="R7;Sh1"...=   |
00002270  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002280  20 20 20 20 20 20 20 20  20 20 e7 20 61 3e 3d 32  |          . a>=2|
00002290  35 20 80 20 61 3c 35 30  20 8c 20 61 24 3d 22 52  |5 . a<50 . a$="R|
000022a0  37 3b 53 68 32 22 0d 07  e4 3d 20 20 20 20 20 20  |7;Sh2"...=      |
000022b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000022c0  20 20 20 20 20 20 20 e7  20 61 3e 3d 35 30 20 80  |       . a>=50 .|
000022d0  20 61 3c 37 35 20 8c 20  61 24 3d 22 52 37 3b 53  | a<75 . a$="R7;S|
000022e0  68 33 22 0d 07 ee 3e 20  20 20 20 20 20 20 20 20  |h3"...>         |
000022f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002300  20 20 20 20 e7 20 61 3e  3d 37 35 20 80 20 61 3c  |    . a>=75 . a<|
00002310  31 30 30 20 8c 20 61 24  3d 22 52 37 3b 53 68 34  |100 . a$="R7;Sh4|
00002320  22 0d 07 f8 3f 20 20 20  20 20 20 20 20 20 20 20  |"...?           |
00002330  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002340  20 20 e7 20 61 3e 3d 31  30 30 20 80 20 61 3c 31  |  . a>=100 . a<1|
00002350  32 35 20 8c 20 61 24 3d  22 52 37 3b 53 68 35 22  |25 . a$="R7;Sh5"|
00002360  0d 08 02 3f 20 20 20 20  20 20 20 20 20 20 20 20  |...?            |
00002370  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002380  20 e7 20 61 3e 3d 31 32  35 20 80 20 61 3c 31 35  | . a>=125 . a<15|
00002390  30 20 8c 20 61 24 3d 22  52 37 3b 53 68 36 22 0d  |0 . a$="R7;Sh6".|
000023a0  08 0c 3f 20 20 20 20 20  20 20 20 20 20 20 20 20  |..?             |
000023b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000023c0  e7 20 61 3e 3d 31 35 30  20 80 20 61 3c 31 37 35  |. a>=150 . a<175|
000023d0  20 8c 20 61 24 3d 22 52  37 3b 53 68 37 22 0d 08  | . a$="R7;Sh7"..|
000023e0  16 3f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.?              |
000023f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
00002400  20 61 3e 3d 31 37 35 20  80 20 61 3c 32 30 31 20  | a>=175 . a<201 |
00002410  8c 20 61 24 3d 22 52 37  3b 53 68 38 22 0d 08 20  |. a$="R7;Sh8".. |
00002420  48 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |H               |
00002430  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00002440  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 56 61 6c  |imp_WriteIconVal|
00002450  69 64 61 74 69 6f 6e 28  77 69 6e 64 6f 77 25 2c  |idation(window%,|
00002460  32 2c 61 24 29 0d 08 2a  34 20 20 20 20 20 20 20  |2,a$)..*4       |
00002470  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002480  20 20 20 20 20 20 61 3d  28 32 35 30 2d 28 61 2b  |      a=(250-(a+|
00002490  35 30 29 29 2a 34 30 30  30 0d 08 34 33 20 20 20  |50))*4000..43   |
000024a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000024b0  20 20 20 20 20 20 20 20  20 20 e7 20 61 3c 31 30  |          . a<10|
000024c0  30 30 20 8c 20 61 24 3d  c3 28 61 29 0d 08 3e 49  |00 . a$=.(a)..>I|
000024d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000024e0  20 20 20 20 20 20 20 20  20 20 20 20 20 e7 20 61  |             . a|
000024f0  3e 3d 31 30 30 30 20 80  20 61 3c 31 30 30 30 30  |>=1000 . a<10000|
00002500  30 30 20 8c 20 61 24 3d  c3 28 61 2f 31 30 30 30  |00 . a$=.(a/1000|
00002510  29 2b 22 4b 22 0d 08 48  43 20 20 20 20 20 20 20  |)+"K"..HC       |
00002520  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002530  20 20 20 20 20 20 e7 20  61 3e 3d 31 30 30 30 30  |      . a>=10000|
00002540  30 30 20 8c 20 61 24 3d  c3 28 61 2f 31 30 30 30  |00 . a$=.(a/1000|
00002550  30 30 30 29 2b 22 4d 22  0d 08 52 42 20 20 20 20  |000)+"M"..RB    |
00002560  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002570  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 57  |         .Wimp_W|
00002580  72 69 74 65 49 63 6f 6e  54 65 78 74 28 77 69 6e  |riteIconText(win|
00002590  64 6f 77 25 2c 39 2c 61  24 29 0d 08 5c 2b 20 20  |dow%,9,a$)..\+  |
000025a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000025b0  20 20 20 20 20 20 20 20  20 20 20 f2 43 61 6c 63  |           .Calc|
000025c0  75 6c 61 74 65 0d 08 66  25 20 20 20 20 20 20 20  |ulate..f%       |
000025d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |              . |
000025e0  36 3a 20 61 3d bb 28 7a  24 29 0d 08 70 31 20 20  |6: a=.(z$)..p1  |
000025f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002600  20 20 20 20 20 20 20 20  20 20 20 e7 20 61 3e 2d  |           . a>-|
00002610  35 30 20 8c 20 61 2d 3d  30 2e 35 0d 08 7a 43 20  |50 . a-=0.5..zC |
00002620  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002630  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
00002640  70 5f 57 72 69 74 65 49  63 6f 6e 54 65 78 74 28  |p_WriteIconText(|
00002650  77 69 6e 64 6f 77 25 2c  34 2c c3 20 61 29 0d 08  |window%,4,. a)..|
00002660  84 3f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.?              |
00002670  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
00002680  20 61 3e 3d 2d 35 30 20  80 20 61 3c 2d 32 35 20  | a>=-50 . a<-25 |
00002690  8c 20 61 24 3d 22 52 37  3b 53 68 2d 22 0d 08 8e  |. a$="R7;Sh-"...|
000026a0  3d 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |=               |
000026b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
000026c0  61 3e 3d 2d 32 35 20 80  20 61 3c 30 20 8c 20 61  |a>=-25 . a<0 . a|
000026d0  24 3d 22 52 37 3b 53 68  30 22 0d 08 98 3c 20 20  |$="R7;Sh0"...<  |
000026e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000026f0  20 20 20 20 20 20 20 20  20 20 20 e7 20 61 3e 3d  |           . a>=|
00002700  30 20 80 20 61 3c 32 35  20 8c 20 61 24 3d 22 52  |0 . a<25 . a$="R|
00002710  37 3b 53 68 31 22 0d 08  a2 3d 20 20 20 20 20 20  |7;Sh1"...=      |
00002720  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002730  20 20 20 20 20 20 20 e7  20 61 3e 3d 32 35 20 80  |       . a>=25 .|
00002740  20 61 3c 35 30 20 8c 20  61 24 3d 22 52 37 3b 53  | a<50 . a$="R7;S|
00002750  68 32 22 0d 08 ac 3d 20  20 20 20 20 20 20 20 20  |h2"...=         |
00002760  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002770  20 20 20 20 e7 20 61 3e  3d 35 30 20 80 20 61 3c  |    . a>=50 . a<|
00002780  37 35 20 8c 20 61 24 3d  22 52 37 3b 53 68 33 22  |75 . a$="R7;Sh3"|
00002790  0d 08 b6 3e 20 20 20 20  20 20 20 20 20 20 20 20  |...>            |
000027a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000027b0  20 e7 20 61 3e 3d 37 35  20 80 20 61 3c 31 30 30  | . a>=75 . a<100|
000027c0  20 8c 20 61 24 3d 22 52  37 3b 53 68 34 22 0d 08  | . a$="R7;Sh4"..|
000027d0  c0 3f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.?              |
000027e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
000027f0  20 61 3e 3d 31 30 30 20  80 20 61 3c 31 32 35 20  | a>=100 . a<125 |
00002800  8c 20 61 24 3d 22 52 37  3b 53 68 35 22 0d 08 ca  |. a$="R7;Sh5"...|
00002810  3f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |?               |
00002820  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00002830  61 3e 3d 31 32 35 20 80  20 61 3c 31 35 30 20 8c  |a>=125 . a<150 .|
00002840  20 61 24 3d 22 52 37 3b  53 68 36 22 0d 08 d4 3f  | a$="R7;Sh6"...?|
00002850  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002860  20 20 20 20 20 20 20 20  20 20 20 20 20 e7 20 61  |             . a|
00002870  3e 3d 31 35 30 20 80 20  61 3c 31 37 35 20 8c 20  |>=150 . a<175 . |
00002880  61 24 3d 22 52 37 3b 53  68 37 22 0d 08 de 3f 20  |a$="R7;Sh7"...? |
00002890  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000028a0  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3e  |            . a>|
000028b0  3d 31 37 35 20 80 20 61  3c 32 30 31 20 8c 20 61  |=175 . a<201 . a|
000028c0  24 3d 22 52 37 3b 53 68  38 22 0d 08 e8 48 20 20  |$="R7;Sh8"...H  |
000028d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000028e0  20 20 20 20 20 20 20 20  20 20 20 f2 57 69 6d 70  |           .Wimp|
000028f0  5f 57 72 69 74 65 49 63  6f 6e 56 61 6c 69 64 61  |_WriteIconValida|
00002900  74 69 6f 6e 28 77 69 6e  64 6f 77 25 2c 32 2c 61  |tion(window%,2,a|
00002910  24 29 0d 08 f2 34 20 20  20 20 20 20 20 20 20 20  |$)...4          |
00002920  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002930  20 20 20 61 3d 28 32 35  30 2d 28 61 2b 35 30 29  |   a=(250-(a+50)|
00002940  29 2a 34 30 30 30 0d 08  fc 33 20 20 20 20 20 20  |)*4000...3      |
00002950  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002960  20 20 20 20 20 20 20 e7  20 61 3c 31 30 30 30 20  |       . a<1000 |
00002970  8c 20 61 24 3d c3 28 61  29 0d 09 06 49 20 20 20  |. a$=.(a)...I   |
00002980  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002990  20 20 20 20 20 20 20 20  20 20 e7 20 61 3e 3d 31  |          . a>=1|
000029a0  30 30 30 20 80 20 61 3c  31 30 30 30 30 30 30 20  |000 . a<1000000 |
000029b0  8c 20 61 24 3d c3 28 61  2f 31 30 30 30 29 2b 22  |. a$=.(a/1000)+"|
000029c0  4b 22 0d 09 10 43 20 20  20 20 20 20 20 20 20 20  |K"...C          |
000029d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000029e0  20 20 20 e7 20 61 3e 3d  31 30 30 30 30 30 30 20  |   . a>=1000000 |
000029f0  8c 20 61 24 3d c3 28 61  2f 31 30 30 30 30 30 30  |. a$=.(a/1000000|
00002a00  29 2b 22 4d 22 0d 09 1a  42 20 20 20 20 20 20 20  |)+"M"...B       |
00002a10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002a20  20 20 20 20 20 20 f2 57  69 6d 70 5f 57 72 69 74  |      .Wimp_Writ|
00002a30  65 49 63 6f 6e 54 65 78  74 28 77 69 6e 64 6f 77  |eIconText(window|
00002a40  25 2c 39 2c 61 24 29 0d  09 24 2b 20 20 20 20 20  |%,9,a$)..$+     |
00002a50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002a60  20 20 20 20 20 20 20 20  f2 43 61 6c 63 75 6c 61  |        .Calcula|
00002a70  74 65 0d 09 2e 15 20 20  20 20 20 20 20 20 20 20  |te....          |
00002a80  20 20 20 20 20 20 cb 0d  09 38 06 20 cb 0d 09 42  |      ...8. ...B|
00002a90  06 20 e1 0d 09 4c 06 20  3a 0d 09 56 37 20 dd 20  |. ...L. :..V7 . |
00002aa0  f2 4d 6f 75 73 65 43 6c  69 63 6b 5f 4d 6f 69 73  |.MouseClick_Mois|
00002ab0  74 75 72 65 50 72 6f 62  65 28 77 69 6e 64 6f 77  |tureProbe(window|
00002ac0  25 2c 69 63 6f 6e 25 2c  62 75 74 74 6f 6e 25 29  |%,icon%,button%)|
00002ad0  0d 09 60 0c 20 ea 20 61  25 2c 61 24 0d 09 6a 11  |..`. . a%,a$..j.|
00002ae0  20 c8 8e 20 62 75 74 74  6f 6e 25 20 ca 0d 09 74  | .. button% ...t|
00002af0  3d 20 20 20 20 20 20 c9  20 32 3a 20 f2 57 69 6d  |=      . 2: .Wim|
00002b00  70 5f 53 68 6f 77 4d 65  6e 75 28 74 65 73 74 5f  |p_ShowMenu(test_|
00002b10  6d 65 6e 75 25 2c 21 62  6c 6f 63 6b 25 2d 36 34  |menu%,!block%-64|
00002b20  2c 62 6c 6f 63 6b 25 21  34 29 0d 09 7e 29 20 20  |,block%!4)..~)  |
00002b30  20 20 20 20 20 20 20 20  20 20 20 20 43 75 72 72  |            Curr|
00002b40  65 6e 74 4d 65 6e 75 25  3d 74 65 73 74 5f 6d 65  |entMenu%=test_me|
00002b50  6e 75 25 0d 09 88 1b 20  20 20 20 20 20 c9 20 31  |nu%....      . 1|
00002b60  2c 34 3a 20 c8 8e 20 69  63 6f 6e 25 20 ca 0d 09  |,4: .. icon% ...|
00002b70  92 41 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.A              |
00002b80  20 20 20 20 20 20 20 c9  20 35 3a 20 61 25 3d bb  |       . 5: a%=.|
00002b90  28 a4 57 69 6d 70 5f 52  65 61 64 49 63 6f 6e 54  |(.Wimp_ReadIconT|
00002ba0  65 78 74 28 77 69 6e 64  6f 77 25 2c 34 29 29 0d  |ext(window%,4)).|
00002bb0  09 9c 30 20 20 20 20 20  20 20 20 20 20 20 20 20  |..0             |
00002bc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002bd0  e7 20 61 25 3c 31 30 20  8c 20 61 25 2b 3d 31 0d  |. a%<10 . a%+=1.|
00002be0  09 a6 44 20 20 20 20 20  20 20 20 20 20 20 20 20  |..D             |
00002bf0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002c00  f2 57 69 6d 70 5f 57 72  69 74 65 49 63 6f 6e 54  |.Wimp_WriteIconT|
00002c10  65 78 74 28 77 69 6e 64  6f 77 25 2c 34 2c c3 20  |ext(window%,4,. |
00002c20  61 25 29 0d 09 b0 4f 20  20 20 20 20 20 20 20 20  |a%)...O         |
00002c30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002c40  20 20 20 20 f2 57 69 6d  70 5f 57 72 69 74 65 49  |    .Wimp_WriteI|
00002c50  63 6f 6e 56 61 6c 69 64  61 74 69 6f 6e 28 77 69  |conValidation(wi|
00002c60  6e 64 6f 77 25 2c 32 2c  22 73 77 22 2b c3 20 61  |ndow%,2,"sw"+. a|
00002c70  25 29 0d 09 ba 50 20 20  20 20 20 20 20 20 20 20  |%)...P          |
00002c80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002c90  20 20 20 e7 20 61 25 3d  30 20 8c 20 61 25 3d 31  |   . a%=0 . a%=1|
00002ca0  30 30 30 30 30 30 20 8b  20 61 25 3d 28 36 30 30  |000000 . a%=(600|
00002cb0  2d 28 28 61 25 2d 31 29  2a 35 30 29 29 2a 31 30  |-((a%-1)*50))*10|
00002cc0  30 30 0d 09 c4 35 20 20  20 20 20 20 20 20 20 20  |00...5          |
00002cd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002ce0  20 20 20 e7 20 61 25 3c  31 30 30 30 20 8c 20 61  |   . a%<1000 . a|
00002cf0  24 3d c3 28 61 25 29 0d  09 ce 4c 20 20 20 20 20  |$=.(a%)...L     |
00002d00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002d10  20 20 20 20 20 20 20 20  e7 20 61 25 3e 3d 31 30  |        . a%>=10|
00002d20  30 30 20 80 20 61 25 3c  31 30 30 30 30 30 30 20  |00 . a%<1000000 |
00002d30  8c 20 61 24 3d c3 28 61  25 2f 31 30 30 30 29 2b  |. a$=.(a%/1000)+|
00002d40  22 4b 22 0d 09 d8 45 20  20 20 20 20 20 20 20 20  |"K"...E         |
00002d50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002d60  20 20 20 20 e7 20 61 25  3e 3d 31 30 30 30 30 30  |    . a%>=100000|
00002d70  30 20 8c 20 61 24 3d c3  28 61 25 2f 31 30 30 30  |0 . a$=.(a%/1000|
00002d80  30 30 30 29 2b 22 4d 22  0d 09 e2 42 20 20 20 20  |000)+"M"...B    |
00002d90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002da0  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 57  |         .Wimp_W|
00002db0  72 69 74 65 49 63 6f 6e  54 65 78 74 28 77 69 6e  |riteIconText(win|
00002dc0  64 6f 77 25 2c 37 2c 61  24 29 0d 09 ec 2b 20 20  |dow%,7,a$)...+  |
00002dd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002de0  20 20 20 20 20 20 20 20  20 20 20 f2 43 61 6c 63  |           .Calc|
00002df0  75 6c 61 74 65 0d 09 f6  41 20 20 20 20 20 20 20  |ulate...A       |
00002e00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |              . |
00002e10  36 3a 20 61 25 3d bb 28  a4 57 69 6d 70 5f 52 65  |6: a%=.(.Wimp_Re|
00002e20  61 64 49 63 6f 6e 54 65  78 74 28 77 69 6e 64 6f  |adIconText(windo|
00002e30  77 25 2c 34 29 29 0d 0a  00 2f 20 20 20 20 20 20  |w%,4)).../      |
00002e40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002e50  20 20 20 20 20 20 20 e7  20 61 25 3e 30 20 8c 20  |       . a%>0 . |
00002e60  61 25 2d 3d 31 0d 0a 0a  44 20 20 20 20 20 20 20  |a%-=1...D       |
00002e70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002e80  20 20 20 20 20 20 f2 57  69 6d 70 5f 57 72 69 74  |      .Wimp_Writ|
00002e90  65 49 63 6f 6e 54 65 78  74 28 77 69 6e 64 6f 77  |eIconText(window|
00002ea0  25 2c 34 2c c3 20 61 25  29 0d 0a 14 4f 20 20 20  |%,4,. a%)...O   |
00002eb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002ec0  20 20 20 20 20 20 20 20  20 20 f2 57 69 6d 70 5f  |          .Wimp_|
00002ed0  57 72 69 74 65 49 63 6f  6e 56 61 6c 69 64 61 74  |WriteIconValidat|
00002ee0  69 6f 6e 28 77 69 6e 64  6f 77 25 2c 32 2c 22 73  |ion(window%,2,"s|
00002ef0  77 22 2b c3 20 61 25 29  0d 0a 1e 50 20 20 20 20  |w"+. a%)...P    |
00002f00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002f10  20 20 20 20 20 20 20 20  20 e7 20 61 25 3d 30 20  |         . a%=0 |
00002f20  8c 20 61 25 3d 31 30 30  30 30 30 30 20 8b 20 61  |. a%=1000000 . a|
00002f30  25 3d 28 36 30 30 2d 28  28 61 25 2d 31 29 2a 35  |%=(600-((a%-1)*5|
00002f40  30 29 29 2a 31 30 30 30  0d 0a 28 35 20 20 20 20  |0))*1000..(5    |
00002f50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002f60  20 20 20 20 20 20 20 20  20 e7 20 61 25 3c 31 30  |         . a%<10|
00002f70  30 30 20 8c 20 61 24 3d  c3 28 61 25 29 0d 0a 32  |00 . a$=.(a%)..2|
00002f80  4c 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |L               |
00002f90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00002fa0  61 25 3e 3d 31 30 30 30  20 80 20 61 25 3c 31 30  |a%>=1000 . a%<10|
00002fb0  30 30 30 30 30 20 8c 20  61 24 3d c3 28 61 25 2f  |00000 . a$=.(a%/|
00002fc0  31 30 30 30 29 2b 22 4b  22 0d 0a 3c 45 20 20 20  |1000)+"K"..<E   |
00002fd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002fe0  20 20 20 20 20 20 20 20  20 20 e7 20 61 25 3e 3d  |          . a%>=|
00002ff0  31 30 30 30 30 30 30 20  8c 20 61 24 3d c3 28 61  |1000000 . a$=.(a|
00003000  25 2f 31 30 30 30 30 30  30 29 2b 22 4d 22 0d 0a  |%/1000000)+"M"..|
00003010  46 42 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |FB              |
00003020  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00003030  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 54 65  |Wimp_WriteIconTe|
00003040  78 74 28 77 69 6e 64 6f  77 25 2c 37 2c 61 24 29  |xt(window%,7,a$)|
00003050  0d 0a 50 2b 20 20 20 20  20 20 20 20 20 20 20 20  |..P+            |
00003060  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003070  20 f2 43 61 6c 63 75 6c  61 74 65 0d 0a 5a 15 20  | .Calculate..Z. |
00003080  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 cb  |               .|
00003090  0d 0a 64 06 20 cb 0d 0a  6e 06 20 e1 0d 0a 78 06  |..d. ...n. ...x.|
000030a0  20 3a 0d 0a 82 2e 20 dd  20 f2 4d 6f 75 73 65 43  | :.... . .MouseC|
000030b0  6c 69 63 6b 5f 56 72 65  73 28 77 69 6e 64 6f 77  |lick_Vres(window|
000030c0  25 2c 69 63 6f 6e 25 2c  62 75 74 74 6f 6e 25 29  |%,icon%,button%)|
000030d0  0d 0a 8c 0c 20 ea 20 61  25 2c 61 24 0d 0a 96 11  |.... . a%,a$....|
000030e0  20 c8 8e 20 62 75 74 74  6f 6e 25 20 ca 0d 0a a0  | .. button% ....|
000030f0  3d 20 20 20 20 20 20 c9  20 32 3a 20 f2 57 69 6d  |=      . 2: .Wim|
00003100  70 5f 53 68 6f 77 4d 65  6e 75 28 74 65 73 74 5f  |p_ShowMenu(test_|
00003110  6d 65 6e 75 25 2c 21 62  6c 6f 63 6b 25 2d 36 34  |menu%,!block%-64|
00003120  2c 62 6c 6f 63 6b 25 21  34 29 0d 0a aa 29 20 20  |,block%!4)...)  |
00003130  20 20 20 20 20 20 20 20  20 20 20 20 43 75 72 72  |            Curr|
00003140  65 6e 74 4d 65 6e 75 25  3d 74 65 73 74 5f 6d 65  |entMenu%=test_me|
00003150  6e 75 25 0d 0a b4 1b 20  20 20 20 20 20 c9 20 31  |nu%....      . 1|
00003160  2c 34 3a 20 c8 8e 20 69  63 6f 6e 25 20 ca 0d 0a  |,4: .. icon% ...|
00003170  be 41 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.A              |
00003180  20 20 20 20 20 20 20 c9  20 35 3a 20 61 25 3d bb  |       . 5: a%=.|
00003190  28 a4 57 69 6d 70 5f 52  65 61 64 49 63 6f 6e 54  |(.Wimp_ReadIconT|
000031a0  65 78 74 28 77 69 6e 64  6f 77 25 2c 34 29 29 0d  |ext(window%,4)).|
000031b0  0a c8 31 20 20 20 20 20  20 20 20 20 20 20 20 20  |..1             |
000031c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000031d0  e7 20 61 25 3c 32 35 30  20 8c 20 61 25 2b 3d 31  |. a%<250 . a%+=1|
000031e0  0d 0a d2 44 20 20 20 20  20 20 20 20 20 20 20 20  |...D            |
000031f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003200  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00003210  54 65 78 74 28 77 69 6e  64 6f 77 25 2c 34 2c c3  |Text(window%,4,.|
00003220  20 61 25 29 0d 0a dc 2b  20 20 20 20 20 20 20 20  | a%)...+        |
00003230  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003240  20 20 20 20 20 61 25 3d  61 25 2a 34 30 30 30 0d  |     a%=a%*4000.|
00003250  0a e6 35 20 20 20 20 20  20 20 20 20 20 20 20 20  |..5             |
00003260  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003270  e7 20 61 25 3c 31 30 30  30 20 8c 20 61 24 3d c3  |. a%<1000 . a$=.|
00003280  28 61 25 29 0d 0a f0 4c  20 20 20 20 20 20 20 20  |(a%)...L        |
00003290  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000032a0  20 20 20 20 20 e7 20 61  25 3e 3d 31 30 30 30 20  |     . a%>=1000 |
000032b0  80 20 61 25 3c 31 30 30  30 30 30 30 20 8c 20 61  |. a%<1000000 . a|
000032c0  24 3d c3 28 61 25 2f 31  30 30 30 29 2b 22 4b 22  |$=.(a%/1000)+"K"|
000032d0  0d 0a fa 45 20 20 20 20  20 20 20 20 20 20 20 20  |...E            |
000032e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000032f0  20 e7 20 61 25 3e 3d 31  30 30 30 30 30 30 20 8c  | . a%>=1000000 .|
00003300  20 61 24 3d c3 28 61 25  2f 31 30 30 30 30 30 30  | a$=.(a%/1000000|
00003310  29 2b 22 4d 22 0d 0b 04  42 20 20 20 20 20 20 20  |)+"M"...B       |
00003320  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003330  20 20 20 20 20 20 f2 57  69 6d 70 5f 57 72 69 74  |      .Wimp_Writ|
00003340  65 49 63 6f 6e 54 65 78  74 28 77 69 6e 64 6f 77  |eIconText(window|
00003350  25 2c 39 2c 61 24 29 0d  0b 0e 2b 20 20 20 20 20  |%,9,a$)...+     |
00003360  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003370  20 20 20 20 20 20 20 20  f2 43 61 6c 63 75 6c 61  |        .Calcula|
00003380  74 65 0d 0b 18 41 20 20  20 20 20 20 20 20 20 20  |te...A          |
00003390  20 20 20 20 20 20 20 20  20 20 20 c9 20 36 3a 20  |           . 6: |
000033a0  61 25 3d bb 28 a4 57 69  6d 70 5f 52 65 61 64 49  |a%=.(.Wimp_ReadI|
000033b0  63 6f 6e 54 65 78 74 28  77 69 6e 64 6f 77 25 2c  |conText(window%,|
000033c0  34 29 29 0d 0b 22 2f 20  20 20 20 20 20 20 20 20  |4)).."/         |
000033d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000033e0  20 20 20 20 e7 20 61 25  3e 30 20 8c 20 61 25 2d  |    . a%>0 . a%-|
000033f0  3d 31 0d 0b 2c 44 20 20  20 20 20 20 20 20 20 20  |=1..,D          |
00003400  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003410  20 20 20 f2 57 69 6d 70  5f 57 72 69 74 65 49 63  |   .Wimp_WriteIc|
00003420  6f 6e 54 65 78 74 28 77  69 6e 64 6f 77 25 2c 34  |onText(window%,4|
00003430  2c c3 20 61 25 29 0d 0b  36 2b 20 20 20 20 20 20  |,. a%)..6+      |
00003440  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003450  20 20 20 20 20 20 20 61  25 3d 61 25 2a 34 30 30  |       a%=a%*400|
00003460  30 0d 0b 40 35 20 20 20  20 20 20 20 20 20 20 20  |0..@5           |
00003470  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003480  20 20 e7 20 61 25 3c 31  30 30 30 20 8c 20 61 24  |  . a%<1000 . a$|
00003490  3d c3 28 61 25 29 0d 0b  4a 4c 20 20 20 20 20 20  |=.(a%)..JL      |
000034a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000034b0  20 20 20 20 20 20 20 e7  20 61 25 3e 3d 31 30 30  |       . a%>=100|
000034c0  30 20 80 20 61 25 3c 31  30 30 30 30 30 30 20 8c  |0 . a%<1000000 .|
000034d0  20 61 24 3d c3 28 61 25  2f 31 30 30 30 29 2b 22  | a$=.(a%/1000)+"|
000034e0  4b 22 0d 0b 54 45 20 20  20 20 20 20 20 20 20 20  |K"..TE          |
000034f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003500  20 20 20 e7 20 61 25 3e  3d 31 30 30 30 30 30 30  |   . a%>=1000000|
00003510  20 8c 20 61 24 3d c3 28  61 25 2f 31 30 30 30 30  | . a$=.(a%/10000|
00003520  30 30 29 2b 22 4d 22 0d  0b 5e 42 20 20 20 20 20  |00)+"M"..^B     |
00003530  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003540  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 57 72  |        .Wimp_Wr|
00003550  69 74 65 49 63 6f 6e 54  65 78 74 28 77 69 6e 64  |iteIconText(wind|
00003560  6f 77 25 2c 39 2c 61 24  29 0d 0b 68 2b 20 20 20  |ow%,9,a$)..h+   |
00003570  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003580  20 20 20 20 20 20 20 20  20 20 f2 43 61 6c 63 75  |          .Calcu|
00003590  6c 61 74 65 0d 0b 72 15  20 20 20 20 20 20 20 20  |late..r.        |
000035a0  20 20 20 20 20 20 20 20  cb 0d 0b 7c 06 20 cb 0d  |        ...|. ..|
000035b0  0b 86 06 20 e1 0d 0b 90  06 20 3a 0d 0b 9a 2d 20  |... ..... :...- |
000035c0  dd 20 f2 4d 6f 75 73 65  43 6c 69 63 6b 5f 4c 44  |. .MouseClick_LD|
000035d0  52 28 77 69 6e 64 6f 77  25 2c 69 63 6f 6e 25 2c  |R(window%,icon%,|
000035e0  62 75 74 74 6f 6e 25 29  0d 0b a4 15 20 ea 20 61  |button%).... . a|
000035f0  2c 61 24 2c 7a 7a 24 2c  7a 24 2c 7a 25 0d 0b ae  |,a$,zz$,z$,z%...|
00003600  11 20 c8 8e 20 62 75 74  74 6f 6e 25 20 ca 0d 0b  |. .. button% ...|
00003610  b8 3d 20 20 20 20 20 20  c9 20 32 3a 20 f2 57 69  |.=      . 2: .Wi|
00003620  6d 70 5f 53 68 6f 77 4d  65 6e 75 28 74 65 73 74  |mp_ShowMenu(test|
00003630  5f 6d 65 6e 75 25 2c 21  62 6c 6f 63 6b 25 2d 36  |_menu%,!block%-6|
00003640  34 2c 62 6c 6f 63 6b 25  21 34 29 0d 0b c2 29 20  |4,block%!4)...) |
00003650  20 20 20 20 20 20 20 20  20 20 20 20 20 43 75 72  |             Cur|
00003660  72 65 6e 74 4d 65 6e 75  25 3d 74 65 73 74 5f 6d  |rentMenu%=test_m|
00003670  65 6e 75 25 0d 0b cc 33  20 20 20 20 20 20 c9 20  |enu%...3      . |
00003680  31 2c 34 3a 20 61 3d bb  28 a4 57 69 6d 70 5f 52  |1,4: a=.(.Wimp_R|
00003690  65 61 64 49 63 6f 6e 54  65 78 74 28 77 69 6e 64  |eadIconText(wind|
000036a0  6f 77 25 2c 34 29 29 0d  0b d6 23 20 20 20 20 20  |ow%,4))...#     |
000036b0  20 20 20 20 20 20 20 20  20 20 20 e7 20 61 3e 31  |           . a>1|
000036c0  30 30 20 8c 20 61 3d 31  30 30 0d 0b e0 1f 20 20  |00 . a=100....  |
000036d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
000036e0  61 3c 30 20 8c 20 61 3d  30 0d 0b ea 1b 20 20 20  |a<0 . a=0....   |
000036f0  20 20 20 20 20 20 20 20  20 20 20 20 20 7a 7a 24  |             zz$|
00003700  3d c3 20 61 0d 0b f4 3d  20 20 20 20 20 20 20 20  |=. a...=        |
00003710  20 20 20 20 20 20 20 20  e7 20 a7 7a 7a 24 2c 22  |        . .zz$,"|
00003720  2e 22 29 3d 30 20 8c 20  7a 25 3d a9 20 7a 7a 24  |.")=0 . z%=. zz$|
00003730  20 8b 20 7a 25 3d a7 7a  7a 24 2c 22 2e 22 29 2b  | . z%=.zz$,".")+|
00003740  31 0d 0b fe 1f 20 20 20  20 20 20 20 20 20 20 20  |1....           |
00003750  20 20 20 20 20 7a 24 3d  c0 7a 7a 24 2c 7a 25 29  |     z$=.zz$,z%)|
00003760  0d 0c 08 3b 20 20 20 20  20 20 20 20 20 20 20 20  |...;            |
00003770  20 20 20 20 e7 20 a7 7a  24 2c 22 2e 22 29 3c 3e  |    . .z$,".")<>|
00003780  30 20 80 20 c2 7a 24 29  3c 3e 22 35 22 20 8c 20  |0 . .z$)<>"5" . |
00003790  7a 24 3d c0 7a 24 29 2b  22 35 22 0d 0c 12 1e 20  |z$=.z$)+"5".... |
000037a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 c8  |               .|
000037b0  8e 20 69 63 6f 6e 25 20  ca 0d 0c 1c 25 20 20 20  |. icon% ....%   |
000037c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000037d0  20 20 c9 20 35 3a 20 61  3d bb 28 7a 24 29 0d 0c  |  . 5: a=.(z$)..|
000037e0  26 31 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |&1              |
000037f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
00003800  20 61 3c 31 30 30 20 8c  20 61 2b 3d 30 2e 35 0d  | a<100 . a+=0.5.|
00003810  0c 30 43 20 20 20 20 20  20 20 20 20 20 20 20 20  |.0C             |
00003820  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003830  f2 57 69 6d 70 5f 57 72  69 74 65 49 63 6f 6e 54  |.Wimp_WriteIconT|
00003840  65 78 74 28 77 69 6e 64  6f 77 25 2c 34 2c c3 20  |ext(window%,4,. |
00003850  61 29 0d 0c 3a 3d 20 20  20 20 20 20 20 20 20 20  |a)..:=          |
00003860  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003870  20 20 20 e7 20 61 3e 3d  30 20 80 20 61 3c 32 30  |   . a>=0 . a<20|
00003880  20 8c 20 61 24 3d 22 53  62 75 6c 62 30 30 22 0d  | . a$="Sbulb00".|
00003890  0c 44 3e 20 20 20 20 20  20 20 20 20 20 20 20 20  |.D>             |
000038a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000038b0  e7 20 61 3e 3d 32 30 20  80 20 61 3c 34 30 20 8c  |. a>=20 . a<40 .|
000038c0  20 61 24 3d 22 53 62 75  6c 62 32 30 22 0d 0c 4e  | a$="Sbulb20"..N|
000038d0  3e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |>               |
000038e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
000038f0  61 3e 3d 34 30 20 80 20  61 3c 36 30 20 8c 20 61  |a>=40 . a<60 . a|
00003900  24 3d 22 53 62 75 6c 62  34 30 22 0d 0c 58 3e 20  |$="Sbulb40"..X> |
00003910  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003920  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3e  |            . a>|
00003930  3d 36 30 20 80 20 61 3c  38 30 20 8c 20 61 24 3d  |=60 . a<80 . a$=|
00003940  22 53 62 75 6c 62 36 30  22 0d 0c 62 3f 20 20 20  |"Sbulb60"..b?   |
00003950  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003960  20 20 20 20 20 20 20 20  20 20 e7 20 61 3e 3d 38  |          . a>=8|
00003970  30 20 80 20 61 3c 31 30  30 20 8c 20 61 24 3d 22  |0 . a<100 . a$="|
00003980  53 62 75 6c 62 38 30 22  0d 0c 6c 38 20 20 20 20  |Sbulb80"..l8    |
00003990  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000039a0  20 20 20 20 20 20 20 20  20 e7 20 61 3d 31 30 30  |         . a=100|
000039b0  20 8c 20 61 24 3d 22 53  62 75 6c 62 31 30 30 22  | . a$="Sbulb100"|
000039c0  0d 0c 76 48 20 20 20 20  20 20 20 20 20 20 20 20  |..vH            |
000039d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000039e0  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
000039f0  56 61 6c 69 64 61 74 69  6f 6e 28 77 69 6e 64 6f  |Validation(windo|
00003a00  77 25 2c 32 2c 61 24 29  0d 0c 80 30 20 20 20 20  |w%,2,a$)...0    |
00003a10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003a20  20 20 20 20 20 20 20 20  20 61 3d 28 31 30 30 2d  |         a=(100-|
00003a30  61 29 2a 31 30 30 30 30  0d 0c 8a 33 20 20 20 20  |a)*10000...3    |
00003a40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003a50  20 20 20 20 20 20 20 20  20 e7 20 61 3c 31 30 30  |         . a<100|
00003a60  30 20 8c 20 61 24 3d c3  28 61 29 0d 0c 94 49 20  |0 . a$=.(a)...I |
00003a70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003a80  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3e  |            . a>|
00003a90  3d 31 30 30 30 20 80 20  61 3c 31 30 30 30 30 30  |=1000 . a<100000|
00003aa0  30 20 8c 20 61 24 3d c3  28 61 2f 31 30 30 30 29  |0 . a$=.(a/1000)|
00003ab0  2b 22 4b 22 0d 0c 9e 43  20 20 20 20 20 20 20 20  |+"K"...C        |
00003ac0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003ad0  20 20 20 20 20 e7 20 61  3e 3d 31 30 30 30 30 30  |     . a>=100000|
00003ae0  30 20 8c 20 61 24 3d c3  28 61 2f 31 30 30 30 30  |0 . a$=.(a/10000|
00003af0  30 30 29 2b 22 4d 22 0d  0c a8 42 20 20 20 20 20  |00)+"M"...B     |
00003b00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003b10  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 57 72  |        .Wimp_Wr|
00003b20  69 74 65 49 63 6f 6e 54  65 78 74 28 77 69 6e 64  |iteIconText(wind|
00003b30  6f 77 25 2c 39 2c 61 24  29 0d 0c b2 2b 20 20 20  |ow%,9,a$)...+   |
00003b40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003b50  20 20 20 20 20 20 20 20  20 20 f2 43 61 6c 63 75  |          .Calcu|
00003b60  6c 61 74 65 0d 0c bc 25  20 20 20 20 20 20 20 20  |late...%        |
00003b70  20 20 20 20 20 20 20 20  20 20 20 20 20 c9 20 36  |             . 6|
00003b80  3a 20 61 3d bb 28 7a 24  29 0d 0c c6 2f 20 20 20  |: a=.(z$).../   |
00003b90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003ba0  20 20 20 20 20 20 20 20  20 20 e7 20 61 3e 30 20  |          . a>0 |
00003bb0  8c 20 61 2d 3d 30 2e 35  0d 0c d0 43 20 20 20 20  |. a-=0.5...C    |
00003bc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003bd0  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 57  |         .Wimp_W|
00003be0  72 69 74 65 49 63 6f 6e  54 65 78 74 28 77 69 6e  |riteIconText(win|
00003bf0  64 6f 77 25 2c 34 2c c3  20 61 29 0d 0c da 3d 20  |dow%,4,. a)...= |
00003c00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003c10  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3e  |            . a>|
00003c20  3d 30 20 80 20 61 3c 32  30 20 8c 20 61 24 3d 22  |=0 . a<20 . a$="|
00003c30  53 62 75 6c 62 30 30 22  0d 0c e4 3e 20 20 20 20  |Sbulb00"...>    |
00003c40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003c50  20 20 20 20 20 20 20 20  20 e7 20 61 3e 3d 32 30  |         . a>=20|
00003c60  20 80 20 61 3c 34 30 20  8c 20 61 24 3d 22 53 62  | . a<40 . a$="Sb|
00003c70  75 6c 62 32 30 22 0d 0c  ee 3e 20 20 20 20 20 20  |ulb20"...>      |
00003c80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003c90  20 20 20 20 20 20 20 e7  20 61 3e 3d 34 30 20 80  |       . a>=40 .|
00003ca0  20 61 3c 36 30 20 8c 20  61 24 3d 22 53 62 75 6c  | a<60 . a$="Sbul|
00003cb0  62 34 30 22 0d 0c f8 3e  20 20 20 20 20 20 20 20  |b40"...>        |
00003cc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003cd0  20 20 20 20 20 e7 20 61  3e 3d 36 30 20 80 20 61  |     . a>=60 . a|
00003ce0  3c 38 30 20 8c 20 61 24  3d 22 53 62 75 6c 62 36  |<80 . a$="Sbulb6|
00003cf0  30 22 0d 0d 02 3f 20 20  20 20 20 20 20 20 20 20  |0"...?          |
00003d00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003d10  20 20 20 e7 20 61 3e 3d  38 30 20 80 20 61 3c 31  |   . a>=80 . a<1|
00003d20  30 30 20 8c 20 61 24 3d  22 53 62 75 6c 62 38 30  |00 . a$="Sbulb80|
00003d30  22 0d 0d 0c 38 20 20 20  20 20 20 20 20 20 20 20  |"...8           |
00003d40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003d50  20 20 e7 20 61 3d 31 30  30 20 8c 20 61 24 3d 22  |  . a=100 . a$="|
00003d60  53 62 75 6c 62 31 30 30  22 0d 0d 16 48 20 20 20  |Sbulb100"...H   |
00003d70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003d80  20 20 20 20 20 20 20 20  20 20 f2 57 69 6d 70 5f  |          .Wimp_|
00003d90  57 72 69 74 65 49 63 6f  6e 56 61 6c 69 64 61 74  |WriteIconValidat|
00003da0  69 6f 6e 28 77 69 6e 64  6f 77 25 2c 32 2c 61 24  |ion(window%,2,a$|
00003db0  29 0d 0d 20 30 20 20 20  20 20 20 20 20 20 20 20  |).. 0           |
00003dc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003dd0  20 20 61 3d 28 31 30 30  2d 61 29 2a 31 30 30 30  |  a=(100-a)*1000|
00003de0  30 0d 0d 2a 33 20 20 20  20 20 20 20 20 20 20 20  |0..*3           |
00003df0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003e00  20 20 e7 20 61 3c 31 30  30 30 20 8c 20 61 24 3d  |  . a<1000 . a$=|
00003e10  c3 28 61 29 0d 0d 34 49  20 20 20 20 20 20 20 20  |.(a)..4I        |
00003e20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003e30  20 20 20 20 20 e7 20 61  3e 3d 31 30 30 30 20 80  |     . a>=1000 .|
00003e40  20 61 3c 31 30 30 30 30  30 30 20 8c 20 61 24 3d  | a<1000000 . a$=|
00003e50  c3 28 61 2f 31 30 30 30  29 2b 22 4b 22 0d 0d 3e  |.(a/1000)+"K"..>|
00003e60  43 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |C               |
00003e70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00003e80  61 3e 3d 31 30 30 30 30  30 30 20 8c 20 61 24 3d  |a>=1000000 . a$=|
00003e90  c3 28 61 2f 31 30 30 30  30 30 30 29 2b 22 4d 22  |.(a/1000000)+"M"|
00003ea0  0d 0d 48 42 20 20 20 20  20 20 20 20 20 20 20 20  |..HB            |
00003eb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003ec0  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00003ed0  54 65 78 74 28 77 69 6e  64 6f 77 25 2c 39 2c 61  |Text(window%,9,a|
00003ee0  24 29 0d 0d 52 2b 20 20  20 20 20 20 20 20 20 20  |$)..R+          |
00003ef0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003f00  20 20 20 f2 43 61 6c 63  75 6c 61 74 65 0d 0d 5c  |   .Calculate..\|
00003f10  15 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00003f20  20 cb 0d 0d 66 06 20 cb  0d 0d 70 06 20 e1 0d 0d  | ...f. ...p. ...|
00003f30  7a 06 20 3a 0d 0d 84 28  20 dd 20 f2 4d 6f 75 73  |z. :...( . .Mous|
00003f40  65 43 6c 69 63 6b 5f 44  65 73 69 67 6e 28 69 63  |eClick_Design(ic|
00003f50  6f 6e 25 2c 62 75 74 74  6f 6e 25 29 0d 0d 8e 11  |on%,button%)....|
00003f60  20 c8 8e 20 62 75 74 74  6f 6e 25 20 ca 0d 0d 98  | .. button% ....|
00003f70  3f 20 20 20 20 20 20 c9  20 32 3a 20 f2 57 69 6d  |?      . 2: .Wim|
00003f80  70 5f 53 68 6f 77 4d 65  6e 75 28 64 65 73 69 67  |p_ShowMenu(desig|
00003f90  6e 5f 6d 65 6e 75 25 2c  21 62 6c 6f 63 6b 25 2d  |n_menu%,!block%-|
00003fa0  36 34 2c 62 6c 6f 63 6b  25 21 34 29 0d 0d a2 2b  |64,block%!4)...+|
00003fb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 75  |              Cu|
00003fc0  72 72 65 6e 74 4d 65 6e  75 25 3d 64 65 73 69 67  |rrentMenu%=desig|
00003fd0  6e 5f 6d 65 6e 75 25 0d  0d ac 06 20 cb 0d 0d b6  |n_menu%.... ....|
00003fe0  06 20 e1 0d 0d c0 06 20  3a 0d 0d ca 26 20 dd 20  |. ..... :...& . |
00003ff0  f2 4d 6f 75 73 65 43 6c  69 63 6b 5f 54 65 73 74  |.MouseClick_Test|
00004000  28 69 63 6f 6e 25 2c 62  75 74 74 6f 6e 25 29 0d  |(icon%,button%).|
00004010  0d d4 11 20 c8 8e 20 62  75 74 74 6f 6e 25 20 ca  |... .. button% .|
00004020  0d 0d de 3d 20 20 20 20  20 20 c9 20 32 3a 20 f2  |...=      . 2: .|
00004030  57 69 6d 70 5f 53 68 6f  77 4d 65 6e 75 28 74 65  |Wimp_ShowMenu(te|
00004040  73 74 5f 6d 65 6e 75 25  2c 21 62 6c 6f 63 6b 25  |st_menu%,!block%|
00004050  2d 36 34 2c 62 6c 6f 63  6b 25 21 34 29 0d 0d e8  |-64,block%!4)...|
00004060  29 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |)              C|
00004070  75 72 72 65 6e 74 4d 65  6e 75 25 3d 74 65 73 74  |urrentMenu%=test|
00004080  5f 6d 65 6e 75 25 0d 0d  f2 1b 20 20 20 20 20 20  |_menu%....      |
00004090  c9 20 31 2c 34 3a 20 c8  8e 20 69 63 6f 6e 25 20  |. 1,4: .. icon% |
000040a0  ca 0d 0d fc 15 20 20 20  20 20 20 20 20 20 20 20  |.....           |
000040b0  20 20 20 20 20 cb 0d 0e  06 06 20 cb 0d 0e 10 06  |     ..... .....|
000040c0  20 e1 0d 0e 1a 06 20 3a  0d 0e 24 29 20 dd 20 f2  | ..... :..$) . .|
000040d0  4d 6f 75 73 65 43 6c 69  63 6b 5f 49 63 6f 6e 42  |MouseClick_IconB|
000040e0  61 72 28 69 63 6f 6e 25  2c 62 75 74 74 6f 6e 25  |ar(icon%,button%|
000040f0  29 0d 0e 2e 11 20 c8 8e  20 62 75 74 74 6f 6e 25  |).... .. button%|
00004100  20 ca 0d 0e 38 46 20 20  20 20 20 20 c9 20 31 2c  | ...8F      . 1,|
00004110  34 3a 20 e7 20 20 63 75  72 72 65 6e 74 5f 77 69  |4: .  current_wi|
00004120  6e 64 6f 77 25 3d 64 65  73 69 67 6e 25 20 8c 20  |ndow%=design% . |
00004130  f2 55 73 65 72 5f 4f 70  65 6e 44 65 73 69 67 6e  |.User_OpenDesign|
00004140  41 4e 44 54 6f 6f 6c 73  0d 0e 42 70 20 20 20 20  |ANDTools..Bp    |
00004150  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 20 63  |            .  c|
00004160  75 72 72 65 6e 74 5f 77  69 6e 64 6f 77 25 3d 74  |urrent_window%=t|
00004170  65 73 74 25 20 8c 20 f2  55 73 65 72 5f 4f 70 65  |est% . .User_Ope|
00004180  6e 54 65 73 74 41 4e 44  54 6f 6f 6c 73 28 63 75  |nTestANDTools(cu|
00004190  72 72 65 6e 74 5f 74 6f  70 25 2c 63 75 72 72 65  |rrent_top%,curre|
000041a0  6e 74 5f 62 6f 74 74 6f  6d 25 29 20 3a 20 f2 43  |nt_bottom%) : .C|
000041b0  61 6c 63 75 6c 61 74 65  0d 0e 4c 42 20 20 20 20  |alculate..LB    |
000041c0  20 20 c9 20 32 3a 20 f2  57 69 6d 70 5f 53 68 6f  |  . 2: .Wimp_Sho|
000041d0  77 4d 65 6e 75 49 63 6f  6e 42 61 72 28 69 63 6f  |wMenuIconBar(ico|
000041e0  6e 62 61 72 5f 6d 65 6e  75 25 2c 21 62 6c 6f 63  |nbar_menu%,!bloc|
000041f0  6b 25 2d 36 34 2c 33 2c  30 29 0d 0e 56 2c 20 20  |k%-64,3,0)..V,  |
00004200  20 20 20 20 20 20 20 20  20 20 20 20 43 75 72 72  |            Curr|
00004210  65 6e 74 4d 65 6e 75 25  3d 69 63 6f 6e 62 61 72  |entMenu%=iconbar|
00004220  5f 6d 65 6e 75 25 0d 0e  60 06 20 cb 0d 0e 6a 06  |_menu%..`. ...j.|
00004230  20 e1 0d 0e 74 06 20 3a  0d 0e 7e 2a 20 dd 20 f2  | ...t. :..~* . .|
00004240  4d 6f 75 73 65 43 6c 69  63 6b 5f 54 6f 6f 6c 73  |MouseClick_Tools|
00004250  42 61 72 28 69 63 6f 6e  25 2c 62 75 74 74 6f 6e  |Bar(icon%,button|
00004260  25 29 0d 0e 88 11 20 c8  8e 20 62 75 74 74 6f 6e  |%).... .. button|
00004270  25 20 ca 0d 0e 92 1e 20  20 20 20 20 20 c9 20 31  |% .....      . 1|
00004280  36 2c 36 34 3a 20 e7 20  69 63 6f 6e 25 3c 36 20  |6,64: . icon%<6 |
00004290  8c 0d 0e 9c 32 20 20 20  20 20 20 20 20 20 20 20  |....2           |
000042a0  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 44 72 61  |       .Wimp_Dra|
000042b0  67 42 6f 78 28 74 6f 6f  6c 73 31 25 2c 69 63 6f  |gBox(tools1%,ico|
000042c0  6e 25 29 0d 0e a6 17 20  20 20 20 20 20 20 20 20  |n%)....         |
000042d0  20 20 20 20 20 20 20 20  20 cc 0d 0e b0 34 20 20  |         ....4  |
000042e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000042f0  f2 57 69 6d 70 5f 44 72  61 67 42 6f 78 28 74 6f  |.Wimp_DragBox(to|
00004300  6f 6c 73 32 25 2c 69 63  6f 6e 25 2d 36 29 0d 0e  |ols2%,icon%-6)..|
00004310  ba 17 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00004320  20 20 20 20 cd 0d 0e c4  2a 20 20 20 20 20 20 20  |    ....*       |
00004330  20 20 20 20 20 20 20 20  20 20 20 63 75 72 72 65  |           curre|
00004340  6e 74 64 72 61 67 25 3d  74 6f 6f 6c 73 31 25 0d  |ntdrag%=tools1%.|
00004350  0e ce 2d 20 20 20 20 20  20 20 20 20 20 20 20 20  |..-             |
00004360  20 20 20 20 20 63 75 72  72 65 6e 74 54 4f 4f 4c  |     currentTOOL|
00004370  53 64 72 61 67 25 3d 69  63 6f 6e 25 0d 0e d8 06  |Sdrag%=icon%....|
00004380  20 cb 0d 0e e2 06 20 e1  0d 0e ec 06 20 3a 0d 0e  | ..... ..... :..|
00004390  f6 14 20 dd 20 f2 50 6f  6c 6c 5f 45 6e 64 44 72  |.. . .Poll_EndDr|
000043a0  61 67 0d 0f 00 12 20 ea  20 77 69 6e 64 25 2c 69  |ag.... . wind%,i|
000043b0  63 6f 6e 25 0d 0f 0a 1d  20 e7 20 63 75 72 72 65  |con%.... . curre|
000043c0  6e 74 64 72 61 67 25 3d  74 6f 6f 6c 73 31 25 20  |ntdrag%=tools1% |
000043d0  8c 0d 0f 14 25 20 c8 99  20 22 57 69 6d 70 5f 47  |....% .. "Wimp_G|
000043e0  65 74 50 6f 69 6e 74 65  72 49 6e 66 6f 22 2c 2c  |etPointerInfo",,|
000043f0  62 6c 6f 63 6b 25 0d 0f  1e 26 20 77 69 6e 64 25  |block%...& wind%|
00004400  3d 62 6c 6f 63 6b 25 21  31 32 20 3a 20 69 63 6f  |=block%!12 : ico|
00004410  6e 25 3d 62 6c 6f 63 6b  25 21 31 36 0d 0f 28 4d  |n%=block%!16..(M|
00004420  20 e7 20 77 69 6e 64 25  3d 64 65 73 69 67 6e 25  | . wind%=design%|
00004430  20 80 20 28 69 63 6f 6e  25 3d 33 20 84 20 69 63  | . (icon%=3 . ic|
00004440  6f 6e 25 3d 34 20 84 20  69 63 6f 6e 25 3d 31 31  |on%=4 . icon%=11|
00004450  20 84 20 69 63 6f 6e 25  3d 31 32 20 84 20 69 63  | . icon%=12 . ic|
00004460  6f 6e 25 3d 31 33 29 20  8c 0d 0f 32 25 20 20 20  |on%=13) ...2%   |
00004470  20 20 20 20 20 20 20 20  c8 8e 20 63 75 72 72 65  |        .. curre|
00004480  6e 74 54 4f 4f 4c 53 64  72 61 67 25 20 ca 0d 0f  |ntTOOLSdrag% ...|
00004490  3c 39 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |<9              |
000044a0  20 20 c9 20 30 3a 20 e7  20 69 63 6f 6e 25 3d 31  |  . 0: . icon%=1|
000044b0  32 20 84 20 69 63 6f 6e  25 3d 31 33 20 8c 20 69  |2 . icon%=13 . i|
000044c0  63 6f 6e 25 2d 3d 39 0d  0f 46 31 20 20 20 20 20  |con%-=9..F1     |
000044d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000044e0  20 20 20 e7 20 69 63 6f  6e 25 3d 33 20 84 20 69  |   . icon%=3 . i|
000044f0  63 6f 6e 25 3d 34 20 8c  0d 0f 50 39 20 20 20 20  |con%=4 ...P9    |
00004500  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004510  20 20 20 20 f2 57 69 6d  70 5f 48 61 6c 66 53 69  |    .Wimp_HalfSi|
00004520  7a 65 28 64 65 73 69 67  6e 25 2c 69 63 6f 6e 25  |ze(design%,icon%|
00004530  29 0d 0f 5a 4b 20 20 20  20 20 20 20 20 20 20 20  |)..ZK           |
00004540  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 57 69  |             .Wi|
00004550  6d 70 5f 57 72 69 74 65  49 63 6f 6e 56 61 6c 69  |mp_WriteIconVali|
00004560  64 61 74 69 6f 6e 28 64  65 73 69 67 6e 25 2c 69  |dation(design%,i|
00004570  63 6f 6e 25 2c 22 53 6c  64 72 22 29 0d 0f 64 43  |con%,"Sldr")..dC|
00004580  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004590  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 57 72  |        .Wimp_Wr|
000045a0  69 74 65 49 63 6f 6e 54  65 78 74 28 64 65 73 69  |iteIconText(desi|
000045b0  67 6e 25 2c 39 2b 69 63  6f 6e 25 2c 22 22 29 0d  |gn%,9+icon%,"").|
000045c0  0f 6e 46 20 20 20 20 20  20 20 20 20 20 20 20 20  |.nF             |
000045d0  20 20 20 20 20 20 20 20  20 20 20 f2 57 69 6d 70  |           .Wimp|
000045e0  5f 53 65 74 49 63 6f 6e  42 75 74 74 6f 6e 54 79  |_SetIconButtonTy|
000045f0  70 65 28 64 65 73 69 67  6e 25 2c 39 2b 69 63 6f  |pe(design%,9+ico|
00004600  6e 25 2c 30 29 0d 0f 78  44 20 20 20 20 20 20 20  |n%,0)..xD       |
00004610  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004620  20 e7 20 a4 57 69 6d 70  5f 47 65 74 43 61 72 65  | . .Wimp_GetCare|
00004630  74 50 6f 73 69 74 69 6f  6e 57 69 6e 64 6f 77 3d  |tPositionWindow=|
00004640  64 65 73 69 67 6e 25 20  8c 0d 0f 82 30 20 20 20  |design% ....0   |
00004650  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004660  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 44 69  |        .Wimp_Di|
00004670  73 6f 77 6e 43 61 72 65  74 0d 0f 8c 1d 20 20 20  |sownCaret....   |
00004680  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004690  20 20 20 20 20 cd 0d 0f  96 1d 20 20 20 20 20 20  |     .....      |
000046a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000046b0  20 20 cd 0d 0f a0 39 20  20 20 20 20 20 20 20 20  |  ....9         |
000046c0  20 20 20 20 20 20 20 c9  20 31 3a 20 e7 20 69 63  |       . 1: . ic|
000046d0  6f 6e 25 3d 31 32 20 84  20 69 63 6f 6e 25 3d 31  |on%=12 . icon%=1|
000046e0  33 20 8c 20 69 63 6f 6e  25 2d 3d 39 0d 0f aa 31  |3 . icon%-=9...1|
000046f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004700  20 20 20 20 20 20 20 20  e7 20 69 63 6f 6e 25 3d  |        . icon%=|
00004710  33 20 84 20 69 63 6f 6e  25 3d 34 20 8c 0d 0f b4  |3 . icon%=4 ....|
00004720  39 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |9               |
00004730  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 48  |         .Wimp_H|
00004740  61 6c 66 53 69 7a 65 28  64 65 73 69 67 6e 25 2c  |alfSize(design%,|
00004750  69 63 6f 6e 25 29 0d 0f  be 4c 20 20 20 20 20 20  |icon%)...L      |
00004760  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004770  20 20 f2 57 69 6d 70 5f  57 72 69 74 65 49 63 6f  |  .Wimp_WriteIco|
00004780  6e 56 61 6c 69 64 61 74  69 6f 6e 28 64 65 73 69  |nValidation(desi|
00004790  67 6e 25 2c 69 63 6f 6e  25 2c 22 53 76 72 65 73  |gn%,icon%,"Svres|
000047a0  22 29 0d 0f c8 43 20 20  20 20 20 20 20 20 20 20  |")...C          |
000047b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
000047c0  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 54 65 78  |imp_WriteIconTex|
000047d0  74 28 64 65 73 69 67 6e  25 2c 39 2b 69 63 6f 6e  |t(design%,9+icon|
000047e0  25 2c 22 22 29 0d 0f d2  46 20 20 20 20 20 20 20  |%,"")...F       |
000047f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004800  20 f2 57 69 6d 70 5f 53  65 74 49 63 6f 6e 42 75  | .Wimp_SetIconBu|
00004810  74 74 6f 6e 54 79 70 65  28 64 65 73 69 67 6e 25  |ttonType(design%|
00004820  2c 39 2b 69 63 6f 6e 25  2c 30 29 0d 0f dc 44 20  |,9+icon%,0)...D |
00004830  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004840  20 20 20 20 20 20 20 e7  20 a4 57 69 6d 70 5f 47  |       . .Wimp_G|
00004850  65 74 43 61 72 65 74 50  6f 73 69 74 69 6f 6e 57  |etCaretPositionW|
00004860  69 6e 64 6f 77 3d 64 65  73 69 67 6e 25 20 8c 0d  |indow=design% ..|
00004870  0f e6 30 20 20 20 20 20  20 20 20 20 20 20 20 20  |..0             |
00004880  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00004890  69 6d 70 5f 44 69 73 6f  77 6e 43 61 72 65 74 0d  |imp_DisownCaret.|
000048a0  0f f0 1d 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
000048b0  20 20 20 20 20 20 20 20  20 20 20 cd 0d 0f fa 1d  |           .....|
000048c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000048d0  20 20 20 20 20 20 20 20  cd 0d 10 04 39 20 20 20  |        ....9   |
000048e0  20 20 20 20 20 20 20 20  20 20 20 20 20 c9 20 32  |             . 2|
000048f0  3a 20 e7 20 69 63 6f 6e  25 3d 31 32 20 84 20 69  |: . icon%=12 . i|
00004900  63 6f 6e 25 3d 31 33 20  8c 20 69 63 6f 6e 25 2d  |con%=13 . icon%-|
00004910  3d 39 0d 10 0e 31 20 20  20 20 20 20 20 20 20 20  |=9...1          |
00004920  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00004930  69 63 6f 6e 25 3d 33 20  84 20 69 63 6f 6e 25 3d  |icon%=3 . icon%=|
00004940  34 20 8c 0d 10 18 39 20  20 20 20 20 20 20 20 20  |4 ....9         |
00004950  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00004960  57 69 6d 70 5f 48 61 6c  66 53 69 7a 65 28 64 65  |Wimp_HalfSize(de|
00004970  73 69 67 6e 25 2c 69 63  6f 6e 25 29 0d 10 22 4b  |sign%,icon%).."K|
00004980  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004990  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 57 72  |        .Wimp_Wr|
000049a0  69 74 65 49 63 6f 6e 56  61 6c 69 64 61 74 69 6f  |iteIconValidatio|
000049b0  6e 28 64 65 73 69 67 6e  25 2c 69 63 6f 6e 25 2c  |n(design%,icon%,|
000049c0  22 53 72 65 73 22 29 0d  10 2c 47 20 20 20 20 20  |"Sres")..,G     |
000049d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000049e0  20 20 20 f2 57 69 6d 70  5f 57 72 69 74 65 49 63  |   .Wimp_WriteIc|
000049f0  6f 6e 54 65 78 74 28 64  65 73 69 67 6e 25 2c 39  |onText(design%,9|
00004a00  2b 69 63 6f 6e 25 2c 22  31 30 30 4b 22 29 0d 10  |+icon%,"100K")..|
00004a10  36 47 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |6G              |
00004a20  20 20 20 20 20 20 20 20  20 20 f2 57 69 6d 70 5f  |          .Wimp_|
00004a30  53 65 74 49 63 6f 6e 42  75 74 74 6f 6e 54 79 70  |SetIconButtonTyp|
00004a40  65 28 64 65 73 69 67 6e  25 2c 39 2b 69 63 6f 6e  |e(design%,9+icon|
00004a50  25 2c 31 35 29 0d 10 40  1d 20 20 20 20 20 20 20  |%,15)..@.       |
00004a60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004a70  20 cd 0d 10 4a 39 20 20  20 20 20 20 20 20 20 20  | ...J9          |
00004a80  20 20 20 20 20 20 c9 20  33 3a 20 e7 20 69 63 6f  |      . 3: . ico|
00004a90  6e 25 3d 31 32 20 84 20  69 63 6f 6e 25 3d 31 33  |n%=12 . icon%=13|
00004aa0  20 8c 20 69 63 6f 6e 25  2d 3d 39 0d 10 54 31 20  | . icon%-=9..T1 |
00004ab0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004ac0  20 20 20 20 20 20 20 e7  20 69 63 6f 6e 25 3d 33  |       . icon%=3|
00004ad0  20 84 20 69 63 6f 6e 25  3d 34 20 8c 0d 10 5e 39  | . icon%=4 ...^9|
00004ae0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004af0  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 48 61  |        .Wimp_Ha|
00004b00  6c 66 53 69 7a 65 28 64  65 73 69 67 6e 25 2c 69  |lfSize(design%,i|
00004b10  63 6f 6e 25 29 0d 10 68  4c 20 20 20 20 20 20 20  |con%)..hL       |
00004b20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004b30  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00004b40  56 61 6c 69 64 61 74 69  6f 6e 28 64 65 73 69 67  |Validation(desig|
00004b50  6e 25 2c 69 63 6f 6e 25  2c 22 53 74 68 65 72 22  |n%,icon%,"Sther"|
00004b60  29 0d 10 72 43 20 20 20  20 20 20 20 20 20 20 20  |)..rC           |
00004b70  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 57 69  |             .Wi|
00004b80  6d 70 5f 57 72 69 74 65  49 63 6f 6e 54 65 78 74  |mp_WriteIconText|
00004b90  28 64 65 73 69 67 6e 25  2c 39 2b 69 63 6f 6e 25  |(design%,9+icon%|
00004ba0  2c 22 22 29 0d 10 7c 46  20 20 20 20 20 20 20 20  |,"")..|F        |
00004bb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004bc0  f2 57 69 6d 70 5f 53 65  74 49 63 6f 6e 42 75 74  |.Wimp_SetIconBut|
00004bd0  74 6f 6e 54 79 70 65 28  64 65 73 69 67 6e 25 2c  |tonType(design%,|
00004be0  39 2b 69 63 6f 6e 25 2c  30 29 0d 10 86 1d 20 20  |9+icon%,0)....  |
00004bf0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004c00  20 20 20 20 20 20 cd 0d  10 90 39 20 20 20 20 20  |      ....9     |
00004c10  20 20 20 20 20 20 20 20  20 20 20 c9 20 34 3a 20  |           . 4: |
00004c20  e7 20 69 63 6f 6e 25 3d  31 32 20 84 20 69 63 6f  |. icon%=12 . ico|
00004c30  6e 25 3d 31 33 20 8c 20  69 63 6f 6e 25 2d 3d 39  |n%=13 . icon%-=9|
00004c40  0d 10 9a 31 20 20 20 20  20 20 20 20 20 20 20 20  |...1            |
00004c50  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 69 63  |            . ic|
00004c60  6f 6e 25 3d 33 20 84 20  69 63 6f 6e 25 3d 34 20  |on%=3 . icon%=4 |
00004c70  8c 0d 10 a4 39 20 20 20  20 20 20 20 20 20 20 20  |....9           |
00004c80  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 57 69  |             .Wi|
00004c90  6d 70 5f 46 75 6c 6c 53  69 7a 65 28 64 65 73 69  |mp_FullSize(desi|
00004ca0  67 6e 25 2c 69 63 6f 6e  25 29 0d 10 ae 4b 20 20  |gn%,icon%)...K  |
00004cb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004cc0  20 20 20 20 20 20 f2 57  69 6d 70 5f 57 72 69 74  |      .Wimp_Writ|
00004cd0  65 49 63 6f 6e 56 61 6c  69 64 61 74 69 6f 6e 28  |eIconValidation(|
00004ce0  64 65 73 69 67 6e 25 2c  69 63 6f 6e 25 2c 22 53  |design%,icon%,"S|
00004cf0  77 65 74 22 29 0d 10 b8  43 20 20 20 20 20 20 20  |wet")...C       |
00004d00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004d10  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00004d20  54 65 78 74 28 64 65 73  69 67 6e 25 2c 39 2b 69  |Text(design%,9+i|
00004d30  63 6f 6e 25 2c 22 22 29  0d 10 c2 46 20 20 20 20  |con%,"")...F    |
00004d40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004d50  20 20 20 20 f2 57 69 6d  70 5f 53 65 74 49 63 6f  |    .Wimp_SetIco|
00004d60  6e 42 75 74 74 6f 6e 54  79 70 65 28 64 65 73 69  |nButtonType(desi|
00004d70  67 6e 25 2c 39 2b 69 63  6f 6e 25 2c 30 29 0d 10  |gn%,9+icon%,0)..|
00004d80  cc 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00004d90  20 20 20 20 20 20 20 20  20 20 cd 0d 10 d6 39 20  |          ....9 |
00004da0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 c9  |               .|
00004db0  20 35 3a 20 e7 20 69 63  6f 6e 25 3d 31 32 20 84  | 5: . icon%=12 .|
00004dc0  20 69 63 6f 6e 25 3d 31  33 20 8c 20 69 63 6f 6e  | icon%=13 . icon|
00004dd0  25 2d 3d 39 0d 10 e0 31  20 20 20 20 20 20 20 20  |%-=9...1        |
00004de0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004df0  e7 20 69 63 6f 6e 25 3d  33 20 84 20 69 63 6f 6e  |. icon%=3 . icon|
00004e00  25 3d 34 20 8c 0d 10 ea  39 20 20 20 20 20 20 20  |%=4 ....9       |
00004e10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004e20  20 f2 57 69 6d 70 5f 46  75 6c 6c 53 69 7a 65 28  | .Wimp_FullSize(|
00004e30  64 65 73 69 67 6e 25 2c  69 63 6f 6e 25 29 0d 10  |design%,icon%)..|
00004e40  f4 4a 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.J              |
00004e50  20 20 20 20 20 20 20 20  20 20 f2 57 69 6d 70 5f  |          .Wimp_|
00004e60  57 72 69 74 65 49 63 6f  6e 56 61 6c 69 64 61 74  |WriteIconValidat|
00004e70  69 6f 6e 28 64 65 73 69  67 6e 25 2c 69 63 6f 6e  |ion(design%,icon|
00004e80  25 2c 22 53 73 77 22 29  0d 10 fe 43 20 20 20 20  |%,"Ssw")...C    |
00004e90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004ea0  20 20 20 20 f2 57 69 6d  70 5f 57 72 69 74 65 49  |    .Wimp_WriteI|
00004eb0  63 6f 6e 54 65 78 74 28  64 65 73 69 67 6e 25 2c  |conText(design%,|
00004ec0  39 2b 69 63 6f 6e 25 2c  22 22 29 0d 11 08 46 20  |9+icon%,"")...F |
00004ed0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004ee0  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 53 65 74  |       .Wimp_Set|
00004ef0  49 63 6f 6e 42 75 74 74  6f 6e 54 79 70 65 28 64  |IconButtonType(d|
00004f00  65 73 69 67 6e 25 2c 39  2b 69 63 6f 6e 25 2c 30  |esign%,9+icon%,0|
00004f10  29 0d 11 12 1d 20 20 20  20 20 20 20 20 20 20 20  |)....           |
00004f20  20 20 20 20 20 20 20 20  20 20 20 20 20 cd 0d 11  |             ...|
00004f30  1c 25 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.%              |
00004f40  20 20 c9 20 36 3a 20 e7  20 69 63 6f 6e 25 3d 31  |  . 6: . icon%=1|
00004f50  31 20 8c 0d 11 26 4d 20  20 20 20 20 20 20 20 20  |1 ...&M         |
00004f60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00004f70  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 56 61  |Wimp_WriteIconVa|
00004f80  6c 69 64 61 74 69 6f 6e  28 64 65 73 69 67 6e 25  |lidation(design%|
00004f90  2c 69 63 6f 6e 25 2c 22  53 6c 61 6d 70 31 22 29  |,icon%,"Slamp1")|
00004fa0  0d 11 30 1d 20 20 20 20  20 20 20 20 20 20 20 20  |..0.            |
00004fb0  20 20 20 20 20 20 20 20  20 20 20 20 cd 0d 11 3a  |            ...:|
00004fc0  25 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |%               |
00004fd0  20 c9 20 37 3a 20 e7 20  69 63 6f 6e 25 3d 31 31  | . 7: . icon%=11|
00004fe0  20 8c 0d 11 44 4c 20 20  20 20 20 20 20 20 20 20  | ...DL          |
00004ff0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00005000  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 56 61 6c  |imp_WriteIconVal|
00005010  69 64 61 74 69 6f 6e 28  64 65 73 69 67 6e 25 2c  |idation(design%,|
00005020  69 63 6f 6e 25 2c 22 53  6c 65 64 31 22 29 0d 11  |icon%,"Sled1")..|
00005030  4e 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |N.              |
00005040  20 20 20 20 20 20 20 20  20 20 cd 0d 11 58 25 20  |          ...X% |
00005050  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 c9  |               .|
00005060  20 38 3a 20 e7 20 69 63  6f 6e 25 3d 31 31 20 8c  | 8: . icon%=11 .|
00005070  0d 11 62 4d 20 20 20 20  20 20 20 20 20 20 20 20  |..bM            |
00005080  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
00005090  70 5f 57 72 69 74 65 49  63 6f 6e 56 61 6c 69 64  |p_WriteIconValid|
000050a0  61 74 69 6f 6e 28 64 65  73 69 67 6e 25 2c 69 63  |ation(design%,ic|
000050b0  6f 6e 25 2c 22 53 62 75  7a 7a 31 22 29 0d 11 6c  |on%,"Sbuzz1")..l|
000050c0  1d 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000050d0  20 20 20 20 20 20 20 20  20 cd 0d 11 76 10 20 20  |         ...v.  |
000050e0  20 20 20 20 20 20 20 20  20 cb 0d 11 80 06 20 cd  |         ..... .|
000050f0  0d 11 8a 06 20 cd 0d 11  94 06 20 e1 0d 11 9e 06  |.... ..... .....|
00005100  20 3a 0d 11 a8 29 20 dd  20 f2 50 6f 6c 6c 5f 4b  | :...) . .Poll_K|
00005110  65 79 50 72 65 73 73 28  77 69 6e 64 6f 77 25 2c  |eyPress(window%,|
00005120  69 63 6f 6e 25 2c 6b 65  79 25 29 0d 11 b2 18 20  |icon%,key%).... |
00005130  ea 20 61 25 2c 61 24 2c  61 2c 7a 25 2c 7a 24 2c  |. a%,a$,a,z%,z$,|
00005140  7a 7a 24 0d 11 bc 11 20  c8 8e 20 77 69 6e 64 6f  |zz$.... .. windo|
00005150  77 25 20 ca 0d 11 c6 26  20 20 20 20 20 20 c9 20  |w% ....&      . |
00005160  76 72 65 73 31 25 2c 76  72 65 73 32 25 3a 20 e7  |vres1%,vres2%: .|
00005170  20 6b 65 79 25 3d 31 33  20 8c 0d 11 d0 44 20 20  | key%=13 ....D  |
00005180  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005190  20 20 20 20 20 20 20 20  20 20 20 61 25 3d bb 28  |           a%=.(|
000051a0  a4 57 69 6d 70 5f 52 65  61 64 49 63 6f 6e 54 65  |.Wimp_ReadIconTe|
000051b0  78 74 28 77 69 6e 64 6f  77 25 2c 34 29 29 0d 11  |xt(window%,4))..|
000051c0  da 2e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000051d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
000051e0  20 61 25 3c 30 20 8c 20  61 25 3d 30 0d 11 e4 32  | a%<0 . a%=0...2|
000051f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005200  20 20 20 20 20 20 20 20  20 20 20 20 20 e7 20 61  |             . a|
00005210  25 3e 32 35 30 20 8c 20  61 25 3d 32 35 30 0d 11  |%>250 . a%=250..|
00005220  ee 44 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.D              |
00005230  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00005240  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 54 65  |Wimp_WriteIconTe|
00005250  78 74 28 77 69 6e 64 6f  77 25 2c 34 2c c3 20 61  |xt(window%,4,. a|
00005260  25 29 0d 11 f8 2b 20 20  20 20 20 20 20 20 20 20  |%)...+          |
00005270  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005280  20 20 20 61 25 3d 61 25  2a 34 30 30 30 0d 12 02  |   a%=a%*4000...|
00005290  35 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |5               |
000052a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
000052b0  61 25 3c 31 30 30 30 20  8c 20 61 24 3d c3 28 61  |a%<1000 . a$=.(a|
000052c0  25 29 0d 12 0c 4c 20 20  20 20 20 20 20 20 20 20  |%)...L          |
000052d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000052e0  20 20 20 e7 20 61 25 3e  3d 31 30 30 30 20 80 20  |   . a%>=1000 . |
000052f0  61 25 3c 31 30 30 30 30  30 30 20 8c 20 61 24 3d  |a%<1000000 . a$=|
00005300  c3 28 61 25 2f 31 30 30  30 29 2b 22 4b 22 0d 12  |.(a%/1000)+"K"..|
00005310  16 45 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.E              |
00005320  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
00005330  20 61 25 3e 3d 31 30 30  30 30 30 30 20 8c 20 61  | a%>=1000000 . a|
00005340  24 3d c3 28 61 25 2f 31  30 30 30 30 30 30 29 2b  |$=.(a%/1000000)+|
00005350  22 4d 22 0d 12 20 42 20  20 20 20 20 20 20 20 20  |"M".. B         |
00005360  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005370  20 20 20 20 f2 57 69 6d  70 5f 57 72 69 74 65 49  |    .Wimp_WriteI|
00005380  63 6f 6e 54 65 78 74 28  77 69 6e 64 6f 77 25 2c  |conText(window%,|
00005390  39 2c 61 24 29 0d 12 2a  2b 20 20 20 20 20 20 20  |9,a$)..*+       |
000053a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000053b0  20 20 20 20 20 20 f2 43  61 6c 63 75 6c 61 74 65  |      .Calculate|
000053c0  0d 12 34 1f 20 20 20 20  20 20 20 20 20 20 20 20  |..4.            |
000053d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 cc 0d  |              ..|
000053e0  12 3e 37 20 20 20 20 20  20 20 20 20 20 20 20 20  |.>7             |
000053f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005400  f2 57 69 6d 70 5f 50 72  6f 63 65 73 73 4b 65 79  |.Wimp_ProcessKey|
00005410  28 6b 65 79 25 29 0d 12  48 1f 20 20 20 20 20 20  |(key%)..H.      |
00005420  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005430  20 20 20 20 cd 0d 12 52  2a 20 20 20 20 20 20 c9  |    ...R*      .|
00005440  20 4d 70 72 6f 62 65 31  25 2c 4d 70 72 6f 62 65  | Mprobe1%,Mprobe|
00005450  32 25 3a 20 e7 20 6b 65  79 25 3d 31 33 20 8c 0d  |2%: . key%=13 ..|
00005460  12 5c 44 20 20 20 20 20  20 20 20 20 20 20 20 20  |.\D             |
00005470  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005480  61 25 3d bb 28 a4 57 69  6d 70 5f 52 65 61 64 49  |a%=.(.Wimp_ReadI|
00005490  63 6f 6e 54 65 78 74 28  77 69 6e 64 6f 77 25 2c  |conText(window%,|
000054a0  34 29 29 0d 12 66 2e 20  20 20 20 20 20 20 20 20  |4))..f.         |
000054b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000054c0  20 20 20 20 e7 20 61 25  3c 30 20 8c 20 61 25 3d  |    . a%<0 . a%=|
000054d0  30 0d 12 70 30 20 20 20  20 20 20 20 20 20 20 20  |0..p0           |
000054e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000054f0  20 20 e7 20 61 25 3e 31  30 20 8c 20 61 25 3d 31  |  . a%>10 . a%=1|
00005500  30 0d 12 7a 44 20 20 20  20 20 20 20 20 20 20 20  |0..zD           |
00005510  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005520  20 20 f2 57 69 6d 70 5f  57 72 69 74 65 49 63 6f  |  .Wimp_WriteIco|
00005530  6e 54 65 78 74 28 77 69  6e 64 6f 77 25 2c 34 2c  |nText(window%,4,|
00005540  c3 20 61 25 29 0d 12 84  4f 20 20 20 20 20 20 20  |. a%)...O       |
00005550  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005560  20 20 20 20 20 20 f2 57  69 6d 70 5f 57 72 69 74  |      .Wimp_Writ|
00005570  65 49 63 6f 6e 56 61 6c  69 64 61 74 69 6f 6e 28  |eIconValidation(|
00005580  77 69 6e 64 6f 77 25 2c  32 2c 22 73 77 22 2b c3  |window%,2,"sw"+.|
00005590  20 61 25 29 0d 12 8e 50  20 20 20 20 20 20 20 20  | a%)...P        |
000055a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000055b0  20 20 20 20 20 e7 20 61  25 3d 30 20 8c 20 61 25  |     . a%=0 . a%|
000055c0  3d 31 30 30 30 30 30 30  20 8b 20 61 25 3d 28 36  |=1000000 . a%=(6|
000055d0  30 30 2d 28 28 61 25 2d  31 29 2a 35 30 29 29 2a  |00-((a%-1)*50))*|
000055e0  31 30 30 30 0d 12 98 35  20 20 20 20 20 20 20 20  |1000...5        |
000055f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005600  20 20 20 20 20 e7 20 61  25 3c 31 30 30 30 20 8c  |     . a%<1000 .|
00005610  20 61 24 3d c3 28 61 25  29 0d 12 a2 4c 20 20 20  | a$=.(a%)...L   |
00005620  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005630  20 20 20 20 20 20 20 20  20 20 e7 20 61 25 3e 3d  |          . a%>=|
00005640  31 30 30 30 20 80 20 61  25 3c 31 30 30 30 30 30  |1000 . a%<100000|
00005650  30 20 8c 20 61 24 3d c3  28 61 25 2f 31 30 30 30  |0 . a$=.(a%/1000|
00005660  29 2b 22 4b 22 0d 12 ac  45 20 20 20 20 20 20 20  |)+"K"...E       |
00005670  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005680  20 20 20 20 20 20 e7 20  61 25 3e 3d 31 30 30 30  |      . a%>=1000|
00005690  30 30 30 20 8c 20 61 24  3d c3 28 61 25 2f 31 30  |000 . a$=.(a%/10|
000056a0  30 30 30 30 30 29 2b 22  4d 22 0d 12 b6 42 20 20  |00000)+"M"...B  |
000056b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000056c0  20 20 20 20 20 20 20 20  20 20 20 f2 57 69 6d 70  |           .Wimp|
000056d0  5f 57 72 69 74 65 49 63  6f 6e 54 65 78 74 28 77  |_WriteIconText(w|
000056e0  69 6e 64 6f 77 25 2c 37  2c 61 24 29 0d 12 c0 2b  |indow%,7,a$)...+|
000056f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005700  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 43 61  |             .Ca|
00005710  6c 63 75 6c 61 74 65 0d  12 ca 1f 20 20 20 20 20  |lculate....     |
00005720  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005730  20 20 20 20 20 cc 0d 12  d4 37 20 20 20 20 20 20  |     ....7      |
00005740  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005750  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 50 72 6f  |       .Wimp_Pro|
00005760  63 65 73 73 4b 65 79 28  6b 65 79 25 29 0d 12 de  |cessKey(key%)...|
00005770  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00005780  20 20 20 20 20 20 20 20  20 20 20 cd 0d 12 e8 24  |           ....$|
00005790  20 20 20 20 20 20 c9 20  6c 64 72 31 25 2c 6c 64  |      . ldr1%,ld|
000057a0  72 32 25 3a 20 e7 20 6b  65 79 25 3d 31 33 20 8c  |r2%: . key%=13 .|
000057b0  0d 12 f2 43 20 20 20 20  20 20 20 20 20 20 20 20  |...C            |
000057c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000057d0  20 61 3d bb 28 a4 57 69  6d 70 5f 52 65 61 64 49  | a=.(.Wimp_ReadI|
000057e0  63 6f 6e 54 65 78 74 28  77 69 6e 64 6f 77 25 2c  |conText(window%,|
000057f0  34 29 29 0d 12 fc 30 20  20 20 20 20 20 20 20 20  |4))...0         |
00005800  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005810  20 20 20 20 e7 20 61 3e  31 30 30 20 8c 20 61 3d  |    . a>100 . a=|
00005820  31 30 30 0d 13 06 2c 20  20 20 20 20 20 20 20 20  |100...,         |
00005830  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005840  20 20 20 20 e7 20 61 3c  30 20 8c 20 61 3d 30 0d  |    . a<0 . a=0.|
00005850  13 10 28 20 20 20 20 20  20 20 20 20 20 20 20 20  |..(             |
00005860  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005870  7a 7a 24 3d c3 20 61 0d  13 1a 43 20 20 20 20 20  |zz$=. a...C     |
00005880  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005890  20 e7 20 a7 7a 7a 24 2c  22 2e 22 29 3d 30 20 8c  | . .zz$,".")=0 .|
000058a0  20 7a 25 3d a9 20 7a 7a  24 20 8b 20 7a 25 3d a7  | z%=. zz$ . z%=.|
000058b0  7a 7a 24 2c 22 2e 22 29  2b 31 0d 13 24 2c 20 20  |zz$,".")+1..$,  |
000058c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000058d0  20 20 20 20 20 20 20 20  20 20 20 7a 24 3d c0 7a  |           z$=.z|
000058e0  7a 24 2c 7a 25 29 0d 13  2e 48 20 20 20 20 20 20  |z$,z%)...H      |
000058f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005900  20 20 20 20 20 20 20 e7  20 a7 7a 24 2c 22 2e 22  |       . .z$,"."|
00005910  29 3c 3e 30 20 80 20 c2  7a 24 29 3c 3e 22 35 22  |)<>0 . .z$)<>"5"|
00005920  20 8c 20 7a 24 3d c0 7a  24 29 2b 22 35 22 0d 13  | . z$=.z$)+"5"..|
00005930  38 42 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |8B              |
00005940  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00005950  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 54 65  |Wimp_WriteIconTe|
00005960  78 74 28 77 69 6e 64 6f  77 25 2c 34 2c 7a 24 29  |xt(window%,4,z$)|
00005970  0d 13 42 3d 20 20 20 20  20 20 20 20 20 20 20 20  |..B=            |
00005980  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005990  20 e7 20 61 3e 3d 30 20  80 20 61 3c 32 30 20 8c  | . a>=0 . a<20 .|
000059a0  20 61 24 3d 22 53 62 75  6c 62 30 30 22 0d 13 4c  | a$="Sbulb00"..L|
000059b0  3e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |>               |
000059c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
000059d0  61 3e 3d 32 30 20 80 20  61 3c 34 30 20 8c 20 61  |a>=20 . a<40 . a|
000059e0  24 3d 22 53 62 75 6c 62  32 30 22 0d 13 56 3e 20  |$="Sbulb20"..V> |
000059f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005a00  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3e  |            . a>|
00005a10  3d 34 30 20 80 20 61 3c  36 30 20 8c 20 61 24 3d  |=40 . a<60 . a$=|
00005a20  22 53 62 75 6c 62 34 30  22 0d 13 60 3e 20 20 20  |"Sbulb40"..`>   |
00005a30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005a40  20 20 20 20 20 20 20 20  20 20 e7 20 61 3e 3d 36  |          . a>=6|
00005a50  30 20 80 20 61 3c 38 30  20 8c 20 61 24 3d 22 53  |0 . a<80 . a$="S|
00005a60  62 75 6c 62 36 30 22 0d  13 6a 3f 20 20 20 20 20  |bulb60"..j?     |
00005a70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005a80  20 20 20 20 20 20 20 20  e7 20 61 3e 3d 38 30 20  |        . a>=80 |
00005a90  80 20 61 3c 31 30 30 20  8c 20 61 24 3d 22 53 62  |. a<100 . a$="Sb|
00005aa0  75 6c 62 38 30 22 0d 13  74 38 20 20 20 20 20 20  |ulb80"..t8      |
00005ab0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005ac0  20 20 20 20 20 20 20 e7  20 61 3d 31 30 30 20 8c  |       . a=100 .|
00005ad0  20 61 24 3d 22 53 62 75  6c 62 31 30 30 22 0d 13  | a$="Sbulb100"..|
00005ae0  7e 48 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |~H              |
00005af0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00005b00  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 56 61  |Wimp_WriteIconVa|
00005b10  6c 69 64 61 74 69 6f 6e  28 77 69 6e 64 6f 77 25  |lidation(window%|
00005b20  2c 32 2c 61 24 29 0d 13  88 35 20 20 20 20 20 20  |,2,a$)...5      |
00005b30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005b40  20 20 20 20 20 20 20 61  3d 28 31 30 30 2d 28 bb  |       a=(100-(.|
00005b50  20 7a 24 29 29 2a 31 30  30 30 30 0d 13 92 33 20  | z$))*10000...3 |
00005b60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005b70  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3c  |            . a<|
00005b80  31 30 30 30 20 8c 20 61  24 3d c3 28 61 29 0d 13  |1000 . a$=.(a)..|
00005b90  9c 49 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.I              |
00005ba0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
00005bb0  20 61 3e 3d 31 30 30 30  20 80 20 61 3c 31 30 30  | a>=1000 . a<100|
00005bc0  30 30 30 30 20 8c 20 61  24 3d c3 28 61 2f 31 30  |0000 . a$=.(a/10|
00005bd0  30 30 29 2b 22 4b 22 0d  13 a6 43 20 20 20 20 20  |00)+"K"...C     |
00005be0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005bf0  20 20 20 20 20 20 20 20  e7 20 61 3e 3d 31 30 30  |        . a>=100|
00005c00  30 30 30 30 20 8c 20 61  24 3d c3 28 61 2f 31 30  |0000 . a$=.(a/10|
00005c10  30 30 30 30 30 29 2b 22  4d 22 0d 13 b0 42 20 20  |00000)+"M"...B  |
00005c20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005c30  20 20 20 20 20 20 20 20  20 20 20 f2 57 69 6d 70  |           .Wimp|
00005c40  5f 57 72 69 74 65 49 63  6f 6e 54 65 78 74 28 77  |_WriteIconText(w|
00005c50  69 6e 64 6f 77 25 2c 39  2c 61 24 29 0d 13 ba 2b  |indow%,9,a$)...+|
00005c60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005c70  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 43 61  |             .Ca|
00005c80  6c 63 75 6c 61 74 65 0d  13 c4 1f 20 20 20 20 20  |lculate....     |
00005c90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005ca0  20 20 20 20 20 cc 0d 13  ce 37 20 20 20 20 20 20  |     ....7      |
00005cb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005cc0  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 50 72 6f  |       .Wimp_Pro|
00005cd0  63 65 73 73 4b 65 79 28  6b 65 79 25 29 0d 13 d8  |cessKey(key%)...|
00005ce0  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00005cf0  20 20 20 20 20 20 20 20  20 20 20 cd 0d 13 e2 32  |           ....2|
00005d00  20 20 20 20 20 20 c9 20  74 68 65 72 6d 69 73 74  |      . thermist|
00005d10  6f 72 31 25 2c 74 68 65  72 6d 69 73 74 6f 72 32  |or1%,thermistor2|
00005d20  25 3a 20 e7 20 6b 65 79  25 3d 31 33 20 8c 0d 13  |%: . key%=13 ...|
00005d30  ec 43 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.C              |
00005d40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 61  |               a|
00005d50  3d bb 28 a4 57 69 6d 70  5f 52 65 61 64 49 63 6f  |=.(.Wimp_ReadIco|
00005d60  6e 54 65 78 74 28 77 69  6e 64 6f 77 25 2c 34 29  |nText(window%,4)|
00005d70  29 0d 13 f6 30 20 20 20  20 20 20 20 20 20 20 20  |)...0           |
00005d80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005d90  20 20 e7 20 61 3e 32 30  30 20 8c 20 61 3d 32 30  |  . a>200 . a=20|
00005da0  30 0d 14 00 30 20 20 20  20 20 20 20 20 20 20 20  |0...0           |
00005db0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005dc0  20 20 e7 20 61 3c 2d 35  30 20 8c 20 61 3d 2d 35  |  . a<-50 . a=-5|
00005dd0  30 0d 14 0a 3f 20 20 20  20 20 20 20 20 20 20 20  |0...?           |
00005de0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005df0  20 20 e7 20 61 3e 3d 2d  35 30 20 80 20 61 3c 2d  |  . a>=-50 . a<-|
00005e00  32 35 20 8c 20 61 24 3d  22 52 37 3b 53 68 2d 22  |25 . a$="R7;Sh-"|
00005e10  0d 14 14 3d 20 20 20 20  20 20 20 20 20 20 20 20  |...=            |
00005e20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005e30  20 e7 20 61 3e 3d 2d 32  35 20 80 20 61 3c 30 20  | . a>=-25 . a<0 |
00005e40  8c 20 61 24 3d 22 52 37  3b 53 68 30 22 0d 14 1e  |. a$="R7;Sh0"...|
00005e50  3c 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |<               |
00005e60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 e7 20  |              . |
00005e70  61 3e 3d 30 20 80 20 61  3c 32 35 20 8c 20 61 24  |a>=0 . a<25 . a$|
00005e80  3d 22 52 37 3b 53 68 31  22 0d 14 28 3d 20 20 20  |="R7;Sh1"..(=   |
00005e90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005ea0  20 20 20 20 20 20 20 20  20 20 e7 20 61 3e 3d 32  |          . a>=2|
00005eb0  35 20 80 20 61 3c 35 30  20 8c 20 61 24 3d 22 52  |5 . a<50 . a$="R|
00005ec0  37 3b 53 68 32 22 0d 14  32 3d 20 20 20 20 20 20  |7;Sh2"..2=      |
00005ed0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005ee0  20 20 20 20 20 20 20 e7  20 61 3e 3d 35 30 20 80  |       . a>=50 .|
00005ef0  20 61 3c 37 35 20 8c 20  61 24 3d 22 52 37 3b 53  | a<75 . a$="R7;S|
00005f00  68 33 22 0d 14 3c 3e 20  20 20 20 20 20 20 20 20  |h3"..<>         |
00005f10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005f20  20 20 20 20 e7 20 61 3e  3d 37 35 20 80 20 61 3c  |    . a>=75 . a<|
00005f30  31 30 30 20 8c 20 61 24  3d 22 52 37 3b 53 68 34  |100 . a$="R7;Sh4|
00005f40  22 0d 14 46 3f 20 20 20  20 20 20 20 20 20 20 20  |"..F?           |
00005f50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005f60  20 20 e7 20 61 3e 3d 31  30 30 20 80 20 61 3c 31  |  . a>=100 . a<1|
00005f70  32 35 20 8c 20 61 24 3d  22 52 37 3b 53 68 35 22  |25 . a$="R7;Sh5"|
00005f80  0d 14 50 3f 20 20 20 20  20 20 20 20 20 20 20 20  |..P?            |
00005f90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005fa0  20 e7 20 61 3e 3d 31 32  35 20 80 20 61 3c 31 35  | . a>=125 . a<15|
00005fb0  30 20 8c 20 61 24 3d 22  52 37 3b 53 68 36 22 0d  |0 . a$="R7;Sh6".|
00005fc0  14 5a 3f 20 20 20 20 20  20 20 20 20 20 20 20 20  |.Z?             |
00005fd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005fe0  e7 20 61 3e 3d 31 35 30  20 80 20 61 3c 31 37 35  |. a>=150 . a<175|
00005ff0  20 8c 20 61 24 3d 22 52  37 3b 53 68 37 22 0d 14  | . a$="R7;Sh7"..|
00006000  64 3f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |d?              |
00006010  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 e7  |               .|
00006020  20 61 3e 3d 31 37 35 20  80 20 61 3c 32 30 31 20  | a>=175 . a<201 |
00006030  8c 20 61 24 3d 22 52 37  3b 53 68 38 22 0d 14 6e  |. a$="R7;Sh8"..n|
00006040  48 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |H               |
00006050  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00006060  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 56 61 6c  |imp_WriteIconVal|
00006070  69 64 61 74 69 6f 6e 28  77 69 6e 64 6f 77 25 2c  |idation(window%,|
00006080  32 2c 61 24 29 0d 14 78  28 20 20 20 20 20 20 20  |2,a$)..x(       |
00006090  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000060a0  20 20 20 20 20 20 7a 7a  24 3d c3 20 61 0d 14 82  |      zz$=. a...|
000060b0  43 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |C               |
000060c0  20 20 20 20 20 20 20 e7  20 a7 7a 7a 24 2c 22 2e  |       . .zz$,".|
000060d0  22 29 3d 30 20 8c 20 7a  25 3d a9 20 7a 7a 24 20  |")=0 . z%=. zz$ |
000060e0  8b 20 7a 25 3d a7 7a 7a  24 2c 22 2e 22 29 2b 31  |. z%=.zz$,".")+1|
000060f0  0d 14 8c 2c 20 20 20 20  20 20 20 20 20 20 20 20  |...,            |
00006100  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006110  20 7a 24 3d c0 7a 7a 24  2c 7a 25 29 0d 14 96 48  | z$=.zz$,z%)...H|
00006120  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006130  20 20 20 20 20 20 20 20  20 20 20 20 20 e7 20 a7  |             . .|
00006140  7a 24 2c 22 2e 22 29 3c  3e 30 20 80 20 c2 7a 24  |z$,".")<>0 . .z$|
00006150  29 3c 3e 22 35 22 20 8c  20 7a 24 3d c0 7a 24 29  |)<>"5" . z$=.z$)|
00006160  2b 22 35 22 0d 14 a0 42  20 20 20 20 20 20 20 20  |+"5"...B        |
00006170  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006180  20 20 20 20 20 f2 57 69  6d 70 5f 57 72 69 74 65  |     .Wimp_Write|
00006190  49 63 6f 6e 54 65 78 74  28 77 69 6e 64 6f 77 25  |IconText(window%|
000061a0  2c 34 2c 7a 24 29 0d 14  aa 39 20 20 20 20 20 20  |,4,z$)...9      |
000061b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000061c0  20 20 20 20 20 20 20 61  3d 28 32 35 30 2d 28 28  |       a=(250-((|
000061d0  bb 20 7a 24 29 2b 35 30  29 29 2a 34 30 30 30 0d  |. z$)+50))*4000.|
000061e0  14 b4 33 20 20 20 20 20  20 20 20 20 20 20 20 20  |..3             |
000061f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006200  e7 20 61 3c 31 30 30 30  20 8c 20 61 24 3d c3 28  |. a<1000 . a$=.(|
00006210  61 29 0d 14 be 49 20 20  20 20 20 20 20 20 20 20  |a)...I          |
00006220  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006230  20 20 20 e7 20 61 3e 3d  31 30 30 30 20 80 20 61  |   . a>=1000 . a|
00006240  3c 31 30 30 30 30 30 30  20 8c 20 61 24 3d c3 28  |<1000000 . a$=.(|
00006250  61 2f 31 30 30 30 29 2b  22 4b 22 0d 14 c8 43 20  |a/1000)+"K"...C |
00006260  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006270  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 61 3e  |            . a>|
00006280  3d 31 30 30 30 30 30 30  20 8c 20 61 24 3d c3 28  |=1000000 . a$=.(|
00006290  61 2f 31 30 30 30 30 30  30 29 2b 22 4d 22 0d 14  |a/1000000)+"M"..|
000062a0  d2 42 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.B              |
000062b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
000062c0  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 54 65  |Wimp_WriteIconTe|
000062d0  78 74 28 77 69 6e 64 6f  77 25 2c 39 2c 61 24 29  |xt(window%,9,a$)|
000062e0  0d 14 dc 2b 20 20 20 20  20 20 20 20 20 20 20 20  |...+            |
000062f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006300  20 f2 43 61 6c 63 75 6c  61 74 65 0d 14 e6 1f 20  | .Calculate.... |
00006310  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006320  20 20 20 20 20 20 20 20  20 cc 0d 14 f0 37 20 20  |         ....7  |
00006330  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006340  20 20 20 20 20 20 20 20  20 20 20 f2 57 69 6d 70  |           .Wimp|
00006350  5f 50 72 6f 63 65 73 73  4b 65 79 28 6b 65 79 25  |_ProcessKey(key%|
00006360  29 0d 14 fa 1f 20 20 20  20 20 20 20 20 20 20 20  |)....           |
00006370  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 cd  |               .|
00006380  0d 15 04 24 20 20 20 20  20 20 7f 20 3a 20 f2 57  |...$      . : .W|
00006390  69 6d 70 5f 50 72 6f 63  65 73 73 4b 65 79 28 6b  |imp_ProcessKey(k|
000063a0  65 79 25 29 0d 15 0e 06  20 cb 0d 15 18 06 20 e1  |ey%).... ..... .|
000063b0  0d 15 22 06 20 3a 0d 15  2c 1a 20 dd 20 f2 50 6f  |..". :..,. . .Po|
000063c0  6c 6c 5f 4d 65 6e 75 53  65 6c 65 63 74 69 6f 6e  |ll_MenuSelection|
000063d0  0d 15 36 34 20 73 65 6c  31 25 3d 21 62 6c 6f 63  |..64 sel1%=!bloc|
000063e0  6b 25 20 3a 20 73 65 6c  32 25 3d 62 6c 6f 63 6b  |k% : sel2%=block|
000063f0  25 21 34 20 3a 20 73 65  6c 33 25 3d 62 6c 6f 63  |%!4 : sel3%=bloc|
00006400  6b 25 21 38 0d 15 40 25  20 c8 99 20 22 57 69 6d  |k%!8..@% .. "Wim|
00006410  70 5f 47 65 74 50 6f 69  6e 74 65 72 49 6e 66 6f  |p_GetPointerInfo|
00006420  22 2c 2c 62 6c 6f 63 6b  25 0d 15 4a 15 20 62 75  |",,block%..J. bu|
00006430  74 74 6f 6e 25 3d 62 6c  6f 63 6b 25 21 38 0d 15  |tton%=block%!8..|
00006440  54 16 20 c8 8e 20 43 75  72 72 65 6e 74 4d 65 6e  |T. .. CurrentMen|
00006450  75 25 20 ca 0d 15 5e 25  20 20 20 20 20 20 c9 20  |u% ...^%      . |
00006460  69 63 6f 6e 62 61 72 5f  6d 65 6e 75 25 3a 20 c8  |iconbar_menu%: .|
00006470  8e 20 73 65 6c 31 25 20  ca 0d 15 68 2f 20 20 20  |. sel1% ...h/   |
00006480  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006490  20 20 20 20 20 20 20 20  20 20 20 20 c9 20 32 3a  |            . 2:|
000064a0  20 71 75 69 74 25 3d b9  0d 15 72 1f 20 20 20 20  | quit%=...r.    |
000064b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000064c0  20 20 20 20 20 20 cb 0d  15 7c 24 20 20 20 20 20  |      ...|$     |
000064d0  20 c9 20 64 65 73 69 67  6e 5f 6d 65 6e 75 25 3a  | . design_menu%:|
000064e0  20 c8 8e 20 73 65 6c 31  25 20 ca 0d 15 86 32 20  | .. sel1% ....2 |
000064f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006500  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |              . |
00006510  30 3a 20 c8 8e 20 73 65  6c 32 25 20 ca 0d 15 90  |0: .. sel2% ....|
00006520  44 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |D               |
00006530  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006540  20 20 20 20 20 20 20 20  20 20 20 20 20 c9 20 30  |             . 0|
00006550  2c 31 3a 20 69 63 6f 6e  25 3d 73 65 6c 32 25 2b  |,1: icon%=sel2%+|
00006560  33 0d 15 9a 19 20 20 20  20 20 20 20 20 20 20 20  |3....           |
00006570  c8 8e 20 73 65 6c 33 25  20 ca 0d 15 a4 36 20 20  |.. sel3% ....6  |
00006580  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |              . |
00006590  30 3a 20 f2 57 69 6d 70  5f 48 61 6c 66 53 69 7a  |0: .Wimp_HalfSiz|
000065a0  65 28 64 65 73 69 67 6e  25 2c 69 63 6f 6e 25 29  |e(design%,icon%)|
000065b0  0d 15 ae 4b 20 20 20 20  20 20 20 20 20 20 20 20  |...K            |
000065c0  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
000065d0  70 5f 57 72 69 74 65 49  63 6f 6e 56 61 6c 69 64  |p_WriteIconValid|
000065e0  61 74 69 6f 6e 28 64 65  73 69 67 6e 25 2c 69 63  |ation(design%,ic|
000065f0  6f 6e 25 2c 22 53 6c 64  72 22 29 0d 15 b8 43 20  |on%,"Sldr")...C |
00006600  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006610  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 57 72 69  |       .Wimp_Wri|
00006620  74 65 49 63 6f 6e 54 65  78 74 28 64 65 73 69 67  |teIconText(desig|
00006630  6e 25 2c 39 2b 69 63 6f  6e 25 2c 22 22 29 0d 15  |n%,9+icon%,"")..|
00006640  c2 46 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.F              |
00006650  20 20 20 20 20 20 20 20  20 20 f2 57 69 6d 70 5f  |          .Wimp_|
00006660  53 65 74 49 63 6f 6e 42  75 74 74 6f 6e 54 79 70  |SetIconButtonTyp|
00006670  65 28 64 65 73 69 67 6e  25 2c 39 2b 69 63 6f 6e  |e(design%,9+icon|
00006680  25 2c 30 29 0d 15 cc 44  20 20 20 20 20 20 20 20  |%,0)...D        |
00006690  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000066a0  e7 20 a4 57 69 6d 70 5f  47 65 74 43 61 72 65 74  |. .Wimp_GetCaret|
000066b0  50 6f 73 69 74 69 6f 6e  57 69 6e 64 6f 77 3d 64  |PositionWindow=d|
000066c0  65 73 69 67 6e 25 20 8c  0d 15 d6 30 20 20 20 20  |esign% ....0    |
000066d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000066e0  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 44 69 73  |       .Wimp_Dis|
000066f0  6f 77 6e 43 61 72 65 74  0d 15 e0 1d 20 20 20 20  |ownCaret....    |
00006700  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006710  20 20 20 20 cd 0d 15 ea  36 20 20 20 20 20 20 20  |    ....6       |
00006720  20 20 20 20 20 20 20 20  20 c9 20 35 3a 20 f2 57  |         . 5: .W|
00006730  69 6d 70 5f 48 61 6c 66  53 69 7a 65 28 64 65 73  |imp_HalfSize(des|
00006740  69 67 6e 25 2c 69 63 6f  6e 25 29 0d 15 f4 4c 20  |ign%,icon%)...L |
00006750  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006760  20 20 20 20 20 20 20 f2  57 69 6d 70 5f 57 72 69  |       .Wimp_Wri|
00006770  74 65 49 63 6f 6e 56 61  6c 69 64 61 74 69 6f 6e  |teIconValidation|
00006780  28 64 65 73 69 67 6e 25  2c 69 63 6f 6e 25 2c 22  |(design%,icon%,"|
00006790  53 76 72 65 73 22 29 0d  15 fe 43 20 20 20 20 20  |Svres")...C     |
000067a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000067b0  20 20 20 f2 57 69 6d 70  5f 57 72 69 74 65 49 63  |   .Wimp_WriteIc|
000067c0  6f 6e 54 65 78 74 28 64  65 73 69 67 6e 25 2c 39  |onText(design%,9|
000067d0  2b 69 63 6f 6e 25 2c 22  22 29 0d 16 08 46 20 20  |+icon%,"")...F  |
000067e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000067f0  20 20 20 20 20 20 f2 57  69 6d 70 5f 53 65 74 49  |      .Wimp_SetI|
00006800  63 6f 6e 42 75 74 74 6f  6e 54 79 70 65 28 64 65  |conButtonType(de|
00006810  73 69 67 6e 25 2c 39 2b  69 63 6f 6e 25 2c 30 29  |sign%,9+icon%,0)|
00006820  0d 16 12 44 20 20 20 20  20 20 20 20 20 20 20 20  |...D            |
00006830  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 a4 57  |            . .W|
00006840  69 6d 70 5f 47 65 74 43  61 72 65 74 50 6f 73 69  |imp_GetCaretPosi|
00006850  74 69 6f 6e 57 69 6e 64  6f 77 3d 64 65 73 69 67  |tionWindow=desig|
00006860  6e 25 20 8c 0d 16 1c 30  20 20 20 20 20 20 20 20  |n% ....0        |
00006870  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006880  20 20 20 f2 57 69 6d 70  5f 44 69 73 6f 77 6e 43  |   .Wimp_DisownC|
00006890  61 72 65 74 0d 16 26 1d  20 20 20 20 20 20 20 20  |aret..&.        |
000068a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000068b0  cd 0d 16 30 36 20 20 20  20 20 20 20 20 20 20 20  |...06           |
000068c0  20 20 20 20 20 c9 20 34  3a 20 f2 57 69 6d 70 5f  |     . 4: .Wimp_|
000068d0  48 61 6c 66 53 69 7a 65  28 64 65 73 69 67 6e 25  |HalfSize(design%|
000068e0  2c 69 63 6f 6e 25 29 0d  16 3a 4b 20 20 20 20 20  |,icon%)..:K     |
000068f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006900  20 20 20 f2 57 69 6d 70  5f 57 72 69 74 65 49 63  |   .Wimp_WriteIc|
00006910  6f 6e 56 61 6c 69 64 61  74 69 6f 6e 28 64 65 73  |onValidation(des|
00006920  69 67 6e 25 2c 69 63 6f  6e 25 2c 22 53 72 65 73  |ign%,icon%,"Sres|
00006930  22 29 0d 16 44 47 20 20  20 20 20 20 20 20 20 20  |")..DG          |
00006940  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00006950  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 54 65 78  |imp_WriteIconTex|
00006960  74 28 64 65 73 69 67 6e  25 2c 39 2b 69 63 6f 6e  |t(design%,9+icon|
00006970  25 2c 22 31 30 30 4b 22  29 0d 16 4e 47 20 20 20  |%,"100K")..NG   |
00006980  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006990  20 20 20 20 20 f2 57 69  6d 70 5f 53 65 74 49 63  |     .Wimp_SetIc|
000069a0  6f 6e 42 75 74 74 6f 6e  54 79 70 65 28 64 65 73  |onButtonType(des|
000069b0  69 67 6e 25 2c 39 2b 69  63 6f 6e 25 2c 31 35 29  |ign%,9+icon%,15)|
000069c0  0d 16 58 36 20 20 20 20  20 20 20 20 20 20 20 20  |..X6            |
000069d0  20 20 20 20 c9 20 31 3a  20 f2 57 69 6d 70 5f 48  |    . 1: .Wimp_H|
000069e0  61 6c 66 53 69 7a 65 28  64 65 73 69 67 6e 25 2c  |alfSize(design%,|
000069f0  69 63 6f 6e 25 29 0d 16  62 4c 20 20 20 20 20 20  |icon%)..bL      |
00006a00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006a10  20 20 f2 57 69 6d 70 5f  57 72 69 74 65 49 63 6f  |  .Wimp_WriteIco|
00006a20  6e 56 61 6c 69 64 61 74  69 6f 6e 28 64 65 73 69  |nValidation(desi|
00006a30  67 6e 25 2c 69 63 6f 6e  25 2c 22 53 74 68 65 72  |gn%,icon%,"Sther|
00006a40  22 29 0d 16 6c 43 20 20  20 20 20 20 20 20 20 20  |")..lC          |
00006a50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00006a60  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 54 65 78  |imp_WriteIconTex|
00006a70  74 28 64 65 73 69 67 6e  25 2c 39 2b 69 63 6f 6e  |t(design%,9+icon|
00006a80  25 2c 22 22 29 0d 16 76  46 20 20 20 20 20 20 20  |%,"")..vF       |
00006a90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006aa0  20 f2 57 69 6d 70 5f 53  65 74 49 63 6f 6e 42 75  | .Wimp_SetIconBu|
00006ab0  74 74 6f 6e 54 79 70 65  28 64 65 73 69 67 6e 25  |ttonType(design%|
00006ac0  2c 39 2b 69 63 6f 6e 25  2c 30 29 0d 16 80 44 20  |,9+icon%,0)...D |
00006ad0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006ae0  20 20 20 20 20 20 20 e7  20 a4 57 69 6d 70 5f 47  |       . .Wimp_G|
00006af0  65 74 43 61 72 65 74 50  6f 73 69 74 69 6f 6e 57  |etCaretPositionW|
00006b00  69 6e 64 6f 77 3d 64 65  73 69 67 6e 25 20 8c 0d  |indow=design% ..|
00006b10  16 8a 30 20 20 20 20 20  20 20 20 20 20 20 20 20  |..0             |
00006b20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00006b30  69 6d 70 5f 44 69 73 6f  77 6e 43 61 72 65 74 0d  |imp_DisownCaret.|
00006b40  16 94 1d 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00006b50  20 20 20 20 20 20 20 20  20 20 20 cd 0d 16 9e 36  |           ....6|
00006b60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006b70  c9 20 32 3a 20 f2 57 69  6d 70 5f 46 75 6c 6c 53  |. 2: .Wimp_FullS|
00006b80  69 7a 65 28 64 65 73 69  67 6e 25 2c 69 63 6f 6e  |ize(design%,icon|
00006b90  25 29 0d 16 a8 4b 20 20  20 20 20 20 20 20 20 20  |%)...K          |
00006ba0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00006bb0  69 6d 70 5f 57 72 69 74  65 49 63 6f 6e 56 61 6c  |imp_WriteIconVal|
00006bc0  69 64 61 74 69 6f 6e 28  64 65 73 69 67 6e 25 2c  |idation(design%,|
00006bd0  69 63 6f 6e 25 2c 22 53  77 65 74 22 29 0d 16 b2  |icon%,"Swet")...|
00006be0  43 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |C               |
00006bf0  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 57  |         .Wimp_W|
00006c00  72 69 74 65 49 63 6f 6e  54 65 78 74 28 64 65 73  |riteIconText(des|
00006c10  69 67 6e 25 2c 39 2b 69  63 6f 6e 25 2c 22 22 29  |ign%,9+icon%,"")|
00006c20  0d 16 bc 46 20 20 20 20  20 20 20 20 20 20 20 20  |...F            |
00006c30  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
00006c40  70 5f 53 65 74 49 63 6f  6e 42 75 74 74 6f 6e 54  |p_SetIconButtonT|
00006c50  79 70 65 28 64 65 73 69  67 6e 25 2c 39 2b 69 63  |ype(design%,9+ic|
00006c60  6f 6e 25 2c 30 29 0d 16  c6 44 20 20 20 20 20 20  |on%,0)...D      |
00006c70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006c80  20 20 e7 20 a4 57 69 6d  70 5f 47 65 74 43 61 72  |  . .Wimp_GetCar|
00006c90  65 74 50 6f 73 69 74 69  6f 6e 57 69 6e 64 6f 77  |etPositionWindow|
00006ca0  3d 64 65 73 69 67 6e 25  20 8c 0d 16 d0 30 20 20  |=design% ....0  |
00006cb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006cc0  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 44  |         .Wimp_D|
00006cd0  69 73 6f 77 6e 43 61 72  65 74 0d 16 da 1d 20 20  |isownCaret....  |
00006ce0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006cf0  20 20 20 20 20 20 cd 0d  16 e4 36 20 20 20 20 20  |      ....6     |
00006d00  20 20 20 20 20 20 20 20  20 20 20 c9 20 33 3a 20  |           . 3: |
00006d10  f2 57 69 6d 70 5f 46 75  6c 6c 53 69 7a 65 28 64  |.Wimp_FullSize(d|
00006d20  65 73 69 67 6e 25 2c 69  63 6f 6e 25 29 0d 16 ee  |esign%,icon%)...|
00006d30  4a 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |J               |
00006d40  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 57  |         .Wimp_W|
00006d50  72 69 74 65 49 63 6f 6e  56 61 6c 69 64 61 74 69  |riteIconValidati|
00006d60  6f 6e 28 64 65 73 69 67  6e 25 2c 69 63 6f 6e 25  |on(design%,icon%|
00006d70  2c 22 53 73 77 22 29 0d  16 f8 43 20 20 20 20 20  |,"Ssw")...C     |
00006d80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006d90  20 20 20 f2 57 69 6d 70  5f 57 72 69 74 65 49 63  |   .Wimp_WriteIc|
00006da0  6f 6e 54 65 78 74 28 64  65 73 69 67 6e 25 2c 39  |onText(design%,9|
00006db0  2b 69 63 6f 6e 25 2c 22  22 29 0d 17 02 46 20 20  |+icon%,"")...F  |
00006dc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006dd0  20 20 20 20 20 20 f2 57  69 6d 70 5f 53 65 74 49  |      .Wimp_SetI|
00006de0  63 6f 6e 42 75 74 74 6f  6e 54 79 70 65 28 64 65  |conButtonType(de|
00006df0  73 69 67 6e 25 2c 39 2b  69 63 6f 6e 25 2c 30 29  |sign%,9+icon%,0)|
00006e00  0d 17 0c 44 20 20 20 20  20 20 20 20 20 20 20 20  |...D            |
00006e10  20 20 20 20 20 20 20 20  20 20 20 20 e7 20 a4 57  |            . .W|
00006e20  69 6d 70 5f 47 65 74 43  61 72 65 74 50 6f 73 69  |imp_GetCaretPosi|
00006e30  74 69 6f 6e 57 69 6e 64  6f 77 3d 64 65 73 69 67  |tionWindow=desig|
00006e40  6e 25 20 8c 0d 17 16 30  20 20 20 20 20 20 20 20  |n% ....0        |
00006e50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006e60  20 20 20 f2 57 69 6d 70  5f 44 69 73 6f 77 6e 43  |   .Wimp_DisownC|
00006e70  61 72 65 74 0d 17 20 1d  20 20 20 20 20 20 20 20  |aret.. .        |
00006e80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006e90  cd 0d 17 2a 1d 20 20 20  20 20 20 20 20 20 20 20  |...*.           |
00006ea0  20 20 20 20 20 20 20 20  20 20 20 20 20 cb 0d 17  |             ...|
00006eb0  34 3f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |4?              |
00006ec0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006ed0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |              . |
00006ee0  32 3a 20 c8 8e 20 73 65  6c 33 25 20 ca 0d 17 3e  |2: .. sel3% ...>|
00006ef0  57 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |W               |
00006f00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006f10  20 c9 20 30 3a 20 f2 57  69 6d 70 5f 57 72 69 74  | . 0: .Wimp_Writ|
00006f20  65 49 63 6f 6e 56 61 6c  69 64 61 74 69 6f 6e 28  |eIconValidation(|
00006f30  64 65 73 69 67 6e 25 2c  31 31 2c 22 53 6c 61 6d  |design%,11,"Slam|
00006f40  70 31 22 29 0d 17 48 56  20 20 20 20 20 20 20 20  |p1")..HV        |
00006f50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006f60  20 20 20 20 20 20 20 20  c9 20 31 3a 20 f2 57 69  |        . 1: .Wi|
00006f70  6d 70 5f 57 72 69 74 65  49 63 6f 6e 56 61 6c 69  |mp_WriteIconVali|
00006f80  64 61 74 69 6f 6e 28 64  65 73 69 67 6e 25 2c 31  |dation(design%,1|
00006f90  31 2c 22 53 6c 65 64 31  22 29 0d 17 52 57 20 20  |1,"Sled1")..RW  |
00006fa0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006fb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |              . |
00006fc0  32 3a 20 f2 57 69 6d 70  5f 57 72 69 74 65 49 63  |2: .Wimp_WriteIc|
00006fd0  6f 6e 56 61 6c 69 64 61  74 69 6f 6e 28 64 65 73  |onValidation(des|
00006fe0  69 67 6e 25 2c 31 31 2c  22 53 62 75 7a 7a 31 22  |ign%,11,"Sbuzz1"|
00006ff0  29 0d 17 5c 39 20 20 20  20 20 20 20 20 20 20 20  |)..\9           |
00007000  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00007020  20 20 20 20 20 20 20 20  20 cb 0d 17 66 2c 20 20  |         ...f,  |
00007030  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00007050  20 20 20 20 20 cb 0d 17  70 42 20 20 20 20 20 20  |     ...pB      |
00007060  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007070  20 20 20 20 20 20 20 20  20 c9 20 31 3a 20 f2 57  |         . 1: .W|
00007080  69 6d 70 5f 43 6c 6f 73  65 57 69 6e 64 6f 77 28  |imp_CloseWindow(|
00007090  64 65 73 69 67 6e 25 29  0d 17 7a 45 20 20 20 20  |design%)..zE    |
000070a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000070c0  20 20 20 f2 57 69 6d 70  5f 43 6c 6f 73 65 57 69  |   .Wimp_CloseWi|
000070d0  6e 64 6f 77 28 74 6f 6f  6c 73 31 25 29 0d 17 84  |ndow(tools1%)...|
000070e0  45 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |E               |
000070f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007100  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 43 6c  |        .Wimp_Cl|
00007110  6f 73 65 57 69 6e 64 6f  77 28 74 6f 6f 6c 73 32  |oseWindow(tools2|
00007120  25 29 0d 17 8e 40 20 20  20 20 20 20 20 20 20 20  |%)...@          |
00007130  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007140  20 20 20 20 20 20 20 20  20 20 20 20 20 63 75 72  |             cur|
00007150  72 65 6e 74 5f 77 69 6e  64 6f 77 25 3d 74 65 73  |rent_window%=tes|
00007160  74 25 0d 17 98 34 20 20  20 20 20 20 20 20 20 20  |t%...4          |
00007170  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007180  20 20 20 20 20 20 20 20  20 20 20 20 20 62 75 74  |             but|
00007190  74 6f 6e 25 3d 33 0d 17  a2 30 20 20 20 20 20 20  |ton%=3...0      |
000071a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000071c0  20 f2 54 65 73 74 0d 17  ac 4c 20 20 20 20 20 20  | .Test...L      |
000071d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000071e0  20 20 20 20 20 20 20 20  20 c9 20 32 3a 20 e7 20  |         . 2: . |
000071f0  a4 57 69 6d 70 5f 4d 65  6e 75 54 69 63 6b 65 64  |.Wimp_MenuTicked|
00007200  28 64 65 73 69 67 6e 5f  6d 65 6e 75 25 2c 32 29  |(design_menu%,2)|
00007210  20 8c 0d 17 b6 4f 20 20  20 20 20 20 20 20 20 20  | ....O          |
00007220  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007230  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 57 69  |             .Wi|
00007240  6d 70 5f 4d 65 6e 75 55  6e 54 69 63 6b 49 74 65  |mp_MenuUnTickIte|
00007250  6d 28 64 65 73 69 67 6e  5f 6d 65 6e 75 25 2c 32  |m(design_menu%,2|
00007260  29 0d 17 c0 45 20 20 20  20 20 20 20 20 20 20 20  |)...E           |
00007270  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007280  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
00007290  70 5f 43 6c 6f 73 65 57  69 6e 64 6f 77 28 74 6f  |p_CloseWindow(to|
000072a0  6f 6c 73 31 25 29 0d 17  ca 45 20 20 20 20 20 20  |ols1%)...E      |
000072b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000072d0  20 f2 57 69 6d 70 5f 43  6c 6f 73 65 57 69 6e 64  | .Wimp_CloseWind|
000072e0  6f 77 28 74 6f 6f 6c 73  32 25 29 0d 17 d4 2c 20  |ow(tools2%)..., |
000072f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00007310  20 20 20 20 20 20 cc 0d  17 de 4d 20 20 20 20 20  |      ....M     |
00007320  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00007340  20 20 f2 57 69 6d 70 5f  4d 65 6e 75 54 69 63 6b  |  .Wimp_MenuTick|
00007350  49 74 65 6d 28 64 65 73  69 67 6e 5f 6d 65 6e 75  |Item(design_menu|
00007360  25 2c 32 29 0d 17 e8 43  20 20 20 20 20 20 20 20  |%,2)...C        |
00007370  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007380  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00007390  55 73 65 72 5f 4f 70 65  6e 44 65 73 69 67 6e 41  |User_OpenDesignA|
000073a0  4e 44 54 6f 6f 6c 73 0d  17 f2 2c 20 20 20 20 20  |NDTools...,     |
000073b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000073d0  20 20 cd 0d 17 fc 1f 20  20 20 20 20 20 20 20 20  |  .....         |
000073e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000073f0  20 cb 0d 18 06 23 20 20  20 20 20 20 c9 20 74 65  | ....#      . te|
00007400  73 74 5f 6d 65 6e 75 25  3a 20 20 c8 8e 20 73 65  |st_menu%:  .. se|
00007410  6c 31 25 20 ca 0d 18 10  3f 20 20 20 20 20 20 20  |l1% ....?       |
00007420  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007430  20 20 20 20 20 20 20 c9  20 30 3a 20 f2 55 73 65  |       . 0: .Use|
00007440  72 5f 4f 70 65 6e 44 65  73 69 67 6e 41 4e 44 54  |r_OpenDesignANDT|
00007450  6f 6f 6c 73 0d 18 1a 42  20 20 20 20 20 20 20 20  |ools...B        |
00007460  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007470  20 20 20 20 20 20 20 20  20 20 20 20 20 20 f2 57  |              .W|
00007480  69 6d 70 5f 43 6c 6f 73  65 57 69 6e 64 6f 77 28  |imp_CloseWindow(|
00007490  74 65 73 74 25 29 0d 18  24 49 20 20 20 20 20 20  |test%)..$I      |
000074a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000074c0  f2 57 69 6d 70 5f 43 6c  6f 73 65 57 69 6e 64 6f  |.Wimp_CloseWindo|
000074d0  77 28 63 75 72 72 65 6e  74 5f 74 6f 70 25 29 0d  |w(current_top%).|
000074e0  18 2e 4c 20 20 20 20 20  20 20 20 20 20 20 20 20  |..L             |
000074f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007500  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 43  |         .Wimp_C|
00007510  6c 6f 73 65 57 69 6e 64  6f 77 28 63 75 72 72 65  |loseWindow(curre|
00007520  6e 74 5f 62 6f 74 74 6f  6d 25 29 0d 18 38 41 20  |nt_bottom%)..8A |
00007530  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00007550  20 20 20 20 20 63 75 72  72 65 6e 74 5f 77 69 6e  |     current_win|
00007560  64 6f 77 25 3d 64 65 73  69 67 6e 25 0d 18 42 33  |dow%=design%..B3|
00007570  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00007590  20 20 20 20 20 20 62 75  7a 7a 65 72 25 3d a3 0d  |      buzzer%=..|
000075a0  18 4c 33 20 20 20 20 20  20 20 20 20 20 20 20 20  |.L3             |
000075b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000075c0  20 20 20 20 20 20 20 20  20 62 75 74 74 6f 6e 25  |         button%|
000075d0  3d 33 0d 18 56 1d 20 20  20 20 20 20 20 20 20 20  |=3..V.          |
000075e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 cb 0d  |              ..|
000075f0  18 60 06 20 cb 0d 18 6a  33 20 e7 20 62 75 74 74  |.`. ...j3 . butt|
00007600  6f 6e 25 3d 31 20 8c 20  f2 57 69 6d 70 5f 53 68  |on%=1 . .Wimp_Sh|
00007610  6f 77 4d 65 6e 75 28 43  75 72 72 65 6e 74 4d 65  |owMenu(CurrentMe|
00007620  6e 75 25 2c 30 2c 30 29  0d 18 74 06 20 e1 0d 18  |nu%,0,0)..t. ...|
00007630  7e 06 20 3a 0d 18 88 27  20 dd 20 f2 50 6f 6c 6c  |~. :...' . .Poll|
00007640  5f 49 6e 63 6f 6d 6d 69  6e 67 4d 65 73 73 61 67  |_IncommingMessag|
00007650  65 28 6d 65 73 73 61 67  65 25 29 0d 18 92 12 20  |e(message%).... |
00007660  c8 8e 20 6d 65 73 73 61  67 65 25 20 ca 0d 18 9c  |.. message% ....|
00007670  16 20 20 20 20 20 20 c9  20 30 3a 20 71 75 69 74  |.      . 0: quit|
00007680  25 3d b9 0d 18 a6 06 20  cb 0d 18 b0 06 20 e1 0d  |%=..... ..... ..|
00007690  18 ba 06 20 3a 0d 18 c4  23 20 dd 20 f2 57 69 6d  |... :...# . .Wim|
000076a0  70 5f 44 72 61 67 42 6f  78 28 77 69 6e 64 6f 77  |p_DragBox(window|
000076b0  25 2c 69 63 6f 6e 25 29  0d 18 ce 0b 20 ea 78 25  |%,icon%).... .x%|
000076c0  2c 79 25 0d 18 d8 15 20  20 21 62 6c 6f 63 6b 25  |,y%....  !block%|
000076d0  3d 77 69 6e 64 6f 77 25  0d 18 e2 25 20 20 c8 99  |=window%...%  ..|
000076e0  22 57 69 6d 70 5f 47 65  74 57 69 6e 64 6f 77 53  |"Wimp_GetWindowS|
000076f0  74 61 74 65 22 2c 2c 62  6c 6f 63 6b 25 0d 18 ec  |tate",,block%...|
00007700  32 20 20 78 25 3d 62 6c  6f 63 6b 25 21 34 2d 62  |2  x%=block%!4-b|
00007710  6c 6f 63 6b 25 21 32 30  3a 79 25 3d 62 6c 6f 63  |lock%!20:y%=bloc|
00007720  6b 25 21 31 36 2d 62 6c  6f 63 6b 25 21 32 34 0d  |k%!16-block%!24.|
00007730  18 f6 14 20 20 62 6c 6f  63 6b 25 21 34 3d 69 63  |...  block%!4=ic|
00007740  6f 6e 25 0d 19 00 23 20  20 c8 99 22 57 69 6d 70  |on%...#  .."Wimp|
00007750  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
00007760  62 6c 6f 63 6b 25 0d 19  0a 15 20 20 21 62 6c 6f  |block%....  !blo|
00007770  63 6b 25 3d 77 69 6e 64  6f 77 25 0d 19 14 10 20  |ck%=window%.... |
00007780  20 62 6c 6f 63 6b 25 21  34 3d 35 0d 19 1e 31 20  | block%!4=5...1 |
00007790  20 62 6c 6f 63 6b 25 21  38 3d 78 25 2b 62 6c 6f  | block%!8=x%+blo|
000077a0  63 6b 25 21 38 3a 62 6c  6f 63 6b 25 21 31 32 3d  |ck%!8:block%!12=|
000077b0  79 25 2b 62 6c 6f 63 6b  25 21 31 32 0d 19 28 33  |y%+block%!12..(3|
000077c0  20 20 62 6c 6f 63 6b 25  21 31 36 3d 78 25 2b 62  |  block%!16=x%+b|
000077d0  6c 6f 63 6b 25 21 31 36  3a 62 6c 6f 63 6b 25 21  |lock%!16:block%!|
000077e0  32 30 3d 79 25 2b 62 6c  6f 63 6b 25 21 32 30 0d  |20=y%+block%!20.|
000077f0  19 32 1d 20 20 62 6c 6f  63 6b 25 21 32 34 3d 30  |.2.  block%!24=0|
00007800  3a 62 6c 6f 63 6b 25 21  32 38 3d 30 0d 19 3c 2d  |:block%!28=0..<-|
00007810  20 20 62 6c 6f 63 6b 25  21 33 32 3d 26 37 46 46  |  block%!32=&7FF|
00007820  46 46 46 46 46 3a 62 6c  6f 63 6b 25 21 33 36 3d  |FFFFF:block%!36=|
00007830  26 37 46 46 46 46 46 46  46 0d 19 46 1e 20 20 c8  |&7FFFFFFF..F.  .|
00007840  99 22 57 69 6d 70 5f 44  72 61 67 42 6f 78 22 2c  |."Wimp_DragBox",|
00007850  2c 62 6c 6f 63 6b 25 0d  19 50 06 20 e1 0d 19 5a  |,block%..P. ...Z|
00007860  06 20 3a 0d 19 64 0c 20  dd 20 f2 54 65 73 74 0d  |. :..d. . .Test.|
00007870  19 6e 41 20 f2 57 69 6d  70 5f 43 68 61 6e 67 65  |.nA .Wimp_Change|
00007880  57 69 6e 64 6f 77 54 69  74 6c 65 28 74 65 73 74  |WindowTitle(test|
00007890  25 2c a4 57 69 6d 70 5f  52 65 61 64 49 63 6f 6e  |%,.Wimp_ReadIcon|
000078a0  54 65 78 74 28 64 65 73  69 67 6e 25 2c 31 29 29  |Text(design%,1))|
000078b0  0d 19 78 4b 20 f2 57 69  6d 70 5f 57 72 69 74 65  |..xK .Wimp_Write|
000078c0  49 63 6f 6e 56 61 6c 69  64 61 74 69 6f 6e 28 74  |IconValidation(t|
000078d0  65 73 74 25 2c 32 2c a4  57 69 6d 70 5f 52 65 61  |est%,2,.Wimp_Rea|
000078e0  64 49 63 6f 6e 56 61 6c  69 64 61 74 69 6f 6e 28  |dIconValidation(|
000078f0  64 65 73 69 67 6e 25 2c  33 29 29 0d 19 82 4b 20  |design%,3))...K |
00007900  f2 57 69 6d 70 5f 57 72  69 74 65 49 63 6f 6e 56  |.Wimp_WriteIconV|
00007910  61 6c 69 64 61 74 69 6f  6e 28 74 65 73 74 25 2c  |alidation(test%,|
00007920  31 2c a4 57 69 6d 70 5f  52 65 61 64 49 63 6f 6e  |1,.Wimp_ReadIcon|
00007930  56 61 6c 69 64 61 74 69  6f 6e 28 64 65 73 69 67  |Validation(desig|
00007940  6e 25 2c 34 29 29 0d 19  8c 4c 20 f2 57 69 6d 70  |n%,4))...L .Wimp|
00007950  5f 57 72 69 74 65 49 63  6f 6e 56 61 6c 69 64 61  |_WriteIconValida|
00007960  74 69 6f 6e 28 74 65 73  74 25 2c 33 2c a4 57 69  |tion(test%,3,.Wi|
00007970  6d 70 5f 52 65 61 64 49  63 6f 6e 56 61 6c 69 64  |mp_ReadIconValid|
00007980  61 74 69 6f 6e 28 64 65  73 69 67 6e 25 2c 31 31  |ation(design%,11|
00007990  29 29 0d 19 96 42 20 c8  8e 20 a4 4d 69 73 63 5f  |))...B .. .Misc_|
000079a0  54 75 72 6e 54 6f 4c 6f  77 65 72 43 61 73 65 28  |TurnToLowerCase(|
000079b0  a4 57 69 6d 70 5f 52 65  61 64 49 63 6f 6e 56 61  |.Wimp_ReadIconVa|
000079c0  6c 69 64 61 74 69 6f 6e  28 74 65 73 74 25 2c 32  |lidation(test%,2|
000079d0  29 29 20 ca 0d 19 a0 29  20 20 20 20 20 20 c9 20  |)) ....)      . |
000079e0  22 73 76 72 65 73 22 20  3a 20 63 75 72 72 65 6e  |"svres" : curren|
000079f0  74 5f 74 6f 70 25 3d 76  72 65 73 31 25 0d 19 aa  |t_top%=vres1%...|
00007a00  30 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |0               |
00007a10  20 20 20 20 20 20 f2 57  69 6d 70 5f 48 61 6c 66  |      .Wimp_Half|
00007a20  53 69 7a 65 28 74 65 73  74 25 2c 32 29 0d 19 b4  |Size(test%,2)...|
00007a30  27 20 20 20 20 20 20 c9  20 22 73 72 65 73 22 20  |'      . "sres" |
00007a40  3a 20 63 75 72 72 65 6e  74 5f 74 6f 70 25 3d 72  |: current_top%=r|
00007a50  65 73 31 25 0d 19 be 53  20 20 20 20 20 20 20 20  |es1%...S        |
00007a60  20 20 20 20 20 20 20 20  20 20 20 20 f2 57 69 6d  |            .Wim|
00007a70  70 5f 57 72 69 74 65 49  63 6f 6e 54 65 78 74 28  |p_WriteIconText(|
00007a80  72 65 73 31 25 2c 33 2c  a4 57 69 6d 70 5f 52 65  |res1%,3,.Wimp_Re|
00007a90  61 64 49 63 6f 6e 54 65  78 74 28 64 65 73 69 67  |adIconText(desig|
00007aa0  6e 25 2c 31 32 29 29 0d  19 c8 2f 20 20 20 20 20  |n%,12)).../     |
00007ab0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00007ac0  57 69 6d 70 5f 48 61 6c  66 53 69 7a 65 28 74 65  |Wimp_HalfSize(te|
00007ad0  73 74 25 2c 32 29 0d 19  d2 27 20 20 20 20 20 20  |st%,2)...'      |
00007ae0  c9 20 22 73 6c 64 72 22  20 3a 20 63 75 72 72 65  |. "sldr" : curre|
00007af0  6e 74 5f 74 6f 70 25 3d  6c 64 72 31 25 0d 19 dc  |nt_top%=ldr1%...|
00007b00  2f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |/               |
00007b10  20 20 20 20 20 f2 57 69  6d 70 5f 48 61 6c 66 53  |     .Wimp_HalfS|
00007b20  69 7a 65 28 74 65 73 74  25 2c 32 29 0d 19 e6 2f  |ize(test%,2).../|
00007b30  20 20 20 20 20 20 c9 20  22 73 74 68 65 72 22 20  |      . "sther" |
00007b40  3a 20 63 75 72 72 65 6e  74 5f 74 6f 70 25 3d 74  |: current_top%=t|
00007b50  68 65 72 6d 69 73 74 6f  72 31 25 0d 19 f0 30 20  |hermistor1%...0 |
00007b60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007b70  20 20 20 20 f2 57 69 6d  70 5f 48 61 6c 66 53 69  |    .Wimp_HalfSi|
00007b80  7a 65 28 74 65 73 74 25  2c 32 29 0d 19 fa 29 20  |ze(test%,2)...) |
00007b90  20 20 20 20 20 c9 20 22  73 73 77 22 20 3a 20 63  |     . "ssw" : c|
00007ba0  75 72 72 65 6e 74 5f 74  6f 70 25 3d 73 77 69 74  |urrent_top%=swit|
00007bb0  63 68 31 25 0d 1a 04 2e  20 20 20 20 20 20 20 20  |ch1%....        |
00007bc0  20 20 20 20 20 20 20 20  20 20 20 f2 57 69 6d 70  |           .Wimp|
00007bd0  5f 46 75 6c 6c 53 69 7a  65 28 74 65 73 74 25 2c  |_FullSize(test%,|
00007be0  32 29 0d 1a 0e 2a 20 20  20 20 20 20 c9 20 22 73  |2)...*      . "s|
00007bf0  77 65 74 22 20 3a 20 63  75 72 72 65 6e 74 5f 74  |wet" : current_t|
00007c00  6f 70 25 3d 4d 70 72 6f  62 65 31 25 0d 1a 18 2f  |op%=Mprobe1%.../|
00007c10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007c20  20 20 20 20 f2 57 69 6d  70 5f 46 75 6c 6c 53 69  |    .Wimp_FullSi|
00007c30  7a 65 28 74 65 73 74 25  2c 32 29 0d 1a 22 06 20  |ze(test%,2)..". |
00007c40  cb 0d 1a 2c 42 20 c8 8e  20 a4 4d 69 73 63 5f 54  |...,B .. .Misc_T|
00007c50  75 72 6e 54 6f 4c 6f 77  65 72 43 61 73 65 28 a4  |urnToLowerCase(.|
00007c60  57 69 6d 70 5f 52 65 61  64 49 63 6f 6e 56 61 6c  |Wimp_ReadIconVal|
00007c70  69 64 61 74 69 6f 6e 28  74 65 73 74 25 2c 31 29  |idation(test%,1)|
00007c80  29 20 ca 0d 1a 36 2c 20  20 20 20 20 20 c9 20 22  |) ...6,      . "|
00007c90  73 76 72 65 73 22 20 3a  20 63 75 72 72 65 6e 74  |svres" : current|
00007ca0  5f 62 6f 74 74 6f 6d 25  3d 76 72 65 73 32 25 0d  |_bottom%=vres2%.|
00007cb0  1a 40 30 20 20 20 20 20  20 20 20 20 20 20 20 20  |.@0             |
00007cc0  20 20 20 20 20 20 20 20  f2 57 69 6d 70 5f 48 61  |        .Wimp_Ha|
00007cd0  6c 66 53 69 7a 65 28 74  65 73 74 25 2c 31 29 0d  |lfSize(test%,1).|
00007ce0  1a 4a 2a 20 20 20 20 20  20 c9 20 22 73 72 65 73  |.J*      . "sres|
00007cf0  22 20 3a 20 63 75 72 72  65 6e 74 5f 62 6f 74 74  |" : current_bott|
00007d00  6f 6d 25 3d 72 65 73 32  25 0d 1a 54 53 20 20 20  |om%=res2%..TS   |
00007d10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007d20  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00007d30  54 65 78 74 28 72 65 73  32 25 2c 33 2c a4 57 69  |Text(res2%,3,.Wi|
00007d40  6d 70 5f 52 65 61 64 49  63 6f 6e 54 65 78 74 28  |mp_ReadIconText(|
00007d50  64 65 73 69 67 6e 25 2c  31 33 29 29 0d 1a 5e 2f  |design%,13))..^/|
00007d60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00007d70  20 20 20 20 f2 57 69 6d  70 5f 48 61 6c 66 53 69  |    .Wimp_HalfSi|
00007d80  7a 65 28 74 65 73 74 25  2c 31 29 0d 1a 68 2a 20  |ze(test%,1)..h* |
00007d90  20 20 20 20 20 c9 20 22  73 6c 64 72 22 20 3a 20  |     . "sldr" : |
00007da0  63 75 72 72 65 6e 74 5f  62 6f 74 74 6f 6d 25 3d  |current_bottom%=|
00007db0  6c 64 72 32 25 0d 1a 72  2f 20 20 20 20 20 20 20  |ldr2%..r/       |
00007dc0  20 20 20 20 20 20 20 20  20 20 20 20 20 f2 57 69  |             .Wi|
00007dd0  6d 70 5f 48 61 6c 66 53  69 7a 65 28 74 65 73 74  |mp_HalfSize(test|
00007de0  25 2c 31 29 0d 1a 7c 32  20 20 20 20 20 20 c9 20  |%,1)..|2      . |
00007df0  22 73 74 68 65 72 22 20  3a 20 63 75 72 72 65 6e  |"sther" : curren|
00007e00  74 5f 62 6f 74 74 6f 6d  25 3d 74 68 65 72 6d 69  |t_bottom%=thermi|
00007e10  73 74 6f 72 32 25 0d 1a  86 30 20 20 20 20 20 20  |stor2%...0      |
00007e20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 f2  |               .|
00007e30  57 69 6d 70 5f 48 61 6c  66 53 69 7a 65 28 74 65  |Wimp_HalfSize(te|
00007e40  73 74 25 2c 31 29 0d 1a  90 2c 20 20 20 20 20 20  |st%,1)...,      |
00007e50  c9 20 22 73 73 77 22 20  3a 20 63 75 72 72 65 6e  |. "ssw" : curren|
00007e60  74 5f 62 6f 74 74 6f 6d  25 3d 73 77 69 74 63 68  |t_bottom%=switch|
00007e70  32 25 0d 1a 9a 2e 20 20  20 20 20 20 20 20 20 20  |2%....          |
00007e80  20 20 20 20 20 20 20 20  20 f2 57 69 6d 70 5f 46  |         .Wimp_F|
00007e90  75 6c 6c 53 69 7a 65 28  74 65 73 74 25 2c 31 29  |ullSize(test%,1)|
00007ea0  0d 1a a4 2d 20 20 20 20  20 20 c9 20 22 73 77 65  |...-      . "swe|
00007eb0  74 22 20 3a 20 63 75 72  72 65 6e 74 5f 62 6f 74  |t" : current_bot|
00007ec0  74 6f 6d 25 3d 4d 70 72  6f 62 65 32 25 0d 1a ae  |tom%=Mprobe2%...|
00007ed0  2f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |/               |
00007ee0  20 20 20 20 20 f2 57 69  6d 70 5f 46 75 6c 6c 53  |     .Wimp_FullS|
00007ef0  69 7a 65 28 74 65 73 74  25 2c 31 29 0d 1a b8 06  |ize(test%,1)....|
00007f00  20 cb 0d 1a c2 39 20 f2  55 73 65 72 5f 4f 70 65  | ....9 .User_Ope|
00007f10  6e 54 65 73 74 41 4e 44  54 6f 6f 6c 73 28 63 75  |nTestANDTools(cu|
00007f20  72 72 65 6e 74 5f 74 6f  70 25 2c 63 75 72 72 65  |rrent_top%,curre|
00007f30  6e 74 5f 62 6f 74 74 6f  6d 25 29 0d 1a cc 0f 20  |nt_bottom%).... |
00007f40  f2 43 61 6c 63 75 6c 61  74 65 0d 1a d6 06 20 e1  |.Calculate.... .|
00007f50  0d 1a e0 06 20 3a 0d 1a  ea 11 20 dd 20 f2 43 61  |.... :.... . .Ca|
00007f60  6c 63 75 6c 61 74 65 0d  1a f4 1f 20 ea 20 76 6f  |lculate.... . vo|
00007f70  75 74 2c 76 6f 75 74 24  2c 72 31 24 2c 72 32 24  |ut,vout$,r1$,r2$|
00007f80  2c 71 25 2c 61 24 0d 1a  fe 16 20 c8 8e 20 63 75  |,q%,a$.... .. cu|
00007f90  72 72 65 6e 74 5f 74 6f  70 25 20 ca 0d 1b 08 4d  |rrent_top% ....M|
00007fa0  20 20 20 20 20 20 c9 20  76 72 65 73 31 25 2c 6c  |      . vres1%,l|
00007fb0  64 72 31 25 2c 74 68 65  72 6d 69 73 74 6f 72 31  |dr1%,thermistor1|
00007fc0  25 3a 20 72 31 24 3d a4  57 69 6d 70 5f 52 65 61  |%: r1$=.Wimp_Rea|
00007fd0  64 49 63 6f 6e 54 65 78  74 28 63 75 72 72 65 6e  |dIconText(curren|
00007fe0  74 5f 74 6f 70 25 2c 39  29 0d 1b 12 39 20 20 20  |t_top%,9)...9   |
00007ff0  20 20 20 c9 20 72 65 73  31 25 3a 20 72 31 24 3d  |   . res1%: r1$=|
00008000  a4 57 69 6d 70 5f 52 65  61 64 49 63 6f 6e 54 65  |.Wimp_ReadIconTe|
00008010  78 74 28 63 75 72 72 65  6e 74 5f 74 6f 70 25 2c  |xt(current_top%,|
00008020  33 29 0d 1b 1c 3c 20 20  20 20 20 20 c9 20 4d 70  |3)...<      . Mp|
00008030  72 6f 62 65 31 25 3a 20  72 31 24 3d a4 57 69 6d  |robe1%: r1$=.Wim|
00008040  70 5f 52 65 61 64 49 63  6f 6e 54 65 78 74 28 63  |p_ReadIconText(c|
00008050  75 72 72 65 6e 74 5f 74  6f 70 25 2c 37 29 0d 1b  |urrent_top%,7)..|
00008060  26 33 20 20 20 20 20 20  c9 20 73 77 69 74 63 68  |&3      . switch|
00008070  31 25 3a 20 21 62 6c 6f  63 6b 25 3d 73 77 69 74  |1%: !block%=swit|
00008080  63 68 31 25 20 3a 20 62  6c 6f 63 6b 25 21 34 3d  |ch1% : block%!4=|
00008090  32 0d 1b 30 37 20 20 20  20 20 20 20 20 20 20 20  |2..07           |
000080a0  20 20 20 20 20 20 20 20  20 20 c8 99 20 22 57 69  |          .. "Wi|
000080b0  6d 70 5f 47 65 74 49 63  6f 6e 53 74 61 74 65 22  |mp_GetIconState"|
000080c0  2c 2c 62 6c 6f 63 6b 25  0d 1b 3a 4c 20 20 20 20  |,,block%..:L    |
000080d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000080e0  20 e7 20 28 28 62 6c 6f  63 6b 25 21 32 34 29 20  | . ((block%!24) |
000080f0  80 20 28 31 3c 3c 32 31  29 29 3e 30 20 8c 20 72  |. (1<<21))>0 . r|
00008100  31 24 3d 22 30 22 20 8b  20 72 31 24 3d 22 39 39  |1$="0" . r1$="99|
00008110  39 39 4d 22 0d 1b 44 06  20 cb 0d 1b 4e 19 20 c8  |99M"..D. ...N. .|
00008120  8e 20 63 75 72 72 65 6e  74 5f 62 6f 74 74 6f 6d  |. current_bottom|
00008130  25 20 ca 0d 1b 58 50 20  20 20 20 20 20 c9 20 76  |% ...XP      . v|
00008140  72 65 73 32 25 2c 6c 64  72 32 25 2c 74 68 65 72  |res2%,ldr2%,ther|
00008150  6d 69 73 74 6f 72 32 25  3a 20 72 32 24 3d a4 57  |mistor2%: r2$=.W|
00008160  69 6d 70 5f 52 65 61 64  49 63 6f 6e 54 65 78 74  |imp_ReadIconText|
00008170  28 63 75 72 72 65 6e 74  5f 62 6f 74 74 6f 6d 25  |(current_bottom%|
00008180  2c 39 29 0d 1b 62 3c 20  20 20 20 20 20 c9 20 72  |,9)..b<      . r|
00008190  65 73 32 25 3a 20 72 32  24 3d a4 57 69 6d 70 5f  |es2%: r2$=.Wimp_|
000081a0  52 65 61 64 49 63 6f 6e  54 65 78 74 28 63 75 72  |ReadIconText(cur|
000081b0  72 65 6e 74 5f 62 6f 74  74 6f 6d 25 2c 33 29 0d  |rent_bottom%,3).|
000081c0  1b 6c 3f 20 20 20 20 20  20 c9 20 4d 70 72 6f 62  |.l?      . Mprob|
000081d0  65 32 25 3a 20 72 32 24  3d a4 57 69 6d 70 5f 52  |e2%: r2$=.Wimp_R|
000081e0  65 61 64 49 63 6f 6e 54  65 78 74 28 63 75 72 72  |eadIconText(curr|
000081f0  65 6e 74 5f 62 6f 74 74  6f 6d 25 2c 37 29 0d 1b  |ent_bottom%,7)..|
00008200  76 33 20 20 20 20 20 20  c9 20 73 77 69 74 63 68  |v3      . switch|
00008210  32 25 3a 20 21 62 6c 6f  63 6b 25 3d 73 77 69 74  |2%: !block%=swit|
00008220  63 68 32 25 20 3a 20 62  6c 6f 63 6b 25 21 34 3d  |ch2% : block%!4=|
00008230  32 0d 1b 80 37 20 20 20  20 20 20 20 20 20 20 20  |2...7           |
00008240  20 20 20 20 20 20 20 20  20 20 c8 99 20 22 57 69  |          .. "Wi|
00008250  6d 70 5f 47 65 74 49 63  6f 6e 53 74 61 74 65 22  |mp_GetIconState"|
00008260  2c 2c 62 6c 6f 63 6b 25  0d 1b 8a 4c 20 20 20 20  |,,block%...L    |
00008270  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00008280  20 e7 20 28 28 62 6c 6f  63 6b 25 21 32 34 29 20  | . ((block%!24) |
00008290  80 20 28 31 3c 3c 32 31  29 29 3e 30 20 8c 20 72  |. (1<<21))>0 . r|
000082a0  32 24 3d 22 30 22 20 8b  20 72 32 24 3d 22 39 39  |2$="0" . r2$="99|
000082b0  39 39 4d 22 0d 1b 94 06  20 cb 0d 1b 9e 26 20 f2  |99M".... ....& .|
000082c0  57 69 6d 70 5f 57 72 69  74 65 49 63 6f 6e 54 65  |Wimp_WriteIconTe|
000082d0  78 74 28 74 65 73 74 25  2c 32 30 2c 72 32 24 29  |xt(test%,20,r2$)|
000082e0  0d 1b a8 30 20 f2 57 69  6d 70 5f 57 72 69 74 65  |...0 .Wimp_Write|
000082f0  49 63 6f 6e 54 65 78 74  28 74 65 73 74 25 2c 31  |IconText(test%,1|
00008300  39 2c 72 31 24 2b 22 20  2b 20 22 2b 72 32 24 29  |9,r1$+" + "+r2$)|
00008310  0d 1b b2 26 20 c8 8e 20  a4 4d 69 73 63 5f 54 75  |...& .. .Misc_Tu|
00008320  72 6e 54 6f 4c 6f 77 65  72 43 61 73 65 28 c2 72  |rnToLowerCase(.r|
00008330  31 24 29 29 20 ca 0d 1b  bc 1a 20 20 20 20 20 20  |1$)) .....      |
00008340  c9 20 22 72 22 3a 20 72  31 24 3d c0 72 31 24 29  |. "r": r1$=.r1$)|
00008350  0d 1b c6 20 20 20 20 20  20 20 c9 20 22 6b 22 3a  |...       . "k":|
00008360  20 72 31 24 3d c0 72 31  24 29 2b 22 30 30 30 22  | r1$=.r1$)+"000"|
00008370  0d 1b d0 23 20 20 20 20  20 20 c9 20 22 6d 22 3a  |...#      . "m":|
00008380  20 72 31 24 3d c0 72 31  24 29 2b 22 30 30 30 30  | r1$=.r1$)+"0000|
00008390  30 30 22 0d 1b da 06 20  cb 0d 1b e4 26 20 c8 8e  |00".... ....& ..|
000083a0  20 a4 4d 69 73 63 5f 54  75 72 6e 54 6f 4c 6f 77  | .Misc_TurnToLow|
000083b0  65 72 43 61 73 65 28 c2  72 32 24 29 29 20 ca 0d  |erCase(.r2$)) ..|
000083c0  1b ee 1a 20 20 20 20 20  20 c9 20 22 72 22 3a 20  |...      . "r": |
000083d0  72 32 24 3d c0 72 32 24  29 0d 1b f8 20 20 20 20  |r2$=.r2$)...    |
000083e0  20 20 20 c9 20 22 6b 22  3a 20 72 32 24 3d c0 72  |   . "k": r2$=.r|
000083f0  32 24 29 2b 22 30 30 30  22 0d 1c 02 23 20 20 20  |2$)+"000"...#   |
00008400  20 20 20 c9 20 22 6d 22  3a 20 72 32 24 3d c0 72  |   . "m": r2$=.r|
00008410  32 24 29 2b 22 30 30 30  30 30 30 22 0d 1c 0c 06  |2$)+"000000"....|
00008420  20 cb 0d 1c 16 2e 20 e7  20 bb 28 72 31 24 29 3d  | ..... . .(r1$)=|
00008430  30 20 80 20 bb 28 72 32  24 29 3d 30 20 8c 20 72  |0 . .(r2$)=0 . r|
00008440  31 24 3d 22 31 22 20 3a  20 72 32 24 3d 22 31 22  |1$="1" : r2$="1"|
00008450  0d 1c 20 39 20 76 6f 75  74 3d 28 a8 28 a0 28 72  |.. 9 vout=(.(.(r|
00008460  32 24 2b 22 2f 22 2b 22  28 22 2b 72 31 24 2b 22  |2$+"/"+"("+r1$+"|
00008470  20 2b 20 22 2b 72 32 24  2b 22 29 2a 35 22 29 2a  | + "+r2$+")*5")*|
00008480  31 30 30 29 29 2f 31 30  30 0d 1c 2a 15 20 76 6f  |100))/100..*. vo|
00008490  75 74 24 3d c0 c3 20 76  6f 75 74 2c 34 29 0d 1c  |ut$=.. vout,4)..|
000084a0  34 12 20 e7 20 76 6f 75  74 3e 3d 30 2e 37 20 8c  |4. . vout>=0.7 .|
000084b0  0d 1c 3e 51 20 20 20 20  20 20 20 20 20 20 20 20  |..>Q            |
000084c0  20 20 20 20 61 24 3d a4  4d 69 73 63 5f 54 75 72  |    a$=.Misc_Tur|
000084d0  6e 54 6f 4c 6f 77 65 72  43 61 73 65 28 c0 a4 57  |nToLowerCase(..W|
000084e0  69 6d 70 5f 52 65 61 64  49 63 6f 6e 56 61 6c 69  |imp_ReadIconVali|
000084f0  64 61 74 69 6f 6e 28 74  65 73 74 25 2c 33 29 29  |dation(test%,3))|
00008500  29 0d 1c 48 4d 20 20 20  20 20 20 20 20 20 20 20  |)..HM           |
00008510  20 20 20 20 20 e7 20 61  24 3c 3e 22 73 62 75 7a  |     . a$<>"sbuz|
00008520  7a 22 20 8c 20 f2 57 69  6d 70 5f 57 72 69 74 65  |z" . .Wimp_Write|
00008530  49 63 6f 6e 56 61 6c 69  64 61 74 69 6f 6e 28 74  |IconValidation(t|
00008540  65 73 74 25 2c 33 2c 61  24 2b 22 32 22 29 0d 1c  |est%,3,a$+"2")..|
00008550  52 2c 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |R,              |
00008560  20 20 e7 20 61 24 3d 22  73 62 75 7a 7a 22 20 8c  |  . a$="sbuzz" .|
00008570  20 62 75 7a 7a 65 72 25  3d b9 0d 1c 5c 06 20 cc  | buzzer%=...\. .|
00008580  0d 1c 66 51 20 20 20 20  20 20 20 20 20 20 20 20  |..fQ            |
00008590  20 20 20 20 61 24 3d a4  4d 69 73 63 5f 54 75 72  |    a$=.Misc_Tur|
000085a0  6e 54 6f 4c 6f 77 65 72  43 61 73 65 28 c0 a4 57  |nToLowerCase(..W|
000085b0  69 6d 70 5f 52 65 61 64  49 63 6f 6e 56 61 6c 69  |imp_ReadIconVali|
000085c0  64 61 74 69 6f 6e 28 74  65 73 74 25 2c 33 29 29  |dation(test%,3))|
000085d0  29 0d 1c 70 4d 20 20 20  20 20 20 20 20 20 20 20  |)..pM           |
000085e0  20 20 20 20 20 e7 20 61  24 3c 3e 22 73 62 75 7a  |     . a$<>"sbuz|
000085f0  7a 22 20 8c 20 f2 57 69  6d 70 5f 57 72 69 74 65  |z" . .Wimp_Write|
00008600  49 63 6f 6e 56 61 6c 69  64 61 74 69 6f 6e 28 74  |IconValidation(t|
00008610  65 73 74 25 2c 33 2c 61  24 2b 22 31 22 29 0d 1c  |est%,3,a$+"1")..|
00008620  7a 2c 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |z,              |
00008630  20 20 e7 20 61 24 3d 22  73 62 75 7a 7a 22 20 8c  |  . a$="sbuzz" .|
00008640  20 62 75 7a 7a 65 72 25  3d a3 0d 1c 84 06 20 cd  | buzzer%=..... .|
00008650  0d 1c 8e 2c 20 f2 57 69  6d 70 5f 57 72 69 74 65  |..., .Wimp_Write|
00008660  49 63 6f 6e 54 65 78 74  28 74 65 73 74 25 2c 32  |IconText(test%,2|
00008670  33 2c 76 6f 75 74 24 2b  22 56 22 29 0d 1c 98 27  |3,vout$+"V")...'|
00008680  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00008690  54 65 78 74 28 74 65 73  74 25 2c 35 2c 76 6f 75  |Text(test%,5,vou|
000086a0  74 24 29 0d 1c a2 06 20  e1 0d 1c ac 06 20 3a 0d  |t$).... ..... :.|
000086b0  1c b6 1f 20 dd 20 f2 55  73 65 72 5f 4f 70 65 6e  |... . .User_Open|
000086c0  44 65 73 69 67 6e 41 4e  44 54 6f 6f 6c 73 0d 1c  |DesignANDTools..|
000086d0  c0 0f 20 ea 20 61 25 2c  62 25 2c 63 25 0d 1c ca  |.. . a%,b%,c%...|
000086e0  14 20 21 62 6c 6f 63 6b  25 3d 64 65 73 69 67 6e  |. !block%=design|
000086f0  25 0d 1c d4 25 20 c8 99  20 22 57 69 6d 70 5f 47  |%...% .. "Wimp_G|
00008700  65 74 57 69 6e 64 6f 77  53 74 61 74 65 22 2c 2c  |etWindowState",,|
00008710  62 6c 6f 63 6b 25 0d 1c  de 11 20 62 6c 6f 63 6b  |block%.... block|
00008720  25 21 32 38 3d 2d 31 0d  1c e8 21 20 c8 99 20 22  |%!28=-1...! .. "|
00008730  57 69 6d 70 5f 4f 70 65  6e 57 69 6e 64 6f 77 22  |Wimp_OpenWindow"|
00008740  2c 2c 62 6c 6f 63 6b 25  0d 1c f2 29 20 e7 20 a4  |,,block%...) . .|
00008750  57 69 6d 70 5f 4d 65 6e  75 54 69 63 6b 65 64 28  |Wimp_MenuTicked(|
00008760  64 65 73 69 67 6e 5f 6d  65 6e 75 25 2c 32 29 20  |design_menu%,2) |
00008770  8c 0d 1c fc 2d 20 61 25  3d 62 6c 6f 63 6b 25 21  |....- a%=block%!|
00008780  34 20 3a 20 62 25 3d 62  6c 6f 63 6b 25 21 38 20  |4 : b%=block%!8 |
00008790  3a 20 63 25 3d 62 6c 6f  63 6b 25 21 31 36 0d 1d  |: c%=block%!16..|
000087a0  06 14 20 21 62 6c 6f 63  6b 25 3d 74 6f 6f 6c 73  |.. !block%=tools|
000087b0  32 25 0d 1d 10 21 20 62  6c 6f 63 6b 25 21 34 3d  |2%...! block%!4=|
000087c0  61 25 20 3a 62 6c 6f 63  6b 25 21 38 3d 62 25 2d  |a% :block%!8=b%-|
000087d0  31 33 30 0d 1d 1a 25 20  62 6c 6f 63 6b 25 21 31  |130...% block%!1|
000087e0  32 3d 61 25 2b 34 36 32  20 3a 62 6c 6f 63 6b 25  |2=a%+462 :block%|
000087f0  21 31 36 3d 62 25 2d 34  0d 1d 24 11 20 62 6c 6f  |!16=b%-4..$. blo|
00008800  63 6b 25 21 32 38 3d 2d  31 0d 1d 2e 21 20 c8 99  |ck%!28=-1...! ..|
00008810  20 22 57 69 6d 70 5f 4f  70 65 6e 57 69 6e 64 6f  | "Wimp_OpenWindo|
00008820  77 22 2c 2c 62 6c 6f 63  6b 25 0d 1d 38 14 20 21  |w",,block%..8. !|
00008830  62 6c 6f 63 6b 25 3d 74  6f 6f 6c 73 31 25 0d 1d  |block%=tools1%..|
00008840  42 25 20 62 6c 6f 63 6b  25 21 34 3d 61 25 2d 32  |B% block%!4=a%-2|
00008850  35 30 20 3a 62 6c 6f 63  6b 25 21 38 3d 62 25 2d  |50 :block%!8=b%-|
00008860  31 31 36 0d 1d 4c 23 20  62 6c 6f 63 6b 25 21 31  |116..L# block%!1|
00008870  32 3d 61 25 2b 31 35 36  20 3a 62 6c 6f 63 6b 25  |2=a%+156 :block%|
00008880  21 31 36 3d 63 25 0d 1d  56 11 20 62 6c 6f 63 6b  |!16=c%..V. block|
00008890  25 21 32 38 3d 2d 31 0d  1d 60 21 20 c8 99 20 22  |%!28=-1..`! .. "|
000088a0  57 69 6d 70 5f 4f 70 65  6e 57 69 6e 64 6f 77 22  |Wimp_OpenWindow"|
000088b0  2c 2c 62 6c 6f 63 6b 25  0d 1d 6a 06 20 cd 0d 1d  |,,block%..j. ...|
000088c0  74 06 20 e1 0d 1d 7e 06  20 3a 0d 1d 88 28 20 dd  |t. ...~. :...( .|
000088d0  20 f2 55 73 65 72 5f 4f  70 65 6e 54 65 73 74 41  | .User_OpenTestA|
000088e0  4e 44 54 6f 6f 6c 73 28  74 6f 70 25 2c 62 6f 74  |NDTools(top%,bot|
000088f0  25 29 0d 1d 92 0f 20 ea  20 61 25 2c 62 25 2c 63  |%).... . a%,b%,c|
00008900  25 0d 1d 9c 12 20 21 62  6c 6f 63 6b 25 3d 74 65  |%.... !block%=te|
00008910  73 74 25 0d 1d a6 25 20  c8 99 20 22 57 69 6d 70  |st%...% .. "Wimp|
00008920  5f 47 65 74 57 69 6e 64  6f 77 53 74 61 74 65 22  |_GetWindowState"|
00008930  2c 2c 62 6c 6f 63 6b 25  0d 1d b0 11 20 62 6c 6f  |,,block%.... blo|
00008940  63 6b 25 21 32 38 3d 2d  31 0d 1d ba 21 20 c8 99  |ck%!28=-1...! ..|
00008950  20 22 57 69 6d 70 5f 4f  70 65 6e 57 69 6e 64 6f  | "Wimp_OpenWindo|
00008960  77 22 2c 2c 62 6c 6f 63  6b 25 0d 1d c4 2d 20 61  |w",,block%...- a|
00008970  25 3d 62 6c 6f 63 6b 25  21 34 20 3a 20 62 25 3d  |%=block%!4 : b%=|
00008980  62 6c 6f 63 6b 25 21 38  20 3a 20 63 25 3d 62 6c  |block%!8 : c%=bl|
00008990  6f 63 6b 25 21 31 36 0d  1d ce 11 20 21 62 6c 6f  |ock%!16.... !blo|
000089a0  63 6b 25 3d 74 6f 70 25  0d 1d d8 25 20 62 6c 6f  |ck%=top%...% blo|
000089b0  63 6b 25 21 34 3d 61 25  2d 33 34 38 20 3a 62 6c  |ck%!4=a%-348 :bl|
000089c0  6f 63 6b 25 21 38 3d 63  25 2d 32 36 34 0d 1d e2  |ock%!8=c%-264...|
000089d0  1f 20 62 6c 6f 63 6b 25  21 31 32 3d 61 25 20 3a  |. block%!12=a% :|
000089e0  62 6c 6f 63 6b 25 21 31  36 3d 63 25 0d 1d ec 11  |block%!16=c%....|
000089f0  20 62 6c 6f 63 6b 25 21  32 38 3d 2d 31 0d 1d f6  | block%!28=-1...|
00008a00  21 20 c8 99 20 22 57 69  6d 70 5f 4f 70 65 6e 57  |! .. "Wimp_OpenW|
00008a10  69 6e 64 6f 77 22 2c 2c  62 6c 6f 63 6b 25 0d 1e  |indow",,block%..|
00008a20  00 11 20 21 62 6c 6f 63  6b 25 3d 62 6f 74 25 0d  |.. !block%=bot%.|
00008a30  1e 0a 25 20 62 6c 6f 63  6b 25 21 34 3d 61 25 2d  |..% block%!4=a%-|
00008a40  33 34 38 20 3a 62 6c 6f  63 6b 25 21 38 3d 63 25  |348 :block%!8=c%|
00008a50  2d 35 32 38 0d 1e 14 23  20 62 6c 6f 63 6b 25 21  |-528...# block%!|
00008a60  31 32 3d 61 25 20 3a 62  6c 6f 63 6b 25 21 31 36  |12=a% :block%!16|
00008a70  3d 63 25 2d 32 36 34 0d  1e 1e 11 20 62 6c 6f 63  |=c%-264.... bloc|
00008a80  6b 25 21 32 38 3d 2d 31  0d 1e 28 21 20 c8 99 20  |k%!28=-1..(! .. |
00008a90  22 57 69 6d 70 5f 4f 70  65 6e 57 69 6e 64 6f 77  |"Wimp_OpenWindow|
00008aa0  22 2c 2c 62 6c 6f 63 6b  25 0d 1e 32 06 20 e1 0d  |",,block%..2. ..|
00008ab0  1e 3c 06 20 3a 0d 1e 46  20 20 dd 20 a4 4d 69 73  |.<. :..F  . .Mis|
00008ac0  63 5f 54 75 72 6e 54 6f  4c 6f 77 65 72 43 61 73  |c_TurnToLowerCas|
00008ad0  65 28 61 24 29 0d 1e 50  0c 20 ea 20 71 24 2c 71  |e(a$)..P. . q$,q|
00008ae0  25 0d 1e 5a 0a 20 71 24  3d 22 22 0d 1e 64 12 20  |%..Z. q$=""..d. |
00008af0  e3 20 71 25 3d 31 20 b8  20 a9 20 61 24 0d 1e 6e  |. q%=1 . . a$..n|
00008b00  1e 20 71 24 2b 3d bd 28  28 97 20 c1 61 24 2c 71  |. q$+=.((. .a$,q|
00008b10  25 2c 31 29 29 20 84 20  33 32 29 0d 1e 78 06 20  |%,1)) . 32)..x. |
00008b20  ed 0d 1e 82 08 20 3d 71  24 0d 1e 8c 06 20 3a 0d  |..... =q$.... :.|
00008b30  1e 96 3a 20 dd 20 a4 57  69 6d 70 5f 43 72 65 61  |..: . .Wimp_Crea|
00008b40  74 65 49 63 6f 6e 28 77  68 61 6e 25 2c 69 78 25  |teIcon(whan%,ix%|
00008b50  2c 69 79 25 2c 69 77 25  2c 69 68 25 2c 66 6c 61  |,iy%,iw%,ih%,fla|
00008b60  67 25 2c 74 65 78 74 24  29 0d 1e a0 0f 20 ea 20  |g%,text$).... . |
00008b70  69 68 61 6e 64 6c 65 25  0d 1e aa 12 20 21 62 6c  |ihandle%.... !bl|
00008b80  6f 63 6b 25 3d 77 68 61  6e 25 0d 1e b4 11 20 62  |ock%=whan%.... b|
00008b90  6c 6f 63 6b 25 21 34 3d  69 78 25 0d 1e be 11 20  |lock%!4=ix%.... |
00008ba0  62 6c 6f 63 6b 25 21 38  3d 69 79 25 0d 1e c8 16  |block%!8=iy%....|
00008bb0  20 62 6c 6f 63 6b 25 21  31 32 3d 69 78 25 2b 69  | block%!12=ix%+i|
00008bc0  77 25 0d 1e d2 16 20 62  6c 6f 63 6b 25 21 31 36  |w%.... block%!16|
00008bd0  3d 69 79 25 2b 69 68 25  0d 1e dc 14 20 62 6c 6f  |=iy%+ih%.... blo|
00008be0  63 6b 25 21 32 30 3d 66  6c 61 67 25 0d 1e e6 17  |ck%!20=flag%....|
00008bf0  20 24 28 62 6c 6f 63 6b  25 2b 32 34 29 3d 74 65  | $(block%+24)=te|
00008c00  78 74 24 0d 1e f0 2c 20  c8 99 20 22 57 69 6d 70  |xt$..., .. "Wimp|
00008c10  5f 43 72 65 61 74 65 49  63 6f 6e 22 2c 2c 62 6c  |_CreateIcon",,bl|
00008c20  6f 63 6b 25 20 b8 20 69  68 61 6e 64 6c 65 25 0d  |ock% . ihandle%.|
00008c30  1e fa 0e 20 3d 69 68 61  6e 64 6c 65 25 0d 1f 04  |... =ihandle%...|
00008c40  06 20 3a 0d 1f 0e 31 20  dd 20 f2 57 69 6d 70 5f  |. :...1 . .Wimp_|
00008c50  53 65 74 49 63 6f 6e 42  75 74 74 6f 6e 54 79 70  |SetIconButtonTyp|
00008c60  65 28 77 68 61 6e 25 2c  69 63 6f 6e 25 2c 74 79  |e(whan%,icon%,ty|
00008c70  70 65 25 29 0d 1f 18 4d  20 21 62 6c 6f 63 6b 25  |pe%)...M !block%|
00008c80  3d 77 68 61 6e 25 20 3a  20 62 6c 6f 63 6b 25 21  |=whan% : block%!|
00008c90  34 3d 69 63 6f 6e 25 20  3a 20 62 6c 6f 63 6b 25  |4=icon% : block%|
00008ca0  21 38 3d 28 74 79 70 65  25 3c 3c 31 32 29 20 3a  |!8=(type%<<12) :|
00008cb0  20 62 6c 6f 63 6b 25 21  31 32 3d 26 46 3c 3c 31  | block%!12=&F<<1|
00008cc0  32 0d 1f 22 23 20 c8 99  20 22 57 69 6d 70 5f 53  |2.."# .. "Wimp_S|
00008cd0  65 74 49 63 6f 6e 53 74  61 74 65 22 2c 2c 62 6c  |etIconState",,bl|
00008ce0  6f 63 6b 25 0d 1f 2c 06  20 e1 0d 1f 36 06 20 3a  |ock%..,. ...6. :|
00008cf0  0d 1f 40 26 20 dd 20 a4  57 69 6d 70 5f 52 65 61  |..@& . .Wimp_Rea|
00008d00  64 49 63 6f 6e 54 65 78  74 28 77 68 61 6e 25 2c  |dIconText(whan%,|
00008d10  69 63 6f 6e 25 29 0d 1f  4a 12 20 21 62 6c 6f 63  |icon%)..J. !bloc|
00008d20  6b 25 3d 77 68 61 6e 25  0d 1f 54 13 20 62 6c 6f  |k%=whan%..T. blo|
00008d30  63 6b 25 21 34 3d 69 63  6f 6e 25 0d 1f 5e 23 20  |ck%!4=icon%..^# |
00008d40  c8 99 20 22 57 69 6d 70  5f 47 65 74 49 63 6f 6e  |.. "Wimp_GetIcon|
00008d50  53 74 61 74 65 22 2c 2c  62 6c 6f 63 6b 25 0d 1f  |State",,block%..|
00008d60  68 12 20 3d 24 28 62 6c  6f 63 6b 25 21 32 38 29  |h. =$(block%!28)|
00008d70  0d 1f 72 06 20 3a 0d 1f  7c 2d 20 dd 20 f2 57 69  |..r. :..|- . .Wi|
00008d80  6d 70 5f 57 72 69 74 65  49 63 6f 6e 54 65 78 74  |mp_WriteIconText|
00008d90  28 77 68 61 6e 25 2c 69  63 6f 6e 25 2c 74 65 78  |(whan%,icon%,tex|
00008da0  74 24 29 0d 1f 86 12 20  21 62 6c 6f 63 6b 25 3d  |t$).... !block%=|
00008db0  77 68 61 6e 25 0d 1f 90  13 20 62 6c 6f 63 6b 25  |whan%.... block%|
00008dc0  21 34 3d 69 63 6f 6e 25  0d 1f 9a 23 20 c8 99 20  |!4=icon%...# .. |
00008dd0  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00008de0  74 65 22 2c 2c 62 6c 6f  63 6b 25 0d 1f a4 17 20  |te",,block%.... |
00008df0  24 28 62 6c 6f 63 6b 25  21 32 38 29 3d 74 65 78  |$(block%!28)=tex|
00008e00  74 24 0d 1f ae 1d 20 62  6c 6f 63 6b 25 21 38 3d  |t$.... block%!8=|
00008e10  30 20 3a 20 62 6c 6f 63  6b 25 21 31 32 3d 30 0d  |0 : block%!12=0.|
00008e20  1f b8 23 20 c8 99 20 22  57 69 6d 70 5f 53 65 74  |..# .. "Wimp_Set|
00008e30  49 63 6f 6e 53 74 61 74  65 22 2c 2c 62 6c 6f 63  |IconState",,bloc|
00008e40  6b 25 0d 1f c2 06 20 e1  0d 1f cc 06 20 3a 0d 1f  |k%.... ..... :..|
00008e50  d6 2c 20 dd 20 a4 57 69  6d 70 5f 52 65 61 64 49  |., . .Wimp_ReadI|
00008e60  63 6f 6e 56 61 6c 69 64  61 74 69 6f 6e 28 77 68  |conValidation(wh|
00008e70  61 6e 25 2c 69 63 6f 6e  25 29 0d 1f e0 12 20 21  |an%,icon%).... !|
00008e80  62 6c 6f 63 6b 25 3d 77  68 61 6e 25 0d 1f ea 13  |block%=whan%....|
00008e90  20 62 6c 6f 63 6b 25 21  34 3d 69 63 6f 6e 25 0d  | block%!4=icon%.|
00008ea0  1f f4 23 20 c8 99 20 22  57 69 6d 70 5f 47 65 74  |..# .. "Wimp_Get|
00008eb0  49 63 6f 6e 53 74 61 74  65 22 2c 2c 62 6c 6f 63  |IconState",,bloc|
00008ec0  6b 25 0d 1f fe 12 20 3d  24 28 62 6c 6f 63 6b 25  |k%.... =$(block%|
00008ed0  21 33 32 29 0d 20 08 06  20 3a 0d 20 12 34 20 dd  |!32). .. :. .4 .|
00008ee0  20 f2 57 69 6d 70 5f 57  72 69 74 65 49 63 6f 6e  | .Wimp_WriteIcon|
00008ef0  56 61 6c 69 64 61 74 69  6f 6e 28 77 68 61 6e 25  |Validation(whan%|
00008f00  2c 69 63 6f 6e 25 2c 76  61 6c 69 64 24 29 0d 20  |,icon%,valid$). |
00008f10  1c 12 20 21 62 6c 6f 63  6b 25 3d 77 68 61 6e 25  |.. !block%=whan%|
00008f20  0d 20 26 13 20 62 6c 6f  63 6b 25 21 34 3d 69 63  |. &. block%!4=ic|
00008f30  6f 6e 25 0d 20 30 23 20  c8 99 20 22 57 69 6d 70  |on%. 0# .. "Wimp|
00008f40  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
00008f50  62 6c 6f 63 6b 25 0d 20  3a 18 20 24 28 62 6c 6f  |block%. :. $(blo|
00008f60  63 6b 25 21 33 32 29 3d  76 61 6c 69 64 24 0d 20  |ck%!32)=valid$. |
00008f70  44 1d 20 62 6c 6f 63 6b  25 21 38 3d 30 20 3a 20  |D. block%!8=0 : |
00008f80  62 6c 6f 63 6b 25 21 31  32 3d 30 0d 20 4e 23 20  |block%!12=0. N# |
00008f90  c8 99 20 22 57 69 6d 70  5f 53 65 74 49 63 6f 6e  |.. "Wimp_SetIcon|
00008fa0  53 74 61 74 65 22 2c 2c  62 6c 6f 63 6b 25 0d 20  |State",,block%. |
00008fb0  58 06 20 e1 0d 20 62 06  20 3a 0d 20 6c 22 20 dd  |X. .. b. :. l" .|
00008fc0  20 f2 57 69 6d 70 5f 53  68 6f 77 4d 65 6e 75 28  | .Wimp_ShowMenu(|
00008fd0  6d 65 6e 75 25 2c 78 25  2c 79 25 29 0d 20 76 26  |menu%,x%,y%). v&|
00008fe0  20 c8 99 20 22 57 69 6d  70 5f 43 72 65 61 74 65  | .. "Wimp_Create|
00008ff0  4d 65 6e 75 22 2c 2c 6d  65 6e 75 25 2c 78 25 2c  |Menu",,menu%,x%,|
00009000  79 25 0d 20 80 06 20 e1  0d 20 8a 06 20 3a 0d 20  |y%. .. .. .. :. |
00009010  94 34 20 dd 20 f2 57 69  6d 70 5f 53 68 6f 77 4d  |.4 . .Wimp_ShowM|
00009020  65 6e 75 49 63 6f 6e 42  61 72 28 6d 65 6e 75 25  |enuIconBar(menu%|
00009030  2c 78 25 2c 69 74 65 6d  73 25 2c 6c 69 6e 65 73  |,x%,items%,lines|
00009040  25 29 0d 20 9e 38 20 f2  57 69 6d 70 5f 53 68 6f  |%). .8 .Wimp_Sho|
00009050  77 4d 65 6e 75 28 6d 65  6e 75 25 2c 78 25 2c 28  |wMenu(menu%,x%,(|
00009060  6c 69 6e 65 73 25 2a 32  32 29 2b 28 69 74 65 6d  |lines%*22)+(item|
00009070  73 25 2a 34 34 29 2b 39  36 29 0d 20 a8 06 20 e1  |s%*44)+96). .. .|
00009080  0d 20 b2 06 20 3a 0d 20  bc 23 20 dd 20 a4 57 69  |. .. :. .# . .Wi|
00009090  6d 70 5f 4d 65 6e 75 4e  6f 4f 66 45 6e 74 72 69  |mp_MenuNoOfEntri|
000090a0  65 73 28 6d 65 6e 75 24  29 0d 20 c6 1b 20 ea 20  |es(menu$). .. . |
000090b0  6e 25 20 2c 6a 25 20 3a  20 6e 25 3d 30 20 3a 20  |n% ,j% : n%=0 : |
000090c0  6a 25 3d 30 0d 20 d0 06  20 f5 0d 20 da 18 20 6a  |j%=0. .. .. .. j|
000090d0  25 3d a7 6d 65 6e 75 24  2c 22 5c 22 2c 6a 25 2b  |%=.menu$,"\",j%+|
000090e0  31 29 0d 20 e4 14 20 e7  20 6a 25 3c 3e 30 20 8c  |1). .. . j%<>0 .|
000090f0  20 6e 25 2b 3d 31 0d 20  ee 0b 20 fd 20 6a 25 3d  | n%+=1. .. . j%=|
00009100  30 0d 20 f8 08 20 3d 6e  25 0d 21 02 06 20 3a 0d  |0. .. =n%.!.. :.|
00009110  21 0c 37 20 dd 20 a4 57  69 6d 70 5f 73 65 74 75  |!.7 . .Wimp_setu|
00009120  70 6d 65 6e 75 46 72 6f  6d 53 74 72 69 6e 67 46  |pmenuFromStringF|
00009130  6f 6e 74 79 69 74 65 6d  73 28 6d 65 6e 75 24 2c  |ontyitems(menu$,|
00009140  66 6f 6e 74 25 29 0d 21  16 28 20 ea 20 6d 65 6e  |font%).!.( . men|
00009150  75 25 2c 69 6e 64 65 78  25 2c 77 69 64 74 68 25  |u%,index%,width%|
00009160  2c 6c 65 6e 67 74 68 25  2c 6b 25 2c 73 25 0d 21  |,length%,k%,s%.!|
00009170  20 2f 20 de 20 6d 65 6e  75 25 20 32 38 2b a4 57  | / . menu% 28+.W|
00009180  69 6d 70 5f 4d 65 6e 75  4e 6f 4f 66 45 6e 74 72  |imp_MenuNoOfEntr|
00009190  69 65 73 28 6d 65 6e 75  24 29 2a 32 34 0d 21 2a  |ies(menu$)*24.!*|
000091a0  38 20 6d 65 6e 75 25 3f  31 32 3d 37 20 20 20 3a  |8 menu%?12=7   :|
000091b0  20 6d 65 6e 75 25 3f 31  33 3d 32 20 20 3a 20 6d  | menu%?13=2  : m|
000091c0  65 6e 75 25 3f 31 34 3d  37 20 3a 6d 65 6e 75 25  |enu%?14=7 :menu%|
000091d0  3f 31 35 3d 30 0d 21 34  2c 20 6d 65 6e 75 25 21  |?15=0.!4, menu%!|
000091e0  31 36 3d 31 34 30 20 3a  20 6d 65 6e 75 25 21 32  |16=140 : menu%!2|
000091f0  30 3d 34 34 20 3a 20 6d  65 6e 75 25 21 32 34 3d  |0=44 : menu%!24=|
00009200  30 0d 21 3e 14 20 69 6e  64 65 78 25 3d 6d 65 6e  |0.!>. index%=men|
00009210  75 25 2b 32 38 0d 21 48  21 20 24 6d 65 6e 75 25  |u%+28.!H! $menu%|
00009220  3d c0 6d 65 6e 75 24 2c  a7 6d 65 6e 75 24 2c 22  |=.menu$,.menu$,"|
00009230  5c 22 29 2d 31 29 0d 21  52 24 20 77 69 64 74 68  |\")-1).!R$ width|
00009240  25 3d a9 28 c0 6d 65 6e  75 24 2c a7 6d 65 6e 75  |%=.(.menu$,.menu|
00009250  24 2c 22 5c 22 29 2d 31  29 29 0d 21 5c 25 20 6d  |$,"\")-1)).!\% m|
00009260  65 6e 75 24 2b 3d 22 5c  22 20 3a 20 4d 65 6e 75  |enu$+="\" : Menu|
00009270  5f 4e 6f 4f 66 45 6e 74  72 69 65 73 25 3d 30 0d  |_NoOfEntries%=0.|
00009280  21 66 11 20 c8 95 20 6d  65 6e 75 24 3c 3e 22 22  |!f. .. menu$<>""|
00009290  0d 21 70 20 20 6d 65 6e  75 24 3d c1 6d 65 6e 75  |.!p  menu$=.menu|
000092a0  24 2c a7 6d 65 6e 75 24  2c 22 5c 22 29 2b 31 29  |$,.menu$,"\")+1)|
000092b0  0d 21 7a 0f 20 c8 8e 20  6d 65 6e 75 24 20 ca 0d  |.!z. .. menu$ ..|
000092c0  21 84 0a 20 20 c9 20 22  22 0d 21 8e 09 20 20 7f  |!..  . "".!..  .|
000092d0  20 3a 0d 21 98 45 20 20  21 69 6e 64 65 78 25 3d  | :.!.E  !index%=|
000092e0  30 20 3a 20 69 6e 64 65  78 25 21 34 3d 2d 31 20  |0 : index%!4=-1 |
000092f0  3a 20 69 6e 64 65 78 25  21 38 3d 26 32 31 20 84  |: index%!8=&21 .|
00009300  20 28 28 66 6f 6e 74 25  3c 3c 32 34 29 20 84 20  | ((font%<<24) . |
00009310  28 31 3c 3c 36 29 29 0d  21 a2 1c 20 20 20 6c 65  |(1<<6)).!..   le|
00009320  6e 67 74 68 25 3d a7 6d  65 6e 75 24 2c 22 5c 22  |ngth%=.menu$,"\"|
00009330  29 2d 31 0d 21 ac 1f 20  20 20 6b 25 3d a7 c0 6d  |)-1.!..   k%=..m|
00009340  65 6e 75 24 2c 6c 65 6e  67 74 68 25 29 2c 22 3e  |enu$,length%),">|
00009350  22 29 0d 21 b6 0e 20 20  20 c8 8e 20 6b 25 20 ca  |").!..   .. k% .|
00009360  0d 21 c0 0b 20 20 20 20  c9 20 30 0d 21 ca 09 20  |.!..    . 0.!.. |
00009370  20 20 20 7f 0d 21 d4 26  20 20 20 20 20 73 25 3d  |   ..!.&     s%=|
00009380  a0 28 c1 6d 65 6e 75 24  2c 6b 25 2b 31 2c 6c 65  |.(.menu$,k%+1,le|
00009390  6e 67 74 68 25 2d 6b 25  29 29 0d 21 de 14 20 20  |ngth%-k%)).!..  |
000093a0  20 20 20 69 6e 64 65 78  25 21 34 3d 73 25 0d 21  |   index%!4=s%.!|
000093b0  e8 15 20 20 20 20 20 6c  65 6e 67 74 68 25 3d 6b  |..     length%=k|
000093c0  25 2d 31 0d 21 f2 08 20  20 20 cb 0d 21 fc 23 20  |%-1.!..   ..!.# |
000093d0  20 20 24 28 69 6e 64 65  78 25 2b 31 32 29 3d c0  |  $(index%+12)=.|
000093e0  6d 65 6e 75 24 2c 6c 65  6e 67 74 68 25 29 0d 22  |menu$,length%)."|
000093f0  06 28 20 20 20 e7 20 6c  65 6e 67 74 68 25 3e 77  |.(   . length%>w|
00009400  69 64 74 68 25 20 8c 20  77 69 64 74 68 25 3d 6c  |idth% . width%=l|
00009410  65 6e 67 74 68 25 0d 22  10 10 20 20 69 6e 64 65  |ength%."..  inde|
00009420  78 25 2b 3d 32 34 0d 22  1a 06 20 cb 0d 22 24 06  |x%+=24.".. .."$.|
00009430  20 ce 0d 22 2e 1b 20 6d  65 6e 75 25 21 31 36 3d  | ..".. menu%!16=|
00009440  31 36 2a 28 77 69 64 74  68 25 2b 31 29 0d 22 38  |16*(width%+1)."8|
00009450  22 20 69 6e 64 65 78 25  21 2d 32 34 3d 69 6e 64  |" index%!-24=ind|
00009460  65 78 25 21 2d 32 34 20  84 20 26 38 30 20 3a 0d  |ex%!-24 . &80 :.|
00009470  22 42 0b 20 3d 6d 65 6e  75 25 0d 22 4c 06 20 3a  |"B. =menu%."L. :|
00009480  0d 22 56 1f 20 dd 20 a4  57 69 6d 70 5f 4c 6f 61  |."V. . .Wimp_Loa|
00009490  64 53 70 72 69 74 65 73  28 66 69 6c 65 24 29 0d  |dSprites(file$).|
000094a0  22 60 18 20 ea 20 66 69  6c 65 25 2c 73 69 7a 65  |"`. . file%,size|
000094b0  25 2c 61 72 65 61 25 0d  22 6a 12 20 66 69 6c 65  |%,area%."j. file|
000094c0  25 3d 8e 20 66 69 6c 65  24 0d 22 74 17 20 73 69  |%=. file$."t. si|
000094d0  7a 65 25 3d 28 a2 23 66  69 6c 65 25 29 2b 31 36  |ze%=(.#file%)+16|
000094e0  0d 22 7e 0c 20 d9 23 66  69 6c 65 25 0d 22 88 12  |."~. .#file%."..|
000094f0  20 de 20 61 72 65 61 25  20 73 69 7a 65 25 0d 22  | . area% size%."|
00009500  92 11 20 21 61 72 65 61  25 3d 73 69 7a 65 25 0d  |.. !area%=size%.|
00009510  22 9c 0e 20 61 72 65 61  25 21 38 3d 30 0d 22 a6  |".. area%!8=0.".|
00009520  20 20 c8 99 20 22 4f 53  5f 53 70 72 69 74 65 4f  |  .. "OS_SpriteO|
00009530  70 22 2c 26 31 30 39 2c  61 72 65 61 25 0d 22 b0  |p",&109,area%.".|
00009540  26 20 c8 99 20 22 4f 53  5f 53 70 72 69 74 65 4f  |& .. "OS_SpriteO|
00009550  70 22 2c 26 31 30 41 2c  61 72 65 61 25 2c 66 69  |p",&10A,area%,fi|
00009560  6c 65 24 0d 22 ba 0b 20  3d 61 72 65 61 25 0d 22  |le$.".. =area%."|
00009570  c4 06 20 3a 0d 22 ce 29  20 dd 20 a4 57 69 6d 70  |.. :.".) . .Wimp|
00009580  5f 45 72 72 6f 72 42 6f  78 28 65 72 72 24 2c 74  |_ErrorBox(err$,t|
00009590  69 74 6c 65 24 2c 66 6c  61 67 73 25 29 0d 22 d8  |itle$,flags%).".|
000095a0  09 20 ea 20 71 25 0d 22  e2 10 20 21 62 6c 6f 63  |. . q%.".. !bloc|
000095b0  6b 25 3d 32 35 35 0d 22  ec 18 20 24 28 62 6c 6f  |k%=255.".. $(blo|
000095c0  63 6b 25 2b 34 29 3d 65  72 72 24 2b bd 30 0d 22  |ck%+4)=err$+.0."|
000095d0  f6 35 20 c8 99 20 22 57  69 6d 70 5f 52 65 70 6f  |.5 .. "Wimp_Repo|
000095e0  72 74 45 72 72 6f 72 22  2c 62 6c 6f 63 6b 25 2c  |rtError",block%,|
000095f0  66 6c 61 67 73 25 2c 74  69 74 6c 65 24 20 b8 20  |flags%,title$ . |
00009600  2c 71 25 0d 23 00 08 20  3d 71 25 0d 23 0a 06 20  |,q%.#.. =q%.#.. |
00009610  3a 0d 23 14 24 20 dd 20  a4 57 69 6d 70 5f 45 72  |:.#.$ . .Wimp_Er|
00009620  72 6f 72 42 6f 78 4f 4b  28 65 72 72 24 2c 74 69  |rorBoxOK(err$,ti|
00009630  74 6c 65 24 29 0d 23 1e  23 20 3d a4 57 69 6d 70  |tle$).#.# =.Wimp|
00009640  5f 45 72 72 6f 72 42 6f  78 28 65 72 72 24 2c 74  |_ErrorBox(err$,t|
00009650  69 74 6c 65 24 2c 31 29  0d 23 28 06 20 3a 0d 23  |itle$,1).#(. :.#|
00009660  32 21 20 dd 20 a4 57 69  6d 70 5f 49 6e 69 74 69  |2! . .Wimp_Initi|
00009670  61 6c 69 73 65 28 61 70  70 6e 61 6d 65 24 29 0d  |alise(appname$).|
00009680  23 3c 12 20 ea 20 74 61  73 6b 68 61 6e 64 6c 65  |#<. . taskhandle|
00009690  25 0d 23 46 3f 20 c8 99  20 22 57 69 6d 70 5f 49  |%.#F? .. "Wimp_I|
000096a0  6e 69 74 69 61 6c 69 73  65 22 2c 33 31 30 2c 26  |nitialise",310,&|
000096b0  34 42 35 33 34 31 35 34  2c 61 70 70 6e 61 6d 65  |4B534154,appname|
000096c0  24 20 b8 20 2c 74 61 73  6b 68 61 6e 64 6c 65 25  |$ . ,taskhandle%|
000096d0  0d 23 50 11 20 3d 74 61  73 6b 68 61 6e 64 6c 65  |.#P. =taskhandle|
000096e0  25 0d 23 5a 06 20 3a 0d  23 64 23 20 dd 20 a4 57  |%.#Z. :.#d# . .W|
000096f0  69 6d 70 5f 43 6c 6f 73  65 44 6f 77 6e 28 74 61  |imp_CloseDown(ta|
00009700  73 6b 68 61 6e 64 6c 65  25 29 0d 23 6e 2e 20 c8  |skhandle%).#n. .|
00009710  99 20 22 57 69 6d 70 5f  43 6c 6f 73 65 44 6f 77  |. "Wimp_CloseDow|
00009720  6e 22 2c 74 61 73 6b 68  61 6e 64 6c 65 25 2c 26  |n",taskhandle%,&|
00009730  34 42 35 33 34 31 35 34  0d 23 78 07 20 3d 30 0d  |4B534154.#x. =0.|
00009740  23 82 06 20 3a 0d 23 8c  1d 20 dd 20 f2 57 69 6d  |#.. :.#.. . .Wim|
00009750  70 5f 50 72 6f 63 65 73  73 4b 65 79 28 6b 65 79  |p_ProcessKey(key|
00009760  25 29 0d 23 96 1e 20 c8  99 20 22 57 69 6d 70 5f  |%).#.. .. "Wimp_|
00009770  50 72 6f 63 65 73 73 4b  65 79 22 2c 6b 65 79 25  |ProcessKey",key%|
00009780  0d 23 a0 06 20 e1 0d 23  aa 06 20 3a 0d 23 b4 1e  |.#.. ..#.. :.#..|
00009790  20 dd 20 f2 57 69 6d 70  5f 43 6c 6f 73 65 57 69  | . .Wimp_CloseWi|
000097a0  6e 64 6f 77 28 77 69 6e  25 29 0d 23 be 11 20 21  |ndow(win%).#.. !|
000097b0  62 6c 6f 63 6b 25 3d 77  69 6e 25 0d 23 c8 25 20  |block%=win%.#.% |
000097c0  c8 99 20 22 57 69 6d 70  5f 47 65 74 57 69 6e 64  |.. "Wimp_GetWind|
000097d0  6f 77 53 74 61 74 65 22  2c 2c 62 6c 6f 63 6b 25  |owState",,block%|
000097e0  0d 23 d2 22 20 c8 99 20  22 57 69 6d 70 5f 43 6c  |.#." .. "Wimp_Cl|
000097f0  6f 73 65 57 69 6e 64 6f  77 22 2c 2c 62 6c 6f 63  |oseWindow",,bloc|
00009800  6b 25 0d 23 dc 06 20 e1  0d 23 e6 06 20 3a 0d 23  |k%.#.. ..#.. :.#|
00009810  f0 1b 20 dd 20 a4 57 69  6d 70 5f 49 6e 69 74 46  |.. . .Wimp_InitF|
00009820  6f 6e 74 73 41 72 72 61  79 0d 23 fa 0f 20 ea 20  |ontsArray.#.. . |
00009830  66 6f 6e 74 5a 25 2c 4e  0d 24 04 11 20 de 20 66  |fontZ%,N.$.. . f|
00009840  6f 6e 74 5a 25 20 32 35  36 0d 24 0e 14 20 e3 20  |ontZ% 256.$.. . |
00009850  4e 3d 30 20 b8 20 32 35  36 20 88 20 34 0d 24 18  |N=0 . 256 . 4.$.|
00009860  12 20 21 28 4e 2b 66 6f  6e 74 5a 25 29 3d 30 0d  |. !(N+fontZ%)=0.|
00009870  24 22 06 20 ed 0d 24 2c  0c 20 3d 66 6f 6e 74 5a  |$". ..$,. =fontZ|
00009880  25 0d 24 36 06 20 3a 0d  24 40 26 20 dd 20 f2 57  |%.$6. :.$@& . .W|
00009890  69 6d 70 5f 52 65 6d 6f  76 65 46 6f 6e 74 73 41  |imp_RemoveFontsA|
000098a0  72 72 61 79 28 66 6f 6e  74 5a 5a 25 29 0d 24 4a  |rray(fontZZ%).$J|
000098b0  16 20 c8 99 20 22 48 6f  75 72 67 6c 61 73 73 5f  |. .. "Hourglass_|
000098c0  4f 6e 22 0d 24 54 11 20  e3 20 6e 25 3d 30 20 b8  |On".$T. . n%=0 .|
000098d0  20 32 35 35 0d 24 5e 2b  20 c8 99 20 22 48 6f 75  | 255.$^+ .. "Hou|
000098e0  72 67 6c 61 73 73 5f 50  65 72 63 65 6e 74 61 67  |rglass_Percentag|
000098f0  65 22 2c 28 6e 25 2f 32  35 35 29 2a 31 30 30 0d  |e",(n%/255)*100.|
00009900  24 68 15 20 71 25 3d 3f  28 66 6f 6e 74 5a 5a 25  |$h. q%=?(fontZZ%|
00009910  2b 6e 25 29 0d 24 72 0c  20 c8 95 20 71 25 3e 30  |+n%).$r. .. q%>0|
00009920  0d 24 7c 1a 20 c8 99 20  22 46 6f 6e 74 5f 4c 6f  |.$|. .. "Font_Lo|
00009930  73 65 46 6f 6e 74 22 2c  6e 25 0d 24 86 0a 20 71  |seFont",n%.$.. q|
00009940  25 2d 3d 31 0d 24 90 06  20 ce 0d 24 9a 06 20 ed  |%-=1.$.. ..$.. .|
00009950  0d 24 a4 17 20 c8 99 20  22 48 6f 75 72 67 6c 61  |.$.. .. "Hourgla|
00009960  73 73 5f 4f 66 66 22 0d  24 ae 06 20 e1 0d 24 b8  |ss_Off".$.. ..$.|
00009970  06 20 3a 0d 24 c2 1d 20  dd 20 f2 57 69 6d 70 5f  |. :.$.. . .Wimp_|
00009980  4f 70 65 6e 57 69 6e 64  6f 77 28 77 69 6e 25 29  |OpenWindow(win%)|
00009990  0d 24 cc 11 20 21 62 6c  6f 63 6b 25 3d 77 69 6e  |.$.. !block%=win|
000099a0  25 0d 24 d6 25 20 c8 99  20 22 57 69 6d 70 5f 47  |%.$.% .. "Wimp_G|
000099b0  65 74 57 69 6e 64 6f 77  53 74 61 74 65 22 2c 2c  |etWindowState",,|
000099c0  62 6c 6f 63 6b 25 0d 24  e0 11 20 62 6c 6f 63 6b  |block%.$.. block|
000099d0  25 21 32 38 3d 2d 31 0d  24 ea 21 20 c8 99 20 22  |%!28=-1.$.! .. "|
000099e0  57 69 6d 70 5f 4f 70 65  6e 57 69 6e 64 6f 77 22  |Wimp_OpenWindow"|
000099f0  2c 2c 62 6c 6f 63 6b 25  0d 24 f4 06 20 e1 0d 24  |,,block%.$.. ..$|
00009a00  fe 06 20 3a 0d 25 08 20  20 dd 20 f2 57 69 6d 70  |.. :.%.  . .Wimp|
00009a10  5f 4f 70 65 6e 54 65 6d  70 6c 61 74 65 28 66 69  |_OpenTemplate(fi|
00009a20  6c 65 24 29 0d 25 12 22  20 c8 99 20 22 57 69 6d  |le$).%." .. "Wim|
00009a30  70 5f 4f 70 65 6e 54 65  6d 70 6c 61 74 65 22 2c  |p_OpenTemplate",|
00009a40  2c 66 69 6c 65 24 0d 25  1c 06 20 e1 0d 25 26 06  |,file$.%.. ..%&.|
00009a50  20 3a 0d 25 30 1a 20 dd  20 f2 57 69 6d 70 5f 43  | :.%0. . .Wimp_C|
00009a60  6c 6f 73 65 54 65 6d 70  6c 61 74 65 0d 25 3a 1c  |loseTemplate.%:.|
00009a70  20 c8 99 20 22 57 69 6d  70 5f 43 6c 6f 73 65 54  | .. "Wimp_CloseT|
00009a80  65 6d 70 6c 61 74 65 22  0d 25 44 06 20 e1 0d 25  |emplate".%D. ..%|
00009a90  4e 06 20 3a 0d 25 58 4d  20 dd 20 a4 57 69 6d 70  |N. :.%XM . .Wimp|
00009aa0  5f 4c 6f 61 64 54 65 6d  70 6c 61 74 65 46 6f 6e  |_LoadTemplateFon|
00009ab0  74 5a 28 74 65 6d 70 6c  61 74 65 24 2c 69 63 6f  |tZ(template$,ico|
00009ac0  6e 53 70 61 63 65 25 2c  6c 65 6e 67 74 68 25 2c  |nSpace%,length%,|
00009ad0  73 70 72 69 25 2c 66 6f  6e 74 61 72 72 61 79 25  |spri%,fontarray%|
00009ae0  29 0d 25 62 09 20 ea 20  71 25 0d 25 6c 58 20 c8  |).%b. . q%.%lX .|
00009af0  99 20 22 57 69 6d 70 5f  4c 6f 61 64 54 65 6d 70  |. "Wimp_LoadTemp|
00009b00  6c 61 74 65 22 2c 2c 62  6c 6f 63 6b 25 2c 69 63  |late",,block%,ic|
00009b10  6f 6e 53 70 61 63 65 25  2c 69 63 6f 6e 53 70 61  |onSpace%,iconSpa|
00009b20  63 65 25 2b 6c 65 6e 67  74 68 25 2c 66 6f 6e 74  |ce%+length%,font|
00009b30  61 72 72 61 79 25 2c 74  65 6d 70 6c 61 74 65 24  |array%,template$|
00009b40  2c 30 0d 25 76 14 20 62  6c 6f 63 6b 25 21 36 34  |,0.%v. block%!64|
00009b50  3d 73 70 72 69 25 0d 25  80 28 20 c8 99 20 22 57  |=spri%.%.( .. "W|
00009b60  69 6d 70 5f 43 72 65 61  74 65 57 69 6e 64 6f 77  |imp_CreateWindow|
00009b70  22 2c 2c 62 6c 6f 63 6b  25 20 b8 20 71 25 0d 25  |",,block% . q%.%|
00009b80  8a 08 20 3d 71 25 0d 25  94 06 20 3a 0d 25 9e 3d  |.. =q%.%.. :.%.=|
00009b90  20 dd 20 a4 57 69 6d 70  5f 4c 6f 61 64 54 65 6d  | . .Wimp_LoadTem|
00009ba0  70 6c 61 74 65 28 74 65  6d 70 6c 61 74 65 24 2c  |plate(template$,|
00009bb0  69 63 6f 6e 53 70 61 63  65 25 2c 6c 65 6e 67 74  |iconSpace%,lengt|
00009bc0  68 25 2c 73 70 72 69 25  29 0d 25 a8 09 20 ea 20  |h%,spri%).%.. . |
00009bd0  71 25 0d 25 b2 4f 20 c8  99 20 22 57 69 6d 70 5f  |q%.%.O .. "Wimp_|
00009be0  4c 6f 61 64 54 65 6d 70  6c 61 74 65 22 2c 2c 62  |LoadTemplate",,b|
00009bf0  6c 6f 63 6b 25 2c 69 63  6f 6e 53 70 61 63 65 25  |lock%,iconSpace%|
00009c00  2c 69 63 6f 6e 53 70 61  63 65 25 2b 6c 65 6e 67  |,iconSpace%+leng|
00009c10  74 68 25 2c 30 2c 74 65  6d 70 6c 61 74 65 24 2c  |th%,0,template$,|
00009c20  30 0d 25 bc 14 20 62 6c  6f 63 6b 25 21 36 34 3d  |0.%.. block%!64=|
00009c30  73 70 72 69 25 0d 25 c6  28 20 c8 99 20 22 57 69  |spri%.%.( .. "Wi|
00009c40  6d 70 5f 43 72 65 61 74  65 57 69 6e 64 6f 77 22  |mp_CreateWindow"|
00009c50  2c 2c 62 6c 6f 63 6b 25  20 b8 20 71 25 0d 25 d0  |,,block% . q%.%.|
00009c60  08 20 3d 71 25 0d 25 da  06 20 3a 0d 25 e4 2a 20  |. =q%.%.. :.%.* |
00009c70  dd 20 f2 57 69 6d 70 5f  43 68 61 6e 67 65 57 69  |. .Wimp_ChangeWi|
00009c80  6e 64 6f 77 54 69 74 6c  65 28 77 69 6e 25 2c 74  |ndowTitle(win%,t|
00009c90  65 78 74 24 29 0d 25 ee  09 20 ea 20 71 25 0d 25  |ext$).%.. . q%.%|
00009ca0  f8 11 20 21 62 6c 6f 63  6b 25 3d 77 69 6e 25 0d  |.. !block%=win%.|
00009cb0  26 02 24 20 c8 99 20 22  57 69 6d 70 5f 47 65 74  |&.$ .. "Wimp_Get|
00009cc0  57 69 6e 64 6f 77 49 6e  66 6f 22 2c 2c 62 6c 6f  |WindowInfo",,blo|
00009cd0  63 6b 25 0d 26 0c 11 20  71 25 3d 62 6c 6f 63 6b  |ck%.&.. q%=block|
00009ce0  25 21 37 36 0d 26 16 0e  20 24 71 25 3d 74 65 78  |%!76.&.. $q%=tex|
00009cf0  74 24 0d 26 20 16 20 62  6c 6f 63 6b 25 21 38 34  |t$.& . block%!84|
00009d00  3d a9 20 74 65 78 74 24  0d 26 2a 06 20 e1 0d 26  |=. text$.&*. ..&|
00009d10  34 06 20 3a 0d 26 3e 23  20 dd 20 a4 57 69 6d 70  |4. :.&># . .Wimp|
00009d20  5f 47 65 74 43 61 72 65  74 50 6f 73 69 74 69 6f  |_GetCaretPositio|
00009d30  6e 57 69 6e 64 6f 77 0d  26 48 27 20 c8 99 20 22  |nWindow.&H' .. "|
00009d40  57 69 6d 70 5f 47 65 74  43 61 72 65 74 50 6f 73  |Wimp_GetCaretPos|
00009d50  69 74 69 6f 6e 22 2c 2c  62 6c 6f 63 6b 25 0d 26  |ition",,block%.&|
00009d60  52 0d 20 3d 21 62 6c 6f  63 6b 25 0d 26 5c 06 20  |R. =!block%.&\. |
00009d70  3a 0d 26 66 18 20 dd 20  f2 57 69 6d 70 5f 44 69  |:.&f. . .Wimp_Di|
00009d80  73 6f 77 6e 43 61 72 65  74 0d 26 70 22 20 c8 99  |sownCaret.&p" ..|
00009d90  20 22 57 69 6d 70 5f 53  65 74 43 61 72 65 74 50  | "Wimp_SetCaretP|
00009da0  6f 73 69 74 69 6f 6e 22  2c 2d 31 0d 26 7a 06 20  |osition",-1.&z. |
00009db0  e1 0d 26 84 06 20 3a 0d  26 8e 22 20 dd 20 f2 57  |..&.. :.&." . .W|
00009dc0  69 6d 70 5f 48 61 6c 66  53 69 7a 65 28 77 69 6e  |imp_HalfSize(win|
00009dd0  64 25 2c 69 63 6f 6e 25  29 0d 26 98 12 20 21 62  |d%,icon%).&.. !b|
00009de0  6c 6f 63 6b 25 3d 77 69  6e 64 25 0d 26 a2 13 20  |lock%=wind%.&.. |
00009df0  62 6c 6f 63 6b 25 21 34  3d 69 63 6f 6e 25 0d 26  |block%!4=icon%.&|
00009e00  ac 13 20 62 6c 6f 63 6b  25 21 38 3d 31 3c 3c 31  |.. block%!8=1<<1|
00009e10  31 0d 26 b6 14 20 62 6c  6f 63 6b 25 21 31 32 3d  |1.&.. block%!12=|
00009e20  31 3c 3c 31 31 0d 26 c0  23 20 c8 99 20 22 57 69  |1<<11.&.# .. "Wi|
00009e30  6d 70 5f 53 65 74 49 63  6f 6e 53 74 61 74 65 22  |mp_SetIconState"|
00009e40  2c 2c 62 6c 6f 63 6b 25  0d 26 ca 06 20 e1 0d 26  |,,block%.&.. ..&|
00009e50  d4 06 20 3a 0d 26 de 22  20 dd 20 f2 57 69 6d 70  |.. :.&." . .Wimp|
00009e60  5f 46 75 6c 6c 53 69 7a  65 28 77 69 6e 64 25 2c  |_FullSize(wind%,|
00009e70  69 63 6f 6e 25 29 0d 26  e8 12 20 21 62 6c 6f 63  |icon%).&.. !bloc|
00009e80  6b 25 3d 77 69 6e 64 25  0d 26 f2 13 20 62 6c 6f  |k%=wind%.&.. blo|
00009e90  63 6b 25 21 34 3d 69 63  6f 6e 25 0d 26 fc 0f 20  |ck%!4=icon%.&.. |
00009ea0  62 6c 6f 63 6b 25 21 38  3d 30 0d 27 06 14 20 62  |block%!8=0.'.. b|
00009eb0  6c 6f 63 6b 25 21 31 32  3d 31 3c 3c 31 31 0d 27  |lock%!12=1<<11.'|
00009ec0  10 23 20 c8 99 20 22 57  69 6d 70 5f 53 65 74 49  |.# .. "Wimp_SetI|
00009ed0  63 6f 6e 53 74 61 74 65  22 2c 2c 62 6c 6f 63 6b  |conState",,block|
00009ee0  25 0d 27 1a 06 20 e1 0d  27 24 06 20 3a 0d 27 2e  |%.'.. ..'$. :.'.|
00009ef0  43 20 dd 20 a4 57 69 6d  70 5f 73 65 74 75 70 6d  |C . .Wimp_setupm|
00009f00  65 6e 75 46 72 6f 6d 53  74 72 69 6e 67 49 4e 44  |enuFromStringIND|
00009f10  46 6f 6e 74 79 69 74 65  6d 73 28 6d 65 6e 75 49  |Fontyitems(menuI|
00009f20  4e 44 25 2c 6d 65 6e 75  24 2c 66 6f 6e 74 25 29  |ND%,menu$,font%)|
00009f30  0d 27 38 28 20 ea 20 6d  65 6e 75 25 2c 69 6e 64  |.'8( . menu%,ind|
00009f40  65 78 25 2c 77 69 64 74  68 25 2c 6c 65 6e 67 74  |ex%,width%,lengt|
00009f50  68 25 2c 6b 25 2c 73 25  0d 27 42 2f 20 de 20 6d  |h%,k%,s%.'B/ . m|
00009f60  65 6e 75 25 20 32 38 2b  a4 57 69 6d 70 5f 4d 65  |enu% 28+.Wimp_Me|
00009f70  6e 75 4e 6f 4f 66 45 6e  74 72 69 65 73 28 6d 65  |nuNoOfEntries(me|
00009f80  6e 75 24 29 2a 32 34 0d  27 4c 38 20 6d 65 6e 75  |nu$)*24.'L8 menu|
00009f90  25 3f 31 32 3d 37 20 20  20 3a 20 6d 65 6e 75 25  |%?12=7   : menu%|
00009fa0  3f 31 33 3d 32 20 20 3a  20 6d 65 6e 75 25 3f 31  |?13=2  : menu%?1|
00009fb0  34 3d 37 20 3a 6d 65 6e  75 25 3f 31 35 3d 30 0d  |4=7 :menu%?15=0.|
00009fc0  27 56 2c 20 6d 65 6e 75  25 21 31 36 3d 31 34 30  |'V, menu%!16=140|
00009fd0  20 3a 20 6d 65 6e 75 25  21 32 30 3d 34 34 20 3a  | : menu%!20=44 :|
00009fe0  20 6d 65 6e 75 25 21 32  34 3d 30 0d 27 60 14 20  | menu%!24=0.'`. |
00009ff0  69 6e 64 65 78 25 3d 6d  65 6e 75 25 2b 32 38 0d  |index%=menu%+28.|
0000a000  27 6a 21 20 24 6d 65 6e  75 25 3d c0 6d 65 6e 75  |'j! $menu%=.menu|
0000a010  24 2c a7 6d 65 6e 75 24  2c 22 5c 22 29 2d 31 29  |$,.menu$,"\")-1)|
0000a020  0d 27 74 24 20 77 69 64  74 68 25 3d a9 28 c0 6d  |.'t$ width%=.(.m|
0000a030  65 6e 75 24 2c a7 6d 65  6e 75 24 2c 22 5c 22 29  |enu$,.menu$,"\")|
0000a040  2d 31 29 29 0d 27 7e 25  20 6d 65 6e 75 24 2b 3d  |-1)).'~% menu$+=|
0000a050  22 5c 22 20 3a 20 4d 65  6e 75 5f 4e 6f 4f 66 45  |"\" : Menu_NoOfE|
0000a060  6e 74 72 69 65 73 25 3d  30 0d 27 88 11 20 c8 95  |ntries%=0.'.. ..|
0000a070  20 6d 65 6e 75 24 3c 3e  22 22 0d 27 92 20 20 6d  | menu$<>"".'.  m|
0000a080  65 6e 75 24 3d c1 6d 65  6e 75 24 2c a7 6d 65 6e  |enu$=.menu$,.men|
0000a090  75 24 2c 22 5c 22 29 2b  31 29 0d 27 9c 0f 20 c8  |u$,"\")+1).'.. .|
0000a0a0  8e 20 6d 65 6e 75 24 20  ca 0d 27 a6 0a 20 20 c9  |. menu$ ..'..  .|
0000a0b0  20 22 22 0d 27 b0 09 20  20 7f 20 3a 0d 27 ba 46  | "".'..  . :.'.F|
0000a0c0  20 20 21 69 6e 64 65 78  25 3d 30 20 3a 20 69 6e  |  !index%=0 : in|
0000a0d0  64 65 78 25 21 34 3d 2d  31 20 3a 20 69 6e 64 65  |dex%!4=-1 : inde|
0000a0e0  78 25 21 38 3d 26 31 32  31 20 84 20 28 28 66 6f  |x%!8=&121 . ((fo|
0000a0f0  6e 74 25 3c 3c 32 34 29  20 84 20 28 31 3c 3c 36  |nt%<<24) . (1<<6|
0000a100  29 29 0d 27 c4 1c 20 20  20 6c 65 6e 67 74 68 25  |)).'..   length%|
0000a110  3d a7 6d 65 6e 75 24 2c  22 5c 22 29 2d 31 0d 27  |=.menu$,"\")-1.'|
0000a120  ce 1f 20 20 20 6b 25 3d  a7 c0 6d 65 6e 75 24 2c  |..   k%=..menu$,|
0000a130  6c 65 6e 67 74 68 25 29  2c 22 3e 22 29 0d 27 d8  |length%),">").'.|
0000a140  0e 20 20 20 c8 8e 20 6b  25 20 ca 0d 27 e2 0b 20  |.   .. k% ..'.. |
0000a150  20 20 20 c9 20 30 0d 27  ec 09 20 20 20 20 7f 0d  |   . 0.'..    ..|
0000a160  27 f6 26 20 20 20 20 20  73 25 3d a0 28 c1 6d 65  |'.&     s%=.(.me|
0000a170  6e 75 24 2c 6b 25 2b 31  2c 6c 65 6e 67 74 68 25  |nu$,k%+1,length%|
0000a180  2d 6b 25 29 29 0d 28 00  14 20 20 20 20 20 69 6e  |-k%)).(..     in|
0000a190  64 65 78 25 21 34 3d 73  25 0d 28 0a 15 20 20 20  |dex%!4=s%.(..   |
0000a1a0  20 20 6c 65 6e 67 74 68  25 3d 6b 25 2d 31 0d 28  |  length%=k%-1.(|
0000a1b0  14 08 20 20 20 cb 0d 28  1e 19 20 20 20 69 6e 64  |..   ..(..   ind|
0000a1c0  65 78 25 21 31 32 3d 6d  65 6e 75 49 4e 44 25 0d  |ex%!12=menuIND%.|
0000a1d0  28 28 13 20 20 20 69 6e  64 65 78 25 21 31 38 3d  |((.   index%!18=|
0000a1e0  2d 31 0d 28 32 13 20 20  20 69 6e 64 65 78 25 21  |-1.(2.   index%!|
0000a1f0  32 32 3d 33 32 0d 28 3c  20 20 20 20 24 6d 65 6e  |22=32.(<    $men|
0000a200  75 49 4e 44 25 3d c0 6d  65 6e 75 24 2c 6c 65 6e  |uIND%=.menu$,len|
0000a210  67 74 68 25 29 0d 28 46  13 20 20 20 6d 65 6e 75  |gth%).(F.   menu|
0000a220  49 4e 44 25 2b 3d 33 32  0d 28 50 28 20 20 20 e7  |IND%+=32.(P(   .|
0000a230  20 6c 65 6e 67 74 68 25  3e 77 69 64 74 68 25 20  | length%>width% |
0000a240  8c 20 77 69 64 74 68 25  3d 6c 65 6e 67 74 68 25  |. width%=length%|
0000a250  0d 28 5a 10 20 20 69 6e  64 65 78 25 2b 3d 32 34  |.(Z.  index%+=24|
0000a260  0d 28 64 06 20 cb 0d 28  6e 06 20 ce 0d 28 78 1b  |.(d. ..(n. ..(x.|
0000a270  20 6d 65 6e 75 25 21 31  36 3d 31 36 2a 28 77 69  | menu%!16=16*(wi|
0000a280  64 74 68 25 2b 31 29 0d  28 82 22 20 69 6e 64 65  |dth%+1).(." inde|
0000a290  78 25 21 2d 32 34 3d 69  6e 64 65 78 25 21 2d 32  |x%!-24=index%!-2|
0000a2a0  34 20 84 20 26 38 30 20  3a 0d 28 8c 0b 20 3d 6d  |4 . &80 :.(.. =m|
0000a2b0  65 6e 75 25 0d 28 96 06  20 3a 0d 28 a0 26 20 dd  |enu%.(.. :.(.& .|
0000a2c0  20 f2 57 69 6d 70 5f 4d  65 6e 75 54 69 63 6b 49  | .Wimp_MenuTickI|
0000a2d0  74 65 6d 28 6d 65 6e 75  25 2c 69 74 65 6d 25 29  |tem(menu%,item%)|
0000a2e0  0d 28 aa 09 20 ea 20 61  25 0d 28 b4 1b 20 61 25  |.(.. . a%.(.. a%|
0000a2f0  3d 6d 65 6e 75 25 2b 32  38 2b 28 69 74 65 6d 25  |=menu%+28+(item%|
0000a300  2a 32 34 29 0d 28 be 12  20 3f 61 25 3d 28 3f 61  |*24).(.. ?a%=(?a|
0000a310  25 20 84 20 31 29 0d 28  c8 06 20 e1 0d 28 d2 06  |% . 1).(.. ..(..|
0000a320  20 3a 0d 28 dc 28 20 dd  20 f2 57 69 6d 70 5f 4d  | :.(.( . .Wimp_M|
0000a330  65 6e 75 55 6e 54 69 63  6b 49 74 65 6d 28 6d 65  |enuUnTickItem(me|
0000a340  6e 75 25 2c 69 74 65 6d  25 29 0d 28 e6 09 20 ea  |nu%,item%).(.. .|
0000a350  20 61 25 0d 28 f0 1b 20  61 25 3d 6d 65 6e 75 25  | a%.(.. a%=menu%|
0000a360  2b 32 38 2b 28 69 74 65  6d 25 2a 32 34 29 0d 28  |+28+(item%*24).(|
0000a370  fa 14 20 3f 61 25 3d 28  3f 61 25 20 80 20 32 35  |.. ?a%=(?a% . 25|
0000a380  34 29 0d 29 04 06 20 e1  0d 29 0e 06 20 3a 0d 29  |4).).. ..).. :.)|
0000a390  18 24 20 dd 20 a4 57 69  6d 70 5f 4d 65 6e 75 54  |.$ . .Wimp_MenuT|
0000a3a0  69 63 6b 65 64 28 6d 65  6e 75 25 2c 69 74 65 6d  |icked(menu%,item|
0000a3b0  25 29 0d 29 22 09 20 ea  20 61 25 0d 29 2c 1b 20  |%).)". . a%.),. |
0000a3c0  61 25 3d 6d 65 6e 75 25  2b 32 38 2b 28 69 74 65  |a%=menu%+28+(ite|
0000a3d0  6d 25 2a 32 34 29 0d 29  36 11 20 3d 28 3f 61 25  |m%*24).)6. =(?a%|
0000a3e0  20 80 20 31 29 3e 30 0d  29 40 06 20 3a 0d ff     | . 1)>0.)@. :..|
0000a3ef