Home » Archimedes archive » Micro User » MU 1991-03.adf » PD-Stuff » Music/!Player/Library
Music/!Player/Library
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 » Micro User » MU 1991-03.adf » PD-Stuff |
Filename: | Music/!Player/Library |
Read OK: | ✔ |
File size: | 136F bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM > Library 20REM 30REM 40REM 50 60REM Procedures 70REM 80REM openmenu(menuaddress,x%,y%) 90REM openwindow(windowhandle%,x%,y%,x1%,y1%) 100REM closewindow(windowhandle%) 110 120REM functions 130REM 140REM createmenu() (i) 150REM initialisetask() (i) 160REM error() (i) 170REM errorwindow(text$,errornum,flags%) (i) 180REM createicon(windowhandle,minx%,miny%,maxx%,maxy%,flags,icon$) (i) 190 200 210 220REM format of menu list 230REM menu number - not presently used. 240REM menu title 250REM 260REM 270REM 280REM 290REM 300REM 310REM 320REM 330 340REM text entry for item 350REM 360 370REM * Marks last item on the list 380REM # Indicates dotted line to follow this item 390REM @ This item is indirected. Indirection address and length follow 400REM ~ This item has a validation string. Address and valid$ follow 410REM / This item is shaded 420REM ^ This item has a sub menu whose handle follows 430 440 450DEF FNcreatemenu 460LOCAL loop%,flags%,submenuptr%,iflag%,address%,length%,valid%,valid$ 470errorpos$="createmenu" 480 490IF (menupointer + 28) > menuend THEN ERROR 1,"No room for menu creation" 500 510menustart = menupointer 520 530menupointer!&00 = &00000000 540menupointer!&04 = &00000000 550menupointer!&08 = &00000000 560 570READ menu 580READ $menupointer 590READ menupointer?&0C 600READ menupointer?&0D 610READ menupointer?&0E 620READ menupointer?&0F 630READ menupointer!&10 640READ menupointer!&14 650READ menupointer!&18 660READ dflag% 670 680menupointer += &1c 690 700REPEAT 710IF (menupointer + 24) > menuend THEN ERROR 1,"No room for menu creation" 720 730flags% = 0 740submenuptr% = -1 750iflag% = 0 760valid% = -1 770READ text$ 780 790IF LEFT$(text$,1) = "*" THEN flags% = flags% OR &00000080 : text$ = MID$(text$,2) 800IF LEFT$(text$,1) = "#" THEN flags% = flags% OR &00000002 : text$ = MID$(text$,2) 810IF LEFT$(text$,1) = "@" THEN text$ = MID$(text$,2) : iflag% = &00000100 : READ address%,length% 820IF LEFT$(text$,1) = "~" THEN flags% = flags% OR &00000004 : text$ = MID$(text$,2) : READ valid%,valid$ 830IF LEFT$(text$,1) = "/" THEN iflag% = iflag% OR 1<<22 : text$ = MID$(text$,2) 840IF LEFT$(text$,1) = "^" THEN text$ = MID$(text$,2) : READ submenuptr% 850 860menupointer!&00 = flags% 870menupointer!&04 = submenuptr% 880REM 10987654321098765432109876543210 890menupointer!&08 = %00000111000000000011000000010001 OR iflag% OR dflag% 900 910IF (iflag% AND &100) = 0 THEN 920 menupointer!&0c = &00000000 930 menupointer!&10 = &00000000 940 menupointer!&14 = &00000000 950 $(menupointer+&0c) = text$ 960ELSE 970 menupointer!&0c = address% 980 menupointer!&10 = valid% 990 menupointer!&14 = length% 1000 $address% = text$ 1010 IF valid% <> -1 THEN $valid% = valid$ 1020ENDIF 1030menupointer += &18 1040 1050UNTIL (flags% AND &80) 1060 1070= menustart 1080 1090 1100DEF PROCopenmenu(menuaddress,x%,y%) 1110errorpos$="openmenu" 1120SYS "Wimp_CreateMenu",,menuaddress,x%,y% 1130currentmenu = menuaddress 1140menux% = x% 1150menuy% = y% 1160ENDPROC 1170 1180 1190DEF FNinitialisetask 1200errorpos$="initialisetask" 1210LOCAL taskid%,version% 1220SYS "Wimp_Initialise",200,&4B534154,task$ TO version%,taskid% 1230IF version% < 200 THEN ERROR 1,task$ + " requires Wimp Manager V 2.00 or later" 1240= taskid% 1250 1260 1270DEF FNerror 1280IF ((ERR AND &10000) = &10000) OR (ERR = 1) THEN dummy = FNerrorwindow(REPORT$,ERR,1) : = 2 1290= FNerrorwindow(REPORT$+". " + task$ + " has suffered a fatal error ("+STR$~(ERR)+STR$(ERL)+version$+") and must exit immediately.",ERR,7) 1300 1310 1320DEF FNerrorwindow(text$,errornum,flags%) 1330LOCAL errorresult 1340!buffer% = errornum 1350$(buffer%+4) = text$ 1360SYS "Wimp_ReportError",buffer%,flags%,task$ TO ,errorresult 1370= errorresult 1380 1390 1400DEF PROCopenwindow(windowhandle%,x%,y%,x1%,y1%) 1410errorpos$="openwindow" 1420wimpworkspace%!0 = windowhandle% 1430wimpworkspace%!4 = x% 1440wimpworkspace%!8 = y% 1450wimpworkspace%!12 = x1% 1460wimpworkspace%!16 = y1% 1470wimpworkspace%!20 = 0 1480wimpworkspace%!24 = 0 1490wimpworkspace%!28 = -1 1500 1510SYS "Wimp_OpenWindow",,wimpworkspace% 1520ENDPROC 1530 1540 1550DEF PROCclosewindow(windowhandle%) 1560errorpos$="closewindow" 1570!wimpworkspace% = windowhandle% 1580SYS "Wimp_CloseWindow",,wimpworkspace% 1590ENDPROC 1600 1610 1620DEF FNcreateindirectedsprite(windowhandle,minx%,miny%,width,height,flags,spriteaddress,namebuffer,icon$) 1630errorpos$="createindirectedsprite" 1640LOCAL iconhandle 1650 1660wimpworkspace%!0 = windowhandle 1670wimpworkspace%!4 = minx% 1680wimpworkspace%!8 = miny% 1690wimpworkspace%!12 = minx% + width 1700wimpworkspace%!16 = miny% + height 1710wimpworkspace%!20 = flags 1720 1730wimpworkspace%!24 = namebuffer 1740wimpworkspace%!28 = spriteaddress 1750wimpworkspace%!32 = LEN(icon$) 1760$(wimpworkspace%!24) = icon$ 1770 1780SYS "Wimp_CreateIcon",,wimpworkspace% TO iconhandle 1790 1800= iconhandle 1810 1820 1830DEF FNcreateicon(windowhandle,minx%,miny%,maxx%,maxy%,flags,icon$) 1840errorpos$="createicon" 1850LOCAL iconhandle 1860 1870wimpworkspace%!0 = windowhandle 1880wimpworkspace%!4 = minx% 1890wimpworkspace%!8 = miny% 1900wimpworkspace%!12 = maxx% 1910wimpworkspace%!16 = maxy% 1920wimpworkspace%!20 = flags 1930 1940wimpworkspace%!24 = 0 1950wimpworkspace%!28 = 0 1960wimpworkspace%!32 = 0 1970$(wimpworkspace%+24) = icon$ 1980 1990SYS "Wimp_CreateIcon",,wimpworkspace% TO iconhandle 2000 2010= iconhandle
� > Library � � (� 2 <� Procedures F� P!� openmenu(menuaddress,x%,y%) Z-� openwindow(windowhandle%,x%,y%,x1%,y1%) d � closewindow(windowhandle%) n x� functions �� �� createmenu() (i) �� initialisetask() (i) �� error() (i) �/� errorwindow(text$,errornum,flags%) (i) �I� createicon(windowhandle,minx%,miny%,maxx%,maxy%,flags,icon$) (i) � � � �� format of menu list �'� menu number - not presently used. �� menu title �� � � � "� ,� 6� @� J T� text entry for item ^� h r#� * Marks last item on the list |1� # Indicates dotted line to follow this item �F� @ This item is indirected. Indirection address and length follow �D� ~ This item has a validation string. Address and valid$ follow �� / This item is shaded �5� ^ This item has a sub menu whose handle follows � � �� �createmenu �D� loop%,flags%,submenuptr%,iflag%,address%,length%,valid%,valid$ �errorpos$="createmenu" � �D� (menupointer + 28) > menuend � � 1,"No room for menu creation" � �menustart = menupointer menupointer!&00 = &00000000 menupointer!&04 = &00000000 &menupointer!&08 = &00000000 0 : � menu D� $menupointer N� menupointer?&0C X� menupointer?&0D b� menupointer?&0E l� menupointer?&0F v� menupointer!&10 �� menupointer!&14 �� menupointer!&18 �� dflag% � �menupointer += &1c � �� �D� (menupointer + 24) > menuend � � 1,"No room for menu creation" � �flags% = 0 �submenuptr% = -1 �iflag% = 0 �valid% = -1 � text$ G� �text$,1) = "*" � flags% = flags% � &00000080 : text$ = �text$,2) G� �text$,1) = "#" � flags% = flags% � &00000002 : text$ = �text$,2) *S� �text$,1) = "@" � text$ = �text$,2) : iflag% = &00000100 : � address%,length% 4Y� �text$,1) = "~" � flags% = flags% � &00000004 : text$ = �text$,2) : � valid%,valid$ >C� �text$,1) = "/" � iflag% = iflag% � 1<<22 : text$ = �text$,2) H9� �text$,1) = "^" � text$ = �text$,2) : � submenuptr% R \menupointer!&00 = flags% f!menupointer!&04 = submenuptr% p5� 10987654321098765432109876543210 zImenupointer!&08 = %00000111000000000011000000010001 � iflag% � dflag% � �� (iflag% � &100) = 0 � �! menupointer!&0c = &00000000 �! menupointer!&10 = &00000000 �! menupointer!&14 = &00000000 � $(menupointer+&0c) = text$ �� � menupointer!&0c = address% � menupointer!&10 = valid% � menupointer!&14 = length% � $address% = text$ �' � valid% <> -1 � $valid% = valid$ �� menupointer += &18 � (flags% � &80) $ .= menustart 8 B L"� �openmenu(menuaddress,x%,y%) Verrorpos$="openmenu" `+ș "Wimp_CreateMenu",,menuaddress,x%,y% jcurrentmenu = menuaddress tmenux% = x% ~menuy% = y% �� � � �� �initialisetask �errorpos$="initialisetask" �� taskid%,version% �?ș "Wimp_Initialise",200,&4B534154,task$ � version%,taskid% �K� version% < 200 � � 1,task$ + " requires Wimp Manager V 2.00 or later" � = taskid% � � �� �error L� ((� � &10000) = &10000) � (� = 1) � dummy = �errorwindow(�$,�,1) : = 2 |= �errorwindow(�$+". " + task$ + " has suffered a fatal error ("+�~(�)+�(�)+version$+") and must exit immediately.",�,7) ()� �errorwindow(text$,errornum,flags%) 2� errorresult <!buffer% = errornum F$(buffer%+4) = text$ P=ș "Wimp_ReportError",buffer%,flags%,task$ � ,errorresult Z= errorresult d n x.� �openwindow(windowhandle%,x%,y%,x1%,y1%) �errorpos$="openwindow" �$wimpworkspace%!0 = windowhandle% �wimpworkspace%!4 = x% �wimpworkspace%!8 = y% �wimpworkspace%!12 = x1% �wimpworkspace%!16 = y1% �wimpworkspace%!20 = 0 �wimpworkspace%!24 = 0 �wimpworkspace%!28 = -1 � �(ș "Wimp_OpenWindow",,wimpworkspace% �� � !� �closewindow(windowhandle%) errorpos$="closewindow" "#!wimpworkspace% = windowhandle% ,)ș "Wimp_CloseWindow",,wimpworkspace% 6� @ J Ti� �createindirectedsprite(windowhandle,minx%,miny%,width,height,flags,spriteaddress,namebuffer,icon$) ^&errorpos$="createindirectedsprite" h� iconhandle r |$wimpworkspace%!0 = windowhandle �wimpworkspace%!4 = minx% �wimpworkspace%!8 = miny% �%wimpworkspace%!12 = minx% + width �&wimpworkspace%!16 = miny% + height �wimpworkspace%!20 = flags � �"wimpworkspace%!24 = namebuffer �%wimpworkspace%!28 = spriteaddress � wimpworkspace%!32 = �(icon$) � $(wimpworkspace%!24) = icon$ � �5ș "Wimp_CreateIcon",,wimpworkspace% � iconhandle � = iconhandle &C� �createicon(windowhandle,minx%,miny%,maxx%,maxy%,flags,icon$) 0errorpos$="createicon" :� iconhandle D N$wimpworkspace%!0 = windowhandle Xwimpworkspace%!4 = minx% bwimpworkspace%!8 = miny% lwimpworkspace%!12 = maxx% vwimpworkspace%!16 = maxy% �wimpworkspace%!20 = flags � �wimpworkspace%!24 = 0 �wimpworkspace%!28 = 0 �wimpworkspace%!32 = 0 � $(wimpworkspace%+24) = icon$ � �5ș "Wimp_CreateIcon",,wimpworkspace% � iconhandle � �= iconhandle �
00000000 0d 00 0a 0f f4 20 3e 20 4c 69 62 72 61 72 79 0d |..... > Library.| 00000010 00 14 05 f4 0d 00 1e 05 f4 0d 00 28 05 f4 0d 00 |...........(....| 00000020 32 04 0d 00 3c 10 f4 20 50 72 6f 63 65 64 75 72 |2...<.. Procedur| 00000030 65 73 0d 00 46 05 f4 0d 00 50 21 f4 20 6f 70 65 |es..F....P!. ope| 00000040 6e 6d 65 6e 75 28 6d 65 6e 75 61 64 64 72 65 73 |nmenu(menuaddres| 00000050 73 2c 78 25 2c 79 25 29 0d 00 5a 2d f4 20 6f 70 |s,x%,y%)..Z-. op| 00000060 65 6e 77 69 6e 64 6f 77 28 77 69 6e 64 6f 77 68 |enwindow(windowh| 00000070 61 6e 64 6c 65 25 2c 78 25 2c 79 25 2c 78 31 25 |andle%,x%,y%,x1%| 00000080 2c 79 31 25 29 0d 00 64 20 f4 20 63 6c 6f 73 65 |,y1%)..d . close| 00000090 77 69 6e 64 6f 77 28 77 69 6e 64 6f 77 68 61 6e |window(windowhan| 000000a0 64 6c 65 25 29 0d 00 6e 04 0d 00 78 0f f4 20 66 |dle%)..n...x.. f| 000000b0 75 6e 63 74 69 6f 6e 73 0d 00 82 05 f4 0d 00 8c |unctions........| 000000c0 1e f4 20 63 72 65 61 74 65 6d 65 6e 75 28 29 20 |.. createmenu() | 000000d0 20 20 20 20 20 20 20 20 28 69 29 0d 00 96 1e f4 | (i).....| 000000e0 20 69 6e 69 74 69 61 6c 69 73 65 74 61 73 6b 28 | initialisetask(| 000000f0 29 20 20 20 20 20 28 69 29 0d 00 a0 1e f4 20 65 |) (i)..... e| 00000100 72 72 6f 72 28 29 20 20 20 20 20 20 20 20 20 20 |rror() | 00000110 20 20 20 20 28 69 29 0d 00 aa 2f f4 20 65 72 72 | (i).../. err| 00000120 6f 72 77 69 6e 64 6f 77 28 74 65 78 74 24 2c 65 |orwindow(text$,e| 00000130 72 72 6f 72 6e 75 6d 2c 66 6c 61 67 73 25 29 20 |rrornum,flags%) | 00000140 20 20 20 28 69 29 0d 00 b4 49 f4 20 63 72 65 61 | (i)...I. crea| 00000150 74 65 69 63 6f 6e 28 77 69 6e 64 6f 77 68 61 6e |teicon(windowhan| 00000160 64 6c 65 2c 6d 69 6e 78 25 2c 6d 69 6e 79 25 2c |dle,minx%,miny%,| 00000170 6d 61 78 78 25 2c 6d 61 78 79 25 2c 66 6c 61 67 |maxx%,maxy%,flag| 00000180 73 2c 69 63 6f 6e 24 29 20 20 20 20 28 69 29 0d |s,icon$) (i).| 00000190 00 be 04 0d 00 c8 04 0d 00 d2 04 0d 00 dc 19 f4 |................| 000001a0 20 66 6f 72 6d 61 74 20 6f 66 20 6d 65 6e 75 20 | format of menu | 000001b0 6c 69 73 74 0d 00 e6 27 f4 20 6d 65 6e 75 20 6e |list...'. menu n| 000001c0 75 6d 62 65 72 20 2d 20 6e 6f 74 20 70 72 65 73 |umber - not pres| 000001d0 65 6e 74 6c 79 20 75 73 65 64 2e 0d 00 f0 10 f4 |ently used......| 000001e0 20 6d 65 6e 75 20 74 69 74 6c 65 0d 00 fa 05 f4 | menu title.....| 000001f0 0d 01 04 05 f4 0d 01 0e 05 f4 0d 01 18 05 f4 0d |................| 00000200 01 22 05 f4 0d 01 2c 05 f4 0d 01 36 05 f4 0d 01 |."....,....6....| 00000210 40 05 f4 0d 01 4a 04 0d 01 54 19 f4 20 74 65 78 |@....J...T.. tex| 00000220 74 20 65 6e 74 72 79 20 66 6f 72 20 69 74 65 6d |t entry for item| 00000230 0d 01 5e 05 f4 0d 01 68 04 0d 01 72 23 f4 20 2a |..^....h...r#. *| 00000240 20 4d 61 72 6b 73 20 6c 61 73 74 20 69 74 65 6d | Marks last item| 00000250 20 6f 6e 20 74 68 65 20 6c 69 73 74 0d 01 7c 31 | on the list..|1| 00000260 f4 20 23 20 49 6e 64 69 63 61 74 65 73 20 64 6f |. # Indicates do| 00000270 74 74 65 64 20 6c 69 6e 65 20 74 6f 20 66 6f 6c |tted line to fol| 00000280 6c 6f 77 20 74 68 69 73 20 69 74 65 6d 0d 01 86 |low this item...| 00000290 46 f4 20 40 20 54 68 69 73 20 69 74 65 6d 20 69 |F. @ This item i| 000002a0 73 20 69 6e 64 69 72 65 63 74 65 64 2e 20 49 6e |s indirected. In| 000002b0 64 69 72 65 63 74 69 6f 6e 20 61 64 64 72 65 73 |direction addres| 000002c0 73 20 61 6e 64 20 6c 65 6e 67 74 68 20 66 6f 6c |s and length fol| 000002d0 6c 6f 77 0d 01 90 44 f4 20 7e 20 54 68 69 73 20 |low...D. ~ This | 000002e0 69 74 65 6d 20 68 61 73 20 61 20 76 61 6c 69 64 |item has a valid| 000002f0 61 74 69 6f 6e 20 73 74 72 69 6e 67 2e 20 41 64 |ation string. Ad| 00000300 64 72 65 73 73 20 61 6e 64 20 76 61 6c 69 64 24 |dress and valid$| 00000310 20 66 6f 6c 6c 6f 77 0d 01 9a 1b f4 20 2f 20 54 | follow..... / T| 00000320 68 69 73 20 69 74 65 6d 20 69 73 20 73 68 61 64 |his item is shad| 00000330 65 64 0d 01 a4 35 f4 20 5e 20 54 68 69 73 20 69 |ed...5. ^ This i| 00000340 74 65 6d 20 68 61 73 20 61 20 73 75 62 20 6d 65 |tem has a sub me| 00000350 6e 75 20 77 68 6f 73 65 20 68 61 6e 64 6c 65 20 |nu whose handle | 00000360 66 6f 6c 6c 6f 77 73 0d 01 ae 04 0d 01 b8 04 0d |follows.........| 00000370 01 c2 11 dd 20 a4 63 72 65 61 74 65 6d 65 6e 75 |.... .createmenu| 00000380 0d 01 cc 44 ea 20 6c 6f 6f 70 25 2c 66 6c 61 67 |...D. loop%,flag| 00000390 73 25 2c 73 75 62 6d 65 6e 75 70 74 72 25 2c 69 |s%,submenuptr%,i| 000003a0 66 6c 61 67 25 2c 61 64 64 72 65 73 73 25 2c 6c |flag%,address%,l| 000003b0 65 6e 67 74 68 25 2c 76 61 6c 69 64 25 2c 76 61 |ength%,valid%,va| 000003c0 6c 69 64 24 0d 01 d6 1a 65 72 72 6f 72 70 6f 73 |lid$....errorpos| 000003d0 24 3d 22 63 72 65 61 74 65 6d 65 6e 75 22 0d 01 |$="createmenu"..| 000003e0 e0 04 0d 01 ea 44 e7 20 28 6d 65 6e 75 70 6f 69 |.....D. (menupoi| 000003f0 6e 74 65 72 20 2b 20 32 38 29 20 3e 20 6d 65 6e |nter + 28) > men| 00000400 75 65 6e 64 20 8c 20 85 20 31 2c 22 4e 6f 20 72 |uend . . 1,"No r| 00000410 6f 6f 6d 20 66 6f 72 20 6d 65 6e 75 20 63 72 65 |oom for menu cre| 00000420 61 74 69 6f 6e 22 0d 01 f4 04 0d 01 fe 1b 6d 65 |ation"........me| 00000430 6e 75 73 74 61 72 74 20 3d 20 6d 65 6e 75 70 6f |nustart = menupo| 00000440 69 6e 74 65 72 0d 02 08 04 0d 02 12 1f 6d 65 6e |inter........men| 00000450 75 70 6f 69 6e 74 65 72 21 26 30 30 20 3d 20 26 |upointer!&00 = &| 00000460 30 30 30 30 30 30 30 30 0d 02 1c 1f 6d 65 6e 75 |00000000....menu| 00000470 70 6f 69 6e 74 65 72 21 26 30 34 20 3d 20 26 30 |pointer!&04 = &0| 00000480 30 30 30 30 30 30 30 0d 02 26 1f 6d 65 6e 75 70 |0000000..&.menup| 00000490 6f 69 6e 74 65 72 21 26 30 38 20 3d 20 26 30 30 |ointer!&08 = &00| 000004a0 30 30 30 30 30 30 0d 02 30 04 0d 02 3a 0a f3 20 |000000..0...:.. | 000004b0 6d 65 6e 75 0d 02 44 12 f3 20 24 6d 65 6e 75 70 |menu..D.. $menup| 000004c0 6f 69 6e 74 65 72 0d 02 4e 15 f3 20 6d 65 6e 75 |ointer..N.. menu| 000004d0 70 6f 69 6e 74 65 72 3f 26 30 43 0d 02 58 15 f3 |pointer?&0C..X..| 000004e0 20 6d 65 6e 75 70 6f 69 6e 74 65 72 3f 26 30 44 | menupointer?&0D| 000004f0 0d 02 62 15 f3 20 6d 65 6e 75 70 6f 69 6e 74 65 |..b.. menupointe| 00000500 72 3f 26 30 45 0d 02 6c 15 f3 20 6d 65 6e 75 70 |r?&0E..l.. menup| 00000510 6f 69 6e 74 65 72 3f 26 30 46 0d 02 76 15 f3 20 |ointer?&0F..v.. | 00000520 6d 65 6e 75 70 6f 69 6e 74 65 72 21 26 31 30 0d |menupointer!&10.| 00000530 02 80 15 f3 20 6d 65 6e 75 70 6f 69 6e 74 65 72 |.... menupointer| 00000540 21 26 31 34 0d 02 8a 15 f3 20 6d 65 6e 75 70 6f |!&14..... menupo| 00000550 69 6e 74 65 72 21 26 31 38 0d 02 94 0c f3 20 64 |inter!&18..... d| 00000560 66 6c 61 67 25 0d 02 9e 04 0d 02 a8 16 6d 65 6e |flag%........men| 00000570 75 70 6f 69 6e 74 65 72 20 2b 3d 20 26 31 63 0d |upointer += &1c.| 00000580 02 b2 04 0d 02 bc 05 f5 0d 02 c6 44 e7 20 28 6d |...........D. (m| 00000590 65 6e 75 70 6f 69 6e 74 65 72 20 2b 20 32 34 29 |enupointer + 24)| 000005a0 20 3e 20 6d 65 6e 75 65 6e 64 20 8c 20 85 20 31 | > menuend . . 1| 000005b0 2c 22 4e 6f 20 72 6f 6f 6d 20 66 6f 72 20 6d 65 |,"No room for me| 000005c0 6e 75 20 63 72 65 61 74 69 6f 6e 22 0d 02 d0 04 |nu creation"....| 000005d0 0d 02 da 0e 66 6c 61 67 73 25 20 3d 20 30 0d 02 |....flags% = 0..| 000005e0 e4 14 73 75 62 6d 65 6e 75 70 74 72 25 20 3d 20 |..submenuptr% = | 000005f0 2d 31 0d 02 ee 0e 69 66 6c 61 67 25 20 3d 20 30 |-1....iflag% = 0| 00000600 0d 02 f8 0f 76 61 6c 69 64 25 20 3d 20 2d 31 0d |....valid% = -1.| 00000610 03 02 0b f3 20 74 65 78 74 24 0d 03 0c 04 0d 03 |.... text$......| 00000620 16 47 e7 20 c0 74 65 78 74 24 2c 31 29 20 3d 20 |.G. .text$,1) = | 00000630 22 2a 22 20 8c 20 66 6c 61 67 73 25 20 3d 20 66 |"*" . flags% = f| 00000640 6c 61 67 73 25 20 84 20 26 30 30 30 30 30 30 38 |lags% . &0000008| 00000650 30 20 3a 20 74 65 78 74 24 20 3d 20 c1 74 65 78 |0 : text$ = .tex| 00000660 74 24 2c 32 29 0d 03 20 47 e7 20 c0 74 65 78 74 |t$,2).. G. .text| 00000670 24 2c 31 29 20 3d 20 22 23 22 20 8c 20 66 6c 61 |$,1) = "#" . fla| 00000680 67 73 25 20 3d 20 66 6c 61 67 73 25 20 84 20 26 |gs% = flags% . &| 00000690 30 30 30 30 30 30 30 32 20 3a 20 74 65 78 74 24 |00000002 : text$| 000006a0 20 3d 20 c1 74 65 78 74 24 2c 32 29 0d 03 2a 53 | = .text$,2)..*S| 000006b0 e7 20 c0 74 65 78 74 24 2c 31 29 20 3d 20 22 40 |. .text$,1) = "@| 000006c0 22 20 8c 20 74 65 78 74 24 20 3d 20 c1 74 65 78 |" . text$ = .tex| 000006d0 74 24 2c 32 29 20 3a 20 69 66 6c 61 67 25 20 3d |t$,2) : iflag% =| 000006e0 20 26 30 30 30 30 30 31 30 30 20 3a 20 f3 20 61 | &00000100 : . a| 000006f0 64 64 72 65 73 73 25 2c 6c 65 6e 67 74 68 25 0d |ddress%,length%.| 00000700 03 34 59 e7 20 c0 74 65 78 74 24 2c 31 29 20 3d |.4Y. .text$,1) =| 00000710 20 22 7e 22 20 8c 20 66 6c 61 67 73 25 20 3d 20 | "~" . flags% = | 00000720 66 6c 61 67 73 25 20 84 20 26 30 30 30 30 30 30 |flags% . &000000| 00000730 30 34 20 3a 20 74 65 78 74 24 20 3d 20 c1 74 65 |04 : text$ = .te| 00000740 78 74 24 2c 32 29 20 3a 20 f3 20 76 61 6c 69 64 |xt$,2) : . valid| 00000750 25 2c 76 61 6c 69 64 24 0d 03 3e 43 e7 20 c0 74 |%,valid$..>C. .t| 00000760 65 78 74 24 2c 31 29 20 3d 20 22 2f 22 20 8c 20 |ext$,1) = "/" . | 00000770 69 66 6c 61 67 25 20 3d 20 69 66 6c 61 67 25 20 |iflag% = iflag% | 00000780 84 20 31 3c 3c 32 32 20 3a 20 74 65 78 74 24 20 |. 1<<22 : text$ | 00000790 3d 20 c1 74 65 78 74 24 2c 32 29 0d 03 48 39 e7 |= .text$,2)..H9.| 000007a0 20 c0 74 65 78 74 24 2c 31 29 20 3d 20 22 5e 22 | .text$,1) = "^"| 000007b0 20 8c 20 74 65 78 74 24 20 3d 20 c1 74 65 78 74 | . text$ = .text| 000007c0 24 2c 32 29 20 3a 20 f3 20 73 75 62 6d 65 6e 75 |$,2) : . submenu| 000007d0 70 74 72 25 0d 03 52 04 0d 03 5c 1c 6d 65 6e 75 |ptr%..R...\.menu| 000007e0 70 6f 69 6e 74 65 72 21 26 30 30 20 3d 20 66 6c |pointer!&00 = fl| 000007f0 61 67 73 25 0d 03 66 21 6d 65 6e 75 70 6f 69 6e |ags%..f!menupoin| 00000800 74 65 72 21 26 30 34 20 3d 20 73 75 62 6d 65 6e |ter!&04 = submen| 00000810 75 70 74 72 25 0d 03 70 35 f4 20 20 20 20 20 20 |uptr%..p5. | 00000820 20 20 20 20 20 20 20 20 20 20 31 30 39 38 37 36 | 109876| 00000830 35 34 33 32 31 30 39 38 37 36 35 34 33 32 31 30 |5432109876543210| 00000840 39 38 37 36 35 34 33 32 31 30 0d 03 7a 49 6d 65 |9876543210..zIme| 00000850 6e 75 70 6f 69 6e 74 65 72 21 26 30 38 20 3d 20 |nupointer!&08 = | 00000860 25 30 30 30 30 30 31 31 31 30 30 30 30 30 30 30 |%000001110000000| 00000870 30 30 30 31 31 30 30 30 30 30 30 30 31 30 30 30 |0001100000001000| 00000880 31 20 84 20 69 66 6c 61 67 25 20 84 20 64 66 6c |1 . iflag% . dfl| 00000890 61 67 25 0d 03 84 04 0d 03 8e 1b e7 20 28 69 66 |ag%......... (if| 000008a0 6c 61 67 25 20 80 20 26 31 30 30 29 20 3d 20 30 |lag% . &100) = 0| 000008b0 20 8c 0d 03 98 21 20 20 6d 65 6e 75 70 6f 69 6e | ....! menupoin| 000008c0 74 65 72 21 26 30 63 20 3d 20 26 30 30 30 30 30 |ter!&0c = &00000| 000008d0 30 30 30 0d 03 a2 21 20 20 6d 65 6e 75 70 6f 69 |000...! menupoi| 000008e0 6e 74 65 72 21 26 31 30 20 3d 20 26 30 30 30 30 |nter!&10 = &0000| 000008f0 30 30 30 30 0d 03 ac 21 20 20 6d 65 6e 75 70 6f |0000...! menupo| 00000900 69 6e 74 65 72 21 26 31 34 20 3d 20 26 30 30 30 |inter!&14 = &000| 00000910 30 30 30 30 30 0d 03 b6 20 20 20 24 28 6d 65 6e |00000... $(men| 00000920 75 70 6f 69 6e 74 65 72 2b 26 30 63 29 20 3d 20 |upointer+&0c) = | 00000930 74 65 78 74 24 0d 03 c0 05 cc 0d 03 ca 20 20 20 |text$........ | 00000940 6d 65 6e 75 70 6f 69 6e 74 65 72 21 26 30 63 20 |menupointer!&0c | 00000950 3d 20 61 64 64 72 65 73 73 25 0d 03 d4 1e 20 20 |= address%.... | 00000960 6d 65 6e 75 70 6f 69 6e 74 65 72 21 26 31 30 20 |menupointer!&10 | 00000970 3d 20 76 61 6c 69 64 25 0d 03 de 1f 20 20 6d 65 |= valid%.... me| 00000980 6e 75 70 6f 69 6e 74 65 72 21 26 31 34 20 3d 20 |nupointer!&14 = | 00000990 6c 65 6e 67 74 68 25 0d 03 e8 17 20 20 24 61 64 |length%.... $ad| 000009a0 64 72 65 73 73 25 20 3d 20 74 65 78 74 24 0d 03 |dress% = text$..| 000009b0 f2 27 20 20 e7 20 76 61 6c 69 64 25 20 3c 3e 20 |.' . valid% <> | 000009c0 2d 31 20 8c 20 24 76 61 6c 69 64 25 20 3d 20 76 |-1 . $valid% = v| 000009d0 61 6c 69 64 24 0d 03 fc 05 cd 0d 04 06 16 6d 65 |alid$.........me| 000009e0 6e 75 70 6f 69 6e 74 65 72 20 2b 3d 20 26 31 38 |nupointer += &18| 000009f0 0d 04 10 04 0d 04 1a 14 fd 20 28 66 6c 61 67 73 |......... (flags| 00000a00 25 20 80 20 26 38 30 29 0d 04 24 04 0d 04 2e 0f |% . &80)..$.....| 00000a10 3d 20 6d 65 6e 75 73 74 61 72 74 0d 04 38 04 0d |= menustart..8..| 00000a20 04 42 04 0d 04 4c 22 dd 20 f2 6f 70 65 6e 6d 65 |.B...L". .openme| 00000a30 6e 75 28 6d 65 6e 75 61 64 64 72 65 73 73 2c 78 |nu(menuaddress,x| 00000a40 25 2c 79 25 29 0d 04 56 18 65 72 72 6f 72 70 6f |%,y%)..V.errorpo| 00000a50 73 24 3d 22 6f 70 65 6e 6d 65 6e 75 22 0d 04 60 |s$="openmenu"..`| 00000a60 2b c8 99 20 22 57 69 6d 70 5f 43 72 65 61 74 65 |+.. "Wimp_Create| 00000a70 4d 65 6e 75 22 2c 2c 6d 65 6e 75 61 64 64 72 65 |Menu",,menuaddre| 00000a80 73 73 2c 78 25 2c 79 25 0d 04 6a 1d 63 75 72 72 |ss,x%,y%..j.curr| 00000a90 65 6e 74 6d 65 6e 75 20 3d 20 6d 65 6e 75 61 64 |entmenu = menuad| 00000aa0 64 72 65 73 73 0d 04 74 0f 6d 65 6e 75 78 25 20 |dress..t.menux% | 00000ab0 3d 20 78 25 0d 04 7e 0f 6d 65 6e 75 79 25 20 3d |= x%..~.menuy% =| 00000ac0 20 79 25 0d 04 88 05 e1 0d 04 92 04 0d 04 9c 04 | y%.............| 00000ad0 0d 04 a6 15 dd 20 a4 69 6e 69 74 69 61 6c 69 73 |..... .initialis| 00000ae0 65 74 61 73 6b 0d 04 b0 1e 65 72 72 6f 72 70 6f |etask....errorpo| 00000af0 73 24 3d 22 69 6e 69 74 69 61 6c 69 73 65 74 61 |s$="initialiseta| 00000b00 73 6b 22 0d 04 ba 16 ea 20 74 61 73 6b 69 64 25 |sk"..... taskid%| 00000b10 2c 76 65 72 73 69 6f 6e 25 0d 04 c4 3f c8 99 20 |,version%...?.. | 00000b20 22 57 69 6d 70 5f 49 6e 69 74 69 61 6c 69 73 65 |"Wimp_Initialise| 00000b30 22 2c 32 30 30 2c 26 34 42 35 33 34 31 35 34 2c |",200,&4B534154,| 00000b40 74 61 73 6b 24 20 b8 20 76 65 72 73 69 6f 6e 25 |task$ . version%| 00000b50 2c 74 61 73 6b 69 64 25 0d 04 ce 4b e7 20 76 65 |,taskid%...K. ve| 00000b60 72 73 69 6f 6e 25 20 3c 20 32 30 30 20 8c 20 85 |rsion% < 200 . .| 00000b70 20 31 2c 74 61 73 6b 24 20 2b 20 22 20 72 65 71 | 1,task$ + " req| 00000b80 75 69 72 65 73 20 57 69 6d 70 20 4d 61 6e 61 67 |uires Wimp Manag| 00000b90 65 72 20 56 20 32 2e 30 30 20 6f 72 20 6c 61 74 |er V 2.00 or lat| 00000ba0 65 72 22 0d 04 d8 0d 3d 20 74 61 73 6b 69 64 25 |er"....= taskid%| 00000bb0 0d 04 e2 04 0d 04 ec 04 0d 04 f6 0c dd 20 a4 65 |............. .e| 00000bc0 72 72 6f 72 0d 05 00 4c e7 20 28 28 9f 20 80 20 |rror...L. ((. . | 00000bd0 26 31 30 30 30 30 29 20 3d 20 26 31 30 30 30 30 |&10000) = &10000| 00000be0 29 20 84 20 28 9f 20 3d 20 31 29 20 8c 20 64 75 |) . (. = 1) . du| 00000bf0 6d 6d 79 20 3d 20 a4 65 72 72 6f 72 77 69 6e 64 |mmy = .errorwind| 00000c00 6f 77 28 f6 24 2c 9f 2c 31 29 20 3a 20 3d 20 32 |ow(.$,.,1) : = 2| 00000c10 0d 05 0a 7c 3d 20 a4 65 72 72 6f 72 77 69 6e 64 |...|= .errorwind| 00000c20 6f 77 28 f6 24 2b 22 2e 20 22 20 2b 20 74 61 73 |ow(.$+". " + tas| 00000c30 6b 24 20 2b 20 22 20 68 61 73 20 73 75 66 66 65 |k$ + " has suffe| 00000c40 72 65 64 20 61 20 66 61 74 61 6c 20 65 72 72 6f |red a fatal erro| 00000c50 72 20 28 22 2b c3 7e 28 9f 29 2b c3 28 9e 29 2b |r ("+.~(.)+.(.)+| 00000c60 76 65 72 73 69 6f 6e 24 2b 22 29 20 61 6e 64 20 |version$+") and | 00000c70 6d 75 73 74 20 65 78 69 74 20 69 6d 6d 65 64 69 |must exit immedi| 00000c80 61 74 65 6c 79 2e 22 2c 9f 2c 37 29 0d 05 14 04 |ately.",.,7)....| 00000c90 0d 05 1e 04 0d 05 28 29 dd 20 a4 65 72 72 6f 72 |......(). .error| 00000ca0 77 69 6e 64 6f 77 28 74 65 78 74 24 2c 65 72 72 |window(text$,err| 00000cb0 6f 72 6e 75 6d 2c 66 6c 61 67 73 25 29 0d 05 32 |ornum,flags%)..2| 00000cc0 11 ea 20 65 72 72 6f 72 72 65 73 75 6c 74 0d 05 |.. errorresult..| 00000cd0 3c 17 21 62 75 66 66 65 72 25 20 3d 20 65 72 72 |<.!buffer% = err| 00000ce0 6f 72 6e 75 6d 0d 05 46 18 24 28 62 75 66 66 65 |ornum..F.$(buffe| 00000cf0 72 25 2b 34 29 20 3d 20 74 65 78 74 24 0d 05 50 |r%+4) = text$..P| 00000d00 3d c8 99 20 22 57 69 6d 70 5f 52 65 70 6f 72 74 |=.. "Wimp_Report| 00000d10 45 72 72 6f 72 22 2c 62 75 66 66 65 72 25 2c 66 |Error",buffer%,f| 00000d20 6c 61 67 73 25 2c 74 61 73 6b 24 20 b8 20 2c 65 |lags%,task$ . ,e| 00000d30 72 72 6f 72 72 65 73 75 6c 74 0d 05 5a 11 3d 20 |rrorresult..Z.= | 00000d40 65 72 72 6f 72 72 65 73 75 6c 74 0d 05 64 04 0d |errorresult..d..| 00000d50 05 6e 04 0d 05 78 2e dd 20 f2 6f 70 65 6e 77 69 |.n...x.. .openwi| 00000d60 6e 64 6f 77 28 77 69 6e 64 6f 77 68 61 6e 64 6c |ndow(windowhandl| 00000d70 65 25 2c 78 25 2c 79 25 2c 78 31 25 2c 79 31 25 |e%,x%,y%,x1%,y1%| 00000d80 29 0d 05 82 1a 65 72 72 6f 72 70 6f 73 24 3d 22 |)....errorpos$="| 00000d90 6f 70 65 6e 77 69 6e 64 6f 77 22 0d 05 8c 24 77 |openwindow"...$w| 00000da0 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 21 30 20 |impworkspace%!0 | 00000db0 3d 20 77 69 6e 64 6f 77 68 61 6e 64 6c 65 25 0d |= windowhandle%.| 00000dc0 05 96 19 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 |...wimpworkspace| 00000dd0 25 21 34 20 3d 20 78 25 0d 05 a0 19 77 69 6d 70 |%!4 = x%....wimp| 00000de0 77 6f 72 6b 73 70 61 63 65 25 21 38 20 3d 20 79 |workspace%!8 = y| 00000df0 25 0d 05 aa 1b 77 69 6d 70 77 6f 72 6b 73 70 61 |%....wimpworkspa| 00000e00 63 65 25 21 31 32 20 3d 20 78 31 25 0d 05 b4 1b |ce%!12 = x1%....| 00000e10 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 21 31 |wimpworkspace%!1| 00000e20 36 20 3d 20 79 31 25 0d 05 be 19 77 69 6d 70 77 |6 = y1%....wimpw| 00000e30 6f 72 6b 73 70 61 63 65 25 21 32 30 20 3d 20 30 |orkspace%!20 = 0| 00000e40 0d 05 c8 19 77 69 6d 70 77 6f 72 6b 73 70 61 63 |....wimpworkspac| 00000e50 65 25 21 32 34 20 3d 20 30 0d 05 d2 1a 77 69 6d |e%!24 = 0....wim| 00000e60 70 77 6f 72 6b 73 70 61 63 65 25 21 32 38 20 3d |pworkspace%!28 =| 00000e70 20 2d 31 0d 05 dc 04 0d 05 e6 28 c8 99 20 22 57 | -1.......(.. "W| 00000e80 69 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c |imp_OpenWindow",| 00000e90 2c 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 0d |,wimpworkspace%.| 00000ea0 05 f0 05 e1 0d 05 fa 04 0d 06 04 04 0d 06 0e 21 |...............!| 00000eb0 dd 20 f2 63 6c 6f 73 65 77 69 6e 64 6f 77 28 77 |. .closewindow(w| 00000ec0 69 6e 64 6f 77 68 61 6e 64 6c 65 25 29 0d 06 18 |indowhandle%)...| 00000ed0 1b 65 72 72 6f 72 70 6f 73 24 3d 22 63 6c 6f 73 |.errorpos$="clos| 00000ee0 65 77 69 6e 64 6f 77 22 0d 06 22 23 21 77 69 6d |ewindow".."#!wim| 00000ef0 70 77 6f 72 6b 73 70 61 63 65 25 20 3d 20 77 69 |pworkspace% = wi| 00000f00 6e 64 6f 77 68 61 6e 64 6c 65 25 0d 06 2c 29 c8 |ndowhandle%..,).| 00000f10 99 20 22 57 69 6d 70 5f 43 6c 6f 73 65 57 69 6e |. "Wimp_CloseWin| 00000f20 64 6f 77 22 2c 2c 77 69 6d 70 77 6f 72 6b 73 70 |dow",,wimpworksp| 00000f30 61 63 65 25 0d 06 36 05 e1 0d 06 40 04 0d 06 4a |ace%..6....@...J| 00000f40 05 20 0d 06 54 69 dd 20 a4 63 72 65 61 74 65 69 |. ..Ti. .createi| 00000f50 6e 64 69 72 65 63 74 65 64 73 70 72 69 74 65 28 |ndirectedsprite(| 00000f60 77 69 6e 64 6f 77 68 61 6e 64 6c 65 2c 6d 69 6e |windowhandle,min| 00000f70 78 25 2c 6d 69 6e 79 25 2c 77 69 64 74 68 2c 68 |x%,miny%,width,h| 00000f80 65 69 67 68 74 2c 66 6c 61 67 73 2c 73 70 72 69 |eight,flags,spri| 00000f90 74 65 61 64 64 72 65 73 73 2c 6e 61 6d 65 62 75 |teaddress,namebu| 00000fa0 66 66 65 72 2c 69 63 6f 6e 24 29 0d 06 5e 26 65 |ffer,icon$)..^&e| 00000fb0 72 72 6f 72 70 6f 73 24 3d 22 63 72 65 61 74 65 |rrorpos$="create| 00000fc0 69 6e 64 69 72 65 63 74 65 64 73 70 72 69 74 65 |indirectedsprite| 00000fd0 22 0d 06 68 10 ea 20 69 63 6f 6e 68 61 6e 64 6c |"..h.. iconhandl| 00000fe0 65 0d 06 72 04 0d 06 7c 24 77 69 6d 70 77 6f 72 |e..r...|$wimpwor| 00000ff0 6b 73 70 61 63 65 25 21 30 20 20 3d 20 77 69 6e |kspace%!0 = win| 00001000 64 6f 77 68 61 6e 64 6c 65 0d 06 86 1d 77 69 6d |dowhandle....wim| 00001010 70 77 6f 72 6b 73 70 61 63 65 25 21 34 20 20 3d |pworkspace%!4 =| 00001020 20 6d 69 6e 78 25 0d 06 90 1d 77 69 6d 70 77 6f | minx%....wimpwo| 00001030 72 6b 73 70 61 63 65 25 21 38 20 20 3d 20 6d 69 |rkspace%!8 = mi| 00001040 6e 79 25 0d 06 9a 25 77 69 6d 70 77 6f 72 6b 73 |ny%...%wimpworks| 00001050 70 61 63 65 25 21 31 32 20 3d 20 6d 69 6e 78 25 |pace%!12 = minx%| 00001060 20 2b 20 77 69 64 74 68 0d 06 a4 26 77 69 6d 70 | + width...&wimp| 00001070 77 6f 72 6b 73 70 61 63 65 25 21 31 36 20 3d 20 |workspace%!16 = | 00001080 6d 69 6e 79 25 20 2b 20 68 65 69 67 68 74 0d 06 |miny% + height..| 00001090 ae 1d 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 |..wimpworkspace%| 000010a0 21 32 30 20 3d 20 66 6c 61 67 73 0d 06 b8 04 0d |!20 = flags.....| 000010b0 06 c2 22 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 |.."wimpworkspace| 000010c0 25 21 32 34 20 3d 20 6e 61 6d 65 62 75 66 66 65 |%!24 = namebuffe| 000010d0 72 0d 06 cc 25 77 69 6d 70 77 6f 72 6b 73 70 61 |r...%wimpworkspa| 000010e0 63 65 25 21 32 38 20 3d 20 73 70 72 69 74 65 61 |ce%!28 = spritea| 000010f0 64 64 72 65 73 73 0d 06 d6 20 77 69 6d 70 77 6f |ddress... wimpwo| 00001100 72 6b 73 70 61 63 65 25 21 33 32 20 3d 20 a9 28 |rkspace%!32 = .(| 00001110 69 63 6f 6e 24 29 0d 06 e0 20 24 28 77 69 6d 70 |icon$)... $(wimp| 00001120 77 6f 72 6b 73 70 61 63 65 25 21 32 34 29 20 3d |workspace%!24) =| 00001130 20 69 63 6f 6e 24 0d 06 ea 04 0d 06 f4 35 c8 99 | icon$.......5..| 00001140 20 22 57 69 6d 70 5f 43 72 65 61 74 65 49 63 6f | "Wimp_CreateIco| 00001150 6e 22 2c 2c 77 69 6d 70 77 6f 72 6b 73 70 61 63 |n",,wimpworkspac| 00001160 65 25 20 b8 20 69 63 6f 6e 68 61 6e 64 6c 65 0d |e% . iconhandle.| 00001170 06 fe 04 0d 07 08 10 3d 20 69 63 6f 6e 68 61 6e |.......= iconhan| 00001180 64 6c 65 0d 07 12 04 0d 07 1c 04 0d 07 26 43 dd |dle..........&C.| 00001190 20 a4 63 72 65 61 74 65 69 63 6f 6e 28 77 69 6e | .createicon(win| 000011a0 64 6f 77 68 61 6e 64 6c 65 2c 6d 69 6e 78 25 2c |dowhandle,minx%,| 000011b0 6d 69 6e 79 25 2c 6d 61 78 78 25 2c 6d 61 78 79 |miny%,maxx%,maxy| 000011c0 25 2c 66 6c 61 67 73 2c 69 63 6f 6e 24 29 0d 07 |%,flags,icon$)..| 000011d0 30 1a 65 72 72 6f 72 70 6f 73 24 3d 22 63 72 65 |0.errorpos$="cre| 000011e0 61 74 65 69 63 6f 6e 22 0d 07 3a 10 ea 20 69 63 |ateicon"..:.. ic| 000011f0 6f 6e 68 61 6e 64 6c 65 0d 07 44 04 0d 07 4e 24 |onhandle..D...N$| 00001200 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 21 30 |wimpworkspace%!0| 00001210 20 20 3d 20 77 69 6e 64 6f 77 68 61 6e 64 6c 65 | = windowhandle| 00001220 0d 07 58 1d 77 69 6d 70 77 6f 72 6b 73 70 61 63 |..X.wimpworkspac| 00001230 65 25 21 34 20 20 3d 20 6d 69 6e 78 25 0d 07 62 |e%!4 = minx%..b| 00001240 1d 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 21 |.wimpworkspace%!| 00001250 38 20 20 3d 20 6d 69 6e 79 25 0d 07 6c 1d 77 69 |8 = miny%..l.wi| 00001260 6d 70 77 6f 72 6b 73 70 61 63 65 25 21 31 32 20 |mpworkspace%!12 | 00001270 3d 20 6d 61 78 78 25 0d 07 76 1d 77 69 6d 70 77 |= maxx%..v.wimpw| 00001280 6f 72 6b 73 70 61 63 65 25 21 31 36 20 3d 20 6d |orkspace%!16 = m| 00001290 61 78 79 25 0d 07 80 1d 77 69 6d 70 77 6f 72 6b |axy%....wimpwork| 000012a0 73 70 61 63 65 25 21 32 30 20 3d 20 66 6c 61 67 |space%!20 = flag| 000012b0 73 0d 07 8a 04 0d 07 94 19 77 69 6d 70 77 6f 72 |s........wimpwor| 000012c0 6b 73 70 61 63 65 25 21 32 34 20 3d 20 30 0d 07 |kspace%!24 = 0..| 000012d0 9e 19 77 69 6d 70 77 6f 72 6b 73 70 61 63 65 25 |..wimpworkspace%| 000012e0 21 32 38 20 3d 20 30 0d 07 a8 19 77 69 6d 70 77 |!28 = 0....wimpw| 000012f0 6f 72 6b 73 70 61 63 65 25 21 33 32 20 3d 20 30 |orkspace%!32 = 0| 00001300 0d 07 b2 20 24 28 77 69 6d 70 77 6f 72 6b 73 70 |... $(wimpworksp| 00001310 61 63 65 25 2b 32 34 29 20 3d 20 69 63 6f 6e 24 |ace%+24) = icon$| 00001320 0d 07 bc 04 0d 07 c6 35 c8 99 20 22 57 69 6d 70 |.......5.. "Wimp| 00001330 5f 43 72 65 61 74 65 49 63 6f 6e 22 2c 2c 77 69 |_CreateIcon",,wi| 00001340 6d 70 77 6f 72 6b 73 70 61 63 65 25 20 b8 20 69 |mpworkspace% . i| 00001350 63 6f 6e 68 61 6e 64 6c 65 0d 07 d0 04 0d 07 da |conhandle.......| 00001360 10 3d 20 69 63 6f 6e 68 61 6e 64 6c 65 0d ff |.= iconhandle..| 0000136f