Home » Archimedes archive » Acorn Computing » 1992 12 Mega Disk.adf » !_92_12 » SFXM/!SFXED/!RunImage

SFXM/!SFXED/!RunImage

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

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

Tape/disk: Home » Archimedes archive » Acorn Computing » 1992 12 Mega Disk.adf » !_92_12
Filename: SFXM/!SFXED/!RunImage
Read OK:
File size: 122EE bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >:0.$.!sfxed.!RunImage
   20REM >Written by G. Vermeulen
   30ON ERROR PROCIntError:GOTO 50
   40PROCInit
   50REPEAT
   60SYS"Wimp_Poll",0,pollb% TO reason%,polledb%
   70CASE reason% OF
   80WHEN 0:PROCNull_Reason
   90WHEN 1:PROCRedraw_Window
  100WHEN 2:PROCOpen_Window
  110WHEN 3:PROCClose_Window
  120WHEN 6:PROCMouse_Click
  130WHEN 7:PROCUser_Drag_Box
  140WHEN 8:PROCKey_Pressed
  150WHEN 9:PROCMenu_Select
  160WHEN 17,18,19:PROCUser_Message
  170ENDCASE
  180UNTIL FALSE
  190END
  200
  210DEFPROCIntError
  220LOCAL ERROR
  230ON ERROR LOCAL GOTO 25300
  240A%=FNinterr(REPORT$+" at line "+STR$ERL+". Continue program?")
  250IF A%=2 THEN PROCQuit
  260ENDPROC
  270
  280DEFPROCScrToWork
  290temp%!0=wworkh%
  300SYS"Wimp_GetWindowState",,temp%
  310SYS"Wimp_GetPointerInfo",,temp2%
  320workx%=temp2%!0-temp%!4+temp%!20
  330IF workx%<0 THEN workx%=0
  340IF workx%>maxx% THEN workx%=maxx%
  350ENDPROC
  360
  370DEFFNWorkToPtr(a%)
  380IF a%=-1 THEN =-1 ELSE =INT(0.5+samplelen%*a%/maxx%)
  390
  400DEFFNPtrToWork(a%)
  410IF a%=-1 THEN =-1 ELSE =INT(0.5+maxx%*a%/samplelen%)
  420
  430DEFPROCNull_Reason
  440PROCPutPtrs
  450PROCPlotPP
  460PROCCheckScroll
  470CASE dragtype% OF
  480WHEN 1:PROCDragASelL
  490WHEN 2:PROCDragASelR
  500WHEN 3:PROCDragLoopL
  510WHEN 4:PROCDragLoopR
  520ENDCASE
  530ENDPROC
  540
  550DEFPROCPutPtrs
  560SYS"SFXMP_GetPtrs"TOA%:A%!0=startsample%:A%!4=samplelen%:A%!8=ploopl%:A%!12=ploopr%:A%!16=pselectl%:A%!20=pselectr%:A%!24=playtype%:A%!28=stype%:A%!32=releasek%:A%!36=multiplek%:A%!40=okt%
  570SYS"Wimp_GetCaretPosition",,temp%
  580IF temp%!0=wkeyboardh% THEN SYS"SFXMP_Enable" ELSE SYS"SFXMP_Disable"
  590ENDPROC
  600
  610DEFPROCPlotPP
  620IF playp%<>-1 THEN PROCPlotPPtr
  630SYS"SFXMP_GetBlock"TOA%:IF A%!40<>0 THEN playp%=((A%!32)>>>12)+A%!36-startsample%:PROCPlotPPtr ELSE playp%=-1
  640ENDPROC
  650
  660DEFPROCCheckScroll
  670temp%!0=wworkh%:SYS"Wimp_GetWindowState",,temp%:SYS"Wimp_GetPointerInfo",,temp2%
  680IF (temp2%!12=wworkh%) AND (temp2%!16=-1) THEN
  690IF ABS(temp%!4-temp2%!0)<64 THEN PROCScrollL
  700IF ABS(temp%!12-temp2%!0)<64 THEN PROCScrollR
  710A%=temp2%!0+temp%!20-temp%!4:IF A%<0 THEN A%=0
  720pos%=FNWorkToPtr(A%):PROCDrawPos
  730ENDIF
  740ENDPROC
  750
  760DEFPROCDrawPos
  770IF pos%<>oldpos% THEN
  780temp%!0=wposh%:temp%!4=0:SYS"Wimp_GetIconState",,temp%
  790IF pdisphd% THEN $(temp%!28)="&"+STR$~(pos%) ELSE $(temp%!28)=STR$(pos%)
  800temp%!8=0:temp%!12=0:SYS"Wimp_SetIconState",,temp%:oldpos%=pos%
  810ENDIF
  820ENDPROC
  830
  840DEFPROCScrollL
  850diff%=64-ABS(temp%!4-temp2%!0)
  860os%=temp%!20
  870os%=os%-diff%*4
  880IF os%<0 THEN os%=0
  890IF os%>maxx%-1024 THEN os%=maxx%-1024
  900temp%!20=os% AND &fffffffe
  910SYS"Wimp_OpenWindow",,temp%
  920ENDPROC
  930
  940DEFPROCScrollR
  950diff%=64-ABS(temp%!12-temp2%!0)
  960os%=temp%!20
  970os%=os%+diff%*4
  980IF os%<0 THEN os%=0
  990IF os%>maxx%-1024 THEN os%=maxx%-1024
 1000temp%!20=os% AND &fffffffe
 1010SYS"Wimp_OpenWindow",,temp%
 1020ENDPROC
 1030
 1040DEFPROCDragASelL
 1050PROCScrToWork:selectl%=workx%
 1060IF selectl%>selectr% THEN SWAP selectl%,selectr%:dragtype%=2
 1070pselectl%=FNWorkToPtr(selectl%):pselectr%=FNWorkToPtr(selectr%):selectl%=FNPtrToWork(pselectl%):selectr%=FNPtrToWork(pselectr%):PROCUpdateSelect
 1080ENDPROC
 1090
 1100DEFPROCDragASelR
 1110PROCScrToWork:selectr%=workx%
 1120IF selectl%>selectr% THEN SWAP selectl%,selectr%:dragtype%=1
 1130pselectl%=FNWorkToPtr(selectl%):pselectr%=FNWorkToPtr(selectr%):selectl%=FNPtrToWork(pselectl%):selectr%=FNPtrToWork(pselectr%):PROCUpdateSelect
 1140ENDPROC
 1150
 1160DEFPROCDragLoopL
 1170SYS"OS_Byte",202,0,255TO,sh%:dlp%=ploopr%-ploopl%:PROCScrToWork:loopl%=workx%:ploopl%=FNWorkToPtr(loopl%)
 1180IF sh%AND8 THEN
 1190ploopr%=ploopl%+dlp%
 1200IF ploopr%>samplelen% THEN ploopr%=samplelen%:ploopl%=samplelen%-dlp%
 1210ENDIF
 1220loopl%=FNPtrToWork(ploopl%):loopr%=FNPtrToWork(ploopr%)
 1230IF ploopl%>ploopr% THEN ploopr%=ploopl%:loopr%=loopl%
 1240IF loopl%<>oloopl% OR loopr%<>oloopr% THEN PROCUpdateLoopP
 1250ENDPROC
 1260
 1270DEFPROCDragLoopR
 1280SYS"OS_Byte",202,0,255TO,sh%:dlp%=ploopr%-ploopl%:PROCScrToWork:loopr%=workx%:ploopr%=FNWorkToPtr(loopr%)
 1290IF sh%AND8 THEN
 1300ploopl%=ploopr%-dlp%
 1310IF ploopl%<0 THEN ploopl%=0:ploopr%=dlp%
 1320ENDIF
 1330loopl%=FNPtrToWork(ploopl%):loopr%=FNPtrToWork(ploopr%)
 1340IF ploopr%<ploopl% THEN ploopl%=ploopr%:loopl%=loopr%
 1350IF loopl%<>oloopl% OR loopr%<>oloopr% THEN PROCUpdateLoopP
 1360ENDPROC
 1370
 1380DEFPROCRedraw_Window
 1390SYS"Wimp_RedrawWindow",,polledb%TOmore%
 1400CASE polledb%!0 OF
 1410WHEN wworkh%:PROCRedrawWork
 1420WHEN wsongh%:PROCRedrawSong
 1430OTHERWISE:PROCJustRedraw
 1440ENDCASE
 1450ENDPROC
 1460
 1470DEFPROCRedrawWork
 1480lh%=32
 1490mi%=polledb%!4
 1500ma%=polledb%!12
 1510y%=polledb%!8
 1520sl%=polledb%!4-polledb%!20+selectl%
 1530sr%=polledb%!4-polledb%!20+selectr%
 1540ll%=polledb%!4-polledb%!20+loopl%
 1550lr%=polledb%!4-polledb%!20+loopr%
 1560llp%=FNPtrToWork(playp%)
 1570wllp%=polledb%!4-polledb%!20+llp%
 1580dr%=-1
 1590ldr%=-1
 1600rdr%=-1
 1610drp%=-1
 1620IF sl%<polledb%!4 AND sr%<polledb%!4 THEN dr%=0
 1630IF sl%>polledb%!12 AND sr%>polledb%!12 THEN dr%=0
 1640IF sl%<polledb%!4 AND dr% THEN sl%=polledb%!4
 1650IF sr%>polledb%!12 AND dr% THEN sr%=polledb%!12
 1660IF ll%<polledb%!4-32 OR ll%>polledb%!12+32 THEN ldr%=0
 1670IF lr%<polledb%!4-32 OR lr%>polledb%!12+32 THEN rdr%=0
 1680IF wllp%<polledb%!4-4 OR wllp%>polledb%!12+4 THEN drp%=0
 1690
 1700A%=startsample%+samplelen%*(polledb%!20)/maxx%
 1710B%=displen%
 1720C%=512*(startsample%+samplelen%*(polledb%!20)/maxx%-A%)
 1730D%=polledb%!4
 1740E%=polledb%!8
 1750F%=stype%
 1760G%=startsample%
 1770
 1780WHILE more%
 1790SYS"Wimp_SetColour",1
 1800LINE mi%,y%+lh%*1,ma%,y%+lh%*1
 1810LINE mi%,y%+lh%*2,ma%,y%+lh%*2
 1820LINE mi%,y%+lh%*3,ma%,y%+lh%*3
 1830LINE mi%,y%+lh%*5,ma%,y%+lh%*5
 1840LINE mi%,y%+lh%*6,ma%,y%+lh%*6
 1850LINE mi%,y%+lh%*7,ma%,y%+lh%*7
 1860SYS"Wimp_SetColour",3
 1870LINE mi%,y%+lh%*4,ma%,y%+lh%*4
 1880SYS"Wimp_SetColour",7
 1890LINE mi%,y%+lh%*8,ma%,y%+lh%*8
 1900CALLredrwk
 1910IF ldr% THEN
 1920PROCInvCol2
 1930LINE ll%,polledb%!8,ll%,polledb%!8+256
 1940MOVE ll%,polledb%!8+260
 1950MOVE ll%+8,polledb%!8+280
 1960PLOT 85,ll%-8,polledb%!8+280
 1970ENDIF
 1980IF rdr% THEN
 1990PROCInvCol3
 2000LINE lr%,polledb%!8,lr%,polledb%!8+256
 2010MOVE lr%,polledb%!8+260
 2020MOVE lr%+8,polledb%!8+280
 2030PLOT 85,lr%-8,polledb%!8+280
 2040ENDIF
 2050IF (selectl%<>-1) AND (selectr%<>-1) AND dr% THEN
 2060PROCInvCol
 2070RECTANGLE FILL sl%,polledb%!8,sr%-sl%,252
 2080ENDIF
 2090IF (playp%<>-1) AND drp% THEN
 2100PROCInvCol
 2110LINE wllp%,polledb%!8,wllp%,polledb%!8+288
 2120ENDIF
 2130SYS"Wimp_GetRectangle",,polledb%TOmore%
 2140ENDWHILE
 2150ENDPROC
 2160
 2170DEFPROCRedrawSong
 2180zx%=polledb%!4-polledb%!20
 2190zy%=polledb%!16-polledb%!24-96
 2200WHILE more%
 2210SYS"Wimp_SetColour",3
 2220LINE zx%+74,polledb%!32,zx%+74,polledb%!40
 2230LINE zx%+76,polledb%!32,zx%+76,polledb%!40
 2240LINE zx%+246,polledb%!32,zx%+246,polledb%!40
 2250LINE zx%+248,polledb%!32,zx%+248,polledb%!40
 2260LINE zx%+370,polledb%!32,zx%+370,polledb%!40
 2270LINE zx%+372,polledb%!32,zx%+372,polledb%!40
 2280LINE zx%+494,polledb%!32,zx%+494,polledb%!40
 2290LINE zx%+496,polledb%!32,zx%+496,polledb%!40
 2300
 2310SYS"Wimp_SetColour",7
 2320sl%=(zy%-polledb%!40)/36
 2330sr%=1+(zy%-polledb%!32)/36
 2340IF sl%<0 THEN sl%=0
 2350IF sr%<0 THEN sr%=0
 2360IF sl%>songlen% THEN sl%=songlen%
 2370IF sr%>songlen% THEN sr%=songlen%
 2380WHILE sl%<sr%
 2390MOVE zx%+6,zy%-36*sl%
 2400PRINT STR$(sl%+1);
 2410MOVE zx%+82,zy%-36*sl%
 2420PRINT $(songstart%+sl%*32);
 2430MOVE zx%+254,zy%-36*sl%
 2440PRINT STR$(songstart%!(sl%*32+12));
 2450MOVE zx%+378,zy%-36*sl%
 2460PRINT STR$(songstart%!(sl%*32+16));
 2470MOVE zx%+502,zy%-36*sl%
 2480PRINT STR$(songstart%!(sl%*32+20));
 2490sl%+=1
 2500ENDWHILE
 2510SYS"Wimp_GetRectangle",,polledb%TOmore%
 2520ENDWHILE
 2530ENDPROC
 2540
 2550DEFPROCJustRedraw
 2560WHILE more%
 2570SYS"Wimp_GetRectangle",,polledb%TOmore%
 2580ENDWHILE
 2590ENDPROC
 2600
 2610DEFPROCInvCol
 2620SYS"XOS_ReadModeVariable",-1,3TO,,c%
 2630CASE c% OF
 2640WHEN 1:GCOL3,1
 2650WHEN 3:GCOL3,3
 2660WHEN 15:GCOL3,7
 2670WHEN 63:GCOL3,63 TINT 0
 2680OTHERWISE:GCOL3,63
 2690ENDCASE
 2700ENDPROC
 2710
 2720DEFPROCInvCol2
 2730SYS"XOS_ReadModeVariable",-1,3TO,,c%
 2740CASE c% OF
 2750WHEN 1:GCOL3,1
 2760WHEN 3:GCOL3,1
 2770WHEN 15:GCOL3,10
 2780WHEN 63:GCOL3,%110011 TINT 0
 2790OTHERWISE:GCOL3,63
 2800ENDCASE
 2810ENDPROC
 2820
 2830DEFPROCInvCol3
 2840SYS"XOS_ReadModeVariable",-1,3TO,,c%
 2850CASE c% OF
 2860WHEN 1:GCOL3,1
 2870WHEN 3:GCOL3,2
 2880WHEN 15:GCOL3,11
 2890WHEN 63:GCOL3,%111100 TINT 0
 2900OTHERWISE:GCOL3,63
 2910ENDCASE
 2920ENDPROC
 2930
 2940DEFPROCOpen_Window
 2950IF polledb%!0=wworkh% THEN PROCOpen_Work:ENDPROC
 2960IF polledb%!0=wsongh% THEN PROCOpen_Song:ENDPROC
 2970IF polledb%!0=wposh% THEN polledb%!0=wworkh%:SYS"Wimp_GetWindowState",,polledb%:PROCOpen_Work:ENDPROC
 2980IF polledb%!0=wsongpaneh% THEN polledb%!0=wsongpaneh%:SYS"Wimp_GetWindowState",,polledb%:PROCOpen_Song:ENDPROC
 2990SYS"Wimp_OpenWindow",,polledb%
 3000ENDPROC
 3010
 3020DEFPROCOpen_Work
 3030temp%!0=wposh%
 3040SYS"Wimp_GetWindowState",,temp%
 3050A%=polledb%!28
 3060polledb%!28=wposh%
 3070SYS"Wimp_OpenWindow",,polledb%
 3080SYS"Wimp_GetWindowState",,polledb%
 3090temp%!4=polledb%!4
 3100temp%!8=polledb%!8-100
 3110temp%!12=temp%!4+1024
 3120temp%!16=temp%!8+56
 3130temp%!28=A%
 3140SYS"Wimp_OpenWindow",,temp%
 3150polledb%!28=wposh%
 3160SYS"Wimp_OpenWindow",,polledb%
 3170ENDPROC
 3180
 3190DEFPROCOpen_Song
 3200temp%!0=wsongpaneh%
 3210SYS"Wimp_GetWindowState",,temp%
 3220A%=polledb%!28
 3230polledb%!28=wsongpaneh%
 3240SYS"Wimp_OpenWindow",,polledb%
 3250SYS"Wimp_GetWindowState",,polledb%
 3260temp%!4=polledb%!4
 3270temp%!12=polledb%!12
 3280temp%!16=polledb%!16
 3290temp%!8=polledb%!16-84
 3300temp%!20=polledb%!20
 3310temp%!28=A%
 3320SYS"Wimp_OpenWindow",,temp%
 3330polledb%!28=wsongpaneh%
 3340SYS"Wimp_OpenWindow",,polledb%
 3350ENDPROC
 3360
 3370DEFPROCClose_Window
 3380SYS"Wimp_CloseWindow",,polledb%
 3390IF polledb%!0=wworkh% THEN polledb%!0=wposh%:SYS"Wimp_CloseWindow",,polledb%
 3400IF polledb%!0=wsongh% THEN polledb%!0=wsongpaneh%:SYS"Wimp_CloseWindow",,polledb%
 3410ENDPROC
 3420
 3430DEFPROCMouse_Click
 3440CASE polledb%!12 OF
 3450WHEN wworkh%:PROCWorkClick
 3460WHEN wechoh%:PROCEchoClick
 3470WHEN wfadeh%:PROCFadeClick
 3480WHEN wkeyboardh%:PROCKeyClick
 3490WHEN wsaveh%:PROCSaveassaCl
 3500WHEN wposh%:PROCPosClick
 3510WHEN wsongh%:PROCSongClick
 3520WHEN -2:PROCIconBClick
 3530ENDCASE
 3540ENDPROC
 3550
 3560DEFPROCSongClick
 3570temp%!0=wsongh%
 3580SYS"Wimp_GetWindowState",,temp%
 3590currsect%=(temp%!16-temp%!24-96-polledb%!4)/36
 3600IF currsect%<0 THEN currsect%=0
 3610IF currsect%>songlen% THEN currsect%=songlen%
 3620IF currsect%=songlen% THEN $(sectmenu%)="Loop" ELSE $sectmenu%="Loop "+STR$(currsect%+1)
 3630CASE polledb%!8 OF
 3640WHEN 2:lastmx%=polledb%!0-64:lastmy%=polledb%!4+16:lastmenu%=sectmenu%:SYS"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
 3650WHEN 1024:PROCEditSect
 3660ENDCASE
 3670ENDPROC
 3680
 3690DEFPROCEditSect
 3700IF currsect%<songlen% THEN
 3710temp%!0=wsongpaneh%
 3720temp%!4=5
 3730SYS"Wimp_GetIconState",,temp%
 3740$(temp%!28)=STR$(currsect%+1)
 3750temp%!4=6
 3760SYS"Wimp_GetIconState",,temp%
 3770$(temp%!28)=$(songstart%+currsect%*32)
 3780temp%!4=7
 3790SYS"Wimp_GetIconState",,temp%
 3800$(temp%!28)=STR$(songstart%!(currsect%*32+12))
 3810temp%!4=8
 3820SYS"Wimp_GetIconState",,temp%
 3830$(temp%!28)=STR$(songstart%!(currsect%*32+16))
 3840temp%!4=9
 3850SYS"Wimp_GetIconState",,temp%
 3860$(temp%!28)=STR$(songstart%!(currsect%*32+20))
 3870ploopl%=songstart%!(currsect%*32+24)
 3880ploopr%=songstart%!(currsect%*32+28)
 3890IF ploopl%<0 THEN ploopl%=0
 3900IF ploopr%<0 THEN ploopr%=0
 3910IF ploopl%>samplelen% THEN ploopl%=samplelen%
 3920IF ploopr%>samplelen% THEN ploopr%=samplelen%
 3930loopl%=FNPtrToWork(ploopl%)
 3940loopr%=FNPtrToWork(ploopr%)
 3950PROCUpdateLoopP
 3960PROCRdSongPane
 3970SYS"Wimp_GetCaretPosition",,temp%
 3980IF (temp%!0=wsongpaneh%)AND(temp%!4<>-1) THEN PROCSetWIC(temp%!0,temp%!4)
 3990ospitch%=-1
 4000ENDIF
 4010ENDPROC
 4020
 4030DEFPROCPosClick
 4040CASE polledb%!16 OF
 4050WHEN 0:pdisphd%=NOT pdisphd%:oldpos%=-1:PROCDrawPos
 4060WHEN 8:PROCPosPAll
 4070WHEN 9:PROCPosPSel
 4080WHEN 10:PROCPosPWin
 4090WHEN 12:PROCPosPStop
 4100ENDCASE
 4110ENDPROC
 4120
 4130DEFPROCPosPAll
 4140SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
 4150SYS"SFXMP_GetBlock"TOA%
 4160SYS"SFXMP_GetPitch"TOB%
 4170A%+=32
 4180A%!0=0
 4190A%!4=startsample%
 4200A%!8=B%
 4210A%!12=samplelen%
 4220A%!16=stype%<<8
 4230A%!20=0
 4240SYS"SFXMP_Play",1
 4250ENDPROC
 4260
 4270DEFPROCPosPSel
 4280SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
 4290IF pselectl%<>-1 THEN
 4300SYS"SFXMP_GetBlock"TOA%
 4310SYS"SFXMP_GetPitch"TOB%
 4320A%+=32
 4330A%!0=0
 4340A%!4=startsample%+pselectl%
 4350A%!8=B%
 4360A%!12=pselectr%-pselectl%
 4370A%!16=stype%<<8
 4380A%!20=0
 4390SYS"SFXMP_Play",1
 4400ENDIF
 4410ENDPROC
 4420
 4430DEFPROCPosPWin
 4440SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
 4450temp%!0=wworkh%
 4460SYS"Wimp_GetWindowState",,temp%
 4470B%=FNWorkToPtr(temp%!20)
 4480C%=FNWorkToPtr(temp%!20+1024)
 4490SYS"SFXMP_GetBlock"TOA%
 4500SYS"SFXMP_GetPitch"TOE%
 4510A%+=32
 4520A%!0=0
 4530A%!4=startsample%+B%
 4540A%!8=E%
 4550A%!12=C%-B%
 4560A%!16=stype%<<8
 4570A%!20=0
 4580SYS"SFXMP_Play",1
 4590ENDPROC
 4600
 4610DEFPROCPosPStop
 4620SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
 4630ENDPROC
 4640
 4650DEFPROCSaveassaCl
 4660IF polledb%!16=0 THEN PROCDragSave
 4670IF polledb%!16=2 THEN
 4680temp%!0=wsaveh%
 4690temp%!4=1
 4700SYS"Wimp_GetIconState",,temp%
 4710f$=$(!(temp%+28))
 4720IF (INSTR(f$,".")=0) AND (INSTR(f$,":")=0) THEN
 4730PROCReportErr("Please give a directory.")
 4740ELSE
 4750polledb%!36=0
 4760$(wwork%!72)=f$
 4770samplesaved%=0
 4780CASE savedt% OF
 4790WHEN 0:PROCSaveSa1(f$):sampletoload$=f$
 4800WHEN 1:PROCSaveSa2(f$):sampletoload$=f$
 4810WHEN 2:PROCSaveSa3(f$):sampletoload$=f$
 4820WHEN 3:PROCSaveSa4(f$):sampletoload$=f$
 4830WHEN 4:PROCSaveSa5(f$):sampletoload$=f$
 4840WHEN 5:PROCSaveSa6(f$):sampletoload$=f$
 4850WHEN 6:PROCSaveMo(f$):modtoload$=f$
 4860WHEN 10:PROCSaveSong(f$):songtoload$=f$
 4870WHEN 11:PROCSaveSongMo(f$):songmodtoload$=f$
 4880ENDCASE
 4890IF f%<>0 THEN CLOSE#f%
 4900SYS"Wimp_CreateMenu",-1,-1,-1,-1
 4910ENDIF
 4920ENDIF
 4930ENDPROC
 4940
 4950DEFFNStrip(fs$)
 4960LOCAL f%,a%
 4970f%=1
 4980a%=1
 4990WHILE MID$(fs$,f%)<>""
 5000IF MID$(fs$,f%,1)="." OR MID$(fs$,f%,1)=":" THEN a%=f%+1
 5010f%+=1
 5020ENDWHILE
 5030=MID$(fs$,a%)
 5040
 5050DEFPROCMBString(s%)
 5060WHILE ?s%>31 s%+=1:ENDWHILE
 5070?s%=13
 5080ENDPROC
 5090
 5100DEFPROCDragSave
 5110temp%!0=wsaveh%
 5120SYS"Wimp_GetWindowState",,temp%
 5130wx%=(temp%!4)-(temp%!20)
 5140wy%=(temp%!16)-(temp%!24)
 5150temp%!4=0
 5160SYS "Wimp_GetIconState",,temp%
 5170dragb%!0=0
 5180dragb%!4=5
 5190dragb%!8=(temp%!8)+wx%
 5200dragb%!12=(temp%!12)+wy%
 5210dragb%!16=(temp%!16)+wx%
 5220dragb%!20=(temp%!20)+wy%
 5230dragb%!24=0
 5240dragb%!28=0
 5250dragb%!32=32768
 5260dragb%!36=32768
 5270dragb%!40=0
 5280dragb%!44=0
 5290dragb%!48=0
 5300dragb%!52=0
 5310SYS"Wimp_DragBox",,dragb%
 5320dragtype%=5
 5330ENDPROC
 5340
 5350DEFPROCDataSave
 5360IF messbk%!4<>taskh% THEN
 5370SYS"XOS_ReadVarVal","Wimp$Scrap",temp%,-1,0,0TO,,A%
 5380IF A%=0 THEN
 5390PROCReportErr("<Wimp$Scrap> not defined.")
 5400ELSE
 5410filetoload2$=FNStrip($(messbk%+44))
 5420$(messbk%+44)="<Wimp$Scrap>"+CHR$(0)
 5430messbk%!0=256
 5440messbk%!12=messbk%!8
 5450messbk%!16=2
 5460messbk%!36=-1
 5470SYS"Wimp_SendMessage",18,messbk%,messbk%!4
 5480ENDIF
 5490ENDIF
 5500ENDPROC
 5510
 5520DEFPROCDragSaved
 5530IF savedt%<>-1 THEN
 5540temp%!0=wsaveh%
 5550CASE savedt% OF
 5560WHEN 0:temp2%!40=&cb5
 5570WHEN 1:temp2%!40=&cb5
 5580WHEN 2:temp2%!40=&d3c
 5590WHEN 3:temp2%!40=&ed0
 5600WHEN 4:temp2%!40=&df9
 5610WHEN 5:temp2%!40=&ffd
 5620WHEN 6:temp2%!40=&ffa
 5630WHEN 10:temp2%!40=&d3b
 5640WHEN 11:temp2%!40=&ffa
 5650ENDCASE
 5660temp%!4=1
 5670SYS"Wimp_GetIconState",,temp%
 5680$(temp2%+44)=FNStrip($(!(temp%+28)))
 5690SYS"Wimp_GetPointerInfo",,temp%
 5700temp2%!0=256
 5710temp2%!4=0
 5720temp2%!8=0
 5730temp2%!12=0
 5740temp2%!16=1
 5750temp2%!20=temp%!12
 5760temp2%!24=temp%!16
 5770temp2%!28=temp%!0
 5780temp2%!32=temp%!4
 5790temp2%!36=1
 5800SYS "Wimp_SendMessage",17,temp2%,temp%!12,temp%!16
 5810SYS"Wimp_CreateMenu",,-1
 5820ENDIF
 5830ENDPROC
 5840
 5850DEFPROCSaveAck
 5860IF savedt%<>-1 THEN
 5870temp%!0=wsaveh%
 5880temp%!4=1
 5890SYS"Wimp_GetIconState",,temp%
 5900PROCMBString(polledb%+44)
 5910IF polledb%!36<>-1 THEN $(!(temp%+28))=$(polledb%+44)
 5920f$=$(polledb%+44)
 5930$(wwork%!72)=f$
 5940samplesaved%=0
 5950CASE savedt% OF
 5960WHEN 0:PROCSaveSa1(f$):sampletoload$=f$
 5970WHEN 1:PROCSaveSa2(f$):sampletoload$=f$
 5980WHEN 2:PROCSaveSa3(f$):sampletoload$=f$
 5990WHEN 3:PROCSaveSa4(f$):sampletoload$=f$
 6000WHEN 4:PROCSaveSa5(f$):sampletoload$=f$
 6010WHEN 5:PROCSaveSa6(f$):sampletoload$=f$
 6020WHEN 6:PROCSaveMo(f$):modtoload$=f$
 6030WHEN 10:PROCSaveSong(f$):songtoload$=f$
 6040WHEN 11:PROCSaveSongMo(f$):songmodtoload$=f$
 6050ENDCASE
 6060IF f%<>0 THEN CLOSE#f%
 6070messbk%!12=messbk%!8
 6080messbk%!16=3
 6090IF ss%<>-1 THEN SYS"Wimp_SendMessage",17,messbk%,messbk%!4
 6100savedt%=-1
 6110savedata%=-1
 6120ENDIF
 6130ENDPROC
 6140
 6150DEFPROCSaveSong(fi$)
 6160ENDPROC
 6170
 6180DEFPROCSaveSongMo(fi$)
 6190ENDPROC
 6200
 6210DEFPROCSaveSa1(fi$)
 6220ENDPROC
 6230
 6240DEFPROCSaveSa2(fi$)
 6250ENDPROC
 6260
 6270DEFPROCSaveSa3(fi$)
 6280ENDPROC
 6290
 6300DEFPROCSaveSa4(fi$)
 6310ENDPROC
 6320
 6330DEFPROCSaveSa5(fi$)
 6340ENDPROC
 6350
 6360DEFPROCSaveSa6(fi$)
 6370ENDPROC
 6380
 6390DEFPROCSaveMo(fi$)
 6400ENDPROC
 6410
 6420DEFPROCGetStartLen
 6430CASE savedata% OF
 6440WHEN 0:ss%=startsample%:sl%=samplelen%
 6450WHEN 1:IF pselectl%<>-1 THEN ss%=startsample%+pselectl%:sl%=pselectr%-pselectl% ELSE ss%=-1
 6460WHEN 2:ss%=clipbstart%:sl%=clipblen%
 6470ENDCASE
 6480ENDPROC
 6490
 6500DEFPROCKeyClick
 6510CASE polledb%!8 OF
 6520WHEN 1:SYS"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1:SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
 6530WHEN 4:SYS"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
 6540ENDCASE
 6550CASE polledb%!16 OF
 6560WHEN 43:playtype%=0
 6570WHEN 44:playtype%=1
 6580WHEN 45:playtype%=2
 6590WHEN 46:playtype%=3
 6600WHEN 48:temp%!0=wkeyboardh%:temp%!4=48:SYS"Wimp_GetIconState",,temp%:IF (temp%!24)AND(1<<21) THEN releasek%=-1 ELSE releasek%=0
 6610WHEN 49:temp%!0=wkeyboardh%:temp%!4=49:SYS"Wimp_GetIconState",,temp%:IF (temp%!24)AND(1<<21) THEN multiplek%=-1 ELSE multiplek%=0
 6620ENDCASE
 6630ENDPROC
 6640
 6650DEFPROCWorkClick
 6660SYS"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
 6670CASE polledb%!8 OF
 6680WHEN 2:lastmx%=polledb%!0-64:lastmy%=polledb%!4+16:lastmenu%=workmenu%:SYS"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
 6690WHEN 1024:PROCSelClick
 6700WHEN 256:PROCAdjClick
 6710WHEN 64:PROCSelDrag
 6720WHEN 16:PROCAdjDrag
 6730ENDCASE
 6740ENDPROC
 6750
 6760DEFPROCSelClick
 6770temp%!0=wworkh%
 6780SYS"Wimp_GetWindowState",,temp%
 6790IF polledb%!4-temp%!8<256 THEN
 6800PROCSelClick2
 6810ELSE
 6820SYS"OS_Byte",202,0,255TO,sh%
 6830dlp%=ploopr%-ploopl%
 6840PROCScrToWork
 6850loopl%=workx%
 6860ploopl%=FNWorkToPtr(loopl%)
 6870IF sh%AND8 THEN
 6880ploopr%=ploopl%+dlp%
 6890IF ploopr%>samplelen% THEN ploopr%=samplelen%:ploopl%=samplelen%-dlp%
 6900ENDIF
 6910loopl%=FNPtrToWork(ploopl%)
 6920loopr%=FNPtrToWork(ploopr%)
 6930IF ploopl%>ploopr% THEN ploopr%=ploopl%:loopr%=loopl%
 6940PROCUpdateLoopP
 6950ENDIF
 6960ENDPROC
 6970
 6980DEFPROCAdjClick
 6990temp%!0=wworkh%
 7000SYS"Wimp_GetWindowState",,temp%
 7010IF polledb%!4-temp%!8<256 THEN
 7020PROCAdjClick2
 7030ELSE
 7040SYS"OS_Byte",202,0,255TO,sh%
 7050dlp%=ploopr%-ploopl%
 7060PROCScrToWork
 7070loopr%=workx%
 7080ploopr%=FNWorkToPtr(loopr%)
 7090IF sh%AND8 THEN
 7100ploopl%=ploopr%-dlp%
 7110IF ploopl%<0 THEN ploopl%=0:ploopr%=dlp%
 7120ENDIF
 7130loopl%=FNPtrToWork(ploopl%)
 7140loopr%=FNPtrToWork(ploopr%)
 7150IF ploopr%<ploopl% THEN ploopl%=ploopr%:loopl%=loopr%
 7160PROCUpdateLoopP
 7170ENDIF
 7180ENDPROC
 7190
 7200DEFPROCSelDrag
 7210temp%!0=wworkh%
 7220SYS"Wimp_GetWindowState",,temp%
 7230IF polledb%!4-temp%!8<256 THEN
 7240PROCSelDrag2
 7250ELSE
 7260temp%!0=wworkh%
 7270SYS"Wimp_GetWindowState",,temp%
 7280temp2%!0=wworkh%
 7290temp2%!4=7
 7300temp2%!8=0
 7310temp2%!12=0
 7320temp2%!16=0
 7330temp2%!20=0
 7340temp2%!24=temp%!4
 7350temp2%!28=temp%!8+260
 7360temp2%!32=temp%!4+1022
 7370temp2%!36=temp%!8+284
 7380temp2%!40=-1
 7390temp2%!44=-1
 7400temp2%!48=-1
 7410temp2%!52=-1
 7420SYS"Wimp_DragBox",,temp2%
 7430dragtype%=3
 7440ENDIF
 7450ENDPROC
 7460
 7470DEFPROCAdjDrag
 7480temp%!0=wworkh%
 7490SYS"Wimp_GetWindowState",,temp%
 7500IF polledb%!4-temp%!8<256 THEN
 7510PROCAdjDrag2
 7520ELSE
 7530temp%!0=wworkh%
 7540SYS"Wimp_GetWindowState",,temp%
 7550temp2%!0=wworkh%
 7560temp2%!4=7
 7570temp2%!8=0
 7580temp2%!12=0
 7590temp2%!16=0
 7600temp2%!20=0
 7610temp2%!24=temp%!4
 7620temp2%!28=temp%!8+260
 7630temp2%!32=temp%!4+1022
 7640temp2%!36=temp%!8+284
 7650temp2%!40=-1
 7660temp2%!44=-1
 7670temp2%!48=-1
 7680temp2%!52=-1
 7690SYS"Wimp_DragBox",,temp2%
 7700dragtype%=4
 7710ENDIF
 7720ENDPROC
 7730
 7740DEFPROCSelClick2
 7750PROCScrToWork
 7760selectl%=workx%
 7770selectr%=workx%
 7780pselectl%=FNWorkToPtr(selectl%)
 7790pselectr%=FNWorkToPtr(selectr%)
 7800selectl%=FNPtrToWork(pselectl%)
 7810selectr%=FNPtrToWork(pselectr%)
 7820PROCUpdateSelect
 7830ENDPROC
 7840
 7850DEFPROCAdjClick2
 7860PROCScrToWork
 7870IF ABS(selectl%-workx%)>ABS(selectr%-workx%) THEN
 7880selectr%=workx%
 7890ELSE
 7900selectl%=workx%
 7910ENDIF
 7920IF selectl%=-1 OR selectr%=-1 THEN selectl%=workx%:selectr%=workx%
 7930IF selectl%>selectr% THEN SWAP selectl%,selectr%
 7940pselectl%=FNWorkToPtr(selectl%)
 7950pselectr%=FNWorkToPtr(selectr%)
 7960selectl%=FNPtrToWork(pselectl%)
 7970selectr%=FNPtrToWork(pselectr%)
 7980PROCUpdateSelect
 7990ENDPROC
 8000
 8010DEFPROCSelDrag2
 8020temp%!0=wworkh%
 8030SYS"Wimp_GetWindowState",,temp%
 8040temp2%!0=wworkh%
 8050temp2%!4=7
 8060temp2%!8=0
 8070temp2%!12=0
 8080temp2%!16=0
 8090temp2%!20=0
 8100temp2%!24=temp%!4
 8110temp2%!28=temp%!8
 8120temp2%!32=temp%!4+1022
 8130temp2%!36=temp%!8+252
 8140temp2%!40=-1
 8150temp2%!44=-1
 8160temp2%!48=-1
 8170temp2%!52=-1
 8180SYS"Wimp_DragBox",,temp2%
 8190dragtype%=1
 8200PROCScrToWork
 8210IF selectl%=-1 OR selectr%=-1 THEN
 8220selectl%=workx%:selectr%=workx%
 8230pselectl%=FNWorkToPtr(selectl%)
 8240pselectr%=FNWorkToPtr(selectr%)
 8250selectl%=FNPtrToWork(pselectl%)
 8260selectr%=FNPtrToWork(pselectr%)
 8270ENDIF
 8280ENDPROC
 8290
 8300DEFPROCAdjDrag2
 8310temp%!0=wworkh%
 8320SYS"Wimp_GetWindowState",,temp%
 8330temp2%!0=wworkh%
 8340temp2%!4=7
 8350temp2%!8=0
 8360temp2%!12=0
 8370temp2%!16=0
 8380temp2%!20=0
 8390temp2%!24=temp%!4
 8400temp2%!28=temp%!8
 8410temp2%!32=temp%!4+1022
 8420temp2%!36=temp%!8+252
 8430temp2%!40=-1
 8440temp2%!44=-1
 8450temp2%!48=-1
 8460temp2%!52=-1
 8470SYS"Wimp_DragBox",,temp2%
 8480PROCScrToWork
 8490IF selectl%=-1 OR selectr%=-1 THEN
 8500selectl%=workx%:selectr%=workx%
 8510pselectl%=FNWorkToPtr(selectl%)
 8520pselectr%=FNWorkToPtr(selectr%)
 8530selectl%=FNPtrToWork(pselectl%)
 8540selectr%=FNPtrToWork(pselectr%)
 8550ENDIF
 8560IF ABS(selectl%-workx%)>ABS(selectr%-workx%) THEN
 8570dragtype%=2
 8580ELSE
 8590dragtype%=1
 8600ENDIF
 8610ENDPROC
 8620
 8630DEFPROCUpdateSelect
 8640IF oselectl%=-1 OR oselectr%=-1 THEN oselectl%=selectl%:oselectr%=selectr%:PROCPtSelect:ENDPROC
 8650IF (selectl%<>oselectl%) AND (selectr%<>oselectr%) THEN PROCPtSelect:oselectl%=selectl%:oselectr%=selectr%:PROCPtSelect:ENDPROC
 8660IF selectl%<>oselectl% THEN PROCSetSelectL:ENDPROC
 8670IF selectr%<>oselectr% THEN PROCSetSelectR:ENDPROC
 8680ENDPROC
 8690
 8700DEFPROCPtSelect
 8710polledb%!0=wworkh%
 8720polledb%!8=-288
 8730polledb%!16=-32
 8740IF (oselectl%<>-1) AND (oselectr%<>-1) THEN
 8750polledb%!4=oselectl%:polledb%!12=oselectr%+2
 8760SYS"Wimp_UpdateWindow",,polledb%TOmore%
 8770WHILE more%
 8780PROCInvCol
 8790RECTANGLE FILL polledb%!28,polledb%!32,polledb%!36-polledb%!28,polledb%!40-polledb%!32
 8800SYS"Wimp_GetRectangle",,polledb%TOmore%
 8810ENDWHILE
 8820ENDIF
 8830ENDPROC
 8840
 8850DEFPROCSetSelectL
 8860polledb%!0=wworkh%
 8870polledb%!8=-288
 8880polledb%!16=-32
 8890IF (selectl%<>-1) AND (oselectl%<>-1) THEN
 8900IF selectl%<oselectl% THEN polledb%!4=selectl%:polledb%!12=oselectl% ELSE polledb%!4=oselectl%:polledb%!12=selectl%
 8910SYS"Wimp_UpdateWindow",,polledb%TOmore%
 8920WHILE more%
 8930PROCInvCol
 8940RECTANGLE FILL polledb%!28,polledb%!32,polledb%!36-polledb%!28,polledb%!40-polledb%!32
 8950SYS"Wimp_GetRectangle",,polledb%TOmore%
 8960ENDWHILE
 8970oselectl%=selectl%
 8980ENDIF
 8990ENDPROC
 9000
 9010DEFPROCSetSelectR
 9020polledb%!0=wworkh%
 9030polledb%!8=-288
 9040polledb%!16=-32
 9050IF (selectr%<>-1) AND (oselectr%<>-1) THEN
 9060IF selectr%<oselectr% THEN polledb%!4=selectr%+2:polledb%!12=oselectr%+2 ELSE polledb%!4=oselectr%+2:polledb%!12=selectr%+2
 9070SYS"Wimp_UpdateWindow",,polledb%TOmore%
 9080WHILE more%
 9090PROCInvCol
 9100RECTANGLE FILL polledb%!28,polledb%!32,polledb%!36-polledb%!28,polledb%!40-polledb%!32
 9110SYS"Wimp_GetRectangle",,polledb%TOmore%
 9120ENDWHILE
 9130oselectr%=selectr%
 9140ENDIF
 9150ENDPROC
 9160
 9170DEFPROCPlotPPtr
 9180IF playp%<0 OR playp%>samplelen% THEN playp%=-1:ENDPROC
 9190llp%=FNPtrToWork(playp%)
 9200temp%!0=wworkh%
 9210SYS"Wimp_GetWindowState",,temp%
 9220ll%=temp%!4-temp%!20+llp%
 9230IF ll%>temp%!4-4 AND ll%<temp%!12+4 THEN
 9240polledb%!0=wworkh%
 9250polledb%!4=llp%
 9260polledb%!8=-288
 9270polledb%!12=llp%+2
 9280polledb%!16=0
 9290SYS"Wimp_UpdateWindow",,polledb%TOmore%
 9300WHILE more%
 9310PROCInvCol
 9320LINE ll%,polledb%!8,ll%,polledb%!8+288
 9330SYS"Wimp_GetRectangle",,polledb%TOmore%
 9340ENDWHILE
 9350ENDIF
 9360ENDPROC
 9370
 9380DEFPROCUpdateLoopP
 9390temp%!0=wworkh%
 9400SYS"Wimp_GetWindowState",,temp%
 9410polledb%!0=wworkh%
 9420polledb%!4=temp%!20
 9430polledb%!8=-288
 9440polledb%!12=temp%!20+1024
 9450polledb%!16=0
 9460ll%=temp%!4-temp%!20+loopl%
 9470oll%=temp%!4-temp%!20+oloopl%
 9480lr%=temp%!4-temp%!20+loopr%
 9490olr%=temp%!4-temp%!20+oloopr%
 9500ldr%=-1
 9510oldr%=-1
 9520rdr%=-1
 9530ordr%=-1
 9540IF ll%<temp%!4-32 OR ll%>temp%!12+32 THEN ldr%=0
 9550IF oll%<temp%!4-32 OR oll%>temp%!12+32 THEN oldr%=0
 9560IF lr%<temp%!4-32 OR lr%>temp%!12+32 THEN rdr%=0
 9570IF olr%<temp%!4-32 OR olr%>temp%!12+32 THEN ordr%=0
 9580SYS"Wimp_UpdateWindow",,polledb%TOmore%
 9590WHILE more%
 9600IF ldr% THEN
 9610PROCInvCol2
 9620LINE ll%,polledb%!8,ll%,polledb%!8+256
 9630MOVE ll%,polledb%!8+260
 9640MOVE ll%+8,polledb%!8+280
 9650PLOT 85,ll%-8,polledb%!8+280
 9660ENDIF
 9670IF oldr% THEN
 9680PROCInvCol2
 9690LINE oll%,polledb%!8,oll%,polledb%!8+256
 9700MOVE oll%,polledb%!8+260
 9710MOVE oll%+8,polledb%!8+280
 9720PLOT 85,oll%-8,polledb%!8+280
 9730ENDIF
 9740IF rdr% THEN
 9750PROCInvCol3
 9760LINE lr%,polledb%!8,lr%,polledb%!8+256
 9770MOVE lr%,polledb%!8+260
 9780MOVE lr%+8,polledb%!8+280
 9790PLOT 85,lr%-8,polledb%!8+280
 9800ENDIF
 9810IF ordr% THEN
 9820PROCInvCol3
 9830LINE olr%,polledb%!8,olr%,polledb%!8+256
 9840MOVE olr%,polledb%!8+260
 9850MOVE olr%+8,polledb%!8+280
 9860PLOT 85,olr%-8,polledb%!8+280
 9870ENDIF
 9880SYS"Wimp_GetRectangle",,polledb%TOmore%
 9890ENDWHILE
 9900oloopl%=loopl%:oloopr%=loopr%
 9910PROCUpdateSLoop
 9920ENDPROC
 9930
 9940DEFPROCUpdateSLoop
 9950IF playtype%=1 THEN
 9960SYS"SFXMP_GetBlock"TOA%
 9970A%=A%+32:A%!4=startsample%+ploopl%:A%!12=ploopr%-ploopl%:A%!20=0:A%!16=(A%!16) AND &ffffefff
 9980A%=A%+32:A%!4=startsample%+ploopl%:A%!12=ploopr%-ploopl%:A%!20=0:A%!16=(A%!16) AND &ffffefff
 9990A%=A%+32:A%!4=startsample%+ploopl%:A%!12=ploopr%-ploopl%:A%!20=0:A%!16=(A%!16) AND &ffffefff
10000ENDIF
10010IF playtype%=3 THEN
10020SYS"SFXMP_GetBlock"TOA%
10030A%=A%+32:A%!4=startsample%:A%!12=ploopr%:A%!20=ploopl%:A%!16=(A%!16) AND &ffffefff
10040A%=A%+32:A%!4=startsample%:A%!12=ploopr%:A%!20=ploopl%:A%!16=(A%!16) AND &ffffefff
10050A%=A%+32:A%!4=startsample%:A%!12=ploopr%:A%!20=ploopl%:A%!16=(A%!16) AND &ffffefff
10060ENDIF
10070ENDPROC
10080
10090DEFPROCIconBClick
10100CASE polledb%!8 OF
10110WHEN 1,4:PROCOpenWork
10120WHEN 2:lastmx%=polledb%!0-64:lastmy%=184:lastmenu%=iconmenu%:SYS"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
10130ENDCASE
10140ENDPROC
10150
10160DEFPROCOpenWork
10170polledb%!0=wworkh%
10180SYS"Wimp_GetWindowState",,polledb%
10190polledb%!28=-1
10200PROCOpen_Window
10210polledb%!0=wkeyboardh%
10220SYS"Wimp_GetWindowState",,polledb%
10230polledb%!28=-1
10240SYS"Wimp_OpenWindow",,polledb%
10250ENDPROC
10260
10270DEFPROCUser_Drag_Box
10280CASE dragtype% OF
10290WHEN 1,2,3,4:dragtype%=-1
10300WHEN 5:PROCDragSaved
10310ENDCASE
10320ENDPROC
10330
10340DEFPROCRdWork
10350polledb%!0=wworkh%
10360SYS"Wimp_RedrawWindow",,polledb%TOmore%
10370PROCRedrawWork
10380ENDPROC
10390
10400DEFPROCRdSong
10410polledb%!0=wsongh%
10420SYS"Wimp_RedrawWindow",,polledb%TOmore%
10430PROCRedrawSong
10440ENDPROC
10450
10460DEFPROCRdSongPane
10470polledb%!0=wsongpaneh%
10480SYS"Wimp_RedrawWindow",,polledb%TOmore%
10490PROCJustRedraw
10500ENDPROC
10510
10520DEFPROCKey_Pressed
10530IF polledb%!24=&1cc THEN SYS"SFXMP_Disable":SYS"Wimp_ProcessKey",&1cc
10540IF polledb%!24=&1fc THEN SYS"SFXMP_Disable":SYS"Wimp_ProcessKey",&1fc
10550CASE polledb%!0 OF
10560WHEN wkeyboardh%:PROCKeyKey
10570WHEN wsaveh%:IF polledb%!24=13 THEN polledb%!16=2:PROCSaveassaCl
10580WHEN wposh%:PROCPosKey
10590WHEN wfadeh%:PROCFadeKey
10600WHEN wechoh%:PROCEchoKey
10610WHEN wsongpaneh%:PROCSongKey
10620ENDCASE
10630ENDPROC
10640
10650DEFPROCFadeKey
10660IF polledb%!24=13 THEN
10670IF polledb%!4=2 THEN PROCSetWIC(wfadeh%,3)
10680IF polledb%!4=3 THEN PROCSetWIC(wfadeh%,2)
10690ENDIF
10700ENDPROC
10710
10720DEFPROCEchoKey
10730IF polledb%!24=13 THEN
10740IF polledb%!4=2 THEN PROCSetWIC(wechoh%,3)
10750IF polledb%!4=3 THEN PROCSetWIC(wechoh%,2)
10760ENDIF
10770ENDPROC
10780
10790DEFPROCSongKey
10800IF polledb%!24=13 THEN
10810IF polledb%!4=6 THEN PROCSetWIC(wsongpaneh%,7)
10820IF polledb%!4=7 THEN PROCSetWIC(wsongpaneh%,8)
10830IF polledb%!4=8 THEN PROCSetWIC(wsongpaneh%,9)
10840IF polledb%!4=9 THEN PROCSetWIC(wsongpaneh%,6)
10850ENDIF
10860ENDPROC
10870
10880DEFPROCSetWIC(w%,i%)
10890IF i%=-1 THEN
10900SYS"XWimp_SetCaretPosition",-1,-1,-1,-1
10910ELSE
10920temp%!0=w%
10930temp%!4=i%
10940SYS"Wimp_GetIconState",,temp%
10950A%=LEN($(temp%!28))
10960SYS"XWimp_SetCaretPosition",w%,i%,-1,-1,-1,A%
10970ENDIF
10980ENDPROC
10990
11000DEFPROCPosKey
11010IF polledb%!24=13 THEN PROCSetPitch ELSE SYS"Wimp_ProcessKey",polledb%!24
11020ENDPROC
11030
11040DEFPROCSetPitch
11050temp%!0=wposh%
11060IF polledb%!4=3 THEN
11070temp%!4=3
11080SYS"Wimp_GetIconState",,temp%
11090pitch%=VAL($(temp%!28))
11100ENDIF
11110IF polledb%!4=5 THEN
11120temp%!4=5
11130SYS"Wimp_GetIconState",,temp%
11140pitch%=VAL($(temp%!28))
11150IF pitch%=0 THEN pitch%=1
11160pitch%=1E6/pitch%
11170ENDIF
11180PROCSetPitch2
11190ENDPROC
11200
11210DEFPROCSetPitch2
11220IF pitch%<24 THEN pitch%=24
11230IF pitch%>255 THEN pitch%=255
11240pitch%=pitch%AND&fc
11250temp2%!0=wposh%
11260temp2%!4=3
11270SYS"Wimp_GetIconState",,temp2%
11280$(temp2%!28)=STR$pitch%
11290temp2%!8=0:temp2%!12=0:SYS"Wimp_SetIconState",,temp2%
11300temp2%!4=5
11310SYS"Wimp_GetIconState",,temp2%
11320$(temp2%!28)=STR$(INT(1E6/pitch%))
11330temp2%!8=0:temp2%!12=0:SYS"Wimp_SetIconState",,temp2%
11340SYS"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
11350SYS"XSound_Configure",0,0,pitch%,0,0
11360ENDPROC
11370
11380DEFPROCKeyKey
11390key%=polledb%!24
11400IF key%=13 THEN SYS"XWimp_SetCaretPosition",-1,-1,-1,-1:ENDPROC
11410IF (key%>=&181)AND(key%<=&185) okt%=key%-&181:ENDPROC
11420IF (key%<32)OR(key%>&185) THEN PROCCtrlKey:ENDPROC
11430SYS"SFXMP_GetPitch"TOspitch%:IF spitch%<>ospitch% THEN temp%!0=wsongpaneh%:temp%!4=8:SYS"Wimp_GetIconState",,temp%:$(temp%!28)=STR$spitch%:temp%!8=0:temp%!12=0:SYS"Wimp_SetIconState",,temp%:ospitch%=spitch%
11440ENDPROC
11450
11460DEFPROCCtrlKey
11470CASE key% OF
11480WHEN ASC"X"-64:polledb%!4=0:PROCMEdit
11490WHEN ASC"C"-64:polledb%!4=1:PROCMEdit
11500WHEN ASC"V"-64:polledb%!4=2:PROCMEdit
11510WHEN ASC"D"-64:polledb%!4=3:PROCMEdit
11520WHEN ASC"G"-64:polledb%!4=5:PROCMEdit
11530WHEN ASC"H"-64:polledb%!4=6:PROCMEdit
11540WHEN ASC"A"-64:PROCMSelAll
11550WHEN ASC"Z"-64:PROCMSelClear
11560WHEN ASC"Q"-64:PROCZoomAll
11570WHEN ASC"W"-64:PROCZoomOut
11580WHEN ASC"S"-64:PROCZoomSel
11590WHEN ASC"T"-64:PROCZoomStore
11600WHEN ASC"R"-64:PROCZoomRestore
11610WHEN ASC"F"-64:polledb%!4=11:PROCMGoodies
11620WHEN &186:polledb%!8=0:PROCMType
11630WHEN &187:polledb%!8=1:PROCMType
11640WHEN &188:polledb%!8=2:PROCMType
11650WHEN &189:polledb%!4=0:PROCMGoodies
11660WHEN &1ca:polledb%!4=1:PROCMGoodies
11670WHEN &1cb:polledb%!4=2:PROCMGoodies
11680ENDCASE
11690ENDPROC
11700
11710DEFPROCMenu_Select
11720SYS"Wimp_GetPointerInfo",,temp%
11730oldbut%=temp%!8
11740CASE lastmenu% OF
11750WHEN iconmenu%:PROCMSelIcon
11760WHEN workmenu%:PROCMSelWork
11770WHEN sectmenu%:PROCMSelSect
11780ENDCASE
11790IF (oldbut%AND1) THEN SYS"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
11800ENDPROC
11810
11820DEFPROCMSelSect
11830CASE polledb%!0 OF
11840WHEN 0:PROCMSectInsert
11850WHEN 1:PROCMSectAppend
11860WHEN 2:PROCMSectOverwrite
11870WHEN 3:PROCMSectDelete
11880WHEN 4:PROCMSectPlay
11890WHEN 5:PROCPlaySong
11900ENDCASE
11910ENDPROC
11920
11930DEFPROCMSectInsert
11940SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
11950IF songlen%>=INT(songbuflen%/32) THEN
11960PROCReportErr("No room.")
11970ELSE
11980T%=songlen%
11990WHILE T%>currsect%
12000FORS%=0TO28STEP4
12010songstart%!(T%*32+S%)=songstart%!(T%*32-32+S%)
12020NEXTS%
12030T%-=1
12040ENDWHILE
12050songlen%+=1
12060PROCPutSect(currsect%)
12070PROCSetSongExtent
12080PROCRdSong
12090ENDIF
12100ENDPROC
12110
12120DEFPROCMSectAppend
12130SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
12140IF songlen%>=INT(songbuflen%/32) THEN
12150PROCReportErr("Too many loops.")
12160ELSE
12170PROCPutSect(songlen%)
12180songlen%+=1
12190PROCSetSongExtent
12200PROCRdSong
12210ENDIF
12220ENDPROC
12230
12240DEFPROCMSectOverwrite
12250SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
12260IF currsect%<songlen% THEN PROCPutSect(currsect%):PROCRdSong
12270ENDPROC
12280
12290DEFPROCMSectDelete
12300SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
12310IF currsect%<songlen% THEN
12320T%=currsect%
12330WHILE T%<songlen%-1
12340FORS%=0TO28STEP4
12350songstart%!(T%*32+S%)=songstart%!(T%*32+32+S%)
12360NEXTS%
12370T%+=1
12380ENDWHILE
12390songlen%-=1
12400PROCSetSongExtent
12410PROCRdSong
12420ENDIF
12430ENDPROC
12440
12450DEFPROCMSectPlay
12460IF currsect%<songlen% THEN
12470SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
12480VOICES 2
12490VOICE 2,"SFXMVoice"
12500SYS"SFXMP_PlaySong",songstart%+32*currsect%,songlen%-currsect%,startsample%,1,stype%
12510ENDIF
12520ENDPROC
12530
12540DEFPROCPutSect(s%)
12550temp%!0=wsongpaneh%
12560temp%!4=6
12570SYS"Wimp_GetIconState",,temp%
12580$(songstart%+s%*32)=$(temp%!28)
12590temp%!4=7
12600SYS"Wimp_GetIconState",,temp%
12610A%=VAL($(temp%!28))
12620IF A%>255 THEN A%=255
12630IF A%<1 THEN A%=1
12640!(songstart%+s%*32+12)=A%
12650temp%!4=8
12660SYS"Wimp_GetIconState",,temp%
12670A%=VAL($(temp%!28))
12680IF A%<1 THEN A%=1
12690IF A%>&10000 THEN A%=&10000
12700!(songstart%+s%*32+16)=A%
12710temp%!4=9
12720SYS"Wimp_GetIconState",,temp%
12730A%=VAL($(temp%!28))
12740IF A%<2 THEN A%=2
12750IF A%>255 THEN A%=255
12760!(songstart%+s%*32+20)=A%
12770!(songstart%+s%*32+24)=ploopl%
12780!(songstart%+s%*32+28)=ploopr%
12790ENDPROC
12800
12810DEFPROCCheckSong
12820T%=0
12830WHILE T%<songlen%
12840A%=songstart%!(T%*32+24):B%=songstart%!(T%*32+28)
12850IF A%<0 THEN A%=0
12860IF B%<0 THEN B%=0
12870IF A%>samplelen% THEN A%=samplelen%
12880IF B%>samplelen% THEN B%=samplelen%
12890songstart%!(T%*32+24)=A%:songstart%!(T%*32+28)=B%
12900T%+=1
12910ENDWHILE
12920ENDPROC
12930
12940DEFPROCMSelIcon
12950IF polledb%!0=1 THEN PROCCloseDown
12960ENDPROC
12970
12980DEFPROCMSelWork
12990CASE polledb%!0 OF
13000WHEN 0:PROCMInfo
13010WHEN 1:PROCMSave
13020WHEN 2:PROCMEdit
13030WHEN 3:PROCMSelect
13040WHEN 4:PROCMZoom
13050WHEN 5:PROCMLoop
13060WHEN 6:PROCMGoodies
13070WHEN 7:PROCMSong
13080ENDCASE
13090ENDPROC
13100
13110DEFPROCMSong
13120m%=polledb%!4
13130CASE m% OF
13140WHEN 0:PROCPlaySong
13150WHEN 1:PROCOpenSong
13160WHEN 4:PROCClearSong
13170WHEN 5:PROCSwapSongRep
13180ENDCASE
13190ENDPROC
13200
13210DEFPROCSwapSongRep
13220songrep%=NOT songrep%
13230PROCAdjSongM
13240ENDPROC
13250
13260DEFPROCOpenSong
13270temp%!0=wsongh%
13280SYS"Wimp_GetWindowState",,temp%
13290temp%!28=-1
13300SYS"Wimp_OpenWindow",,temp%
13310temp2%!0=wsongpaneh%
13320SYS"Wimp_GetWindowState",,temp2%
13330temp2%!4=temp%!4
13340temp2%!12=temp%!12
13350temp2%!16=temp%!16
13360temp2%!8=temp%!16-84
13370temp2%!28=-1
13380SYS"Wimp_OpenWindow",,temp2%
13390ENDPROC
13400
13410DEFPROCPlaySong
13420IF songlen%>0 THEN
13430SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
13440VOICES 2
13450VOICE 2,"SFXMVoice"
13460SYS"SFXMP_PlaySong",songstart%,songlen%,startsample%,1,stype%+(songrep%<<8)
13470ENDIF
13480ENDPROC
13490
13500DEFPROCMInfo
13510m%=polledb%!4
13520CASE m% OF
13530WHEN 1:PROCMType
13540WHEN 2:PROCSetBuf
13550WHEN 3:PROCClearAll
13560ENDCASE
13570ENDPROC
13580
13590DEFPROCSetBuf
13600SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
13610newblen%=1024*VAL($(mbuflen%!40))
13620IF newblen%<1024 THEN newblen%=1024
13630IF newblen%>=1024*1024 THEN newblen%=1023*1024
13640b%=1
13650IF newblen%<buflen% THEN
13660temp%!0=0
13670$(temp%+4)="You will lose the current sample."
13680SYS"Wimp_ReportError",temp%,%10011,"Confirm"TO,b%
13690ENDIF
13700IF b%=1 THEN
13710SYS"XOS_Module",6,,,newblen%TO,,newbstart%;v%
13720IF v%AND1 THEN
13730PROCReportErr("Can't claim memory.")
13740ELSE
13750IF newblen%<buflen% THEN
13760SYS"XOS_Module",7,,bufstart%
13770bufstart%=newbstart%
13780buflen%=newblen%
13790PROCClear
13800PROCCheckSong
13810ELSE
13820chb%=newbstart%-bufstart%
13830A%=bufstart%
13840B%=newbstart%
13850C%=startsample%+samplelen%-bufstart%
13860CALLcopymem
13870A%=clipbstart%
13880B%=newbstart%+newblen%-clipblen%
13890C%=clipblen%
13900CALLcopymem
13910startsample%=startsample%+chb%
13920SYS"XOS_Module",7,,bufstart%
13930bufstart%=newbstart%
13940buflen%=newblen%
13950PROCCheckSong
13960ENDIF
13970ENDIF
13980ENDIF
13990ENDPROC
14000
14010DEFPROCClearAll
14020IF samplesaved%=-1 THEN
14030PROCClear
14040ELSE
14050A%=FNConfirm("Sample has been modified. Are you sure you want to do this?")
14060IF A%=1 THEN PROCClear
14070ENDIF
14080ENDPROC
14090
14100DEFPROCClear
14110PROCRestart
14120temp%!0=wworkh%
14130SYS"Wimp_GetWindowState",,temp%
14140polledb%!20=0
14150SYS"Wimp_OpenWindow",,temp%
14160PROCSetExtent
14170PROCSetSongExtent
14180$(wwork%!72)="<Untitled>"
14190samplesaved%=-1
14200PROCRdWork
14210ENDPROC
14220
14230DEFPROCMSave
14240ENDPROC
14250
14260DEFPROCMType
14270CASE polledb%!8 OF
14280WHEN 0:stype%=2:PROCAdjTypeM:PROCRdWork
14290WHEN 1:stype%=0:PROCAdjTypeM:PROCRdWork
14300WHEN 2:stype%=1:PROCAdjTypeM:PROCRdWork
14310ENDCASE
14320ENDPROC
14330
14340DEFPROCAdjTypeM
14350CASE stype% OF
14360WHEN 0:typemenu%!(28+24*0+0)=0:typemenu%!(28+24*1+0)=1:typemenu%!(28+24*2+0)=128
14370WHEN 1:typemenu%!(28+24*0+0)=0:typemenu%!(28+24*1+0)=0:typemenu%!(28+24*2+0)=129
14380WHEN 2:typemenu%!(28+24*0+0)=1:typemenu%!(28+24*1+0)=0:typemenu%!(28+24*2+0)=128
14390ENDCASE
14400ENDPROC
14410
14420DEFPROCAdjSongM
14430IF songrep% THEN songmenu%!(28+24*5)=129 ELSE songmenu%!(28+24*5)=128
14440ENDPROC
14450
14460DEFPROCMEdit
14470IF selectl%<>-1 AND selectr%<>-1 THEN
14480m%=polledb%!4
14490CASE m% OF
14500WHEN 0:PROCMECut
14510WHEN 1:PROCMECopy
14520WHEN 2:PROCMEPaste
14530WHEN 3:PROCMEDelete
14540WHEN 4:PROCMEDeleteNS
14550WHEN 5:PROCMEDeleteL
14560WHEN 6:PROCMEDeleteR
14570ENDCASE
14580ENDIF
14590ENDPROC
14600
14610DEFPROCMECut
14620c%=FNCheckLen(samplelen%+pselectr%-pselectl%,"No room for cut.")
14630IF c%=0 THEN
14640A%=startsample%+pselectl%
14650B%=bufstart%+buflen%-(pselectr%-pselectl%)
14660C%=pselectr%-pselectl%
14670CALLcopymem
14680clipbstart%=B%
14690clipblen%=C%
14700PROCMEDelete
14710PROCModTitle(0)
14720ENDIF
14730ENDPROC
14740
14750DEFPROCMECopy
14760c%=FNCheckLen(samplelen%+pselectr%-pselectl%,"No room for copy.")
14770IF c%=0 THEN
14780A%=startsample%+pselectl%
14790B%=bufstart%+buflen%-(pselectr%-pselectl%)
14800C%=pselectr%-pselectl%
14810CALLcopymem
14820clipbstart%=B%
14830clipblen%=C%
14840ENDIF
14850ENDPROC
14860
14870DEFPROCMEPaste
14880c%=FNCheckLen(samplelen%+2*clipblen%,"No room for paste.")
14890IF c%=0 THEN
14900A%=startsample%+pselectr%
14910B%=startsample%+pselectr%+clipblen%
14920C%=samplelen%-pselectr%
14930CALLcopymem
14940A%=clipbstart%
14950B%=startsample%+pselectr%
14960C%=clipblen%
14970CALLcopymem
14980IF ploopl%>pselectr% THEN ploopl%=ploopl%+clipblen%
14990IF ploopr%>pselectr% THEN ploopr%=ploopr%+clipblen%
15000PROCgetwinp
15010samplelen%=samplelen%+clipblen%
15020IF samplelen%<1 THEN samplelen%=1:startsample%?0=0:startsample%?1=0
15030PROCCheckLoop
15040PROCCheckSong
15050PROCadjptrs
15060PROCZoomSel
15070PROCModTitle(0)
15080ENDIF
15090ENDPROC
15100
15110DEFFNCheckLen(l%,e$)
15120IF startsample%+l%>=bufstart%+buflen% THEN
15130PROCReportErr(e$)
15140A%=-1
15150ELSE
15160A%=0
15170ENDIF
15180=A%
15190
15200DEFPROCMEDelete
15210A%=startsample%+pselectr%
15220B%=startsample%+pselectl%
15230C%=samplelen%-pselectr%
15240CALLcopymem
15250IF ploopl%>pselectl% THEN ploopl%=ploopl%-(pselectr%-pselectl%)
15260IF ploopr%>pselectl% THEN ploopr%=ploopr%-(pselectr%-pselectl%)
15270PROCgetwinp
15280samplelen%=samplelen%-(A%-B%)
15290IF samplelen%<1 THEN samplelen%=1:startsample%?0=0:startsample%?1=0
15300PROCCheckLoop
15310PROCCheckSong
15320PROCadjptrs
15330PROCZoomSel
15340PROCModTitle(0)
15350ENDPROC
15360
15370DEFPROCMEDeleteNS
15380A%=startsample%+pselectl%
15390B%=startsample%
15400C%=pselectr%-pselectl%
15410CALLcopymem
15420ploopl%=ploopl%-pselectl%
15430ploopr%=ploopr%-pselectl%
15440PROCgetwinp
15450samplelen%=C%
15460IF samplelen%<1 THEN samplelen%=1:startsample%?0=0:startsample%?1=0
15470PROCCheckLoop
15480PROCCheckSong
15490PROCadjptrs
15500PROCZoomSel
15510PROCModTitle(0)
15520ENDPROC
15530
15540DEFPROCMEDeleteL
15550A%=startsample%+pselectl%
15560B%=startsample%
15570C%=samplelen%-pselectl%
15580CALLcopymem
15590ploopl%=ploopl%-pselectl%
15600ploopr%=ploopr%-pselectl%
15610PROCgetwinp
15620samplelen%=C%
15630IF samplelen%<1 THEN samplelen%=1:startsample%?0=0:startsample%?1=0
15640PROCCheckLoop
15650PROCCheckSong
15660PROCadjptrs
15670PROCZoomSel
15680PROCModTitle(0)
15690ENDPROC
15700
15710DEFPROCMEDeleteR
15720A%=pselectr%
15730PROCgetwinp
15740samplelen%=A%
15750IF samplelen%<1 THEN samplelen%=1:startsample%?0=0:startsample%?1=0
15760PROCCheckLoop
15770PROCCheckSong
15780PROCadjptrs
15790PROCZoomSel
15800PROCModTitle(0)
15810ENDPROC
15820
15830DEFPROCCheckLoop
15840IF ploopl%<0 THEN ploopl%=0
15850IF ploopl%>samplelen% THEN ploopl%=samplelen%
15860IF ploopr%<0 THEN ploopr%=0
15870IF ploopr%>samplelen% THEN ploopr%=samplelen%
15880IF ploopl%>ploopr% THEN ploopr%=ploopl%
15890PROCUpdateSLoop
15900ENDPROC
15910
15920DEFPROCgetwinp
15930temp%!0=wworkh%
15940SYS"Wimp_GetWindowState",,temp%
15950selectl%=temp%!20
15960selectr%=temp%!20+1022
15970pselectl%=FNWorkToPtr(selectl%)
15980pselectr%=FNWorkToPtr(selectr%)
15990ENDPROC
16000
16010DEFPROCadjptrs
16020IF pselectl%<0 THEN pselectr%=pselectr%-pselectl%:pselectl%=0
16030IF pselectr%>samplelen% THEN pselectl%=pselectl%-(pselectr%-samplelen%):pselectr%=samplelen%
16040IF pselectl%<0 THEN pselectl%=0
16050IF pselectr%>samplelen% THEN pselectr%=samplelen%
16060selectl%=FNPtrToWork(pselectl%)
16070selectr%=FNPtrToWork(pselectr%)
16080ENDPROC
16090
16100DEFPROCMSelect
16110m%=polledb%!4
16120CASE m% OF
16130WHEN 0:PROCMSelAll
16140WHEN 1:PROCMSelLoop
16150WHEN 2:PROCMSelLeft
16160WHEN 3:PROCMSelRight
16170WHEN 4:PROCMSelWindow
16180WHEN -1,5:PROCMSelClear
16190ENDCASE
16200ENDPROC
16210
16220DEFPROCMSelAll
16230pselectl%=0
16240pselectr%=samplelen%
16250selectl%=FNPtrToWork(pselectl%)
16260selectr%=FNPtrToWork(pselectr%)
16270PROCUpdateSelect
16280ENDPROC
16290
16300DEFPROCMSelLeft
16310pselectr%=pselectl%
16320pselectl%=0
16330selectl%=FNPtrToWork(pselectl%)
16340selectr%=FNPtrToWork(pselectr%)
16350PROCUpdateSelect
16360ENDPROC
16370
16380DEFPROCMSelRight
16390pselectl%=pselectr%
16400pselectr%=samplelen%
16410selectl%=FNPtrToWork(pselectl%)
16420selectr%=FNPtrToWork(pselectr%)
16430PROCUpdateSelect
16440ENDPROC
16450
16460DEFPROCMSelWindow
16470temp%!0=wworkh%
16480SYS"Wimp_GetWindowState",,temp%
16490selectl%=temp%!20
16500selectr%=temp%!20+1022
16510pselectl%=FNWorkToPtr(selectl%)
16520pselectr%=FNWorkToPtr(selectr%)
16530selectl%=FNPtrToWork(pselectl%)
16540selectr%=FNPtrToWork(pselectr%)
16550PROCUpdateSelect
16560ENDPROC
16570
16580DEFPROCMSelLoop
16590pselectl%=ploopl%
16600pselectr%=ploopr%
16610selectl%=FNPtrToWork(pselectl%)
16620selectr%=FNPtrToWork(pselectr%)
16630PROCUpdateSelect
16640ENDPROC
16650
16660DEFPROCMSelClear
16670selectl%=-1:selectr%=-1
16680pselectl%=-1:pselectr%=-1
16690PROCUpdateSelect
16700ENDPROC
16710
16720DEFPROCMZoom
16730m%=polledb%!4
16740CASE m% OF
16750WHEN 0:PROCZoomAll
16760WHEN 1:PROCZoomOut
16770WHEN 2:PROCZoomLoop
16780WHEN -1,3:PROCZoomSel
16790WHEN 4:PROCZoomStore
16800WHEN 5:PROCZoomRestore
16810ENDCASE
16820ENDPROC
16830
16840DEFPROCZoomAll
16850polledb%!0=wworkh%
16860SYS"Wimp_GetWindowState",,polledb%
16870polledb%!20=0
16880SYS"Wimp_OpenWindow",,polledb%
16890displen%=samplelen%
16900PROCSetExtent
16910selectl%=FNPtrToWork(pselectl%)
16920selectr%=FNPtrToWork(pselectr%)
16930loopl%=FNPtrToWork(ploopl%)
16940loopr%=FNPtrToWork(ploopr%)
16950oloopl%=loopl%:oloopr%=loopr%
16960oselectl%=selectl%:oselectr%=selectr%
16970PROCRdWork
16980ENDPROC
16990
17000DEFPROCZoomOut
17010opsl%=pselectl%:opsr%=pselectr%
17020polledb%!0=wworkh%
17030SYS"Wimp_GetWindowState",,polledb%
17040selectl%=polledb%!20
17050selectr%=polledb%!20+1022
17060pselectl%=FNWorkToPtr(selectl%)
17070pselectr%=FNWorkToPtr(selectr%)
17080sw%=pselectr%-pselectl%
17090pselectl%=pselectl%-sw%
17100pselectr%=pselectr%+sw%
17110IF pselectl%<0 THEN pselectr%=pselectr%-pselectl%:pselectl%=0
17120IF pselectr%>samplelen% THEN pselectl%=pselectl%-(pselectr%-samplelen%):pselectr%=samplelen%
17130IF pselectl%<0 THEN pselectl%=0
17140IF pselectr%>samplelen% THEN pselectr%=samplelen%
17150selectl%=FNPtrToWork(pselectl%)
17160selectr%=FNPtrToWork(pselectr%)
17170loopl%=FNPtrToWork(ploopl%)
17180loopr%=FNPtrToWork(ploopr%)
17190oloopl%=loopl%:oloopr%=loopr%
17200PROCZoomSel
17210pselectl%=opsl%:pselectr%=opsr%
17220selectl%=FNPtrToWork(pselectl%)
17230selectr%=FNPtrToWork(pselectr%)
17240PROCUpdateSelect
17250ENDPROC
17260
17270DEFPROCZoomLoop
17280opsl%=pselectl%
17290opsr%=pselectr%
17300pselectl%=ploopl%
17310pselectr%=ploopr%
17320selectl%=FNPtrToWork(pselectl%)
17330selectr%=FNPtrToWork(pselectr%)
17340PROCZoomSel
17350pselectl%=opsl%
17360pselectr%=opsr%
17370selectl%=FNPtrToWork(pselectl%)
17380selectr%=FNPtrToWork(pselectr%)
17390PROCUpdateSelect
17400ENDPROC
17410
17420DEFPROCZoomSel
17430IF pselectl%<>-1 AND pselectr%<>-1 THEN
17440displen%=pselectr%-pselectl%
17450IF displen%<1 THEN displen%=1
17460dispst=pselectl%/samplelen%
17470polledb%!0=wworkh%
17480SYS"Wimp_GetWindowState",,polledb%
17490polledb%!20=0
17500SYS"Wimp_OpenWindow",,polledb%
17510PROCSetExtent
17520polledb%!20=dispst*maxx%
17530SYS"Wimp_OpenWindow",,polledb%
17540selectl%=-1:selectr%=-1:oselectl%=-1:oselectr%=-1
17550pselectl%=-1:pselectr%=-1
17560loopl%=FNPtrToWork(ploopl%)
17570loopr%=FNPtrToWork(ploopr%)
17580oloopl%=loopl%:oloopr%=loopr%
17590PROCRdWork
17600ENDIF
17610ENDPROC
17620
17630DEFPROCZoomStore
17640temp%!0=wworkh%
17650SYS"Wimp_GetWindowState",,temp%
17660zoomsl%=temp%!20
17670zoomsr%=temp%!20+1024
17680zoomsl%=FNWorkToPtr(zoomsl%)
17690zoomsr%=FNWorkToPtr(zoomsr%)
17700ENDPROC
17710
17720DEFPROCZoomRestore
17730opsl%=pselectl%:opsr%=pselectr%
17740pselectl%=zoomsl%
17750pselectr%=zoomsr%
17760IF pselectl%<0 THEN pselectl%=0
17770IF pselectr%<0 THEN pselectr%=0
17780IF pselectl%>samplelen% THEN pselectl%=samplelen%
17790IF pselectr%>samplelen% THEN pselectr%=samplelen%
17800PROCZoomSel
17810pselectl%=opsl%:pselectr%=opsr%
17820selectl%=FNPtrToWork(pselectl%)
17830selectr%=FNPtrToWork(pselectr%)
17840PROCUpdateSelect
17850ENDPROC
17860
17870DEFPROCMLoop
17880m%=polledb%!4
17890CASE m% OF
17900WHEN 0:PROCLoopAll
17910WHEN 1:PROCLoopWindow
17920WHEN 2:PROCLoopSel
17930WHEN 3:PROCLoopHalf
17940WHEN 4:PROCLoopDouble
17950WHEN 5:PROCLoopStore
17960WHEN 6:PROCLoopRestore
17970ENDCASE
17980ENDPROC
17990
18000DEFPROCLoopAll
18010ploopl%=0
18020ploopr%=samplelen%
18030loopl%=FNPtrToWork(ploopl%)
18040loopr%=FNPtrToWork(ploopr%)
18050PROCUpdateLoopP
18060ENDPROC
18070
18080DEFPROCLoopWindow
18090opsl%=pselectl%
18100opsr%=pselectr%
18110PROCgetwinp
18120PROCLoopSel
18130pselectl%=opsl%
18140pselectr%=opsr%
18150selectl%=FNPtrToWork(pselectl%)
18160selectr%=FNPtrToWork(pselectr%)
18170PROCUpdateSelect
18180ENDPROC
18190
18200DEFPROCLoopSel
18210IF pselectl%<>-1 AND pselectr%<>-1 THEN
18220ploopl%=pselectl%
18230ploopr%=pselectr%
18240loopl%=FNPtrToWork(ploopl%)
18250loopr%=FNPtrToWork(ploopr%)
18260PROCUpdateLoopP
18270ENDIF
18280ENDPROC
18290
18300DEFPROCLoopHalf
18310ploopr%=ploopl%+(ploopr%-ploopl%)/2
18320loopl%=FNPtrToWork(ploopl%)
18330loopr%=FNPtrToWork(ploopr%)
18340PROCUpdateLoopP
18350ENDPROC
18360
18370DEFPROCLoopDouble
18380ploopr%=ploopl%+(ploopr%-ploopl%)*2
18390IF ploopr%>samplelen% THEN ploopl%=ploopl%-(ploopr%-samplelen%):ploopr%=samplelen%
18400IF ploopl%<0 THEN ploopl%=0
18410loopl%=FNPtrToWork(ploopl%)
18420loopr%=FNPtrToWork(ploopr%)
18430PROCUpdateLoopP
18440ENDPROC
18450
18460DEFPROCLoopStore
18470sploopl%=ploopl%:sploopr%=ploopr%
18480ENDPROC
18490
18500DEFPROCLoopRestore
18510ploopl%=sploopl%:ploopr%=sploopr%
18520IF ploopl%<0 THEN ploopl%=0
18530IF ploopr%<0 THEN ploopr%=0
18540IF ploopl%>samplelen% THEN ploopl%=samplelen%
18550IF ploopr%>samplelen% THEN ploopr%=samplelen%
18560loopl%=FNPtrToWork(ploopl%)
18570loopr%=FNPtrToWork(ploopr%)
18580PROCUpdateLoopP
18590ENDPROC
18600
18610DEFPROCMGoodies
18620IF pselectl%<>-1 AND pselectr%<>-1 THEN
18630A%=startsample%+pselectl%
18640B%=startsample%+pselectr%
18650ELSE
18660A%=startsample%
18670B%=startsample%+samplelen%
18680ENDIF
18690IF A%>B% THEN SWAP A%,B%
18700m%=polledb%!4
18710CASE m% OF
18720WHEN 0:PROCMGSigned
18730WHEN 1:PROCMGLinLog
18740WHEN 2:PROCMGLogLin
18750WHEN 3:PROCMGReverse
18760WHEN 4:PROCMGFiltLo
18770WHEN 5:PROCMGFiltHi
18780WHEN 6:PROCMGScAmp
18790WHEN 9:PROCMGLength
18800WHEN 10:PROCMGFill
18810WHEN 11:PROCMGFFT
18820WHEN 12:PROCMGAddClipB
18830ENDCASE
18840ENDPROC
18850
18860DEFPROCMGSigned
18870CALLsigned
18880PROCRdWork
18890PROCModTitle(0)
18900ENDPROC
18910
18920DEFPROCMGLinLog
18930IF stype%<>0 AND stype%<>1 THEN
18940PROCReportErr("SFXED not in linear mode.")
18950ELSE
18960SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
18970C%=stype%
18980CALLlinlog
18990stype%=2
19000PROCAdjTypeM
19010PROCRdWork
19020PROCModTitle(0)
19030ENDIF
19040ENDPROC
19050
19060DEFPROCMGLogLin
19070SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
19080CALLloglin
19090stype%=0
19100PROCAdjTypeM
19110PROCRdWork
19120PROCModTitle(0)
19130ENDPROC
19140
19150DEFPROCMGReverse
19160CALLreverse
19170PROCRdWork
19180PROCModTitle(0)
19190ENDPROC
19200
19210DEFPROCMGFiltLo
19220IF stype%=2 THEN
19230PROCReportErr("Only for linear samples.")
19240ELSE
19250C%=16*VAL($(mfiltlo%!40))
19260IF C%<0 OR C%>4095 THEN
19270PROCReportErr("Only values from 0 to 256.")
19280ELSE
19290D%=stype%
19300E%=A%?0
19310IF stype%=1 THEN E%=E% EOR &80
19320E%=(E%<<24)>>24
19330E%=E%*256
19340CALLfiltlo
19350PROCRdWork
19360PROCModTitle(0)
19370ENDIF
19380ENDIF
19390ENDPROC
19400
19410DEFPROCMGFiltHi
19420IF stype%=2 THEN
19430PROCReportErr("Only for linear samples.")
19440ELSE
19450C%=16*VAL($(mfilthi%!40))
19460IF C%<0 OR C%>4095 THEN
19470PROCReportErr("Only values from 0 to 256")
19480ELSE
19490D%=stype%
19500IF A%=startsample% THEN E%=0 ELSE E%=A%?0
19510IF stype%=1 THEN E%=E% EOR &80
19520E%=(E%<<24)>>24
19530E%=E%*256
19540CALLfilthi
19550PROCRdWork
19560PROCModTitle(0)
19570ENDIF
19580ENDIF
19590ENDPROC
19600
19610DEFPROCMGScAmp
19620IF stype%=2 THEN
19630PROCReportErr("Only for linear samples.")
19640ELSE
19650C%=4096*VAL($(mscamp%!40))/100
19660D%=stype%
19670CALLscamp
19680PROCRdWork
19690PROCModTitle(0)
19700ENDIF
19710ENDPROC
19720
19730DEFPROCMGLength
19740fr=VAL($(mnewlen%!40))/100
19750sa%=A%-startsample%
19760sb%=B%-startsample%
19770c%=FNCheckLen(samplelen%+clipblen%+(sb%-sa%)*(fr-1),"No room for stretch.")
19780IF c%=0 THEN
19790sc%=fr*&1000000
19800IF sc%>=&1000000 THEN
19810A%=startsample%+sb%
19820B%=startsample%+sa%+(sb%-sa%)*fr
19830C%=samplelen%-sb%
19840CALLcopymem
19850ENDIF
19860A%=startsample%+sa%
19870B%=startsample%+sb%
19880C%=sc%
19890IF sc%<&1000000 THEN
19900IF fr<>0 THEN C%=&1000000/fr:CALLnwlengths
19910ELSE
19920C%=&1000000/fr
19930D%=startsample%+sa%+(sb%-sa%)*fr
19940CALLnwlengthb
19950ENDIF
19960IF sc%<&1000000 THEN
19970A%=startsample%+sb%
19980B%=startsample%+sa%+(sb%-sa%)*fr
19990C%=samplelen%-sb%
20000CALLcopymem
20010ENDIF
20020IF ploopl%>sa% THEN ploopl%=ploopl%-(sb%-sa%)+(sb%-sa%)*fr
20030IF ploopr%>sa% THEN ploopr%=ploopr%-(sb%-sa%)+(sb%-sa%)*fr
20040PROCgetwinp
20050samplelen%=samplelen%-(sb%-sa%)+(sb%-sa%)*fr
20060IF samplelen%<1 THEN samplelen%=1:startsample%?0=0:startsample%?1=0
20070PROCCheckLoop
20080PROCCheckSong
20090PROCadjptrs
20100PROCZoomSel
20110PROCModTitle(0)
20120ENDIF
20130ENDPROC
20140
20150DEFPROCMGFill
20160IF stype%=1 THEN C%=128 ELSE C%=0
20170CALLfillmem
20180PROCRdWork
20190PROCModTitle(0)
20200ENDPROC
20210
20220DEFPROCMGFFT
20230LOCAL ERROR
20240ON ERROR LOCAL SYS"OS_SpriteOp",60+256,S%,0,0:PROCReportErr(REPORT$):ENDPROC
20250IF stype%=2 THEN
20260PROCReportErr("Only for linear samples.")
20270ELSE
20280C%=VAL($(mfftamp%!40))
20290IF C%<0 THEN C%=0
20300SYS"Hourglass_On"
20310SYS"Wimp_BaseOfSprites"TO,S%
20320SYS"OS_SpriteOp",60+256,S%,"fftsprite",0TOW%,X%,Y%,Z%
20330CLG:VDU5
20340LINE 512,512,0,256
20350LINE 512,512,1024,256
20360LINE 512,512,512,1024
20370MOVE 8,212
20380PRINT"f";
20390LINE 26,232,0,220
20400LINE 12,220,0,220
20410LINE 8,228,0,220
20420MOVE 1000,212
20430PRINT"t";
20440LINE 996,232,1022,220
20450LINE 1010,220,1022,220
20460LINE 1014,228,1022,220
20470MOVE 490,1020
20480PRINT"A";
20490LINE 480,1020,480,988
20500LINE 476,1008,480,1020
20510LINE 484,1008,480,1020
20520
20530fftcode%!4=A%
20540fftcode%!8=B%
20550fftcode%!12=0
20560IF (B%-A%)<128 THEN fftcode%!16=0 ELSE fftcode%!16=64*(B%-A%)
20570fftcode%!20=0
20580fftcode%!24=stype%
20590fftcode%!28=C%
20600fftcode%!32=512
20610fftcode%!36=512
20620fftcode%!40=fftrcoef%
20630fftcode%!44=ffticoef%
20640CALLfftcode%
20650
20660SYS"OS_SpriteOp",W%,X%,Y%,Z%
20670temp%!0=wffth%
20680SYS"Wimp_CloseWindow",,temp%
20690SYS"Wimp_GetWindowState",,temp%
20700temp%!28=-1
20710SYS"Wimp_OpenWindow",,temp%
20720SYS"Hourglass_Off"
20730ENDIF
20740ENDPROC
20750
20760DEFPROCMGAddClipB
20770IF stype%=2 THEN
20780PROCReportErr("Only for linear samples.")
20790ELSE
20800IF B%-A%>clipblen% THEN C%=clipblen% ELSE C%=B%-A%
20810B%=clipbstart%
20820D%=stype%
20830CALLaddclip
20840PROCRdWork
20850PROCModTitle(0)
20860ENDIF
20870ENDPROC
20880
20890DEFPROCEchoClick
20900IF pselectl%<>-1 AND pselectr%<>-1 THEN
20910A%=startsample%+pselectl%
20920B%=startsample%+pselectr%
20930ELSE
20940A%=startsample%
20950B%=startsample%+samplelen%
20960ENDIF
20970IF A%>B% THEN SWAP A%,B%
20980IF polledb%!16=8 THEN
20990MOUSE a%,b%,bc%
21000IF stype%=2 THEN
21010PROCReportErr("Only for linear samples.")
21020ELSE
21030temp%!0=wechoh%
21040temp%!4=2
21050SYS"Wimp_GetIconState",,temp%
21060C%=256-(256*VAL($(temp%!28))/100)
21070temp%!0=wechoh%
21080temp%!4=3
21090SYS"Wimp_GetIconState",,temp%
21100D%=VAL($(temp%!28))
21110temp%!0=wechoh%
21120temp%!4=6
21130SYS"Wimp_GetIconState",,temp%
21140E%=(temp%!24)AND(1<<21)
21150F%=stype%
21160IF C%<0 OR C%>256 THEN
21170PROCReportErr("Decay rate out of range.")
21180ELSE
21190CALLecho
21200PROCRdWork
21210PROCModTitle(0)
21220ENDIF
21230ENDIF
21240IF (bc% AND 1)=0 THEN SYS"Wimp_CreateMenu",-1,-1,-1,-1
21250ENDIF
21260ENDPROC
21270
21280DEFPROCFadeClick
21290IF pselectl%<>-1 AND pselectr%<>-1 THEN
21300A%=startsample%+pselectl%
21310B%=startsample%+pselectr%
21320ELSE
21330A%=startsample%
21340B%=startsample%+samplelen%
21350ENDIF
21360IF A%>B% THEN SWAP A%,B%
21370IF polledb%!16=6 THEN
21380MOUSE a%,b%,bc%
21390IF stype%=2 THEN
21400PROCReportErr("Only for linear samples.")
21410ELSE
21420temp%!0=wfadeh%
21430temp%!4=2
21440SYS"Wimp_GetIconState",,temp%
21450C%=&10000000*VAL($(temp%!28))/100
21460temp%!0=wfadeh%
21470temp%!4=3
21480SYS"Wimp_GetIconState",,temp%
21490D%=&10000000*VAL($(temp%!28))/100
21500IF B%-A%<>0 THEN
21510E%=(D%-C%)/(B%-A%)
21520F%=stype%
21530CALLfade
21540PROCRdWork
21550PROCModTitle(0)
21560ENDIF
21570ENDIF
21580IF (bc% AND 1)=0 THEN SYS"Wimp_CreateMenu",-1,-1,-1,-1
21590ENDIF
21600ENDPROC
21610
21620DEFPROCUser_Message
21630FORT%=0TO255STEP4:messbk%!T%=polledb%!T%:NEXTT%
21640m%=polledb%!16
21650CASE m% OF
21660WHEN 0:PROCQuit
21670WHEN 1:PROCDataSave
21680WHEN 2:PROCSaveAck
21690WHEN 3:PROCDataLoad
21700WHEN &400c0:PROCMenuWarning
21710WHEN &44640:polledb%!8=1:PROCMType
21720WHEN &44641:polledb%!8=2:PROCMType
21730WHEN &44642:polledb%!8=0:PROCMType
21740WHEN &44643:PROCMessGetLen
21750WHEN &44644:PROCCalculated
21760ENDCASE
21770ENDPROC
21780
21790DEFPROCDataLoad
21800CASE polledb%!20 OF
21810WHEN -2,wworkh%:PROCLoadSample
21820ENDCASE
21830ENDPROC
21840
21850DEFPROCMessGetLen
21860SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
21870temp%!20=bufstart%
21880temp%!24=buflen%-clipblen%
21890PROCSendSFXM(&44645)
21900ENDPROC
21910
21920DEFPROCCalculated
21930SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
21940startsample%=bufstart%
21950samplelen%=polledb%!20
21960stype%=polledb%!24
21970PROCAdjTypeM
21980selectl%=-1:selectr%=-1:oselectl%=-1:oselectr%=-1
21990pselectl%=-1:pselectr%=-1
22000ploopl%=0:ploopr%=samplelen%
22010$(wwork%!72)=$(polledb%+28)
22020samplesaved%=-1
22030PROCOpenWork
22040PROCCheckSong
22050PROCZoomAll
22060SYS"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
22070ENDPROC
22080
22090DEFPROCSendSFXM(M%)
22100H%=FNGetSFXMH
22110IF H%<>0 THEN
22120temp%!0=256
22130temp%!4=0
22140temp%!8=0
22150temp%!12=0
22160temp%!16=M%
22170SYS"Wimp_SendMessage",17,temp%,H%
22180ENDIF
22190ENDPROC
22200
22210DEFFNGetSFXMH
22220SYS"XOS_ReadVarVal","SFXM_TaskHandle",temp2%,16,0,0TO,,A%
22230temp2%?A%=13
22240IF A%=0 THEN =0 ELSE =EVAL("&"+$temp2%)
22250
22260DEFPROCLoadSample
22270SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
22280PROCMBString(polledb%+44)
22290filetoload$=$(polledb%+44)
22300filetype%=polledb%!40
22310IF samplesaved%=-1 THEN
22320PROCLoadSample2
22330ELSE
22340A%=FNConfirm("Sample has been modified. Are you sure you want to load another sample?")
22350IF A%=1 THEN PROCLoadSample2
22360ENDIF
22370messbk%!0=256
22380messbk%!12=messbk%!8
22390messbk%!16=4
22400SYS"Wimp_SendMessage",17,messbk%,messbk%!4
22410ENDPROC
22420
22430DEFPROCLoadSample2
22440LOCAL ERROR
22450ON ERROR LOCAL PROCReportErr(REPORT$):ENDPROC
22460f%=OPENIN(filetoload$)
22470IF f%=0 THEN
22480samplelen%=1
22490startsample%?0=0
22500startsample%?1=0
22510CLOSE#f%
22520ELSE
22530filelen%=EXT#f%
22540CLOSE#f%
22550c%=FNCheckLen(filelen%+clipblen%,"No room.")
22560IF c%=0 THEN
22570f%=OPENIN(filetoload$)
22580startsample%=bufstart%
22590CASE filetype% OF
22600WHEN &cb5:PROCLoadSa1
22610WHEN &d3c:PROCLoadSa2
22620WHEN &df9:PROCLoadSa3
22630WHEN &ed0:PROCLoadSa4
22640WHEN &d3b:PROCLoadSong
22650OTHERWISE:PROCLoadSaX
22660ENDCASE
22670CLOSE#f%
22680selectl%=-1:selectr%=-1:oselectl%=-1:oselectr%=-1
22690pselectl%=-1:pselectr%=-1
22700IF filetoload$="<Wimp$Scrap>" THEN
22710OSCLI("delete <Wimp$Scrap>")
22720filetoload$=filetoload2$
22730ENDIF
22740$(wwork%!72)=filetoload$
22750temp%!0=wsaveh%
22760temp%!4=1
22770SYS"Wimp_GetIconState",,temp%
22780$(!(temp%+28))=filetoload$
22790IF filetype%=&d3b THEN songtoload$=filetoload$ ELSE sampletoload$=filetoload$
22800samplesaved%=-1
22810PROCCheckSong
22820PROCOpenWork
22830PROCZoomAll
22840ENDIF
22850ENDIF
22860ENDPROC
22870
22880DEFPROCLoadSong
22890PROCClearSong
22900INPUT#f%,a$,pitch%,songlen%,samplelen%
22910IF a$="RgnosXFS" THEN songrep%=-1:a$="gnosXFS" ELSE songrep%=0
22920T%=0
22930WHILE T%<songlen%
22940INPUT#f%,b$,A%,B%,C%,D%,E%
22950D%=D%*16
22960IF a$<>"gnosXFS" THEN E%=255
22970IF A%<0 THEN A%=0
22980IF B%<0 THEN B%=0
22990IF A%>samplelen% THEN A%=samplelen%
23000IF B%>samplelen% THEN B%=samplelen%
23010IF C%<1 THEN C%=1
23020IF C%>255 THEN C%=255
23030IF D%<1 THEN D%=1
23040IF D%>&10000 THEN D%=&10000
23050IF E%<2 THEN E%=2
23060IF E%>255 THEN E%=255
23070IF T%<INT(songbuflen%/32) THEN
23080$(songstart%+T%*32)=LEFT$(b$,10)
23090songstart%!(T%*32+12)=C%
23100songstart%!(T%*32+16)=D%
23110songstart%!(T%*32+20)=E%
23120songstart%!(T%*32+24)=A%
23130songstart%!(T%*32+28)=B%
23140ENDIF
23150T%+=1
23160ENDWHILE
23170SYS"OS_GBPB",4,f%,startsample%,samplelen%
23180PROCSetPitch2
23190PROCAdjSongM
23200PROCRdSong
23210PROCSetSongExtent
23220ploopl%=0:ploopr%=samplelen%
23230ENDPROC
23240
23250DEFPROCLoadSa1
23260SYS"OS_GBPB",3,f%,temp%,4,0
23270IF !temp%<>&504d4153 THEN
23280SYS"OS_GBPB",3,f%,startsample%,filelen%,0
23290samplelen%=filelen%
23300ploopl%=0:ploopr%=2
23310ELSE
23320samplelen%=-1
23330ploopl%=-1
23340ploopr%=-1
23350N%=0:T%=0
23360WHILE N%=0 AND (samplelen%=-1 OR ploopl%=-1 OR ploopr%=-1)
23370SYS"OS_GBPB",3,f%,temp%,4,T%TO,,,,T%
23380CASE !temp% OF
23390WHEN &53464f52:SYS"OS_GBPB",3,f%,temp%,8,T%TO,,,,T%:ploopl%=temp%!4
23400WHEN &4e454c52:SYS"OS_GBPB",3,f%,temp%,8,T%TO,,,,T%:ploopr%=temp%!4
23410WHEN &54414453:SYS"OS_GBPB",3,f%,temp%,4,T%TO,,,,T%:samplelen%=temp%!0:SYS"OS_GBPB",3,f%,startsample%,samplelen%,T%TO,,,,T%
23420ENDCASE
23430SYS"OS_Args",254,f%TON%
23440N%=N%AND(1<<9)
23450ENDWHILE
23460IF samplelen%=-1 THEN PROCReportErr("Bad Chunk."):samplelen%=1:ploopl%=0:ploopr%=1
23470IF ploopl%=-1 OR ploopr%=-1 THEN PROCReportErr("Bad Chunk."):ploopl%=0:ploopr%=samplelen%
23480ploopr%=ploopl%+ploopr%
23490ENDIF
23500stype%=2
23510PROCAdjTypeM
23520IF ploopl%=0 AND ploopr%=2 THEN playtype%=0 ELSE playtype%=3
23530PROCAdjKeys
23540IF ploopl%<0 THEN ploopl%=0
23550IF ploopl%>samplelen% THEN ploopl%=samplelen%:ploopr%=samplelen%
23560IF ploopr%>samplelen% THEN ploopr%=samplelen%
23570IF ploopr%<0 THEN ploopl%=0:ploopr%=0
23580IF ploopr%<ploopl% THEN ploopr%=ploopl%
23590ENDIF
23600ENDPROC
23610
23620DEFPROCLoadSa2
23630SYS"OS_GBPB",3,f%,startsample%,1,0
23640pitch%=?startsample%
23650PROCSetPitch2
23660SYS"OS_GBPB",3,f%,startsample%,filelen%-1,1
23670samplelen%=filelen%-1
23680ploopl%=0:ploopr%=samplelen%
23690stype%=0
23700PROCAdjTypeM
23710ENDPROC
23720
23730DEFPROCLoadSa3
23740SYS"OS_GBPB",3,f%,temp%,4,20
23750samplelen%=temp%!0
23760SYS"OS_GBPB",3,f%,temp%,4,24
23770ploopl%=(temp%!0)*256
23780SYS"OS_GBPB",3,f%,temp%,4,28
23790ploopr%=(temp%!0)*256
23800SYS"OS_GBPB",3,f%,startsample%,samplelen%,544
23810stype%=0
23820PROCAdjTypeM
23830IF ploopl%=ploopr% THEN playtype%=0 ELSE playtype%=3
23840PROCAdjKeys
23850IF ploopl%<0 THEN ploopl%=0
23860IF ploopl%>samplelen% THEN ploopl%=samplelen%:ploopr%=samplelen%
23870IF ploopr%>samplelen% THEN ploopr%=samplelen%
23880IF ploopr%<0 THEN ploopl%=0:ploopr%=0
23890IF ploopr%<ploopl% THEN ploopr%=ploopl%
23900ENDPROC
23910
23920DEFPROCLoadSa4
23930SYS"OS_GBPB",3,f%,startsample%,filelen%,0
23940samplelen%=filelen%
23950ploopl%=0:ploopr%=samplelen%
23960stype%=1
23970PROCAdjTypeM
23980ENDPROC
23990
24000DEFPROCLoadSaX
24010SYS"OS_GBPB",3,f%,startsample%,filelen%,0
24020samplelen%=filelen%
24030ploopl%=0:ploopr%=samplelen%
24040ENDPROC
24050
24060DEFPROCAdjKeys
24070temp%!0=wkeyboardh%
24080temp%!4=43
24090IF playtype%=0 THEN temp%!8=1<<21 ELSE temp%!8=0
24100temp%!12=1<<21
24110SYS"Wimp_SetIconState",,temp%
24120temp%!4=44
24130IF playtype%=1 THEN temp%!8=1<<21 ELSE temp%!8=0
24140temp%!12=1<<21
24150SYS"Wimp_SetIconState",,temp%
24160temp%!4=45
24170IF playtype%=2 THEN temp%!8=1<<21 ELSE temp%!8=0
24180temp%!12=1<<21
24190SYS"Wimp_SetIconState",,temp%
24200temp%!4=46
24210IF playtype%=3 THEN temp%!8=1<<21 ELSE temp%!8=0
24220temp%!12=1<<21
24230SYS"Wimp_SetIconState",,temp%
24240ENDPROC
24250
24260DEFPROCMenuWarning
24270IF (lastmenu%=workmenu%) AND (polledb%!32=0) AND (polledb%!36=0) THEN PROCNewMenuInfo
24280IF (lastmenu%=workmenu%) AND (polledb%!32=1) AND (polledb%!40=-1) THEN PROCNewMenuSave
24290IF (lastmenu%=workmenu%) AND (polledb%!32=1) AND (polledb%!40<>-1) THEN PROCNewMenuWSave
24300IF (lastmenu%=workmenu%) AND (polledb%!32=7) AND (polledb%!36<>-1) THEN PROCNewMenuSSave
24310ENDPROC
24320
24330DEFPROCNewMenuSave
24340CASE polledb%!36 OF
24350WHEN 0:savedata%=0:$savemenu2%="All"
24360WHEN 1:savedata%=1:$savemenu2%="Selected"
24370WHEN 2:savedata%=2:$savemenu2%="Clipboard"
24380ENDCASE
24390SYS"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
24400ENDPROC
24410
24420DEFPROCNewMenuWSave
24430CASE polledb%!40 OF
24440WHEN 0:savedt%=0:PROCChSaveWin(savedt%)
24450WHEN 1:savedt%=1:PROCChSaveWin(savedt%)
24460WHEN 2:savedt%=2:PROCChSaveWin(savedt%)
24470WHEN 3:savedt%=3:PROCChSaveWin(savedt%)
24480WHEN 4:savedt%=4:PROCChSaveWin(savedt%)
24490WHEN 5:savedt%=5:PROCChSaveWin(savedt%)
24500WHEN 6:savedt%=6:PROCChSaveWin(savedt%)
24510ENDCASE
24520SYS"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
24530ENDPROC
24540
24550DEFPROCChSaveWin(w%)
24560A%=wsave%!72
24570temp%!0=wsaveh%
24580temp%!4=0
24590SYS"Wimp_GetIconState",,temp%
24600B%=temp%!28
24610temp%!0=wsaveh%
24620temp%!4=1
24630SYS"Wimp_GetIconState",,temp%
24640C%=temp%!28
24650CASE w% OF
24660WHEN 0:$A%="Tracker":$B%="file_cb5":$C%=sampletoload$
24670WHEN 1:$A%="Tracker_NoHeadr":$B%="file_cb5":$C%=sampletoload$
24680WHEN 2:$A%="Armadeus":$B%="file_d3c":$C%=sampletoload$
24690WHEN 3:$A%="DSEdit":$B%="file_ed0":$C%=sampletoload$
24700WHEN 4:$A%="EMR":$B%="file_df9":$C%=sampletoload$
24710WHEN 5:$A%="Raw":$B%="file_ffd":$C%=sampletoload$
24720WHEN 6:$A%="Module":$B%="file_ffa":$C%=modtoload$
24730WHEN 10:$A%="Song":$B%="file_d3b":$C%=songtoload$
24740WHEN 11:$A%="SongModule":$B%="file_ffa":$C%=songmodtoload$
24750ENDCASE
24760ENDPROC
24770
24780DEFPROCNewMenuSSave
24790CASE polledb%!36 OF
24800WHEN 2:savedt%=10:savedata%=0:PROCChSaveWin(savedt%)
24810WHEN 3:savedt%=11:savedata%=0:PROCChSaveWin(savedt%)
24820ENDCASE
24830SYS"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
24840ENDPROC
24850
24860DEFPROCNewMenuInfo
24870temp%!0=winfoh%
24880temp%!4=5
24890SYS"Wimp_GetIconState",,temp%
24900$(temp%!28)=STR$buflen%
24910temp%!4=6
24920SYS"Wimp_GetIconState",,temp%
24930$(temp%!28)=STR$samplelen%
24940temp%!4=7
24950SYS"Wimp_GetIconState",,temp%
24960$(temp%!28)=STR$clipblen%
24970temp%!4=8
24980SYS"Wimp_GetIconState",,temp%
24990IF pselectl%<>-1 AND pselectr%<>-1 THEN $(temp%!28)=STR$(pselectr%-pselectl%) ELSE $(temp%!28)=""
25000temp%!4=9
25010SYS"Wimp_GetIconState",,temp%
25020IF pselectl%<>-1 THEN $(temp%!28)=STR$pselectl% ELSE $(temp%!28)=""
25030temp%!4=16
25040SYS"Wimp_GetIconState",,temp%
25050IF pselectr%<>-1 THEN $(temp%!28)=STR$pselectr% ELSE $(temp%!28)=""
25060temp%!4=20
25070SYS"Wimp_GetIconState",,temp%
25080$(temp%!28)=STR$ploopl%
25090temp%!4=21
25100SYS"Wimp_GetIconState",,temp%
25110$(temp%!28)=STR$ploopr%
25120SYS"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
25130ENDPROC
25140
25150DEFPROCCloseDown
25160IF samplesaved%=-1 THEN
25170PROCQuit
25180ELSE
25190A%=FNConfirm("Sample has been modified. Are you sure you want to quit?")
25200IF A%=1 THEN PROCQuit
25210ENDIF
25220ENDPROC
25230
25240DEFPROCQuit
25250PROCSendSFXM(0)
25260SYS"SFXMP_Stop",1
25270SYS"SFXMP_Stop",2
25280SYS"SFXMP_Stop",3
25290SYS"SFXMP_Disable"
25300SYS"XOS_SetVarVal","SFXED_TaskHandle","",-1,0,0
25310SYS"Wimp_BaseOfSprites"TO,S%
25320REMSYS"XOS_SpriteOp",25+256,S%,"fftsprite"
25330IF bufstart%<>-1 THEN SYS"XOS_Module",7,,bufstart%
25340IF songstart%<>-1 THEN SYS"XOS_Module",7,,songstart%
25350SYS"Hourglass_Smash"
25360SYS"Wimp_CloseDown",taskh%,&4b534154
25370SYS"OS_Exit"
25380ENDPROC
25390
25400DEFPROCSetExtent
25410maxx%=1024*samplelen%/displen%
25420temp%!0=0
25430temp%!4=-256
25440temp%!8=maxx%
25450temp%!12=0
25460SYS"Wimp_SetExtent",wworkh%,temp%
25470ENDPROC
25480
25490DEFPROCSetSongExtent
25500temp%!0=0
25510temp%!4=-(96+songlen%*36+36)
25520temp%!8=604
25530temp%!12=0
25540SYS"Wimp_SetExtent",wsongh%,temp%
25550temp%!0=wsongh%
25560SYS"Wimp_GetWindowState",,temp%
25570IF (temp%!32)AND(1<<16) THEN SYS"Wimp_OpenWindow",,temp%
25580ENDPROC
25590
25600DEFPROCInit
25610DIM temp% 1000
25620DIM temp2% 1000
25630DIM messbk% 512
25640bufstart%=-1
25650songstart%=-1
25660SYS"Wimp_Initialise",200,&4b534154,"SFXED"TOversion%,taskh%
25670IF version%<200 THEN SYS"Wimp_CloseDown",taskh%,&4b534154:SYS"OS_Exit"
25680SYS"XOS_ReadVarVal","SFXED_TaskHandle",temp2%,16,0,0TO,,A%
25690IF A%<>0 THEN
25700PROCReportErr("SFXED already running.")
25710SYS"Wimp_CloseDown",taskh%,&4b534154
25720SYS"OS_Exit"
25730ENDIF
25740SYS"Hourglass_On"
25750SYS"XOS_SetVarVal","SFXED_TaskHandle",STR$~taskh%,8,0,0
25760DIM smodlog% 512
25770DIM smodslin% 512
25780DIM smodulin% 512
25790DIM smodsong% 1024
25800DIM fftcode% 3000
25810DIM fftrcoef% 128*4
25820DIM ffticoef% 128*4
25830OSCLI("LOAD <SFXED$Dir>.pmlog "+STR$~smodlog%)
25840OSCLI("LOAD <SFXED$Dir>.pmslin "+STR$~smodslin%)
25850OSCLI("LOAD <SFXED$Dir>.pmulin "+STR$~smodulin%)
25860OSCLI("LOAD <SFXED$Dir>.pmsong "+STR$~smodsong%)
25870OSCLI("LOAD <SFXED$Dir>.fftcode "+STR$~fftcode%)
25880SYS"Wimp_SpriteOp",11,,"<SFXED$Dir>.Sprites"
25890SYS"Wimp_OpenTemplate",,"<SFXED$Dir>.Templates"
25900DIM wsave% 1000
25910DIM wabout% 1000
25920DIM wkeyboard% 4000
25930DIM wwork% 1000
25940DIM winfo% 1000
25950DIM wecho% 1000
25960DIM wfade% 1000
25970DIM wpos% 1000
25980DIM wfft% 1000
25990DIM wsong% 1000
26000DIM wsongpane% 1000
26010DIM icbuf% 4000
26020icbufn%=icbuf%
26030DIM tname% 16
26040next%=0
26050PROCLoadTemp(wsave%,"save")
26060PROCLoadTemp(wabout%,"about")
26070PROCLoadTemp(wkeyboard%,"keyboard")
26080PROCLoadTemp(wfade%,"fade")
26090PROCLoadTemp(wecho%,"echo")
26100PROCLoadTemp(winfo%,"info")
26110PROCLoadTemp(wwork%,"work")
26120PROCLoadTemp(wpos%,"pos")
26130PROCLoadTemp(wfft%,"fft")
26140PROCLoadTemp(wsong%,"song")
26150PROCLoadTemp(wsongpane%,"songpane")
26160SYS"Wimp_CloseTemplate"
26170wsave%!(88+24)=1
26180SYS"Wimp_CreateWindow",,wsave%TOwsaveh%
26190SYS"Wimp_CreateWindow",,wabout%TOwabouth%
26200SYS"Wimp_CreateWindow",,wkeyboard%TOwkeyboardh%
26210SYS"Wimp_CreateWindow",,wwork%TOwworkh%
26220SYS"Wimp_CreateWindow",,winfo%TOwinfoh%
26230SYS"Wimp_CreateWindow",,wecho%TOwechoh%
26240SYS"Wimp_CreateWindow",,wfade%TOwfadeh%
26250SYS"Wimp_CreateWindow",,wpos%TOwposh%
26260SYS"Wimp_CreateWindow",,wfft%TOwffth%
26270SYS"Wimp_CreateWindow",,wsong%TOwsongh%
26280SYS"Wimp_CreateWindow",,wsongpane%TOwsongpaneh%
26290PROCMenus
26300DIM bicon% 32
26310bicon%!0=-1
26320bicon%!4=0
26330bicon%!8=0
26340bicon%!12=68
26350bicon%!16=68
26360bicon%!20=%0011000000011010
26370$(bicon%+24)="!sfxed"
26380SYS"Wimp_CreateIcon",,bicon%TObiconh%
26390PROCAssem
26400DIM dragb% 256
26410DIM pollb% 256
26420DIM polledb% 256
26430*VOLUME 127
26440SYS"XSound_Configure",0,0,0,0,0TO,,,T%
26450DIM logtable% 256
26460!logtab=logtable%
26470FORS%=0TO255
26480logtable%?S%=?((T%!8)+(S%<<5))
26490NEXTS%
26500DIM lintable% 256
26510!lintab=lintable%
26520FORS%=0TO127
26530lintable%?(S%*2)=INT((0.5+267.33*2^(S%/16))/512)
26540lintable%?(S%*2+1)=-lintable%?(S%*2)
26550NEXTS%
26560samplesaved%=-1
26570filetoload$="":filetoload2$=""
26580savedata%=-1
26590savedt%=-1
26600savetype%=-1
26610ss%=-1
26620oldbut%=0:lastmenu%=-1:lastmx%=-1:lastmy%=-1
26630dragtype%=-1
26640playtype%=0
26650maxx%=0
26660more%=0
26670stype%=0
26680releasek%=-1
26690multiplek%=-1
26700okt%=1
26710pdisphd%=0
26720pitch%=48
26730spitch%=&1000
26740ospitch%=&1000
26750SYS"XSound_Configure",0,0,pitch%,0,0
26760SYS"XOS_ReadVarVal","SFXED$BufferSize",temp2%,16,0,0TO,,A%
26770temp2%?A%=13
26780IF A%=0 THEN buflen%=0 ELSE buflen%=1024*VAL($temp2%)
26790IF buflen%<1024 THEN buflen%=1024
26800IF buflen%>1024*1023 THEN buflen%=1024*1023
26810$(mbuflen%!40)=STR$(buflen%/1024)
26820songbuflen%=&1000
26830songrep%=0
26840VOICES4
26850VOICE2,"SFXMVoice"
26860VOICE3,"SFXMVoice"
26870VOICE4,"SFXMVoice"
26880SYS"SFXMP_Enable"
26890SYS"XOS_Module",6,,,songbuflen%+32TO,,songstart%;v%
26900IF v%AND1 THEN
26910songstart%=-1
26920PROCReportErr("Can't claim sample memory.")
26930PROCQuit
26940ENDIF
26950SYS"XOS_Module",6,,,buflen%TO,,bufstart%;v%
26960IF v%AND1 THEN
26970bufstart%=-1
26980PROCReportErr("Can't claim sample memory.")
26990PROCQuit
27000ENDIF
27010PROCRestart
27020PROCSetExtent
27030SYS"Hourglass_Off"
27040ENDPROC
27050
27060DEFPROCRestart
27070SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
27080startsample%=bufstart%
27090samplelen%=1
27100clipbstart%=bufstart%+buflen%
27110clipblen%=0
27120displen%=1
27130selectl%=-1:oselectl%=-1:selectr%=-1:oselectr%=-1
27140pselectl%=-1:pselectr%=-1
27150playp%=-1
27160loopl%=0:loopr%=1024
27170oloopl%=0:oloopr%=1024
27180ploopl%=0:ploopr%=samplelen%
27190sploopl%=ploopl%:sploopr%=ploopr%
27200startsample%?0=0
27210startsample%?1=0
27220pos%=0:oldpos%=-1
27230zoomsl%=0:zoomsr%=samplelen%
27240sampletoload$="Sample"
27250modtoload$="SampleMod"
27260songtoload$="Song"
27270songmodtoload$="SongMod"
27280PROCDrawPos
27290PROCClearSong
27300ENDPROC
27310
27320DEFPROCClearSong
27330SYS"SFXMP_Stop",1:SYS"SFXMP_Stop",2:SYS"SFXMP_Stop",3
27340songlen%=0
27350currsect%=0
27360temp%!0=wsongpaneh%
27370temp%!4=5
27380SYS"Wimp_GetIconState",,temp%
27390$(temp%!28)="1"
27400temp%!4=6
27410SYS"Wimp_GetIconState",,temp%
27420$(temp%!28)="<Untitled>"
27430temp%!4=7
27440SYS"Wimp_GetIconState",,temp%
27450$(temp%!28)="1"
27460temp%!4=8
27470SYS"Wimp_GetIconState",,temp%
27480$(temp%!28)="4096"
27490temp%!4=9
27500SYS"Wimp_GetIconState",,temp%
27510$(temp%!28)="255"
27520PROCSetSongExtent
27530PROCRdSong
27540PROCRdSongPane
27550ENDPROC
27560
27570DEFPROCModTitle(ss%)
27580LOCAL ti$
27590IF ss%=samplesaved% THEN ENDPROC
27600ti$=$(wwork%!72)
27610IF INSTR(ti$," ")<>0 THEN ti$=LEFT$(ti$,INSTR(ti$," ")-1)
27620IF ss%=0 THEN ti$=ti$+" *"
27630$(wwork%!72)=ti$
27640temp%!0=wworkh%
27650SYS"Wimp_GetWindowOutline",,temp%
27660SYS"Wimp_ForceRedraw",-1,temp%!4,temp%!16-40,temp%!12,temp%!16
27670samplesaved%=ss%
27680ENDPROC
27690
27700DEFPROCLoadTemp(RETURN start%,name$)
27710$tname%=name$
27720SYS"Wimp_LoadTemplate",,start%,icbufn%,icbuf%+4000,-1,tname%,0TO,start%,icbufn%,,,,next%
27730IF next%=0 THEN SYS"Wimp_CloseTemplate":ERROR 0,"Template "+name$+" not found"
27740ENDPROC
27750
27760DEFPROCReportErr(a$)
27770temp2%!0=0
27780$(temp2%+4)=a$
27790SYS"Wimp_ReportError",temp2%,1,"SFXED"
27800ENDPROC
27810
27820DEFFNConfirm(a$)
27830temp2%!0=0
27840$(temp2%+4)=a$
27850SYS"Wimp_ReportError",temp2%,%10011,"Confirm"TO,A%
27860=A%
27870
27880DEFFNinterr(a$)
27890temp2%!0=0
27900$(temp2%+4)=a$
27910SYS"Wimp_ReportError",temp2%,%10011,"SFXED Internal Error."TO,A%
27920=A%
27930
27940REM titlestring, width in chars.
27950DEFFNMenuHead(t$,w%)
27960LOCAL a%
27970a%=Menus%+MenuPtr%
27980$a%=t$
27990a%?12=7
28000a%?13=2
28010a%?14=7
28020a%?15=0
28030a%!16=w%*16
28040a%!20=44
28050a%!24=0
28060MenuPtr%+=28
28070=a%
28080
28090REM itemtext, flags, indirected, val. string, max. length
28100DEFPROCAddItem(i$,f%,i%,v$,ml%)
28110LOCAL a%
28120a%=Menus%+MenuPtr%
28130IF (LEN(i$)>11)AND(i%=0) THEN i%=-1:ml%=LEN(i$)+1
28140a%!0=f%AND255
28150IF f%AND 256 THEN a%!8=%00000111010000011001000000010001 ELSE a%!8=%00000111000000011001000000010001
28160a%!4=-1
28170IF i% THEN
28180  a%!8+=256
28190  $(MenuData%+MenuDataPtr%)=i$
28200  a%!12=MenuData%+MenuDataPtr%
28210  MenuDataPtr%+=LEN(i$)+1
28220  $(MenuData%+MenuDataPtr%)=v$
28230  a%!16=MenuData%+MenuDataPtr%
28240  MenuDataPtr%+=LEN(v$)+1
28250  a%!20=ml%
28260ELSE
28270  $(a%+12)=i$
28280ENDIF
28290MenuPtr%+=24
28300ENDPROC
28310
28320REM menu, item, submenupointer
28330DEFPROCAddSubMenu(m%,i%,p%)
28340m%!(28+24*i%+4)=p%
28350ENDPROC
28360
28370DEFPROCMenus
28380DIM Menus% 4000
28390DIM MenuData% 2000
28400MenuPtr%=0
28410MenuDataPtr%=0
28420
28430iconmenu%=FNMenuHead("SFXED",6)
28440PROCAddItem("Info",0,0,"",0)
28450PROCAddItem("Quit",128,0,"",0)
28460PROCAddSubMenu(iconmenu%,0,wabouth%)
28470
28480workmenu%=FNMenuHead("SFXED",8)
28490PROCAddItem("Misc",0,0,"",0)
28500PROCAddItem("Save",0,0,"",0)
28510PROCAddItem("Edit",0,0,"",0)
28520PROCAddItem("Select",0,0,"",0)
28530PROCAddItem("Zoom",0,0,"",0)
28540PROCAddItem("Loop",0,0,"",0)
28550PROCAddItem("Goodies",0,0,"",0)
28560PROCAddItem("Song",128,0,"",0)
28570miscmenu%=FNMenuHead("Misc",12)
28580PROCAddItem("Info",8,0,"",0)
28590PROCAddItem("Sample Type",0,0,"",0)
28600PROCAddItem("Set Buffer",0,0,"",0)
28610PROCAddItem("Restart",128,0,"",0)
28620typemenu%=FNMenuHead("Sample Type",19)
28630PROCAddItem("Logarithmic     F6",0,0,"",0)
28640PROCAddItem("Signed Linear   F7",1,0,"",0)
28650PROCAddItem("Unsigned Linear F8",128,0,"",0)
28660mbuflen%=FNMenuHead("Length (K)",11)
28670PROCAddItem("128",128+4,-1,"A0-9",5)
28680savemenu1%=FNMenuHead("Save",10)
28690PROCAddItem("All",8,0,"",0)
28700PROCAddItem("Selected",8,0,"",0)
28710PROCAddItem("Clipboard",128+8,0,"",0)
28720savemenu2%=FNMenuHead("           ",12)
28730PROCAddItem("Tracker",256+8,0,"",0)
28740PROCAddItem("Tracker_NH",256+8,0,"",0)
28750PROCAddItem("Armadeus",256+8,0,"",0)
28760PROCAddItem("DSEdit",256+8,0,"",0)
28770PROCAddItem("EMR",256+8,0,"",0)
28780PROCAddItem("Raw",256+8,0,"",0)
28790PROCAddItem("Module",256+128+8,0,"",0)
28800editmenu%=FNMenuHead("Edit",11)
28810PROCAddItem("Cut     ^X",0,0,"",0)
28820PROCAddItem("Copy    ^C",0,0,"",0)
28830PROCAddItem("Paste   ^V",0,0,"",0)
28840PROCAddItem("Delete  ^D",0,0,"",0)
28850PROCAddItem("Delete*",0,0,"",0)
28860PROCAddItem("DeleteL ^G",0,0,"",0)
28870PROCAddItem("DeleteR ^H",128,0,"",0)
28880selectmenu%=FNMenuHead("Select",10)
28890PROCAddItem("All    ^A",0,0,"",0)
28900PROCAddItem("Loop",0,0,"",0)
28910PROCAddItem("Left",0,0,"",0)
28920PROCAddItem("Right",0,0,"",0)
28930PROCAddItem("Window",0,0,"",0)
28940PROCAddItem("Clear  ^Z",128,0,"",0)
28950zoommenu%=FNMenuHead("Zoom",12)
28960PROCAddItem("All      ^Q",0,0,"",0)
28970PROCAddItem("Out      ^W",0,0,"",0)
28980PROCAddItem("Loop",0,0,"",0)
28990PROCAddItem("Selected ^S",0,0,"",0)
29000PROCAddItem("Remember ^T",0,0,"",0)
29010PROCAddItem("Recall   ^R",128,0,"",0)
29020loopmenu%=FNMenuHead("Loop",9)
29030PROCAddItem("All",0,0,"",0)
29040PROCAddItem("Window",0,0,"",0)
29050PROCAddItem("Selected",0,0,"",0)
29060PROCAddItem("Half",0,0,"",0)
29070PROCAddItem("Double",0,0,"",0)
29080PROCAddItem("Remember",0,0,"",0)
29090PROCAddItem("Recall",128,0,"",0)
29100goodiesmenu%=FNMenuHead("Goodies",15)
29110PROCAddItem("Signed     F9",0,0,"",0)
29120PROCAddItem("Lin->Log   F10",0,0,"",0)
29130PROCAddItem("Log->Lin   F11",0,0,"",0)
29140PROCAddItem("Reverse",0,0,"",0)
29150PROCAddItem("Low Pass",0,0,"",0)
29160PROCAddItem("High Pass",0,0,"",0)
29170PROCAddItem("Amplify",0,0,"",0)
29180PROCAddItem("Echo/Reverb",0,0,"",0)
29190PROCAddItem("Fade In/Out",0,0,"",0)
29200PROCAddItem("Stretch",0,0,"",0)
29210PROCAddItem("Silence",0,0,"",0)
29220PROCAddItem("FFT        ^F",0,0,"",0)
29230PROCAddItem("Add Clipb.",128,0,"",0)
29240mfiltlo%=FNMenuHead("Low Pass",10)
29250PROCAddItem("32",128+4,-1,"A0-9",4)
29260mfilthi%=FNMenuHead("High Pass",10)
29270PROCAddItem("224",128+4,-1,"A0-9",4)
29280mscamp%=FNMenuHead("Volume %",10)
29290PROCAddItem("100",128+4,-1,"A0-9",5)
29300mnewlen%=FNMenuHead("Length %",10)
29310PROCAddItem("100",128+4,-1,"A0-9",5)
29320mfftamp%=FNMenuHead("Scale",10)
29330PROCAddItem("256",128+4,-1,"A0-9",6)
29340songmenu%=FNMenuHead("Song",12)
29350PROCAddItem("Play",0,0,"",0)
29360PROCAddItem("Show",0,0,"",0)
29370PROCAddItem("Save",256+8,0,"",0)
29380PROCAddItem("Save Module",256+8,0,"",0)
29390PROCAddItem("Clear",0,0,"",0)
29400PROCAddItem("Repeat",128,0,"",0)
29410PROCAddSubMenu(songmenu%,2,wsaveh%)
29420PROCAddSubMenu(songmenu%,3,wsaveh%)
29430PROCAddSubMenu(workmenu%,0,miscmenu%)
29440PROCAddSubMenu(workmenu%,1,savemenu1%)
29450PROCAddSubMenu(workmenu%,2,editmenu%)
29460PROCAddSubMenu(workmenu%,3,selectmenu%)
29470PROCAddSubMenu(workmenu%,4,zoommenu%)
29480PROCAddSubMenu(workmenu%,5,loopmenu%)
29490PROCAddSubMenu(workmenu%,6,goodiesmenu%)
29500PROCAddSubMenu(workmenu%,7,songmenu%)
29510PROCAddSubMenu(miscmenu%,0,winfoh%)
29520PROCAddSubMenu(miscmenu%,1,typemenu%)
29530PROCAddSubMenu(miscmenu%,2,mbuflen%)
29540PROCAddSubMenu(savemenu1%,0,savemenu2%)
29550PROCAddSubMenu(savemenu1%,1,savemenu2%)
29560PROCAddSubMenu(savemenu1%,2,savemenu2%)
29570PROCAddSubMenu(savemenu2%,0,wsaveh%)
29580PROCAddSubMenu(savemenu2%,1,wsaveh%)
29590PROCAddSubMenu(savemenu2%,2,wsaveh%)
29600PROCAddSubMenu(savemenu2%,3,wsaveh%)
29610PROCAddSubMenu(savemenu2%,4,wsaveh%)
29620PROCAddSubMenu(savemenu2%,5,wsaveh%)
29630PROCAddSubMenu(savemenu2%,6,wsaveh%)
29640PROCAddSubMenu(goodiesmenu%,4,mfiltlo%)
29650PROCAddSubMenu(goodiesmenu%,5,mfilthi%)
29660PROCAddSubMenu(goodiesmenu%,6,mscamp%)
29670PROCAddSubMenu(goodiesmenu%,7,wechoh%)
29680PROCAddSubMenu(goodiesmenu%,8,wfadeh%)
29690PROCAddSubMenu(goodiesmenu%,9,mnewlen%)
29700PROCAddSubMenu(goodiesmenu%,11,mfftamp%)
29710
29720sectmenu%=FNMenuHead("          ",15)
29730PROCAddItem("Insert Loop",0,0,"",0)
29740PROCAddItem("Append Loop",0,0,"",0)
29750PROCAddItem("Overwrite Loop",0,0,"",0)
29760PROCAddItem("Delete Loop",0,0,"",0)
29770PROCAddItem("Play to End",0,0,"",0)
29780PROCAddItem("Play Song",128,0,"",0)
29790ENDPROC
29800
29810DEFPROCAssem
29820DIM code% 5000
29830FOR pass%=0TO2STEP2
29840P%=code%
29850[       opt     pass%
29860.redrwk
29870stmfd   r13!,{r0-r12,r14}
29880ldmfd   r13,{r6-r12}
29890sub     r5,r8,r7
29900add     r0,r6,r5,asr #9
29910cmp     r0,r12
29920movmi   r0,#&80
29930bmi     skipfr
29940ldrb    r0,[r6,r5,asr #9]
29950cmp     r11,#0
29960eoreq   r0,r0,#&80
29970cmp     r11,#2
29980bne     P%+16
29990movs    r0,r0,lsr #1
30000rsbcs   r0,r0,#0
30010add     r0,r0,#128
30020.skipfr
30030add     r2,r0,r10
30040sub     r1,r9,#2
30050mov     r0,#4
30060swi     "OS_Plot"
30070mov     r12,#512
30080add     r12,r12,#1
30090add     r5,r5,r7
30100.drawloop
30110ldrb    r0,[r6,r5,asr #9]
30120cmp     r11,#0
30130eoreq   r0,r0,#&80
30140cmp     r11,#2
30150bne     P%+16
30160movs    r0,r0,lsr #1
30170rsbcs   r0,r0,#0
30180add     r0,r0,#128
30190add     r2,r0,r10
30200mov     r1,r9
30210mov     r0,#5
30220swi     "OS_Plot"
30230
30240add     r9,r9,#2
30250add     r5,r5,r7
30260subs    r12,r12,#1
30270bne     drawloop
30280
30290ldmfd   r13!,{r0-r12,pc}
30300
30310.fillmem
30320stmfd   r13!,{r0-r12,r14}
30330cmp     r0,r1
30340movhi   r3,r0
30350movhi   r0,r1
30360movhi   r1,r3
30370.fillup
30380cmp     r0,r1
30390ldmeqfd r13!,{r0-r12,pc}
30400strb    r2,[r0],#1
30410b       fillup
30420
30430.copymem
30440stmfd   r13!,{r0-r12,r14}
30450cmp     r0,r1
30460bhi     copypl
30470add     r0,r0,r2
30480add     r1,r1,r2
30490cmp     r2,#0
30500.cpymlp
30510ldmeqfd r13!,{r0-r12,pc}
30520ldrb    r3,[r0,#-1]!
30530strb    r3,[r1,#-1]!
30540subs    r2,r2,#1
30550b       cpymlp
30560.copypl
30570cmp     r2,#0
30580.cpyplp
30590ldmeqfd r13!,{r0-r12,pc}
30600ldrb    r3,[r0],#1
30610strb    r3,[r1],#1
30620subs    r2,r2,#1
30630b       cpyplp
30640
30650.signed
30660stmfd   r13!,{r0-r12,r14}
30670.signlp
30680cmp     r0,r1
30690ldmhsfd r13!,{r0-r12,pc}
30700ldrb    r2,[r0]
30710eor     r2,r2,#&80
30720strb    r2,[r0],#1
30730b       signlp
30740
30750
30760.linlog
30770stmfd   r13!,{r0-r12,r14}
30780ldr     r4,logtab
30790.linllp
30800cmp     r0,r1
30810ldmhsfd r13!,{r0-r12,pc}
30820ldrb    r3,[r0]
30830cmp     r2,#1
30840eoreq   r3,r3,#&80
30850ldrb    r3,[r4,r3]
30860strb    r3,[r0],#1
30870b       linllp
30880
30890
30900.loglin
30910stmfd   r13!,{r0-r12,r14}
30920ldr     r4,lintab
30930.logllp
30940cmp     r0,r1
30950ldmhsfd r13!,{r0-r12,pc}
30960ldrb    r3,[r0]
30970ldr     r3,[r4,r3]
30980strb    r3,[r0],#1
30990b       logllp
31000
31010.logtab
31020equd    0
31030.lintab
31040equd    0
31050
31060.reverse
31070stmfd   r13!,{r0-r12,r14}
31080.revlup
31090cmp     r0,r1
31100ldmhsfd r13!,{r0-r12,pc}
31110ldrb    r2,[r0]
31120ldrb    r3,[r1,#-1]
31130strb    r3,[r0],#1
31140strb    r2,[r1,#-1]!
31150b       revlup
31160
31170.filtlo
31180stmfd   r13!,{r0-r12,r14}
31190.fltllp
31200cmp     r0,r1
31210ldmhsfd r13!,{r0-r12,pc}
31220ldrb    r5,[r0]
31230cmp     r3,#1
31240eoreq   r5,r5,#&80
31250mov     r5,r5,lsl #24
31260mov     r5,r5,asr #24
31270sub     r5,r4,r5,lsl #8
31280mul     r5,r2,r5
31290sub     r4,r4,r5,asr #12
31300mov     r5,r4,asr #8
31310cmp     r5,#127
31320movpl   r5,#127
31330cmn     r5,#127
31340movmi   r5,#128
31350cmp     r3,#1
31360eoreq   r5,r5,#&80
31370strb    r5,[r0],#1
31380b       fltllp
31390
31400.filthi
31410stmfd   r13!,{r0-r12,r14}
31420.flthlp
31430cmp     r0,r1
31440ldmhsfd r13!,{r0-r12,pc}
31450ldrb    r5,[r0]
31460cmp     r3,#1
31470eoreq   r5,r5,#&80
31480mov     r5,r5,lsl #24
31490mov     r5,r5,asr #24
31500mov     r6,r5,lsl #8
31510sub     r5,r4,r5,lsl #8
31520mul     r5,r2,r5
31530sub     r4,r4,r5,asr #12
31540sub     r5,r6,r4
31550mov     r5,r5,asr #8
31560cmp     r5,#127
31570movpl   r5,#127
31580cmn     r5,#127
31590movmi   r5,#128
31600cmp     r3,#1
31610eoreq   r5,r5,#&80
31620strb    r5,[r0],#1
31630b       flthlp
31640
31650.scamp
31660stmfd   r13!,{r0-r12,r14}
31670.scmplp
31680cmp     r0,r1
31690ldmhsfd r13!,{r0-r12,pc}
31700ldrb    r5,[r0]
31710cmp     r3,#1
31720eoreq   r5,r5,#&80
31730mov     r5,r5,lsl #24
31740mov     r5,r5,asr #24
31750mul     r5,r2,r5
31760mov     r5,r5,asr #12
31770cmp     r5,#127
31780movpl   r5,#127
31790cmn     r5,#127
31800movmi   r5,#128
31810cmp     r3,#1
31820eoreq   r5,r5,#&80
31830strb    r5,[r0],#1
31840b       scmplp
31850
31860.echo
31870stmfd   r13!,{r0-r12,r14}
31880cmp     r4,#0
31890beq     revrb
31900.echolp
31910cmp     r0,r1
31920ldmhsfd r13!,{r0-r12,pc}
31930ldrb    r6,[r0]
31940ldrb    r7,[r0,r3]
31950cmp     r5,#1
31960eoreq   r6,r6,#&80
31970eoreq   r7,r7,#&80
31980mov     r6,r6,lsl #24
31990mov     r6,r6,asr #24
32000mov     r7,r7,lsl #24
32010mov     r7,r7,asr #24
32020mul     r6,r2,r6
32030add     r7,r7,r6,asr #8
32040mov     r6,r6,asr #8
32050cmp     r6,#127
32060movpl   r6,#127
32070cmn     r6,#127
32080movmi   r6,#128
32090cmp     r7,#127
32100movpl   r7,#127
32110cmn     r7,#127
32120movmi   r7,#128
32130cmp     r5,#1
32140eoreq   r6,r6,#&80
32150eoreq   r7,r7,#&80
32160strb    r7,[r0,r3]
32170strb    r6,[r0],#1
32180b       echolp
32190.revrb
32200mov     r6,r1
32210add     r1,r0,r3
32220sub     r0,r6,#1
32230.revblp
32240cmp     r0,r1
32250ldmlofd r13!,{r0-r12,pc}
32260ldrb    r6,[r0]
32270ldrb    r7,[r0,-r3]
32280cmp     r5,#1
32290eoreq   r6,r6,#&80
32300eoreq   r7,r7,#&80
32310mov     r6,r6,lsl #24
32320mov     r6,r6,asr #24
32330mov     r7,r7,lsl #24
32340mov     r7,r7,asr #24
32350mul     r7,r2,r7
32360add     r6,r6,r7,asr #8
32370cmp     r6,#127
32380movpl   r6,#127
32390cmn     r6,#127
32400movmi   r6,#128
32410cmp     r5,#1
32420eoreq   r6,r6,#&80
32430strb    r6,[r0],#-1
32440b       revblp
32450
32460.nwlengths
32470stmfd   r13!,{r0-r12,r14}
32480mov     r3,#0
32490mov     r4,r0
32500.nwlslp
32510cmp     r0,r1
32520ldmhsfd r13!,{r0-r12,pc}
32530ldrb    r5,[r0]
32540strb    r5,[r4]
32550add     r4,r4,#1
32560add     r3,r3,r2
32570mov     r5,r3,lsr #24
32580bic     r3,r3,#&ff000000
32590add     r0,r0,r5
32600b       nwlslp
32610
32620.nwlengthb
32630stmfd   r13!,{r0-r12,r14}
32640mov     r4,#0
32650.nwlblp
32660cmp     r3,r0
32670ldmlofd r13!,{r0-r12,pc}
32680ldrb    r5,[r1]
32690strb    r5,[r3]
32700sub     r3,r3,#1
32710add     r4,r4,r2
32720mov     r5,r4,lsr #24
32730bic     r4,r4,#&ff000000
32740sub     r1,r1,r5
32750b       nwlblp
32760
32770.fade
32780stmfd   r13!,{r0-r12,r14}
32790.fadelp
32800cmp     r0,r1
32810ldmhsfd r13!,{r0-r12,pc}
32820ldrb    r6,[r0]
32830cmp     r5,#1
32840eoreq   r6,r6,#&80
32850mov     r6,r6,lsl #24
32860mov     r6,r6,asr #24
32870mov     r7,r2,asr #20
32880mul     r6,r7,r6
32890mov     r6,r6,asr #8
32900cmp     r6,#127
32910movpl   r6,#127
32920cmn     r6,#127
32930movmi   r6,#128
32940cmp     r5,#1
32950eoreq   r6,r6,#&80
32960strb    r6,[r0],#1
32970add     r2,r2,r4
32980b       fadelp
32990
33000.addclip
33010stmfd   r13!,{r0-r12,r14}
33020.addcll
33030cmp     r2,#0
33040ldmlefd r13!,{r0-r12,pc}
33050ldrb    r4,[r0]
33060ldrb    r5,[r1],#1
33070cmp     r3,#1
33080eoreq   r4,r4,#&80
33090eoreq   r5,r5,#&80
33100mov     r4,r4,lsl #24
33110mov     r4,r4,asr #24
33120mov     r5,r5,lsl #24
33130mov     r5,r5,asr #24
33140add     r4,r4,r5
33150mov     r4,r4,asr #1
33160eoreq   r4,r4,#&80
33170strb    r4,[r0],#1
33180sub     r2,r2,#1
33190b       addcll
33200.endcode
33210]
33220NEXTpass%
33230ENDPROC

� >:0.$.!sfxed.!RunImage
� >Written by G. Vermeulen
� � �IntError:� �Tr@
(	�Init
2�
<-ș"Wimp_Poll",0,pollb% � reason%,polledb%
FȎ reason% �
P� 0:�Null_Reason
Z� 1:�Redraw_Window
d� 2:�Open_Window
n� 3:�Close_Window
x� 6:�Mouse_Click
�� 7:�User_Drag_Box
�� 8:�Key_Pressed
�� 9:�Menu_Select
�� 17,18,19:�User_Message
��
�� �
��
�
���IntError
�� �
�� � � � �`Tb
�7A%=�interr(�$+" at line "+Þ+". Continue program?")
�� A%=2 � �Quit
�

��ScrToWork
"temp%!0=wworkh%
,"ș"Wimp_GetWindowState",,temp%
6#ș"Wimp_GetPointerInfo",,temp2%
@$workx%=temp2%!0-temp%!4+temp%!20
J� workx%<0 � workx%=0
T!� workx%>maxx% � workx%=maxx%
^�
h
rݤWorkToPtr(a%)
|/� a%=-1 � =-1 � =�(0.5+samplelen%*a%/maxx%)
�
�ݤPtrToWork(a%)
�/� a%=-1 � =-1 � =�(0.5+maxx%*a%/samplelen%)
�
���Null_Reason
��PutPtrs
��PlotPP
��CheckScroll
�Ȏ dragtype% �
�� 1:�DragASelL
�� 2:�DragASelR
�� 3:�DragLoopL
�� 4:�DragLoopR
�
�

&
��PutPtrs
0�ș"SFXMP_GetPtrs"�A%:A%!0=startsample%:A%!4=samplelen%:A%!8=ploopl%:A%!12=ploopr%:A%!16=pselectl%:A%!20=pselectr%:A%!24=playtype%:A%!28=stype%:A%!32=releasek%:A%!36=multiplek%:A%!40=okt%
:$ș"Wimp_GetCaretPosition",,temp%
D@� temp%!0=wkeyboardh% � ș"SFXMP_Enable" � ș"SFXMP_Disable"
N�
X
b��PlotPP
l� playp%<>-1 � �PlotPPtr
veș"SFXMP_GetBlock"�A%:� A%!40<>0 � playp%=((A%!32)>>>12)+A%!36-startsample%:�PlotPPtr � playp%=-1
��
�
���CheckScroll
�Rtemp%!0=wworkh%:ș"Wimp_GetWindowState",,temp%:ș"Wimp_GetPointerInfo",,temp2%
�,� (temp2%!12=wworkh%) � (temp2%!16=-1) �
�'� �(temp%!4-temp2%!0)<64 � �ScrollL
�(� �(temp%!12-temp2%!0)<64 � �ScrollR
�.A%=temp2%!0+temp%!20-temp%!4:� A%<0 � A%=0
� pos%=�WorkToPtr(A%):�DrawPos
��
��
�
�
��DrawPos
� pos%<>oldpos% �
9temp%!0=wposh%:temp%!4=0:ș"Wimp_GetIconState",,temp%
?� pdisphd% � $(temp%!28)="&"+�~(pos%) � $(temp%!28)=�(pos%)
 Btemp%!8=0:temp%!12=0:ș"Wimp_SetIconState",,temp%:oldpos%=pos%
*�
4�
>
H
��ScrollL
R diff%=64-�(temp%!4-temp2%!0)
\os%=temp%!20
fos%=os%-diff%*4
p� os%<0 � os%=0
z%� os%>maxx%-1024 � os%=maxx%-1024
�temp%!20=os% � &fffffffe
�ș"Wimp_OpenWindow",,temp%
��
�
�
��ScrollR
�!diff%=64-�(temp%!12-temp2%!0)
�os%=temp%!20
�os%=os%+diff%*4
�� os%<0 � os%=0
�%� os%>maxx%-1024 � os%=maxx%-1024
�temp%!20=os% � &fffffffe
�ș"Wimp_OpenWindow",,temp%
��

��DragASelL
�ScrToWork:selectl%=workx%
$:� selectl%>selectr% � Ȕ selectl%,selectr%:dragtype%=2
.�pselectl%=�WorkToPtr(selectl%):pselectr%=�WorkToPtr(selectr%):selectl%=�PtrToWork(pselectl%):selectr%=�PtrToWork(pselectr%):�UpdateSelect
8�
B
L��DragASelR
V�ScrToWork:selectr%=workx%
`:� selectl%>selectr% � Ȕ selectl%,selectr%:dragtype%=1
j�pselectl%=�WorkToPtr(selectl%):pselectr%=�WorkToPtr(selectr%):selectl%=�PtrToWork(pselectl%):selectr%=�PtrToWork(pselectr%):�UpdateSelect
t�
~
���DragLoopL
�gș"OS_Byte",202,0,255�,sh%:dlp%=ploopr%-ploopl%:�ScrToWork:loopl%=workx%:ploopl%=�WorkToPtr(loopl%)
�
� sh%�8 �
�ploopr%=ploopl%+dlp%
�E� ploopr%>samplelen% � ploopr%=samplelen%:ploopl%=samplelen%-dlp%
��
�9loopl%=�PtrToWork(ploopl%):loopr%=�PtrToWork(ploopr%)
�5� ploopl%>ploopr% � ploopr%=ploopl%:loopr%=loopl%
�6� loopl%<>oloopl% � loopr%<>oloopr% � �UpdateLoopP
��
�
���DragLoopR
gș"OS_Byte",202,0,255�,sh%:dlp%=ploopr%-ploopl%:�ScrToWork:loopr%=workx%:ploopr%=�WorkToPtr(loopr%)


� sh%�8 �
ploopl%=ploopr%-dlp%
(� ploopl%<0 � ploopl%=0:ploopr%=dlp%
(�
29loopl%=�PtrToWork(ploopl%):loopr%=�PtrToWork(ploopr%)
<5� ploopr%<ploopl% � ploopl%=ploopr%:loopl%=loopr%
F6� loopl%<>oloopl% � loopr%<>oloopr% � �UpdateLoopP
P�
Z
d��Redraw_Window
n)ș"Wimp_RedrawWindow",,polledb%�more%
xȎ polledb%!0 �
�� wworkh%:�RedrawWork
�� wsongh%:�RedrawSong
�:�JustRedraw
��
��
�
���RedrawWork
�
lh%=32
�mi%=polledb%!4
�ma%=polledb%!12
�y%=polledb%!8
�'sl%=polledb%!4-polledb%!20+selectl%
�'sr%=polledb%!4-polledb%!20+selectr%
%ll%=polledb%!4-polledb%!20+loopl%
%lr%=polledb%!4-polledb%!20+loopr%
llp%=�PtrToWork(playp%)
"%wllp%=polledb%!4-polledb%!20+llp%
,
dr%=-1
6ldr%=-1
@rdr%=-1
Jdrp%=-1
T-� sl%<polledb%!4 � sr%<polledb%!4 � dr%=0
^/� sl%>polledb%!12 � sr%>polledb%!12 � dr%=0
h+� sl%<polledb%!4 � dr% � sl%=polledb%!4
r-� sr%>polledb%!12 � dr% � sr%=polledb%!12
|5� ll%<polledb%!4-32 � ll%>polledb%!12+32 � ldr%=0
�5� lr%<polledb%!4-32 � lr%>polledb%!12+32 � rdr%=0
�7� wllp%<polledb%!4-4 � wllp%>polledb%!12+4 � drp%=0
�
�2A%=startsample%+samplelen%*(polledb%!20)/maxx%
�B%=displen%
�;C%=512*(startsample%+samplelen%*(polledb%!20)/maxx%-A%)
�D%=polledb%!4
�E%=polledb%!8
�
F%=stype%
�G%=startsample%
�
�ȕ more%
�ș"Wimp_SetColour",1
� mi%,y%+lh%*1,ma%,y%+lh%*1
� mi%,y%+lh%*2,ma%,y%+lh%*2
� mi%,y%+lh%*3,ma%,y%+lh%*3
&� mi%,y%+lh%*5,ma%,y%+lh%*5
0� mi%,y%+lh%*6,ma%,y%+lh%*6
:� mi%,y%+lh%*7,ma%,y%+lh%*7
Dș"Wimp_SetColour",3
N� mi%,y%+lh%*4,ma%,y%+lh%*4
Xș"Wimp_SetColour",7
b� mi%,y%+lh%*8,ma%,y%+lh%*8
l�redrwk
v� ldr% �
��InvCol2
�'� ll%,polledb%!8,ll%,polledb%!8+256
�� ll%,polledb%!8+260
�� ll%+8,polledb%!8+280
�� 85,ll%-8,polledb%!8+280
��
�� rdr% �
��InvCol3
�'� lr%,polledb%!8,lr%,polledb%!8+256
�� lr%,polledb%!8+260
�� lr%+8,polledb%!8+280
�� 85,lr%-8,polledb%!8+280
��
-� (selectl%<>-1) � (selectr%<>-1) � dr% �
�InvCol
$ȓ Ȑ sl%,polledb%!8,sr%-sl%,252
 �
*� (playp%<>-1) � drp% �
4�InvCol
>+� wllp%,polledb%!8,wllp%,polledb%!8+288
H�
R)ș"Wimp_GetRectangle",,polledb%�more%
\�
f�
p
z��RedrawSong
�zx%=polledb%!4-polledb%!20
�"zy%=polledb%!16-polledb%!24-96
�ȕ more%
�ș"Wimp_SetColour",3
�+� zx%+74,polledb%!32,zx%+74,polledb%!40
�+� zx%+76,polledb%!32,zx%+76,polledb%!40
�-� zx%+246,polledb%!32,zx%+246,polledb%!40
�-� zx%+248,polledb%!32,zx%+248,polledb%!40
�-� zx%+370,polledb%!32,zx%+370,polledb%!40
�-� zx%+372,polledb%!32,zx%+372,polledb%!40
�-� zx%+494,polledb%!32,zx%+494,polledb%!40
�-� zx%+496,polledb%!32,zx%+496,polledb%!40
�
	ș"Wimp_SetColour",7
	sl%=(zy%-polledb%!40)/36
	sr%=1+(zy%-polledb%!32)/36
	$� sl%<0 � sl%=0
	.� sr%<0 � sr%=0
	8!� sl%>songlen% � sl%=songlen%
	B!� sr%>songlen% � sr%=songlen%
	Lȕ sl%<sr%
	V� zx%+6,zy%-36*sl%
	`� �(sl%+1);
	j� zx%+82,zy%-36*sl%
	t� $(songstart%+sl%*32);
	~� zx%+254,zy%-36*sl%
	� � �(songstart%!(sl%*32+12));
	�� zx%+378,zy%-36*sl%
	� � �(songstart%!(sl%*32+16));
	�� zx%+502,zy%-36*sl%
	� � �(songstart%!(sl%*32+20));
	�
sl%+=1
	��
	�)ș"Wimp_GetRectangle",,polledb%�more%
	��
	��
	�
	���JustRedraw
ȕ more%

)ș"Wimp_GetRectangle",,polledb%�more%
�
�
(
2��InvCol
<&ș"XOS_ReadModeVariable",-1,3�,,c%
FȎ c% �
P� 1:�3,1
Z� 3:�3,3
d
� 15:�3,7
n� 63:�3,63 Ȝ 0
x:�3,63
��
��
�
�
��InvCol2
�&ș"XOS_ReadModeVariable",-1,3�,,c%
�Ȏ c% �
�� 1:�3,1
�� 3:�3,1
�� 15:�3,10
�� 63:�3,%110011 Ȝ 0
�:�3,63
��
��


��InvCol3
&ș"XOS_ReadModeVariable",-1,3�,,c%
"Ȏ c% �
,� 1:�3,1
6� 3:�3,2
@� 15:�3,11
J� 63:�3,%111100 Ȝ 0
T:�3,63
^�
h�
r
|��Open_Window
�'� polledb%!0=wworkh% � �Open_Work:�
�'� polledb%!0=wsongh% � �Open_Song:�
�[� polledb%!0=wposh% � polledb%!0=wworkh%:ș"Wimp_GetWindowState",,polledb%:�Open_Work:�
�d� polledb%!0=wsongpaneh% � polledb%!0=wsongpaneh%:ș"Wimp_GetWindowState",,polledb%:�Open_Song:�
�!ș"Wimp_OpenWindow",,polledb%
��
�
���Open_Work
�temp%!0=wposh%
�"ș"Wimp_GetWindowState",,temp%
�A%=polledb%!28
�polledb%!28=wposh%
�!ș"Wimp_OpenWindow",,polledb%
%ș"Wimp_GetWindowState",,polledb%
temp%!4=polledb%!4
temp%!8=polledb%!8-100
&temp%!12=temp%!4+1024
0temp%!16=temp%!8+56
:temp%!28=A%
Dș"Wimp_OpenWindow",,temp%
Npolledb%!28=wposh%
X!ș"Wimp_OpenWindow",,polledb%
b�
l
v��Open_Song
�temp%!0=wsongpaneh%
�"ș"Wimp_GetWindowState",,temp%
�A%=polledb%!28
�polledb%!28=wsongpaneh%
�!ș"Wimp_OpenWindow",,polledb%
�%ș"Wimp_GetWindowState",,polledb%
�temp%!4=polledb%!4
�temp%!12=polledb%!12
�temp%!16=polledb%!16
�temp%!8=polledb%!16-84
�temp%!20=polledb%!20
�temp%!28=A%
�ș"Wimp_OpenWindow",,temp%

polledb%!28=wsongpaneh%

!ș"Wimp_OpenWindow",,polledb%

�

 

*��Close_Window

4"ș"Wimp_CloseWindow",,polledb%

>K� polledb%!0=wworkh% � polledb%!0=wposh%:ș"Wimp_CloseWindow",,polledb%

HP� polledb%!0=wsongh% � polledb%!0=wsongpaneh%:ș"Wimp_CloseWindow",,polledb%

R�

\

f��Mouse_Click

pȎ polledb%!12 �

z� wworkh%:�WorkClick

�� wechoh%:�EchoClick

�� wfadeh%:�FadeClick

�� wkeyboardh%:�KeyClick

�� wsaveh%:�SaveassaCl

�� wposh%:�PosClick

�� wsongh%:�SongClick

�� -2:�IconBClick

��

��

�

���SongClick

�temp%!0=wsongh%

�"ș"Wimp_GetWindowState",,temp%
2currsect%=(temp%!16-temp%!24-96-polledb%!4)/36
� currsect%<0 � currsect%=0
-� currsect%>songlen% � currsect%=songlen%
$R� currsect%=songlen% � $(sectmenu%)="Loop" � $sectmenu%="Loop "+�(currsect%+1)
.Ȏ polledb%!8 �
8v� 2:lastmx%=polledb%!0-64:lastmy%=polledb%!4+16:lastmenu%=sectmenu%:ș"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
B� 1024:�EditSect
L�
V�
`
j��EditSect
t� currsect%<songlen% �
~temp%!0=wsongpaneh%
�
temp%!4=5
� ș"Wimp_GetIconState",,temp%
�$(temp%!28)=�(currsect%+1)
�
temp%!4=6
� ș"Wimp_GetIconState",,temp%
�*$(temp%!28)=$(songstart%+currsect%*32)
�
temp%!4=7
� ș"Wimp_GetIconState",,temp%
�/$(temp%!28)=�(songstart%!(currsect%*32+12))
�
temp%!4=8
� ș"Wimp_GetIconState",,temp%
�/$(temp%!28)=�(songstart%!(currsect%*32+16))

temp%!4=9

 ș"Wimp_GetIconState",,temp%
/$(temp%!28)=�(songstart%!(currsect%*32+20))
(ploopl%=songstart%!(currsect%*32+24)
((ploopr%=songstart%!(currsect%*32+28)
2� ploopl%<0 � ploopl%=0
<� ploopr%<0 � ploopr%=0
F-� ploopl%>samplelen% � ploopl%=samplelen%
P-� ploopr%>samplelen% � ploopr%=samplelen%
Zloopl%=�PtrToWork(ploopl%)
dloopr%=�PtrToWork(ploopr%)
n�UpdateLoopP
x�RdSongPane
�$ș"Wimp_GetCaretPosition",,temp%
�D� (temp%!0=wsongpaneh%)�(temp%!4<>-1) � �SetWIC(temp%!0,temp%!4)
�ospitch%=-1
��
��
�
���PosClick
�Ȏ polledb%!16 �
�/� 0:pdisphd%=� pdisphd%:oldpos%=-1:�DrawPos
�� 8:�PosPAll
�� 9:�PosPSel
�� 10:�PosPWin
�� 12:�PosPStop
�
�

"
��PosPAll
,6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
6ș"SFXMP_GetBlock"�A%
@ș"SFXMP_GetPitch"�B%
J
A%+=32
T
A%!0=0
^A%!4=startsample%
hA%!8=B%
rA%!12=samplelen%
|A%!16=stype%<<8
�A%!20=0
�ș"SFXMP_Play",1
��
�
�
��PosPSel
�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
�� pselectl%<>-1 �
�ș"SFXMP_GetBlock"�A%
�ș"SFXMP_GetPitch"�B%
�
A%+=32
�
A%!0=0
�A%!4=startsample%+pselectl%
�A%!8=B%
A%!12=pselectr%-pselectl%
A%!16=stype%<<8
A%!20=0
&ș"SFXMP_Play",1
0�
:�
D
N
��PosPWin
X6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
btemp%!0=wworkh%
l"ș"Wimp_GetWindowState",,temp%
vB%=�WorkToPtr(temp%!20)
� C%=�WorkToPtr(temp%!20+1024)
�ș"SFXMP_GetBlock"�A%
�ș"SFXMP_GetPitch"�E%
�
A%+=32
�
A%!0=0
�A%!4=startsample%+B%
�A%!8=E%
�A%!12=C%-B%
�A%!16=stype%<<8
�A%!20=0
�ș"SFXMP_Play",1
��
�
��PosPStop
6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
�
 
*��SaveassaCl
4� polledb%!16=0 � �DragSave
>� polledb%!16=2 �
Htemp%!0=wsaveh%
R
temp%!4=1
\ ș"Wimp_GetIconState",,temp%
ff$=$(!(temp%+28))
p#� (�f$,".")=0) � (�f$,":")=0) �
z*�ReportErr("Please give a directory.")
��
�polledb%!36=0
�$(wwork%!72)=f$
�samplesaved%=0
�Ȏ savedt% �
�%� 0:�SaveSa1(f$):sampletoload$=f$
�%� 1:�SaveSa2(f$):sampletoload$=f$
�%� 2:�SaveSa3(f$):sampletoload$=f$
�%� 3:�SaveSa4(f$):sampletoload$=f$
�%� 4:�SaveSa5(f$):sampletoload$=f$
�%� 5:�SaveSa6(f$):sampletoload$=f$
�!� 6:�SaveMo(f$):modtoload$=f$
�%� 10:�SaveSong(f$):songtoload$=f$
*� 11:�SaveSongMo(f$):songmodtoload$=f$
�
� f%<>0 � �#f%
$#ș"Wimp_CreateMenu",-1,-1,-1,-1
.�
8�
B�
L
VݤStrip(fs$)
`� f%,a%
jf%=1
ta%=1
~ȕ �fs$,f%)<>""
�/� �fs$,f%,1)="." � �fs$,f%,1)=":" � a%=f%+1
�	f%+=1
��
�
=�fs$,a%)
�
���MBString(s%)
�ȕ ?s%>31 s%+=1:�
�
?s%=13
��
�
���DragSave
�temp%!0=wsaveh%
"ș"Wimp_GetWindowState",,temp%

wx%=(temp%!4)-(temp%!20)
wy%=(temp%!16)-(temp%!24)

temp%!4=0
(!ș "Wimp_GetIconState",,temp%
2dragb%!0=0
<dragb%!4=5
Fdragb%!8=(temp%!8)+wx%
Pdragb%!12=(temp%!12)+wy%
Zdragb%!16=(temp%!16)+wx%
ddragb%!20=(temp%!20)+wy%
ndragb%!24=0
xdragb%!28=0
�dragb%!32=32768
�dragb%!36=32768
�dragb%!40=0
�dragb%!44=0
�dragb%!48=0
�dragb%!52=0
�ș"Wimp_DragBox",,dragb%
�dragtype%=5
��
�
���DataSave
�� messbk%!4<>taskh% �
�5ș"XOS_ReadVarVal","Wimp$Scrap",temp%,-1,0,0�,,A%
� A%=0 �
+�ReportErr("<Wimp$Scrap> not defined.")
�
"&filetoload2$=�Strip($(messbk%+44))
,%$(messbk%+44)="<Wimp$Scrap>"+�(0)
6messbk%!0=256
@messbk%!12=messbk%!8
Jmessbk%!16=2
Tmessbk%!36=-1
^-ș"Wimp_SendMessage",18,messbk%,messbk%!4
h�
r�
|�
�
���DragSaved
�� savedt%<>-1 �
�temp%!0=wsaveh%
�Ȏ savedt% �
�� 0:temp2%!40=&cb5
�� 1:temp2%!40=&cb5
�� 2:temp2%!40=&d3c
�� 3:temp2%!40=&ed0
�� 4:temp2%!40=&df9
�� 5:temp2%!40=&ffd
�� 6:temp2%!40=&ffa
�� 10:temp2%!40=&d3b
� 11:temp2%!40=&ffa
�

temp%!4=1
& ș"Wimp_GetIconState",,temp%
0'$(temp2%+44)=�Strip($(!(temp%+28)))
:"ș"Wimp_GetPointerInfo",,temp%
Dtemp2%!0=256
Ntemp2%!4=0
Xtemp2%!8=0
btemp2%!12=0
ltemp2%!16=1
vtemp2%!20=temp%!12
�temp2%!24=temp%!16
�temp2%!28=temp%!0
�temp2%!32=temp%!4
�temp2%!36=1
�5ș "Wimp_SendMessage",17,temp2%,temp%!12,temp%!16
�ș"Wimp_CreateMenu",,-1
��
��
�
�
��SaveAck
�� savedt%<>-1 �
�temp%!0=wsaveh%
�
temp%!4=1
 ș"Wimp_GetIconState",,temp%
�MBString(polledb%+44)
5� polledb%!36<>-1 � $(!(temp%+28))=$(polledb%+44)
 f$=$(polledb%+44)
*$(wwork%!72)=f$
4samplesaved%=0
>Ȏ savedt% �
H%� 0:�SaveSa1(f$):sampletoload$=f$
R%� 1:�SaveSa2(f$):sampletoload$=f$
\%� 2:�SaveSa3(f$):sampletoload$=f$
f%� 3:�SaveSa4(f$):sampletoload$=f$
p%� 4:�SaveSa5(f$):sampletoload$=f$
z%� 5:�SaveSa6(f$):sampletoload$=f$
�!� 6:�SaveMo(f$):modtoload$=f$
�%� 10:�SaveSong(f$):songtoload$=f$
�*� 11:�SaveSongMo(f$):songmodtoload$=f$
��
�� f%<>0 � �#f%
�messbk%!12=messbk%!8
�messbk%!16=3
�9� ss%<>-1 � ș"Wimp_SendMessage",17,messbk%,messbk%!4
�savedt%=-1
�savedata%=-1
��
��
�
��SaveSong(fi$)
�

$��SaveSongMo(fi$)
.�
8
B��SaveSa1(fi$)
L�
V
`��SaveSa2(fi$)
j�
t
~��SaveSa3(fi$)
��
�
���SaveSa4(fi$)
��
�
���SaveSa5(fi$)
��
�
���SaveSa6(fi$)
��
�
���SaveMo(fi$)
�


��GetStartLen
Ȏ savedata% �
('� 0:ss%=startsample%:sl%=samplelen%
2U� 1:� pselectl%<>-1 � ss%=startsample%+pselectl%:sl%=pselectr%-pselectl% � ss%=-1
<%� 2:ss%=clipbstart%:sl%=clipblen%
F�
P�
Z
d��KeyClick
nȎ polledb%!8 �
xp� 1:ș"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1:ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
�=� 4:ș"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
��
�Ȏ polledb%!16 �
�� 43:playtype%=0
�� 44:playtype%=1
�� 45:playtype%=2
�� 46:playtype%=3
�v� 48:temp%!0=wkeyboardh%:temp%!4=48:ș"Wimp_GetIconState",,temp%:� (temp%!24)�(1<<21) � releasek%=-1 � releasek%=0
�x� 49:temp%!0=wkeyboardh%:temp%!4=49:ș"Wimp_GetIconState",,temp%:� (temp%!24)�(1<<21) � multiplek%=-1 � multiplek%=0
��
��
�
���WorkClick
9ș"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
Ȏ polledb%!8 �
v� 2:lastmx%=polledb%!0-64:lastmy%=polledb%!4+16:lastmenu%=workmenu%:ș"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
"� 1024:�SelClick
,� 256:�AdjClick
6� 64:�SelDrag
@� 16:�AdjDrag
J�
T�
^
h��SelClick
rtemp%!0=wworkh%
|"ș"Wimp_GetWindowState",,temp%
�� polledb%!4-temp%!8<256 �
��SelClick2
��
�ș"OS_Byte",202,0,255�,sh%
�dlp%=ploopr%-ploopl%
��ScrToWork
�loopl%=workx%
�ploopl%=�WorkToPtr(loopl%)
�
� sh%�8 �
�ploopr%=ploopl%+dlp%
�E� ploopr%>samplelen% � ploopr%=samplelen%:ploopl%=samplelen%-dlp%
��
�loopl%=�PtrToWork(ploopl%)
loopr%=�PtrToWork(ploopr%)
5� ploopl%>ploopr% � ploopr%=ploopl%:loopr%=loopl%
�UpdateLoopP
&�
0�
:
D��AdjClick
Ntemp%!0=wworkh%
X"ș"Wimp_GetWindowState",,temp%
b� polledb%!4-temp%!8<256 �
l�AdjClick2
v�
�ș"OS_Byte",202,0,255�,sh%
�dlp%=ploopr%-ploopl%
��ScrToWork
�loopr%=workx%
�ploopr%=�WorkToPtr(loopr%)
�
� sh%�8 �
�ploopl%=ploopr%-dlp%
�(� ploopl%<0 � ploopl%=0:ploopr%=dlp%
��
�loopl%=�PtrToWork(ploopl%)
�loopr%=�PtrToWork(ploopr%)
�5� ploopr%<ploopl% � ploopl%=ploopr%:loopl%=loopr%
��UpdateLoopP
�
�

 
��SelDrag
*temp%!0=wworkh%
4"ș"Wimp_GetWindowState",,temp%
>� polledb%!4-temp%!8<256 �
H
�SelDrag2
R�
\temp%!0=wworkh%
f"ș"Wimp_GetWindowState",,temp%
ptemp2%!0=wworkh%
ztemp2%!4=7
�temp2%!8=0
�temp2%!12=0
�temp2%!16=0
�temp2%!20=0
�temp2%!24=temp%!4
�temp2%!28=temp%!8+260
�temp2%!32=temp%!4+1022
�temp2%!36=temp%!8+284
�temp2%!40=-1
�temp2%!44=-1
�temp2%!48=-1
�temp2%!52=-1
�ș"Wimp_DragBox",,temp2%
dragtype%=3
�
�
$
.
��AdjDrag
8temp%!0=wworkh%
B"ș"Wimp_GetWindowState",,temp%
L� polledb%!4-temp%!8<256 �
V
�AdjDrag2
`�
jtemp%!0=wworkh%
t"ș"Wimp_GetWindowState",,temp%
~temp2%!0=wworkh%
�temp2%!4=7
�temp2%!8=0
�temp2%!12=0
�temp2%!16=0
�temp2%!20=0
�temp2%!24=temp%!4
�temp2%!28=temp%!8+260
�temp2%!32=temp%!4+1022
�temp2%!36=temp%!8+284
�temp2%!40=-1
�temp2%!44=-1
�temp2%!48=-1
temp2%!52=-1

ș"Wimp_DragBox",,temp2%
dragtype%=4
�
(�
2
<��SelClick2
F�ScrToWork
Pselectl%=workx%
Zselectr%=workx%
d"pselectl%=�WorkToPtr(selectl%)
n"pselectr%=�WorkToPtr(selectr%)
x"selectl%=�PtrToWork(pselectl%)
�"selectr%=�PtrToWork(pselectr%)
��UpdateSelect
��
�
���AdjClick2
��ScrToWork
�-� �(selectl%-workx%)>�(selectr%-workx%) �
�selectr%=workx%
��
�selectl%=workx%
��
�A� selectl%=-1 � selectr%=-1 � selectl%=workx%:selectr%=workx%
�.� selectl%>selectr% � Ȕ selectl%,selectr%
"pselectl%=�WorkToPtr(selectl%)
"pselectr%=�WorkToPtr(selectr%)
"selectl%=�PtrToWork(pselectl%)
""selectr%=�PtrToWork(pselectr%)
,�UpdateSelect
6�
@
J��SelDrag2
Ttemp%!0=wworkh%
^"ș"Wimp_GetWindowState",,temp%
htemp2%!0=wworkh%
rtemp2%!4=7
|temp2%!8=0
�temp2%!12=0
�temp2%!16=0
�temp2%!20=0
�temp2%!24=temp%!4
�temp2%!28=temp%!8
�temp2%!32=temp%!4+1022
�temp2%!36=temp%!8+252
�temp2%!40=-1
�temp2%!44=-1
�temp2%!48=-1
�temp2%!52=-1
�ș"Wimp_DragBox",,temp2%
�dragtype%=1
 �ScrToWork
 !� selectl%=-1 � selectr%=-1 �
 #selectl%=workx%:selectr%=workx%
 &"pselectl%=�WorkToPtr(selectl%)
 0"pselectr%=�WorkToPtr(selectr%)
 :"selectl%=�PtrToWork(pselectl%)
 D"selectr%=�PtrToWork(pselectr%)
 N�
 X�
 b
 l��AdjDrag2
 vtemp%!0=wworkh%
 �"ș"Wimp_GetWindowState",,temp%
 �temp2%!0=wworkh%
 �temp2%!4=7
 �temp2%!8=0
 �temp2%!12=0
 �temp2%!16=0
 �temp2%!20=0
 �temp2%!24=temp%!4
 �temp2%!28=temp%!8
 �temp2%!32=temp%!4+1022
 �temp2%!36=temp%!8+252
 �temp2%!40=-1
 �temp2%!44=-1
!temp2%!48=-1
!temp2%!52=-1
!ș"Wimp_DragBox",,temp2%
! �ScrToWork
!*!� selectl%=-1 � selectr%=-1 �
!4#selectl%=workx%:selectr%=workx%
!>"pselectl%=�WorkToPtr(selectl%)
!H"pselectr%=�WorkToPtr(selectr%)
!R"selectl%=�PtrToWork(pselectl%)
!\"selectr%=�PtrToWork(pselectr%)
!f�
!p-� �(selectl%-workx%)>�(selectr%-workx%) �
!zdragtype%=2
!��
!�dragtype%=1
!��
!��
!�
!���UpdateSelect
!�U� oselectl%=-1 � oselectr%=-1 � oselectl%=selectl%:oselectr%=selectr%:�PtSelect:�
!�q� (selectl%<>oselectl%) � (selectr%<>oselectr%) � �PtSelect:oselectl%=selectl%:oselectr%=selectr%:�PtSelect:�
!�)� selectl%<>oselectl% � �SetSelectL:�
!�)� selectr%<>oselectr% � �SetSelectR:�
!��
!�
!���PtSelect
"polledb%!0=wworkh%
"polledb%!8=-288
"polledb%!16=-32
"$)� (oselectl%<>-1) � (oselectr%<>-1) �
".0polledb%!4=oselectl%:polledb%!12=oselectr%+2
"8)ș"Wimp_UpdateWindow",,polledb%�more%
"Bȕ more%
"L�InvCol
"VQȓ Ȑ polledb%!28,polledb%!32,polledb%!36-polledb%!28,polledb%!40-polledb%!32
"`)ș"Wimp_GetRectangle",,polledb%�more%
"j�
"t�
"~�
"�
"���SetSelectL
"�polledb%!0=wworkh%
"�polledb%!8=-288
"�polledb%!16=-32
"�(� (selectl%<>-1) � (oselectl%<>-1) �
"�p� selectl%<oselectl% � polledb%!4=selectl%:polledb%!12=oselectl% � polledb%!4=oselectl%:polledb%!12=selectl%
"�)ș"Wimp_UpdateWindow",,polledb%�more%
"�ȕ more%
"��InvCol
"�Qȓ Ȑ polledb%!28,polledb%!32,polledb%!36-polledb%!28,polledb%!40-polledb%!32
"�)ș"Wimp_GetRectangle",,polledb%�more%
#�
#
oselectl%=selectl%
#�
#�
#(
#2��SetSelectR
#<polledb%!0=wworkh%
#Fpolledb%!8=-288
#Ppolledb%!16=-32
#Z(� (selectr%<>-1) � (oselectr%<>-1) �
#dx� selectr%<oselectr% � polledb%!4=selectr%+2:polledb%!12=oselectr%+2 � polledb%!4=oselectr%+2:polledb%!12=selectr%+2
#n)ș"Wimp_UpdateWindow",,polledb%�more%
#xȕ more%
#��InvCol
#�Qȓ Ȑ polledb%!28,polledb%!32,polledb%!36-polledb%!28,polledb%!40-polledb%!32
#�)ș"Wimp_GetRectangle",,polledb%�more%
#��
#�oselectr%=selectr%
#��
#��
#�
#���PlotPPtr
#�0� playp%<0 � playp%>samplelen% � playp%=-1:�
#�llp%=�PtrToWork(playp%)
#�temp%!0=wworkh%
#�"ș"Wimp_GetWindowState",,temp%
$ll%=temp%!4-temp%!20+llp%
$&� ll%>temp%!4-4 � ll%<temp%!12+4 �
$polledb%!0=wworkh%
$"polledb%!4=llp%
$,polledb%!8=-288
$6polledb%!12=llp%+2
$@polledb%!16=0
$J)ș"Wimp_UpdateWindow",,polledb%�more%
$Tȕ more%
$^�InvCol
$h'� ll%,polledb%!8,ll%,polledb%!8+288
$r)ș"Wimp_GetRectangle",,polledb%�more%
$|�
$��
$��
$�
$���UpdateLoopP
$�temp%!0=wworkh%
$�"ș"Wimp_GetWindowState",,temp%
$�polledb%!0=wworkh%
$�polledb%!4=temp%!20
$�polledb%!8=-288
$�polledb%!12=temp%!20+1024
$�polledb%!16=0
$�ll%=temp%!4-temp%!20+loopl%
$�!oll%=temp%!4-temp%!20+oloopl%
%lr%=temp%!4-temp%!20+loopr%
%!olr%=temp%!4-temp%!20+oloopr%
%ldr%=-1
%&oldr%=-1
%0rdr%=-1
%:ordr%=-1
%D/� ll%<temp%!4-32 � ll%>temp%!12+32 � ldr%=0
%N2� oll%<temp%!4-32 � oll%>temp%!12+32 � oldr%=0
%X/� lr%<temp%!4-32 � lr%>temp%!12+32 � rdr%=0
%b2� olr%<temp%!4-32 � olr%>temp%!12+32 � ordr%=0
%l)ș"Wimp_UpdateWindow",,polledb%�more%
%vȕ more%
%�� ldr% �
%��InvCol2
%�'� ll%,polledb%!8,ll%,polledb%!8+256
%�� ll%,polledb%!8+260
%�� ll%+8,polledb%!8+280
%�� 85,ll%-8,polledb%!8+280
%��
%�
� oldr% �
%��InvCol2
%�)� oll%,polledb%!8,oll%,polledb%!8+256
%�� oll%,polledb%!8+260
%�� oll%+8,polledb%!8+280
%�� 85,oll%-8,polledb%!8+280
&�
&� rdr% �
&�InvCol3
& '� lr%,polledb%!8,lr%,polledb%!8+256
&*� lr%,polledb%!8+260
&4� lr%+8,polledb%!8+280
&>� 85,lr%-8,polledb%!8+280
&H�
&R
� ordr% �
&\�InvCol3
&f)� olr%,polledb%!8,olr%,polledb%!8+256
&p� olr%,polledb%!8+260
&z� olr%+8,polledb%!8+280
&�� 85,olr%-8,polledb%!8+280
&��
&�)ș"Wimp_GetRectangle",,polledb%�more%
&��
&�!oloopl%=loopl%:oloopr%=loopr%
&��UpdateSLoop
&��
&�
&���UpdateSLoop
&�� playtype%=1 �
&�ș"SFXMP_GetBlock"�A%
&�^A%=A%+32:A%!4=startsample%+ploopl%:A%!12=ploopr%-ploopl%:A%!20=0:A%!16=(A%!16) � &ffffefff
&�^A%=A%+32:A%!4=startsample%+ploopl%:A%!12=ploopr%-ploopl%:A%!20=0:A%!16=(A%!16) � &ffffefff
'^A%=A%+32:A%!4=startsample%+ploopl%:A%!12=ploopr%-ploopl%:A%!20=0:A%!16=(A%!16) � &ffffefff
'�
'� playtype%=3 �
'$ș"SFXMP_GetBlock"�A%
'.TA%=A%+32:A%!4=startsample%:A%!12=ploopr%:A%!20=ploopl%:A%!16=(A%!16) � &ffffefff
'8TA%=A%+32:A%!4=startsample%:A%!12=ploopr%:A%!20=ploopl%:A%!16=(A%!16) � &ffffefff
'BTA%=A%+32:A%!4=startsample%:A%!12=ploopr%:A%!20=ploopl%:A%!16=(A%!16) � &ffffefff
'L�
'V�
'`
'j��IconBClick
'tȎ polledb%!8 �
'~� 1,4:�OpenWork
'�l� 2:lastmx%=polledb%!0-64:lastmy%=184:lastmenu%=iconmenu%:ș"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
'��
'��
'�
'���OpenWork
'�polledb%!0=wworkh%
'�%ș"Wimp_GetWindowState",,polledb%
'�polledb%!28=-1
'��Open_Window
'�polledb%!0=wkeyboardh%
'�%ș"Wimp_GetWindowState",,polledb%
'�polledb%!28=-1
(!ș"Wimp_OpenWindow",,polledb%
(
�
(
(��User_Drag_Box
((Ȏ dragtype% �
(2� 1,2,3,4:dragtype%=-1
(<� 5:�DragSaved
(F�
(P�
(Z
(d��RdWork
(npolledb%!0=wworkh%
(x)ș"Wimp_RedrawWindow",,polledb%�more%
(��RedrawWork
(��
(�
(���RdSong
(�polledb%!0=wsongh%
(�)ș"Wimp_RedrawWindow",,polledb%�more%
(��RedrawSong
(��
(�
(���RdSongPane
(�polledb%!0=wsongpaneh%
(�)ș"Wimp_RedrawWindow",,polledb%�more%
(��JustRedraw
)�
)
)��Key_Pressed
)"C� polledb%!24=&1cc � ș"SFXMP_Disable":ș"Wimp_ProcessKey",&1cc
),C� polledb%!24=&1fc � ș"SFXMP_Disable":ș"Wimp_ProcessKey",&1fc
)6Ȏ polledb%!0 �
)@� wkeyboardh%:�KeyKey
)J:� wsaveh%:� polledb%!24=13 � polledb%!16=2:�SaveassaCl
)T� wposh%:�PosKey
)^� wfadeh%:�FadeKey
)h� wechoh%:�EchoKey
)r� wsongpaneh%:�SongKey
)|�
)��
)�
)�
��FadeKey
)�� polledb%!24=13 �
)�'� polledb%!4=2 � �SetWIC(wfadeh%,3)
)�'� polledb%!4=3 � �SetWIC(wfadeh%,2)
)��
)��
)�
)�
��EchoKey
)�� polledb%!24=13 �
)�'� polledb%!4=2 � �SetWIC(wechoh%,3)
)�'� polledb%!4=3 � �SetWIC(wechoh%,2)
*�
*�
*
*&
��SongKey
*0� polledb%!24=13 �
*:+� polledb%!4=6 � �SetWIC(wsongpaneh%,7)
*D+� polledb%!4=7 � �SetWIC(wsongpaneh%,8)
*N+� polledb%!4=8 � �SetWIC(wsongpaneh%,9)
*X+� polledb%!4=9 � �SetWIC(wsongpaneh%,6)
*b�
*l�
*v
*���SetWIC(w%,i%)
*�
� i%=-1 �
*�*ș"XWimp_SetCaretPosition",-1,-1,-1,-1
*��
*�temp%!0=w%
*�temp%!4=i%
*� ș"Wimp_GetIconState",,temp%
*�A%=�($(temp%!28))
*�0ș"XWimp_SetCaretPosition",w%,i%,-1,-1,-1,A%
*��
*��
*�
*���PosKey
+B� polledb%!24=13 � �SetPitch � ș"Wimp_ProcessKey",polledb%!24
+�
+
+ ��SetPitch
+*temp%!0=wposh%
+4� polledb%!4=3 �
+>
temp%!4=3
+H ș"Wimp_GetIconState",,temp%
+Rpitch%=�($(temp%!28))
+\�
+f� polledb%!4=5 �
+p
temp%!4=5
+z ș"Wimp_GetIconState",,temp%
+�pitch%=�($(temp%!28))
+�� pitch%=0 � pitch%=1
+�pitch%=1E6/pitch%
+��
+��SetPitch2
+��
+�
+���SetPitch2
+�� pitch%<24 � pitch%=24
+�� pitch%>255 � pitch%=255
+�pitch%=pitch%�&fc
+�temp2%!0=wposh%
+�temp2%!4=3
,!ș"Wimp_GetIconState",,temp2%
,$(temp2%!28)=�pitch%
,8temp2%!8=0:temp2%!12=0:ș"Wimp_SetIconState",,temp2%
,$temp2%!4=5
,.!ș"Wimp_GetIconState",,temp2%
,8!$(temp2%!28)=�(�(1E6/pitch%))
,B8temp2%!8=0:temp2%!12=0:ș"Wimp_SetIconState",,temp2%
,L9ș"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
,V'ș"XSound_Configure",0,0,pitch%,0,0
,`�
,j
,t��KeyKey
,~key%=polledb%!24
,�8� key%=13 � ș"XWimp_SetCaretPosition",-1,-1,-1,-1:�
,�0� (key%>=&181)�(key%<=&185) okt%=key%-&181:�
,�(� (key%<32)�(key%>&185) � �CtrlKey:�
,��ș"SFXMP_GetPitch"�spitch%:� spitch%<>ospitch% � temp%!0=wsongpaneh%:temp%!4=8:ș"Wimp_GetIconState",,temp%:$(temp%!28)=�spitch%:temp%!8=0:temp%!12=0:ș"Wimp_SetIconState",,temp%:ospitch%=spitch%
,��
,�
,�
��CtrlKey
,�
Ȏ key% �
,�!� �"X"-64:polledb%!4=0:�MEdit
,�!� �"C"-64:polledb%!4=1:�MEdit
,�!� �"V"-64:polledb%!4=2:�MEdit
,�!� �"D"-64:polledb%!4=3:�MEdit
-!� �"G"-64:polledb%!4=5:�MEdit
-
!� �"H"-64:polledb%!4=6:�MEdit
-� �"A"-64:�MSelAll
-� �"Z"-64:�MSelClear
-(� �"Q"-64:�ZoomAll
-2� �"W"-64:�ZoomOut
-<� �"S"-64:�ZoomSel
-F� �"T"-64:�ZoomStore
-P� �"R"-64:�ZoomRestore
-Z%� �"F"-64:polledb%!4=11:�MGoodies
-d� &186:polledb%!8=0:�MType
-n� &187:polledb%!8=1:�MType
-x� &188:polledb%!8=2:�MType
-�!� &189:polledb%!4=0:�MGoodies
-�!� &1ca:polledb%!4=1:�MGoodies
-�!� &1cb:polledb%!4=2:�MGoodies
-��
-��
-�
-���Menu_Select
-�"ș"Wimp_GetPointerInfo",,temp%
-�oldbut%=temp%!8
-�Ȏ lastmenu% �
-�� iconmenu%:�MSelIcon
-�� workmenu%:�MSelWork
-�� sectmenu%:�MSelSect
.�
.B� (oldbut%�1) � ș"Wimp_CreateMenu",,lastmenu%,lastmx%,lastmy%
.�
."
.,��MSelSect
.6Ȏ polledb%!0 �
.@� 0:�MSectInsert
.J� 1:�MSectAppend
.T� 2:�MSectOverwrite
.^� 3:�MSectDelete
.h� 4:�MSectPlay
.r� 5:�PlaySong
.|�
.��
.�
.���MSectInsert
.�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
.�#� songlen%>=�(songbuflen%/32) �
.��ReportErr("No room.")
.��
.�T%=songlen%
.�ȕ T%>currsect%
.��S%=0�28�4
.�2songstart%!(T%*32+S%)=songstart%!(T%*32-32+S%)
.��S%
.�	T%-=1
/�
/songlen%+=1
/�PutSect(currsect%)
/&�SetSongExtent
/0�RdSong
/:�
/D�
/N
/X��MSectAppend
/b6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
/l#� songlen%>=�(songbuflen%/32) �
/v!�ReportErr("Too many loops.")
/��
/��PutSect(songlen%)
/�songlen%+=1
/��SetSongExtent
/��RdSong
/��
/��
/�
/���MSectOverwrite
/�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
/�6� currsect%<songlen% � �PutSect(currsect%):�RdSong
/��
/�
0��MSectDelete
06ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
0� currsect%<songlen% �
0 T%=currsect%
0*ȕ T%<songlen%-1
04�S%=0�28�4
0>2songstart%!(T%*32+S%)=songstart%!(T%*32+32+S%)
0H�S%
0R	T%+=1
0\�
0fsonglen%-=1
0p�SetSongExtent
0z�RdSong
0��
0��
0�
0���MSectPlay
0�� currsect%<songlen% �
0�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
0�Ƞ 2
0�ȡ 2,"SFXMVoice"
0�Wș"SFXMP_PlaySong",songstart%+32*currsect%,songlen%-currsect%,startsample%,1,stype%
0��
0��
0�
0���PutSect(s%)
1temp%!0=wsongpaneh%
1
temp%!4=6
1 ș"Wimp_GetIconState",,temp%
1$#$(songstart%+s%*32)=$(temp%!28)
1.
temp%!4=7
18 ș"Wimp_GetIconState",,temp%
1BA%=�($(temp%!28))
1L� A%>255 � A%=255
1V� A%<1 � A%=1
1`!(songstart%+s%*32+12)=A%
1j
temp%!4=8
1t ș"Wimp_GetIconState",,temp%
1~A%=�($(temp%!28))
1�� A%<1 � A%=1
1�� A%>&10000 � A%=&10000
1�!(songstart%+s%*32+16)=A%
1�
temp%!4=9
1� ș"Wimp_GetIconState",,temp%
1�A%=�($(temp%!28))
1�� A%<2 � A%=2
1�� A%>255 � A%=255
1�!(songstart%+s%*32+20)=A%
1�"!(songstart%+s%*32+24)=ploopl%
1�"!(songstart%+s%*32+28)=ploopr%
1��
2
2
��CheckSong
2T%=0
2ȕ T%<songlen%
2(5A%=songstart%!(T%*32+24):B%=songstart%!(T%*32+28)
22� A%<0 � A%=0
2<� B%<0 � B%=0
2F#� A%>samplelen% � A%=samplelen%
2P#� B%>samplelen% � B%=samplelen%
2Z5songstart%!(T%*32+24)=A%:songstart%!(T%*32+28)=B%
2d	T%+=1
2n�
2x�
2�
2���MSelIcon
2�� polledb%!0=1 � �CloseDown
2��
2�
2���MSelWork
2�Ȏ polledb%!0 �
2�� 0:�MInfo
2�� 1:�MSave
2�� 2:�MEdit
2�� 3:�MSelect
2�� 4:�MZoom
2�� 5:�MLoop
3� 6:�MGoodies
3� 7:�MSong
3�
3"�
3,
36��MSong
3@m%=polledb%!4
3JȎ m% �
3T� 0:�PlaySong
3^� 1:�OpenSong
3h� 4:�ClearSong
3r� 5:�SwapSongRep
3|�
3��
3�
3���SwapSongRep
3�songrep%=� songrep%
3�
�AdjSongM
3��
3�
3���OpenSong
3�temp%!0=wsongh%
3�"ș"Wimp_GetWindowState",,temp%
3�temp%!28=-1
3�ș"Wimp_OpenWindow",,temp%
3�temp2%!0=wsongpaneh%
4#ș"Wimp_GetWindowState",,temp2%
4temp2%!4=temp%!4
4temp2%!12=temp%!12
4&temp2%!16=temp%!16
40temp2%!8=temp%!16-84
4:temp2%!28=-1
4Dș"Wimp_OpenWindow",,temp2%
4N�
4X
4b��PlaySong
4l� songlen%>0 �
4v6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
4�Ƞ 2
4�ȡ 2,"SFXMVoice"
4�Nș"SFXMP_PlaySong",songstart%,songlen%,startsample%,1,stype%+(songrep%<<8)
4��
4��
4�
4���MInfo
4�m%=polledb%!4
4�Ȏ m% �
4�� 1:�MType
4�� 2:�SetBuf
4�� 3:�ClearAll
4��
5�
5
5��SetBuf
5 6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
5*#newblen%=1024*�($(mbuflen%!40))
54#� newblen%<1024 � newblen%=1024
5>.� newblen%>=1024*1024 � newblen%=1023*1024
5Hb%=1
5R� newblen%<buflen% �
5\
temp%!0=0
5f2$(temp%+4)="You will lose the current sample."
5p3ș"Wimp_ReportError",temp%,%10011,"Confirm"�,b%
5z�
5�� b%=1 �
5�/ș"XOS_Module",6,,,newblen%�,,newbstart%;v%
5�� v%�1 �
5�%�ReportErr("Can't claim memory.")
5��
5�� newblen%<buflen% �
5�ș"XOS_Module",7,,bufstart%
5�bufstart%=newbstart%
5�buflen%=newblen%
5�
�Clear
5��CheckSong
5��
5�chb%=newbstart%-bufstart%
6A%=bufstart%
6B%=newbstart%
6(C%=startsample%+samplelen%-bufstart%
6$�copymem
6.A%=clipbstart%
68$B%=newbstart%+newblen%-clipblen%
6BC%=clipblen%
6L�copymem
6V"startsample%=startsample%+chb%
6`ș"XOS_Module",7,,bufstart%
6jbufstart%=newbstart%
6tbuflen%=newblen%
6~�CheckSong
6��
6��
6��
6��
6�
6���ClearAll
6�� samplesaved%=-1 �
6�
�Clear
6��
6�NA%=�Confirm("Sample has been modified. Are you sure you want to do this?")
6�� A%=1 � �Clear
6��
7�
7

7��Clear
7�Restart
7(temp%!0=wworkh%
72"ș"Wimp_GetWindowState",,temp%
7<polledb%!20=0
7Fș"Wimp_OpenWindow",,temp%
7P�SetExtent
7Z�SetSongExtent
7d$(wwork%!72)="<Untitled>"
7nsamplesaved%=-1
7x�RdWork
7��
7�
7���MSave
7��
7�
7���MType
7�Ȏ polledb%!8 �
7�"� 0:stype%=2:�AdjTypeM:�RdWork
7�"� 1:stype%=0:�AdjTypeM:�RdWork
7�"� 2:stype%=1:�AdjTypeM:�RdWork
7��
7��
7�
8��AdjTypeM
8Ȏ stype% �
8Q� 0:typemenu%!(28+24*0+0)=0:typemenu%!(28+24*1+0)=1:typemenu%!(28+24*2+0)=128
8"Q� 1:typemenu%!(28+24*0+0)=0:typemenu%!(28+24*1+0)=0:typemenu%!(28+24*2+0)=129
8,Q� 2:typemenu%!(28+24*0+0)=1:typemenu%!(28+24*1+0)=0:typemenu%!(28+24*2+0)=128
86�
8@�
8J
8T��AdjSongM
8^B� songrep% � songmenu%!(28+24*5)=129 � songmenu%!(28+24*5)=128
8h�
8r
8|��MEdit
8�#� selectl%<>-1 � selectr%<>-1 �
8�m%=polledb%!4
8�Ȏ m% �
8�� 0:�MECut
8�� 1:�MECopy
8�� 2:�MEPaste
8�� 3:�MEDelete
8�� 4:�MEDeleteNS
8�� 5:�MEDeleteL
8�� 6:�MEDeleteR
8��
8��
8��
9
9��MECut
9Cc%=�CheckLen(samplelen%+pselectr%-pselectl%,"No room for cut.")
9&� c%=0 �
90A%=startsample%+pselectl%
9:.B%=bufstart%+buflen%-(pselectr%-pselectl%)
9DC%=pselectr%-pselectl%
9N�copymem
9Xclipbstart%=B%
9bclipblen%=C%
9l
�MEDelete
9v�ModTitle(0)
9��
9��
9�
9���MECopy
9�Dc%=�CheckLen(samplelen%+pselectr%-pselectl%,"No room for copy.")
9�� c%=0 �
9�A%=startsample%+pselectl%
9�.B%=bufstart%+buflen%-(pselectr%-pselectl%)
9�C%=pselectr%-pselectl%
9��copymem
9�clipbstart%=B%
9�clipblen%=C%
9��
:�
:
:
��MEPaste
: =c%=�CheckLen(samplelen%+2*clipblen%,"No room for paste.")
:*� c%=0 �
:4A%=startsample%+pselectr%
:>'B%=startsample%+pselectr%+clipblen%
:HC%=samplelen%-pselectr%
:R�copymem
:\A%=clipbstart%
:fB%=startsample%+pselectr%
:pC%=clipblen%
:z�copymem
:�3� ploopl%>pselectr% � ploopl%=ploopl%+clipblen%
:�3� ploopr%>pselectr% � ploopr%=ploopr%+clipblen%
:��getwinp
:�#samplelen%=samplelen%+clipblen%
:�C� samplelen%<1 � samplelen%=1:startsample%?0=0:startsample%?1=0
:��CheckLoop
:��CheckSong
:��adjptrs
:��ZoomSel
:��ModTitle(0)
:��
:��
:�
;ݤCheckLen(l%,e$)
;*� startsample%+l%>=bufstart%+buflen% �
;�ReportErr(e$)
;$	A%=-1
;.�
;8A%=0
;B�
;L=A%
;V
;`��MEDelete
;jA%=startsample%+pselectr%
;tB%=startsample%+pselectl%
;~C%=samplelen%-pselectr%
;��copymem
;�?� ploopl%>pselectl% � ploopl%=ploopl%-(pselectr%-pselectl%)
;�?� ploopr%>pselectl% � ploopr%=ploopr%-(pselectr%-pselectl%)
;��getwinp
;�!samplelen%=samplelen%-(A%-B%)
;�C� samplelen%<1 � samplelen%=1:startsample%?0=0:startsample%?1=0
;��CheckLoop
;��CheckSong
;��adjptrs
;��ZoomSel
;��ModTitle(0)
;��
<
<
��MEDeleteNS
<A%=startsample%+pselectl%
<B%=startsample%
<(C%=pselectr%-pselectl%
<2�copymem
<<ploopl%=ploopl%-pselectl%
<Fploopr%=ploopr%-pselectl%
<P�getwinp
<Zsamplelen%=C%
<dC� samplelen%<1 � samplelen%=1:startsample%?0=0:startsample%?1=0
<n�CheckLoop
<x�CheckSong
<��adjptrs
<��ZoomSel
<��ModTitle(0)
<��
<�
<���MEDeleteL
<�A%=startsample%+pselectl%
<�B%=startsample%
<�C%=samplelen%-pselectl%
<��copymem
<�ploopl%=ploopl%-pselectl%
<�ploopr%=ploopr%-pselectl%
<��getwinp
=samplelen%=C%
=C� samplelen%<1 � samplelen%=1:startsample%?0=0:startsample%?1=0
=�CheckLoop
="�CheckSong
=,�adjptrs
=6�ZoomSel
=@�ModTitle(0)
=J�
=T
=^��MEDeleteR
=hA%=pselectr%
=r�getwinp
=|samplelen%=A%
=�C� samplelen%<1 � samplelen%=1:startsample%?0=0:startsample%?1=0
=��CheckLoop
=��CheckSong
=��adjptrs
=��ZoomSel
=��ModTitle(0)
=��
=�
=���CheckLoop
=�� ploopl%<0 � ploopl%=0
=�-� ploopl%>samplelen% � ploopl%=samplelen%
=�� ploopr%<0 � ploopr%=0
=�-� ploopr%>samplelen% � ploopr%=samplelen%
>'� ploopl%>ploopr% � ploopr%=ploopl%
>�UpdateSLoop
>�
>&
>0
��getwinp
>:temp%!0=wworkh%
>D"ș"Wimp_GetWindowState",,temp%
>Nselectl%=temp%!20
>Xselectr%=temp%!20+1022
>b"pselectl%=�WorkToPtr(selectl%)
>l"pselectr%=�WorkToPtr(selectr%)
>v�
>�
>�
��adjptrs
>�=� pselectl%<0 � pselectr%=pselectr%-pselectl%:pselectl%=0
>�\� pselectr%>samplelen% � pselectl%=pselectl%-(pselectr%-samplelen%):pselectr%=samplelen%
>�� pselectl%<0 � pselectl%=0
>�1� pselectr%>samplelen% � pselectr%=samplelen%
>�"selectl%=�PtrToWork(pselectl%)
>�"selectr%=�PtrToWork(pselectr%)
>��
>�
>�
��MSelect
>�m%=polledb%!4
>�Ȏ m% �
?� 0:�MSelAll
?� 1:�MSelLoop
?� 2:�MSelLeft
? � 3:�MSelRight
?*� 4:�MSelWindow
?4� -1,5:�MSelClear
?>�
?H�
?R
?\
��MSelAll
?fpselectl%=0
?ppselectr%=samplelen%
?z"selectl%=�PtrToWork(pselectl%)
?�"selectr%=�PtrToWork(pselectr%)
?��UpdateSelect
?��
?�
?���MSelLeft
?�pselectr%=pselectl%
?�pselectl%=0
?�"selectl%=�PtrToWork(pselectl%)
?�"selectr%=�PtrToWork(pselectr%)
?��UpdateSelect
?��
?�
?���MSelRight
@pselectl%=pselectr%
@pselectr%=samplelen%
@"selectl%=�PtrToWork(pselectl%)
@$"selectr%=�PtrToWork(pselectr%)
@.�UpdateSelect
@8�
@B
@L��MSelWindow
@Vtemp%!0=wworkh%
@`"ș"Wimp_GetWindowState",,temp%
@jselectl%=temp%!20
@tselectr%=temp%!20+1022
@~"pselectl%=�WorkToPtr(selectl%)
@�"pselectr%=�WorkToPtr(selectr%)
@�"selectl%=�PtrToWork(pselectl%)
@�"selectr%=�PtrToWork(pselectr%)
@��UpdateSelect
@��
@�
@���MSelLoop
@�pselectl%=ploopl%
@�pselectr%=ploopr%
@�"selectl%=�PtrToWork(pselectl%)
@�"selectr%=�PtrToWork(pselectr%)
@��UpdateSelect
A�
A

A��MSelClear
Aselectl%=-1:selectr%=-1
A(pselectl%=-1:pselectr%=-1
A2�UpdateSelect
A<�
AF
AP��MZoom
AZm%=polledb%!4
AdȎ m% �
An� 0:�ZoomAll
Ax� 1:�ZoomOut
A�� 2:�ZoomLoop
A�� -1,3:�ZoomSel
A�� 4:�ZoomStore
A�� 5:�ZoomRestore
A��
A��
A�
A�
��ZoomAll
A�polledb%!0=wworkh%
A�%ș"Wimp_GetWindowState",,polledb%
A�polledb%!20=0
A�!ș"Wimp_OpenWindow",,polledb%
A�displen%=samplelen%
B�SetExtent
B"selectl%=�PtrToWork(pselectl%)
B"selectr%=�PtrToWork(pselectr%)
B"loopl%=�PtrToWork(ploopl%)
B,loopr%=�PtrToWork(ploopr%)
B6!oloopl%=loopl%:oloopr%=loopr%
B@)oselectl%=selectl%:oselectr%=selectr%
BJ�RdWork
BT�
B^
Bh
��ZoomOut
Br#opsl%=pselectl%:opsr%=pselectr%
B|polledb%!0=wworkh%
B�%ș"Wimp_GetWindowState",,polledb%
B�selectl%=polledb%!20
B�selectr%=polledb%!20+1022
B�"pselectl%=�WorkToPtr(selectl%)
B�"pselectr%=�WorkToPtr(selectr%)
B�sw%=pselectr%-pselectl%
B�pselectl%=pselectl%-sw%
B�pselectr%=pselectr%+sw%
B�=� pselectl%<0 � pselectr%=pselectr%-pselectl%:pselectl%=0
B�\� pselectr%>samplelen% � pselectl%=pselectl%-(pselectr%-samplelen%):pselectr%=samplelen%
B�� pselectl%<0 � pselectl%=0
B�1� pselectr%>samplelen% � pselectr%=samplelen%
B�"selectl%=�PtrToWork(pselectl%)
C"selectr%=�PtrToWork(pselectr%)
Cloopl%=�PtrToWork(ploopl%)
Cloopr%=�PtrToWork(ploopr%)
C&!oloopl%=loopl%:oloopr%=loopr%
C0�ZoomSel
C:#pselectl%=opsl%:pselectr%=opsr%
CD"selectl%=�PtrToWork(pselectl%)
CN"selectr%=�PtrToWork(pselectr%)
CX�UpdateSelect
Cb�
Cl
Cv��ZoomLoop
C�opsl%=pselectl%
C�opsr%=pselectr%
C�pselectl%=ploopl%
C�pselectr%=ploopr%
C�"selectl%=�PtrToWork(pselectl%)
C�"selectr%=�PtrToWork(pselectr%)
C��ZoomSel
C�pselectl%=opsl%
C�pselectr%=opsr%
C�"selectl%=�PtrToWork(pselectl%)
C�"selectr%=�PtrToWork(pselectr%)
C��UpdateSelect
C��
D
D
��ZoomSel
D%� pselectl%<>-1 � pselectr%<>-1 �
D  displen%=pselectr%-pselectl%
D*� displen%<1 � displen%=1
D4dispst=pselectl%/samplelen%
D>polledb%!0=wworkh%
DH%ș"Wimp_GetWindowState",,polledb%
DRpolledb%!20=0
D\!ș"Wimp_OpenWindow",,polledb%
Df�SetExtent
Dppolledb%!20=dispst*maxx%
Dz!ș"Wimp_OpenWindow",,polledb%
D�5selectl%=-1:selectr%=-1:oselectl%=-1:oselectr%=-1
D�pselectl%=-1:pselectr%=-1
D�loopl%=�PtrToWork(ploopl%)
D�loopr%=�PtrToWork(ploopr%)
D�!oloopl%=loopl%:oloopr%=loopr%
D��RdWork
D��
D��
D�
D���ZoomStore
D�temp%!0=wworkh%
D�"ș"Wimp_GetWindowState",,temp%
D�zoomsl%=temp%!20
Ezoomsr%=temp%!20+1024
Ezoomsl%=�WorkToPtr(zoomsl%)
Ezoomsr%=�WorkToPtr(zoomsr%)
E$�
E.
E8��ZoomRestore
EB#opsl%=pselectl%:opsr%=pselectr%
ELpselectl%=zoomsl%
EVpselectr%=zoomsr%
E`� pselectl%<0 � pselectl%=0
Ej� pselectr%<0 � pselectr%=0
Et1� pselectl%>samplelen% � pselectl%=samplelen%
E~1� pselectr%>samplelen% � pselectr%=samplelen%
E��ZoomSel
E�#pselectl%=opsl%:pselectr%=opsr%
E�"selectl%=�PtrToWork(pselectl%)
E�"selectr%=�PtrToWork(pselectr%)
E��UpdateSelect
E��
E�
E���MLoop
E�m%=polledb%!4
E�Ȏ m% �
E�� 0:�LoopAll
E�� 1:�LoopWindow
F� 2:�LoopSel
F
� 3:�LoopHalf
F� 4:�LoopDouble
F� 5:�LoopStore
F(� 6:�LoopRestore
F2�
F<�
FF
FP
��LoopAll
FZ
ploopl%=0
Fdploopr%=samplelen%
Fnloopl%=�PtrToWork(ploopl%)
Fxloopr%=�PtrToWork(ploopr%)
F��UpdateLoopP
F��
F�
F���LoopWindow
F�opsl%=pselectl%
F�opsr%=pselectr%
F��getwinp
F��LoopSel
F�pselectl%=opsl%
F�pselectr%=opsr%
F�"selectl%=�PtrToWork(pselectl%)
F�"selectr%=�PtrToWork(pselectr%)
F��UpdateSelect
G�
G
G
��LoopSel
G"%� pselectl%<>-1 � pselectr%<>-1 �
G,ploopl%=pselectl%
G6ploopr%=pselectr%
G@loopl%=�PtrToWork(ploopl%)
GJloopr%=�PtrToWork(ploopr%)
GT�UpdateLoopP
G^�
Gh�
Gr
G|��LoopHalf
G�'ploopr%=ploopl%+(ploopr%-ploopl%)/2
G�loopl%=�PtrToWork(ploopl%)
G�loopr%=�PtrToWork(ploopr%)
G��UpdateLoopP
G��
G�
G���LoopDouble
G�'ploopr%=ploopl%+(ploopr%-ploopl%)*2
G�R� ploopr%>samplelen% � ploopl%=ploopl%-(ploopr%-samplelen%):ploopr%=samplelen%
G�� ploopl%<0 � ploopl%=0
G�loopl%=�PtrToWork(ploopl%)
G�loopr%=�PtrToWork(ploopr%)
G��UpdateLoopP
H�
H
H��LoopStore
H&%sploopl%=ploopl%:sploopr%=ploopr%
H0�
H:
HD��LoopRestore
HN%ploopl%=sploopl%:ploopr%=sploopr%
HX� ploopl%<0 � ploopl%=0
Hb� ploopr%<0 � ploopr%=0
Hl-� ploopl%>samplelen% � ploopl%=samplelen%
Hv-� ploopr%>samplelen% � ploopr%=samplelen%
H�loopl%=�PtrToWork(ploopl%)
H�loopr%=�PtrToWork(ploopr%)
H��UpdateLoopP
H��
H�
H���MGoodies
H�%� pselectl%<>-1 � pselectr%<>-1 �
H�A%=startsample%+pselectl%
H�B%=startsample%+pselectr%
H��
H�A%=startsample%
H�B%=startsample%+samplelen%
H��
I� A%>B% � Ȕ A%,B%
Im%=polledb%!4
IȎ m% �
I � 0:�MGSigned
I*� 1:�MGLinLog
I4� 2:�MGLogLin
I>� 3:�MGReverse
IH� 4:�MGFiltLo
IR� 5:�MGFiltHi
I\� 6:�MGScAmp
If� 9:�MGLength
Ip� 10:�MGFill
Iz� 11:�MGFFT
I�� 12:�MGAddClipB
I��
I��
I�
I���MGSigned
I��signed
I��RdWork
I��ModTitle(0)
I��
I�
I���MGLinLog
I�� stype%<>0 � stype%<>1 �
I�+�ReportErr("SFXED not in linear mode.")
J�
J6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
J
C%=stype%
J$�linlog
J.stype%=2
J8
�AdjTypeM
JB�RdWork
JL�ModTitle(0)
JV�
J`�
Jj
Jt��MGLogLin
J~6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
J��loglin
J�stype%=0
J�
�AdjTypeM
J��RdWork
J��ModTitle(0)
J��
J�
J���MGReverse
J��reverse
J��RdWork
J��ModTitle(0)
J��
K
K
��MGFiltLo
K� stype%=2 �
K*�ReportErr("Only for linear samples.")
K(�
K2C%=16*�($(mfiltlo%!40))
K<� C%<0 � C%>4095 �
KF,�ReportErr("Only values from 0 to 256.")
KP�
KZ
D%=stype%
KdE%=A%?0
Kn� stype%=1 � E%=E% � &80
KxE%=(E%<<24)>>24
K�
E%=E%*256
K��filtlo
K��RdWork
K��ModTitle(0)
K��
K��
K��
K�
K���MGFiltHi
K�� stype%=2 �
K�*�ReportErr("Only for linear samples.")
K��
K�C%=16*�($(mfilthi%!40))
L� C%<0 � C%>4095 �
L+�ReportErr("Only values from 0 to 256")
L�
L"
D%=stype%
L,&� A%=startsample% � E%=0 � E%=A%?0
L6� stype%=1 � E%=E% � &80
L@E%=(E%<<24)>>24
LJ
E%=E%*256
LT�filthi
L^�RdWork
Lh�ModTitle(0)
Lr�
L|�
L��
L�
L�
��MGScAmp
L�� stype%=2 �
L�*�ReportErr("Only for linear samples.")
L��
L� C%=4096*�($(mscamp%!40))/100
L�
D%=stype%
L�
�scamp
L��RdWork
L��ModTitle(0)
L��
L��
M
M��MGLength
Mfr=�($(mnewlen%!40))/100
M&sa%=A%-startsample%
M0sb%=B%-startsample%
M:Nc%=�CheckLen(samplelen%+clipblen%+(sb%-sa%)*(fr-1),"No room for stretch.")
MD� c%=0 �
MNsc%=fr*&1000000
MX� sc%>=&1000000 �
MbA%=startsample%+sb%
Ml$B%=startsample%+sa%+(sb%-sa%)*fr
MvC%=samplelen%-sb%
M��copymem
M��
M�A%=startsample%+sa%
M�B%=startsample%+sb%
M�
C%=sc%
M�� sc%<&1000000 �
M�'� fr<>0 � C%=&1000000/fr:�nwlengths
M��
M�C%=&1000000/fr
M�$D%=startsample%+sa%+(sb%-sa%)*fr
M��nwlengthb
M��
M�� sc%<&1000000 �
NA%=startsample%+sb%
N$B%=startsample%+sa%+(sb%-sa%)*fr
NC%=samplelen%-sb%
N �copymem
N*�
N4:� ploopl%>sa% � ploopl%=ploopl%-(sb%-sa%)+(sb%-sa%)*fr
N>:� ploopr%>sa% � ploopr%=ploopr%-(sb%-sa%)+(sb%-sa%)*fr
NH�getwinp
NR0samplelen%=samplelen%-(sb%-sa%)+(sb%-sa%)*fr
N\C� samplelen%<1 � samplelen%=1:startsample%?0=0:startsample%?1=0
Nf�CheckLoop
Np�CheckSong
Nz�adjptrs
N��ZoomSel
N��ModTitle(0)
N��
N��
N�
N���MGFill
N�� stype%=1 � C%=128 � C%=0
N��fillmem
N��RdWork
N��ModTitle(0)
N��
N�
N���MGFFT
O� �
O8� � � ș"OS_SpriteOp",60+256,S%,0,0:�ReportErr(�$):�
O� stype%=2 �
O$*�ReportErr("Only for linear samples.")
O.�
O8C%=�($(mfftamp%!40))
OB� C%<0 � C%=0
OLș"Hourglass_On"
OVș"Wimp_BaseOfSprites"�,S%
O`7ș"OS_SpriteOp",60+256,S%,"fftsprite",0�W%,X%,Y%,Z%
Oj�:�5
Ot� 512,512,0,256
O~� 512,512,1024,256
O�� 512,512,512,1024
O�� 8,212
O�	�"f";
O�� 26,232,0,220
O�� 12,220,0,220
O�� 8,228,0,220
O�� 1000,212
O�	�"t";
O�� 996,232,1022,220
O�� 1010,220,1022,220
O�� 1014,228,1022,220
O�� 490,1020
P	�"A";
P
� 480,1020,480,988
P� 476,1008,480,1020
P� 484,1008,480,1020
P(
P2fftcode%!4=A%
P<fftcode%!8=B%
PFfftcode%!12=0
PP:� (B%-A%)<128 � fftcode%!16=0 � fftcode%!16=64*(B%-A%)
PZfftcode%!20=0
Pdfftcode%!24=stype%
Pnfftcode%!28=C%
Pxfftcode%!32=512
P�fftcode%!36=512
P�fftcode%!40=fftrcoef%
P�fftcode%!44=ffticoef%
P�
�fftcode%
P�
P�ș"OS_SpriteOp",W%,X%,Y%,Z%
P�temp%!0=wffth%
P�ș"Wimp_CloseWindow",,temp%
P�"ș"Wimp_GetWindowState",,temp%
P�temp%!28=-1
P�ș"Wimp_OpenWindow",,temp%
P�ș"Hourglass_Off"
P��
Q�
Q
Q��MGAddClipB
Q"� stype%=2 �
Q,*�ReportErr("Only for linear samples.")
Q6�
Q@/� B%-A%>clipblen% � C%=clipblen% � C%=B%-A%
QJB%=clipbstart%
QT
D%=stype%
Q^�addclip
Qh�RdWork
Qr�ModTitle(0)
Q|�
Q��
Q�
Q���EchoClick
Q�%� pselectl%<>-1 � pselectr%<>-1 �
Q�A%=startsample%+pselectl%
Q�B%=startsample%+pselectr%
Q��
Q�A%=startsample%
Q�B%=startsample%+samplelen%
Q��
Q�� A%>B% � Ȕ A%,B%
Q�� polledb%!16=8 �
Q�ȗ a%,b%,bc%
R� stype%=2 �
R*�ReportErr("Only for linear samples.")
R�
R&temp%!0=wechoh%
R0
temp%!4=2
R: ș"Wimp_GetIconState",,temp%
RD#C%=256-(256*�($(temp%!28))/100)
RNtemp%!0=wechoh%
RX
temp%!4=3
Rb ș"Wimp_GetIconState",,temp%
RlD%=�($(temp%!28))
Rvtemp%!0=wechoh%
R�
temp%!4=6
R� ș"Wimp_GetIconState",,temp%
R�E%=(temp%!24)�(1<<21)
R�
F%=stype%
R�� C%<0 � C%>256 �
R�*�ReportErr("Decay rate out of range.")
R��
R�	�echo
R��RdWork
R��ModTitle(0)
R��
R��
R�3� (bc% � 1)=0 � ș"Wimp_CreateMenu",-1,-1,-1,-1
S�
S�
S
S ��FadeClick
S*%� pselectl%<>-1 � pselectr%<>-1 �
S4A%=startsample%+pselectl%
S>B%=startsample%+pselectr%
SH�
SRA%=startsample%
S\B%=startsample%+samplelen%
Sf�
Sp� A%>B% � Ȕ A%,B%
Sz� polledb%!16=6 �
S�ȗ a%,b%,bc%
S�� stype%=2 �
S�*�ReportErr("Only for linear samples.")
S��
S�temp%!0=wfadeh%
S�
temp%!4=2
S� ș"Wimp_GetIconState",,temp%
S�#C%=&10000000*�($(temp%!28))/100
S�temp%!0=wfadeh%
S�
temp%!4=3
S� ș"Wimp_GetIconState",,temp%
S�#D%=&10000000*�($(temp%!28))/100
S�� B%-A%<>0 �
TE%=(D%-C%)/(B%-A%)
T
F%=stype%
T	�fade
T$�RdWork
T.�ModTitle(0)
T8�
TB�
TL3� (bc% � 1)=0 � ș"Wimp_CreateMenu",-1,-1,-1,-1
TV�
T`�
Tj
Tt��User_Message
T~*�T%=0�255�4:messbk%!T%=polledb%!T%:�T%
T�m%=polledb%!16
T�Ȏ m% �
T�
� 0:�Quit
T�� 1:�DataSave
T�� 2:�SaveAck
T�� 3:�DataLoad
T�� &400c0:�MenuWarning
T� � &44640:polledb%!8=1:�MType
T� � &44641:polledb%!8=2:�MType
T� � &44642:polledb%!8=0:�MType
T�� &44643:�MessGetLen
T�� &44644:�Calculated
U�
U
�
U
U��DataLoad
U(Ȏ polledb%!20 �
U2� -2,wworkh%:�LoadSample
U<�
UF�
UP
UZ��MessGetLen
Ud6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
Untemp%!20=bufstart%
Uxtemp%!24=buflen%-clipblen%
U��SendSFXM(&44645)
U��
U�
U���Calculated
U�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
U�startsample%=bufstart%
U�samplelen%=polledb%!20
U�stype%=polledb%!24
U�
�AdjTypeM
U�5selectl%=-1:selectr%=-1:oselectl%=-1:oselectr%=-1
U�pselectl%=-1:pselectr%=-1
U� ploopl%=0:ploopr%=samplelen%
U�$(wwork%!72)=$(polledb%+28)
Vsamplesaved%=-1
V
�OpenWork
V�CheckSong
V"�ZoomAll
V,9ș"XWimp_SetCaretPosition",wkeyboardh%,-1,-1,-1,-1,-1
V6�
V@
VJ��SendSFXM(M%)
VTH%=�GetSFXMH
V^
� H%<>0 �
Vhtemp%!0=256
Vr
temp%!4=0
V|
temp%!8=0
V�temp%!12=0
V�temp%!16=M%
V�$ș"Wimp_SendMessage",17,temp%,H%
V��
V��
V�
V�ݤGetSFXMH
V�;ș"XOS_ReadVarVal","SFXM_TaskHandle",temp2%,16,0,0�,,A%
V�temp2%?A%=13
V�!� A%=0 � =0 � =�("&"+$temp2%)
V�
V���LoadSample
V�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
W�MBString(polledb%+44)
Wfiletoload$=$(polledb%+44)
Wfiletype%=polledb%!40
W&� samplesaved%=-1 �
W0�LoadSample2
W:�
WDZA%=�Confirm("Sample has been modified. Are you sure you want to load another sample?")
WN� A%=1 � �LoadSample2
WX�
Wbmessbk%!0=256
Wlmessbk%!12=messbk%!8
Wvmessbk%!16=4
W�-ș"Wimp_SendMessage",17,messbk%,messbk%!4
W��
W�
W���LoadSample2
W�� �
W�� � � �ReportErr(�$):�
W�f%=�(filetoload$)
W�� f%=0 �
W�samplelen%=1
W�startsample%?0=0
W�startsample%?1=0
W��#f%
W��
Xfilelen%=�#f%
X�#f%
X/c%=�CheckLen(filelen%+clipblen%,"No room.")
X � c%=0 �
X*f%=�(filetoload$)
X4startsample%=bufstart%
X>Ȏ filetype% �
XH� &cb5:�LoadSa1
XR� &d3c:�LoadSa2
X\� &df9:�LoadSa3
Xf� &ed0:�LoadSa4
Xp� &d3b:�LoadSong
Xz:�LoadSaX
X��
X��#f%
X�5selectl%=-1:selectr%=-1:oselectl%=-1:oselectr%=-1
X�pselectl%=-1:pselectr%=-1
X�"� filetoload$="<Wimp$Scrap>" �
X��("delete <Wimp$Scrap>")
X�filetoload$=filetoload2$
X��
X�$(wwork%!72)=filetoload$
X�temp%!0=wsaveh%
X�
temp%!4=1
X� ș"Wimp_GetIconState",,temp%
X�$(!(temp%+28))=filetoload$
YJ� filetype%=&d3b � songtoload$=filetoload$ � sampletoload$=filetoload$
Ysamplesaved%=-1
Y�CheckSong
Y$
�OpenWork
Y.�ZoomAll
Y8�
YB�
YL�
YV
Y`��LoadSong
Yj�ClearSong
Yt&�#f%,a$,pitch%,songlen%,samplelen%
Y~;� a$="RgnosXFS" � songrep%=-1:a$="gnosXFS" � songrep%=0
Y�T%=0
Y�ȕ T%<songlen%
Y��#f%,b$,A%,B%,C%,D%,E%
Y�D%=D%*16
Y�� a$<>"gnosXFS" � E%=255
Y�� A%<0 � A%=0
Y�� B%<0 � B%=0
Y�#� A%>samplelen% � A%=samplelen%
Y�#� B%>samplelen% � B%=samplelen%
Y�� C%<1 � C%=1
Y�� C%>255 � C%=255
Y�� D%<1 � D%=1
Z� D%>&10000 � D%=&10000
Z
� E%<2 � E%=2
Z� E%>255 � E%=255
Z� T%<�(songbuflen%/32) �
Z($(songstart%+T%*32)=�b$,10)
Z2songstart%!(T%*32+12)=C%
Z<songstart%!(T%*32+16)=D%
ZFsongstart%!(T%*32+20)=E%
ZPsongstart%!(T%*32+24)=A%
ZZsongstart%!(T%*32+28)=B%
Zd�
Zn	T%+=1
Zx�
Z�,ș"OS_GBPB",4,f%,startsample%,samplelen%
Z��SetPitch2
Z�
�AdjSongM
Z��RdSong
Z��SetSongExtent
Z� ploopl%=0:ploopr%=samplelen%
Z��
Z�
Z�
��LoadSa1
Z�ș"OS_GBPB",3,f%,temp%,4,0
Z�� !temp%<>&504d4153 �
Z�,ș"OS_GBPB",3,f%,startsample%,filelen%,0
Z�samplelen%=filelen%
[ploopl%=0:ploopr%=2
[�
[samplelen%=-1
["ploopl%=-1
[,ploopr%=-1
[6
N%=0:T%=0
[@7ȕ N%=0 � (samplelen%=-1 � ploopl%=-1 � ploopr%=-1)
[J&ș"OS_GBPB",3,f%,temp%,4,T%�,,,,T%
[TȎ !temp% �
[^B� &53464f52:ș"OS_GBPB",3,f%,temp%,8,T%�,,,,T%:ploopl%=temp%!4
[hB� &4e454c52:ș"OS_GBPB",3,f%,temp%,8,T%�,,,,T%:ploopr%=temp%!4
[rx� &54414453:ș"OS_GBPB",3,f%,temp%,4,T%�,,,,T%:samplelen%=temp%!0:ș"OS_GBPB",3,f%,startsample%,samplelen%,T%�,,,,T%
[|�
[�ș"OS_Args",254,f%�N%
[�N%=N%�(1<<9)
[��
[�O� samplelen%=-1 � �ReportErr("Bad Chunk."):samplelen%=1:ploopl%=0:ploopr%=1
[�U� ploopl%=-1 � ploopr%=-1 � �ReportErr("Bad Chunk."):ploopl%=0:ploopr%=samplelen%
[�ploopr%=ploopl%+ploopr%
[��
[�stype%=2
[�
�AdjTypeM
[�7� ploopl%=0 � ploopr%=2 � playtype%=0 � playtype%=3
[��AdjKeys
[�� ploopl%<0 � ploopl%=0
[�@� ploopl%>samplelen% � ploopl%=samplelen%:ploopr%=samplelen%
\-� ploopr%>samplelen% � ploopr%=samplelen%
\%� ploopr%<0 � ploopl%=0:ploopr%=0
\'� ploopr%<ploopl% � ploopr%=ploopl%
\&�
\0�
\:
\D
��LoadSa2
\N%ș"OS_GBPB",3,f%,startsample%,1,0
\Xpitch%=?startsample%
\b�SetPitch2
\l.ș"OS_GBPB",3,f%,startsample%,filelen%-1,1
\vsamplelen%=filelen%-1
\� ploopl%=0:ploopr%=samplelen%
\�stype%=0
\�
�AdjTypeM
\��
\�
\�
��LoadSa3
\�ș"OS_GBPB",3,f%,temp%,4,20
\�samplelen%=temp%!0
\�ș"OS_GBPB",3,f%,temp%,4,24
\�ploopl%=(temp%!0)*256
\�ș"OS_GBPB",3,f%,temp%,4,28
\�ploopr%=(temp%!0)*256
\�0ș"OS_GBPB",3,f%,startsample%,samplelen%,544
]stype%=0
]
�AdjTypeM
]1� ploopl%=ploopr% � playtype%=0 � playtype%=3
] �AdjKeys
]*� ploopl%<0 � ploopl%=0
]4@� ploopl%>samplelen% � ploopl%=samplelen%:ploopr%=samplelen%
]>-� ploopr%>samplelen% � ploopr%=samplelen%
]H%� ploopr%<0 � ploopl%=0:ploopr%=0
]R'� ploopr%<ploopl% � ploopr%=ploopl%
]\�
]f
]p
��LoadSa4
]z,ș"OS_GBPB",3,f%,startsample%,filelen%,0
]�samplelen%=filelen%
]� ploopl%=0:ploopr%=samplelen%
]�stype%=1
]�
�AdjTypeM
]��
]�
]�
��LoadSaX
]�,ș"OS_GBPB",3,f%,startsample%,filelen%,0
]�samplelen%=filelen%
]� ploopl%=0:ploopr%=samplelen%
]��
]�
]�
��AdjKeys
^temp%!0=wkeyboardh%
^temp%!4=43
^-� playtype%=0 � temp%!8=1<<21 � temp%!8=0
^$temp%!12=1<<21
^. ș"Wimp_SetIconState",,temp%
^8temp%!4=44
^B-� playtype%=1 � temp%!8=1<<21 � temp%!8=0
^Ltemp%!12=1<<21
^V ș"Wimp_SetIconState",,temp%
^`temp%!4=45
^j-� playtype%=2 � temp%!8=1<<21 � temp%!8=0
^ttemp%!12=1<<21
^~ ș"Wimp_SetIconState",,temp%
^�temp%!4=46
^�-� playtype%=3 � temp%!8=1<<21 � temp%!8=0
^�temp%!12=1<<21
^� ș"Wimp_SetIconState",,temp%
^��
^�
^���MenuWarning
^�N� (lastmenu%=workmenu%) � (polledb%!32=0) � (polledb%!36=0) � �NewMenuInfo
^�O� (lastmenu%=workmenu%) � (polledb%!32=1) � (polledb%!40=-1) � �NewMenuSave
^�Q� (lastmenu%=workmenu%) � (polledb%!32=1) � (polledb%!40<>-1) � �NewMenuWSave
^�Q� (lastmenu%=workmenu%) � (polledb%!32=7) � (polledb%!36<>-1) � �NewMenuSSave
^��
_
_
��NewMenuSave
_Ȏ polledb%!36 �
_%� 0:savedata%=0:$savemenu2%="All"
_(*� 1:savedata%=1:$savemenu2%="Selected"
_2+� 2:savedata%=2:$savemenu2%="Clipboard"
_<�
_F?ș"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
_P�
_Z
_d��NewMenuWSave
_nȎ polledb%!40 �
_x%� 0:savedt%=0:�ChSaveWin(savedt%)
_�%� 1:savedt%=1:�ChSaveWin(savedt%)
_�%� 2:savedt%=2:�ChSaveWin(savedt%)
_�%� 3:savedt%=3:�ChSaveWin(savedt%)
_�%� 4:savedt%=4:�ChSaveWin(savedt%)
_�%� 5:savedt%=5:�ChSaveWin(savedt%)
_�%� 6:savedt%=6:�ChSaveWin(savedt%)
_��
_�?ș"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
_��
_�
_���ChSaveWin(w%)
_�A%=wsave%!72
_�temp%!0=wsaveh%
`
temp%!4=0
` ș"Wimp_GetIconState",,temp%
`B%=temp%!28
`"temp%!0=wsaveh%
`,
temp%!4=1
`6 ș"Wimp_GetIconState",,temp%
`@C%=temp%!28
`JȎ w% �
`T6� 0:$A%="Tracker":$B%="file_cb5":$C%=sampletoload$
`^>� 1:$A%="Tracker_NoHeadr":$B%="file_cb5":$C%=sampletoload$
`h7� 2:$A%="Armadeus":$B%="file_d3c":$C%=sampletoload$
`r5� 3:$A%="DSEdit":$B%="file_ed0":$C%=sampletoload$
`|2� 4:$A%="EMR":$B%="file_df9":$C%=sampletoload$
`�2� 5:$A%="Raw":$B%="file_ffd":$C%=sampletoload$
`�2� 6:$A%="Module":$B%="file_ffa":$C%=modtoload$
`�2� 10:$A%="Song":$B%="file_d3b":$C%=songtoload$
`�;� 11:$A%="SongModule":$B%="file_ffa":$C%=songmodtoload$
`��
`��
`�
`���NewMenuSSave
`�Ȏ polledb%!36 �
`�2� 2:savedt%=10:savedata%=0:�ChSaveWin(savedt%)
`�2� 3:savedt%=11:savedata%=0:�ChSaveWin(savedt%)
`��
`�?ș"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
a�
a
a��NewMenuInfo
a&temp%!0=winfoh%
a0
temp%!4=5
a: ș"Wimp_GetIconState",,temp%
aD$(temp%!28)=�buflen%
aN
temp%!4=6
aX ș"Wimp_GetIconState",,temp%
ab$(temp%!28)=�samplelen%
al
temp%!4=7
av ș"Wimp_GetIconState",,temp%
a�$(temp%!28)=�clipblen%
a�
temp%!4=8
a� ș"Wimp_GetIconState",,temp%
a�Y� pselectl%<>-1 � pselectr%<>-1 � $(temp%!28)=�(pselectr%-pselectl%) � $(temp%!28)=""
a�
temp%!4=9
a� ș"Wimp_GetIconState",,temp%
a�=� pselectl%<>-1 � $(temp%!28)=�pselectl% � $(temp%!28)=""
a�temp%!4=16
a� ș"Wimp_GetIconState",,temp%
a�=� pselectr%<>-1 � $(temp%!28)=�pselectr% � $(temp%!28)=""
a�temp%!4=20
a� ș"Wimp_GetIconState",,temp%
a�$(temp%!28)=�ploopl%
btemp%!4=21
b ș"Wimp_GetIconState",,temp%
b$(temp%!28)=�ploopr%
b ?ș"Wimp_CreateSubMenu",,polledb%!20,polledb%!24,polledb%!28
b*�
b4
b>��CloseDown
bH� samplesaved%=-1 �
bR	�Quit
b\�
bfKA%=�Confirm("Sample has been modified. Are you sure you want to quit?")
bp� A%=1 � �Quit
bz�
b��
b�
b�
��Quit
b��SendSFXM(0)
b�ș"SFXMP_Stop",1
b�ș"SFXMP_Stop",2
b�ș"SFXMP_Stop",3
b�ș"SFXMP_Disable"
b�2ș"XOS_SetVarVal","SFXED_TaskHandle","",-1,0,0
b�ș"Wimp_BaseOfSprites"�,S%
b�,�SYS"XOS_SpriteOp",25+256,S%,"fftsprite"
b�1� bufstart%<>-1 � ș"XOS_Module",7,,bufstart%
b�3� songstart%<>-1 � ș"XOS_Module",7,,songstart%
cș"Hourglass_Smash"
c'ș"Wimp_CloseDown",taskh%,&4b534154
cș"OS_Exit"
c$�
c.
c8��SetExtent
cB"maxx%=1024*samplelen%/displen%
cL
temp%!0=0
cVtemp%!4=-256
c`temp%!8=maxx%
cjtemp%!12=0
ct$ș"Wimp_SetExtent",wworkh%,temp%
c~�
c�
c���SetSongExtent
c�
temp%!0=0
c� temp%!4=-(96+songlen%*36+36)
c�temp%!8=604
c�temp%!12=0
c�$ș"Wimp_SetExtent",wsongh%,temp%
c�temp%!0=wsongh%
c�"ș"Wimp_GetWindowState",,temp%
c�5� (temp%!32)�(1<<16) � ș"Wimp_OpenWindow",,temp%
c��
c�
d
��Init
d
� temp% 1000
d� temp2% 1000
d� messbk% 512
d(bufstart%=-1
d2songstart%=-1
d<=ș"Wimp_Initialise",200,&4b534154,"SFXED"�version%,taskh%
dFD� version%<200 � ș"Wimp_CloseDown",taskh%,&4b534154:ș"OS_Exit"
dP<ș"XOS_ReadVarVal","SFXED_TaskHandle",temp2%,16,0,0�,,A%
dZ
� A%<>0 �
dd(�ReportErr("SFXED already running.")
dn'ș"Wimp_CloseDown",taskh%,&4b534154
dxș"OS_Exit"
d��
d�ș"Hourglass_On"
d�7ș"XOS_SetVarVal","SFXED_TaskHandle",�~taskh%,8,0,0
d�� smodlog% 512
d�� smodslin% 512
d�� smodulin% 512
d�� smodsong% 1024
d�� fftcode% 3000
d�� fftrcoef% 128*4
d�� ffticoef% 128*4
d�+�("LOAD <SFXED$Dir>.pmlog "+�~smodlog%)
d�-�("LOAD <SFXED$Dir>.pmslin "+�~smodslin%)
d�-�("LOAD <SFXED$Dir>.pmulin "+�~smodulin%)
e-�("LOAD <SFXED$Dir>.pmsong "+�~smodsong%)
e-�("LOAD <SFXED$Dir>.fftcode "+�~fftcode%)
e/ș"Wimp_SpriteOp",11,,"<SFXED$Dir>.Sprites"
e"2ș"Wimp_OpenTemplate",,"<SFXED$Dir>.Templates"
e,� wsave% 1000
e6� wabout% 1000
e@� wkeyboard% 4000
eJ� wwork% 1000
eT� winfo% 1000
e^� wecho% 1000
eh� wfade% 1000
er� wpos% 1000
e|� wfft% 1000
e�� wsong% 1000
e�� wsongpane% 1000
e�� icbuf% 4000
e�icbufn%=icbuf%
e�� tname% 16
e�next%=0
e��LoadTemp(wsave%,"save")
e��LoadTemp(wabout%,"about")
e�$�LoadTemp(wkeyboard%,"keyboard")
e��LoadTemp(wfade%,"fade")
e��LoadTemp(wecho%,"echo")
e��LoadTemp(winfo%,"info")
e��LoadTemp(wwork%,"work")
f�LoadTemp(wpos%,"pos")
f�LoadTemp(wfft%,"fft")
f�LoadTemp(wsong%,"song")
f&$�LoadTemp(wsongpane%,"songpane")
f0ș"Wimp_CloseTemplate"
f:wsave%!(88+24)=1
fD)ș"Wimp_CreateWindow",,wsave%�wsaveh%
fN+ș"Wimp_CreateWindow",,wabout%�wabouth%
fX1ș"Wimp_CreateWindow",,wkeyboard%�wkeyboardh%
fb)ș"Wimp_CreateWindow",,wwork%�wworkh%
fl)ș"Wimp_CreateWindow",,winfo%�winfoh%
fv)ș"Wimp_CreateWindow",,wecho%�wechoh%
f�)ș"Wimp_CreateWindow",,wfade%�wfadeh%
f�'ș"Wimp_CreateWindow",,wpos%�wposh%
f�'ș"Wimp_CreateWindow",,wfft%�wffth%
f�)ș"Wimp_CreateWindow",,wsong%�wsongh%
f�1ș"Wimp_CreateWindow",,wsongpane%�wsongpaneh%
f�
�Menus
f�� bicon% 32
f�bicon%!0=-1
f�bicon%!4=0
f�bicon%!8=0
f�bicon%!12=68
f�bicon%!16=68
f�bicon%!20=%0011000000011010
g$(bicon%+24)="!sfxed"
g'ș"Wimp_CreateIcon",,bicon%�biconh%
g
�Assem
g � dragb% 256
g*� pollb% 256
g4� polledb% 256
g>*VOLUME 127
gH(ș"XSound_Configure",0,0,0,0,0�,,,T%
gR� logtable% 256
g\!logtab=logtable%
gf
�S%=0�255
gp"logtable%?S%=?((T%!8)+(S%<<5))
gz�S%
g�� lintable% 256
g�!lintab=lintable%
g�
�S%=0�127
g�2lintable%?(S%*2)=�((0.5+267.33*2^(S%/16))/512)
g�(lintable%?(S%*2+1)=-lintable%?(S%*2)
g��S%
g�samplesaved%=-1
g�"filetoload$="":filetoload2$=""
g�savedata%=-1
g�savedt%=-1
g�savetype%=-1
g�
ss%=-1
g�0oldbut%=0:lastmenu%=-1:lastmx%=-1:lastmy%=-1
hdragtype%=-1
hplaytype%=0
hmaxx%=0
h$more%=0
h.stype%=0
h8releasek%=-1
hBmultiplek%=-1
hL
okt%=1
hVpdisphd%=0
h`
pitch%=48
hjspitch%=&1000
htospitch%=&1000
h~'ș"XSound_Configure",0,0,pitch%,0,0
h�<ș"XOS_ReadVarVal","SFXED$BufferSize",temp2%,16,0,0�,,A%
h�temp2%?A%=13
h�0� A%=0 � buflen%=0 � buflen%=1024*�($temp2%)
h�!� buflen%<1024 � buflen%=1024
h�+� buflen%>1024*1023 � buflen%=1024*1023
h�"$(mbuflen%!40)=�(buflen%/1024)
h�songbuflen%=&1000
h�songrep%=0
h�Ƞ4
h�ȡ2,"SFXMVoice"
h�ȡ3,"SFXMVoice"
h�ȡ4,"SFXMVoice"
iș"SFXMP_Enable"
i
5ș"XOS_Module",6,,,songbuflen%+32�,,songstart%;v%
i� v%�1 �
isongstart%=-1
i(,�ReportErr("Can't claim sample memory.")
i2	�Quit
i<�
iF-ș"XOS_Module",6,,,buflen%�,,bufstart%;v%
iP� v%�1 �
iZbufstart%=-1
id,�ReportErr("Can't claim sample memory.")
in	�Quit
ix�
i��Restart
i��SetExtent
i�ș"Hourglass_Off"
i��
i�
i�
��Restart
i�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
i�startsample%=bufstart%
i�samplelen%=1
i�!clipbstart%=bufstart%+buflen%
i�clipblen%=0
i�displen%=1
i�5selectl%=-1:oselectl%=-1:selectr%=-1:oselectr%=-1
jpselectl%=-1:pselectr%=-1
j
playp%=-1
jloopl%=0:loopr%=1024
j"oloopl%=0:oloopr%=1024
j, ploopl%=0:ploopr%=samplelen%
j6%sploopl%=ploopl%:sploopr%=ploopr%
j@startsample%?0=0
jJstartsample%?1=0
jTpos%=0:oldpos%=-1
j^ zoomsl%=0:zoomsr%=samplelen%
jhsampletoload$="Sample"
jrmodtoload$="SampleMod"
j|songtoload$="Song"
j�songmodtoload$="SongMod"
j��DrawPos
j��ClearSong
j��
j�
j���ClearSong
j�6ș"SFXMP_Stop",1:ș"SFXMP_Stop",2:ș"SFXMP_Stop",3
j�songlen%=0
j�currsect%=0
j�temp%!0=wsongpaneh%
j�
temp%!4=5
j� ș"Wimp_GetIconState",,temp%
j�$(temp%!28)="1"
k
temp%!4=6
k ș"Wimp_GetIconState",,temp%
k$(temp%!28)="<Untitled>"
k&
temp%!4=7
k0 ș"Wimp_GetIconState",,temp%
k:$(temp%!28)="1"
kD
temp%!4=8
kN ș"Wimp_GetIconState",,temp%
kX$(temp%!28)="4096"
kb
temp%!4=9
kl ș"Wimp_GetIconState",,temp%
kv$(temp%!28)="255"
k��SetSongExtent
k��RdSong
k��RdSongPane
k��
k�
k���ModTitle(ss%)
k�	� ti$
k�� ss%=samplesaved% � �
k�ti$=$(wwork%!72)
k�*� �ti$," ")<>0 � ti$=�ti$,�ti$," ")-1)
k�� ss%=0 � ti$=ti$+" *"
k�$(wwork%!72)=ti$
k�temp%!0=wworkh%
l$ș"Wimp_GetWindowOutline",,temp%
lAș"Wimp_ForceRedraw",-1,temp%!4,temp%!16-40,temp%!12,temp%!16
lsamplesaved%=ss%
l �
l*
l4��LoadTemp(� start%,name$)
l>$tname%=name$
lHZș"Wimp_LoadTemplate",,start%,icbufn%,icbuf%+4000,-1,tname%,0�,start%,icbufn%,,,,next%
lRI� next%=0 � ș"Wimp_CloseTemplate":� 0,"Template "+name$+" not found"
l\�
lf
lp��ReportErr(a$)
lztemp2%!0=0
l�$(temp2%+4)=a$
l�)ș"Wimp_ReportError",temp2%,1,"SFXED"
l��
l�
l�ݤConfirm(a$)
l�temp2%!0=0
l�$(temp2%+4)=a$
l�4ș"Wimp_ReportError",temp2%,%10011,"Confirm"�,A%
l�=A%
l�
l�ݤinterr(a$)
l�temp2%!0=0
l�$(temp2%+4)=a$
mBș"Wimp_ReportError",temp2%,%10011,"SFXED Internal Error."�,A%
m=A%
m
m$"� titlestring, width in chars.
m.ݤMenuHead(t$,w%)
m8� a%
mBa%=Menus%+MenuPtr%
mL
$a%=t$
mVa%?12=7
m`a%?13=2
mja%?14=7
mta%?15=0
m~a%!16=w%*16
m�a%!20=44
m�a%!24=0
m�MenuPtr%+=28
m�=a%
m�
m�;� itemtext, flags, indirected, val. string, max. length
m���AddItem(i$,f%,i%,v$,ml%)
m�� a%
m�a%=Menus%+MenuPtr%
m�+� (�(i$)>11)�(i%=0) � i%=-1:ml%=�(i$)+1
m�a%!0=f%�255
m�_� f%� 256 � a%!8=%00000111010000011001000000010001 � a%!8=%00000111000000011001000000010001
na%!4=-1
n

� i% �
n  a%!8+=256
n"  $(MenuData%+MenuDataPtr%)=i$
n("  a%!12=MenuData%+MenuDataPtr%
n2  MenuDataPtr%+=�(i$)+1
n<"  $(MenuData%+MenuDataPtr%)=v$
nF"  a%!16=MenuData%+MenuDataPtr%
nP  MenuDataPtr%+=�(v$)+1
nZ  a%!20=ml%
nd�
nn  $(a%+12)=i$
nx�
n�MenuPtr%+=24
n��
n�
n� � menu, item, submenupointer
n���AddSubMenu(m%,i%,p%)
n�m%!(28+24*i%+4)=p%
n��
n�
n���Menus
n�� Menus% 4000
n�� MenuData% 2000
n�MenuPtr%=0
n�MenuDataPtr%=0
o
o"iconmenu%=�MenuHead("SFXED",6)
o�AddItem("Info",0,0,"",0)
o"�AddItem("Quit",128,0,"",0)
o,%�AddSubMenu(iconmenu%,0,wabouth%)
o6
o@"workmenu%=�MenuHead("SFXED",8)
oJ�AddItem("Misc",0,0,"",0)
oT�AddItem("Save",0,0,"",0)
o^�AddItem("Edit",0,0,"",0)
oh�AddItem("Select",0,0,"",0)
or�AddItem("Zoom",0,0,"",0)
o|�AddItem("Loop",0,0,"",0)
o� �AddItem("Goodies",0,0,"",0)
o��AddItem("Song",128,0,"",0)
o�"miscmenu%=�MenuHead("Misc",12)
o��AddItem("Info",8,0,"",0)
o�$�AddItem("Sample Type",0,0,"",0)
o�#�AddItem("Set Buffer",0,0,"",0)
o�"�AddItem("Restart",128,0,"",0)
o�)typemenu%=�MenuHead("Sample Type",19)
o�+�AddItem("Logarithmic     F6",0,0,"",0)
o�+�AddItem("Signed Linear   F7",1,0,"",0)
o�-�AddItem("Unsigned Linear F8",128,0,"",0)
o�'mbuflen%=�MenuHead("Length (K)",11)
o�%�AddItem("128",128+4,-1,"A0-9",5)
p#savemenu1%=�MenuHead("Save",10)
p�AddItem("All",8,0,"",0)
p!�AddItem("Selected",8,0,"",0)
p&&�AddItem("Clipboard",128+8,0,"",0)
p0*savemenu2%=�MenuHead("           ",12)
p:$�AddItem("Tracker",256+8,0,"",0)
pD'�AddItem("Tracker_NH",256+8,0,"",0)
pN%�AddItem("Armadeus",256+8,0,"",0)
pX#�AddItem("DSEdit",256+8,0,"",0)
pb �AddItem("EMR",256+8,0,"",0)
pl �AddItem("Raw",256+8,0,"",0)
pv'�AddItem("Module",256+128+8,0,"",0)
p�"editmenu%=�MenuHead("Edit",11)
p�#�AddItem("Cut     ^X",0,0,"",0)
p�#�AddItem("Copy    ^C",0,0,"",0)
p�#�AddItem("Paste   ^V",0,0,"",0)
p�#�AddItem("Delete  ^D",0,0,"",0)
p� �AddItem("Delete*",0,0,"",0)
p�#�AddItem("DeleteL ^G",0,0,"",0)
p�%�AddItem("DeleteR ^H",128,0,"",0)
p�&selectmenu%=�MenuHead("Select",10)
p�"�AddItem("All    ^A",0,0,"",0)
p��AddItem("Loop",0,0,"",0)
p��AddItem("Left",0,0,"",0)
p��AddItem("Right",0,0,"",0)
q�AddItem("Window",0,0,"",0)
q$�AddItem("Clear  ^Z",128,0,"",0)
q"zoommenu%=�MenuHead("Zoom",12)
q $�AddItem("All      ^Q",0,0,"",0)
q*$�AddItem("Out      ^W",0,0,"",0)
q4�AddItem("Loop",0,0,"",0)
q>$�AddItem("Selected ^S",0,0,"",0)
qH$�AddItem("Remember ^T",0,0,"",0)
qR&�AddItem("Recall   ^R",128,0,"",0)
q\!loopmenu%=�MenuHead("Loop",9)
qf�AddItem("All",0,0,"",0)
qp�AddItem("Window",0,0,"",0)
qz!�AddItem("Selected",0,0,"",0)
q��AddItem("Half",0,0,"",0)
q��AddItem("Double",0,0,"",0)
q�!�AddItem("Remember",0,0,"",0)
q�!�AddItem("Recall",128,0,"",0)
q�(goodiesmenu%=�MenuHead("Goodies",15)
q�&�AddItem("Signed     F9",0,0,"",0)
q�'�AddItem("Lin->Log   F10",0,0,"",0)
q�'�AddItem("Log->Lin   F11",0,0,"",0)
q� �AddItem("Reverse",0,0,"",0)
q�!�AddItem("Low Pass",0,0,"",0)
q�"�AddItem("High Pass",0,0,"",0)
q� �AddItem("Amplify",0,0,"",0)
q�$�AddItem("Echo/Reverb",0,0,"",0)
r$�AddItem("Fade In/Out",0,0,"",0)
r �AddItem("Stretch",0,0,"",0)
r �AddItem("Silence",0,0,"",0)
r$&�AddItem("FFT        ^F",0,0,"",0)
r.%�AddItem("Add Clipb.",128,0,"",0)
r8%mfiltlo%=�MenuHead("Low Pass",10)
rB$�AddItem("32",128+4,-1,"A0-9",4)
rL&mfilthi%=�MenuHead("High Pass",10)
rV%�AddItem("224",128+4,-1,"A0-9",4)
r`$mscamp%=�MenuHead("Volume %",10)
rj%�AddItem("100",128+4,-1,"A0-9",5)
rt%mnewlen%=�MenuHead("Length %",10)
r~%�AddItem("100",128+4,-1,"A0-9",5)
r�"mfftamp%=�MenuHead("Scale",10)
r�%�AddItem("256",128+4,-1,"A0-9",6)
r�"songmenu%=�MenuHead("Song",12)
r��AddItem("Play",0,0,"",0)
r��AddItem("Show",0,0,"",0)
r�!�AddItem("Save",256+8,0,"",0)
r�(�AddItem("Save Module",256+8,0,"",0)
r��AddItem("Clear",0,0,"",0)
r�!�AddItem("Repeat",128,0,"",0)
r�$�AddSubMenu(songmenu%,2,wsaveh%)
r�$�AddSubMenu(songmenu%,3,wsaveh%)
r�&�AddSubMenu(workmenu%,0,miscmenu%)
s'�AddSubMenu(workmenu%,1,savemenu1%)
s
&�AddSubMenu(workmenu%,2,editmenu%)
s(�AddSubMenu(workmenu%,3,selectmenu%)
s&�AddSubMenu(workmenu%,4,zoommenu%)
s(&�AddSubMenu(workmenu%,5,loopmenu%)
s2)�AddSubMenu(workmenu%,6,goodiesmenu%)
s<&�AddSubMenu(workmenu%,7,songmenu%)
sF$�AddSubMenu(miscmenu%,0,winfoh%)
sP&�AddSubMenu(miscmenu%,1,typemenu%)
sZ%�AddSubMenu(miscmenu%,2,mbuflen%)
sd(�AddSubMenu(savemenu1%,0,savemenu2%)
sn(�AddSubMenu(savemenu1%,1,savemenu2%)
sx(�AddSubMenu(savemenu1%,2,savemenu2%)
s�%�AddSubMenu(savemenu2%,0,wsaveh%)
s�%�AddSubMenu(savemenu2%,1,wsaveh%)
s�%�AddSubMenu(savemenu2%,2,wsaveh%)
s�%�AddSubMenu(savemenu2%,3,wsaveh%)
s�%�AddSubMenu(savemenu2%,4,wsaveh%)
s�%�AddSubMenu(savemenu2%,5,wsaveh%)
s�%�AddSubMenu(savemenu2%,6,wsaveh%)
s�(�AddSubMenu(goodiesmenu%,4,mfiltlo%)
s�(�AddSubMenu(goodiesmenu%,5,mfilthi%)
s�'�AddSubMenu(goodiesmenu%,6,mscamp%)
s�'�AddSubMenu(goodiesmenu%,7,wechoh%)
s�'�AddSubMenu(goodiesmenu%,8,wfadeh%)
s�(�AddSubMenu(goodiesmenu%,9,mnewlen%)
t)�AddSubMenu(goodiesmenu%,11,mfftamp%)
t
t(sectmenu%=�MenuHead("          ",15)
t"$�AddItem("Insert Loop",0,0,"",0)
t,$�AddItem("Append Loop",0,0,"",0)
t6'�AddItem("Overwrite Loop",0,0,"",0)
t@$�AddItem("Delete Loop",0,0,"",0)
tJ$�AddItem("Play to End",0,0,"",0)
tT$�AddItem("Play Song",128,0,"",0)
t^�
th
tr��Assem
t|� code% 5000
t�� pass%=0�2�2
t�P%=code%
t�[       opt     pass%
t�.redrwk
t�stmfd   r13!,{r0-r12,r14}
t�ldmfd   r13,{r6-r12}
t�sub     r5,r8,r7
t�add     r0,r6,r5,asr #9
t�cmp     r0,r12
t�movmi   r0,#&80
t�bmi     skipfr
t�ldrb    r0,[r6,r5,asr #9]
t�cmp     r11,#0
ueoreq   r0,r0,#&80
ucmp     r11,#2
ubne     P%+16
u&movs    r0,r0,lsr #1
u0rsbcs   r0,r0,#0
u:add     r0,r0,#128
uD.skipfr
uNadd     r2,r0,r10
uXsub     r1,r9,#2
ubmov     r0,#4
ulswi     "OS_Plot"
uvmov     r12,#512
u�add     r12,r12,#1
u�add     r5,r5,r7
u�
.drawloop
u�ldrb    r0,[r6,r5,asr #9]
u�cmp     r11,#0
u�eoreq   r0,r0,#&80
u�cmp     r11,#2
u�bne     P%+16
u�movs    r0,r0,lsr #1
u�rsbcs   r0,r0,#0
u�add     r0,r0,#128
u�add     r2,r0,r10
u�mov     r1,r9
vmov     r0,#5
vswi     "OS_Plot"
v
v add     r9,r9,#2
v*add     r5,r5,r7
v4subs    r12,r12,#1
v>bne     drawloop
vH
vRldmfd   r13!,{r0-r12,pc}
v\
vf.fillmem
vpstmfd   r13!,{r0-r12,r14}
vzcmp     r0,r1
v�movhi   r3,r0
v�movhi   r0,r1
v�movhi   r1,r3
v�.fillup
v�cmp     r0,r1
v�ldmeqfd r13!,{r0-r12,pc}
v�strb    r2,[r0],#1
v�b       fillup
v�
v�.copymem
v�stmfd   r13!,{r0-r12,r14}
v�cmp     r0,r1
v�bhi     copypl
wadd     r0,r0,r2
wadd     r1,r1,r2
wcmp     r2,#0
w$.cpymlp
w.ldmeqfd r13!,{r0-r12,pc}
w8ldrb    r3,[r0,#-1]!
wBstrb    r3,[r1,#-1]!
wLsubs    r2,r2,#1
wVb       cpymlp
w`.copypl
wjcmp     r2,#0
wt.cpyplp
w~ldmeqfd r13!,{r0-r12,pc}
w�ldrb    r3,[r0],#1
w�strb    r3,[r1],#1
w�subs    r2,r2,#1
w�b       cpyplp
w�
w�.signed
w�stmfd   r13!,{r0-r12,r14}
w�.signlp
w�cmp     r0,r1
w�ldmhsfd r13!,{r0-r12,pc}
w�ldrb    r2,[r0]
w�eor     r2,r2,#&80
xstrb    r2,[r0],#1
x
b       signlp
x
x
x(.linlog
x2stmfd   r13!,{r0-r12,r14}
x<ldr     r4,logtab
xF.linllp
xPcmp     r0,r1
xZldmhsfd r13!,{r0-r12,pc}
xdldrb    r3,[r0]
xncmp     r2,#1
xxeoreq   r3,r3,#&80
x�ldrb    r3,[r4,r3]
x�strb    r3,[r0],#1
x�b       linllp
x�
x�
x�.loglin
x�stmfd   r13!,{r0-r12,r14}
x�ldr     r4,lintab
x�.logllp
x�cmp     r0,r1
x�ldmhsfd r13!,{r0-r12,pc}
x�ldrb    r3,[r0]
x�ldr     r3,[r4,r3]
ystrb    r3,[r0],#1
yb       logllp
y
y".logtab
y,
equd    0
y6.lintab
y@
equd    0
yJ
yT.reverse
y^stmfd   r13!,{r0-r12,r14}
yh.revlup
yrcmp     r0,r1
y|ldmhsfd r13!,{r0-r12,pc}
y�ldrb    r2,[r0]
y�ldrb    r3,[r1,#-1]
y�strb    r3,[r0],#1
y�strb    r2,[r1,#-1]!
y�b       revlup
y�
y�.filtlo
y�stmfd   r13!,{r0-r12,r14}
y�.fltllp
y�cmp     r0,r1
y�ldmhsfd r13!,{r0-r12,pc}
y�ldrb    r5,[r0]
y�cmp     r3,#1
zeoreq   r5,r5,#&80
zmov     r5,r5,lsl #24
zmov     r5,r5,asr #24
z&sub     r5,r4,r5,lsl #8
z0mul     r5,r2,r5
z:sub     r4,r4,r5,asr #12
zDmov     r5,r4,asr #8
zNcmp     r5,#127
zXmovpl   r5,#127
zbcmn     r5,#127
zlmovmi   r5,#128
zvcmp     r3,#1
z�eoreq   r5,r5,#&80
z�strb    r5,[r0],#1
z�b       fltllp
z�
z�.filthi
z�stmfd   r13!,{r0-r12,r14}
z�.flthlp
z�cmp     r0,r1
z�ldmhsfd r13!,{r0-r12,pc}
z�ldrb    r5,[r0]
z�cmp     r3,#1
z�eoreq   r5,r5,#&80
z�mov     r5,r5,lsl #24
{mov     r5,r5,asr #24
{mov     r6,r5,lsl #8
{sub     r5,r4,r5,lsl #8
{ mul     r5,r2,r5
{*sub     r4,r4,r5,asr #12
{4sub     r5,r6,r4
{>mov     r5,r5,asr #8
{Hcmp     r5,#127
{Rmovpl   r5,#127
{\cmn     r5,#127
{fmovmi   r5,#128
{pcmp     r3,#1
{zeoreq   r5,r5,#&80
{�strb    r5,[r0],#1
{�b       flthlp
{�
{�
.scamp
{�stmfd   r13!,{r0-r12,r14}
{�.scmplp
{�cmp     r0,r1
{�ldmhsfd r13!,{r0-r12,pc}
{�ldrb    r5,[r0]
{�cmp     r3,#1
{�eoreq   r5,r5,#&80
{�mov     r5,r5,lsl #24
{�mov     r5,r5,asr #24
|mul     r5,r2,r5
|mov     r5,r5,asr #12
|cmp     r5,#127
|$movpl   r5,#127
|.cmn     r5,#127
|8movmi   r5,#128
|Bcmp     r3,#1
|Leoreq   r5,r5,#&80
|Vstrb    r5,[r0],#1
|`b       scmplp
|j
|t	.echo
|~stmfd   r13!,{r0-r12,r14}
|�cmp     r4,#0
|�beq     revrb
|�.echolp
|�cmp     r0,r1
|�ldmhsfd r13!,{r0-r12,pc}
|�ldrb    r6,[r0]
|�ldrb    r7,[r0,r3]
|�cmp     r5,#1
|�eoreq   r6,r6,#&80
|�eoreq   r7,r7,#&80
|�mov     r6,r6,lsl #24
|�mov     r6,r6,asr #24
}mov     r7,r7,lsl #24
}
mov     r7,r7,asr #24
}mul     r6,r2,r6
}add     r7,r7,r6,asr #8
}(mov     r6,r6,asr #8
}2cmp     r6,#127
}<movpl   r6,#127
}Fcmn     r6,#127
}Pmovmi   r6,#128
}Zcmp     r7,#127
}dmovpl   r7,#127
}ncmn     r7,#127
}xmovmi   r7,#128
}�cmp     r5,#1
}�eoreq   r6,r6,#&80
}�eoreq   r7,r7,#&80
}�strb    r7,[r0,r3]
}�strb    r6,[r0],#1
}�b       echolp
}�
.revrb
}�mov     r6,r1
}�add     r1,r0,r3
}�sub     r0,r6,#1
}�.revblp
}�cmp     r0,r1
}�ldmlofd r13!,{r0-r12,pc}
~ldrb    r6,[r0]
~ldrb    r7,[r0,-r3]
~cmp     r5,#1
~"eoreq   r6,r6,#&80
~,eoreq   r7,r7,#&80
~6mov     r6,r6,lsl #24
~@mov     r6,r6,asr #24
~Jmov     r7,r7,lsl #24
~Tmov     r7,r7,asr #24
~^mul     r7,r2,r7
~hadd     r6,r6,r7,asr #8
~rcmp     r6,#127
~|movpl   r6,#127
~�cmn     r6,#127
~�movmi   r6,#128
~�cmp     r5,#1
~�eoreq   r6,r6,#&80
~�strb    r6,[r0],#-1
~�b       revblp
~�
~�.nwlengths
~�stmfd   r13!,{r0-r12,r14}
~�mov     r3,#0
~�mov     r4,r0
~�.nwlslp
~�cmp     r0,r1
ldmhsfd r13!,{r0-r12,pc}
ldrb    r5,[r0]
strb    r5,[r4]
&add     r4,r4,#1
0add     r3,r3,r2
:mov     r5,r3,lsr #24
Dbic     r3,r3,#&ff000000
Nadd     r0,r0,r5
Xb       nwlslp
b
l.nwlengthb
vstmfd   r13!,{r0-r12,r14}
�mov     r4,#0
�.nwlblp
�cmp     r3,r0
�ldmlofd r13!,{r0-r12,pc}
�ldrb    r5,[r1]
�strb    r5,[r3]
�sub     r3,r3,#1
�add     r4,r4,r2
�mov     r5,r4,lsr #24
�bic     r4,r4,#&ff000000
�sub     r1,r1,r5
�b       nwlblp
�
�	.fade
�stmfd   r13!,{r0-r12,r14}
�.fadelp
� cmp     r0,r1
�*ldmhsfd r13!,{r0-r12,pc}
�4ldrb    r6,[r0]
�>cmp     r5,#1
�Heoreq   r6,r6,#&80
�Rmov     r6,r6,lsl #24
�\mov     r6,r6,asr #24
�fmov     r7,r2,asr #20
�pmul     r6,r7,r6
�zmov     r6,r6,asr #8
��cmp     r6,#127
��movpl   r6,#127
��cmn     r6,#127
��movmi   r6,#128
��cmp     r5,#1
��eoreq   r6,r6,#&80
��strb    r6,[r0],#1
��add     r2,r2,r4
��b       fadelp
��
��.addclip
��stmfd   r13!,{r0-r12,r14}
��.addcll
�cmp     r2,#0
�ldmlefd r13!,{r0-r12,pc}
�ldrb    r4,[r0]
�$ldrb    r5,[r1],#1
�.cmp     r3,#1
�8eoreq   r4,r4,#&80
�Beoreq   r5,r5,#&80
�Lmov     r4,r4,lsl #24
�Vmov     r4,r4,asr #24
�`mov     r5,r5,lsl #24
�jmov     r5,r5,asr #24
�tadd     r4,r4,r5
�~mov     r4,r4,asr #1
��eoreq   r4,r4,#&80
��strb    r4,[r0],#1
��sub     r2,r2,#1
��b       addcll
��.endcode
��]
��
�pass%
���
�
00000000  0d 00 0a 1c f4 20 3e 3a  30 2e 24 2e 21 73 66 78  |..... >:0.$.!sfx|
00000010  65 64 2e 21 52 75 6e 49  6d 61 67 65 0d 00 14 1e  |ed.!RunImage....|
00000020  f4 20 3e 57 72 69 74 74  65 6e 20 62 79 20 47 2e  |. >Written by G.|
00000030  20 56 65 72 6d 65 75 6c  65 6e 0d 00 1e 18 ee 20  | Vermeulen..... |
00000040  85 20 f2 49 6e 74 45 72  72 6f 72 3a e5 20 8d 54  |. .IntError:. .T|
00000050  72 40 0d 00 28 09 f2 49  6e 69 74 0d 00 32 05 f5  |r@..(..Init..2..|
00000060  0d 00 3c 2d c8 99 22 57  69 6d 70 5f 50 6f 6c 6c  |..<-.."Wimp_Poll|
00000070  22 2c 30 2c 70 6f 6c 6c  62 25 20 b8 20 72 65 61  |",0,pollb% . rea|
00000080  73 6f 6e 25 2c 70 6f 6c  6c 65 64 62 25 0d 00 46  |son%,polledb%..F|
00000090  10 c8 8e 20 72 65 61 73  6f 6e 25 20 ca 0d 00 50  |... reason% ...P|
000000a0  14 c9 20 30 3a f2 4e 75  6c 6c 5f 52 65 61 73 6f  |.. 0:.Null_Reaso|
000000b0  6e 0d 00 5a 16 c9 20 31  3a f2 52 65 64 72 61 77  |n..Z.. 1:.Redraw|
000000c0  5f 57 69 6e 64 6f 77 0d  00 64 14 c9 20 32 3a f2  |_Window..d.. 2:.|
000000d0  4f 70 65 6e 5f 57 69 6e  64 6f 77 0d 00 6e 15 c9  |Open_Window..n..|
000000e0  20 33 3a f2 43 6c 6f 73  65 5f 57 69 6e 64 6f 77  | 3:.Close_Window|
000000f0  0d 00 78 14 c9 20 36 3a  f2 4d 6f 75 73 65 5f 43  |..x.. 6:.Mouse_C|
00000100  6c 69 63 6b 0d 00 82 16  c9 20 37 3a f2 55 73 65  |lick..... 7:.Use|
00000110  72 5f 44 72 61 67 5f 42  6f 78 0d 00 8c 14 c9 20  |r_Drag_Box..... |
00000120  38 3a f2 4b 65 79 5f 50  72 65 73 73 65 64 0d 00  |8:.Key_Pressed..|
00000130  96 14 c9 20 39 3a f2 4d  65 6e 75 5f 53 65 6c 65  |... 9:.Menu_Sele|
00000140  63 74 0d 00 a0 1c c9 20  31 37 2c 31 38 2c 31 39  |ct..... 17,18,19|
00000150  3a f2 55 73 65 72 5f 4d  65 73 73 61 67 65 0d 00  |:.User_Message..|
00000160  aa 05 cb 0d 00 b4 07 fd  20 a3 0d 00 be 05 e0 0d  |........ .......|
00000170  00 c8 04 0d 00 d2 0e dd  f2 49 6e 74 45 72 72 6f  |.........IntErro|
00000180  72 0d 00 dc 07 ea 20 85  0d 00 e6 10 ee 20 85 20  |r..... ...... . |
00000190  ea 20 e5 20 8d 60 54 62  0d 00 f0 37 41 25 3d a4  |. . .`Tb...7A%=.|
000001a0  69 6e 74 65 72 72 28 f6  24 2b 22 20 61 74 20 6c  |interr(.$+" at l|
000001b0  69 6e 65 20 22 2b c3 9e  2b 22 2e 20 43 6f 6e 74  |ine "+..+". Cont|
000001c0  69 6e 75 65 20 70 72 6f  67 72 61 6d 3f 22 29 0d  |inue program?").|
000001d0  00 fa 12 e7 20 41 25 3d  32 20 8c 20 f2 51 75 69  |.... A%=2 . .Qui|
000001e0  74 0d 01 04 05 e1 0d 01  0e 04 0d 01 18 0f dd f2  |t...............|
000001f0  53 63 72 54 6f 57 6f 72  6b 0d 01 22 13 74 65 6d  |ScrToWork..".tem|
00000200  70 25 21 30 3d 77 77 6f  72 6b 68 25 0d 01 2c 22  |p%!0=wworkh%..,"|
00000210  c8 99 22 57 69 6d 70 5f  47 65 74 57 69 6e 64 6f  |.."Wimp_GetWindo|
00000220  77 53 74 61 74 65 22 2c  2c 74 65 6d 70 25 0d 01  |wState",,temp%..|
00000230  36 23 c8 99 22 57 69 6d  70 5f 47 65 74 50 6f 69  |6#.."Wimp_GetPoi|
00000240  6e 74 65 72 49 6e 66 6f  22 2c 2c 74 65 6d 70 32  |nterInfo",,temp2|
00000250  25 0d 01 40 24 77 6f 72  6b 78 25 3d 74 65 6d 70  |%..@$workx%=temp|
00000260  32 25 21 30 2d 74 65 6d  70 25 21 34 2b 74 65 6d  |2%!0-temp%!4+tem|
00000270  70 25 21 32 30 0d 01 4a  19 e7 20 77 6f 72 6b 78  |p%!20..J.. workx|
00000280  25 3c 30 20 8c 20 77 6f  72 6b 78 25 3d 30 0d 01  |%<0 . workx%=0..|
00000290  54 21 e7 20 77 6f 72 6b  78 25 3e 6d 61 78 78 25  |T!. workx%>maxx%|
000002a0  20 8c 20 77 6f 72 6b 78  25 3d 6d 61 78 78 25 0d  | . workx%=maxx%.|
000002b0  01 5e 05 e1 0d 01 68 04  0d 01 72 13 dd a4 57 6f  |.^....h...r...Wo|
000002c0  72 6b 54 6f 50 74 72 28  61 25 29 0d 01 7c 2f e7  |rkToPtr(a%)..|/.|
000002d0  20 61 25 3d 2d 31 20 8c  20 3d 2d 31 20 8b 20 3d  | a%=-1 . =-1 . =|
000002e0  a8 28 30 2e 35 2b 73 61  6d 70 6c 65 6c 65 6e 25  |.(0.5+samplelen%|
000002f0  2a 61 25 2f 6d 61 78 78  25 29 0d 01 86 04 0d 01  |*a%/maxx%)......|
00000300  90 13 dd a4 50 74 72 54  6f 57 6f 72 6b 28 61 25  |....PtrToWork(a%|
00000310  29 0d 01 9a 2f e7 20 61  25 3d 2d 31 20 8c 20 3d  |).../. a%=-1 . =|
00000320  2d 31 20 8b 20 3d a8 28  30 2e 35 2b 6d 61 78 78  |-1 . =.(0.5+maxx|
00000330  25 2a 61 25 2f 73 61 6d  70 6c 65 6c 65 6e 25 29  |%*a%/samplelen%)|
00000340  0d 01 a4 04 0d 01 ae 11  dd f2 4e 75 6c 6c 5f 52  |..........Null_R|
00000350  65 61 73 6f 6e 0d 01 b8  0c f2 50 75 74 50 74 72  |eason.....PutPtr|
00000360  73 0d 01 c2 0b f2 50 6c  6f 74 50 50 0d 01 cc 10  |s.....PlotPP....|
00000370  f2 43 68 65 63 6b 53 63  72 6f 6c 6c 0d 01 d6 12  |.CheckScroll....|
00000380  c8 8e 20 64 72 61 67 74  79 70 65 25 20 ca 0d 01  |.. dragtype% ...|
00000390  e0 12 c9 20 31 3a f2 44  72 61 67 41 53 65 6c 4c  |... 1:.DragASelL|
000003a0  0d 01 ea 12 c9 20 32 3a  f2 44 72 61 67 41 53 65  |..... 2:.DragASe|
000003b0  6c 52 0d 01 f4 12 c9 20  33 3a f2 44 72 61 67 4c  |lR..... 3:.DragL|
000003c0  6f 6f 70 4c 0d 01 fe 12  c9 20 34 3a f2 44 72 61  |oopL..... 4:.Dra|
000003d0  67 4c 6f 6f 70 52 0d 02  08 05 cb 0d 02 12 05 e1  |gLoopR..........|
000003e0  0d 02 1c 04 0d 02 26 0d  dd f2 50 75 74 50 74 72  |......&...PutPtr|
000003f0  73 0d 02 30 be c8 99 22  53 46 58 4d 50 5f 47 65  |s..0..."SFXMP_Ge|
00000400  74 50 74 72 73 22 b8 41  25 3a 41 25 21 30 3d 73  |tPtrs".A%:A%!0=s|
00000410  74 61 72 74 73 61 6d 70  6c 65 25 3a 41 25 21 34  |tartsample%:A%!4|
00000420  3d 73 61 6d 70 6c 65 6c  65 6e 25 3a 41 25 21 38  |=samplelen%:A%!8|
00000430  3d 70 6c 6f 6f 70 6c 25  3a 41 25 21 31 32 3d 70  |=ploopl%:A%!12=p|
00000440  6c 6f 6f 70 72 25 3a 41  25 21 31 36 3d 70 73 65  |loopr%:A%!16=pse|
00000450  6c 65 63 74 6c 25 3a 41  25 21 32 30 3d 70 73 65  |lectl%:A%!20=pse|
00000460  6c 65 63 74 72 25 3a 41  25 21 32 34 3d 70 6c 61  |lectr%:A%!24=pla|
00000470  79 74 79 70 65 25 3a 41  25 21 32 38 3d 73 74 79  |ytype%:A%!28=sty|
00000480  70 65 25 3a 41 25 21 33  32 3d 72 65 6c 65 61 73  |pe%:A%!32=releas|
00000490  65 6b 25 3a 41 25 21 33  36 3d 6d 75 6c 74 69 70  |ek%:A%!36=multip|
000004a0  6c 65 6b 25 3a 41 25 21  34 30 3d 6f 6b 74 25 0d  |lek%:A%!40=okt%.|
000004b0  02 3a 24 c8 99 22 57 69  6d 70 5f 47 65 74 43 61  |.:$.."Wimp_GetCa|
000004c0  72 65 74 50 6f 73 69 74  69 6f 6e 22 2c 2c 74 65  |retPosition",,te|
000004d0  6d 70 25 0d 02 44 40 e7  20 74 65 6d 70 25 21 30  |mp%..D@. temp%!0|
000004e0  3d 77 6b 65 79 62 6f 61  72 64 68 25 20 8c 20 c8  |=wkeyboardh% . .|
000004f0  99 22 53 46 58 4d 50 5f  45 6e 61 62 6c 65 22 20  |."SFXMP_Enable" |
00000500  8b 20 c8 99 22 53 46 58  4d 50 5f 44 69 73 61 62  |. .."SFXMP_Disab|
00000510  6c 65 22 0d 02 4e 05 e1  0d 02 58 04 0d 02 62 0c  |le"..N....X...b.|
00000520  dd f2 50 6c 6f 74 50 50  0d 02 6c 1c e7 20 70 6c  |..PlotPP..l.. pl|
00000530  61 79 70 25 3c 3e 2d 31  20 8c 20 f2 50 6c 6f 74  |ayp%<>-1 . .Plot|
00000540  50 50 74 72 0d 02 76 65  c8 99 22 53 46 58 4d 50  |PPtr..ve.."SFXMP|
00000550  5f 47 65 74 42 6c 6f 63  6b 22 b8 41 25 3a e7 20  |_GetBlock".A%:. |
00000560  41 25 21 34 30 3c 3e 30  20 8c 20 70 6c 61 79 70  |A%!40<>0 . playp|
00000570  25 3d 28 28 41 25 21 33  32 29 3e 3e 3e 31 32 29  |%=((A%!32)>>>12)|
00000580  2b 41 25 21 33 36 2d 73  74 61 72 74 73 61 6d 70  |+A%!36-startsamp|
00000590  6c 65 25 3a f2 50 6c 6f  74 50 50 74 72 20 8b 20  |le%:.PlotPPtr . |
000005a0  70 6c 61 79 70 25 3d 2d  31 0d 02 80 05 e1 0d 02  |playp%=-1.......|
000005b0  8a 04 0d 02 94 11 dd f2  43 68 65 63 6b 53 63 72  |........CheckScr|
000005c0  6f 6c 6c 0d 02 9e 52 74  65 6d 70 25 21 30 3d 77  |oll...Rtemp%!0=w|
000005d0  77 6f 72 6b 68 25 3a c8  99 22 57 69 6d 70 5f 47  |workh%:.."Wimp_G|
000005e0  65 74 57 69 6e 64 6f 77  53 74 61 74 65 22 2c 2c  |etWindowState",,|
000005f0  74 65 6d 70 25 3a c8 99  22 57 69 6d 70 5f 47 65  |temp%:.."Wimp_Ge|
00000600  74 50 6f 69 6e 74 65 72  49 6e 66 6f 22 2c 2c 74  |tPointerInfo",,t|
00000610  65 6d 70 32 25 0d 02 a8  2c e7 20 28 74 65 6d 70  |emp2%...,. (temp|
00000620  32 25 21 31 32 3d 77 77  6f 72 6b 68 25 29 20 80  |2%!12=wworkh%) .|
00000630  20 28 74 65 6d 70 32 25  21 31 36 3d 2d 31 29 20  | (temp2%!16=-1) |
00000640  8c 0d 02 b2 27 e7 20 94  28 74 65 6d 70 25 21 34  |....'. .(temp%!4|
00000650  2d 74 65 6d 70 32 25 21  30 29 3c 36 34 20 8c 20  |-temp2%!0)<64 . |
00000660  f2 53 63 72 6f 6c 6c 4c  0d 02 bc 28 e7 20 94 28  |.ScrollL...(. .(|
00000670  74 65 6d 70 25 21 31 32  2d 74 65 6d 70 32 25 21  |temp%!12-temp2%!|
00000680  30 29 3c 36 34 20 8c 20  f2 53 63 72 6f 6c 6c 52  |0)<64 . .ScrollR|
00000690  0d 02 c6 2e 41 25 3d 74  65 6d 70 32 25 21 30 2b  |....A%=temp2%!0+|
000006a0  74 65 6d 70 25 21 32 30  2d 74 65 6d 70 25 21 34  |temp%!20-temp%!4|
000006b0  3a e7 20 41 25 3c 30 20  8c 20 41 25 3d 30 0d 02  |:. A%<0 . A%=0..|
000006c0  d0 20 70 6f 73 25 3d a4  57 6f 72 6b 54 6f 50 74  |. pos%=.WorkToPt|
000006d0  72 28 41 25 29 3a f2 44  72 61 77 50 6f 73 0d 02  |r(A%):.DrawPos..|
000006e0  da 05 cd 0d 02 e4 05 e1  0d 02 ee 04 0d 02 f8 0d  |................|
000006f0  dd f2 44 72 61 77 50 6f  73 0d 03 02 15 e7 20 70  |..DrawPos..... p|
00000700  6f 73 25 3c 3e 6f 6c 64  70 6f 73 25 20 8c 0d 03  |os%<>oldpos% ...|
00000710  0c 39 74 65 6d 70 25 21  30 3d 77 70 6f 73 68 25  |.9temp%!0=wposh%|
00000720  3a 74 65 6d 70 25 21 34  3d 30 3a c8 99 22 57 69  |:temp%!4=0:.."Wi|
00000730  6d 70 5f 47 65 74 49 63  6f 6e 53 74 61 74 65 22  |mp_GetIconState"|
00000740  2c 2c 74 65 6d 70 25 0d  03 16 3f e7 20 70 64 69  |,,temp%...?. pdi|
00000750  73 70 68 64 25 20 8c 20  24 28 74 65 6d 70 25 21  |sphd% . $(temp%!|
00000760  32 38 29 3d 22 26 22 2b  c3 7e 28 70 6f 73 25 29  |28)="&"+.~(pos%)|
00000770  20 8b 20 24 28 74 65 6d  70 25 21 32 38 29 3d c3  | . $(temp%!28)=.|
00000780  28 70 6f 73 25 29 0d 03  20 42 74 65 6d 70 25 21  |(pos%).. Btemp%!|
00000790  38 3d 30 3a 74 65 6d 70  25 21 31 32 3d 30 3a c8  |8=0:temp%!12=0:.|
000007a0  99 22 57 69 6d 70 5f 53  65 74 49 63 6f 6e 53 74  |."Wimp_SetIconSt|
000007b0  61 74 65 22 2c 2c 74 65  6d 70 25 3a 6f 6c 64 70  |ate",,temp%:oldp|
000007c0  6f 73 25 3d 70 6f 73 25  0d 03 2a 05 cd 0d 03 34  |os%=pos%..*....4|
000007d0  05 e1 0d 03 3e 04 0d 03  48 0d dd f2 53 63 72 6f  |....>...H...Scro|
000007e0  6c 6c 4c 0d 03 52 20 64  69 66 66 25 3d 36 34 2d  |llL..R diff%=64-|
000007f0  94 28 74 65 6d 70 25 21  34 2d 74 65 6d 70 32 25  |.(temp%!4-temp2%|
00000800  21 30 29 0d 03 5c 10 6f  73 25 3d 74 65 6d 70 25  |!0)..\.os%=temp%|
00000810  21 32 30 0d 03 66 13 6f  73 25 3d 6f 73 25 2d 64  |!20..f.os%=os%-d|
00000820  69 66 66 25 2a 34 0d 03  70 13 e7 20 6f 73 25 3c  |iff%*4..p.. os%<|
00000830  30 20 8c 20 6f 73 25 3d  30 0d 03 7a 25 e7 20 6f  |0 . os%=0..z%. o|
00000840  73 25 3e 6d 61 78 78 25  2d 31 30 32 34 20 8c 20  |s%>maxx%-1024 . |
00000850  6f 73 25 3d 6d 61 78 78  25 2d 31 30 32 34 0d 03  |os%=maxx%-1024..|
00000860  84 1c 74 65 6d 70 25 21  32 30 3d 6f 73 25 20 80  |..temp%!20=os% .|
00000870  20 26 66 66 66 66 66 66  66 65 0d 03 8e 1e c8 99  | &fffffffe......|
00000880  22 57 69 6d 70 5f 4f 70  65 6e 57 69 6e 64 6f 77  |"Wimp_OpenWindow|
00000890  22 2c 2c 74 65 6d 70 25  0d 03 98 05 e1 0d 03 a2  |",,temp%........|
000008a0  04 0d 03 ac 0d dd f2 53  63 72 6f 6c 6c 52 0d 03  |.......ScrollR..|
000008b0  b6 21 64 69 66 66 25 3d  36 34 2d 94 28 74 65 6d  |.!diff%=64-.(tem|
000008c0  70 25 21 31 32 2d 74 65  6d 70 32 25 21 30 29 0d  |p%!12-temp2%!0).|
000008d0  03 c0 10 6f 73 25 3d 74  65 6d 70 25 21 32 30 0d  |...os%=temp%!20.|
000008e0  03 ca 13 6f 73 25 3d 6f  73 25 2b 64 69 66 66 25  |...os%=os%+diff%|
000008f0  2a 34 0d 03 d4 13 e7 20  6f 73 25 3c 30 20 8c 20  |*4..... os%<0 . |
00000900  6f 73 25 3d 30 0d 03 de  25 e7 20 6f 73 25 3e 6d  |os%=0...%. os%>m|
00000910  61 78 78 25 2d 31 30 32  34 20 8c 20 6f 73 25 3d  |axx%-1024 . os%=|
00000920  6d 61 78 78 25 2d 31 30  32 34 0d 03 e8 1c 74 65  |maxx%-1024....te|
00000930  6d 70 25 21 32 30 3d 6f  73 25 20 80 20 26 66 66  |mp%!20=os% . &ff|
00000940  66 66 66 66 66 65 0d 03  f2 1e c8 99 22 57 69 6d  |fffffe......"Wim|
00000950  70 5f 4f 70 65 6e 57 69  6e 64 6f 77 22 2c 2c 74  |p_OpenWindow",,t|
00000960  65 6d 70 25 0d 03 fc 05  e1 0d 04 06 04 0d 04 10  |emp%............|
00000970  0f dd f2 44 72 61 67 41  53 65 6c 4c 0d 04 1a 1e  |...DragASelL....|
00000980  f2 53 63 72 54 6f 57 6f  72 6b 3a 73 65 6c 65 63  |.ScrToWork:selec|
00000990  74 6c 25 3d 77 6f 72 6b  78 25 0d 04 24 3a e7 20  |tl%=workx%..$:. |
000009a0  73 65 6c 65 63 74 6c 25  3e 73 65 6c 65 63 74 72  |selectl%>selectr|
000009b0  25 20 8c 20 c8 94 20 73  65 6c 65 63 74 6c 25 2c  |% . .. selectl%,|
000009c0  73 65 6c 65 63 74 72 25  3a 64 72 61 67 74 79 70  |selectr%:dragtyp|
000009d0  65 25 3d 32 0d 04 2e 8d  70 73 65 6c 65 63 74 6c  |e%=2....pselectl|
000009e0  25 3d a4 57 6f 72 6b 54  6f 50 74 72 28 73 65 6c  |%=.WorkToPtr(sel|
000009f0  65 63 74 6c 25 29 3a 70  73 65 6c 65 63 74 72 25  |ectl%):pselectr%|
00000a00  3d a4 57 6f 72 6b 54 6f  50 74 72 28 73 65 6c 65  |=.WorkToPtr(sele|
00000a10  63 74 72 25 29 3a 73 65  6c 65 63 74 6c 25 3d a4  |ctr%):selectl%=.|
00000a20  50 74 72 54 6f 57 6f 72  6b 28 70 73 65 6c 65 63  |PtrToWork(pselec|
00000a30  74 6c 25 29 3a 73 65 6c  65 63 74 72 25 3d a4 50  |tl%):selectr%=.P|
00000a40  74 72 54 6f 57 6f 72 6b  28 70 73 65 6c 65 63 74  |trToWork(pselect|
00000a50  72 25 29 3a f2 55 70 64  61 74 65 53 65 6c 65 63  |r%):.UpdateSelec|
00000a60  74 0d 04 38 05 e1 0d 04  42 04 0d 04 4c 0f dd f2  |t..8....B...L...|
00000a70  44 72 61 67 41 53 65 6c  52 0d 04 56 1e f2 53 63  |DragASelR..V..Sc|
00000a80  72 54 6f 57 6f 72 6b 3a  73 65 6c 65 63 74 72 25  |rToWork:selectr%|
00000a90  3d 77 6f 72 6b 78 25 0d  04 60 3a e7 20 73 65 6c  |=workx%..`:. sel|
00000aa0  65 63 74 6c 25 3e 73 65  6c 65 63 74 72 25 20 8c  |ectl%>selectr% .|
00000ab0  20 c8 94 20 73 65 6c 65  63 74 6c 25 2c 73 65 6c  | .. selectl%,sel|
00000ac0  65 63 74 72 25 3a 64 72  61 67 74 79 70 65 25 3d  |ectr%:dragtype%=|
00000ad0  31 0d 04 6a 8d 70 73 65  6c 65 63 74 6c 25 3d a4  |1..j.pselectl%=.|
00000ae0  57 6f 72 6b 54 6f 50 74  72 28 73 65 6c 65 63 74  |WorkToPtr(select|
00000af0  6c 25 29 3a 70 73 65 6c  65 63 74 72 25 3d a4 57  |l%):pselectr%=.W|
00000b00  6f 72 6b 54 6f 50 74 72  28 73 65 6c 65 63 74 72  |orkToPtr(selectr|
00000b10  25 29 3a 73 65 6c 65 63  74 6c 25 3d a4 50 74 72  |%):selectl%=.Ptr|
00000b20  54 6f 57 6f 72 6b 28 70  73 65 6c 65 63 74 6c 25  |ToWork(pselectl%|
00000b30  29 3a 73 65 6c 65 63 74  72 25 3d a4 50 74 72 54  |):selectr%=.PtrT|
00000b40  6f 57 6f 72 6b 28 70 73  65 6c 65 63 74 72 25 29  |oWork(pselectr%)|
00000b50  3a f2 55 70 64 61 74 65  53 65 6c 65 63 74 0d 04  |:.UpdateSelect..|
00000b60  74 05 e1 0d 04 7e 04 0d  04 88 0f dd f2 44 72 61  |t....~.......Dra|
00000b70  67 4c 6f 6f 70 4c 0d 04  92 67 c8 99 22 4f 53 5f  |gLoopL...g.."OS_|
00000b80  42 79 74 65 22 2c 32 30  32 2c 30 2c 32 35 35 b8  |Byte",202,0,255.|
00000b90  2c 73 68 25 3a 64 6c 70  25 3d 70 6c 6f 6f 70 72  |,sh%:dlp%=ploopr|
00000ba0  25 2d 70 6c 6f 6f 70 6c  25 3a f2 53 63 72 54 6f  |%-ploopl%:.ScrTo|
00000bb0  57 6f 72 6b 3a 6c 6f 6f  70 6c 25 3d 77 6f 72 6b  |Work:loopl%=work|
00000bc0  78 25 3a 70 6c 6f 6f 70  6c 25 3d a4 57 6f 72 6b  |x%:ploopl%=.Work|
00000bd0  54 6f 50 74 72 28 6c 6f  6f 70 6c 25 29 0d 04 9c  |ToPtr(loopl%)...|
00000be0  0d e7 20 73 68 25 80 38  20 8c 0d 04 a6 18 70 6c  |.. sh%.8 .....pl|
00000bf0  6f 6f 70 72 25 3d 70 6c  6f 6f 70 6c 25 2b 64 6c  |oopr%=ploopl%+dl|
00000c00  70 25 0d 04 b0 45 e7 20  70 6c 6f 6f 70 72 25 3e  |p%...E. ploopr%>|
00000c10  73 61 6d 70 6c 65 6c 65  6e 25 20 8c 20 70 6c 6f  |samplelen% . plo|
00000c20  6f 70 72 25 3d 73 61 6d  70 6c 65 6c 65 6e 25 3a  |opr%=samplelen%:|
00000c30  70 6c 6f 6f 70 6c 25 3d  73 61 6d 70 6c 65 6c 65  |ploopl%=samplele|
00000c40  6e 25 2d 64 6c 70 25 0d  04 ba 05 cd 0d 04 c4 39  |n%-dlp%........9|
00000c50  6c 6f 6f 70 6c 25 3d a4  50 74 72 54 6f 57 6f 72  |loopl%=.PtrToWor|
00000c60  6b 28 70 6c 6f 6f 70 6c  25 29 3a 6c 6f 6f 70 72  |k(ploopl%):loopr|
00000c70  25 3d a4 50 74 72 54 6f  57 6f 72 6b 28 70 6c 6f  |%=.PtrToWork(plo|
00000c80  6f 70 72 25 29 0d 04 ce  35 e7 20 70 6c 6f 6f 70  |opr%)...5. ploop|
00000c90  6c 25 3e 70 6c 6f 6f 70  72 25 20 8c 20 70 6c 6f  |l%>ploopr% . plo|
00000ca0  6f 70 72 25 3d 70 6c 6f  6f 70 6c 25 3a 6c 6f 6f  |opr%=ploopl%:loo|
00000cb0  70 72 25 3d 6c 6f 6f 70  6c 25 0d 04 d8 36 e7 20  |pr%=loopl%...6. |
00000cc0  6c 6f 6f 70 6c 25 3c 3e  6f 6c 6f 6f 70 6c 25 20  |loopl%<>oloopl% |
00000cd0  84 20 6c 6f 6f 70 72 25  3c 3e 6f 6c 6f 6f 70 72  |. loopr%<>oloopr|
00000ce0  25 20 8c 20 f2 55 70 64  61 74 65 4c 6f 6f 70 50  |% . .UpdateLoopP|
00000cf0  0d 04 e2 05 e1 0d 04 ec  04 0d 04 f6 0f dd f2 44  |...............D|
00000d00  72 61 67 4c 6f 6f 70 52  0d 05 00 67 c8 99 22 4f  |ragLoopR...g.."O|
00000d10  53 5f 42 79 74 65 22 2c  32 30 32 2c 30 2c 32 35  |S_Byte",202,0,25|
00000d20  35 b8 2c 73 68 25 3a 64  6c 70 25 3d 70 6c 6f 6f  |5.,sh%:dlp%=ploo|
00000d30  70 72 25 2d 70 6c 6f 6f  70 6c 25 3a f2 53 63 72  |pr%-ploopl%:.Scr|
00000d40  54 6f 57 6f 72 6b 3a 6c  6f 6f 70 72 25 3d 77 6f  |ToWork:loopr%=wo|
00000d50  72 6b 78 25 3a 70 6c 6f  6f 70 72 25 3d a4 57 6f  |rkx%:ploopr%=.Wo|
00000d60  72 6b 54 6f 50 74 72 28  6c 6f 6f 70 72 25 29 0d  |rkToPtr(loopr%).|
00000d70  05 0a 0d e7 20 73 68 25  80 38 20 8c 0d 05 14 18  |.... sh%.8 .....|
00000d80  70 6c 6f 6f 70 6c 25 3d  70 6c 6f 6f 70 72 25 2d  |ploopl%=ploopr%-|
00000d90  64 6c 70 25 0d 05 1e 28  e7 20 70 6c 6f 6f 70 6c  |dlp%...(. ploopl|
00000da0  25 3c 30 20 8c 20 70 6c  6f 6f 70 6c 25 3d 30 3a  |%<0 . ploopl%=0:|
00000db0  70 6c 6f 6f 70 72 25 3d  64 6c 70 25 0d 05 28 05  |ploopr%=dlp%..(.|
00000dc0  cd 0d 05 32 39 6c 6f 6f  70 6c 25 3d a4 50 74 72  |...29loopl%=.Ptr|
00000dd0  54 6f 57 6f 72 6b 28 70  6c 6f 6f 70 6c 25 29 3a  |ToWork(ploopl%):|
00000de0  6c 6f 6f 70 72 25 3d a4  50 74 72 54 6f 57 6f 72  |loopr%=.PtrToWor|
00000df0  6b 28 70 6c 6f 6f 70 72  25 29 0d 05 3c 35 e7 20  |k(ploopr%)..<5. |
00000e00  70 6c 6f 6f 70 72 25 3c  70 6c 6f 6f 70 6c 25 20  |ploopr%<ploopl% |
00000e10  8c 20 70 6c 6f 6f 70 6c  25 3d 70 6c 6f 6f 70 72  |. ploopl%=ploopr|
00000e20  25 3a 6c 6f 6f 70 6c 25  3d 6c 6f 6f 70 72 25 0d  |%:loopl%=loopr%.|
00000e30  05 46 36 e7 20 6c 6f 6f  70 6c 25 3c 3e 6f 6c 6f  |.F6. loopl%<>olo|
00000e40  6f 70 6c 25 20 84 20 6c  6f 6f 70 72 25 3c 3e 6f  |opl% . loopr%<>o|
00000e50  6c 6f 6f 70 72 25 20 8c  20 f2 55 70 64 61 74 65  |loopr% . .Update|
00000e60  4c 6f 6f 70 50 0d 05 50  05 e1 0d 05 5a 04 0d 05  |LoopP..P....Z...|
00000e70  64 13 dd f2 52 65 64 72  61 77 5f 57 69 6e 64 6f  |d...Redraw_Windo|
00000e80  77 0d 05 6e 29 c8 99 22  57 69 6d 70 5f 52 65 64  |w..n).."Wimp_Red|
00000e90  72 61 77 57 69 6e 64 6f  77 22 2c 2c 70 6f 6c 6c  |rawWindow",,poll|
00000ea0  65 64 62 25 b8 6d 6f 72  65 25 0d 05 78 13 c8 8e  |edb%.more%..x...|
00000eb0  20 70 6f 6c 6c 65 64 62  25 21 30 20 ca 0d 05 82  | polledb%!0 ....|
00000ec0  19 c9 20 77 77 6f 72 6b  68 25 3a f2 52 65 64 72  |.. wworkh%:.Redr|
00000ed0  61 77 57 6f 72 6b 0d 05  8c 19 c9 20 77 73 6f 6e  |awWork..... wson|
00000ee0  67 68 25 3a f2 52 65 64  72 61 77 53 6f 6e 67 0d  |gh%:.RedrawSong.|
00000ef0  05 96 11 7f 3a f2 4a 75  73 74 52 65 64 72 61 77  |....:.JustRedraw|
00000f00  0d 05 a0 05 cb 0d 05 aa  05 e1 0d 05 b4 04 0d 05  |................|
00000f10  be 10 dd f2 52 65 64 72  61 77 57 6f 72 6b 0d 05  |....RedrawWork..|
00000f20  c8 0a 6c 68 25 3d 33 32  0d 05 d2 12 6d 69 25 3d  |..lh%=32....mi%=|
00000f30  70 6f 6c 6c 65 64 62 25  21 34 0d 05 dc 13 6d 61  |polledb%!4....ma|
00000f40  25 3d 70 6f 6c 6c 65 64  62 25 21 31 32 0d 05 e6  |%=polledb%!12...|
00000f50  11 79 25 3d 70 6f 6c 6c  65 64 62 25 21 38 0d 05  |.y%=polledb%!8..|
00000f60  f0 27 73 6c 25 3d 70 6f  6c 6c 65 64 62 25 21 34  |.'sl%=polledb%!4|
00000f70  2d 70 6f 6c 6c 65 64 62  25 21 32 30 2b 73 65 6c  |-polledb%!20+sel|
00000f80  65 63 74 6c 25 0d 05 fa  27 73 72 25 3d 70 6f 6c  |ectl%...'sr%=pol|
00000f90  6c 65 64 62 25 21 34 2d  70 6f 6c 6c 65 64 62 25  |ledb%!4-polledb%|
00000fa0  21 32 30 2b 73 65 6c 65  63 74 72 25 0d 06 04 25  |!20+selectr%...%|
00000fb0  6c 6c 25 3d 70 6f 6c 6c  65 64 62 25 21 34 2d 70  |ll%=polledb%!4-p|
00000fc0  6f 6c 6c 65 64 62 25 21  32 30 2b 6c 6f 6f 70 6c  |olledb%!20+loopl|
00000fd0  25 0d 06 0e 25 6c 72 25  3d 70 6f 6c 6c 65 64 62  |%...%lr%=polledb|
00000fe0  25 21 34 2d 70 6f 6c 6c  65 64 62 25 21 32 30 2b  |%!4-polledb%!20+|
00000ff0  6c 6f 6f 70 72 25 0d 06  18 1b 6c 6c 70 25 3d a4  |loopr%....llp%=.|
00001000  50 74 72 54 6f 57 6f 72  6b 28 70 6c 61 79 70 25  |PtrToWork(playp%|
00001010  29 0d 06 22 25 77 6c 6c  70 25 3d 70 6f 6c 6c 65  |).."%wllp%=polle|
00001020  64 62 25 21 34 2d 70 6f  6c 6c 65 64 62 25 21 32  |db%!4-polledb%!2|
00001030  30 2b 6c 6c 70 25 0d 06  2c 0a 64 72 25 3d 2d 31  |0+llp%..,.dr%=-1|
00001040  0d 06 36 0b 6c 64 72 25  3d 2d 31 0d 06 40 0b 72  |..6.ldr%=-1..@.r|
00001050  64 72 25 3d 2d 31 0d 06  4a 0b 64 72 70 25 3d 2d  |dr%=-1..J.drp%=-|
00001060  31 0d 06 54 2d e7 20 73  6c 25 3c 70 6f 6c 6c 65  |1..T-. sl%<polle|
00001070  64 62 25 21 34 20 80 20  73 72 25 3c 70 6f 6c 6c  |db%!4 . sr%<poll|
00001080  65 64 62 25 21 34 20 8c  20 64 72 25 3d 30 0d 06  |edb%!4 . dr%=0..|
00001090  5e 2f e7 20 73 6c 25 3e  70 6f 6c 6c 65 64 62 25  |^/. sl%>polledb%|
000010a0  21 31 32 20 80 20 73 72  25 3e 70 6f 6c 6c 65 64  |!12 . sr%>polled|
000010b0  62 25 21 31 32 20 8c 20  64 72 25 3d 30 0d 06 68  |b%!12 . dr%=0..h|
000010c0  2b e7 20 73 6c 25 3c 70  6f 6c 6c 65 64 62 25 21  |+. sl%<polledb%!|
000010d0  34 20 80 20 64 72 25 20  8c 20 73 6c 25 3d 70 6f  |4 . dr% . sl%=po|
000010e0  6c 6c 65 64 62 25 21 34  0d 06 72 2d e7 20 73 72  |lledb%!4..r-. sr|
000010f0  25 3e 70 6f 6c 6c 65 64  62 25 21 31 32 20 80 20  |%>polledb%!12 . |
00001100  64 72 25 20 8c 20 73 72  25 3d 70 6f 6c 6c 65 64  |dr% . sr%=polled|
00001110  62 25 21 31 32 0d 06 7c  35 e7 20 6c 6c 25 3c 70  |b%!12..|5. ll%<p|
00001120  6f 6c 6c 65 64 62 25 21  34 2d 33 32 20 84 20 6c  |olledb%!4-32 . l|
00001130  6c 25 3e 70 6f 6c 6c 65  64 62 25 21 31 32 2b 33  |l%>polledb%!12+3|
00001140  32 20 8c 20 6c 64 72 25  3d 30 0d 06 86 35 e7 20  |2 . ldr%=0...5. |
00001150  6c 72 25 3c 70 6f 6c 6c  65 64 62 25 21 34 2d 33  |lr%<polledb%!4-3|
00001160  32 20 84 20 6c 72 25 3e  70 6f 6c 6c 65 64 62 25  |2 . lr%>polledb%|
00001170  21 31 32 2b 33 32 20 8c  20 72 64 72 25 3d 30 0d  |!12+32 . rdr%=0.|
00001180  06 90 37 e7 20 77 6c 6c  70 25 3c 70 6f 6c 6c 65  |..7. wllp%<polle|
00001190  64 62 25 21 34 2d 34 20  84 20 77 6c 6c 70 25 3e  |db%!4-4 . wllp%>|
000011a0  70 6f 6c 6c 65 64 62 25  21 31 32 2b 34 20 8c 20  |polledb%!12+4 . |
000011b0  64 72 70 25 3d 30 0d 06  9a 04 0d 06 a4 32 41 25  |drp%=0.......2A%|
000011c0  3d 73 74 61 72 74 73 61  6d 70 6c 65 25 2b 73 61  |=startsample%+sa|
000011d0  6d 70 6c 65 6c 65 6e 25  2a 28 70 6f 6c 6c 65 64  |mplelen%*(polled|
000011e0  62 25 21 32 30 29 2f 6d  61 78 78 25 0d 06 ae 0f  |b%!20)/maxx%....|
000011f0  42 25 3d 64 69 73 70 6c  65 6e 25 0d 06 b8 3b 43  |B%=displen%...;C|
00001200  25 3d 35 31 32 2a 28 73  74 61 72 74 73 61 6d 70  |%=512*(startsamp|
00001210  6c 65 25 2b 73 61 6d 70  6c 65 6c 65 6e 25 2a 28  |le%+samplelen%*(|
00001220  70 6f 6c 6c 65 64 62 25  21 32 30 29 2f 6d 61 78  |polledb%!20)/max|
00001230  78 25 2d 41 25 29 0d 06  c2 11 44 25 3d 70 6f 6c  |x%-A%)....D%=pol|
00001240  6c 65 64 62 25 21 34 0d  06 cc 11 45 25 3d 70 6f  |ledb%!4....E%=po|
00001250  6c 6c 65 64 62 25 21 38  0d 06 d6 0d 46 25 3d 73  |lledb%!8....F%=s|
00001260  74 79 70 65 25 0d 06 e0  13 47 25 3d 73 74 61 72  |type%....G%=star|
00001270  74 73 61 6d 70 6c 65 25  0d 06 ea 04 0d 06 f4 0c  |tsample%........|
00001280  c8 95 20 6d 6f 72 65 25  0d 06 fe 18 c8 99 22 57  |.. more%......"W|
00001290  69 6d 70 5f 53 65 74 43  6f 6c 6f 75 72 22 2c 31  |imp_SetColour",1|
000012a0  0d 07 08 1f 86 20 6d 69  25 2c 79 25 2b 6c 68 25  |..... mi%,y%+lh%|
000012b0  2a 31 2c 6d 61 25 2c 79  25 2b 6c 68 25 2a 31 0d  |*1,ma%,y%+lh%*1.|
000012c0  07 12 1f 86 20 6d 69 25  2c 79 25 2b 6c 68 25 2a  |.... mi%,y%+lh%*|
000012d0  32 2c 6d 61 25 2c 79 25  2b 6c 68 25 2a 32 0d 07  |2,ma%,y%+lh%*2..|
000012e0  1c 1f 86 20 6d 69 25 2c  79 25 2b 6c 68 25 2a 33  |... mi%,y%+lh%*3|
000012f0  2c 6d 61 25 2c 79 25 2b  6c 68 25 2a 33 0d 07 26  |,ma%,y%+lh%*3..&|
00001300  1f 86 20 6d 69 25 2c 79  25 2b 6c 68 25 2a 35 2c  |.. mi%,y%+lh%*5,|
00001310  6d 61 25 2c 79 25 2b 6c  68 25 2a 35 0d 07 30 1f  |ma%,y%+lh%*5..0.|
00001320  86 20 6d 69 25 2c 79 25  2b 6c 68 25 2a 36 2c 6d  |. mi%,y%+lh%*6,m|
00001330  61 25 2c 79 25 2b 6c 68  25 2a 36 0d 07 3a 1f 86  |a%,y%+lh%*6..:..|
00001340  20 6d 69 25 2c 79 25 2b  6c 68 25 2a 37 2c 6d 61  | mi%,y%+lh%*7,ma|
00001350  25 2c 79 25 2b 6c 68 25  2a 37 0d 07 44 18 c8 99  |%,y%+lh%*7..D...|
00001360  22 57 69 6d 70 5f 53 65  74 43 6f 6c 6f 75 72 22  |"Wimp_SetColour"|
00001370  2c 33 0d 07 4e 1f 86 20  6d 69 25 2c 79 25 2b 6c  |,3..N.. mi%,y%+l|
00001380  68 25 2a 34 2c 6d 61 25  2c 79 25 2b 6c 68 25 2a  |h%*4,ma%,y%+lh%*|
00001390  34 0d 07 58 18 c8 99 22  57 69 6d 70 5f 53 65 74  |4..X..."Wimp_Set|
000013a0  43 6f 6c 6f 75 72 22 2c  37 0d 07 62 1f 86 20 6d  |Colour",7..b.. m|
000013b0  69 25 2c 79 25 2b 6c 68  25 2a 38 2c 6d 61 25 2c  |i%,y%+lh%*8,ma%,|
000013c0  79 25 2b 6c 68 25 2a 38  0d 07 6c 0b d6 72 65 64  |y%+lh%*8..l..red|
000013d0  72 77 6b 0d 07 76 0c e7  20 6c 64 72 25 20 8c 0d  |rwk..v.. ldr% ..|
000013e0  07 80 0c f2 49 6e 76 43  6f 6c 32 0d 07 8a 27 86  |....InvCol2...'.|
000013f0  20 6c 6c 25 2c 70 6f 6c  6c 65 64 62 25 21 38 2c  | ll%,polledb%!8,|
00001400  6c 6c 25 2c 70 6f 6c 6c  65 64 62 25 21 38 2b 32  |ll%,polledb%!8+2|
00001410  35 36 0d 07 94 18 ec 20  6c 6c 25 2c 70 6f 6c 6c  |56..... ll%,poll|
00001420  65 64 62 25 21 38 2b 32  36 30 0d 07 9e 1a ec 20  |edb%!8+260..... |
00001430  6c 6c 25 2b 38 2c 70 6f  6c 6c 65 64 62 25 21 38  |ll%+8,polledb%!8|
00001440  2b 32 38 30 0d 07 a8 1d  f0 20 38 35 2c 6c 6c 25  |+280..... 85,ll%|
00001450  2d 38 2c 70 6f 6c 6c 65  64 62 25 21 38 2b 32 38  |-8,polledb%!8+28|
00001460  30 0d 07 b2 05 cd 0d 07  bc 0c e7 20 72 64 72 25  |0.......... rdr%|
00001470  20 8c 0d 07 c6 0c f2 49  6e 76 43 6f 6c 33 0d 07  | ......InvCol3..|
00001480  d0 27 86 20 6c 72 25 2c  70 6f 6c 6c 65 64 62 25  |.'. lr%,polledb%|
00001490  21 38 2c 6c 72 25 2c 70  6f 6c 6c 65 64 62 25 21  |!8,lr%,polledb%!|
000014a0  38 2b 32 35 36 0d 07 da  18 ec 20 6c 72 25 2c 70  |8+256..... lr%,p|
000014b0  6f 6c 6c 65 64 62 25 21  38 2b 32 36 30 0d 07 e4  |olledb%!8+260...|
000014c0  1a ec 20 6c 72 25 2b 38  2c 70 6f 6c 6c 65 64 62  |.. lr%+8,polledb|
000014d0  25 21 38 2b 32 38 30 0d  07 ee 1d f0 20 38 35 2c  |%!8+280..... 85,|
000014e0  6c 72 25 2d 38 2c 70 6f  6c 6c 65 64 62 25 21 38  |lr%-8,polledb%!8|
000014f0  2b 32 38 30 0d 07 f8 05  cd 0d 08 02 2d e7 20 28  |+280........-. (|
00001500  73 65 6c 65 63 74 6c 25  3c 3e 2d 31 29 20 80 20  |selectl%<>-1) . |
00001510  28 73 65 6c 65 63 74 72  25 3c 3e 2d 31 29 20 80  |(selectr%<>-1) .|
00001520  20 64 72 25 20 8c 0d 08  0c 0b f2 49 6e 76 43 6f  | dr% ......InvCo|
00001530  6c 0d 08 16 24 c8 93 20  c8 90 20 73 6c 25 2c 70  |l...$.. .. sl%,p|
00001540  6f 6c 6c 65 64 62 25 21  38 2c 73 72 25 2d 73 6c  |olledb%!8,sr%-sl|
00001550  25 2c 32 35 32 0d 08 20  05 cd 0d 08 2a 1b e7 20  |%,252.. ....*.. |
00001560  28 70 6c 61 79 70 25 3c  3e 2d 31 29 20 80 20 64  |(playp%<>-1) . d|
00001570  72 70 25 20 8c 0d 08 34  0b f2 49 6e 76 43 6f 6c  |rp% ...4..InvCol|
00001580  0d 08 3e 2b 86 20 77 6c  6c 70 25 2c 70 6f 6c 6c  |..>+. wllp%,poll|
00001590  65 64 62 25 21 38 2c 77  6c 6c 70 25 2c 70 6f 6c  |edb%!8,wllp%,pol|
000015a0  6c 65 64 62 25 21 38 2b  32 38 38 0d 08 48 05 cd  |ledb%!8+288..H..|
000015b0  0d 08 52 29 c8 99 22 57  69 6d 70 5f 47 65 74 52  |..R).."Wimp_GetR|
000015c0  65 63 74 61 6e 67 6c 65  22 2c 2c 70 6f 6c 6c 65  |ectangle",,polle|
000015d0  64 62 25 b8 6d 6f 72 65  25 0d 08 5c 05 ce 0d 08  |db%.more%..\....|
000015e0  66 05 e1 0d 08 70 04 0d  08 7a 10 dd f2 52 65 64  |f....p...z...Red|
000015f0  72 61 77 53 6f 6e 67 0d  08 84 1e 7a 78 25 3d 70  |rawSong....zx%=p|
00001600  6f 6c 6c 65 64 62 25 21  34 2d 70 6f 6c 6c 65 64  |olledb%!4-polled|
00001610  62 25 21 32 30 0d 08 8e  22 7a 79 25 3d 70 6f 6c  |b%!20..."zy%=pol|
00001620  6c 65 64 62 25 21 31 36  2d 70 6f 6c 6c 65 64 62  |ledb%!16-polledb|
00001630  25 21 32 34 2d 39 36 0d  08 98 0c c8 95 20 6d 6f  |%!24-96...... mo|
00001640  72 65 25 0d 08 a2 18 c8  99 22 57 69 6d 70 5f 53  |re%......"Wimp_S|
00001650  65 74 43 6f 6c 6f 75 72  22 2c 33 0d 08 ac 2b 86  |etColour",3...+.|
00001660  20 7a 78 25 2b 37 34 2c  70 6f 6c 6c 65 64 62 25  | zx%+74,polledb%|
00001670  21 33 32 2c 7a 78 25 2b  37 34 2c 70 6f 6c 6c 65  |!32,zx%+74,polle|
00001680  64 62 25 21 34 30 0d 08  b6 2b 86 20 7a 78 25 2b  |db%!40...+. zx%+|
00001690  37 36 2c 70 6f 6c 6c 65  64 62 25 21 33 32 2c 7a  |76,polledb%!32,z|
000016a0  78 25 2b 37 36 2c 70 6f  6c 6c 65 64 62 25 21 34  |x%+76,polledb%!4|
000016b0  30 0d 08 c0 2d 86 20 7a  78 25 2b 32 34 36 2c 70  |0...-. zx%+246,p|
000016c0  6f 6c 6c 65 64 62 25 21  33 32 2c 7a 78 25 2b 32  |olledb%!32,zx%+2|
000016d0  34 36 2c 70 6f 6c 6c 65  64 62 25 21 34 30 0d 08  |46,polledb%!40..|
000016e0  ca 2d 86 20 7a 78 25 2b  32 34 38 2c 70 6f 6c 6c  |.-. zx%+248,poll|
000016f0  65 64 62 25 21 33 32 2c  7a 78 25 2b 32 34 38 2c  |edb%!32,zx%+248,|
00001700  70 6f 6c 6c 65 64 62 25  21 34 30 0d 08 d4 2d 86  |polledb%!40...-.|
00001710  20 7a 78 25 2b 33 37 30  2c 70 6f 6c 6c 65 64 62  | zx%+370,polledb|
00001720  25 21 33 32 2c 7a 78 25  2b 33 37 30 2c 70 6f 6c  |%!32,zx%+370,pol|
00001730  6c 65 64 62 25 21 34 30  0d 08 de 2d 86 20 7a 78  |ledb%!40...-. zx|
00001740  25 2b 33 37 32 2c 70 6f  6c 6c 65 64 62 25 21 33  |%+372,polledb%!3|
00001750  32 2c 7a 78 25 2b 33 37  32 2c 70 6f 6c 6c 65 64  |2,zx%+372,polled|
00001760  62 25 21 34 30 0d 08 e8  2d 86 20 7a 78 25 2b 34  |b%!40...-. zx%+4|
00001770  39 34 2c 70 6f 6c 6c 65  64 62 25 21 33 32 2c 7a  |94,polledb%!32,z|
00001780  78 25 2b 34 39 34 2c 70  6f 6c 6c 65 64 62 25 21  |x%+494,polledb%!|
00001790  34 30 0d 08 f2 2d 86 20  7a 78 25 2b 34 39 36 2c  |40...-. zx%+496,|
000017a0  70 6f 6c 6c 65 64 62 25  21 33 32 2c 7a 78 25 2b  |polledb%!32,zx%+|
000017b0  34 39 36 2c 70 6f 6c 6c  65 64 62 25 21 34 30 0d  |496,polledb%!40.|
000017c0  08 fc 04 0d 09 06 18 c8  99 22 57 69 6d 70 5f 53  |........."Wimp_S|
000017d0  65 74 43 6f 6c 6f 75 72  22 2c 37 0d 09 10 1c 73  |etColour",7....s|
000017e0  6c 25 3d 28 7a 79 25 2d  70 6f 6c 6c 65 64 62 25  |l%=(zy%-polledb%|
000017f0  21 34 30 29 2f 33 36 0d  09 1a 1e 73 72 25 3d 31  |!40)/36....sr%=1|
00001800  2b 28 7a 79 25 2d 70 6f  6c 6c 65 64 62 25 21 33  |+(zy%-polledb%!3|
00001810  32 29 2f 33 36 0d 09 24  13 e7 20 73 6c 25 3c 30  |2)/36..$.. sl%<0|
00001820  20 8c 20 73 6c 25 3d 30  0d 09 2e 13 e7 20 73 72  | . sl%=0..... sr|
00001830  25 3c 30 20 8c 20 73 72  25 3d 30 0d 09 38 21 e7  |%<0 . sr%=0..8!.|
00001840  20 73 6c 25 3e 73 6f 6e  67 6c 65 6e 25 20 8c 20  | sl%>songlen% . |
00001850  73 6c 25 3d 73 6f 6e 67  6c 65 6e 25 0d 09 42 21  |sl%=songlen%..B!|
00001860  e7 20 73 72 25 3e 73 6f  6e 67 6c 65 6e 25 20 8c  |. sr%>songlen% .|
00001870  20 73 72 25 3d 73 6f 6e  67 6c 65 6e 25 0d 09 4c  | sr%=songlen%..L|
00001880  0e c8 95 20 73 6c 25 3c  73 72 25 0d 09 56 16 ec  |... sl%<sr%..V..|
00001890  20 7a 78 25 2b 36 2c 7a  79 25 2d 33 36 2a 73 6c  | zx%+6,zy%-36*sl|
000018a0  25 0d 09 60 0f f1 20 c3  28 73 6c 25 2b 31 29 3b  |%..`.. .(sl%+1);|
000018b0  0d 09 6a 17 ec 20 7a 78  25 2b 38 32 2c 7a 79 25  |..j.. zx%+82,zy%|
000018c0  2d 33 36 2a 73 6c 25 0d  09 74 1b f1 20 24 28 73  |-36*sl%..t.. $(s|
000018d0  6f 6e 67 73 74 61 72 74  25 2b 73 6c 25 2a 33 32  |ongstart%+sl%*32|
000018e0  29 3b 0d 09 7e 18 ec 20  7a 78 25 2b 32 35 34 2c  |);..~.. zx%+254,|
000018f0  7a 79 25 2d 33 36 2a 73  6c 25 0d 09 88 20 f1 20  |zy%-36*sl%... . |
00001900  c3 28 73 6f 6e 67 73 74  61 72 74 25 21 28 73 6c  |.(songstart%!(sl|
00001910  25 2a 33 32 2b 31 32 29  29 3b 0d 09 92 18 ec 20  |%*32+12));..... |
00001920  7a 78 25 2b 33 37 38 2c  7a 79 25 2d 33 36 2a 73  |zx%+378,zy%-36*s|
00001930  6c 25 0d 09 9c 20 f1 20  c3 28 73 6f 6e 67 73 74  |l%... . .(songst|
00001940  61 72 74 25 21 28 73 6c  25 2a 33 32 2b 31 36 29  |art%!(sl%*32+16)|
00001950  29 3b 0d 09 a6 18 ec 20  7a 78 25 2b 35 30 32 2c  |);..... zx%+502,|
00001960  7a 79 25 2d 33 36 2a 73  6c 25 0d 09 b0 20 f1 20  |zy%-36*sl%... . |
00001970  c3 28 73 6f 6e 67 73 74  61 72 74 25 21 28 73 6c  |.(songstart%!(sl|
00001980  25 2a 33 32 2b 32 30 29  29 3b 0d 09 ba 0a 73 6c  |%*32+20));....sl|
00001990  25 2b 3d 31 0d 09 c4 05  ce 0d 09 ce 29 c8 99 22  |%+=1........).."|
000019a0  57 69 6d 70 5f 47 65 74  52 65 63 74 61 6e 67 6c  |Wimp_GetRectangl|
000019b0  65 22 2c 2c 70 6f 6c 6c  65 64 62 25 b8 6d 6f 72  |e",,polledb%.mor|
000019c0  65 25 0d 09 d8 05 ce 0d  09 e2 05 e1 0d 09 ec 04  |e%..............|
000019d0  0d 09 f6 10 dd f2 4a 75  73 74 52 65 64 72 61 77  |......JustRedraw|
000019e0  0d 0a 00 0c c8 95 20 6d  6f 72 65 25 0d 0a 0a 29  |...... more%...)|
000019f0  c8 99 22 57 69 6d 70 5f  47 65 74 52 65 63 74 61  |.."Wimp_GetRecta|
00001a00  6e 67 6c 65 22 2c 2c 70  6f 6c 6c 65 64 62 25 b8  |ngle",,polledb%.|
00001a10  6d 6f 72 65 25 0d 0a 14  05 ce 0d 0a 1e 05 e1 0d  |more%...........|
00001a20  0a 28 04 0d 0a 32 0c dd  f2 49 6e 76 43 6f 6c 0d  |.(...2...InvCol.|
00001a30  0a 3c 26 c8 99 22 58 4f  53 5f 52 65 61 64 4d 6f  |.<&.."XOS_ReadMo|
00001a40  64 65 56 61 72 69 61 62  6c 65 22 2c 2d 31 2c 33  |deVariable",-1,3|
00001a50  b8 2c 2c 63 25 0d 0a 46  0b c8 8e 20 63 25 20 ca  |.,,c%..F... c% .|
00001a60  0d 0a 50 0c c9 20 31 3a  e6 33 2c 31 0d 0a 5a 0c  |..P.. 1:.3,1..Z.|
00001a70  c9 20 33 3a e6 33 2c 33  0d 0a 64 0d c9 20 31 35  |. 3:.3,3..d.. 15|
00001a80  3a e6 33 2c 37 0d 0a 6e  13 c9 20 36 33 3a e6 33  |:.3,7..n.. 63:.3|
00001a90  2c 36 33 20 c8 9c 20 30  0d 0a 78 0b 7f 3a e6 33  |,63 .. 0..x..:.3|
00001aa0  2c 36 33 0d 0a 82 05 cb  0d 0a 8c 05 e1 0d 0a 96  |,63.............|
00001ab0  04 0d 0a a0 0d dd f2 49  6e 76 43 6f 6c 32 0d 0a  |.......InvCol2..|
00001ac0  aa 26 c8 99 22 58 4f 53  5f 52 65 61 64 4d 6f 64  |.&.."XOS_ReadMod|
00001ad0  65 56 61 72 69 61 62 6c  65 22 2c 2d 31 2c 33 b8  |eVariable",-1,3.|
00001ae0  2c 2c 63 25 0d 0a b4 0b  c8 8e 20 63 25 20 ca 0d  |,,c%...... c% ..|
00001af0  0a be 0c c9 20 31 3a e6  33 2c 31 0d 0a c8 0c c9  |.... 1:.3,1.....|
00001b00  20 33 3a e6 33 2c 31 0d  0a d2 0e c9 20 31 35 3a  | 3:.3,1..... 15:|
00001b10  e6 33 2c 31 30 0d 0a dc  18 c9 20 36 33 3a e6 33  |.3,10..... 63:.3|
00001b20  2c 25 31 31 30 30 31 31  20 c8 9c 20 30 0d 0a e6  |,%110011 .. 0...|
00001b30  0b 7f 3a e6 33 2c 36 33  0d 0a f0 05 cb 0d 0a fa  |..:.3,63........|
00001b40  05 e1 0d 0b 04 04 0d 0b  0e 0d dd f2 49 6e 76 43  |............InvC|
00001b50  6f 6c 33 0d 0b 18 26 c8  99 22 58 4f 53 5f 52 65  |ol3...&.."XOS_Re|
00001b60  61 64 4d 6f 64 65 56 61  72 69 61 62 6c 65 22 2c  |adModeVariable",|
00001b70  2d 31 2c 33 b8 2c 2c 63  25 0d 0b 22 0b c8 8e 20  |-1,3.,,c%.."... |
00001b80  63 25 20 ca 0d 0b 2c 0c  c9 20 31 3a e6 33 2c 31  |c% ...,.. 1:.3,1|
00001b90  0d 0b 36 0c c9 20 33 3a  e6 33 2c 32 0d 0b 40 0e  |..6.. 3:.3,2..@.|
00001ba0  c9 20 31 35 3a e6 33 2c  31 31 0d 0b 4a 18 c9 20  |. 15:.3,11..J.. |
00001bb0  36 33 3a e6 33 2c 25 31  31 31 31 30 30 20 c8 9c  |63:.3,%111100 ..|
00001bc0  20 30 0d 0b 54 0b 7f 3a  e6 33 2c 36 33 0d 0b 5e  | 0..T..:.3,63..^|
00001bd0  05 cb 0d 0b 68 05 e1 0d  0b 72 04 0d 0b 7c 11 dd  |....h....r...|..|
00001be0  f2 4f 70 65 6e 5f 57 69  6e 64 6f 77 0d 0b 86 27  |.Open_Window...'|
00001bf0  e7 20 70 6f 6c 6c 65 64  62 25 21 30 3d 77 77 6f  |. polledb%!0=wwo|
00001c00  72 6b 68 25 20 8c 20 f2  4f 70 65 6e 5f 57 6f 72  |rkh% . .Open_Wor|
00001c10  6b 3a e1 0d 0b 90 27 e7  20 70 6f 6c 6c 65 64 62  |k:....'. polledb|
00001c20  25 21 30 3d 77 73 6f 6e  67 68 25 20 8c 20 f2 4f  |%!0=wsongh% . .O|
00001c30  70 65 6e 5f 53 6f 6e 67  3a e1 0d 0b 9a 5b e7 20  |pen_Song:....[. |
00001c40  70 6f 6c 6c 65 64 62 25  21 30 3d 77 70 6f 73 68  |polledb%!0=wposh|
00001c50  25 20 8c 20 70 6f 6c 6c  65 64 62 25 21 30 3d 77  |% . polledb%!0=w|
00001c60  77 6f 72 6b 68 25 3a c8  99 22 57 69 6d 70 5f 47  |workh%:.."Wimp_G|
00001c70  65 74 57 69 6e 64 6f 77  53 74 61 74 65 22 2c 2c  |etWindowState",,|
00001c80  70 6f 6c 6c 65 64 62 25  3a f2 4f 70 65 6e 5f 57  |polledb%:.Open_W|
00001c90  6f 72 6b 3a e1 0d 0b a4  64 e7 20 70 6f 6c 6c 65  |ork:....d. polle|
00001ca0  64 62 25 21 30 3d 77 73  6f 6e 67 70 61 6e 65 68  |db%!0=wsongpaneh|
00001cb0  25 20 8c 20 70 6f 6c 6c  65 64 62 25 21 30 3d 77  |% . polledb%!0=w|
00001cc0  73 6f 6e 67 70 61 6e 65  68 25 3a c8 99 22 57 69  |songpaneh%:.."Wi|
00001cd0  6d 70 5f 47 65 74 57 69  6e 64 6f 77 53 74 61 74  |mp_GetWindowStat|
00001ce0  65 22 2c 2c 70 6f 6c 6c  65 64 62 25 3a f2 4f 70  |e",,polledb%:.Op|
00001cf0  65 6e 5f 53 6f 6e 67 3a  e1 0d 0b ae 21 c8 99 22  |en_Song:....!.."|
00001d00  57 69 6d 70 5f 4f 70 65  6e 57 69 6e 64 6f 77 22  |Wimp_OpenWindow"|
00001d10  2c 2c 70 6f 6c 6c 65 64  62 25 0d 0b b8 05 e1 0d  |,,polledb%......|
00001d20  0b c2 04 0d 0b cc 0f dd  f2 4f 70 65 6e 5f 57 6f  |.........Open_Wo|
00001d30  72 6b 0d 0b d6 12 74 65  6d 70 25 21 30 3d 77 70  |rk....temp%!0=wp|
00001d40  6f 73 68 25 0d 0b e0 22  c8 99 22 57 69 6d 70 5f  |osh%...".."Wimp_|
00001d50  47 65 74 57 69 6e 64 6f  77 53 74 61 74 65 22 2c  |GetWindowState",|
00001d60  2c 74 65 6d 70 25 0d 0b  ea 12 41 25 3d 70 6f 6c  |,temp%....A%=pol|
00001d70  6c 65 64 62 25 21 32 38  0d 0b f4 16 70 6f 6c 6c  |ledb%!28....poll|
00001d80  65 64 62 25 21 32 38 3d  77 70 6f 73 68 25 0d 0b  |edb%!28=wposh%..|
00001d90  fe 21 c8 99 22 57 69 6d  70 5f 4f 70 65 6e 57 69  |.!.."Wimp_OpenWi|
00001da0  6e 64 6f 77 22 2c 2c 70  6f 6c 6c 65 64 62 25 0d  |ndow",,polledb%.|
00001db0  0c 08 25 c8 99 22 57 69  6d 70 5f 47 65 74 57 69  |..%.."Wimp_GetWi|
00001dc0  6e 64 6f 77 53 74 61 74  65 22 2c 2c 70 6f 6c 6c  |ndowState",,poll|
00001dd0  65 64 62 25 0d 0c 12 16  74 65 6d 70 25 21 34 3d  |edb%....temp%!4=|
00001de0  70 6f 6c 6c 65 64 62 25  21 34 0d 0c 1c 1a 74 65  |polledb%!4....te|
00001df0  6d 70 25 21 38 3d 70 6f  6c 6c 65 64 62 25 21 38  |mp%!8=polledb%!8|
00001e00  2d 31 30 30 0d 0c 26 19  74 65 6d 70 25 21 31 32  |-100..&.temp%!12|
00001e10  3d 74 65 6d 70 25 21 34  2b 31 30 32 34 0d 0c 30  |=temp%!4+1024..0|
00001e20  17 74 65 6d 70 25 21 31  36 3d 74 65 6d 70 25 21  |.temp%!16=temp%!|
00001e30  38 2b 35 36 0d 0c 3a 0f  74 65 6d 70 25 21 32 38  |8+56..:.temp%!28|
00001e40  3d 41 25 0d 0c 44 1e c8  99 22 57 69 6d 70 5f 4f  |=A%..D..."Wimp_O|
00001e50  70 65 6e 57 69 6e 64 6f  77 22 2c 2c 74 65 6d 70  |penWindow",,temp|
00001e60  25 0d 0c 4e 16 70 6f 6c  6c 65 64 62 25 21 32 38  |%..N.polledb%!28|
00001e70  3d 77 70 6f 73 68 25 0d  0c 58 21 c8 99 22 57 69  |=wposh%..X!.."Wi|
00001e80  6d 70 5f 4f 70 65 6e 57  69 6e 64 6f 77 22 2c 2c  |mp_OpenWindow",,|
00001e90  70 6f 6c 6c 65 64 62 25  0d 0c 62 05 e1 0d 0c 6c  |polledb%..b....l|
00001ea0  04 0d 0c 76 0f dd f2 4f  70 65 6e 5f 53 6f 6e 67  |...v...Open_Song|
00001eb0  0d 0c 80 17 74 65 6d 70  25 21 30 3d 77 73 6f 6e  |....temp%!0=wson|
00001ec0  67 70 61 6e 65 68 25 0d  0c 8a 22 c8 99 22 57 69  |gpaneh%...".."Wi|
00001ed0  6d 70 5f 47 65 74 57 69  6e 64 6f 77 53 74 61 74  |mp_GetWindowStat|
00001ee0  65 22 2c 2c 74 65 6d 70  25 0d 0c 94 12 41 25 3d  |e",,temp%....A%=|
00001ef0  70 6f 6c 6c 65 64 62 25  21 32 38 0d 0c 9e 1b 70  |polledb%!28....p|
00001f00  6f 6c 6c 65 64 62 25 21  32 38 3d 77 73 6f 6e 67  |olledb%!28=wsong|
00001f10  70 61 6e 65 68 25 0d 0c  a8 21 c8 99 22 57 69 6d  |paneh%...!.."Wim|
00001f20  70 5f 4f 70 65 6e 57 69  6e 64 6f 77 22 2c 2c 70  |p_OpenWindow",,p|
00001f30  6f 6c 6c 65 64 62 25 0d  0c b2 25 c8 99 22 57 69  |olledb%...%.."Wi|
00001f40  6d 70 5f 47 65 74 57 69  6e 64 6f 77 53 74 61 74  |mp_GetWindowStat|
00001f50  65 22 2c 2c 70 6f 6c 6c  65 64 62 25 0d 0c bc 16  |e",,polledb%....|
00001f60  74 65 6d 70 25 21 34 3d  70 6f 6c 6c 65 64 62 25  |temp%!4=polledb%|
00001f70  21 34 0d 0c c6 18 74 65  6d 70 25 21 31 32 3d 70  |!4....temp%!12=p|
00001f80  6f 6c 6c 65 64 62 25 21  31 32 0d 0c d0 18 74 65  |olledb%!12....te|
00001f90  6d 70 25 21 31 36 3d 70  6f 6c 6c 65 64 62 25 21  |mp%!16=polledb%!|
00001fa0  31 36 0d 0c da 1a 74 65  6d 70 25 21 38 3d 70 6f  |16....temp%!8=po|
00001fb0  6c 6c 65 64 62 25 21 31  36 2d 38 34 0d 0c e4 18  |lledb%!16-84....|
00001fc0  74 65 6d 70 25 21 32 30  3d 70 6f 6c 6c 65 64 62  |temp%!20=polledb|
00001fd0  25 21 32 30 0d 0c ee 0f  74 65 6d 70 25 21 32 38  |%!20....temp%!28|
00001fe0  3d 41 25 0d 0c f8 1e c8  99 22 57 69 6d 70 5f 4f  |=A%......"Wimp_O|
00001ff0  70 65 6e 57 69 6e 64 6f  77 22 2c 2c 74 65 6d 70  |penWindow",,temp|
00002000  25 0d 0d 02 1b 70 6f 6c  6c 65 64 62 25 21 32 38  |%....polledb%!28|
00002010  3d 77 73 6f 6e 67 70 61  6e 65 68 25 0d 0d 0c 21  |=wsongpaneh%...!|
00002020  c8 99 22 57 69 6d 70 5f  4f 70 65 6e 57 69 6e 64  |.."Wimp_OpenWind|
00002030  6f 77 22 2c 2c 70 6f 6c  6c 65 64 62 25 0d 0d 16  |ow",,polledb%...|
00002040  05 e1 0d 0d 20 04 0d 0d  2a 12 dd f2 43 6c 6f 73  |.... ...*...Clos|
00002050  65 5f 57 69 6e 64 6f 77  0d 0d 34 22 c8 99 22 57  |e_Window..4".."W|
00002060  69 6d 70 5f 43 6c 6f 73  65 57 69 6e 64 6f 77 22  |imp_CloseWindow"|
00002070  2c 2c 70 6f 6c 6c 65 64  62 25 0d 0d 3e 4b e7 20  |,,polledb%..>K. |
00002080  70 6f 6c 6c 65 64 62 25  21 30 3d 77 77 6f 72 6b  |polledb%!0=wwork|
00002090  68 25 20 8c 20 70 6f 6c  6c 65 64 62 25 21 30 3d  |h% . polledb%!0=|
000020a0  77 70 6f 73 68 25 3a c8  99 22 57 69 6d 70 5f 43  |wposh%:.."Wimp_C|
000020b0  6c 6f 73 65 57 69 6e 64  6f 77 22 2c 2c 70 6f 6c  |loseWindow",,pol|
000020c0  6c 65 64 62 25 0d 0d 48  50 e7 20 70 6f 6c 6c 65  |ledb%..HP. polle|
000020d0  64 62 25 21 30 3d 77 73  6f 6e 67 68 25 20 8c 20  |db%!0=wsongh% . |
000020e0  70 6f 6c 6c 65 64 62 25  21 30 3d 77 73 6f 6e 67  |polledb%!0=wsong|
000020f0  70 61 6e 65 68 25 3a c8  99 22 57 69 6d 70 5f 43  |paneh%:.."Wimp_C|
00002100  6c 6f 73 65 57 69 6e 64  6f 77 22 2c 2c 70 6f 6c  |loseWindow",,pol|
00002110  6c 65 64 62 25 0d 0d 52  05 e1 0d 0d 5c 04 0d 0d  |ledb%..R....\...|
00002120  66 11 dd f2 4d 6f 75 73  65 5f 43 6c 69 63 6b 0d  |f...Mouse_Click.|
00002130  0d 70 14 c8 8e 20 70 6f  6c 6c 65 64 62 25 21 31  |.p... polledb%!1|
00002140  32 20 ca 0d 0d 7a 18 c9  20 77 77 6f 72 6b 68 25  |2 ...z.. wworkh%|
00002150  3a f2 57 6f 72 6b 43 6c  69 63 6b 0d 0d 84 18 c9  |:.WorkClick.....|
00002160  20 77 65 63 68 6f 68 25  3a f2 45 63 68 6f 43 6c  | wechoh%:.EchoCl|
00002170  69 63 6b 0d 0d 8e 18 c9  20 77 66 61 64 65 68 25  |ick..... wfadeh%|
00002180  3a f2 46 61 64 65 43 6c  69 63 6b 0d 0d 98 1b c9  |:.FadeClick.....|
00002190  20 77 6b 65 79 62 6f 61  72 64 68 25 3a f2 4b 65  | wkeyboardh%:.Ke|
000021a0  79 43 6c 69 63 6b 0d 0d  a2 19 c9 20 77 73 61 76  |yClick..... wsav|
000021b0  65 68 25 3a f2 53 61 76  65 61 73 73 61 43 6c 0d  |eh%:.SaveassaCl.|
000021c0  0d ac 16 c9 20 77 70 6f  73 68 25 3a f2 50 6f 73  |.... wposh%:.Pos|
000021d0  43 6c 69 63 6b 0d 0d b6  18 c9 20 77 73 6f 6e 67  |Click..... wsong|
000021e0  68 25 3a f2 53 6f 6e 67  43 6c 69 63 6b 0d 0d c0  |h%:.SongClick...|
000021f0  14 c9 20 2d 32 3a f2 49  63 6f 6e 42 43 6c 69 63  |.. -2:.IconBClic|
00002200  6b 0d 0d ca 05 cb 0d 0d  d4 05 e1 0d 0d de 04 0d  |k...............|
00002210  0d e8 0f dd f2 53 6f 6e  67 43 6c 69 63 6b 0d 0d  |.....SongClick..|
00002220  f2 13 74 65 6d 70 25 21  30 3d 77 73 6f 6e 67 68  |..temp%!0=wsongh|
00002230  25 0d 0d fc 22 c8 99 22  57 69 6d 70 5f 47 65 74  |%...".."Wimp_Get|
00002240  57 69 6e 64 6f 77 53 74  61 74 65 22 2c 2c 74 65  |WindowState",,te|
00002250  6d 70 25 0d 0e 06 32 63  75 72 72 73 65 63 74 25  |mp%...2currsect%|
00002260  3d 28 74 65 6d 70 25 21  31 36 2d 74 65 6d 70 25  |=(temp%!16-temp%|
00002270  21 32 34 2d 39 36 2d 70  6f 6c 6c 65 64 62 25 21  |!24-96-polledb%!|
00002280  34 29 2f 33 36 0d 0e 10  1f e7 20 63 75 72 72 73  |4)/36..... currs|
00002290  65 63 74 25 3c 30 20 8c  20 63 75 72 72 73 65 63  |ect%<0 . currsec|
000022a0  74 25 3d 30 0d 0e 1a 2d  e7 20 63 75 72 72 73 65  |t%=0...-. currse|
000022b0  63 74 25 3e 73 6f 6e 67  6c 65 6e 25 20 8c 20 63  |ct%>songlen% . c|
000022c0  75 72 72 73 65 63 74 25  3d 73 6f 6e 67 6c 65 6e  |urrsect%=songlen|
000022d0  25 0d 0e 24 52 e7 20 63  75 72 72 73 65 63 74 25  |%..$R. currsect%|
000022e0  3d 73 6f 6e 67 6c 65 6e  25 20 8c 20 24 28 73 65  |=songlen% . $(se|
000022f0  63 74 6d 65 6e 75 25 29  3d 22 4c 6f 6f 70 22 20  |ctmenu%)="Loop" |
00002300  8b 20 24 73 65 63 74 6d  65 6e 75 25 3d 22 4c 6f  |. $sectmenu%="Lo|
00002310  6f 70 20 22 2b c3 28 63  75 72 72 73 65 63 74 25  |op "+.(currsect%|
00002320  2b 31 29 0d 0e 2e 13 c8  8e 20 70 6f 6c 6c 65 64  |+1)...... polled|
00002330  62 25 21 38 20 ca 0d 0e  38 76 c9 20 32 3a 6c 61  |b%!8 ...8v. 2:la|
00002340  73 74 6d 78 25 3d 70 6f  6c 6c 65 64 62 25 21 30  |stmx%=polledb%!0|
00002350  2d 36 34 3a 6c 61 73 74  6d 79 25 3d 70 6f 6c 6c  |-64:lastmy%=poll|
00002360  65 64 62 25 21 34 2b 31  36 3a 6c 61 73 74 6d 65  |edb%!4+16:lastme|
00002370  6e 75 25 3d 73 65 63 74  6d 65 6e 75 25 3a c8 99  |nu%=sectmenu%:..|
00002380  22 57 69 6d 70 5f 43 72  65 61 74 65 4d 65 6e 75  |"Wimp_CreateMenu|
00002390  22 2c 2c 6c 61 73 74 6d  65 6e 75 25 2c 6c 61 73  |",,lastmenu%,las|
000023a0  74 6d 78 25 2c 6c 61 73  74 6d 79 25 0d 0e 42 14  |tmx%,lastmy%..B.|
000023b0  c9 20 31 30 32 34 3a f2  45 64 69 74 53 65 63 74  |. 1024:.EditSect|
000023c0  0d 0e 4c 05 cb 0d 0e 56  05 e1 0d 0e 60 04 0d 0e  |..L....V....`...|
000023d0  6a 0e dd f2 45 64 69 74  53 65 63 74 0d 0e 74 1a  |j...EditSect..t.|
000023e0  e7 20 63 75 72 72 73 65  63 74 25 3c 73 6f 6e 67  |. currsect%<song|
000023f0  6c 65 6e 25 20 8c 0d 0e  7e 17 74 65 6d 70 25 21  |len% ...~.temp%!|
00002400  30 3d 77 73 6f 6e 67 70  61 6e 65 68 25 0d 0e 88  |0=wsongpaneh%...|
00002410  0d 74 65 6d 70 25 21 34  3d 35 0d 0e 92 20 c8 99  |.temp%!4=5... ..|
00002420  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
00002430  74 65 22 2c 2c 74 65 6d  70 25 0d 0e 9c 1e 24 28  |te",,temp%....$(|
00002440  74 65 6d 70 25 21 32 38  29 3d c3 28 63 75 72 72  |temp%!28)=.(curr|
00002450  73 65 63 74 25 2b 31 29  0d 0e a6 0d 74 65 6d 70  |sect%+1)....temp|
00002460  25 21 34 3d 36 0d 0e b0  20 c8 99 22 57 69 6d 70  |%!4=6... .."Wimp|
00002470  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
00002480  74 65 6d 70 25 0d 0e ba  2a 24 28 74 65 6d 70 25  |temp%...*$(temp%|
00002490  21 32 38 29 3d 24 28 73  6f 6e 67 73 74 61 72 74  |!28)=$(songstart|
000024a0  25 2b 63 75 72 72 73 65  63 74 25 2a 33 32 29 0d  |%+currsect%*32).|
000024b0  0e c4 0d 74 65 6d 70 25  21 34 3d 37 0d 0e ce 20  |...temp%!4=7... |
000024c0  c8 99 22 57 69 6d 70 5f  47 65 74 49 63 6f 6e 53  |.."Wimp_GetIconS|
000024d0  74 61 74 65 22 2c 2c 74  65 6d 70 25 0d 0e d8 2f  |tate",,temp%.../|
000024e0  24 28 74 65 6d 70 25 21  32 38 29 3d c3 28 73 6f  |$(temp%!28)=.(so|
000024f0  6e 67 73 74 61 72 74 25  21 28 63 75 72 72 73 65  |ngstart%!(currse|
00002500  63 74 25 2a 33 32 2b 31  32 29 29 0d 0e e2 0d 74  |ct%*32+12))....t|
00002510  65 6d 70 25 21 34 3d 38  0d 0e ec 20 c8 99 22 57  |emp%!4=8... .."W|
00002520  69 6d 70 5f 47 65 74 49  63 6f 6e 53 74 61 74 65  |imp_GetIconState|
00002530  22 2c 2c 74 65 6d 70 25  0d 0e f6 2f 24 28 74 65  |",,temp%.../$(te|
00002540  6d 70 25 21 32 38 29 3d  c3 28 73 6f 6e 67 73 74  |mp%!28)=.(songst|
00002550  61 72 74 25 21 28 63 75  72 72 73 65 63 74 25 2a  |art%!(currsect%*|
00002560  33 32 2b 31 36 29 29 0d  0f 00 0d 74 65 6d 70 25  |32+16))....temp%|
00002570  21 34 3d 39 0d 0f 0a 20  c8 99 22 57 69 6d 70 5f  |!4=9... .."Wimp_|
00002580  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |GetIconState",,t|
00002590  65 6d 70 25 0d 0f 14 2f  24 28 74 65 6d 70 25 21  |emp%.../$(temp%!|
000025a0  32 38 29 3d c3 28 73 6f  6e 67 73 74 61 72 74 25  |28)=.(songstart%|
000025b0  21 28 63 75 72 72 73 65  63 74 25 2a 33 32 2b 32  |!(currsect%*32+2|
000025c0  30 29 29 0d 0f 1e 28 70  6c 6f 6f 70 6c 25 3d 73  |0))...(ploopl%=s|
000025d0  6f 6e 67 73 74 61 72 74  25 21 28 63 75 72 72 73  |ongstart%!(currs|
000025e0  65 63 74 25 2a 33 32 2b  32 34 29 0d 0f 28 28 70  |ect%*32+24)..((p|
000025f0  6c 6f 6f 70 72 25 3d 73  6f 6e 67 73 74 61 72 74  |loopr%=songstart|
00002600  25 21 28 63 75 72 72 73  65 63 74 25 2a 33 32 2b  |%!(currsect%*32+|
00002610  32 38 29 0d 0f 32 1b e7  20 70 6c 6f 6f 70 6c 25  |28)..2.. ploopl%|
00002620  3c 30 20 8c 20 70 6c 6f  6f 70 6c 25 3d 30 0d 0f  |<0 . ploopl%=0..|
00002630  3c 1b e7 20 70 6c 6f 6f  70 72 25 3c 30 20 8c 20  |<.. ploopr%<0 . |
00002640  70 6c 6f 6f 70 72 25 3d  30 0d 0f 46 2d e7 20 70  |ploopr%=0..F-. p|
00002650  6c 6f 6f 70 6c 25 3e 73  61 6d 70 6c 65 6c 65 6e  |loopl%>samplelen|
00002660  25 20 8c 20 70 6c 6f 6f  70 6c 25 3d 73 61 6d 70  |% . ploopl%=samp|
00002670  6c 65 6c 65 6e 25 0d 0f  50 2d e7 20 70 6c 6f 6f  |lelen%..P-. ploo|
00002680  70 72 25 3e 73 61 6d 70  6c 65 6c 65 6e 25 20 8c  |pr%>samplelen% .|
00002690  20 70 6c 6f 6f 70 72 25  3d 73 61 6d 70 6c 65 6c  | ploopr%=samplel|
000026a0  65 6e 25 0d 0f 5a 1e 6c  6f 6f 70 6c 25 3d a4 50  |en%..Z.loopl%=.P|
000026b0  74 72 54 6f 57 6f 72 6b  28 70 6c 6f 6f 70 6c 25  |trToWork(ploopl%|
000026c0  29 0d 0f 64 1e 6c 6f 6f  70 72 25 3d a4 50 74 72  |)..d.loopr%=.Ptr|
000026d0  54 6f 57 6f 72 6b 28 70  6c 6f 6f 70 72 25 29 0d  |ToWork(ploopr%).|
000026e0  0f 6e 10 f2 55 70 64 61  74 65 4c 6f 6f 70 50 0d  |.n..UpdateLoopP.|
000026f0  0f 78 0f f2 52 64 53 6f  6e 67 50 61 6e 65 0d 0f  |.x..RdSongPane..|
00002700  82 24 c8 99 22 57 69 6d  70 5f 47 65 74 43 61 72  |.$.."Wimp_GetCar|
00002710  65 74 50 6f 73 69 74 69  6f 6e 22 2c 2c 74 65 6d  |etPosition",,tem|
00002720  70 25 0d 0f 8c 44 e7 20  28 74 65 6d 70 25 21 30  |p%...D. (temp%!0|
00002730  3d 77 73 6f 6e 67 70 61  6e 65 68 25 29 80 28 74  |=wsongpaneh%).(t|
00002740  65 6d 70 25 21 34 3c 3e  2d 31 29 20 8c 20 f2 53  |emp%!4<>-1) . .S|
00002750  65 74 57 49 43 28 74 65  6d 70 25 21 30 2c 74 65  |etWIC(temp%!0,te|
00002760  6d 70 25 21 34 29 0d 0f  96 0f 6f 73 70 69 74 63  |mp%!4)....ospitc|
00002770  68 25 3d 2d 31 0d 0f a0  05 cd 0d 0f aa 05 e1 0d  |h%=-1...........|
00002780  0f b4 04 0d 0f be 0e dd  f2 50 6f 73 43 6c 69 63  |.........PosClic|
00002790  6b 0d 0f c8 14 c8 8e 20  70 6f 6c 6c 65 64 62 25  |k...... polledb%|
000027a0  21 31 36 20 ca 0d 0f d2  2f c9 20 30 3a 70 64 69  |!16 ..../. 0:pdi|
000027b0  73 70 68 64 25 3d ac 20  70 64 69 73 70 68 64 25  |sphd%=. pdisphd%|
000027c0  3a 6f 6c 64 70 6f 73 25  3d 2d 31 3a f2 44 72 61  |:oldpos%=-1:.Dra|
000027d0  77 50 6f 73 0d 0f dc 10  c9 20 38 3a f2 50 6f 73  |wPos..... 8:.Pos|
000027e0  50 41 6c 6c 0d 0f e6 10  c9 20 39 3a f2 50 6f 73  |PAll..... 9:.Pos|
000027f0  50 53 65 6c 0d 0f f0 11  c9 20 31 30 3a f2 50 6f  |PSel..... 10:.Po|
00002800  73 50 57 69 6e 0d 0f fa  12 c9 20 31 32 3a f2 50  |sPWin..... 12:.P|
00002810  6f 73 50 53 74 6f 70 0d  10 04 05 cb 0d 10 0e 05  |osPStop.........|
00002820  e1 0d 10 18 04 0d 10 22  0d dd f2 50 6f 73 50 41  |......."...PosPA|
00002830  6c 6c 0d 10 2c 36 c8 99  22 53 46 58 4d 50 5f 53  |ll..,6.."SFXMP_S|
00002840  74 6f 70 22 2c 31 3a c8  99 22 53 46 58 4d 50 5f  |top",1:.."SFXMP_|
00002850  53 74 6f 70 22 2c 32 3a  c8 99 22 53 46 58 4d 50  |Stop",2:.."SFXMP|
00002860  5f 53 74 6f 70 22 2c 33  0d 10 36 19 c8 99 22 53  |_Stop",3..6..."S|
00002870  46 58 4d 50 5f 47 65 74  42 6c 6f 63 6b 22 b8 41  |FXMP_GetBlock".A|
00002880  25 0d 10 40 19 c8 99 22  53 46 58 4d 50 5f 47 65  |%..@..."SFXMP_Ge|
00002890  74 50 69 74 63 68 22 b8  42 25 0d 10 4a 0a 41 25  |tPitch".B%..J.A%|
000028a0  2b 3d 33 32 0d 10 54 0a  41 25 21 30 3d 30 0d 10  |+=32..T.A%!0=0..|
000028b0  5e 15 41 25 21 34 3d 73  74 61 72 74 73 61 6d 70  |^.A%!4=startsamp|
000028c0  6c 65 25 0d 10 68 0b 41  25 21 38 3d 42 25 0d 10  |le%..h.A%!8=B%..|
000028d0  72 14 41 25 21 31 32 3d  73 61 6d 70 6c 65 6c 65  |r.A%!12=samplele|
000028e0  6e 25 0d 10 7c 13 41 25  21 31 36 3d 73 74 79 70  |n%..|.A%!16=styp|
000028f0  65 25 3c 3c 38 0d 10 86  0b 41 25 21 32 30 3d 30  |e%<<8....A%!20=0|
00002900  0d 10 90 14 c8 99 22 53  46 58 4d 50 5f 50 6c 61  |......"SFXMP_Pla|
00002910  79 22 2c 31 0d 10 9a 05  e1 0d 10 a4 04 0d 10 ae  |y",1............|
00002920  0d dd f2 50 6f 73 50 53  65 6c 0d 10 b8 36 c8 99  |...PosPSel...6..|
00002930  22 53 46 58 4d 50 5f 53  74 6f 70 22 2c 31 3a c8  |"SFXMP_Stop",1:.|
00002940  99 22 53 46 58 4d 50 5f  53 74 6f 70 22 2c 32 3a  |."SFXMP_Stop",2:|
00002950  c8 99 22 53 46 58 4d 50  5f 53 74 6f 70 22 2c 33  |.."SFXMP_Stop",3|
00002960  0d 10 c2 15 e7 20 70 73  65 6c 65 63 74 6c 25 3c  |..... pselectl%<|
00002970  3e 2d 31 20 8c 0d 10 cc  19 c8 99 22 53 46 58 4d  |>-1 ......."SFXM|
00002980  50 5f 47 65 74 42 6c 6f  63 6b 22 b8 41 25 0d 10  |P_GetBlock".A%..|
00002990  d6 19 c8 99 22 53 46 58  4d 50 5f 47 65 74 50 69  |...."SFXMP_GetPi|
000029a0  74 63 68 22 b8 42 25 0d  10 e0 0a 41 25 2b 3d 33  |tch".B%....A%+=3|
000029b0  32 0d 10 ea 0a 41 25 21  30 3d 30 0d 10 f4 1f 41  |2....A%!0=0....A|
000029c0  25 21 34 3d 73 74 61 72  74 73 61 6d 70 6c 65 25  |%!4=startsample%|
000029d0  2b 70 73 65 6c 65 63 74  6c 25 0d 10 fe 0b 41 25  |+pselectl%....A%|
000029e0  21 38 3d 42 25 0d 11 08  1d 41 25 21 31 32 3d 70  |!8=B%....A%!12=p|
000029f0  73 65 6c 65 63 74 72 25  2d 70 73 65 6c 65 63 74  |selectr%-pselect|
00002a00  6c 25 0d 11 12 13 41 25  21 31 36 3d 73 74 79 70  |l%....A%!16=styp|
00002a10  65 25 3c 3c 38 0d 11 1c  0b 41 25 21 32 30 3d 30  |e%<<8....A%!20=0|
00002a20  0d 11 26 14 c8 99 22 53  46 58 4d 50 5f 50 6c 61  |..&..."SFXMP_Pla|
00002a30  79 22 2c 31 0d 11 30 05  cd 0d 11 3a 05 e1 0d 11  |y",1..0....:....|
00002a40  44 04 0d 11 4e 0d dd f2  50 6f 73 50 57 69 6e 0d  |D...N...PosPWin.|
00002a50  11 58 36 c8 99 22 53 46  58 4d 50 5f 53 74 6f 70  |.X6.."SFXMP_Stop|
00002a60  22 2c 31 3a c8 99 22 53  46 58 4d 50 5f 53 74 6f  |",1:.."SFXMP_Sto|
00002a70  70 22 2c 32 3a c8 99 22  53 46 58 4d 50 5f 53 74  |p",2:.."SFXMP_St|
00002a80  6f 70 22 2c 33 0d 11 62  13 74 65 6d 70 25 21 30  |op",3..b.temp%!0|
00002a90  3d 77 77 6f 72 6b 68 25  0d 11 6c 22 c8 99 22 57  |=wworkh%..l".."W|
00002aa0  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
00002ab0  74 65 22 2c 2c 74 65 6d  70 25 0d 11 76 1b 42 25  |te",,temp%..v.B%|
00002ac0  3d a4 57 6f 72 6b 54 6f  50 74 72 28 74 65 6d 70  |=.WorkToPtr(temp|
00002ad0  25 21 32 30 29 0d 11 80  20 43 25 3d a4 57 6f 72  |%!20)... C%=.Wor|
00002ae0  6b 54 6f 50 74 72 28 74  65 6d 70 25 21 32 30 2b  |kToPtr(temp%!20+|
00002af0  31 30 32 34 29 0d 11 8a  19 c8 99 22 53 46 58 4d  |1024)......"SFXM|
00002b00  50 5f 47 65 74 42 6c 6f  63 6b 22 b8 41 25 0d 11  |P_GetBlock".A%..|
00002b10  94 19 c8 99 22 53 46 58  4d 50 5f 47 65 74 50 69  |...."SFXMP_GetPi|
00002b20  74 63 68 22 b8 45 25 0d  11 9e 0a 41 25 2b 3d 33  |tch".E%....A%+=3|
00002b30  32 0d 11 a8 0a 41 25 21  30 3d 30 0d 11 b2 18 41  |2....A%!0=0....A|
00002b40  25 21 34 3d 73 74 61 72  74 73 61 6d 70 6c 65 25  |%!4=startsample%|
00002b50  2b 42 25 0d 11 bc 0b 41  25 21 38 3d 45 25 0d 11  |+B%....A%!8=E%..|
00002b60  c6 0f 41 25 21 31 32 3d  43 25 2d 42 25 0d 11 d0  |..A%!12=C%-B%...|
00002b70  13 41 25 21 31 36 3d 73  74 79 70 65 25 3c 3c 38  |.A%!16=stype%<<8|
00002b80  0d 11 da 0b 41 25 21 32  30 3d 30 0d 11 e4 14 c8  |....A%!20=0.....|
00002b90  99 22 53 46 58 4d 50 5f  50 6c 61 79 22 2c 31 0d  |."SFXMP_Play",1.|
00002ba0  11 ee 05 e1 0d 11 f8 04  0d 12 02 0e dd f2 50 6f  |..............Po|
00002bb0  73 50 53 74 6f 70 0d 12  0c 36 c8 99 22 53 46 58  |sPStop...6.."SFX|
00002bc0  4d 50 5f 53 74 6f 70 22  2c 31 3a c8 99 22 53 46  |MP_Stop",1:.."SF|
00002bd0  58 4d 50 5f 53 74 6f 70  22 2c 32 3a c8 99 22 53  |XMP_Stop",2:.."S|
00002be0  46 58 4d 50 5f 53 74 6f  70 22 2c 33 0d 12 16 05  |FXMP_Stop",3....|
00002bf0  e1 0d 12 20 04 0d 12 2a  10 dd f2 53 61 76 65 61  |... ...*...Savea|
00002c00  73 73 61 43 6c 0d 12 34  1f e7 20 70 6f 6c 6c 65  |ssaCl..4.. polle|
00002c10  64 62 25 21 31 36 3d 30  20 8c 20 f2 44 72 61 67  |db%!16=0 . .Drag|
00002c20  53 61 76 65 0d 12 3e 15  e7 20 70 6f 6c 6c 65 64  |Save..>.. polled|
00002c30  62 25 21 31 36 3d 32 20  8c 0d 12 48 13 74 65 6d  |b%!16=2 ...H.tem|
00002c40  70 25 21 30 3d 77 73 61  76 65 68 25 0d 12 52 0d  |p%!0=wsaveh%..R.|
00002c50  74 65 6d 70 25 21 34 3d  31 0d 12 5c 20 c8 99 22  |temp%!4=1..\ .."|
00002c60  57 69 6d 70 5f 47 65 74  49 63 6f 6e 53 74 61 74  |Wimp_GetIconStat|
00002c70  65 22 2c 2c 74 65 6d 70  25 0d 12 66 15 66 24 3d  |e",,temp%..f.f$=|
00002c80  24 28 21 28 74 65 6d 70  25 2b 32 38 29 29 0d 12  |$(!(temp%+28))..|
00002c90  70 23 e7 20 28 a7 66 24  2c 22 2e 22 29 3d 30 29  |p#. (.f$,".")=0)|
00002ca0  20 80 20 28 a7 66 24 2c  22 3a 22 29 3d 30 29 20  | . (.f$,":")=0) |
00002cb0  8c 0d 12 7a 2a f2 52 65  70 6f 72 74 45 72 72 28  |...z*.ReportErr(|
00002cc0  22 50 6c 65 61 73 65 20  67 69 76 65 20 61 20 64  |"Please give a d|
00002cd0  69 72 65 63 74 6f 72 79  2e 22 29 0d 12 84 05 cc  |irectory.").....|
00002ce0  0d 12 8e 11 70 6f 6c 6c  65 64 62 25 21 33 36 3d  |....polledb%!36=|
00002cf0  30 0d 12 98 13 24 28 77  77 6f 72 6b 25 21 37 32  |0....$(wwork%!72|
00002d00  29 3d 66 24 0d 12 a2 12  73 61 6d 70 6c 65 73 61  |)=f$....samplesa|
00002d10  76 65 64 25 3d 30 0d 12  ac 10 c8 8e 20 73 61 76  |ved%=0...... sav|
00002d20  65 64 74 25 20 ca 0d 12  b6 25 c9 20 30 3a f2 53  |edt% ....%. 0:.S|
00002d30  61 76 65 53 61 31 28 66  24 29 3a 73 61 6d 70 6c  |aveSa1(f$):sampl|
00002d40  65 74 6f 6c 6f 61 64 24  3d 66 24 0d 12 c0 25 c9  |etoload$=f$...%.|
00002d50  20 31 3a f2 53 61 76 65  53 61 32 28 66 24 29 3a  | 1:.SaveSa2(f$):|
00002d60  73 61 6d 70 6c 65 74 6f  6c 6f 61 64 24 3d 66 24  |sampletoload$=f$|
00002d70  0d 12 ca 25 c9 20 32 3a  f2 53 61 76 65 53 61 33  |...%. 2:.SaveSa3|
00002d80  28 66 24 29 3a 73 61 6d  70 6c 65 74 6f 6c 6f 61  |(f$):sampletoloa|
00002d90  64 24 3d 66 24 0d 12 d4  25 c9 20 33 3a f2 53 61  |d$=f$...%. 3:.Sa|
00002da0  76 65 53 61 34 28 66 24  29 3a 73 61 6d 70 6c 65  |veSa4(f$):sample|
00002db0  74 6f 6c 6f 61 64 24 3d  66 24 0d 12 de 25 c9 20  |toload$=f$...%. |
00002dc0  34 3a f2 53 61 76 65 53  61 35 28 66 24 29 3a 73  |4:.SaveSa5(f$):s|
00002dd0  61 6d 70 6c 65 74 6f 6c  6f 61 64 24 3d 66 24 0d  |ampletoload$=f$.|
00002de0  12 e8 25 c9 20 35 3a f2  53 61 76 65 53 61 36 28  |..%. 5:.SaveSa6(|
00002df0  66 24 29 3a 73 61 6d 70  6c 65 74 6f 6c 6f 61 64  |f$):sampletoload|
00002e00  24 3d 66 24 0d 12 f2 21  c9 20 36 3a f2 53 61 76  |$=f$...!. 6:.Sav|
00002e10  65 4d 6f 28 66 24 29 3a  6d 6f 64 74 6f 6c 6f 61  |eMo(f$):modtoloa|
00002e20  64 24 3d 66 24 0d 12 fc  25 c9 20 31 30 3a f2 53  |d$=f$...%. 10:.S|
00002e30  61 76 65 53 6f 6e 67 28  66 24 29 3a 73 6f 6e 67  |aveSong(f$):song|
00002e40  74 6f 6c 6f 61 64 24 3d  66 24 0d 13 06 2a c9 20  |toload$=f$...*. |
00002e50  31 31 3a f2 53 61 76 65  53 6f 6e 67 4d 6f 28 66  |11:.SaveSongMo(f|
00002e60  24 29 3a 73 6f 6e 67 6d  6f 64 74 6f 6c 6f 61 64  |$):songmodtoload|
00002e70  24 3d 66 24 0d 13 10 05  cb 0d 13 1a 12 e7 20 66  |$=f$.......... f|
00002e80  25 3c 3e 30 20 8c 20 d9  23 66 25 0d 13 24 23 c8  |%<>0 . .#f%..$#.|
00002e90  99 22 57 69 6d 70 5f 43  72 65 61 74 65 4d 65 6e  |."Wimp_CreateMen|
00002ea0  75 22 2c 2d 31 2c 2d 31  2c 2d 31 2c 2d 31 0d 13  |u",-1,-1,-1,-1..|
00002eb0  2e 05 cd 0d 13 38 05 cd  0d 13 42 05 e1 0d 13 4c  |.....8....B....L|
00002ec0  04 0d 13 56 10 dd a4 53  74 72 69 70 28 66 73 24  |...V...Strip(fs$|
00002ed0  29 0d 13 60 0b ea 20 66  25 2c 61 25 0d 13 6a 08  |)..`.. f%,a%..j.|
00002ee0  66 25 3d 31 0d 13 74 08  61 25 3d 31 0d 13 7e 13  |f%=1..t.a%=1..~.|
00002ef0  c8 95 20 c1 66 73 24 2c  66 25 29 3c 3e 22 22 0d  |.. .fs$,f%)<>"".|
00002f00  13 88 2f e7 20 c1 66 73  24 2c 66 25 2c 31 29 3d  |../. .fs$,f%,1)=|
00002f10  22 2e 22 20 84 20 c1 66  73 24 2c 66 25 2c 31 29  |"." . .fs$,f%,1)|
00002f20  3d 22 3a 22 20 8c 20 61  25 3d 66 25 2b 31 0d 13  |=":" . a%=f%+1..|
00002f30  92 09 66 25 2b 3d 31 0d  13 9c 05 ce 0d 13 a6 0d  |..f%+=1.........|
00002f40  3d c1 66 73 24 2c 61 25  29 0d 13 b0 04 0d 13 ba  |=.fs$,a%).......|
00002f50  12 dd f2 4d 42 53 74 72  69 6e 67 28 73 25 29 0d  |...MBString(s%).|
00002f60  13 c4 15 c8 95 20 3f 73  25 3e 33 31 20 73 25 2b  |..... ?s%>31 s%+|
00002f70  3d 31 3a ce 0d 13 ce 0a  3f 73 25 3d 31 33 0d 13  |=1:.....?s%=13..|
00002f80  d8 05 e1 0d 13 e2 04 0d  13 ec 0e dd f2 44 72 61  |.............Dra|
00002f90  67 53 61 76 65 0d 13 f6  13 74 65 6d 70 25 21 30  |gSave....temp%!0|
00002fa0  3d 77 73 61 76 65 68 25  0d 14 00 22 c8 99 22 57  |=wsaveh%...".."W|
00002fb0  69 6d 70 5f 47 65 74 57  69 6e 64 6f 77 53 74 61  |imp_GetWindowSta|
00002fc0  74 65 22 2c 2c 74 65 6d  70 25 0d 14 0a 1c 77 78  |te",,temp%....wx|
00002fd0  25 3d 28 74 65 6d 70 25  21 34 29 2d 28 74 65 6d  |%=(temp%!4)-(tem|
00002fe0  70 25 21 32 30 29 0d 14  14 1d 77 79 25 3d 28 74  |p%!20)....wy%=(t|
00002ff0  65 6d 70 25 21 31 36 29  2d 28 74 65 6d 70 25 21  |emp%!16)-(temp%!|
00003000  32 34 29 0d 14 1e 0d 74  65 6d 70 25 21 34 3d 30  |24)....temp%!4=0|
00003010  0d 14 28 21 c8 99 20 22  57 69 6d 70 5f 47 65 74  |..(!.. "Wimp_Get|
00003020  49 63 6f 6e 53 74 61 74  65 22 2c 2c 74 65 6d 70  |IconState",,temp|
00003030  25 0d 14 32 0e 64 72 61  67 62 25 21 30 3d 30 0d  |%..2.dragb%!0=0.|
00003040  14 3c 0e 64 72 61 67 62  25 21 34 3d 35 0d 14 46  |.<.dragb%!4=5..F|
00003050  1a 64 72 61 67 62 25 21  38 3d 28 74 65 6d 70 25  |.dragb%!8=(temp%|
00003060  21 38 29 2b 77 78 25 0d  14 50 1c 64 72 61 67 62  |!8)+wx%..P.dragb|
00003070  25 21 31 32 3d 28 74 65  6d 70 25 21 31 32 29 2b  |%!12=(temp%!12)+|
00003080  77 79 25 0d 14 5a 1c 64  72 61 67 62 25 21 31 36  |wy%..Z.dragb%!16|
00003090  3d 28 74 65 6d 70 25 21  31 36 29 2b 77 78 25 0d  |=(temp%!16)+wx%.|
000030a0  14 64 1c 64 72 61 67 62  25 21 32 30 3d 28 74 65  |.d.dragb%!20=(te|
000030b0  6d 70 25 21 32 30 29 2b  77 79 25 0d 14 6e 0f 64  |mp%!20)+wy%..n.d|
000030c0  72 61 67 62 25 21 32 34  3d 30 0d 14 78 0f 64 72  |ragb%!24=0..x.dr|
000030d0  61 67 62 25 21 32 38 3d  30 0d 14 82 13 64 72 61  |agb%!28=0....dra|
000030e0  67 62 25 21 33 32 3d 33  32 37 36 38 0d 14 8c 13  |gb%!32=32768....|
000030f0  64 72 61 67 62 25 21 33  36 3d 33 32 37 36 38 0d  |dragb%!36=32768.|
00003100  14 96 0f 64 72 61 67 62  25 21 34 30 3d 30 0d 14  |...dragb%!40=0..|
00003110  a0 0f 64 72 61 67 62 25  21 34 34 3d 30 0d 14 aa  |..dragb%!44=0...|
00003120  0f 64 72 61 67 62 25 21  34 38 3d 30 0d 14 b4 0f  |.dragb%!48=0....|
00003130  64 72 61 67 62 25 21 35  32 3d 30 0d 14 be 1c c8  |dragb%!52=0.....|
00003140  99 22 57 69 6d 70 5f 44  72 61 67 42 6f 78 22 2c  |."Wimp_DragBox",|
00003150  2c 64 72 61 67 62 25 0d  14 c8 0f 64 72 61 67 74  |,dragb%....dragt|
00003160  79 70 65 25 3d 35 0d 14  d2 05 e1 0d 14 dc 04 0d  |ype%=5..........|
00003170  14 e6 0e dd f2 44 61 74  61 53 61 76 65 0d 14 f0  |.....DataSave...|
00003180  19 e7 20 6d 65 73 73 62  6b 25 21 34 3c 3e 74 61  |.. messbk%!4<>ta|
00003190  73 6b 68 25 20 8c 0d 14  fa 35 c8 99 22 58 4f 53  |skh% ....5.."XOS|
000031a0  5f 52 65 61 64 56 61 72  56 61 6c 22 2c 22 57 69  |_ReadVarVal","Wi|
000031b0  6d 70 24 53 63 72 61 70  22 2c 74 65 6d 70 25 2c  |mp$Scrap",temp%,|
000031c0  2d 31 2c 30 2c 30 b8 2c  2c 41 25 0d 15 04 0c e7  |-1,0,0.,,A%.....|
000031d0  20 41 25 3d 30 20 8c 0d  15 0e 2b f2 52 65 70 6f  | A%=0 ....+.Repo|
000031e0  72 74 45 72 72 28 22 3c  57 69 6d 70 24 53 63 72  |rtErr("<Wimp$Scr|
000031f0  61 70 3e 20 6e 6f 74 20  64 65 66 69 6e 65 64 2e  |ap> not defined.|
00003200  22 29 0d 15 18 05 cc 0d  15 22 26 66 69 6c 65 74  |")......."&filet|
00003210  6f 6c 6f 61 64 32 24 3d  a4 53 74 72 69 70 28 24  |oload2$=.Strip($|
00003220  28 6d 65 73 73 62 6b 25  2b 34 34 29 29 0d 15 2c  |(messbk%+44))..,|
00003230  25 24 28 6d 65 73 73 62  6b 25 2b 34 34 29 3d 22  |%$(messbk%+44)="|
00003240  3c 57 69 6d 70 24 53 63  72 61 70 3e 22 2b bd 28  |<Wimp$Scrap>"+.(|
00003250  30 29 0d 15 36 11 6d 65  73 73 62 6b 25 21 30 3d  |0)..6.messbk%!0=|
00003260  32 35 36 0d 15 40 18 6d  65 73 73 62 6b 25 21 31  |256..@.messbk%!1|
00003270  32 3d 6d 65 73 73 62 6b  25 21 38 0d 15 4a 10 6d  |2=messbk%!8..J.m|
00003280  65 73 73 62 6b 25 21 31  36 3d 32 0d 15 54 11 6d  |essbk%!16=2..T.m|
00003290  65 73 73 62 6b 25 21 33  36 3d 2d 31 0d 15 5e 2d  |essbk%!36=-1..^-|
000032a0  c8 99 22 57 69 6d 70 5f  53 65 6e 64 4d 65 73 73  |.."Wimp_SendMess|
000032b0  61 67 65 22 2c 31 38 2c  6d 65 73 73 62 6b 25 2c  |age",18,messbk%,|
000032c0  6d 65 73 73 62 6b 25 21  34 0d 15 68 05 cd 0d 15  |messbk%!4..h....|
000032d0  72 05 cd 0d 15 7c 05 e1  0d 15 86 04 0d 15 90 0f  |r....|..........|
000032e0  dd f2 44 72 61 67 53 61  76 65 64 0d 15 9a 13 e7  |..DragSaved.....|
000032f0  20 73 61 76 65 64 74 25  3c 3e 2d 31 20 8c 0d 15  | savedt%<>-1 ...|
00003300  a4 13 74 65 6d 70 25 21  30 3d 77 73 61 76 65 68  |..temp%!0=wsaveh|
00003310  25 0d 15 ae 10 c8 8e 20  73 61 76 65 64 74 25 20  |%...... savedt% |
00003320  ca 0d 15 b8 16 c9 20 30  3a 74 65 6d 70 32 25 21  |...... 0:temp2%!|
00003330  34 30 3d 26 63 62 35 0d  15 c2 16 c9 20 31 3a 74  |40=&cb5..... 1:t|
00003340  65 6d 70 32 25 21 34 30  3d 26 63 62 35 0d 15 cc  |emp2%!40=&cb5...|
00003350  16 c9 20 32 3a 74 65 6d  70 32 25 21 34 30 3d 26  |.. 2:temp2%!40=&|
00003360  64 33 63 0d 15 d6 16 c9  20 33 3a 74 65 6d 70 32  |d3c..... 3:temp2|
00003370  25 21 34 30 3d 26 65 64  30 0d 15 e0 16 c9 20 34  |%!40=&ed0..... 4|
00003380  3a 74 65 6d 70 32 25 21  34 30 3d 26 64 66 39 0d  |:temp2%!40=&df9.|
00003390  15 ea 16 c9 20 35 3a 74  65 6d 70 32 25 21 34 30  |.... 5:temp2%!40|
000033a0  3d 26 66 66 64 0d 15 f4  16 c9 20 36 3a 74 65 6d  |=&ffd..... 6:tem|
000033b0  70 32 25 21 34 30 3d 26  66 66 61 0d 15 fe 17 c9  |p2%!40=&ffa.....|
000033c0  20 31 30 3a 74 65 6d 70  32 25 21 34 30 3d 26 64  | 10:temp2%!40=&d|
000033d0  33 62 0d 16 08 17 c9 20  31 31 3a 74 65 6d 70 32  |3b..... 11:temp2|
000033e0  25 21 34 30 3d 26 66 66  61 0d 16 12 05 cb 0d 16  |%!40=&ffa.......|
000033f0  1c 0d 74 65 6d 70 25 21  34 3d 31 0d 16 26 20 c8  |..temp%!4=1..& .|
00003400  99 22 57 69 6d 70 5f 47  65 74 49 63 6f 6e 53 74  |."Wimp_GetIconSt|
00003410  61 74 65 22 2c 2c 74 65  6d 70 25 0d 16 30 27 24  |ate",,temp%..0'$|
00003420  28 74 65 6d 70 32 25 2b  34 34 29 3d a4 53 74 72  |(temp2%+44)=.Str|
00003430  69 70 28 24 28 21 28 74  65 6d 70 25 2b 32 38 29  |ip($(!(temp%+28)|
00003440  29 29 0d 16 3a 22 c8 99  22 57 69 6d 70 5f 47 65  |))..:".."Wimp_Ge|
00003450  74 50 6f 69 6e 74 65 72  49 6e 66 6f 22 2c 2c 74  |tPointerInfo",,t|
00003460  65 6d 70 25 0d 16 44 10  74 65 6d 70 32 25 21 30  |emp%..D.temp2%!0|
00003470  3d 32 35 36 0d 16 4e 0e  74 65 6d 70 32 25 21 34  |=256..N.temp2%!4|
00003480  3d 30 0d 16 58 0e 74 65  6d 70 32 25 21 38 3d 30  |=0..X.temp2%!8=0|
00003490  0d 16 62 0f 74 65 6d 70  32 25 21 31 32 3d 30 0d  |..b.temp2%!12=0.|
000034a0  16 6c 0f 74 65 6d 70 32  25 21 31 36 3d 31 0d 16  |.l.temp2%!16=1..|
000034b0  76 16 74 65 6d 70 32 25  21 32 30 3d 74 65 6d 70  |v.temp2%!20=temp|
000034c0  25 21 31 32 0d 16 80 16  74 65 6d 70 32 25 21 32  |%!12....temp2%!2|
000034d0  34 3d 74 65 6d 70 25 21  31 36 0d 16 8a 15 74 65  |4=temp%!16....te|
000034e0  6d 70 32 25 21 32 38 3d  74 65 6d 70 25 21 30 0d  |mp2%!28=temp%!0.|
000034f0  16 94 15 74 65 6d 70 32  25 21 33 32 3d 74 65 6d  |...temp2%!32=tem|
00003500  70 25 21 34 0d 16 9e 0f  74 65 6d 70 32 25 21 33  |p%!4....temp2%!3|
00003510  36 3d 31 0d 16 a8 35 c8  99 20 22 57 69 6d 70 5f  |6=1...5.. "Wimp_|
00003520  53 65 6e 64 4d 65 73 73  61 67 65 22 2c 31 37 2c  |SendMessage",17,|
00003530  74 65 6d 70 32 25 2c 74  65 6d 70 25 21 31 32 2c  |temp2%,temp%!12,|
00003540  74 65 6d 70 25 21 31 36  0d 16 b2 1b c8 99 22 57  |temp%!16......"W|
00003550  69 6d 70 5f 43 72 65 61  74 65 4d 65 6e 75 22 2c  |imp_CreateMenu",|
00003560  2c 2d 31 0d 16 bc 05 cd  0d 16 c6 05 e1 0d 16 d0  |,-1.............|
00003570  04 0d 16 da 0d dd f2 53  61 76 65 41 63 6b 0d 16  |.......SaveAck..|
00003580  e4 13 e7 20 73 61 76 65  64 74 25 3c 3e 2d 31 20  |... savedt%<>-1 |
00003590  8c 0d 16 ee 13 74 65 6d  70 25 21 30 3d 77 73 61  |.....temp%!0=wsa|
000035a0  76 65 68 25 0d 16 f8 0d  74 65 6d 70 25 21 34 3d  |veh%....temp%!4=|
000035b0  31 0d 17 02 20 c8 99 22  57 69 6d 70 5f 47 65 74  |1... .."Wimp_Get|
000035c0  49 63 6f 6e 53 74 61 74  65 22 2c 2c 74 65 6d 70  |IconState",,temp|
000035d0  25 0d 17 0c 1a f2 4d 42  53 74 72 69 6e 67 28 70  |%.....MBString(p|
000035e0  6f 6c 6c 65 64 62 25 2b  34 34 29 0d 17 16 35 e7  |olledb%+44)...5.|
000035f0  20 70 6f 6c 6c 65 64 62  25 21 33 36 3c 3e 2d 31  | polledb%!36<>-1|
00003600  20 8c 20 24 28 21 28 74  65 6d 70 25 2b 32 38 29  | . $(!(temp%+28)|
00003610  29 3d 24 28 70 6f 6c 6c  65 64 62 25 2b 34 34 29  |)=$(polledb%+44)|
00003620  0d 17 20 15 66 24 3d 24  28 70 6f 6c 6c 65 64 62  |.. .f$=$(polledb|
00003630  25 2b 34 34 29 0d 17 2a  13 24 28 77 77 6f 72 6b  |%+44)..*.$(wwork|
00003640  25 21 37 32 29 3d 66 24  0d 17 34 12 73 61 6d 70  |%!72)=f$..4.samp|
00003650  6c 65 73 61 76 65 64 25  3d 30 0d 17 3e 10 c8 8e  |lesaved%=0..>...|
00003660  20 73 61 76 65 64 74 25  20 ca 0d 17 48 25 c9 20  | savedt% ...H%. |
00003670  30 3a f2 53 61 76 65 53  61 31 28 66 24 29 3a 73  |0:.SaveSa1(f$):s|
00003680  61 6d 70 6c 65 74 6f 6c  6f 61 64 24 3d 66 24 0d  |ampletoload$=f$.|
00003690  17 52 25 c9 20 31 3a f2  53 61 76 65 53 61 32 28  |.R%. 1:.SaveSa2(|
000036a0  66 24 29 3a 73 61 6d 70  6c 65 74 6f 6c 6f 61 64  |f$):sampletoload|
000036b0  24 3d 66 24 0d 17 5c 25  c9 20 32 3a f2 53 61 76  |$=f$..\%. 2:.Sav|
000036c0  65 53 61 33 28 66 24 29  3a 73 61 6d 70 6c 65 74  |eSa3(f$):samplet|
000036d0  6f 6c 6f 61 64 24 3d 66  24 0d 17 66 25 c9 20 33  |oload$=f$..f%. 3|
000036e0  3a f2 53 61 76 65 53 61  34 28 66 24 29 3a 73 61  |:.SaveSa4(f$):sa|
000036f0  6d 70 6c 65 74 6f 6c 6f  61 64 24 3d 66 24 0d 17  |mpletoload$=f$..|
00003700  70 25 c9 20 34 3a f2 53  61 76 65 53 61 35 28 66  |p%. 4:.SaveSa5(f|
00003710  24 29 3a 73 61 6d 70 6c  65 74 6f 6c 6f 61 64 24  |$):sampletoload$|
00003720  3d 66 24 0d 17 7a 25 c9  20 35 3a f2 53 61 76 65  |=f$..z%. 5:.Save|
00003730  53 61 36 28 66 24 29 3a  73 61 6d 70 6c 65 74 6f  |Sa6(f$):sampleto|
00003740  6c 6f 61 64 24 3d 66 24  0d 17 84 21 c9 20 36 3a  |load$=f$...!. 6:|
00003750  f2 53 61 76 65 4d 6f 28  66 24 29 3a 6d 6f 64 74  |.SaveMo(f$):modt|
00003760  6f 6c 6f 61 64 24 3d 66  24 0d 17 8e 25 c9 20 31  |oload$=f$...%. 1|
00003770  30 3a f2 53 61 76 65 53  6f 6e 67 28 66 24 29 3a  |0:.SaveSong(f$):|
00003780  73 6f 6e 67 74 6f 6c 6f  61 64 24 3d 66 24 0d 17  |songtoload$=f$..|
00003790  98 2a c9 20 31 31 3a f2  53 61 76 65 53 6f 6e 67  |.*. 11:.SaveSong|
000037a0  4d 6f 28 66 24 29 3a 73  6f 6e 67 6d 6f 64 74 6f  |Mo(f$):songmodto|
000037b0  6c 6f 61 64 24 3d 66 24  0d 17 a2 05 cb 0d 17 ac  |load$=f$........|
000037c0  12 e7 20 66 25 3c 3e 30  20 8c 20 d9 23 66 25 0d  |.. f%<>0 . .#f%.|
000037d0  17 b6 18 6d 65 73 73 62  6b 25 21 31 32 3d 6d 65  |...messbk%!12=me|
000037e0  73 73 62 6b 25 21 38 0d  17 c0 10 6d 65 73 73 62  |ssbk%!8....messb|
000037f0  6b 25 21 31 36 3d 33 0d  17 ca 39 e7 20 73 73 25  |k%!16=3...9. ss%|
00003800  3c 3e 2d 31 20 8c 20 c8  99 22 57 69 6d 70 5f 53  |<>-1 . .."Wimp_S|
00003810  65 6e 64 4d 65 73 73 61  67 65 22 2c 31 37 2c 6d  |endMessage",17,m|
00003820  65 73 73 62 6b 25 2c 6d  65 73 73 62 6b 25 21 34  |essbk%,messbk%!4|
00003830  0d 17 d4 0e 73 61 76 65  64 74 25 3d 2d 31 0d 17  |....savedt%=-1..|
00003840  de 10 73 61 76 65 64 61  74 61 25 3d 2d 31 0d 17  |..savedata%=-1..|
00003850  e8 05 cd 0d 17 f2 05 e1  0d 17 fc 04 0d 18 06 13  |................|
00003860  dd f2 53 61 76 65 53 6f  6e 67 28 66 69 24 29 0d  |..SaveSong(fi$).|
00003870  18 10 05 e1 0d 18 1a 04  0d 18 24 15 dd f2 53 61  |..........$...Sa|
00003880  76 65 53 6f 6e 67 4d 6f  28 66 69 24 29 0d 18 2e  |veSongMo(fi$)...|
00003890  05 e1 0d 18 38 04 0d 18  42 12 dd f2 53 61 76 65  |....8...B...Save|
000038a0  53 61 31 28 66 69 24 29  0d 18 4c 05 e1 0d 18 56  |Sa1(fi$)..L....V|
000038b0  04 0d 18 60 12 dd f2 53  61 76 65 53 61 32 28 66  |...`...SaveSa2(f|
000038c0  69 24 29 0d 18 6a 05 e1  0d 18 74 04 0d 18 7e 12  |i$)..j....t...~.|
000038d0  dd f2 53 61 76 65 53 61  33 28 66 69 24 29 0d 18  |..SaveSa3(fi$)..|
000038e0  88 05 e1 0d 18 92 04 0d  18 9c 12 dd f2 53 61 76  |.............Sav|
000038f0  65 53 61 34 28 66 69 24  29 0d 18 a6 05 e1 0d 18  |eSa4(fi$).......|
00003900  b0 04 0d 18 ba 12 dd f2  53 61 76 65 53 61 35 28  |........SaveSa5(|
00003910  66 69 24 29 0d 18 c4 05  e1 0d 18 ce 04 0d 18 d8  |fi$)............|
00003920  12 dd f2 53 61 76 65 53  61 36 28 66 69 24 29 0d  |...SaveSa6(fi$).|
00003930  18 e2 05 e1 0d 18 ec 04  0d 18 f6 11 dd f2 53 61  |..............Sa|
00003940  76 65 4d 6f 28 66 69 24  29 0d 19 00 05 e1 0d 19  |veMo(fi$).......|
00003950  0a 04 0d 19 14 11 dd f2  47 65 74 53 74 61 72 74  |........GetStart|
00003960  4c 65 6e 0d 19 1e 12 c8  8e 20 73 61 76 65 64 61  |Len...... saveda|
00003970  74 61 25 20 ca 0d 19 28  27 c9 20 30 3a 73 73 25  |ta% ...('. 0:ss%|
00003980  3d 73 74 61 72 74 73 61  6d 70 6c 65 25 3a 73 6c  |=startsample%:sl|
00003990  25 3d 73 61 6d 70 6c 65  6c 65 6e 25 0d 19 32 55  |%=samplelen%..2U|
000039a0  c9 20 31 3a e7 20 70 73  65 6c 65 63 74 6c 25 3c  |. 1:. pselectl%<|
000039b0  3e 2d 31 20 8c 20 73 73  25 3d 73 74 61 72 74 73  |>-1 . ss%=starts|
000039c0  61 6d 70 6c 65 25 2b 70  73 65 6c 65 63 74 6c 25  |ample%+pselectl%|
000039d0  3a 73 6c 25 3d 70 73 65  6c 65 63 74 72 25 2d 70  |:sl%=pselectr%-p|
000039e0  73 65 6c 65 63 74 6c 25  20 8b 20 73 73 25 3d 2d  |selectl% . ss%=-|
000039f0  31 0d 19 3c 25 c9 20 32  3a 73 73 25 3d 63 6c 69  |1..<%. 2:ss%=cli|
00003a00  70 62 73 74 61 72 74 25  3a 73 6c 25 3d 63 6c 69  |pbstart%:sl%=cli|
00003a10  70 62 6c 65 6e 25 0d 19  46 05 cb 0d 19 50 05 e1  |pblen%..F....P..|
00003a20  0d 19 5a 04 0d 19 64 0e  dd f2 4b 65 79 43 6c 69  |..Z...d...KeyCli|
00003a30  63 6b 0d 19 6e 13 c8 8e  20 70 6f 6c 6c 65 64 62  |ck..n... polledb|
00003a40  25 21 38 20 ca 0d 19 78  70 c9 20 31 3a c8 99 22  |%!8 ...xp. 1:.."|
00003a50  58 57 69 6d 70 5f 53 65  74 43 61 72 65 74 50 6f  |XWimp_SetCaretPo|
00003a60  73 69 74 69 6f 6e 22 2c  77 6b 65 79 62 6f 61 72  |sition",wkeyboar|
00003a70  64 68 25 2c 2d 31 2c 2d  31 2c 2d 31 2c 2d 31 2c  |dh%,-1,-1,-1,-1,|
00003a80  2d 31 3a c8 99 22 53 46  58 4d 50 5f 53 74 6f 70  |-1:.."SFXMP_Stop|
00003a90  22 2c 31 3a c8 99 22 53  46 58 4d 50 5f 53 74 6f  |",1:.."SFXMP_Sto|
00003aa0  70 22 2c 32 3a c8 99 22  53 46 58 4d 50 5f 53 74  |p",2:.."SFXMP_St|
00003ab0  6f 70 22 2c 33 0d 19 82  3d c9 20 34 3a c8 99 22  |op",3...=. 4:.."|
00003ac0  58 57 69 6d 70 5f 53 65  74 43 61 72 65 74 50 6f  |XWimp_SetCaretPo|
00003ad0  73 69 74 69 6f 6e 22 2c  77 6b 65 79 62 6f 61 72  |sition",wkeyboar|
00003ae0  64 68 25 2c 2d 31 2c 2d  31 2c 2d 31 2c 2d 31 2c  |dh%,-1,-1,-1,-1,|
00003af0  2d 31 0d 19 8c 05 cb 0d  19 96 14 c8 8e 20 70 6f  |-1........... po|
00003b00  6c 6c 65 64 62 25 21 31  36 20 ca 0d 19 a0 14 c9  |lledb%!16 ......|
00003b10  20 34 33 3a 70 6c 61 79  74 79 70 65 25 3d 30 0d  | 43:playtype%=0.|
00003b20  19 aa 14 c9 20 34 34 3a  70 6c 61 79 74 79 70 65  |.... 44:playtype|
00003b30  25 3d 31 0d 19 b4 14 c9  20 34 35 3a 70 6c 61 79  |%=1..... 45:play|
00003b40  74 79 70 65 25 3d 32 0d  19 be 14 c9 20 34 36 3a  |type%=2..... 46:|
00003b50  70 6c 61 79 74 79 70 65  25 3d 33 0d 19 c8 76 c9  |playtype%=3...v.|
00003b60  20 34 38 3a 74 65 6d 70  25 21 30 3d 77 6b 65 79  | 48:temp%!0=wkey|
00003b70  62 6f 61 72 64 68 25 3a  74 65 6d 70 25 21 34 3d  |boardh%:temp%!4=|
00003b80  34 38 3a c8 99 22 57 69  6d 70 5f 47 65 74 49 63  |48:.."Wimp_GetIc|
00003b90  6f 6e 53 74 61 74 65 22  2c 2c 74 65 6d 70 25 3a  |onState",,temp%:|
00003ba0  e7 20 28 74 65 6d 70 25  21 32 34 29 80 28 31 3c  |. (temp%!24).(1<|
00003bb0  3c 32 31 29 20 8c 20 72  65 6c 65 61 73 65 6b 25  |<21) . releasek%|
00003bc0  3d 2d 31 20 8b 20 72 65  6c 65 61 73 65 6b 25 3d  |=-1 . releasek%=|
00003bd0  30 0d 19 d2 78 c9 20 34  39 3a 74 65 6d 70 25 21  |0...x. 49:temp%!|
00003be0  30 3d 77 6b 65 79 62 6f  61 72 64 68 25 3a 74 65  |0=wkeyboardh%:te|
00003bf0  6d 70 25 21 34 3d 34 39  3a c8 99 22 57 69 6d 70  |mp%!4=49:.."Wimp|
00003c00  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
00003c10  74 65 6d 70 25 3a e7 20  28 74 65 6d 70 25 21 32  |temp%:. (temp%!2|
00003c20  34 29 80 28 31 3c 3c 32  31 29 20 8c 20 6d 75 6c  |4).(1<<21) . mul|
00003c30  74 69 70 6c 65 6b 25 3d  2d 31 20 8b 20 6d 75 6c  |tiplek%=-1 . mul|
00003c40  74 69 70 6c 65 6b 25 3d  30 0d 19 dc 05 cb 0d 19  |tiplek%=0.......|
00003c50  e6 05 e1 0d 19 f0 04 0d  19 fa 0f dd f2 57 6f 72  |.............Wor|
00003c60  6b 43 6c 69 63 6b 0d 1a  04 39 c8 99 22 58 57 69  |kClick...9.."XWi|
00003c70  6d 70 5f 53 65 74 43 61  72 65 74 50 6f 73 69 74  |mp_SetCaretPosit|
00003c80  69 6f 6e 22 2c 77 6b 65  79 62 6f 61 72 64 68 25  |ion",wkeyboardh%|
00003c90  2c 2d 31 2c 2d 31 2c 2d  31 2c 2d 31 2c 2d 31 0d  |,-1,-1,-1,-1,-1.|
00003ca0  1a 0e 13 c8 8e 20 70 6f  6c 6c 65 64 62 25 21 38  |..... polledb%!8|
00003cb0  20 ca 0d 1a 18 76 c9 20  32 3a 6c 61 73 74 6d 78  | ....v. 2:lastmx|
00003cc0  25 3d 70 6f 6c 6c 65 64  62 25 21 30 2d 36 34 3a  |%=polledb%!0-64:|
00003cd0  6c 61 73 74 6d 79 25 3d  70 6f 6c 6c 65 64 62 25  |lastmy%=polledb%|
00003ce0  21 34 2b 31 36 3a 6c 61  73 74 6d 65 6e 75 25 3d  |!4+16:lastmenu%=|
00003cf0  77 6f 72 6b 6d 65 6e 75  25 3a c8 99 22 57 69 6d  |workmenu%:.."Wim|
00003d00  70 5f 43 72 65 61 74 65  4d 65 6e 75 22 2c 2c 6c  |p_CreateMenu",,l|
00003d10  61 73 74 6d 65 6e 75 25  2c 6c 61 73 74 6d 78 25  |astmenu%,lastmx%|
00003d20  2c 6c 61 73 74 6d 79 25  0d 1a 22 14 c9 20 31 30  |,lastmy%..".. 10|
00003d30  32 34 3a f2 53 65 6c 43  6c 69 63 6b 0d 1a 2c 13  |24:.SelClick..,.|
00003d40  c9 20 32 35 36 3a f2 41  64 6a 43 6c 69 63 6b 0d  |. 256:.AdjClick.|
00003d50  1a 36 11 c9 20 36 34 3a  f2 53 65 6c 44 72 61 67  |.6.. 64:.SelDrag|
00003d60  0d 1a 40 11 c9 20 31 36  3a f2 41 64 6a 44 72 61  |..@.. 16:.AdjDra|
00003d70  67 0d 1a 4a 05 cb 0d 1a  54 05 e1 0d 1a 5e 04 0d  |g..J....T....^..|
00003d80  1a 68 0e dd f2 53 65 6c  43 6c 69 63 6b 0d 1a 72  |.h...SelClick..r|
00003d90  13 74 65 6d 70 25 21 30  3d 77 77 6f 72 6b 68 25  |.temp%!0=wworkh%|
00003da0  0d 1a 7c 22 c8 99 22 57  69 6d 70 5f 47 65 74 57  |..|".."Wimp_GetW|
00003db0  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 74 65 6d  |indowState",,tem|
00003dc0  70 25 0d 1a 86 1e e7 20  70 6f 6c 6c 65 64 62 25  |p%..... polledb%|
00003dd0  21 34 2d 74 65 6d 70 25  21 38 3c 32 35 36 20 8c  |!4-temp%!8<256 .|
00003de0  0d 1a 90 0e f2 53 65 6c  43 6c 69 63 6b 32 0d 1a  |.....SelClick2..|
00003df0  9a 05 cc 0d 1a a4 1e c8  99 22 4f 53 5f 42 79 74  |........."OS_Byt|
00003e00  65 22 2c 32 30 32 2c 30  2c 32 35 35 b8 2c 73 68  |e",202,0,255.,sh|
00003e10  25 0d 1a ae 18 64 6c 70  25 3d 70 6c 6f 6f 70 72  |%....dlp%=ploopr|
00003e20  25 2d 70 6c 6f 6f 70 6c  25 0d 1a b8 0e f2 53 63  |%-ploopl%.....Sc|
00003e30  72 54 6f 57 6f 72 6b 0d  1a c2 11 6c 6f 6f 70 6c  |rToWork....loopl|
00003e40  25 3d 77 6f 72 6b 78 25  0d 1a cc 1e 70 6c 6f 6f  |%=workx%....ploo|
00003e50  70 6c 25 3d a4 57 6f 72  6b 54 6f 50 74 72 28 6c  |pl%=.WorkToPtr(l|
00003e60  6f 6f 70 6c 25 29 0d 1a  d6 0d e7 20 73 68 25 80  |oopl%)..... sh%.|
00003e70  38 20 8c 0d 1a e0 18 70  6c 6f 6f 70 72 25 3d 70  |8 .....ploopr%=p|
00003e80  6c 6f 6f 70 6c 25 2b 64  6c 70 25 0d 1a ea 45 e7  |loopl%+dlp%...E.|
00003e90  20 70 6c 6f 6f 70 72 25  3e 73 61 6d 70 6c 65 6c  | ploopr%>samplel|
00003ea0  65 6e 25 20 8c 20 70 6c  6f 6f 70 72 25 3d 73 61  |en% . ploopr%=sa|
00003eb0  6d 70 6c 65 6c 65 6e 25  3a 70 6c 6f 6f 70 6c 25  |mplelen%:ploopl%|
00003ec0  3d 73 61 6d 70 6c 65 6c  65 6e 25 2d 64 6c 70 25  |=samplelen%-dlp%|
00003ed0  0d 1a f4 05 cd 0d 1a fe  1e 6c 6f 6f 70 6c 25 3d  |.........loopl%=|
00003ee0  a4 50 74 72 54 6f 57 6f  72 6b 28 70 6c 6f 6f 70  |.PtrToWork(ploop|
00003ef0  6c 25 29 0d 1b 08 1e 6c  6f 6f 70 72 25 3d a4 50  |l%)....loopr%=.P|
00003f00  74 72 54 6f 57 6f 72 6b  28 70 6c 6f 6f 70 72 25  |trToWork(ploopr%|
00003f10  29 0d 1b 12 35 e7 20 70  6c 6f 6f 70 6c 25 3e 70  |)...5. ploopl%>p|
00003f20  6c 6f 6f 70 72 25 20 8c  20 70 6c 6f 6f 70 72 25  |loopr% . ploopr%|
00003f30  3d 70 6c 6f 6f 70 6c 25  3a 6c 6f 6f 70 72 25 3d  |=ploopl%:loopr%=|
00003f40  6c 6f 6f 70 6c 25 0d 1b  1c 10 f2 55 70 64 61 74  |loopl%.....Updat|
00003f50  65 4c 6f 6f 70 50 0d 1b  26 05 cd 0d 1b 30 05 e1  |eLoopP..&....0..|
00003f60  0d 1b 3a 04 0d 1b 44 0e  dd f2 41 64 6a 43 6c 69  |..:...D...AdjCli|
00003f70  63 6b 0d 1b 4e 13 74 65  6d 70 25 21 30 3d 77 77  |ck..N.temp%!0=ww|
00003f80  6f 72 6b 68 25 0d 1b 58  22 c8 99 22 57 69 6d 70  |orkh%..X".."Wimp|
00003f90  5f 47 65 74 57 69 6e 64  6f 77 53 74 61 74 65 22  |_GetWindowState"|
00003fa0  2c 2c 74 65 6d 70 25 0d  1b 62 1e e7 20 70 6f 6c  |,,temp%..b.. pol|
00003fb0  6c 65 64 62 25 21 34 2d  74 65 6d 70 25 21 38 3c  |ledb%!4-temp%!8<|
00003fc0  32 35 36 20 8c 0d 1b 6c  0e f2 41 64 6a 43 6c 69  |256 ...l..AdjCli|
00003fd0  63 6b 32 0d 1b 76 05 cc  0d 1b 80 1e c8 99 22 4f  |ck2..v........"O|
00003fe0  53 5f 42 79 74 65 22 2c  32 30 32 2c 30 2c 32 35  |S_Byte",202,0,25|
00003ff0  35 b8 2c 73 68 25 0d 1b  8a 18 64 6c 70 25 3d 70  |5.,sh%....dlp%=p|
00004000  6c 6f 6f 70 72 25 2d 70  6c 6f 6f 70 6c 25 0d 1b  |loopr%-ploopl%..|
00004010  94 0e f2 53 63 72 54 6f  57 6f 72 6b 0d 1b 9e 11  |...ScrToWork....|
00004020  6c 6f 6f 70 72 25 3d 77  6f 72 6b 78 25 0d 1b a8  |loopr%=workx%...|
00004030  1e 70 6c 6f 6f 70 72 25  3d a4 57 6f 72 6b 54 6f  |.ploopr%=.WorkTo|
00004040  50 74 72 28 6c 6f 6f 70  72 25 29 0d 1b b2 0d e7  |Ptr(loopr%).....|
00004050  20 73 68 25 80 38 20 8c  0d 1b bc 18 70 6c 6f 6f  | sh%.8 .....ploo|
00004060  70 6c 25 3d 70 6c 6f 6f  70 72 25 2d 64 6c 70 25  |pl%=ploopr%-dlp%|
00004070  0d 1b c6 28 e7 20 70 6c  6f 6f 70 6c 25 3c 30 20  |...(. ploopl%<0 |
00004080  8c 20 70 6c 6f 6f 70 6c  25 3d 30 3a 70 6c 6f 6f  |. ploopl%=0:ploo|
00004090  70 72 25 3d 64 6c 70 25  0d 1b d0 05 cd 0d 1b da  |pr%=dlp%........|
000040a0  1e 6c 6f 6f 70 6c 25 3d  a4 50 74 72 54 6f 57 6f  |.loopl%=.PtrToWo|
000040b0  72 6b 28 70 6c 6f 6f 70  6c 25 29 0d 1b e4 1e 6c  |rk(ploopl%)....l|
000040c0  6f 6f 70 72 25 3d a4 50  74 72 54 6f 57 6f 72 6b  |oopr%=.PtrToWork|
000040d0  28 70 6c 6f 6f 70 72 25  29 0d 1b ee 35 e7 20 70  |(ploopr%)...5. p|
000040e0  6c 6f 6f 70 72 25 3c 70  6c 6f 6f 70 6c 25 20 8c  |loopr%<ploopl% .|
000040f0  20 70 6c 6f 6f 70 6c 25  3d 70 6c 6f 6f 70 72 25  | ploopl%=ploopr%|
00004100  3a 6c 6f 6f 70 6c 25 3d  6c 6f 6f 70 72 25 0d 1b  |:loopl%=loopr%..|
00004110  f8 10 f2 55 70 64 61 74  65 4c 6f 6f 70 50 0d 1c  |...UpdateLoopP..|
00004120  02 05 cd 0d 1c 0c 05 e1  0d 1c 16 04 0d 1c 20 0d  |.............. .|
00004130  dd f2 53 65 6c 44 72 61  67 0d 1c 2a 13 74 65 6d  |..SelDrag..*.tem|
00004140  70 25 21 30 3d 77 77 6f  72 6b 68 25 0d 1c 34 22  |p%!0=wworkh%..4"|
00004150  c8 99 22 57 69 6d 70 5f  47 65 74 57 69 6e 64 6f  |.."Wimp_GetWindo|
00004160  77 53 74 61 74 65 22 2c  2c 74 65 6d 70 25 0d 1c  |wState",,temp%..|
00004170  3e 1e e7 20 70 6f 6c 6c  65 64 62 25 21 34 2d 74  |>.. polledb%!4-t|
00004180  65 6d 70 25 21 38 3c 32  35 36 20 8c 0d 1c 48 0d  |emp%!8<256 ...H.|
00004190  f2 53 65 6c 44 72 61 67  32 0d 1c 52 05 cc 0d 1c  |.SelDrag2..R....|
000041a0  5c 13 74 65 6d 70 25 21  30 3d 77 77 6f 72 6b 68  |\.temp%!0=wworkh|
000041b0  25 0d 1c 66 22 c8 99 22  57 69 6d 70 5f 47 65 74  |%..f".."Wimp_Get|
000041c0  57 69 6e 64 6f 77 53 74  61 74 65 22 2c 2c 74 65  |WindowState",,te|
000041d0  6d 70 25 0d 1c 70 14 74  65 6d 70 32 25 21 30 3d  |mp%..p.temp2%!0=|
000041e0  77 77 6f 72 6b 68 25 0d  1c 7a 0e 74 65 6d 70 32  |wworkh%..z.temp2|
000041f0  25 21 34 3d 37 0d 1c 84  0e 74 65 6d 70 32 25 21  |%!4=7....temp2%!|
00004200  38 3d 30 0d 1c 8e 0f 74  65 6d 70 32 25 21 31 32  |8=0....temp2%!12|
00004210  3d 30 0d 1c 98 0f 74 65  6d 70 32 25 21 31 36 3d  |=0....temp2%!16=|
00004220  30 0d 1c a2 0f 74 65 6d  70 32 25 21 32 30 3d 30  |0....temp2%!20=0|
00004230  0d 1c ac 15 74 65 6d 70  32 25 21 32 34 3d 74 65  |....temp2%!24=te|
00004240  6d 70 25 21 34 0d 1c b6  19 74 65 6d 70 32 25 21  |mp%!4....temp2%!|
00004250  32 38 3d 74 65 6d 70 25  21 38 2b 32 36 30 0d 1c  |28=temp%!8+260..|
00004260  c0 1a 74 65 6d 70 32 25  21 33 32 3d 74 65 6d 70  |..temp2%!32=temp|
00004270  25 21 34 2b 31 30 32 32  0d 1c ca 19 74 65 6d 70  |%!4+1022....temp|
00004280  32 25 21 33 36 3d 74 65  6d 70 25 21 38 2b 32 38  |2%!36=temp%!8+28|
00004290  34 0d 1c d4 10 74 65 6d  70 32 25 21 34 30 3d 2d  |4....temp2%!40=-|
000042a0  31 0d 1c de 10 74 65 6d  70 32 25 21 34 34 3d 2d  |1....temp2%!44=-|
000042b0  31 0d 1c e8 10 74 65 6d  70 32 25 21 34 38 3d 2d  |1....temp2%!48=-|
000042c0  31 0d 1c f2 10 74 65 6d  70 32 25 21 35 32 3d 2d  |1....temp2%!52=-|
000042d0  31 0d 1c fc 1c c8 99 22  57 69 6d 70 5f 44 72 61  |1......"Wimp_Dra|
000042e0  67 42 6f 78 22 2c 2c 74  65 6d 70 32 25 0d 1d 06  |gBox",,temp2%...|
000042f0  0f 64 72 61 67 74 79 70  65 25 3d 33 0d 1d 10 05  |.dragtype%=3....|
00004300  cd 0d 1d 1a 05 e1 0d 1d  24 04 0d 1d 2e 0d dd f2  |........$.......|
00004310  41 64 6a 44 72 61 67 0d  1d 38 13 74 65 6d 70 25  |AdjDrag..8.temp%|
00004320  21 30 3d 77 77 6f 72 6b  68 25 0d 1d 42 22 c8 99  |!0=wworkh%..B"..|
00004330  22 57 69 6d 70 5f 47 65  74 57 69 6e 64 6f 77 53  |"Wimp_GetWindowS|
00004340  74 61 74 65 22 2c 2c 74  65 6d 70 25 0d 1d 4c 1e  |tate",,temp%..L.|
00004350  e7 20 70 6f 6c 6c 65 64  62 25 21 34 2d 74 65 6d  |. polledb%!4-tem|
00004360  70 25 21 38 3c 32 35 36  20 8c 0d 1d 56 0d f2 41  |p%!8<256 ...V..A|
00004370  64 6a 44 72 61 67 32 0d  1d 60 05 cc 0d 1d 6a 13  |djDrag2..`....j.|
00004380  74 65 6d 70 25 21 30 3d  77 77 6f 72 6b 68 25 0d  |temp%!0=wworkh%.|
00004390  1d 74 22 c8 99 22 57 69  6d 70 5f 47 65 74 57 69  |.t".."Wimp_GetWi|
000043a0  6e 64 6f 77 53 74 61 74  65 22 2c 2c 74 65 6d 70  |ndowState",,temp|
000043b0  25 0d 1d 7e 14 74 65 6d  70 32 25 21 30 3d 77 77  |%..~.temp2%!0=ww|
000043c0  6f 72 6b 68 25 0d 1d 88  0e 74 65 6d 70 32 25 21  |orkh%....temp2%!|
000043d0  34 3d 37 0d 1d 92 0e 74  65 6d 70 32 25 21 38 3d  |4=7....temp2%!8=|
000043e0  30 0d 1d 9c 0f 74 65 6d  70 32 25 21 31 32 3d 30  |0....temp2%!12=0|
000043f0  0d 1d a6 0f 74 65 6d 70  32 25 21 31 36 3d 30 0d  |....temp2%!16=0.|
00004400  1d b0 0f 74 65 6d 70 32  25 21 32 30 3d 30 0d 1d  |...temp2%!20=0..|
00004410  ba 15 74 65 6d 70 32 25  21 32 34 3d 74 65 6d 70  |..temp2%!24=temp|
00004420  25 21 34 0d 1d c4 19 74  65 6d 70 32 25 21 32 38  |%!4....temp2%!28|
00004430  3d 74 65 6d 70 25 21 38  2b 32 36 30 0d 1d ce 1a  |=temp%!8+260....|
00004440  74 65 6d 70 32 25 21 33  32 3d 74 65 6d 70 25 21  |temp2%!32=temp%!|
00004450  34 2b 31 30 32 32 0d 1d  d8 19 74 65 6d 70 32 25  |4+1022....temp2%|
00004460  21 33 36 3d 74 65 6d 70  25 21 38 2b 32 38 34 0d  |!36=temp%!8+284.|
00004470  1d e2 10 74 65 6d 70 32  25 21 34 30 3d 2d 31 0d  |...temp2%!40=-1.|
00004480  1d ec 10 74 65 6d 70 32  25 21 34 34 3d 2d 31 0d  |...temp2%!44=-1.|
00004490  1d f6 10 74 65 6d 70 32  25 21 34 38 3d 2d 31 0d  |...temp2%!48=-1.|
000044a0  1e 00 10 74 65 6d 70 32  25 21 35 32 3d 2d 31 0d  |...temp2%!52=-1.|
000044b0  1e 0a 1c c8 99 22 57 69  6d 70 5f 44 72 61 67 42  |....."Wimp_DragB|
000044c0  6f 78 22 2c 2c 74 65 6d  70 32 25 0d 1e 14 0f 64  |ox",,temp2%....d|
000044d0  72 61 67 74 79 70 65 25  3d 34 0d 1e 1e 05 cd 0d  |ragtype%=4......|
000044e0  1e 28 05 e1 0d 1e 32 04  0d 1e 3c 0f dd f2 53 65  |.(....2...<...Se|
000044f0  6c 43 6c 69 63 6b 32 0d  1e 46 0e f2 53 63 72 54  |lClick2..F..ScrT|
00004500  6f 57 6f 72 6b 0d 1e 50  13 73 65 6c 65 63 74 6c  |oWork..P.selectl|
00004510  25 3d 77 6f 72 6b 78 25  0d 1e 5a 13 73 65 6c 65  |%=workx%..Z.sele|
00004520  63 74 72 25 3d 77 6f 72  6b 78 25 0d 1e 64 22 70  |ctr%=workx%..d"p|
00004530  73 65 6c 65 63 74 6c 25  3d a4 57 6f 72 6b 54 6f  |selectl%=.WorkTo|
00004540  50 74 72 28 73 65 6c 65  63 74 6c 25 29 0d 1e 6e  |Ptr(selectl%)..n|
00004550  22 70 73 65 6c 65 63 74  72 25 3d a4 57 6f 72 6b  |"pselectr%=.Work|
00004560  54 6f 50 74 72 28 73 65  6c 65 63 74 72 25 29 0d  |ToPtr(selectr%).|
00004570  1e 78 22 73 65 6c 65 63  74 6c 25 3d a4 50 74 72  |.x"selectl%=.Ptr|
00004580  54 6f 57 6f 72 6b 28 70  73 65 6c 65 63 74 6c 25  |ToWork(pselectl%|
00004590  29 0d 1e 82 22 73 65 6c  65 63 74 72 25 3d a4 50  |)..."selectr%=.P|
000045a0  74 72 54 6f 57 6f 72 6b  28 70 73 65 6c 65 63 74  |trToWork(pselect|
000045b0  72 25 29 0d 1e 8c 11 f2  55 70 64 61 74 65 53 65  |r%).....UpdateSe|
000045c0  6c 65 63 74 0d 1e 96 05  e1 0d 1e a0 04 0d 1e aa  |lect............|
000045d0  0f dd f2 41 64 6a 43 6c  69 63 6b 32 0d 1e b4 0e  |...AdjClick2....|
000045e0  f2 53 63 72 54 6f 57 6f  72 6b 0d 1e be 2d e7 20  |.ScrToWork...-. |
000045f0  94 28 73 65 6c 65 63 74  6c 25 2d 77 6f 72 6b 78  |.(selectl%-workx|
00004600  25 29 3e 94 28 73 65 6c  65 63 74 72 25 2d 77 6f  |%)>.(selectr%-wo|
00004610  72 6b 78 25 29 20 8c 0d  1e c8 13 73 65 6c 65 63  |rkx%) .....selec|
00004620  74 72 25 3d 77 6f 72 6b  78 25 0d 1e d2 05 cc 0d  |tr%=workx%......|
00004630  1e dc 13 73 65 6c 65 63  74 6c 25 3d 77 6f 72 6b  |...selectl%=work|
00004640  78 25 0d 1e e6 05 cd 0d  1e f0 41 e7 20 73 65 6c  |x%........A. sel|
00004650  65 63 74 6c 25 3d 2d 31  20 84 20 73 65 6c 65 63  |ectl%=-1 . selec|
00004660  74 72 25 3d 2d 31 20 8c  20 73 65 6c 65 63 74 6c  |tr%=-1 . selectl|
00004670  25 3d 77 6f 72 6b 78 25  3a 73 65 6c 65 63 74 72  |%=workx%:selectr|
00004680  25 3d 77 6f 72 6b 78 25  0d 1e fa 2e e7 20 73 65  |%=workx%..... se|
00004690  6c 65 63 74 6c 25 3e 73  65 6c 65 63 74 72 25 20  |lectl%>selectr% |
000046a0  8c 20 c8 94 20 73 65 6c  65 63 74 6c 25 2c 73 65  |. .. selectl%,se|
000046b0  6c 65 63 74 72 25 0d 1f  04 22 70 73 65 6c 65 63  |lectr%..."pselec|
000046c0  74 6c 25 3d a4 57 6f 72  6b 54 6f 50 74 72 28 73  |tl%=.WorkToPtr(s|
000046d0  65 6c 65 63 74 6c 25 29  0d 1f 0e 22 70 73 65 6c  |electl%)..."psel|
000046e0  65 63 74 72 25 3d a4 57  6f 72 6b 54 6f 50 74 72  |ectr%=.WorkToPtr|
000046f0  28 73 65 6c 65 63 74 72  25 29 0d 1f 18 22 73 65  |(selectr%)..."se|
00004700  6c 65 63 74 6c 25 3d a4  50 74 72 54 6f 57 6f 72  |lectl%=.PtrToWor|
00004710  6b 28 70 73 65 6c 65 63  74 6c 25 29 0d 1f 22 22  |k(pselectl%)..""|
00004720  73 65 6c 65 63 74 72 25  3d a4 50 74 72 54 6f 57  |selectr%=.PtrToW|
00004730  6f 72 6b 28 70 73 65 6c  65 63 74 72 25 29 0d 1f  |ork(pselectr%)..|
00004740  2c 11 f2 55 70 64 61 74  65 53 65 6c 65 63 74 0d  |,..UpdateSelect.|
00004750  1f 36 05 e1 0d 1f 40 04  0d 1f 4a 0e dd f2 53 65  |.6....@...J...Se|
00004760  6c 44 72 61 67 32 0d 1f  54 13 74 65 6d 70 25 21  |lDrag2..T.temp%!|
00004770  30 3d 77 77 6f 72 6b 68  25 0d 1f 5e 22 c8 99 22  |0=wworkh%..^".."|
00004780  57 69 6d 70 5f 47 65 74  57 69 6e 64 6f 77 53 74  |Wimp_GetWindowSt|
00004790  61 74 65 22 2c 2c 74 65  6d 70 25 0d 1f 68 14 74  |ate",,temp%..h.t|
000047a0  65 6d 70 32 25 21 30 3d  77 77 6f 72 6b 68 25 0d  |emp2%!0=wworkh%.|
000047b0  1f 72 0e 74 65 6d 70 32  25 21 34 3d 37 0d 1f 7c  |.r.temp2%!4=7..||
000047c0  0e 74 65 6d 70 32 25 21  38 3d 30 0d 1f 86 0f 74  |.temp2%!8=0....t|
000047d0  65 6d 70 32 25 21 31 32  3d 30 0d 1f 90 0f 74 65  |emp2%!12=0....te|
000047e0  6d 70 32 25 21 31 36 3d  30 0d 1f 9a 0f 74 65 6d  |mp2%!16=0....tem|
000047f0  70 32 25 21 32 30 3d 30  0d 1f a4 15 74 65 6d 70  |p2%!20=0....temp|
00004800  32 25 21 32 34 3d 74 65  6d 70 25 21 34 0d 1f ae  |2%!24=temp%!4...|
00004810  15 74 65 6d 70 32 25 21  32 38 3d 74 65 6d 70 25  |.temp2%!28=temp%|
00004820  21 38 0d 1f b8 1a 74 65  6d 70 32 25 21 33 32 3d  |!8....temp2%!32=|
00004830  74 65 6d 70 25 21 34 2b  31 30 32 32 0d 1f c2 19  |temp%!4+1022....|
00004840  74 65 6d 70 32 25 21 33  36 3d 74 65 6d 70 25 21  |temp2%!36=temp%!|
00004850  38 2b 32 35 32 0d 1f cc  10 74 65 6d 70 32 25 21  |8+252....temp2%!|
00004860  34 30 3d 2d 31 0d 1f d6  10 74 65 6d 70 32 25 21  |40=-1....temp2%!|
00004870  34 34 3d 2d 31 0d 1f e0  10 74 65 6d 70 32 25 21  |44=-1....temp2%!|
00004880  34 38 3d 2d 31 0d 1f ea  10 74 65 6d 70 32 25 21  |48=-1....temp2%!|
00004890  35 32 3d 2d 31 0d 1f f4  1c c8 99 22 57 69 6d 70  |52=-1......"Wimp|
000048a0  5f 44 72 61 67 42 6f 78  22 2c 2c 74 65 6d 70 32  |_DragBox",,temp2|
000048b0  25 0d 1f fe 0f 64 72 61  67 74 79 70 65 25 3d 31  |%....dragtype%=1|
000048c0  0d 20 08 0e f2 53 63 72  54 6f 57 6f 72 6b 0d 20  |. ...ScrToWork. |
000048d0  12 21 e7 20 73 65 6c 65  63 74 6c 25 3d 2d 31 20  |.!. selectl%=-1 |
000048e0  84 20 73 65 6c 65 63 74  72 25 3d 2d 31 20 8c 0d  |. selectr%=-1 ..|
000048f0  20 1c 23 73 65 6c 65 63  74 6c 25 3d 77 6f 72 6b  | .#selectl%=work|
00004900  78 25 3a 73 65 6c 65 63  74 72 25 3d 77 6f 72 6b  |x%:selectr%=work|
00004910  78 25 0d 20 26 22 70 73  65 6c 65 63 74 6c 25 3d  |x%. &"pselectl%=|
00004920  a4 57 6f 72 6b 54 6f 50  74 72 28 73 65 6c 65 63  |.WorkToPtr(selec|
00004930  74 6c 25 29 0d 20 30 22  70 73 65 6c 65 63 74 72  |tl%). 0"pselectr|
00004940  25 3d a4 57 6f 72 6b 54  6f 50 74 72 28 73 65 6c  |%=.WorkToPtr(sel|
00004950  65 63 74 72 25 29 0d 20  3a 22 73 65 6c 65 63 74  |ectr%). :"select|
00004960  6c 25 3d a4 50 74 72 54  6f 57 6f 72 6b 28 70 73  |l%=.PtrToWork(ps|
00004970  65 6c 65 63 74 6c 25 29  0d 20 44 22 73 65 6c 65  |electl%). D"sele|
00004980  63 74 72 25 3d a4 50 74  72 54 6f 57 6f 72 6b 28  |ctr%=.PtrToWork(|
00004990  70 73 65 6c 65 63 74 72  25 29 0d 20 4e 05 cd 0d  |pselectr%). N...|
000049a0  20 58 05 e1 0d 20 62 04  0d 20 6c 0e dd f2 41 64  | X... b.. l...Ad|
000049b0  6a 44 72 61 67 32 0d 20  76 13 74 65 6d 70 25 21  |jDrag2. v.temp%!|
000049c0  30 3d 77 77 6f 72 6b 68  25 0d 20 80 22 c8 99 22  |0=wworkh%. .".."|
000049d0  57 69 6d 70 5f 47 65 74  57 69 6e 64 6f 77 53 74  |Wimp_GetWindowSt|
000049e0  61 74 65 22 2c 2c 74 65  6d 70 25 0d 20 8a 14 74  |ate",,temp%. ..t|
000049f0  65 6d 70 32 25 21 30 3d  77 77 6f 72 6b 68 25 0d  |emp2%!0=wworkh%.|
00004a00  20 94 0e 74 65 6d 70 32  25 21 34 3d 37 0d 20 9e  | ..temp2%!4=7. .|
00004a10  0e 74 65 6d 70 32 25 21  38 3d 30 0d 20 a8 0f 74  |.temp2%!8=0. ..t|
00004a20  65 6d 70 32 25 21 31 32  3d 30 0d 20 b2 0f 74 65  |emp2%!12=0. ..te|
00004a30  6d 70 32 25 21 31 36 3d  30 0d 20 bc 0f 74 65 6d  |mp2%!16=0. ..tem|
00004a40  70 32 25 21 32 30 3d 30  0d 20 c6 15 74 65 6d 70  |p2%!20=0. ..temp|
00004a50  32 25 21 32 34 3d 74 65  6d 70 25 21 34 0d 20 d0  |2%!24=temp%!4. .|
00004a60  15 74 65 6d 70 32 25 21  32 38 3d 74 65 6d 70 25  |.temp2%!28=temp%|
00004a70  21 38 0d 20 da 1a 74 65  6d 70 32 25 21 33 32 3d  |!8. ..temp2%!32=|
00004a80  74 65 6d 70 25 21 34 2b  31 30 32 32 0d 20 e4 19  |temp%!4+1022. ..|
00004a90  74 65 6d 70 32 25 21 33  36 3d 74 65 6d 70 25 21  |temp2%!36=temp%!|
00004aa0  38 2b 32 35 32 0d 20 ee  10 74 65 6d 70 32 25 21  |8+252. ..temp2%!|
00004ab0  34 30 3d 2d 31 0d 20 f8  10 74 65 6d 70 32 25 21  |40=-1. ..temp2%!|
00004ac0  34 34 3d 2d 31 0d 21 02  10 74 65 6d 70 32 25 21  |44=-1.!..temp2%!|
00004ad0  34 38 3d 2d 31 0d 21 0c  10 74 65 6d 70 32 25 21  |48=-1.!..temp2%!|
00004ae0  35 32 3d 2d 31 0d 21 16  1c c8 99 22 57 69 6d 70  |52=-1.!...."Wimp|
00004af0  5f 44 72 61 67 42 6f 78  22 2c 2c 74 65 6d 70 32  |_DragBox",,temp2|
00004b00  25 0d 21 20 0e f2 53 63  72 54 6f 57 6f 72 6b 0d  |%.! ..ScrToWork.|
00004b10  21 2a 21 e7 20 73 65 6c  65 63 74 6c 25 3d 2d 31  |!*!. selectl%=-1|
00004b20  20 84 20 73 65 6c 65 63  74 72 25 3d 2d 31 20 8c  | . selectr%=-1 .|
00004b30  0d 21 34 23 73 65 6c 65  63 74 6c 25 3d 77 6f 72  |.!4#selectl%=wor|
00004b40  6b 78 25 3a 73 65 6c 65  63 74 72 25 3d 77 6f 72  |kx%:selectr%=wor|
00004b50  6b 78 25 0d 21 3e 22 70  73 65 6c 65 63 74 6c 25  |kx%.!>"pselectl%|
00004b60  3d a4 57 6f 72 6b 54 6f  50 74 72 28 73 65 6c 65  |=.WorkToPtr(sele|
00004b70  63 74 6c 25 29 0d 21 48  22 70 73 65 6c 65 63 74  |ctl%).!H"pselect|
00004b80  72 25 3d a4 57 6f 72 6b  54 6f 50 74 72 28 73 65  |r%=.WorkToPtr(se|
00004b90  6c 65 63 74 72 25 29 0d  21 52 22 73 65 6c 65 63  |lectr%).!R"selec|
00004ba0  74 6c 25 3d a4 50 74 72  54 6f 57 6f 72 6b 28 70  |tl%=.PtrToWork(p|
00004bb0  73 65 6c 65 63 74 6c 25  29 0d 21 5c 22 73 65 6c  |selectl%).!\"sel|
00004bc0  65 63 74 72 25 3d a4 50  74 72 54 6f 57 6f 72 6b  |ectr%=.PtrToWork|
00004bd0  28 70 73 65 6c 65 63 74  72 25 29 0d 21 66 05 cd  |(pselectr%).!f..|
00004be0  0d 21 70 2d e7 20 94 28  73 65 6c 65 63 74 6c 25  |.!p-. .(selectl%|
00004bf0  2d 77 6f 72 6b 78 25 29  3e 94 28 73 65 6c 65 63  |-workx%)>.(selec|
00004c00  74 72 25 2d 77 6f 72 6b  78 25 29 20 8c 0d 21 7a  |tr%-workx%) ..!z|
00004c10  0f 64 72 61 67 74 79 70  65 25 3d 32 0d 21 84 05  |.dragtype%=2.!..|
00004c20  cc 0d 21 8e 0f 64 72 61  67 74 79 70 65 25 3d 31  |..!..dragtype%=1|
00004c30  0d 21 98 05 cd 0d 21 a2  05 e1 0d 21 ac 04 0d 21  |.!....!....!...!|
00004c40  b6 12 dd f2 55 70 64 61  74 65 53 65 6c 65 63 74  |....UpdateSelect|
00004c50  0d 21 c0 55 e7 20 6f 73  65 6c 65 63 74 6c 25 3d  |.!.U. oselectl%=|
00004c60  2d 31 20 84 20 6f 73 65  6c 65 63 74 72 25 3d 2d  |-1 . oselectr%=-|
00004c70  31 20 8c 20 6f 73 65 6c  65 63 74 6c 25 3d 73 65  |1 . oselectl%=se|
00004c80  6c 65 63 74 6c 25 3a 6f  73 65 6c 65 63 74 72 25  |lectl%:oselectr%|
00004c90  3d 73 65 6c 65 63 74 72  25 3a f2 50 74 53 65 6c  |=selectr%:.PtSel|
00004ca0  65 63 74 3a e1 0d 21 ca  71 e7 20 28 73 65 6c 65  |ect:..!.q. (sele|
00004cb0  63 74 6c 25 3c 3e 6f 73  65 6c 65 63 74 6c 25 29  |ctl%<>oselectl%)|
00004cc0  20 80 20 28 73 65 6c 65  63 74 72 25 3c 3e 6f 73  | . (selectr%<>os|
00004cd0  65 6c 65 63 74 72 25 29  20 8c 20 f2 50 74 53 65  |electr%) . .PtSe|
00004ce0  6c 65 63 74 3a 6f 73 65  6c 65 63 74 6c 25 3d 73  |lect:oselectl%=s|
00004cf0  65 6c 65 63 74 6c 25 3a  6f 73 65 6c 65 63 74 72  |electl%:oselectr|
00004d00  25 3d 73 65 6c 65 63 74  72 25 3a f2 50 74 53 65  |%=selectr%:.PtSe|
00004d10  6c 65 63 74 3a e1 0d 21  d4 29 e7 20 73 65 6c 65  |lect:..!.). sele|
00004d20  63 74 6c 25 3c 3e 6f 73  65 6c 65 63 74 6c 25 20  |ctl%<>oselectl% |
00004d30  8c 20 f2 53 65 74 53 65  6c 65 63 74 4c 3a e1 0d  |. .SetSelectL:..|
00004d40  21 de 29 e7 20 73 65 6c  65 63 74 72 25 3c 3e 6f  |!.). selectr%<>o|
00004d50  73 65 6c 65 63 74 72 25  20 8c 20 f2 53 65 74 53  |selectr% . .SetS|
00004d60  65 6c 65 63 74 52 3a e1  0d 21 e8 05 e1 0d 21 f2  |electR:..!....!.|
00004d70  04 0d 21 fc 0e dd f2 50  74 53 65 6c 65 63 74 0d  |..!....PtSelect.|
00004d80  22 06 16 70 6f 6c 6c 65  64 62 25 21 30 3d 77 77  |"..polledb%!0=ww|
00004d90  6f 72 6b 68 25 0d 22 10  13 70 6f 6c 6c 65 64 62  |orkh%."..polledb|
00004da0  25 21 38 3d 2d 32 38 38  0d 22 1a 13 70 6f 6c 6c  |%!8=-288."..poll|
00004db0  65 64 62 25 21 31 36 3d  2d 33 32 0d 22 24 29 e7  |edb%!16=-32."$).|
00004dc0  20 28 6f 73 65 6c 65 63  74 6c 25 3c 3e 2d 31 29  | (oselectl%<>-1)|
00004dd0  20 80 20 28 6f 73 65 6c  65 63 74 72 25 3c 3e 2d  | . (oselectr%<>-|
00004de0  31 29 20 8c 0d 22 2e 30  70 6f 6c 6c 65 64 62 25  |1) ..".0polledb%|
00004df0  21 34 3d 6f 73 65 6c 65  63 74 6c 25 3a 70 6f 6c  |!4=oselectl%:pol|
00004e00  6c 65 64 62 25 21 31 32  3d 6f 73 65 6c 65 63 74  |ledb%!12=oselect|
00004e10  72 25 2b 32 0d 22 38 29  c8 99 22 57 69 6d 70 5f  |r%+2."8).."Wimp_|
00004e20  55 70 64 61 74 65 57 69  6e 64 6f 77 22 2c 2c 70  |UpdateWindow",,p|
00004e30  6f 6c 6c 65 64 62 25 b8  6d 6f 72 65 25 0d 22 42  |olledb%.more%."B|
00004e40  0c c8 95 20 6d 6f 72 65  25 0d 22 4c 0b f2 49 6e  |... more%."L..In|
00004e50  76 43 6f 6c 0d 22 56 51  c8 93 20 c8 90 20 70 6f  |vCol."VQ.. .. po|
00004e60  6c 6c 65 64 62 25 21 32  38 2c 70 6f 6c 6c 65 64  |lledb%!28,polled|
00004e70  62 25 21 33 32 2c 70 6f  6c 6c 65 64 62 25 21 33  |b%!32,polledb%!3|
00004e80  36 2d 70 6f 6c 6c 65 64  62 25 21 32 38 2c 70 6f  |6-polledb%!28,po|
00004e90  6c 6c 65 64 62 25 21 34  30 2d 70 6f 6c 6c 65 64  |lledb%!40-polled|
00004ea0  62 25 21 33 32 0d 22 60  29 c8 99 22 57 69 6d 70  |b%!32."`).."Wimp|
00004eb0  5f 47 65 74 52 65 63 74  61 6e 67 6c 65 22 2c 2c  |_GetRectangle",,|
00004ec0  70 6f 6c 6c 65 64 62 25  b8 6d 6f 72 65 25 0d 22  |polledb%.more%."|
00004ed0  6a 05 ce 0d 22 74 05 cd  0d 22 7e 05 e1 0d 22 88  |j..."t..."~...".|
00004ee0  04 0d 22 92 10 dd f2 53  65 74 53 65 6c 65 63 74  |.."....SetSelect|
00004ef0  4c 0d 22 9c 16 70 6f 6c  6c 65 64 62 25 21 30 3d  |L."..polledb%!0=|
00004f00  77 77 6f 72 6b 68 25 0d  22 a6 13 70 6f 6c 6c 65  |wworkh%."..polle|
00004f10  64 62 25 21 38 3d 2d 32  38 38 0d 22 b0 13 70 6f  |db%!8=-288."..po|
00004f20  6c 6c 65 64 62 25 21 31  36 3d 2d 33 32 0d 22 ba  |lledb%!16=-32.".|
00004f30  28 e7 20 28 73 65 6c 65  63 74 6c 25 3c 3e 2d 31  |(. (selectl%<>-1|
00004f40  29 20 80 20 28 6f 73 65  6c 65 63 74 6c 25 3c 3e  |) . (oselectl%<>|
00004f50  2d 31 29 20 8c 0d 22 c4  70 e7 20 73 65 6c 65 63  |-1) ..".p. selec|
00004f60  74 6c 25 3c 6f 73 65 6c  65 63 74 6c 25 20 8c 20  |tl%<oselectl% . |
00004f70  70 6f 6c 6c 65 64 62 25  21 34 3d 73 65 6c 65 63  |polledb%!4=selec|
00004f80  74 6c 25 3a 70 6f 6c 6c  65 64 62 25 21 31 32 3d  |tl%:polledb%!12=|
00004f90  6f 73 65 6c 65 63 74 6c  25 20 8b 20 70 6f 6c 6c  |oselectl% . poll|
00004fa0  65 64 62 25 21 34 3d 6f  73 65 6c 65 63 74 6c 25  |edb%!4=oselectl%|
00004fb0  3a 70 6f 6c 6c 65 64 62  25 21 31 32 3d 73 65 6c  |:polledb%!12=sel|
00004fc0  65 63 74 6c 25 0d 22 ce  29 c8 99 22 57 69 6d 70  |ectl%.".).."Wimp|
00004fd0  5f 55 70 64 61 74 65 57  69 6e 64 6f 77 22 2c 2c  |_UpdateWindow",,|
00004fe0  70 6f 6c 6c 65 64 62 25  b8 6d 6f 72 65 25 0d 22  |polledb%.more%."|
00004ff0  d8 0c c8 95 20 6d 6f 72  65 25 0d 22 e2 0b f2 49  |.... more%."...I|
00005000  6e 76 43 6f 6c 0d 22 ec  51 c8 93 20 c8 90 20 70  |nvCol.".Q.. .. p|
00005010  6f 6c 6c 65 64 62 25 21  32 38 2c 70 6f 6c 6c 65  |olledb%!28,polle|
00005020  64 62 25 21 33 32 2c 70  6f 6c 6c 65 64 62 25 21  |db%!32,polledb%!|
00005030  33 36 2d 70 6f 6c 6c 65  64 62 25 21 32 38 2c 70  |36-polledb%!28,p|
00005040  6f 6c 6c 65 64 62 25 21  34 30 2d 70 6f 6c 6c 65  |olledb%!40-polle|
00005050  64 62 25 21 33 32 0d 22  f6 29 c8 99 22 57 69 6d  |db%!32.".).."Wim|
00005060  70 5f 47 65 74 52 65 63  74 61 6e 67 6c 65 22 2c  |p_GetRectangle",|
00005070  2c 70 6f 6c 6c 65 64 62  25 b8 6d 6f 72 65 25 0d  |,polledb%.more%.|
00005080  23 00 05 ce 0d 23 0a 16  6f 73 65 6c 65 63 74 6c  |#....#..oselectl|
00005090  25 3d 73 65 6c 65 63 74  6c 25 0d 23 14 05 cd 0d  |%=selectl%.#....|
000050a0  23 1e 05 e1 0d 23 28 04  0d 23 32 10 dd f2 53 65  |#....#(..#2...Se|
000050b0  74 53 65 6c 65 63 74 52  0d 23 3c 16 70 6f 6c 6c  |tSelectR.#<.poll|
000050c0  65 64 62 25 21 30 3d 77  77 6f 72 6b 68 25 0d 23  |edb%!0=wworkh%.#|
000050d0  46 13 70 6f 6c 6c 65 64  62 25 21 38 3d 2d 32 38  |F.polledb%!8=-28|
000050e0  38 0d 23 50 13 70 6f 6c  6c 65 64 62 25 21 31 36  |8.#P.polledb%!16|
000050f0  3d 2d 33 32 0d 23 5a 28  e7 20 28 73 65 6c 65 63  |=-32.#Z(. (selec|
00005100  74 72 25 3c 3e 2d 31 29  20 80 20 28 6f 73 65 6c  |tr%<>-1) . (osel|
00005110  65 63 74 72 25 3c 3e 2d  31 29 20 8c 0d 23 64 78  |ectr%<>-1) ..#dx|
00005120  e7 20 73 65 6c 65 63 74  72 25 3c 6f 73 65 6c 65  |. selectr%<osele|
00005130  63 74 72 25 20 8c 20 70  6f 6c 6c 65 64 62 25 21  |ctr% . polledb%!|
00005140  34 3d 73 65 6c 65 63 74  72 25 2b 32 3a 70 6f 6c  |4=selectr%+2:pol|
00005150  6c 65 64 62 25 21 31 32  3d 6f 73 65 6c 65 63 74  |ledb%!12=oselect|
00005160  72 25 2b 32 20 8b 20 70  6f 6c 6c 65 64 62 25 21  |r%+2 . polledb%!|
00005170  34 3d 6f 73 65 6c 65 63  74 72 25 2b 32 3a 70 6f  |4=oselectr%+2:po|
00005180  6c 6c 65 64 62 25 21 31  32 3d 73 65 6c 65 63 74  |lledb%!12=select|
00005190  72 25 2b 32 0d 23 6e 29  c8 99 22 57 69 6d 70 5f  |r%+2.#n).."Wimp_|
000051a0  55 70 64 61 74 65 57 69  6e 64 6f 77 22 2c 2c 70  |UpdateWindow",,p|
000051b0  6f 6c 6c 65 64 62 25 b8  6d 6f 72 65 25 0d 23 78  |olledb%.more%.#x|
000051c0  0c c8 95 20 6d 6f 72 65  25 0d 23 82 0b f2 49 6e  |... more%.#...In|
000051d0  76 43 6f 6c 0d 23 8c 51  c8 93 20 c8 90 20 70 6f  |vCol.#.Q.. .. po|
000051e0  6c 6c 65 64 62 25 21 32  38 2c 70 6f 6c 6c 65 64  |lledb%!28,polled|
000051f0  62 25 21 33 32 2c 70 6f  6c 6c 65 64 62 25 21 33  |b%!32,polledb%!3|
00005200  36 2d 70 6f 6c 6c 65 64  62 25 21 32 38 2c 70 6f  |6-polledb%!28,po|
00005210  6c 6c 65 64 62 25 21 34  30 2d 70 6f 6c 6c 65 64  |lledb%!40-polled|
00005220  62 25 21 33 32 0d 23 96  29 c8 99 22 57 69 6d 70  |b%!32.#.).."Wimp|
00005230  5f 47 65 74 52 65 63 74  61 6e 67 6c 65 22 2c 2c  |_GetRectangle",,|
00005240  70 6f 6c 6c 65 64 62 25  b8 6d 6f 72 65 25 0d 23  |polledb%.more%.#|
00005250  a0 05 ce 0d 23 aa 16 6f  73 65 6c 65 63 74 72 25  |....#..oselectr%|
00005260  3d 73 65 6c 65 63 74 72  25 0d 23 b4 05 cd 0d 23  |=selectr%.#....#|
00005270  be 05 e1 0d 23 c8 04 0d  23 d2 0e dd f2 50 6c 6f  |....#...#....Plo|
00005280  74 50 50 74 72 0d 23 dc  30 e7 20 70 6c 61 79 70  |tPPtr.#.0. playp|
00005290  25 3c 30 20 84 20 70 6c  61 79 70 25 3e 73 61 6d  |%<0 . playp%>sam|
000052a0  70 6c 65 6c 65 6e 25 20  8c 20 70 6c 61 79 70 25  |plelen% . playp%|
000052b0  3d 2d 31 3a e1 0d 23 e6  1b 6c 6c 70 25 3d a4 50  |=-1:..#..llp%=.P|
000052c0  74 72 54 6f 57 6f 72 6b  28 70 6c 61 79 70 25 29  |trToWork(playp%)|
000052d0  0d 23 f0 13 74 65 6d 70  25 21 30 3d 77 77 6f 72  |.#..temp%!0=wwor|
000052e0  6b 68 25 0d 23 fa 22 c8  99 22 57 69 6d 70 5f 47  |kh%.#.".."Wimp_G|
000052f0  65 74 57 69 6e 64 6f 77  53 74 61 74 65 22 2c 2c  |etWindowState",,|
00005300  74 65 6d 70 25 0d 24 04  1d 6c 6c 25 3d 74 65 6d  |temp%.$..ll%=tem|
00005310  70 25 21 34 2d 74 65 6d  70 25 21 32 30 2b 6c 6c  |p%!4-temp%!20+ll|
00005320  70 25 0d 24 0e 26 e7 20  6c 6c 25 3e 74 65 6d 70  |p%.$.&. ll%>temp|
00005330  25 21 34 2d 34 20 80 20  6c 6c 25 3c 74 65 6d 70  |%!4-4 . ll%<temp|
00005340  25 21 31 32 2b 34 20 8c  0d 24 18 16 70 6f 6c 6c  |%!12+4 ..$..poll|
00005350  65 64 62 25 21 30 3d 77  77 6f 72 6b 68 25 0d 24  |edb%!0=wworkh%.$|
00005360  22 13 70 6f 6c 6c 65 64  62 25 21 34 3d 6c 6c 70  |".polledb%!4=llp|
00005370  25 0d 24 2c 13 70 6f 6c  6c 65 64 62 25 21 38 3d  |%.$,.polledb%!8=|
00005380  2d 32 38 38 0d 24 36 16  70 6f 6c 6c 65 64 62 25  |-288.$6.polledb%|
00005390  21 31 32 3d 6c 6c 70 25  2b 32 0d 24 40 11 70 6f  |!12=llp%+2.$@.po|
000053a0  6c 6c 65 64 62 25 21 31  36 3d 30 0d 24 4a 29 c8  |lledb%!16=0.$J).|
000053b0  99 22 57 69 6d 70 5f 55  70 64 61 74 65 57 69 6e  |."Wimp_UpdateWin|
000053c0  64 6f 77 22 2c 2c 70 6f  6c 6c 65 64 62 25 b8 6d  |dow",,polledb%.m|
000053d0  6f 72 65 25 0d 24 54 0c  c8 95 20 6d 6f 72 65 25  |ore%.$T... more%|
000053e0  0d 24 5e 0b f2 49 6e 76  43 6f 6c 0d 24 68 27 86  |.$^..InvCol.$h'.|
000053f0  20 6c 6c 25 2c 70 6f 6c  6c 65 64 62 25 21 38 2c  | ll%,polledb%!8,|
00005400  6c 6c 25 2c 70 6f 6c 6c  65 64 62 25 21 38 2b 32  |ll%,polledb%!8+2|
00005410  38 38 0d 24 72 29 c8 99  22 57 69 6d 70 5f 47 65  |88.$r).."Wimp_Ge|
00005420  74 52 65 63 74 61 6e 67  6c 65 22 2c 2c 70 6f 6c  |tRectangle",,pol|
00005430  6c 65 64 62 25 b8 6d 6f  72 65 25 0d 24 7c 05 ce  |ledb%.more%.$|..|
00005440  0d 24 86 05 cd 0d 24 90  05 e1 0d 24 9a 04 0d 24  |.$....$....$...$|
00005450  a4 11 dd f2 55 70 64 61  74 65 4c 6f 6f 70 50 0d  |....UpdateLoopP.|
00005460  24 ae 13 74 65 6d 70 25  21 30 3d 77 77 6f 72 6b  |$..temp%!0=wwork|
00005470  68 25 0d 24 b8 22 c8 99  22 57 69 6d 70 5f 47 65  |h%.$.".."Wimp_Ge|
00005480  74 57 69 6e 64 6f 77 53  74 61 74 65 22 2c 2c 74  |tWindowState",,t|
00005490  65 6d 70 25 0d 24 c2 16  70 6f 6c 6c 65 64 62 25  |emp%.$..polledb%|
000054a0  21 30 3d 77 77 6f 72 6b  68 25 0d 24 cc 17 70 6f  |!0=wworkh%.$..po|
000054b0  6c 6c 65 64 62 25 21 34  3d 74 65 6d 70 25 21 32  |lledb%!4=temp%!2|
000054c0  30 0d 24 d6 13 70 6f 6c  6c 65 64 62 25 21 38 3d  |0.$..polledb%!8=|
000054d0  2d 32 38 38 0d 24 e0 1d  70 6f 6c 6c 65 64 62 25  |-288.$..polledb%|
000054e0  21 31 32 3d 74 65 6d 70  25 21 32 30 2b 31 30 32  |!12=temp%!20+102|
000054f0  34 0d 24 ea 11 70 6f 6c  6c 65 64 62 25 21 31 36  |4.$..polledb%!16|
00005500  3d 30 0d 24 f4 1f 6c 6c  25 3d 74 65 6d 70 25 21  |=0.$..ll%=temp%!|
00005510  34 2d 74 65 6d 70 25 21  32 30 2b 6c 6f 6f 70 6c  |4-temp%!20+loopl|
00005520  25 0d 24 fe 21 6f 6c 6c  25 3d 74 65 6d 70 25 21  |%.$.!oll%=temp%!|
00005530  34 2d 74 65 6d 70 25 21  32 30 2b 6f 6c 6f 6f 70  |4-temp%!20+oloop|
00005540  6c 25 0d 25 08 1f 6c 72  25 3d 74 65 6d 70 25 21  |l%.%..lr%=temp%!|
00005550  34 2d 74 65 6d 70 25 21  32 30 2b 6c 6f 6f 70 72  |4-temp%!20+loopr|
00005560  25 0d 25 12 21 6f 6c 72  25 3d 74 65 6d 70 25 21  |%.%.!olr%=temp%!|
00005570  34 2d 74 65 6d 70 25 21  32 30 2b 6f 6c 6f 6f 70  |4-temp%!20+oloop|
00005580  72 25 0d 25 1c 0b 6c 64  72 25 3d 2d 31 0d 25 26  |r%.%..ldr%=-1.%&|
00005590  0c 6f 6c 64 72 25 3d 2d  31 0d 25 30 0b 72 64 72  |.oldr%=-1.%0.rdr|
000055a0  25 3d 2d 31 0d 25 3a 0c  6f 72 64 72 25 3d 2d 31  |%=-1.%:.ordr%=-1|
000055b0  0d 25 44 2f e7 20 6c 6c  25 3c 74 65 6d 70 25 21  |.%D/. ll%<temp%!|
000055c0  34 2d 33 32 20 84 20 6c  6c 25 3e 74 65 6d 70 25  |4-32 . ll%>temp%|
000055d0  21 31 32 2b 33 32 20 8c  20 6c 64 72 25 3d 30 0d  |!12+32 . ldr%=0.|
000055e0  25 4e 32 e7 20 6f 6c 6c  25 3c 74 65 6d 70 25 21  |%N2. oll%<temp%!|
000055f0  34 2d 33 32 20 84 20 6f  6c 6c 25 3e 74 65 6d 70  |4-32 . oll%>temp|
00005600  25 21 31 32 2b 33 32 20  8c 20 6f 6c 64 72 25 3d  |%!12+32 . oldr%=|
00005610  30 0d 25 58 2f e7 20 6c  72 25 3c 74 65 6d 70 25  |0.%X/. lr%<temp%|
00005620  21 34 2d 33 32 20 84 20  6c 72 25 3e 74 65 6d 70  |!4-32 . lr%>temp|
00005630  25 21 31 32 2b 33 32 20  8c 20 72 64 72 25 3d 30  |%!12+32 . rdr%=0|
00005640  0d 25 62 32 e7 20 6f 6c  72 25 3c 74 65 6d 70 25  |.%b2. olr%<temp%|
00005650  21 34 2d 33 32 20 84 20  6f 6c 72 25 3e 74 65 6d  |!4-32 . olr%>tem|
00005660  70 25 21 31 32 2b 33 32  20 8c 20 6f 72 64 72 25  |p%!12+32 . ordr%|
00005670  3d 30 0d 25 6c 29 c8 99  22 57 69 6d 70 5f 55 70  |=0.%l).."Wimp_Up|
00005680  64 61 74 65 57 69 6e 64  6f 77 22 2c 2c 70 6f 6c  |dateWindow",,pol|
00005690  6c 65 64 62 25 b8 6d 6f  72 65 25 0d 25 76 0c c8  |ledb%.more%.%v..|
000056a0  95 20 6d 6f 72 65 25 0d  25 80 0c e7 20 6c 64 72  |. more%.%... ldr|
000056b0  25 20 8c 0d 25 8a 0c f2  49 6e 76 43 6f 6c 32 0d  |% ..%...InvCol2.|
000056c0  25 94 27 86 20 6c 6c 25  2c 70 6f 6c 6c 65 64 62  |%.'. ll%,polledb|
000056d0  25 21 38 2c 6c 6c 25 2c  70 6f 6c 6c 65 64 62 25  |%!8,ll%,polledb%|
000056e0  21 38 2b 32 35 36 0d 25  9e 18 ec 20 6c 6c 25 2c  |!8+256.%... ll%,|
000056f0  70 6f 6c 6c 65 64 62 25  21 38 2b 32 36 30 0d 25  |polledb%!8+260.%|
00005700  a8 1a ec 20 6c 6c 25 2b  38 2c 70 6f 6c 6c 65 64  |... ll%+8,polled|
00005710  62 25 21 38 2b 32 38 30  0d 25 b2 1d f0 20 38 35  |b%!8+280.%... 85|
00005720  2c 6c 6c 25 2d 38 2c 70  6f 6c 6c 65 64 62 25 21  |,ll%-8,polledb%!|
00005730  38 2b 32 38 30 0d 25 bc  05 cd 0d 25 c6 0d e7 20  |8+280.%....%... |
00005740  6f 6c 64 72 25 20 8c 0d  25 d0 0c f2 49 6e 76 43  |oldr% ..%...InvC|
00005750  6f 6c 32 0d 25 da 29 86  20 6f 6c 6c 25 2c 70 6f  |ol2.%.). oll%,po|
00005760  6c 6c 65 64 62 25 21 38  2c 6f 6c 6c 25 2c 70 6f  |lledb%!8,oll%,po|
00005770  6c 6c 65 64 62 25 21 38  2b 32 35 36 0d 25 e4 19  |lledb%!8+256.%..|
00005780  ec 20 6f 6c 6c 25 2c 70  6f 6c 6c 65 64 62 25 21  |. oll%,polledb%!|
00005790  38 2b 32 36 30 0d 25 ee  1b ec 20 6f 6c 6c 25 2b  |8+260.%... oll%+|
000057a0  38 2c 70 6f 6c 6c 65 64  62 25 21 38 2b 32 38 30  |8,polledb%!8+280|
000057b0  0d 25 f8 1e f0 20 38 35  2c 6f 6c 6c 25 2d 38 2c  |.%... 85,oll%-8,|
000057c0  70 6f 6c 6c 65 64 62 25  21 38 2b 32 38 30 0d 26  |polledb%!8+280.&|
000057d0  02 05 cd 0d 26 0c 0c e7  20 72 64 72 25 20 8c 0d  |....&... rdr% ..|
000057e0  26 16 0c f2 49 6e 76 43  6f 6c 33 0d 26 20 27 86  |&...InvCol3.& '.|
000057f0  20 6c 72 25 2c 70 6f 6c  6c 65 64 62 25 21 38 2c  | lr%,polledb%!8,|
00005800  6c 72 25 2c 70 6f 6c 6c  65 64 62 25 21 38 2b 32  |lr%,polledb%!8+2|
00005810  35 36 0d 26 2a 18 ec 20  6c 72 25 2c 70 6f 6c 6c  |56.&*.. lr%,poll|
00005820  65 64 62 25 21 38 2b 32  36 30 0d 26 34 1a ec 20  |edb%!8+260.&4.. |
00005830  6c 72 25 2b 38 2c 70 6f  6c 6c 65 64 62 25 21 38  |lr%+8,polledb%!8|
00005840  2b 32 38 30 0d 26 3e 1d  f0 20 38 35 2c 6c 72 25  |+280.&>.. 85,lr%|
00005850  2d 38 2c 70 6f 6c 6c 65  64 62 25 21 38 2b 32 38  |-8,polledb%!8+28|
00005860  30 0d 26 48 05 cd 0d 26  52 0d e7 20 6f 72 64 72  |0.&H...&R.. ordr|
00005870  25 20 8c 0d 26 5c 0c f2  49 6e 76 43 6f 6c 33 0d  |% ..&\..InvCol3.|
00005880  26 66 29 86 20 6f 6c 72  25 2c 70 6f 6c 6c 65 64  |&f). olr%,polled|
00005890  62 25 21 38 2c 6f 6c 72  25 2c 70 6f 6c 6c 65 64  |b%!8,olr%,polled|
000058a0  62 25 21 38 2b 32 35 36  0d 26 70 19 ec 20 6f 6c  |b%!8+256.&p.. ol|
000058b0  72 25 2c 70 6f 6c 6c 65  64 62 25 21 38 2b 32 36  |r%,polledb%!8+26|
000058c0  30 0d 26 7a 1b ec 20 6f  6c 72 25 2b 38 2c 70 6f  |0.&z.. olr%+8,po|
000058d0  6c 6c 65 64 62 25 21 38  2b 32 38 30 0d 26 84 1e  |lledb%!8+280.&..|
000058e0  f0 20 38 35 2c 6f 6c 72  25 2d 38 2c 70 6f 6c 6c  |. 85,olr%-8,poll|
000058f0  65 64 62 25 21 38 2b 32  38 30 0d 26 8e 05 cd 0d  |edb%!8+280.&....|
00005900  26 98 29 c8 99 22 57 69  6d 70 5f 47 65 74 52 65  |&.).."Wimp_GetRe|
00005910  63 74 61 6e 67 6c 65 22  2c 2c 70 6f 6c 6c 65 64  |ctangle",,polled|
00005920  62 25 b8 6d 6f 72 65 25  0d 26 a2 05 ce 0d 26 ac  |b%.more%.&....&.|
00005930  21 6f 6c 6f 6f 70 6c 25  3d 6c 6f 6f 70 6c 25 3a  |!oloopl%=loopl%:|
00005940  6f 6c 6f 6f 70 72 25 3d  6c 6f 6f 70 72 25 0d 26  |oloopr%=loopr%.&|
00005950  b6 10 f2 55 70 64 61 74  65 53 4c 6f 6f 70 0d 26  |...UpdateSLoop.&|
00005960  c0 05 e1 0d 26 ca 04 0d  26 d4 11 dd f2 55 70 64  |....&...&....Upd|
00005970  61 74 65 53 4c 6f 6f 70  0d 26 de 13 e7 20 70 6c  |ateSLoop.&... pl|
00005980  61 79 74 79 70 65 25 3d  31 20 8c 0d 26 e8 19 c8  |aytype%=1 ..&...|
00005990  99 22 53 46 58 4d 50 5f  47 65 74 42 6c 6f 63 6b  |."SFXMP_GetBlock|
000059a0  22 b8 41 25 0d 26 f2 5e  41 25 3d 41 25 2b 33 32  |".A%.&.^A%=A%+32|
000059b0  3a 41 25 21 34 3d 73 74  61 72 74 73 61 6d 70 6c  |:A%!4=startsampl|
000059c0  65 25 2b 70 6c 6f 6f 70  6c 25 3a 41 25 21 31 32  |e%+ploopl%:A%!12|
000059d0  3d 70 6c 6f 6f 70 72 25  2d 70 6c 6f 6f 70 6c 25  |=ploopr%-ploopl%|
000059e0  3a 41 25 21 32 30 3d 30  3a 41 25 21 31 36 3d 28  |:A%!20=0:A%!16=(|
000059f0  41 25 21 31 36 29 20 80  20 26 66 66 66 66 65 66  |A%!16) . &ffffef|
00005a00  66 66 0d 26 fc 5e 41 25  3d 41 25 2b 33 32 3a 41  |ff.&.^A%=A%+32:A|
00005a10  25 21 34 3d 73 74 61 72  74 73 61 6d 70 6c 65 25  |%!4=startsample%|
00005a20  2b 70 6c 6f 6f 70 6c 25  3a 41 25 21 31 32 3d 70  |+ploopl%:A%!12=p|
00005a30  6c 6f 6f 70 72 25 2d 70  6c 6f 6f 70 6c 25 3a 41  |loopr%-ploopl%:A|
00005a40  25 21 32 30 3d 30 3a 41  25 21 31 36 3d 28 41 25  |%!20=0:A%!16=(A%|
00005a50  21 31 36 29 20 80 20 26  66 66 66 66 65 66 66 66  |!16) . &ffffefff|
00005a60  0d 27 06 5e 41 25 3d 41  25 2b 33 32 3a 41 25 21  |.'.^A%=A%+32:A%!|
00005a70  34 3d 73 74 61 72 74 73  61 6d 70 6c 65 25 2b 70  |4=startsample%+p|
00005a80  6c 6f 6f 70 6c 25 3a 41  25 21 31 32 3d 70 6c 6f  |loopl%:A%!12=plo|
00005a90  6f 70 72 25 2d 70 6c 6f  6f 70 6c 25 3a 41 25 21  |opr%-ploopl%:A%!|
00005aa0  32 30 3d 30 3a 41 25 21  31 36 3d 28 41 25 21 31  |20=0:A%!16=(A%!1|
00005ab0  36 29 20 80 20 26 66 66  66 66 65 66 66 66 0d 27  |6) . &ffffefff.'|
00005ac0  10 05 cd 0d 27 1a 13 e7  20 70 6c 61 79 74 79 70  |....'... playtyp|
00005ad0  65 25 3d 33 20 8c 0d 27  24 19 c8 99 22 53 46 58  |e%=3 ..'$..."SFX|
00005ae0  4d 50 5f 47 65 74 42 6c  6f 63 6b 22 b8 41 25 0d  |MP_GetBlock".A%.|
00005af0  27 2e 54 41 25 3d 41 25  2b 33 32 3a 41 25 21 34  |'.TA%=A%+32:A%!4|
00005b00  3d 73 74 61 72 74 73 61  6d 70 6c 65 25 3a 41 25  |=startsample%:A%|
00005b10  21 31 32 3d 70 6c 6f 6f  70 72 25 3a 41 25 21 32  |!12=ploopr%:A%!2|
00005b20  30 3d 70 6c 6f 6f 70 6c  25 3a 41 25 21 31 36 3d  |0=ploopl%:A%!16=|
00005b30  28 41 25 21 31 36 29 20  80 20 26 66 66 66 66 65  |(A%!16) . &ffffe|
00005b40  66 66 66 0d 27 38 54 41  25 3d 41 25 2b 33 32 3a  |fff.'8TA%=A%+32:|
00005b50  41 25 21 34 3d 73 74 61  72 74 73 61 6d 70 6c 65  |A%!4=startsample|
00005b60  25 3a 41 25 21 31 32 3d  70 6c 6f 6f 70 72 25 3a  |%:A%!12=ploopr%:|
00005b70  41 25 21 32 30 3d 70 6c  6f 6f 70 6c 25 3a 41 25  |A%!20=ploopl%:A%|
00005b80  21 31 36 3d 28 41 25 21  31 36 29 20 80 20 26 66  |!16=(A%!16) . &f|
00005b90  66 66 66 65 66 66 66 0d  27 42 54 41 25 3d 41 25  |fffefff.'BTA%=A%|
00005ba0  2b 33 32 3a 41 25 21 34  3d 73 74 61 72 74 73 61  |+32:A%!4=startsa|
00005bb0  6d 70 6c 65 25 3a 41 25  21 31 32 3d 70 6c 6f 6f  |mple%:A%!12=ploo|
00005bc0  70 72 25 3a 41 25 21 32  30 3d 70 6c 6f 6f 70 6c  |pr%:A%!20=ploopl|
00005bd0  25 3a 41 25 21 31 36 3d  28 41 25 21 31 36 29 20  |%:A%!16=(A%!16) |
00005be0  80 20 26 66 66 66 66 65  66 66 66 0d 27 4c 05 cd  |. &ffffefff.'L..|
00005bf0  0d 27 56 05 e1 0d 27 60  04 0d 27 6a 10 dd f2 49  |.'V...'`..'j...I|
00005c00  63 6f 6e 42 43 6c 69 63  6b 0d 27 74 13 c8 8e 20  |conBClick.'t... |
00005c10  70 6f 6c 6c 65 64 62 25  21 38 20 ca 0d 27 7e 13  |polledb%!8 ..'~.|
00005c20  c9 20 31 2c 34 3a f2 4f  70 65 6e 57 6f 72 6b 0d  |. 1,4:.OpenWork.|
00005c30  27 88 6c c9 20 32 3a 6c  61 73 74 6d 78 25 3d 70  |'.l. 2:lastmx%=p|
00005c40  6f 6c 6c 65 64 62 25 21  30 2d 36 34 3a 6c 61 73  |olledb%!0-64:las|
00005c50  74 6d 79 25 3d 31 38 34  3a 6c 61 73 74 6d 65 6e  |tmy%=184:lastmen|
00005c60  75 25 3d 69 63 6f 6e 6d  65 6e 75 25 3a c8 99 22  |u%=iconmenu%:.."|
00005c70  57 69 6d 70 5f 43 72 65  61 74 65 4d 65 6e 75 22  |Wimp_CreateMenu"|
00005c80  2c 2c 6c 61 73 74 6d 65  6e 75 25 2c 6c 61 73 74  |,,lastmenu%,last|
00005c90  6d 78 25 2c 6c 61 73 74  6d 79 25 0d 27 92 05 cb  |mx%,lastmy%.'...|
00005ca0  0d 27 9c 05 e1 0d 27 a6  04 0d 27 b0 0e dd f2 4f  |.'....'...'....O|
00005cb0  70 65 6e 57 6f 72 6b 0d  27 ba 16 70 6f 6c 6c 65  |penWork.'..polle|
00005cc0  64 62 25 21 30 3d 77 77  6f 72 6b 68 25 0d 27 c4  |db%!0=wworkh%.'.|
00005cd0  25 c8 99 22 57 69 6d 70  5f 47 65 74 57 69 6e 64  |%.."Wimp_GetWind|
00005ce0  6f 77 53 74 61 74 65 22  2c 2c 70 6f 6c 6c 65 64  |owState",,polled|
00005cf0  62 25 0d 27 ce 12 70 6f  6c 6c 65 64 62 25 21 32  |b%.'..polledb%!2|
00005d00  38 3d 2d 31 0d 27 d8 10  f2 4f 70 65 6e 5f 57 69  |8=-1.'...Open_Wi|
00005d10  6e 64 6f 77 0d 27 e2 1a  70 6f 6c 6c 65 64 62 25  |ndow.'..polledb%|
00005d20  21 30 3d 77 6b 65 79 62  6f 61 72 64 68 25 0d 27  |!0=wkeyboardh%.'|
00005d30  ec 25 c8 99 22 57 69 6d  70 5f 47 65 74 57 69 6e  |.%.."Wimp_GetWin|
00005d40  64 6f 77 53 74 61 74 65  22 2c 2c 70 6f 6c 6c 65  |dowState",,polle|
00005d50  64 62 25 0d 27 f6 12 70  6f 6c 6c 65 64 62 25 21  |db%.'..polledb%!|
00005d60  32 38 3d 2d 31 0d 28 00  21 c8 99 22 57 69 6d 70  |28=-1.(.!.."Wimp|
00005d70  5f 4f 70 65 6e 57 69 6e  64 6f 77 22 2c 2c 70 6f  |_OpenWindow",,po|
00005d80  6c 6c 65 64 62 25 0d 28  0a 05 e1 0d 28 14 04 0d  |lledb%.(....(...|
00005d90  28 1e 13 dd f2 55 73 65  72 5f 44 72 61 67 5f 42  |(....User_Drag_B|
00005da0  6f 78 0d 28 28 12 c8 8e  20 64 72 61 67 74 79 70  |ox.((... dragtyp|
00005db0  65 25 20 ca 0d 28 32 1a  c9 20 31 2c 32 2c 33 2c  |e% ..(2.. 1,2,3,|
00005dc0  34 3a 64 72 61 67 74 79  70 65 25 3d 2d 31 0d 28  |4:dragtype%=-1.(|
00005dd0  3c 12 c9 20 35 3a f2 44  72 61 67 53 61 76 65 64  |<.. 5:.DragSaved|
00005de0  0d 28 46 05 cb 0d 28 50  05 e1 0d 28 5a 04 0d 28  |.(F...(P...(Z..(|
00005df0  64 0c dd f2 52 64 57 6f  72 6b 0d 28 6e 16 70 6f  |d...RdWork.(n.po|
00005e00  6c 6c 65 64 62 25 21 30  3d 77 77 6f 72 6b 68 25  |lledb%!0=wworkh%|
00005e10  0d 28 78 29 c8 99 22 57  69 6d 70 5f 52 65 64 72  |.(x).."Wimp_Redr|
00005e20  61 77 57 69 6e 64 6f 77  22 2c 2c 70 6f 6c 6c 65  |awWindow",,polle|
00005e30  64 62 25 b8 6d 6f 72 65  25 0d 28 82 0f f2 52 65  |db%.more%.(...Re|
00005e40  64 72 61 77 57 6f 72 6b  0d 28 8c 05 e1 0d 28 96  |drawWork.(....(.|
00005e50  04 0d 28 a0 0c dd f2 52  64 53 6f 6e 67 0d 28 aa  |..(....RdSong.(.|
00005e60  16 70 6f 6c 6c 65 64 62  25 21 30 3d 77 73 6f 6e  |.polledb%!0=wson|
00005e70  67 68 25 0d 28 b4 29 c8  99 22 57 69 6d 70 5f 52  |gh%.(.).."Wimp_R|
00005e80  65 64 72 61 77 57 69 6e  64 6f 77 22 2c 2c 70 6f  |edrawWindow",,po|
00005e90  6c 6c 65 64 62 25 b8 6d  6f 72 65 25 0d 28 be 0f  |lledb%.more%.(..|
00005ea0  f2 52 65 64 72 61 77 53  6f 6e 67 0d 28 c8 05 e1  |.RedrawSong.(...|
00005eb0  0d 28 d2 04 0d 28 dc 10  dd f2 52 64 53 6f 6e 67  |.(...(....RdSong|
00005ec0  50 61 6e 65 0d 28 e6 1a  70 6f 6c 6c 65 64 62 25  |Pane.(..polledb%|
00005ed0  21 30 3d 77 73 6f 6e 67  70 61 6e 65 68 25 0d 28  |!0=wsongpaneh%.(|
00005ee0  f0 29 c8 99 22 57 69 6d  70 5f 52 65 64 72 61 77  |.).."Wimp_Redraw|
00005ef0  57 69 6e 64 6f 77 22 2c  2c 70 6f 6c 6c 65 64 62  |Window",,polledb|
00005f00  25 b8 6d 6f 72 65 25 0d  28 fa 0f f2 4a 75 73 74  |%.more%.(...Just|
00005f10  52 65 64 72 61 77 0d 29  04 05 e1 0d 29 0e 04 0d  |Redraw.)....)...|
00005f20  29 18 11 dd f2 4b 65 79  5f 50 72 65 73 73 65 64  |)....Key_Pressed|
00005f30  0d 29 22 43 e7 20 70 6f  6c 6c 65 64 62 25 21 32  |.)"C. polledb%!2|
00005f40  34 3d 26 31 63 63 20 8c  20 c8 99 22 53 46 58 4d  |4=&1cc . .."SFXM|
00005f50  50 5f 44 69 73 61 62 6c  65 22 3a c8 99 22 57 69  |P_Disable":.."Wi|
00005f60  6d 70 5f 50 72 6f 63 65  73 73 4b 65 79 22 2c 26  |mp_ProcessKey",&|
00005f70  31 63 63 0d 29 2c 43 e7  20 70 6f 6c 6c 65 64 62  |1cc.),C. polledb|
00005f80  25 21 32 34 3d 26 31 66  63 20 8c 20 c8 99 22 53  |%!24=&1fc . .."S|
00005f90  46 58 4d 50 5f 44 69 73  61 62 6c 65 22 3a c8 99  |FXMP_Disable":..|
00005fa0  22 57 69 6d 70 5f 50 72  6f 63 65 73 73 4b 65 79  |"Wimp_ProcessKey|
00005fb0  22 2c 26 31 66 63 0d 29  36 13 c8 8e 20 70 6f 6c  |",&1fc.)6... pol|
00005fc0  6c 65 64 62 25 21 30 20  ca 0d 29 40 19 c9 20 77  |ledb%!0 ..)@.. w|
00005fd0  6b 65 79 62 6f 61 72 64  68 25 3a f2 4b 65 79 4b  |keyboardh%:.KeyK|
00005fe0  65 79 0d 29 4a 3a c9 20  77 73 61 76 65 68 25 3a  |ey.)J:. wsaveh%:|
00005ff0  e7 20 70 6f 6c 6c 65 64  62 25 21 32 34 3d 31 33  |. polledb%!24=13|
00006000  20 8c 20 70 6f 6c 6c 65  64 62 25 21 31 36 3d 32  | . polledb%!16=2|
00006010  3a f2 53 61 76 65 61 73  73 61 43 6c 0d 29 54 14  |:.SaveassaCl.)T.|
00006020  c9 20 77 70 6f 73 68 25  3a f2 50 6f 73 4b 65 79  |. wposh%:.PosKey|
00006030  0d 29 5e 16 c9 20 77 66  61 64 65 68 25 3a f2 46  |.)^.. wfadeh%:.F|
00006040  61 64 65 4b 65 79 0d 29  68 16 c9 20 77 65 63 68  |adeKey.)h.. wech|
00006050  6f 68 25 3a f2 45 63 68  6f 4b 65 79 0d 29 72 1a  |oh%:.EchoKey.)r.|
00006060  c9 20 77 73 6f 6e 67 70  61 6e 65 68 25 3a f2 53  |. wsongpaneh%:.S|
00006070  6f 6e 67 4b 65 79 0d 29  7c 05 cb 0d 29 86 05 e1  |ongKey.)|...)...|
00006080  0d 29 90 04 0d 29 9a 0d  dd f2 46 61 64 65 4b 65  |.)...)....FadeKe|
00006090  79 0d 29 a4 16 e7 20 70  6f 6c 6c 65 64 62 25 21  |y.)... polledb%!|
000060a0  32 34 3d 31 33 20 8c 0d  29 ae 27 e7 20 70 6f 6c  |24=13 ..).'. pol|
000060b0  6c 65 64 62 25 21 34 3d  32 20 8c 20 f2 53 65 74  |ledb%!4=2 . .Set|
000060c0  57 49 43 28 77 66 61 64  65 68 25 2c 33 29 0d 29  |WIC(wfadeh%,3).)|
000060d0  b8 27 e7 20 70 6f 6c 6c  65 64 62 25 21 34 3d 33  |.'. polledb%!4=3|
000060e0  20 8c 20 f2 53 65 74 57  49 43 28 77 66 61 64 65  | . .SetWIC(wfade|
000060f0  68 25 2c 32 29 0d 29 c2  05 cd 0d 29 cc 05 e1 0d  |h%,2).)....)....|
00006100  29 d6 04 0d 29 e0 0d dd  f2 45 63 68 6f 4b 65 79  |)...)....EchoKey|
00006110  0d 29 ea 16 e7 20 70 6f  6c 6c 65 64 62 25 21 32  |.)... polledb%!2|
00006120  34 3d 31 33 20 8c 0d 29  f4 27 e7 20 70 6f 6c 6c  |4=13 ..).'. poll|
00006130  65 64 62 25 21 34 3d 32  20 8c 20 f2 53 65 74 57  |edb%!4=2 . .SetW|
00006140  49 43 28 77 65 63 68 6f  68 25 2c 33 29 0d 29 fe  |IC(wechoh%,3).).|
00006150  27 e7 20 70 6f 6c 6c 65  64 62 25 21 34 3d 33 20  |'. polledb%!4=3 |
00006160  8c 20 f2 53 65 74 57 49  43 28 77 65 63 68 6f 68  |. .SetWIC(wechoh|
00006170  25 2c 32 29 0d 2a 08 05  cd 0d 2a 12 05 e1 0d 2a  |%,2).*....*....*|
00006180  1c 04 0d 2a 26 0d dd f2  53 6f 6e 67 4b 65 79 0d  |...*&...SongKey.|
00006190  2a 30 16 e7 20 70 6f 6c  6c 65 64 62 25 21 32 34  |*0.. polledb%!24|
000061a0  3d 31 33 20 8c 0d 2a 3a  2b e7 20 70 6f 6c 6c 65  |=13 ..*:+. polle|
000061b0  64 62 25 21 34 3d 36 20  8c 20 f2 53 65 74 57 49  |db%!4=6 . .SetWI|
000061c0  43 28 77 73 6f 6e 67 70  61 6e 65 68 25 2c 37 29  |C(wsongpaneh%,7)|
000061d0  0d 2a 44 2b e7 20 70 6f  6c 6c 65 64 62 25 21 34  |.*D+. polledb%!4|
000061e0  3d 37 20 8c 20 f2 53 65  74 57 49 43 28 77 73 6f  |=7 . .SetWIC(wso|
000061f0  6e 67 70 61 6e 65 68 25  2c 38 29 0d 2a 4e 2b e7  |ngpaneh%,8).*N+.|
00006200  20 70 6f 6c 6c 65 64 62  25 21 34 3d 38 20 8c 20  | polledb%!4=8 . |
00006210  f2 53 65 74 57 49 43 28  77 73 6f 6e 67 70 61 6e  |.SetWIC(wsongpan|
00006220  65 68 25 2c 39 29 0d 2a  58 2b e7 20 70 6f 6c 6c  |eh%,9).*X+. poll|
00006230  65 64 62 25 21 34 3d 39  20 8c 20 f2 53 65 74 57  |edb%!4=9 . .SetW|
00006240  49 43 28 77 73 6f 6e 67  70 61 6e 65 68 25 2c 36  |IC(wsongpaneh%,6|
00006250  29 0d 2a 62 05 cd 0d 2a  6c 05 e1 0d 2a 76 04 0d  |).*b...*l...*v..|
00006260  2a 80 13 dd f2 53 65 74  57 49 43 28 77 25 2c 69  |*....SetWIC(w%,i|
00006270  25 29 0d 2a 8a 0d e7 20  69 25 3d 2d 31 20 8c 0d  |%).*... i%=-1 ..|
00006280  2a 94 2a c8 99 22 58 57  69 6d 70 5f 53 65 74 43  |*.*.."XWimp_SetC|
00006290  61 72 65 74 50 6f 73 69  74 69 6f 6e 22 2c 2d 31  |aretPosition",-1|
000062a0  2c 2d 31 2c 2d 31 2c 2d  31 0d 2a 9e 05 cc 0d 2a  |,-1,-1,-1.*....*|
000062b0  a8 0e 74 65 6d 70 25 21  30 3d 77 25 0d 2a b2 0e  |..temp%!0=w%.*..|
000062c0  74 65 6d 70 25 21 34 3d  69 25 0d 2a bc 20 c8 99  |temp%!4=i%.*. ..|
000062d0  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
000062e0  74 65 22 2c 2c 74 65 6d  70 25 0d 2a c6 15 41 25  |te",,temp%.*..A%|
000062f0  3d a9 28 24 28 74 65 6d  70 25 21 32 38 29 29 0d  |=.($(temp%!28)).|
00006300  2a d0 30 c8 99 22 58 57  69 6d 70 5f 53 65 74 43  |*.0.."XWimp_SetC|
00006310  61 72 65 74 50 6f 73 69  74 69 6f 6e 22 2c 77 25  |aretPosition",w%|
00006320  2c 69 25 2c 2d 31 2c 2d  31 2c 2d 31 2c 41 25 0d  |,i%,-1,-1,-1,A%.|
00006330  2a da 05 cd 0d 2a e4 05  e1 0d 2a ee 04 0d 2a f8  |*....*....*...*.|
00006340  0c dd f2 50 6f 73 4b 65  79 0d 2b 02 42 e7 20 70  |...PosKey.+.B. p|
00006350  6f 6c 6c 65 64 62 25 21  32 34 3d 31 33 20 8c 20  |olledb%!24=13 . |
00006360  f2 53 65 74 50 69 74 63  68 20 8b 20 c8 99 22 57  |.SetPitch . .."W|
00006370  69 6d 70 5f 50 72 6f 63  65 73 73 4b 65 79 22 2c  |imp_ProcessKey",|
00006380  70 6f 6c 6c 65 64 62 25  21 32 34 0d 2b 0c 05 e1  |polledb%!24.+...|
00006390  0d 2b 16 04 0d 2b 20 0e  dd f2 53 65 74 50 69 74  |.+...+ ...SetPit|
000063a0  63 68 0d 2b 2a 12 74 65  6d 70 25 21 30 3d 77 70  |ch.+*.temp%!0=wp|
000063b0  6f 73 68 25 0d 2b 34 14  e7 20 70 6f 6c 6c 65 64  |osh%.+4.. polled|
000063c0  62 25 21 34 3d 33 20 8c  0d 2b 3e 0d 74 65 6d 70  |b%!4=3 ..+>.temp|
000063d0  25 21 34 3d 33 0d 2b 48  20 c8 99 22 57 69 6d 70  |%!4=3.+H .."Wimp|
000063e0  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
000063f0  74 65 6d 70 25 0d 2b 52  19 70 69 74 63 68 25 3d  |temp%.+R.pitch%=|
00006400  bb 28 24 28 74 65 6d 70  25 21 32 38 29 29 0d 2b  |.($(temp%!28)).+|
00006410  5c 05 cd 0d 2b 66 14 e7  20 70 6f 6c 6c 65 64 62  |\...+f.. polledb|
00006420  25 21 34 3d 35 20 8c 0d  2b 70 0d 74 65 6d 70 25  |%!4=5 ..+p.temp%|
00006430  21 34 3d 35 0d 2b 7a 20  c8 99 22 57 69 6d 70 5f  |!4=5.+z .."Wimp_|
00006440  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |GetIconState",,t|
00006450  65 6d 70 25 0d 2b 84 19  70 69 74 63 68 25 3d bb  |emp%.+..pitch%=.|
00006460  28 24 28 74 65 6d 70 25  21 32 38 29 29 0d 2b 8e  |($(temp%!28)).+.|
00006470  19 e7 20 70 69 74 63 68  25 3d 30 20 8c 20 70 69  |.. pitch%=0 . pi|
00006480  74 63 68 25 3d 31 0d 2b  98 15 70 69 74 63 68 25  |tch%=1.+..pitch%|
00006490  3d 31 45 36 2f 70 69 74  63 68 25 0d 2b a2 05 cd  |=1E6/pitch%.+...|
000064a0  0d 2b ac 0e f2 53 65 74  50 69 74 63 68 32 0d 2b  |.+...SetPitch2.+|
000064b0  b6 05 e1 0d 2b c0 04 0d  2b ca 0f dd f2 53 65 74  |....+...+....Set|
000064c0  50 69 74 63 68 32 0d 2b  d4 1b e7 20 70 69 74 63  |Pitch2.+... pitc|
000064d0  68 25 3c 32 34 20 8c 20  70 69 74 63 68 25 3d 32  |h%<24 . pitch%=2|
000064e0  34 0d 2b de 1d e7 20 70  69 74 63 68 25 3e 32 35  |4.+... pitch%>25|
000064f0  35 20 8c 20 70 69 74 63  68 25 3d 32 35 35 0d 2b  |5 . pitch%=255.+|
00006500  e8 15 70 69 74 63 68 25  3d 70 69 74 63 68 25 80  |..pitch%=pitch%.|
00006510  26 66 63 0d 2b f2 13 74  65 6d 70 32 25 21 30 3d  |&fc.+..temp2%!0=|
00006520  77 70 6f 73 68 25 0d 2b  fc 0e 74 65 6d 70 32 25  |wposh%.+..temp2%|
00006530  21 34 3d 33 0d 2c 06 21  c8 99 22 57 69 6d 70 5f  |!4=3.,.!.."Wimp_|
00006540  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |GetIconState",,t|
00006550  65 6d 70 32 25 0d 2c 10  18 24 28 74 65 6d 70 32  |emp2%.,..$(temp2|
00006560  25 21 32 38 29 3d c3 70  69 74 63 68 25 0d 2c 1a  |%!28)=.pitch%.,.|
00006570  38 74 65 6d 70 32 25 21  38 3d 30 3a 74 65 6d 70  |8temp2%!8=0:temp|
00006580  32 25 21 31 32 3d 30 3a  c8 99 22 57 69 6d 70 5f  |2%!12=0:.."Wimp_|
00006590  53 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |SetIconState",,t|
000065a0  65 6d 70 32 25 0d 2c 24  0e 74 65 6d 70 32 25 21  |emp2%.,$.temp2%!|
000065b0  34 3d 35 0d 2c 2e 21 c8  99 22 57 69 6d 70 5f 47  |4=5.,.!.."Wimp_G|
000065c0  65 74 49 63 6f 6e 53 74  61 74 65 22 2c 2c 74 65  |etIconState",,te|
000065d0  6d 70 32 25 0d 2c 38 21  24 28 74 65 6d 70 32 25  |mp2%.,8!$(temp2%|
000065e0  21 32 38 29 3d c3 28 a8  28 31 45 36 2f 70 69 74  |!28)=.(.(1E6/pit|
000065f0  63 68 25 29 29 0d 2c 42  38 74 65 6d 70 32 25 21  |ch%)).,B8temp2%!|
00006600  38 3d 30 3a 74 65 6d 70  32 25 21 31 32 3d 30 3a  |8=0:temp2%!12=0:|
00006610  c8 99 22 57 69 6d 70 5f  53 65 74 49 63 6f 6e 53  |.."Wimp_SetIconS|
00006620  74 61 74 65 22 2c 2c 74  65 6d 70 32 25 0d 2c 4c  |tate",,temp2%.,L|
00006630  39 c8 99 22 58 57 69 6d  70 5f 53 65 74 43 61 72  |9.."XWimp_SetCar|
00006640  65 74 50 6f 73 69 74 69  6f 6e 22 2c 77 6b 65 79  |etPosition",wkey|
00006650  62 6f 61 72 64 68 25 2c  2d 31 2c 2d 31 2c 2d 31  |boardh%,-1,-1,-1|
00006660  2c 2d 31 2c 2d 31 0d 2c  56 27 c8 99 22 58 53 6f  |,-1,-1.,V'.."XSo|
00006670  75 6e 64 5f 43 6f 6e 66  69 67 75 72 65 22 2c 30  |und_Configure",0|
00006680  2c 30 2c 70 69 74 63 68  25 2c 30 2c 30 0d 2c 60  |,0,pitch%,0,0.,`|
00006690  05 e1 0d 2c 6a 04 0d 2c  74 0c dd f2 4b 65 79 4b  |...,j..,t...KeyK|
000066a0  65 79 0d 2c 7e 14 6b 65  79 25 3d 70 6f 6c 6c 65  |ey.,~.key%=polle|
000066b0  64 62 25 21 32 34 0d 2c  88 38 e7 20 6b 65 79 25  |db%!24.,.8. key%|
000066c0  3d 31 33 20 8c 20 c8 99  22 58 57 69 6d 70 5f 53  |=13 . .."XWimp_S|
000066d0  65 74 43 61 72 65 74 50  6f 73 69 74 69 6f 6e 22  |etCaretPosition"|
000066e0  2c 2d 31 2c 2d 31 2c 2d  31 2c 2d 31 3a e1 0d 2c  |,-1,-1,-1,-1:..,|
000066f0  92 30 e7 20 28 6b 65 79  25 3e 3d 26 31 38 31 29  |.0. (key%>=&181)|
00006700  80 28 6b 65 79 25 3c 3d  26 31 38 35 29 20 6f 6b  |.(key%<=&185) ok|
00006710  74 25 3d 6b 65 79 25 2d  26 31 38 31 3a e1 0d 2c  |t%=key%-&181:..,|
00006720  9c 28 e7 20 28 6b 65 79  25 3c 33 32 29 84 28 6b  |.(. (key%<32).(k|
00006730  65 79 25 3e 26 31 38 35  29 20 8c 20 f2 43 74 72  |ey%>&185) . .Ctr|
00006740  6c 4b 65 79 3a e1 0d 2c  a6 c7 c8 99 22 53 46 58  |lKey:..,...."SFX|
00006750  4d 50 5f 47 65 74 50 69  74 63 68 22 b8 73 70 69  |MP_GetPitch".spi|
00006760  74 63 68 25 3a e7 20 73  70 69 74 63 68 25 3c 3e  |tch%:. spitch%<>|
00006770  6f 73 70 69 74 63 68 25  20 8c 20 74 65 6d 70 25  |ospitch% . temp%|
00006780  21 30 3d 77 73 6f 6e 67  70 61 6e 65 68 25 3a 74  |!0=wsongpaneh%:t|
00006790  65 6d 70 25 21 34 3d 38  3a c8 99 22 57 69 6d 70  |emp%!4=8:.."Wimp|
000067a0  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
000067b0  74 65 6d 70 25 3a 24 28  74 65 6d 70 25 21 32 38  |temp%:$(temp%!28|
000067c0  29 3d c3 73 70 69 74 63  68 25 3a 74 65 6d 70 25  |)=.spitch%:temp%|
000067d0  21 38 3d 30 3a 74 65 6d  70 25 21 31 32 3d 30 3a  |!8=0:temp%!12=0:|
000067e0  c8 99 22 57 69 6d 70 5f  53 65 74 49 63 6f 6e 53  |.."Wimp_SetIconS|
000067f0  74 61 74 65 22 2c 2c 74  65 6d 70 25 3a 6f 73 70  |tate",,temp%:osp|
00006800  69 74 63 68 25 3d 73 70  69 74 63 68 25 0d 2c b0  |itch%=spitch%.,.|
00006810  05 e1 0d 2c ba 04 0d 2c  c4 0d dd f2 43 74 72 6c  |...,...,....Ctrl|
00006820  4b 65 79 0d 2c ce 0d c8  8e 20 6b 65 79 25 20 ca  |Key.,.... key% .|
00006830  0d 2c d8 21 c9 20 97 22  58 22 2d 36 34 3a 70 6f  |.,.!. ."X"-64:po|
00006840  6c 6c 65 64 62 25 21 34  3d 30 3a f2 4d 45 64 69  |lledb%!4=0:.MEdi|
00006850  74 0d 2c e2 21 c9 20 97  22 43 22 2d 36 34 3a 70  |t.,.!. ."C"-64:p|
00006860  6f 6c 6c 65 64 62 25 21  34 3d 31 3a f2 4d 45 64  |olledb%!4=1:.MEd|
00006870  69 74 0d 2c ec 21 c9 20  97 22 56 22 2d 36 34 3a  |it.,.!. ."V"-64:|
00006880  70 6f 6c 6c 65 64 62 25  21 34 3d 32 3a f2 4d 45  |polledb%!4=2:.ME|
00006890  64 69 74 0d 2c f6 21 c9  20 97 22 44 22 2d 36 34  |dit.,.!. ."D"-64|
000068a0  3a 70 6f 6c 6c 65 64 62  25 21 34 3d 33 3a f2 4d  |:polledb%!4=3:.M|
000068b0  45 64 69 74 0d 2d 00 21  c9 20 97 22 47 22 2d 36  |Edit.-.!. ."G"-6|
000068c0  34 3a 70 6f 6c 6c 65 64  62 25 21 34 3d 35 3a f2  |4:polledb%!4=5:.|
000068d0  4d 45 64 69 74 0d 2d 0a  21 c9 20 97 22 48 22 2d  |MEdit.-.!. ."H"-|
000068e0  36 34 3a 70 6f 6c 6c 65  64 62 25 21 34 3d 36 3a  |64:polledb%!4=6:|
000068f0  f2 4d 45 64 69 74 0d 2d  14 16 c9 20 97 22 41 22  |.MEdit.-... ."A"|
00006900  2d 36 34 3a f2 4d 53 65  6c 41 6c 6c 0d 2d 1e 18  |-64:.MSelAll.-..|
00006910  c9 20 97 22 5a 22 2d 36  34 3a f2 4d 53 65 6c 43  |. ."Z"-64:.MSelC|
00006920  6c 65 61 72 0d 2d 28 16  c9 20 97 22 51 22 2d 36  |lear.-(.. ."Q"-6|
00006930  34 3a f2 5a 6f 6f 6d 41  6c 6c 0d 2d 32 16 c9 20  |4:.ZoomAll.-2.. |
00006940  97 22 57 22 2d 36 34 3a  f2 5a 6f 6f 6d 4f 75 74  |."W"-64:.ZoomOut|
00006950  0d 2d 3c 16 c9 20 97 22  53 22 2d 36 34 3a f2 5a  |.-<.. ."S"-64:.Z|
00006960  6f 6f 6d 53 65 6c 0d 2d  46 18 c9 20 97 22 54 22  |oomSel.-F.. ."T"|
00006970  2d 36 34 3a f2 5a 6f 6f  6d 53 74 6f 72 65 0d 2d  |-64:.ZoomStore.-|
00006980  50 1a c9 20 97 22 52 22  2d 36 34 3a f2 5a 6f 6f  |P.. ."R"-64:.Zoo|
00006990  6d 52 65 73 74 6f 72 65  0d 2d 5a 25 c9 20 97 22  |mRestore.-Z%. ."|
000069a0  46 22 2d 36 34 3a 70 6f  6c 6c 65 64 62 25 21 34  |F"-64:polledb%!4|
000069b0  3d 31 31 3a f2 4d 47 6f  6f 64 69 65 73 0d 2d 64  |=11:.MGoodies.-d|
000069c0  1e c9 20 26 31 38 36 3a  70 6f 6c 6c 65 64 62 25  |.. &186:polledb%|
000069d0  21 38 3d 30 3a f2 4d 54  79 70 65 0d 2d 6e 1e c9  |!8=0:.MType.-n..|
000069e0  20 26 31 38 37 3a 70 6f  6c 6c 65 64 62 25 21 38  | &187:polledb%!8|
000069f0  3d 31 3a f2 4d 54 79 70  65 0d 2d 78 1e c9 20 26  |=1:.MType.-x.. &|
00006a00  31 38 38 3a 70 6f 6c 6c  65 64 62 25 21 38 3d 32  |188:polledb%!8=2|
00006a10  3a f2 4d 54 79 70 65 0d  2d 82 21 c9 20 26 31 38  |:.MType.-.!. &18|
00006a20  39 3a 70 6f 6c 6c 65 64  62 25 21 34 3d 30 3a f2  |9:polledb%!4=0:.|
00006a30  4d 47 6f 6f 64 69 65 73  0d 2d 8c 21 c9 20 26 31  |MGoodies.-.!. &1|
00006a40  63 61 3a 70 6f 6c 6c 65  64 62 25 21 34 3d 31 3a  |ca:polledb%!4=1:|
00006a50  f2 4d 47 6f 6f 64 69 65  73 0d 2d 96 21 c9 20 26  |.MGoodies.-.!. &|
00006a60  31 63 62 3a 70 6f 6c 6c  65 64 62 25 21 34 3d 32  |1cb:polledb%!4=2|
00006a70  3a f2 4d 47 6f 6f 64 69  65 73 0d 2d a0 05 cb 0d  |:.MGoodies.-....|
00006a80  2d aa 05 e1 0d 2d b4 04  0d 2d be 11 dd f2 4d 65  |-....-...-....Me|
00006a90  6e 75 5f 53 65 6c 65 63  74 0d 2d c8 22 c8 99 22  |nu_Select.-.".."|
00006aa0  57 69 6d 70 5f 47 65 74  50 6f 69 6e 74 65 72 49  |Wimp_GetPointerI|
00006ab0  6e 66 6f 22 2c 2c 74 65  6d 70 25 0d 2d d2 13 6f  |nfo",,temp%.-..o|
00006ac0  6c 64 62 75 74 25 3d 74  65 6d 70 25 21 38 0d 2d  |ldbut%=temp%!8.-|
00006ad0  dc 12 c8 8e 20 6c 61 73  74 6d 65 6e 75 25 20 ca  |.... lastmenu% .|
00006ae0  0d 2d e6 19 c9 20 69 63  6f 6e 6d 65 6e 75 25 3a  |.-... iconmenu%:|
00006af0  f2 4d 53 65 6c 49 63 6f  6e 0d 2d f0 19 c9 20 77  |.MSelIcon.-... w|
00006b00  6f 72 6b 6d 65 6e 75 25  3a f2 4d 53 65 6c 57 6f  |orkmenu%:.MSelWo|
00006b10  72 6b 0d 2d fa 19 c9 20  73 65 63 74 6d 65 6e 75  |rk.-... sectmenu|
00006b20  25 3a f2 4d 53 65 6c 53  65 63 74 0d 2e 04 05 cb  |%:.MSelSect.....|
00006b30  0d 2e 0e 42 e7 20 28 6f  6c 64 62 75 74 25 80 31  |...B. (oldbut%.1|
00006b40  29 20 8c 20 c8 99 22 57  69 6d 70 5f 43 72 65 61  |) . .."Wimp_Crea|
00006b50  74 65 4d 65 6e 75 22 2c  2c 6c 61 73 74 6d 65 6e  |teMenu",,lastmen|
00006b60  75 25 2c 6c 61 73 74 6d  78 25 2c 6c 61 73 74 6d  |u%,lastmx%,lastm|
00006b70  79 25 0d 2e 18 05 e1 0d  2e 22 04 0d 2e 2c 0e dd  |y%......."...,..|
00006b80  f2 4d 53 65 6c 53 65 63  74 0d 2e 36 13 c8 8e 20  |.MSelSect..6... |
00006b90  70 6f 6c 6c 65 64 62 25  21 30 20 ca 0d 2e 40 14  |polledb%!0 ...@.|
00006ba0  c9 20 30 3a f2 4d 53 65  63 74 49 6e 73 65 72 74  |. 0:.MSectInsert|
00006bb0  0d 2e 4a 14 c9 20 31 3a  f2 4d 53 65 63 74 41 70  |..J.. 1:.MSectAp|
00006bc0  70 65 6e 64 0d 2e 54 17  c9 20 32 3a f2 4d 53 65  |pend..T.. 2:.MSe|
00006bd0  63 74 4f 76 65 72 77 72  69 74 65 0d 2e 5e 14 c9  |ctOverwrite..^..|
00006be0  20 33 3a f2 4d 53 65 63  74 44 65 6c 65 74 65 0d  | 3:.MSectDelete.|
00006bf0  2e 68 12 c9 20 34 3a f2  4d 53 65 63 74 50 6c 61  |.h.. 4:.MSectPla|
00006c00  79 0d 2e 72 11 c9 20 35  3a f2 50 6c 61 79 53 6f  |y..r.. 5:.PlaySo|
00006c10  6e 67 0d 2e 7c 05 cb 0d  2e 86 05 e1 0d 2e 90 04  |ng..|...........|
00006c20  0d 2e 9a 11 dd f2 4d 53  65 63 74 49 6e 73 65 72  |......MSectInser|
00006c30  74 0d 2e a4 36 c8 99 22  53 46 58 4d 50 5f 53 74  |t...6.."SFXMP_St|
00006c40  6f 70 22 2c 31 3a c8 99  22 53 46 58 4d 50 5f 53  |op",1:.."SFXMP_S|
00006c50  74 6f 70 22 2c 32 3a c8  99 22 53 46 58 4d 50 5f  |top",2:.."SFXMP_|
00006c60  53 74 6f 70 22 2c 33 0d  2e ae 23 e7 20 73 6f 6e  |Stop",3...#. son|
00006c70  67 6c 65 6e 25 3e 3d a8  28 73 6f 6e 67 62 75 66  |glen%>=.(songbuf|
00006c80  6c 65 6e 25 2f 33 32 29  20 8c 0d 2e b8 1a f2 52  |len%/32) ......R|
00006c90  65 70 6f 72 74 45 72 72  28 22 4e 6f 20 72 6f 6f  |eportErr("No roo|
00006ca0  6d 2e 22 29 0d 2e c2 05  cc 0d 2e cc 0f 54 25 3d  |m.").........T%=|
00006cb0  73 6f 6e 67 6c 65 6e 25  0d 2e d6 13 c8 95 20 54  |songlen%...... T|
00006cc0  25 3e 63 75 72 72 73 65  63 74 25 0d 2e e0 0e e3  |%>currsect%.....|
00006cd0  53 25 3d 30 b8 32 38 88  34 0d 2e ea 32 73 6f 6e  |S%=0.28.4...2son|
00006ce0  67 73 74 61 72 74 25 21  28 54 25 2a 33 32 2b 53  |gstart%!(T%*32+S|
00006cf0  25 29 3d 73 6f 6e 67 73  74 61 72 74 25 21 28 54  |%)=songstart%!(T|
00006d00  25 2a 33 32 2d 33 32 2b  53 25 29 0d 2e f4 07 ed  |%*32-32+S%).....|
00006d10  53 25 0d 2e fe 09 54 25  2d 3d 31 0d 2f 08 05 ce  |S%....T%-=1./...|
00006d20  0d 2f 12 0f 73 6f 6e 67  6c 65 6e 25 2b 3d 31 0d  |./..songlen%+=1.|
00006d30  2f 1c 17 f2 50 75 74 53  65 63 74 28 63 75 72 72  |/...PutSect(curr|
00006d40  73 65 63 74 25 29 0d 2f  26 12 f2 53 65 74 53 6f  |sect%)./&..SetSo|
00006d50  6e 67 45 78 74 65 6e 74  0d 2f 30 0b f2 52 64 53  |ngExtent./0..RdS|
00006d60  6f 6e 67 0d 2f 3a 05 cd  0d 2f 44 05 e1 0d 2f 4e  |ong./:.../D.../N|
00006d70  04 0d 2f 58 11 dd f2 4d  53 65 63 74 41 70 70 65  |../X...MSectAppe|
00006d80  6e 64 0d 2f 62 36 c8 99  22 53 46 58 4d 50 5f 53  |nd./b6.."SFXMP_S|
00006d90  74 6f 70 22 2c 31 3a c8  99 22 53 46 58 4d 50 5f  |top",1:.."SFXMP_|
00006da0  53 74 6f 70 22 2c 32 3a  c8 99 22 53 46 58 4d 50  |Stop",2:.."SFXMP|
00006db0  5f 53 74 6f 70 22 2c 33  0d 2f 6c 23 e7 20 73 6f  |_Stop",3./l#. so|
00006dc0  6e 67 6c 65 6e 25 3e 3d  a8 28 73 6f 6e 67 62 75  |nglen%>=.(songbu|
00006dd0  66 6c 65 6e 25 2f 33 32  29 20 8c 0d 2f 76 21 f2  |flen%/32) ../v!.|
00006de0  52 65 70 6f 72 74 45 72  72 28 22 54 6f 6f 20 6d  |ReportErr("Too m|
00006df0  61 6e 79 20 6c 6f 6f 70  73 2e 22 29 0d 2f 80 05  |any loops.")./..|
00006e00  cc 0d 2f 8a 16 f2 50 75  74 53 65 63 74 28 73 6f  |../...PutSect(so|
00006e10  6e 67 6c 65 6e 25 29 0d  2f 94 0f 73 6f 6e 67 6c  |nglen%)./..songl|
00006e20  65 6e 25 2b 3d 31 0d 2f  9e 12 f2 53 65 74 53 6f  |en%+=1./...SetSo|
00006e30  6e 67 45 78 74 65 6e 74  0d 2f a8 0b f2 52 64 53  |ngExtent./...RdS|
00006e40  6f 6e 67 0d 2f b2 05 cd  0d 2f bc 05 e1 0d 2f c6  |ong./..../..../.|
00006e50  04 0d 2f d0 14 dd f2 4d  53 65 63 74 4f 76 65 72  |../....MSectOver|
00006e60  77 72 69 74 65 0d 2f da  36 c8 99 22 53 46 58 4d  |write./.6.."SFXM|
00006e70  50 5f 53 74 6f 70 22 2c  31 3a c8 99 22 53 46 58  |P_Stop",1:.."SFX|
00006e80  4d 50 5f 53 74 6f 70 22  2c 32 3a c8 99 22 53 46  |MP_Stop",2:.."SF|
00006e90  58 4d 50 5f 53 74 6f 70  22 2c 33 0d 2f e4 36 e7  |XMP_Stop",3./.6.|
00006ea0  20 63 75 72 72 73 65 63  74 25 3c 73 6f 6e 67 6c  | currsect%<songl|
00006eb0  65 6e 25 20 8c 20 f2 50  75 74 53 65 63 74 28 63  |en% . .PutSect(c|
00006ec0  75 72 72 73 65 63 74 25  29 3a f2 52 64 53 6f 6e  |urrsect%):.RdSon|
00006ed0  67 0d 2f ee 05 e1 0d 2f  f8 04 0d 30 02 11 dd f2  |g./..../...0....|
00006ee0  4d 53 65 63 74 44 65 6c  65 74 65 0d 30 0c 36 c8  |MSectDelete.0.6.|
00006ef0  99 22 53 46 58 4d 50 5f  53 74 6f 70 22 2c 31 3a  |."SFXMP_Stop",1:|
00006f00  c8 99 22 53 46 58 4d 50  5f 53 74 6f 70 22 2c 32  |.."SFXMP_Stop",2|
00006f10  3a c8 99 22 53 46 58 4d  50 5f 53 74 6f 70 22 2c  |:.."SFXMP_Stop",|
00006f20  33 0d 30 16 1a e7 20 63  75 72 72 73 65 63 74 25  |3.0... currsect%|
00006f30  3c 73 6f 6e 67 6c 65 6e  25 20 8c 0d 30 20 10 54  |<songlen% ..0 .T|
00006f40  25 3d 63 75 72 72 73 65  63 74 25 0d 30 2a 14 c8  |%=currsect%.0*..|
00006f50  95 20 54 25 3c 73 6f 6e  67 6c 65 6e 25 2d 31 0d  |. T%<songlen%-1.|
00006f60  30 34 0e e3 53 25 3d 30  b8 32 38 88 34 0d 30 3e  |04..S%=0.28.4.0>|
00006f70  32 73 6f 6e 67 73 74 61  72 74 25 21 28 54 25 2a  |2songstart%!(T%*|
00006f80  33 32 2b 53 25 29 3d 73  6f 6e 67 73 74 61 72 74  |32+S%)=songstart|
00006f90  25 21 28 54 25 2a 33 32  2b 33 32 2b 53 25 29 0d  |%!(T%*32+32+S%).|
00006fa0  30 48 07 ed 53 25 0d 30  52 09 54 25 2b 3d 31 0d  |0H..S%.0R.T%+=1.|
00006fb0  30 5c 05 ce 0d 30 66 0f  73 6f 6e 67 6c 65 6e 25  |0\...0f.songlen%|
00006fc0  2d 3d 31 0d 30 70 12 f2  53 65 74 53 6f 6e 67 45  |-=1.0p..SetSongE|
00006fd0  78 74 65 6e 74 0d 30 7a  0b f2 52 64 53 6f 6e 67  |xtent.0z..RdSong|
00006fe0  0d 30 84 05 cd 0d 30 8e  05 e1 0d 30 98 04 0d 30  |.0....0....0...0|
00006ff0  a2 0f dd f2 4d 53 65 63  74 50 6c 61 79 0d 30 ac  |....MSectPlay.0.|
00007000  1a e7 20 63 75 72 72 73  65 63 74 25 3c 73 6f 6e  |.. currsect%<son|
00007010  67 6c 65 6e 25 20 8c 0d  30 b6 36 c8 99 22 53 46  |glen% ..0.6.."SF|
00007020  58 4d 50 5f 53 74 6f 70  22 2c 31 3a c8 99 22 53  |XMP_Stop",1:.."S|
00007030  46 58 4d 50 5f 53 74 6f  70 22 2c 32 3a c8 99 22  |FXMP_Stop",2:.."|
00007040  53 46 58 4d 50 5f 53 74  6f 70 22 2c 33 0d 30 c0  |SFXMP_Stop",3.0.|
00007050  08 c8 a0 20 32 0d 30 ca  14 c8 a1 20 32 2c 22 53  |... 2.0.... 2,"S|
00007060  46 58 4d 56 6f 69 63 65  22 0d 30 d4 57 c8 99 22  |FXMVoice".0.W.."|
00007070  53 46 58 4d 50 5f 50 6c  61 79 53 6f 6e 67 22 2c  |SFXMP_PlaySong",|
00007080  73 6f 6e 67 73 74 61 72  74 25 2b 33 32 2a 63 75  |songstart%+32*cu|
00007090  72 72 73 65 63 74 25 2c  73 6f 6e 67 6c 65 6e 25  |rrsect%,songlen%|
000070a0  2d 63 75 72 72 73 65 63  74 25 2c 73 74 61 72 74  |-currsect%,start|
000070b0  73 61 6d 70 6c 65 25 2c  31 2c 73 74 79 70 65 25  |sample%,1,stype%|
000070c0  0d 30 de 05 cd 0d 30 e8  05 e1 0d 30 f2 04 0d 30  |.0....0....0...0|
000070d0  fc 11 dd f2 50 75 74 53  65 63 74 28 73 25 29 0d  |....PutSect(s%).|
000070e0  31 06 17 74 65 6d 70 25  21 30 3d 77 73 6f 6e 67  |1..temp%!0=wsong|
000070f0  70 61 6e 65 68 25 0d 31  10 0d 74 65 6d 70 25 21  |paneh%.1..temp%!|
00007100  34 3d 36 0d 31 1a 20 c8  99 22 57 69 6d 70 5f 47  |4=6.1. .."Wimp_G|
00007110  65 74 49 63 6f 6e 53 74  61 74 65 22 2c 2c 74 65  |etIconState",,te|
00007120  6d 70 25 0d 31 24 23 24  28 73 6f 6e 67 73 74 61  |mp%.1$#$(songsta|
00007130  72 74 25 2b 73 25 2a 33  32 29 3d 24 28 74 65 6d  |rt%+s%*32)=$(tem|
00007140  70 25 21 32 38 29 0d 31  2e 0d 74 65 6d 70 25 21  |p%!28).1..temp%!|
00007150  34 3d 37 0d 31 38 20 c8  99 22 57 69 6d 70 5f 47  |4=7.18 .."Wimp_G|
00007160  65 74 49 63 6f 6e 53 74  61 74 65 22 2c 2c 74 65  |etIconState",,te|
00007170  6d 70 25 0d 31 42 15 41  25 3d bb 28 24 28 74 65  |mp%.1B.A%=.($(te|
00007180  6d 70 25 21 32 38 29 29  0d 31 4c 15 e7 20 41 25  |mp%!28)).1L.. A%|
00007190  3e 32 35 35 20 8c 20 41  25 3d 32 35 35 0d 31 56  |>255 . A%=255.1V|
000071a0  11 e7 20 41 25 3c 31 20  8c 20 41 25 3d 31 0d 31  |.. A%<1 . A%=1.1|
000071b0  60 1d 21 28 73 6f 6e 67  73 74 61 72 74 25 2b 73  |`.!(songstart%+s|
000071c0  25 2a 33 32 2b 31 32 29  3d 41 25 0d 31 6a 0d 74  |%*32+12)=A%.1j.t|
000071d0  65 6d 70 25 21 34 3d 38  0d 31 74 20 c8 99 22 57  |emp%!4=8.1t .."W|
000071e0  69 6d 70 5f 47 65 74 49  63 6f 6e 53 74 61 74 65  |imp_GetIconState|
000071f0  22 2c 2c 74 65 6d 70 25  0d 31 7e 15 41 25 3d bb  |",,temp%.1~.A%=.|
00007200  28 24 28 74 65 6d 70 25  21 32 38 29 29 0d 31 88  |($(temp%!28)).1.|
00007210  11 e7 20 41 25 3c 31 20  8c 20 41 25 3d 31 0d 31  |.. A%<1 . A%=1.1|
00007220  92 1b e7 20 41 25 3e 26  31 30 30 30 30 20 8c 20  |... A%>&10000 . |
00007230  41 25 3d 26 31 30 30 30  30 0d 31 9c 1d 21 28 73  |A%=&10000.1..!(s|
00007240  6f 6e 67 73 74 61 72 74  25 2b 73 25 2a 33 32 2b  |ongstart%+s%*32+|
00007250  31 36 29 3d 41 25 0d 31  a6 0d 74 65 6d 70 25 21  |16)=A%.1..temp%!|
00007260  34 3d 39 0d 31 b0 20 c8  99 22 57 69 6d 70 5f 47  |4=9.1. .."Wimp_G|
00007270  65 74 49 63 6f 6e 53 74  61 74 65 22 2c 2c 74 65  |etIconState",,te|
00007280  6d 70 25 0d 31 ba 15 41  25 3d bb 28 24 28 74 65  |mp%.1..A%=.($(te|
00007290  6d 70 25 21 32 38 29 29  0d 31 c4 11 e7 20 41 25  |mp%!28)).1... A%|
000072a0  3c 32 20 8c 20 41 25 3d  32 0d 31 ce 15 e7 20 41  |<2 . A%=2.1... A|
000072b0  25 3e 32 35 35 20 8c 20  41 25 3d 32 35 35 0d 31  |%>255 . A%=255.1|
000072c0  d8 1d 21 28 73 6f 6e 67  73 74 61 72 74 25 2b 73  |..!(songstart%+s|
000072d0  25 2a 33 32 2b 32 30 29  3d 41 25 0d 31 e2 22 21  |%*32+20)=A%.1."!|
000072e0  28 73 6f 6e 67 73 74 61  72 74 25 2b 73 25 2a 33  |(songstart%+s%*3|
000072f0  32 2b 32 34 29 3d 70 6c  6f 6f 70 6c 25 0d 31 ec  |2+24)=ploopl%.1.|
00007300  22 21 28 73 6f 6e 67 73  74 61 72 74 25 2b 73 25  |"!(songstart%+s%|
00007310  2a 33 32 2b 32 38 29 3d  70 6c 6f 6f 70 72 25 0d  |*32+28)=ploopr%.|
00007320  31 f6 05 e1 0d 32 00 04  0d 32 0a 0f dd f2 43 68  |1....2...2....Ch|
00007330  65 63 6b 53 6f 6e 67 0d  32 14 08 54 25 3d 30 0d  |eckSong.2..T%=0.|
00007340  32 1e 12 c8 95 20 54 25  3c 73 6f 6e 67 6c 65 6e  |2.... T%<songlen|
00007350  25 0d 32 28 35 41 25 3d  73 6f 6e 67 73 74 61 72  |%.2(5A%=songstar|
00007360  74 25 21 28 54 25 2a 33  32 2b 32 34 29 3a 42 25  |t%!(T%*32+24):B%|
00007370  3d 73 6f 6e 67 73 74 61  72 74 25 21 28 54 25 2a  |=songstart%!(T%*|
00007380  33 32 2b 32 38 29 0d 32  32 11 e7 20 41 25 3c 30  |32+28).22.. A%<0|
00007390  20 8c 20 41 25 3d 30 0d  32 3c 11 e7 20 42 25 3c  | . A%=0.2<.. B%<|
000073a0  30 20 8c 20 42 25 3d 30  0d 32 46 23 e7 20 41 25  |0 . B%=0.2F#. A%|
000073b0  3e 73 61 6d 70 6c 65 6c  65 6e 25 20 8c 20 41 25  |>samplelen% . A%|
000073c0  3d 73 61 6d 70 6c 65 6c  65 6e 25 0d 32 50 23 e7  |=samplelen%.2P#.|
000073d0  20 42 25 3e 73 61 6d 70  6c 65 6c 65 6e 25 20 8c  | B%>samplelen% .|
000073e0  20 42 25 3d 73 61 6d 70  6c 65 6c 65 6e 25 0d 32  | B%=samplelen%.2|
000073f0  5a 35 73 6f 6e 67 73 74  61 72 74 25 21 28 54 25  |Z5songstart%!(T%|
00007400  2a 33 32 2b 32 34 29 3d  41 25 3a 73 6f 6e 67 73  |*32+24)=A%:songs|
00007410  74 61 72 74 25 21 28 54  25 2a 33 32 2b 32 38 29  |tart%!(T%*32+28)|
00007420  3d 42 25 0d 32 64 09 54  25 2b 3d 31 0d 32 6e 05  |=B%.2d.T%+=1.2n.|
00007430  ce 0d 32 78 05 e1 0d 32  82 04 0d 32 8c 0e dd f2  |..2x...2...2....|
00007440  4d 53 65 6c 49 63 6f 6e  0d 32 96 1f e7 20 70 6f  |MSelIcon.2... po|
00007450  6c 6c 65 64 62 25 21 30  3d 31 20 8c 20 f2 43 6c  |lledb%!0=1 . .Cl|
00007460  6f 73 65 44 6f 77 6e 0d  32 a0 05 e1 0d 32 aa 04  |oseDown.2....2..|
00007470  0d 32 b4 0e dd f2 4d 53  65 6c 57 6f 72 6b 0d 32  |.2....MSelWork.2|
00007480  be 13 c8 8e 20 70 6f 6c  6c 65 64 62 25 21 30 20  |.... polledb%!0 |
00007490  ca 0d 32 c8 0e c9 20 30  3a f2 4d 49 6e 66 6f 0d  |..2... 0:.MInfo.|
000074a0  32 d2 0e c9 20 31 3a f2  4d 53 61 76 65 0d 32 dc  |2... 1:.MSave.2.|
000074b0  0e c9 20 32 3a f2 4d 45  64 69 74 0d 32 e6 10 c9  |.. 2:.MEdit.2...|
000074c0  20 33 3a f2 4d 53 65 6c  65 63 74 0d 32 f0 0e c9  | 3:.MSelect.2...|
000074d0  20 34 3a f2 4d 5a 6f 6f  6d 0d 32 fa 0e c9 20 35  | 4:.MZoom.2... 5|
000074e0  3a f2 4d 4c 6f 6f 70 0d  33 04 11 c9 20 36 3a f2  |:.MLoop.3... 6:.|
000074f0  4d 47 6f 6f 64 69 65 73  0d 33 0e 0e c9 20 37 3a  |MGoodies.3... 7:|
00007500  f2 4d 53 6f 6e 67 0d 33  18 05 cb 0d 33 22 05 e1  |.MSong.3....3"..|
00007510  0d 33 2c 04 0d 33 36 0b  dd f2 4d 53 6f 6e 67 0d  |.3,..36...MSong.|
00007520  33 40 11 6d 25 3d 70 6f  6c 6c 65 64 62 25 21 34  |3@.m%=polledb%!4|
00007530  0d 33 4a 0b c8 8e 20 6d  25 20 ca 0d 33 54 11 c9  |.3J... m% ..3T..|
00007540  20 30 3a f2 50 6c 61 79  53 6f 6e 67 0d 33 5e 11  | 0:.PlaySong.3^.|
00007550  c9 20 31 3a f2 4f 70 65  6e 53 6f 6e 67 0d 33 68  |. 1:.OpenSong.3h|
00007560  12 c9 20 34 3a f2 43 6c  65 61 72 53 6f 6e 67 0d  |.. 4:.ClearSong.|
00007570  33 72 14 c9 20 35 3a f2  53 77 61 70 53 6f 6e 67  |3r.. 5:.SwapSong|
00007580  52 65 70 0d 33 7c 05 cb  0d 33 86 05 e1 0d 33 90  |Rep.3|...3....3.|
00007590  04 0d 33 9a 11 dd f2 53  77 61 70 53 6f 6e 67 52  |..3....SwapSongR|
000075a0  65 70 0d 33 a4 17 73 6f  6e 67 72 65 70 25 3d ac  |ep.3..songrep%=.|
000075b0  20 73 6f 6e 67 72 65 70  25 0d 33 ae 0d f2 41 64  | songrep%.3...Ad|
000075c0  6a 53 6f 6e 67 4d 0d 33  b8 05 e1 0d 33 c2 04 0d  |jSongM.3....3...|
000075d0  33 cc 0e dd f2 4f 70 65  6e 53 6f 6e 67 0d 33 d6  |3....OpenSong.3.|
000075e0  13 74 65 6d 70 25 21 30  3d 77 73 6f 6e 67 68 25  |.temp%!0=wsongh%|
000075f0  0d 33 e0 22 c8 99 22 57  69 6d 70 5f 47 65 74 57  |.3.".."Wimp_GetW|
00007600  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 74 65 6d  |indowState",,tem|
00007610  70 25 0d 33 ea 0f 74 65  6d 70 25 21 32 38 3d 2d  |p%.3..temp%!28=-|
00007620  31 0d 33 f4 1e c8 99 22  57 69 6d 70 5f 4f 70 65  |1.3...."Wimp_Ope|
00007630  6e 57 69 6e 64 6f 77 22  2c 2c 74 65 6d 70 25 0d  |nWindow",,temp%.|
00007640  33 fe 18 74 65 6d 70 32  25 21 30 3d 77 73 6f 6e  |3..temp2%!0=wson|
00007650  67 70 61 6e 65 68 25 0d  34 08 23 c8 99 22 57 69  |gpaneh%.4.#.."Wi|
00007660  6d 70 5f 47 65 74 57 69  6e 64 6f 77 53 74 61 74  |mp_GetWindowStat|
00007670  65 22 2c 2c 74 65 6d 70  32 25 0d 34 12 14 74 65  |e",,temp2%.4..te|
00007680  6d 70 32 25 21 34 3d 74  65 6d 70 25 21 34 0d 34  |mp2%!4=temp%!4.4|
00007690  1c 16 74 65 6d 70 32 25  21 31 32 3d 74 65 6d 70  |..temp2%!12=temp|
000076a0  25 21 31 32 0d 34 26 16  74 65 6d 70 32 25 21 31  |%!12.4&.temp2%!1|
000076b0  36 3d 74 65 6d 70 25 21  31 36 0d 34 30 18 74 65  |6=temp%!16.40.te|
000076c0  6d 70 32 25 21 38 3d 74  65 6d 70 25 21 31 36 2d  |mp2%!8=temp%!16-|
000076d0  38 34 0d 34 3a 10 74 65  6d 70 32 25 21 32 38 3d  |84.4:.temp2%!28=|
000076e0  2d 31 0d 34 44 1f c8 99  22 57 69 6d 70 5f 4f 70  |-1.4D..."Wimp_Op|
000076f0  65 6e 57 69 6e 64 6f 77  22 2c 2c 74 65 6d 70 32  |enWindow",,temp2|
00007700  25 0d 34 4e 05 e1 0d 34  58 04 0d 34 62 0e dd f2  |%.4N...4X..4b...|
00007710  50 6c 61 79 53 6f 6e 67  0d 34 6c 12 e7 20 73 6f  |PlaySong.4l.. so|
00007720  6e 67 6c 65 6e 25 3e 30  20 8c 0d 34 76 36 c8 99  |nglen%>0 ..4v6..|
00007730  22 53 46 58 4d 50 5f 53  74 6f 70 22 2c 31 3a c8  |"SFXMP_Stop",1:.|
00007740  99 22 53 46 58 4d 50 5f  53 74 6f 70 22 2c 32 3a  |."SFXMP_Stop",2:|
00007750  c8 99 22 53 46 58 4d 50  5f 53 74 6f 70 22 2c 33  |.."SFXMP_Stop",3|
00007760  0d 34 80 08 c8 a0 20 32  0d 34 8a 14 c8 a1 20 32  |.4.... 2.4.... 2|
00007770  2c 22 53 46 58 4d 56 6f  69 63 65 22 0d 34 94 4e  |,"SFXMVoice".4.N|
00007780  c8 99 22 53 46 58 4d 50  5f 50 6c 61 79 53 6f 6e  |.."SFXMP_PlaySon|
00007790  67 22 2c 73 6f 6e 67 73  74 61 72 74 25 2c 73 6f  |g",songstart%,so|
000077a0  6e 67 6c 65 6e 25 2c 73  74 61 72 74 73 61 6d 70  |nglen%,startsamp|
000077b0  6c 65 25 2c 31 2c 73 74  79 70 65 25 2b 28 73 6f  |le%,1,stype%+(so|
000077c0  6e 67 72 65 70 25 3c 3c  38 29 0d 34 9e 05 cd 0d  |ngrep%<<8).4....|
000077d0  34 a8 05 e1 0d 34 b2 04  0d 34 bc 0b dd f2 4d 49  |4....4...4....MI|
000077e0  6e 66 6f 0d 34 c6 11 6d  25 3d 70 6f 6c 6c 65 64  |nfo.4..m%=polled|
000077f0  62 25 21 34 0d 34 d0 0b  c8 8e 20 6d 25 20 ca 0d  |b%!4.4.... m% ..|
00007800  34 da 0e c9 20 31 3a f2  4d 54 79 70 65 0d 34 e4  |4... 1:.MType.4.|
00007810  0f c9 20 32 3a f2 53 65  74 42 75 66 0d 34 ee 11  |.. 2:.SetBuf.4..|
00007820  c9 20 33 3a f2 43 6c 65  61 72 41 6c 6c 0d 34 f8  |. 3:.ClearAll.4.|
00007830  05 cb 0d 35 02 05 e1 0d  35 0c 04 0d 35 16 0c dd  |...5....5...5...|
00007840  f2 53 65 74 42 75 66 0d  35 20 36 c8 99 22 53 46  |.SetBuf.5 6.."SF|
00007850  58 4d 50 5f 53 74 6f 70  22 2c 31 3a c8 99 22 53  |XMP_Stop",1:.."S|
00007860  46 58 4d 50 5f 53 74 6f  70 22 2c 32 3a c8 99 22  |FXMP_Stop",2:.."|
00007870  53 46 58 4d 50 5f 53 74  6f 70 22 2c 33 0d 35 2a  |SFXMP_Stop",3.5*|
00007880  23 6e 65 77 62 6c 65 6e  25 3d 31 30 32 34 2a bb  |#newblen%=1024*.|
00007890  28 24 28 6d 62 75 66 6c  65 6e 25 21 34 30 29 29  |($(mbuflen%!40))|
000078a0  0d 35 34 23 e7 20 6e 65  77 62 6c 65 6e 25 3c 31  |.54#. newblen%<1|
000078b0  30 32 34 20 8c 20 6e 65  77 62 6c 65 6e 25 3d 31  |024 . newblen%=1|
000078c0  30 32 34 0d 35 3e 2e e7  20 6e 65 77 62 6c 65 6e  |024.5>.. newblen|
000078d0  25 3e 3d 31 30 32 34 2a  31 30 32 34 20 8c 20 6e  |%>=1024*1024 . n|
000078e0  65 77 62 6c 65 6e 25 3d  31 30 32 33 2a 31 30 32  |ewblen%=1023*102|
000078f0  34 0d 35 48 08 62 25 3d  31 0d 35 52 18 e7 20 6e  |4.5H.b%=1.5R.. n|
00007900  65 77 62 6c 65 6e 25 3c  62 75 66 6c 65 6e 25 20  |ewblen%<buflen% |
00007910  8c 0d 35 5c 0d 74 65 6d  70 25 21 30 3d 30 0d 35  |..5\.temp%!0=0.5|
00007920  66 32 24 28 74 65 6d 70  25 2b 34 29 3d 22 59 6f  |f2$(temp%+4)="Yo|
00007930  75 20 77 69 6c 6c 20 6c  6f 73 65 20 74 68 65 20  |u will lose the |
00007940  63 75 72 72 65 6e 74 20  73 61 6d 70 6c 65 2e 22  |current sample."|
00007950  0d 35 70 33 c8 99 22 57  69 6d 70 5f 52 65 70 6f  |.5p3.."Wimp_Repo|
00007960  72 74 45 72 72 6f 72 22  2c 74 65 6d 70 25 2c 25  |rtError",temp%,%|
00007970  31 30 30 31 31 2c 22 43  6f 6e 66 69 72 6d 22 b8  |10011,"Confirm".|
00007980  2c 62 25 0d 35 7a 05 cd  0d 35 84 0c e7 20 62 25  |,b%.5z...5... b%|
00007990  3d 31 20 8c 0d 35 8e 2f  c8 99 22 58 4f 53 5f 4d  |=1 ..5./.."XOS_M|
000079a0  6f 64 75 6c 65 22 2c 36  2c 2c 2c 6e 65 77 62 6c  |odule",6,,,newbl|
000079b0  65 6e 25 b8 2c 2c 6e 65  77 62 73 74 61 72 74 25  |en%.,,newbstart%|
000079c0  3b 76 25 0d 35 98 0c e7  20 76 25 80 31 20 8c 0d  |;v%.5... v%.1 ..|
000079d0  35 a2 25 f2 52 65 70 6f  72 74 45 72 72 28 22 43  |5.%.ReportErr("C|
000079e0  61 6e 27 74 20 63 6c 61  69 6d 20 6d 65 6d 6f 72  |an't claim memor|
000079f0  79 2e 22 29 0d 35 ac 05  cc 0d 35 b6 18 e7 20 6e  |y.").5....5... n|
00007a00  65 77 62 6c 65 6e 25 3c  62 75 66 6c 65 6e 25 20  |ewblen%<buflen% |
00007a10  8c 0d 35 c0 1f c8 99 22  58 4f 53 5f 4d 6f 64 75  |..5...."XOS_Modu|
00007a20  6c 65 22 2c 37 2c 2c 62  75 66 73 74 61 72 74 25  |le",7,,bufstart%|
00007a30  0d 35 ca 18 62 75 66 73  74 61 72 74 25 3d 6e 65  |.5..bufstart%=ne|
00007a40  77 62 73 74 61 72 74 25  0d 35 d4 14 62 75 66 6c  |wbstart%.5..bufl|
00007a50  65 6e 25 3d 6e 65 77 62  6c 65 6e 25 0d 35 de 0a  |en%=newblen%.5..|
00007a60  f2 43 6c 65 61 72 0d 35  e8 0e f2 43 68 65 63 6b  |.Clear.5...Check|
00007a70  53 6f 6e 67 0d 35 f2 05  cc 0d 35 fc 1d 63 68 62  |Song.5....5..chb|
00007a80  25 3d 6e 65 77 62 73 74  61 72 74 25 2d 62 75 66  |%=newbstart%-buf|
00007a90  73 74 61 72 74 25 0d 36  06 10 41 25 3d 62 75 66  |start%.6..A%=buf|
00007aa0  73 74 61 72 74 25 0d 36  10 11 42 25 3d 6e 65 77  |start%.6..B%=new|
00007ab0  62 73 74 61 72 74 25 0d  36 1a 28 43 25 3d 73 74  |bstart%.6.(C%=st|
00007ac0  61 72 74 73 61 6d 70 6c  65 25 2b 73 61 6d 70 6c  |artsample%+sampl|
00007ad0  65 6c 65 6e 25 2d 62 75  66 73 74 61 72 74 25 0d  |elen%-bufstart%.|
00007ae0  36 24 0c d6 63 6f 70 79  6d 65 6d 0d 36 2e 12 41  |6$..copymem.6..A|
00007af0  25 3d 63 6c 69 70 62 73  74 61 72 74 25 0d 36 38  |%=clipbstart%.68|
00007b00  24 42 25 3d 6e 65 77 62  73 74 61 72 74 25 2b 6e  |$B%=newbstart%+n|
00007b10  65 77 62 6c 65 6e 25 2d  63 6c 69 70 62 6c 65 6e  |ewblen%-clipblen|
00007b20  25 0d 36 42 10 43 25 3d  63 6c 69 70 62 6c 65 6e  |%.6B.C%=clipblen|
00007b30  25 0d 36 4c 0c d6 63 6f  70 79 6d 65 6d 0d 36 56  |%.6L..copymem.6V|
00007b40  22 73 74 61 72 74 73 61  6d 70 6c 65 25 3d 73 74  |"startsample%=st|
00007b50  61 72 74 73 61 6d 70 6c  65 25 2b 63 68 62 25 0d  |artsample%+chb%.|
00007b60  36 60 1f c8 99 22 58 4f  53 5f 4d 6f 64 75 6c 65  |6`..."XOS_Module|
00007b70  22 2c 37 2c 2c 62 75 66  73 74 61 72 74 25 0d 36  |",7,,bufstart%.6|
00007b80  6a 18 62 75 66 73 74 61  72 74 25 3d 6e 65 77 62  |j.bufstart%=newb|
00007b90  73 74 61 72 74 25 0d 36  74 14 62 75 66 6c 65 6e  |start%.6t.buflen|
00007ba0  25 3d 6e 65 77 62 6c 65  6e 25 0d 36 7e 0e f2 43  |%=newblen%.6~..C|
00007bb0  68 65 63 6b 53 6f 6e 67  0d 36 88 05 cd 0d 36 92  |heckSong.6....6.|
00007bc0  05 cd 0d 36 9c 05 cd 0d  36 a6 05 e1 0d 36 b0 04  |...6....6....6..|
00007bd0  0d 36 ba 0e dd f2 43 6c  65 61 72 41 6c 6c 0d 36  |.6....ClearAll.6|
00007be0  c4 17 e7 20 73 61 6d 70  6c 65 73 61 76 65 64 25  |... samplesaved%|
00007bf0  3d 2d 31 20 8c 0d 36 ce  0a f2 43 6c 65 61 72 0d  |=-1 ..6...Clear.|
00007c00  36 d8 05 cc 0d 36 e2 4e  41 25 3d a4 43 6f 6e 66  |6....6.NA%=.Conf|
00007c10  69 72 6d 28 22 53 61 6d  70 6c 65 20 68 61 73 20  |irm("Sample has |
00007c20  62 65 65 6e 20 6d 6f 64  69 66 69 65 64 2e 20 41  |been modified. A|
00007c30  72 65 20 79 6f 75 20 73  75 72 65 20 79 6f 75 20  |re you sure you |
00007c40  77 61 6e 74 20 74 6f 20  64 6f 20 74 68 69 73 3f  |want to do this?|
00007c50  22 29 0d 36 ec 13 e7 20  41 25 3d 31 20 8c 20 f2  |").6... A%=1 . .|
00007c60  43 6c 65 61 72 0d 36 f6  05 cd 0d 37 00 05 e1 0d  |Clear.6....7....|
00007c70  37 0a 04 0d 37 14 0b dd  f2 43 6c 65 61 72 0d 37  |7...7....Clear.7|
00007c80  1e 0c f2 52 65 73 74 61  72 74 0d 37 28 13 74 65  |...Restart.7(.te|
00007c90  6d 70 25 21 30 3d 77 77  6f 72 6b 68 25 0d 37 32  |mp%!0=wworkh%.72|
00007ca0  22 c8 99 22 57 69 6d 70  5f 47 65 74 57 69 6e 64  |".."Wimp_GetWind|
00007cb0  6f 77 53 74 61 74 65 22  2c 2c 74 65 6d 70 25 0d  |owState",,temp%.|
00007cc0  37 3c 11 70 6f 6c 6c 65  64 62 25 21 32 30 3d 30  |7<.polledb%!20=0|
00007cd0  0d 37 46 1e c8 99 22 57  69 6d 70 5f 4f 70 65 6e  |.7F..."Wimp_Open|
00007ce0  57 69 6e 64 6f 77 22 2c  2c 74 65 6d 70 25 0d 37  |Window",,temp%.7|
00007cf0  50 0e f2 53 65 74 45 78  74 65 6e 74 0d 37 5a 12  |P..SetExtent.7Z.|
00007d00  f2 53 65 74 53 6f 6e 67  45 78 74 65 6e 74 0d 37  |.SetSongExtent.7|
00007d10  64 1d 24 28 77 77 6f 72  6b 25 21 37 32 29 3d 22  |d.$(wwork%!72)="|
00007d20  3c 55 6e 74 69 74 6c 65  64 3e 22 0d 37 6e 13 73  |<Untitled>".7n.s|
00007d30  61 6d 70 6c 65 73 61 76  65 64 25 3d 2d 31 0d 37  |amplesaved%=-1.7|
00007d40  78 0b f2 52 64 57 6f 72  6b 0d 37 82 05 e1 0d 37  |x..RdWork.7....7|
00007d50  8c 04 0d 37 96 0b dd f2  4d 53 61 76 65 0d 37 a0  |...7....MSave.7.|
00007d60  05 e1 0d 37 aa 04 0d 37  b4 0b dd f2 4d 54 79 70  |...7...7....MTyp|
00007d70  65 0d 37 be 13 c8 8e 20  70 6f 6c 6c 65 64 62 25  |e.7.... polledb%|
00007d80  21 38 20 ca 0d 37 c8 22  c9 20 30 3a 73 74 79 70  |!8 ..7.". 0:styp|
00007d90  65 25 3d 32 3a f2 41 64  6a 54 79 70 65 4d 3a f2  |e%=2:.AdjTypeM:.|
00007da0  52 64 57 6f 72 6b 0d 37  d2 22 c9 20 31 3a 73 74  |RdWork.7.". 1:st|
00007db0  79 70 65 25 3d 30 3a f2  41 64 6a 54 79 70 65 4d  |ype%=0:.AdjTypeM|
00007dc0  3a f2 52 64 57 6f 72 6b  0d 37 dc 22 c9 20 32 3a  |:.RdWork.7.". 2:|
00007dd0  73 74 79 70 65 25 3d 31  3a f2 41 64 6a 54 79 70  |stype%=1:.AdjTyp|
00007de0  65 4d 3a f2 52 64 57 6f  72 6b 0d 37 e6 05 cb 0d  |eM:.RdWork.7....|
00007df0  37 f0 05 e1 0d 37 fa 04  0d 38 04 0e dd f2 41 64  |7....7...8....Ad|
00007e00  6a 54 79 70 65 4d 0d 38  0e 0f c8 8e 20 73 74 79  |jTypeM.8.... sty|
00007e10  70 65 25 20 ca 0d 38 18  51 c9 20 30 3a 74 79 70  |pe% ..8.Q. 0:typ|
00007e20  65 6d 65 6e 75 25 21 28  32 38 2b 32 34 2a 30 2b  |emenu%!(28+24*0+|
00007e30  30 29 3d 30 3a 74 79 70  65 6d 65 6e 75 25 21 28  |0)=0:typemenu%!(|
00007e40  32 38 2b 32 34 2a 31 2b  30 29 3d 31 3a 74 79 70  |28+24*1+0)=1:typ|
00007e50  65 6d 65 6e 75 25 21 28  32 38 2b 32 34 2a 32 2b  |emenu%!(28+24*2+|
00007e60  30 29 3d 31 32 38 0d 38  22 51 c9 20 31 3a 74 79  |0)=128.8"Q. 1:ty|
00007e70  70 65 6d 65 6e 75 25 21  28 32 38 2b 32 34 2a 30  |pemenu%!(28+24*0|
00007e80  2b 30 29 3d 30 3a 74 79  70 65 6d 65 6e 75 25 21  |+0)=0:typemenu%!|
00007e90  28 32 38 2b 32 34 2a 31  2b 30 29 3d 30 3a 74 79  |(28+24*1+0)=0:ty|
00007ea0  70 65 6d 65 6e 75 25 21  28 32 38 2b 32 34 2a 32  |pemenu%!(28+24*2|
00007eb0  2b 30 29 3d 31 32 39 0d  38 2c 51 c9 20 32 3a 74  |+0)=129.8,Q. 2:t|
00007ec0  79 70 65 6d 65 6e 75 25  21 28 32 38 2b 32 34 2a  |ypemenu%!(28+24*|
00007ed0  30 2b 30 29 3d 31 3a 74  79 70 65 6d 65 6e 75 25  |0+0)=1:typemenu%|
00007ee0  21 28 32 38 2b 32 34 2a  31 2b 30 29 3d 30 3a 74  |!(28+24*1+0)=0:t|
00007ef0  79 70 65 6d 65 6e 75 25  21 28 32 38 2b 32 34 2a  |ypemenu%!(28+24*|
00007f00  32 2b 30 29 3d 31 32 38  0d 38 36 05 cb 0d 38 40  |2+0)=128.86...8@|
00007f10  05 e1 0d 38 4a 04 0d 38  54 0e dd f2 41 64 6a 53  |...8J..8T...AdjS|
00007f20  6f 6e 67 4d 0d 38 5e 42  e7 20 73 6f 6e 67 72 65  |ongM.8^B. songre|
00007f30  70 25 20 8c 20 73 6f 6e  67 6d 65 6e 75 25 21 28  |p% . songmenu%!(|
00007f40  32 38 2b 32 34 2a 35 29  3d 31 32 39 20 8b 20 73  |28+24*5)=129 . s|
00007f50  6f 6e 67 6d 65 6e 75 25  21 28 32 38 2b 32 34 2a  |ongmenu%!(28+24*|
00007f60  35 29 3d 31 32 38 0d 38  68 05 e1 0d 38 72 04 0d  |5)=128.8h...8r..|
00007f70  38 7c 0b dd f2 4d 45 64  69 74 0d 38 86 23 e7 20  |8|...MEdit.8.#. |
00007f80  73 65 6c 65 63 74 6c 25  3c 3e 2d 31 20 80 20 73  |selectl%<>-1 . s|
00007f90  65 6c 65 63 74 72 25 3c  3e 2d 31 20 8c 0d 38 90  |electr%<>-1 ..8.|
00007fa0  11 6d 25 3d 70 6f 6c 6c  65 64 62 25 21 34 0d 38  |.m%=polledb%!4.8|
00007fb0  9a 0b c8 8e 20 6d 25 20  ca 0d 38 a4 0e c9 20 30  |.... m% ..8... 0|
00007fc0  3a f2 4d 45 43 75 74 0d  38 ae 0f c9 20 31 3a f2  |:.MECut.8... 1:.|
00007fd0  4d 45 43 6f 70 79 0d 38  b8 10 c9 20 32 3a f2 4d  |MECopy.8... 2:.M|
00007fe0  45 50 61 73 74 65 0d 38  c2 11 c9 20 33 3a f2 4d  |EPaste.8... 3:.M|
00007ff0  45 44 65 6c 65 74 65 0d  38 cc 13 c9 20 34 3a f2  |EDelete.8... 4:.|
00008000  4d 45 44 65 6c 65 74 65  4e 53 0d 38 d6 12 c9 20  |MEDeleteNS.8... |
00008010  35 3a f2 4d 45 44 65 6c  65 74 65 4c 0d 38 e0 12  |5:.MEDeleteL.8..|
00008020  c9 20 36 3a f2 4d 45 44  65 6c 65 74 65 52 0d 38  |. 6:.MEDeleteR.8|
00008030  ea 05 cb 0d 38 f4 05 cd  0d 38 fe 05 e1 0d 39 08  |....8....8....9.|
00008040  04 0d 39 12 0b dd f2 4d  45 43 75 74 0d 39 1c 43  |..9....MECut.9.C|
00008050  63 25 3d a4 43 68 65 63  6b 4c 65 6e 28 73 61 6d  |c%=.CheckLen(sam|
00008060  70 6c 65 6c 65 6e 25 2b  70 73 65 6c 65 63 74 72  |plelen%+pselectr|
00008070  25 2d 70 73 65 6c 65 63  74 6c 25 2c 22 4e 6f 20  |%-pselectl%,"No |
00008080  72 6f 6f 6d 20 66 6f 72  20 63 75 74 2e 22 29 0d  |room for cut.").|
00008090  39 26 0c e7 20 63 25 3d  30 20 8c 0d 39 30 1d 41  |9&.. c%=0 ..90.A|
000080a0  25 3d 73 74 61 72 74 73  61 6d 70 6c 65 25 2b 70  |%=startsample%+p|
000080b0  73 65 6c 65 63 74 6c 25  0d 39 3a 2e 42 25 3d 62  |selectl%.9:.B%=b|
000080c0  75 66 73 74 61 72 74 25  2b 62 75 66 6c 65 6e 25  |ufstart%+buflen%|
000080d0  2d 28 70 73 65 6c 65 63  74 72 25 2d 70 73 65 6c  |-(pselectr%-psel|
000080e0  65 63 74 6c 25 29 0d 39  44 1a 43 25 3d 70 73 65  |ectl%).9D.C%=pse|
000080f0  6c 65 63 74 72 25 2d 70  73 65 6c 65 63 74 6c 25  |lectr%-pselectl%|
00008100  0d 39 4e 0c d6 63 6f 70  79 6d 65 6d 0d 39 58 12  |.9N..copymem.9X.|
00008110  63 6c 69 70 62 73 74 61  72 74 25 3d 42 25 0d 39  |clipbstart%=B%.9|
00008120  62 10 63 6c 69 70 62 6c  65 6e 25 3d 43 25 0d 39  |b.clipblen%=C%.9|
00008130  6c 0d f2 4d 45 44 65 6c  65 74 65 0d 39 76 10 f2  |l..MEDelete.9v..|
00008140  4d 6f 64 54 69 74 6c 65  28 30 29 0d 39 80 05 cd  |ModTitle(0).9...|
00008150  0d 39 8a 05 e1 0d 39 94  04 0d 39 9e 0c dd f2 4d  |.9....9...9....M|
00008160  45 43 6f 70 79 0d 39 a8  44 63 25 3d a4 43 68 65  |ECopy.9.Dc%=.Che|
00008170  63 6b 4c 65 6e 28 73 61  6d 70 6c 65 6c 65 6e 25  |ckLen(samplelen%|
00008180  2b 70 73 65 6c 65 63 74  72 25 2d 70 73 65 6c 65  |+pselectr%-psele|
00008190  63 74 6c 25 2c 22 4e 6f  20 72 6f 6f 6d 20 66 6f  |ctl%,"No room fo|
000081a0  72 20 63 6f 70 79 2e 22  29 0d 39 b2 0c e7 20 63  |r copy.").9... c|
000081b0  25 3d 30 20 8c 0d 39 bc  1d 41 25 3d 73 74 61 72  |%=0 ..9..A%=star|
000081c0  74 73 61 6d 70 6c 65 25  2b 70 73 65 6c 65 63 74  |tsample%+pselect|
000081d0  6c 25 0d 39 c6 2e 42 25  3d 62 75 66 73 74 61 72  |l%.9..B%=bufstar|
000081e0  74 25 2b 62 75 66 6c 65  6e 25 2d 28 70 73 65 6c  |t%+buflen%-(psel|
000081f0  65 63 74 72 25 2d 70 73  65 6c 65 63 74 6c 25 29  |ectr%-pselectl%)|
00008200  0d 39 d0 1a 43 25 3d 70  73 65 6c 65 63 74 72 25  |.9..C%=pselectr%|
00008210  2d 70 73 65 6c 65 63 74  6c 25 0d 39 da 0c d6 63  |-pselectl%.9...c|
00008220  6f 70 79 6d 65 6d 0d 39  e4 12 63 6c 69 70 62 73  |opymem.9..clipbs|
00008230  74 61 72 74 25 3d 42 25  0d 39 ee 10 63 6c 69 70  |tart%=B%.9..clip|
00008240  62 6c 65 6e 25 3d 43 25  0d 39 f8 05 cd 0d 3a 02  |blen%=C%.9....:.|
00008250  05 e1 0d 3a 0c 04 0d 3a  16 0d dd f2 4d 45 50 61  |...:...:....MEPa|
00008260  73 74 65 0d 3a 20 3d 63  25 3d a4 43 68 65 63 6b  |ste.: =c%=.Check|
00008270  4c 65 6e 28 73 61 6d 70  6c 65 6c 65 6e 25 2b 32  |Len(samplelen%+2|
00008280  2a 63 6c 69 70 62 6c 65  6e 25 2c 22 4e 6f 20 72  |*clipblen%,"No r|
00008290  6f 6f 6d 20 66 6f 72 20  70 61 73 74 65 2e 22 29  |oom for paste.")|
000082a0  0d 3a 2a 0c e7 20 63 25  3d 30 20 8c 0d 3a 34 1d  |.:*.. c%=0 ..:4.|
000082b0  41 25 3d 73 74 61 72 74  73 61 6d 70 6c 65 25 2b  |A%=startsample%+|
000082c0  70 73 65 6c 65 63 74 72  25 0d 3a 3e 27 42 25 3d  |pselectr%.:>'B%=|
000082d0  73 74 61 72 74 73 61 6d  70 6c 65 25 2b 70 73 65  |startsample%+pse|
000082e0  6c 65 63 74 72 25 2b 63  6c 69 70 62 6c 65 6e 25  |lectr%+clipblen%|
000082f0  0d 3a 48 1b 43 25 3d 73  61 6d 70 6c 65 6c 65 6e  |.:H.C%=samplelen|
00008300  25 2d 70 73 65 6c 65 63  74 72 25 0d 3a 52 0c d6  |%-pselectr%.:R..|
00008310  63 6f 70 79 6d 65 6d 0d  3a 5c 12 41 25 3d 63 6c  |copymem.:\.A%=cl|
00008320  69 70 62 73 74 61 72 74  25 0d 3a 66 1d 42 25 3d  |ipbstart%.:f.B%=|
00008330  73 74 61 72 74 73 61 6d  70 6c 65 25 2b 70 73 65  |startsample%+pse|
00008340  6c 65 63 74 72 25 0d 3a  70 10 43 25 3d 63 6c 69  |lectr%.:p.C%=cli|
00008350  70 62 6c 65 6e 25 0d 3a  7a 0c d6 63 6f 70 79 6d  |pblen%.:z..copym|
00008360  65 6d 0d 3a 84 33 e7 20  70 6c 6f 6f 70 6c 25 3e  |em.:.3. ploopl%>|
00008370  70 73 65 6c 65 63 74 72  25 20 8c 20 70 6c 6f 6f  |pselectr% . ploo|
00008380  70 6c 25 3d 70 6c 6f 6f  70 6c 25 2b 63 6c 69 70  |pl%=ploopl%+clip|
00008390  62 6c 65 6e 25 0d 3a 8e  33 e7 20 70 6c 6f 6f 70  |blen%.:.3. ploop|
000083a0  72 25 3e 70 73 65 6c 65  63 74 72 25 20 8c 20 70  |r%>pselectr% . p|
000083b0  6c 6f 6f 70 72 25 3d 70  6c 6f 6f 70 72 25 2b 63  |loopr%=ploopr%+c|
000083c0  6c 69 70 62 6c 65 6e 25  0d 3a 98 0c f2 67 65 74  |lipblen%.:...get|
000083d0  77 69 6e 70 0d 3a a2 23  73 61 6d 70 6c 65 6c 65  |winp.:.#samplele|
000083e0  6e 25 3d 73 61 6d 70 6c  65 6c 65 6e 25 2b 63 6c  |n%=samplelen%+cl|
000083f0  69 70 62 6c 65 6e 25 0d  3a ac 43 e7 20 73 61 6d  |ipblen%.:.C. sam|
00008400  70 6c 65 6c 65 6e 25 3c  31 20 8c 20 73 61 6d 70  |plelen%<1 . samp|
00008410  6c 65 6c 65 6e 25 3d 31  3a 73 74 61 72 74 73 61  |lelen%=1:startsa|
00008420  6d 70 6c 65 25 3f 30 3d  30 3a 73 74 61 72 74 73  |mple%?0=0:starts|
00008430  61 6d 70 6c 65 25 3f 31  3d 30 0d 3a b6 0e f2 43  |ample%?1=0.:...C|
00008440  68 65 63 6b 4c 6f 6f 70  0d 3a c0 0e f2 43 68 65  |heckLoop.:...Che|
00008450  63 6b 53 6f 6e 67 0d 3a  ca 0c f2 61 64 6a 70 74  |ckSong.:...adjpt|
00008460  72 73 0d 3a d4 0c f2 5a  6f 6f 6d 53 65 6c 0d 3a  |rs.:...ZoomSel.:|
00008470  de 10 f2 4d 6f 64 54 69  74 6c 65 28 30 29 0d 3a  |...ModTitle(0).:|
00008480  e8 05 cd 0d 3a f2 05 e1  0d 3a fc 04 0d 3b 06 15  |....:....:...;..|
00008490  dd a4 43 68 65 63 6b 4c  65 6e 28 6c 25 2c 65 24  |..CheckLen(l%,e$|
000084a0  29 0d 3b 10 2a e7 20 73  74 61 72 74 73 61 6d 70  |).;.*. startsamp|
000084b0  6c 65 25 2b 6c 25 3e 3d  62 75 66 73 74 61 72 74  |le%+l%>=bufstart|
000084c0  25 2b 62 75 66 6c 65 6e  25 20 8c 0d 3b 1a 12 f2  |%+buflen% ..;...|
000084d0  52 65 70 6f 72 74 45 72  72 28 65 24 29 0d 3b 24  |ReportErr(e$).;$|
000084e0  09 41 25 3d 2d 31 0d 3b  2e 05 cc 0d 3b 38 08 41  |.A%=-1.;....;8.A|
000084f0  25 3d 30 0d 3b 42 05 cd  0d 3b 4c 07 3d 41 25 0d  |%=0.;B...;L.=A%.|
00008500  3b 56 04 0d 3b 60 0e dd  f2 4d 45 44 65 6c 65 74  |;V..;`...MEDelet|
00008510  65 0d 3b 6a 1d 41 25 3d  73 74 61 72 74 73 61 6d  |e.;j.A%=startsam|
00008520  70 6c 65 25 2b 70 73 65  6c 65 63 74 72 25 0d 3b  |ple%+pselectr%.;|
00008530  74 1d 42 25 3d 73 74 61  72 74 73 61 6d 70 6c 65  |t.B%=startsample|
00008540  25 2b 70 73 65 6c 65 63  74 6c 25 0d 3b 7e 1b 43  |%+pselectl%.;~.C|
00008550  25 3d 73 61 6d 70 6c 65  6c 65 6e 25 2d 70 73 65  |%=samplelen%-pse|
00008560  6c 65 63 74 72 25 0d 3b  88 0c d6 63 6f 70 79 6d  |lectr%.;...copym|
00008570  65 6d 0d 3b 92 3f e7 20  70 6c 6f 6f 70 6c 25 3e  |em.;.?. ploopl%>|
00008580  70 73 65 6c 65 63 74 6c  25 20 8c 20 70 6c 6f 6f  |pselectl% . ploo|
00008590  70 6c 25 3d 70 6c 6f 6f  70 6c 25 2d 28 70 73 65  |pl%=ploopl%-(pse|
000085a0  6c 65 63 74 72 25 2d 70  73 65 6c 65 63 74 6c 25  |lectr%-pselectl%|
000085b0  29 0d 3b 9c 3f e7 20 70  6c 6f 6f 70 72 25 3e 70  |).;.?. ploopr%>p|
000085c0  73 65 6c 65 63 74 6c 25  20 8c 20 70 6c 6f 6f 70  |selectl% . ploop|
000085d0  72 25 3d 70 6c 6f 6f 70  72 25 2d 28 70 73 65 6c  |r%=ploopr%-(psel|
000085e0  65 63 74 72 25 2d 70 73  65 6c 65 63 74 6c 25 29  |ectr%-pselectl%)|
000085f0  0d 3b a6 0c f2 67 65 74  77 69 6e 70 0d 3b b0 21  |.;...getwinp.;.!|
00008600  73 61 6d 70 6c 65 6c 65  6e 25 3d 73 61 6d 70 6c  |samplelen%=sampl|
00008610  65 6c 65 6e 25 2d 28 41  25 2d 42 25 29 0d 3b ba  |elen%-(A%-B%).;.|
00008620  43 e7 20 73 61 6d 70 6c  65 6c 65 6e 25 3c 31 20  |C. samplelen%<1 |
00008630  8c 20 73 61 6d 70 6c 65  6c 65 6e 25 3d 31 3a 73  |. samplelen%=1:s|
00008640  74 61 72 74 73 61 6d 70  6c 65 25 3f 30 3d 30 3a  |tartsample%?0=0:|
00008650  73 74 61 72 74 73 61 6d  70 6c 65 25 3f 31 3d 30  |startsample%?1=0|
00008660  0d 3b c4 0e f2 43 68 65  63 6b 4c 6f 6f 70 0d 3b  |.;...CheckLoop.;|
00008670  ce 0e f2 43 68 65 63 6b  53 6f 6e 67 0d 3b d8 0c  |...CheckSong.;..|
00008680  f2 61 64 6a 70 74 72 73  0d 3b e2 0c f2 5a 6f 6f  |.adjptrs.;...Zoo|
00008690  6d 53 65 6c 0d 3b ec 10  f2 4d 6f 64 54 69 74 6c  |mSel.;...ModTitl|
000086a0  65 28 30 29 0d 3b f6 05  e1 0d 3c 00 04 0d 3c 0a  |e(0).;....<...<.|
000086b0  10 dd f2 4d 45 44 65 6c  65 74 65 4e 53 0d 3c 14  |...MEDeleteNS.<.|
000086c0  1d 41 25 3d 73 74 61 72  74 73 61 6d 70 6c 65 25  |.A%=startsample%|
000086d0  2b 70 73 65 6c 65 63 74  6c 25 0d 3c 1e 13 42 25  |+pselectl%.<..B%|
000086e0  3d 73 74 61 72 74 73 61  6d 70 6c 65 25 0d 3c 28  |=startsample%.<(|
000086f0  1a 43 25 3d 70 73 65 6c  65 63 74 72 25 2d 70 73  |.C%=pselectr%-ps|
00008700  65 6c 65 63 74 6c 25 0d  3c 32 0c d6 63 6f 70 79  |electl%.<2..copy|
00008710  6d 65 6d 0d 3c 3c 1d 70  6c 6f 6f 70 6c 25 3d 70  |mem.<<.ploopl%=p|
00008720  6c 6f 6f 70 6c 25 2d 70  73 65 6c 65 63 74 6c 25  |loopl%-pselectl%|
00008730  0d 3c 46 1d 70 6c 6f 6f  70 72 25 3d 70 6c 6f 6f  |.<F.ploopr%=ploo|
00008740  70 72 25 2d 70 73 65 6c  65 63 74 6c 25 0d 3c 50  |pr%-pselectl%.<P|
00008750  0c f2 67 65 74 77 69 6e  70 0d 3c 5a 11 73 61 6d  |..getwinp.<Z.sam|
00008760  70 6c 65 6c 65 6e 25 3d  43 25 0d 3c 64 43 e7 20  |plelen%=C%.<dC. |
00008770  73 61 6d 70 6c 65 6c 65  6e 25 3c 31 20 8c 20 73  |samplelen%<1 . s|
00008780  61 6d 70 6c 65 6c 65 6e  25 3d 31 3a 73 74 61 72  |amplelen%=1:star|
00008790  74 73 61 6d 70 6c 65 25  3f 30 3d 30 3a 73 74 61  |tsample%?0=0:sta|
000087a0  72 74 73 61 6d 70 6c 65  25 3f 31 3d 30 0d 3c 6e  |rtsample%?1=0.<n|
000087b0  0e f2 43 68 65 63 6b 4c  6f 6f 70 0d 3c 78 0e f2  |..CheckLoop.<x..|
000087c0  43 68 65 63 6b 53 6f 6e  67 0d 3c 82 0c f2 61 64  |CheckSong.<...ad|
000087d0  6a 70 74 72 73 0d 3c 8c  0c f2 5a 6f 6f 6d 53 65  |jptrs.<...ZoomSe|
000087e0  6c 0d 3c 96 10 f2 4d 6f  64 54 69 74 6c 65 28 30  |l.<...ModTitle(0|
000087f0  29 0d 3c a0 05 e1 0d 3c  aa 04 0d 3c b4 0f dd f2  |).<....<...<....|
00008800  4d 45 44 65 6c 65 74 65  4c 0d 3c be 1d 41 25 3d  |MEDeleteL.<..A%=|
00008810  73 74 61 72 74 73 61 6d  70 6c 65 25 2b 70 73 65  |startsample%+pse|
00008820  6c 65 63 74 6c 25 0d 3c  c8 13 42 25 3d 73 74 61  |lectl%.<..B%=sta|
00008830  72 74 73 61 6d 70 6c 65  25 0d 3c d2 1b 43 25 3d  |rtsample%.<..C%=|
00008840  73 61 6d 70 6c 65 6c 65  6e 25 2d 70 73 65 6c 65  |samplelen%-psele|
00008850  63 74 6c 25 0d 3c dc 0c  d6 63 6f 70 79 6d 65 6d  |ctl%.<...copymem|
00008860  0d 3c e6 1d 70 6c 6f 6f  70 6c 25 3d 70 6c 6f 6f  |.<..ploopl%=ploo|
00008870  70 6c 25 2d 70 73 65 6c  65 63 74 6c 25 0d 3c f0  |pl%-pselectl%.<.|
00008880  1d 70 6c 6f 6f 70 72 25  3d 70 6c 6f 6f 70 72 25  |.ploopr%=ploopr%|
00008890  2d 70 73 65 6c 65 63 74  6c 25 0d 3c fa 0c f2 67  |-pselectl%.<...g|
000088a0  65 74 77 69 6e 70 0d 3d  04 11 73 61 6d 70 6c 65  |etwinp.=..sample|
000088b0  6c 65 6e 25 3d 43 25 0d  3d 0e 43 e7 20 73 61 6d  |len%=C%.=.C. sam|
000088c0  70 6c 65 6c 65 6e 25 3c  31 20 8c 20 73 61 6d 70  |plelen%<1 . samp|
000088d0  6c 65 6c 65 6e 25 3d 31  3a 73 74 61 72 74 73 61  |lelen%=1:startsa|
000088e0  6d 70 6c 65 25 3f 30 3d  30 3a 73 74 61 72 74 73  |mple%?0=0:starts|
000088f0  61 6d 70 6c 65 25 3f 31  3d 30 0d 3d 18 0e f2 43  |ample%?1=0.=...C|
00008900  68 65 63 6b 4c 6f 6f 70  0d 3d 22 0e f2 43 68 65  |heckLoop.="..Che|
00008910  63 6b 53 6f 6e 67 0d 3d  2c 0c f2 61 64 6a 70 74  |ckSong.=,..adjpt|
00008920  72 73 0d 3d 36 0c f2 5a  6f 6f 6d 53 65 6c 0d 3d  |rs.=6..ZoomSel.=|
00008930  40 10 f2 4d 6f 64 54 69  74 6c 65 28 30 29 0d 3d  |@..ModTitle(0).=|
00008940  4a 05 e1 0d 3d 54 04 0d  3d 5e 0f dd f2 4d 45 44  |J...=T..=^...MED|
00008950  65 6c 65 74 65 52 0d 3d  68 10 41 25 3d 70 73 65  |eleteR.=h.A%=pse|
00008960  6c 65 63 74 72 25 0d 3d  72 0c f2 67 65 74 77 69  |lectr%.=r..getwi|
00008970  6e 70 0d 3d 7c 11 73 61  6d 70 6c 65 6c 65 6e 25  |np.=|.samplelen%|
00008980  3d 41 25 0d 3d 86 43 e7  20 73 61 6d 70 6c 65 6c  |=A%.=.C. samplel|
00008990  65 6e 25 3c 31 20 8c 20  73 61 6d 70 6c 65 6c 65  |en%<1 . samplele|
000089a0  6e 25 3d 31 3a 73 74 61  72 74 73 61 6d 70 6c 65  |n%=1:startsample|
000089b0  25 3f 30 3d 30 3a 73 74  61 72 74 73 61 6d 70 6c  |%?0=0:startsampl|
000089c0  65 25 3f 31 3d 30 0d 3d  90 0e f2 43 68 65 63 6b  |e%?1=0.=...Check|
000089d0  4c 6f 6f 70 0d 3d 9a 0e  f2 43 68 65 63 6b 53 6f  |Loop.=...CheckSo|
000089e0  6e 67 0d 3d a4 0c f2 61  64 6a 70 74 72 73 0d 3d  |ng.=...adjptrs.=|
000089f0  ae 0c f2 5a 6f 6f 6d 53  65 6c 0d 3d b8 10 f2 4d  |...ZoomSel.=...M|
00008a00  6f 64 54 69 74 6c 65 28  30 29 0d 3d c2 05 e1 0d  |odTitle(0).=....|
00008a10  3d cc 04 0d 3d d6 0f dd  f2 43 68 65 63 6b 4c 6f  |=...=....CheckLo|
00008a20  6f 70 0d 3d e0 1b e7 20  70 6c 6f 6f 70 6c 25 3c  |op.=... ploopl%<|
00008a30  30 20 8c 20 70 6c 6f 6f  70 6c 25 3d 30 0d 3d ea  |0 . ploopl%=0.=.|
00008a40  2d e7 20 70 6c 6f 6f 70  6c 25 3e 73 61 6d 70 6c  |-. ploopl%>sampl|
00008a50  65 6c 65 6e 25 20 8c 20  70 6c 6f 6f 70 6c 25 3d  |elen% . ploopl%=|
00008a60  73 61 6d 70 6c 65 6c 65  6e 25 0d 3d f4 1b e7 20  |samplelen%.=... |
00008a70  70 6c 6f 6f 70 72 25 3c  30 20 8c 20 70 6c 6f 6f  |ploopr%<0 . ploo|
00008a80  70 72 25 3d 30 0d 3d fe  2d e7 20 70 6c 6f 6f 70  |pr%=0.=.-. ploop|
00008a90  72 25 3e 73 61 6d 70 6c  65 6c 65 6e 25 20 8c 20  |r%>samplelen% . |
00008aa0  70 6c 6f 6f 70 72 25 3d  73 61 6d 70 6c 65 6c 65  |ploopr%=samplele|
00008ab0  6e 25 0d 3e 08 27 e7 20  70 6c 6f 6f 70 6c 25 3e  |n%.>.'. ploopl%>|
00008ac0  70 6c 6f 6f 70 72 25 20  8c 20 70 6c 6f 6f 70 72  |ploopr% . ploopr|
00008ad0  25 3d 70 6c 6f 6f 70 6c  25 0d 3e 12 10 f2 55 70  |%=ploopl%.>...Up|
00008ae0  64 61 74 65 53 4c 6f 6f  70 0d 3e 1c 05 e1 0d 3e  |dateSLoop.>....>|
00008af0  26 04 0d 3e 30 0d dd f2  67 65 74 77 69 6e 70 0d  |&..>0...getwinp.|
00008b00  3e 3a 13 74 65 6d 70 25  21 30 3d 77 77 6f 72 6b  |>:.temp%!0=wwork|
00008b10  68 25 0d 3e 44 22 c8 99  22 57 69 6d 70 5f 47 65  |h%.>D".."Wimp_Ge|
00008b20  74 57 69 6e 64 6f 77 53  74 61 74 65 22 2c 2c 74  |tWindowState",,t|
00008b30  65 6d 70 25 0d 3e 4e 15  73 65 6c 65 63 74 6c 25  |emp%.>N.selectl%|
00008b40  3d 74 65 6d 70 25 21 32  30 0d 3e 58 1a 73 65 6c  |=temp%!20.>X.sel|
00008b50  65 63 74 72 25 3d 74 65  6d 70 25 21 32 30 2b 31  |ectr%=temp%!20+1|
00008b60  30 32 32 0d 3e 62 22 70  73 65 6c 65 63 74 6c 25  |022.>b"pselectl%|
00008b70  3d a4 57 6f 72 6b 54 6f  50 74 72 28 73 65 6c 65  |=.WorkToPtr(sele|
00008b80  63 74 6c 25 29 0d 3e 6c  22 70 73 65 6c 65 63 74  |ctl%).>l"pselect|
00008b90  72 25 3d a4 57 6f 72 6b  54 6f 50 74 72 28 73 65  |r%=.WorkToPtr(se|
00008ba0  6c 65 63 74 72 25 29 0d  3e 76 05 e1 0d 3e 80 04  |lectr%).>v...>..|
00008bb0  0d 3e 8a 0d dd f2 61 64  6a 70 74 72 73 0d 3e 94  |.>....adjptrs.>.|
00008bc0  3d e7 20 70 73 65 6c 65  63 74 6c 25 3c 30 20 8c  |=. pselectl%<0 .|
00008bd0  20 70 73 65 6c 65 63 74  72 25 3d 70 73 65 6c 65  | pselectr%=psele|
00008be0  63 74 72 25 2d 70 73 65  6c 65 63 74 6c 25 3a 70  |ctr%-pselectl%:p|
00008bf0  73 65 6c 65 63 74 6c 25  3d 30 0d 3e 9e 5c e7 20  |selectl%=0.>.\. |
00008c00  70 73 65 6c 65 63 74 72  25 3e 73 61 6d 70 6c 65  |pselectr%>sample|
00008c10  6c 65 6e 25 20 8c 20 70  73 65 6c 65 63 74 6c 25  |len% . pselectl%|
00008c20  3d 70 73 65 6c 65 63 74  6c 25 2d 28 70 73 65 6c  |=pselectl%-(psel|
00008c30  65 63 74 72 25 2d 73 61  6d 70 6c 65 6c 65 6e 25  |ectr%-samplelen%|
00008c40  29 3a 70 73 65 6c 65 63  74 72 25 3d 73 61 6d 70  |):pselectr%=samp|
00008c50  6c 65 6c 65 6e 25 0d 3e  a8 1f e7 20 70 73 65 6c  |lelen%.>... psel|
00008c60  65 63 74 6c 25 3c 30 20  8c 20 70 73 65 6c 65 63  |ectl%<0 . pselec|
00008c70  74 6c 25 3d 30 0d 3e b2  31 e7 20 70 73 65 6c 65  |tl%=0.>.1. psele|
00008c80  63 74 72 25 3e 73 61 6d  70 6c 65 6c 65 6e 25 20  |ctr%>samplelen% |
00008c90  8c 20 70 73 65 6c 65 63  74 72 25 3d 73 61 6d 70  |. pselectr%=samp|
00008ca0  6c 65 6c 65 6e 25 0d 3e  bc 22 73 65 6c 65 63 74  |lelen%.>."select|
00008cb0  6c 25 3d a4 50 74 72 54  6f 57 6f 72 6b 28 70 73  |l%=.PtrToWork(ps|
00008cc0  65 6c 65 63 74 6c 25 29  0d 3e c6 22 73 65 6c 65  |electl%).>."sele|
00008cd0  63 74 72 25 3d a4 50 74  72 54 6f 57 6f 72 6b 28  |ctr%=.PtrToWork(|
00008ce0  70 73 65 6c 65 63 74 72  25 29 0d 3e d0 05 e1 0d  |pselectr%).>....|
00008cf0  3e da 04 0d 3e e4 0d dd  f2 4d 53 65 6c 65 63 74  |>...>....MSelect|
00008d00  0d 3e ee 11 6d 25 3d 70  6f 6c 6c 65 64 62 25 21  |.>..m%=polledb%!|
00008d10  34 0d 3e f8 0b c8 8e 20  6d 25 20 ca 0d 3f 02 10  |4.>.... m% ..?..|
00008d20  c9 20 30 3a f2 4d 53 65  6c 41 6c 6c 0d 3f 0c 11  |. 0:.MSelAll.?..|
00008d30  c9 20 31 3a f2 4d 53 65  6c 4c 6f 6f 70 0d 3f 16  |. 1:.MSelLoop.?.|
00008d40  11 c9 20 32 3a f2 4d 53  65 6c 4c 65 66 74 0d 3f  |.. 2:.MSelLeft.?|
00008d50  20 12 c9 20 33 3a f2 4d  53 65 6c 52 69 67 68 74  | .. 3:.MSelRight|
00008d60  0d 3f 2a 13 c9 20 34 3a  f2 4d 53 65 6c 57 69 6e  |.?*.. 4:.MSelWin|
00008d70  64 6f 77 0d 3f 34 15 c9  20 2d 31 2c 35 3a f2 4d  |dow.?4.. -1,5:.M|
00008d80  53 65 6c 43 6c 65 61 72  0d 3f 3e 05 cb 0d 3f 48  |SelClear.?>...?H|
00008d90  05 e1 0d 3f 52 04 0d 3f  5c 0d dd f2 4d 53 65 6c  |...?R..?\...MSel|
00008da0  41 6c 6c 0d 3f 66 0f 70  73 65 6c 65 63 74 6c 25  |All.?f.pselectl%|
00008db0  3d 30 0d 3f 70 18 70 73  65 6c 65 63 74 72 25 3d  |=0.?p.pselectr%=|
00008dc0  73 61 6d 70 6c 65 6c 65  6e 25 0d 3f 7a 22 73 65  |samplelen%.?z"se|
00008dd0  6c 65 63 74 6c 25 3d a4  50 74 72 54 6f 57 6f 72  |lectl%=.PtrToWor|
00008de0  6b 28 70 73 65 6c 65 63  74 6c 25 29 0d 3f 84 22  |k(pselectl%).?."|
00008df0  73 65 6c 65 63 74 72 25  3d a4 50 74 72 54 6f 57  |selectr%=.PtrToW|
00008e00  6f 72 6b 28 70 73 65 6c  65 63 74 72 25 29 0d 3f  |ork(pselectr%).?|
00008e10  8e 11 f2 55 70 64 61 74  65 53 65 6c 65 63 74 0d  |...UpdateSelect.|
00008e20  3f 98 05 e1 0d 3f a2 04  0d 3f ac 0e dd f2 4d 53  |?....?...?....MS|
00008e30  65 6c 4c 65 66 74 0d 3f  b6 17 70 73 65 6c 65 63  |elLeft.?..pselec|
00008e40  74 72 25 3d 70 73 65 6c  65 63 74 6c 25 0d 3f c0  |tr%=pselectl%.?.|
00008e50  0f 70 73 65 6c 65 63 74  6c 25 3d 30 0d 3f ca 22  |.pselectl%=0.?."|
00008e60  73 65 6c 65 63 74 6c 25  3d a4 50 74 72 54 6f 57  |selectl%=.PtrToW|
00008e70  6f 72 6b 28 70 73 65 6c  65 63 74 6c 25 29 0d 3f  |ork(pselectl%).?|
00008e80  d4 22 73 65 6c 65 63 74  72 25 3d a4 50 74 72 54  |."selectr%=.PtrT|
00008e90  6f 57 6f 72 6b 28 70 73  65 6c 65 63 74 72 25 29  |oWork(pselectr%)|
00008ea0  0d 3f de 11 f2 55 70 64  61 74 65 53 65 6c 65 63  |.?...UpdateSelec|
00008eb0  74 0d 3f e8 05 e1 0d 3f  f2 04 0d 3f fc 0f dd f2  |t.?....?...?....|
00008ec0  4d 53 65 6c 52 69 67 68  74 0d 40 06 17 70 73 65  |MSelRight.@..pse|
00008ed0  6c 65 63 74 6c 25 3d 70  73 65 6c 65 63 74 72 25  |lectl%=pselectr%|
00008ee0  0d 40 10 18 70 73 65 6c  65 63 74 72 25 3d 73 61  |.@..pselectr%=sa|
00008ef0  6d 70 6c 65 6c 65 6e 25  0d 40 1a 22 73 65 6c 65  |mplelen%.@."sele|
00008f00  63 74 6c 25 3d a4 50 74  72 54 6f 57 6f 72 6b 28  |ctl%=.PtrToWork(|
00008f10  70 73 65 6c 65 63 74 6c  25 29 0d 40 24 22 73 65  |pselectl%).@$"se|
00008f20  6c 65 63 74 72 25 3d a4  50 74 72 54 6f 57 6f 72  |lectr%=.PtrToWor|
00008f30  6b 28 70 73 65 6c 65 63  74 72 25 29 0d 40 2e 11  |k(pselectr%).@..|
00008f40  f2 55 70 64 61 74 65 53  65 6c 65 63 74 0d 40 38  |.UpdateSelect.@8|
00008f50  05 e1 0d 40 42 04 0d 40  4c 10 dd f2 4d 53 65 6c  |...@B..@L...MSel|
00008f60  57 69 6e 64 6f 77 0d 40  56 13 74 65 6d 70 25 21  |Window.@V.temp%!|
00008f70  30 3d 77 77 6f 72 6b 68  25 0d 40 60 22 c8 99 22  |0=wworkh%.@`".."|
00008f80  57 69 6d 70 5f 47 65 74  57 69 6e 64 6f 77 53 74  |Wimp_GetWindowSt|
00008f90  61 74 65 22 2c 2c 74 65  6d 70 25 0d 40 6a 15 73  |ate",,temp%.@j.s|
00008fa0  65 6c 65 63 74 6c 25 3d  74 65 6d 70 25 21 32 30  |electl%=temp%!20|
00008fb0  0d 40 74 1a 73 65 6c 65  63 74 72 25 3d 74 65 6d  |.@t.selectr%=tem|
00008fc0  70 25 21 32 30 2b 31 30  32 32 0d 40 7e 22 70 73  |p%!20+1022.@~"ps|
00008fd0  65 6c 65 63 74 6c 25 3d  a4 57 6f 72 6b 54 6f 50  |electl%=.WorkToP|
00008fe0  74 72 28 73 65 6c 65 63  74 6c 25 29 0d 40 88 22  |tr(selectl%).@."|
00008ff0  70 73 65 6c 65 63 74 72  25 3d a4 57 6f 72 6b 54  |pselectr%=.WorkT|
00009000  6f 50 74 72 28 73 65 6c  65 63 74 72 25 29 0d 40  |oPtr(selectr%).@|
00009010  92 22 73 65 6c 65 63 74  6c 25 3d a4 50 74 72 54  |."selectl%=.PtrT|
00009020  6f 57 6f 72 6b 28 70 73  65 6c 65 63 74 6c 25 29  |oWork(pselectl%)|
00009030  0d 40 9c 22 73 65 6c 65  63 74 72 25 3d a4 50 74  |.@."selectr%=.Pt|
00009040  72 54 6f 57 6f 72 6b 28  70 73 65 6c 65 63 74 72  |rToWork(pselectr|
00009050  25 29 0d 40 a6 11 f2 55  70 64 61 74 65 53 65 6c  |%).@...UpdateSel|
00009060  65 63 74 0d 40 b0 05 e1  0d 40 ba 04 0d 40 c4 0e  |ect.@....@...@..|
00009070  dd f2 4d 53 65 6c 4c 6f  6f 70 0d 40 ce 15 70 73  |..MSelLoop.@..ps|
00009080  65 6c 65 63 74 6c 25 3d  70 6c 6f 6f 70 6c 25 0d  |electl%=ploopl%.|
00009090  40 d8 15 70 73 65 6c 65  63 74 72 25 3d 70 6c 6f  |@..pselectr%=plo|
000090a0  6f 70 72 25 0d 40 e2 22  73 65 6c 65 63 74 6c 25  |opr%.@."selectl%|
000090b0  3d a4 50 74 72 54 6f 57  6f 72 6b 28 70 73 65 6c  |=.PtrToWork(psel|
000090c0  65 63 74 6c 25 29 0d 40  ec 22 73 65 6c 65 63 74  |ectl%).@."select|
000090d0  72 25 3d a4 50 74 72 54  6f 57 6f 72 6b 28 70 73  |r%=.PtrToWork(ps|
000090e0  65 6c 65 63 74 72 25 29  0d 40 f6 11 f2 55 70 64  |electr%).@...Upd|
000090f0  61 74 65 53 65 6c 65 63  74 0d 41 00 05 e1 0d 41  |ateSelect.A....A|
00009100  0a 04 0d 41 14 0f dd f2  4d 53 65 6c 43 6c 65 61  |...A....MSelClea|
00009110  72 0d 41 1e 1b 73 65 6c  65 63 74 6c 25 3d 2d 31  |r.A..selectl%=-1|
00009120  3a 73 65 6c 65 63 74 72  25 3d 2d 31 0d 41 28 1d  |:selectr%=-1.A(.|
00009130  70 73 65 6c 65 63 74 6c  25 3d 2d 31 3a 70 73 65  |pselectl%=-1:pse|
00009140  6c 65 63 74 72 25 3d 2d  31 0d 41 32 11 f2 55 70  |lectr%=-1.A2..Up|
00009150  64 61 74 65 53 65 6c 65  63 74 0d 41 3c 05 e1 0d  |dateSelect.A<...|
00009160  41 46 04 0d 41 50 0b dd  f2 4d 5a 6f 6f 6d 0d 41  |AF..AP...MZoom.A|
00009170  5a 11 6d 25 3d 70 6f 6c  6c 65 64 62 25 21 34 0d  |Z.m%=polledb%!4.|
00009180  41 64 0b c8 8e 20 6d 25  20 ca 0d 41 6e 10 c9 20  |Ad... m% ..An.. |
00009190  30 3a f2 5a 6f 6f 6d 41  6c 6c 0d 41 78 10 c9 20  |0:.ZoomAll.Ax.. |
000091a0  31 3a f2 5a 6f 6f 6d 4f  75 74 0d 41 82 11 c9 20  |1:.ZoomOut.A... |
000091b0  32 3a f2 5a 6f 6f 6d 4c  6f 6f 70 0d 41 8c 13 c9  |2:.ZoomLoop.A...|
000091c0  20 2d 31 2c 33 3a f2 5a  6f 6f 6d 53 65 6c 0d 41  | -1,3:.ZoomSel.A|
000091d0  96 12 c9 20 34 3a f2 5a  6f 6f 6d 53 74 6f 72 65  |... 4:.ZoomStore|
000091e0  0d 41 a0 14 c9 20 35 3a  f2 5a 6f 6f 6d 52 65 73  |.A... 5:.ZoomRes|
000091f0  74 6f 72 65 0d 41 aa 05  cb 0d 41 b4 05 e1 0d 41  |tore.A....A....A|
00009200  be 04 0d 41 c8 0d dd f2  5a 6f 6f 6d 41 6c 6c 0d  |...A....ZoomAll.|
00009210  41 d2 16 70 6f 6c 6c 65  64 62 25 21 30 3d 77 77  |A..polledb%!0=ww|
00009220  6f 72 6b 68 25 0d 41 dc  25 c8 99 22 57 69 6d 70  |orkh%.A.%.."Wimp|
00009230  5f 47 65 74 57 69 6e 64  6f 77 53 74 61 74 65 22  |_GetWindowState"|
00009240  2c 2c 70 6f 6c 6c 65 64  62 25 0d 41 e6 11 70 6f  |,,polledb%.A..po|
00009250  6c 6c 65 64 62 25 21 32  30 3d 30 0d 41 f0 21 c8  |lledb%!20=0.A.!.|
00009260  99 22 57 69 6d 70 5f 4f  70 65 6e 57 69 6e 64 6f  |."Wimp_OpenWindo|
00009270  77 22 2c 2c 70 6f 6c 6c  65 64 62 25 0d 41 fa 17  |w",,polledb%.A..|
00009280  64 69 73 70 6c 65 6e 25  3d 73 61 6d 70 6c 65 6c  |displen%=samplel|
00009290  65 6e 25 0d 42 04 0e f2  53 65 74 45 78 74 65 6e  |en%.B...SetExten|
000092a0  74 0d 42 0e 22 73 65 6c  65 63 74 6c 25 3d a4 50  |t.B."selectl%=.P|
000092b0  74 72 54 6f 57 6f 72 6b  28 70 73 65 6c 65 63 74  |trToWork(pselect|
000092c0  6c 25 29 0d 42 18 22 73  65 6c 65 63 74 72 25 3d  |l%).B."selectr%=|
000092d0  a4 50 74 72 54 6f 57 6f  72 6b 28 70 73 65 6c 65  |.PtrToWork(psele|
000092e0  63 74 72 25 29 0d 42 22  1e 6c 6f 6f 70 6c 25 3d  |ctr%).B".loopl%=|
000092f0  a4 50 74 72 54 6f 57 6f  72 6b 28 70 6c 6f 6f 70  |.PtrToWork(ploop|
00009300  6c 25 29 0d 42 2c 1e 6c  6f 6f 70 72 25 3d a4 50  |l%).B,.loopr%=.P|
00009310  74 72 54 6f 57 6f 72 6b  28 70 6c 6f 6f 70 72 25  |trToWork(ploopr%|
00009320  29 0d 42 36 21 6f 6c 6f  6f 70 6c 25 3d 6c 6f 6f  |).B6!oloopl%=loo|
00009330  70 6c 25 3a 6f 6c 6f 6f  70 72 25 3d 6c 6f 6f 70  |pl%:oloopr%=loop|
00009340  72 25 0d 42 40 29 6f 73  65 6c 65 63 74 6c 25 3d  |r%.B@)oselectl%=|
00009350  73 65 6c 65 63 74 6c 25  3a 6f 73 65 6c 65 63 74  |selectl%:oselect|
00009360  72 25 3d 73 65 6c 65 63  74 72 25 0d 42 4a 0b f2  |r%=selectr%.BJ..|
00009370  52 64 57 6f 72 6b 0d 42  54 05 e1 0d 42 5e 04 0d  |RdWork.BT...B^..|
00009380  42 68 0d dd f2 5a 6f 6f  6d 4f 75 74 0d 42 72 23  |Bh...ZoomOut.Br#|
00009390  6f 70 73 6c 25 3d 70 73  65 6c 65 63 74 6c 25 3a  |opsl%=pselectl%:|
000093a0  6f 70 73 72 25 3d 70 73  65 6c 65 63 74 72 25 0d  |opsr%=pselectr%.|
000093b0  42 7c 16 70 6f 6c 6c 65  64 62 25 21 30 3d 77 77  |B|.polledb%!0=ww|
000093c0  6f 72 6b 68 25 0d 42 86  25 c8 99 22 57 69 6d 70  |orkh%.B.%.."Wimp|
000093d0  5f 47 65 74 57 69 6e 64  6f 77 53 74 61 74 65 22  |_GetWindowState"|
000093e0  2c 2c 70 6f 6c 6c 65 64  62 25 0d 42 90 18 73 65  |,,polledb%.B..se|
000093f0  6c 65 63 74 6c 25 3d 70  6f 6c 6c 65 64 62 25 21  |lectl%=polledb%!|
00009400  32 30 0d 42 9a 1d 73 65  6c 65 63 74 72 25 3d 70  |20.B..selectr%=p|
00009410  6f 6c 6c 65 64 62 25 21  32 30 2b 31 30 32 32 0d  |olledb%!20+1022.|
00009420  42 a4 22 70 73 65 6c 65  63 74 6c 25 3d a4 57 6f  |B."pselectl%=.Wo|
00009430  72 6b 54 6f 50 74 72 28  73 65 6c 65 63 74 6c 25  |rkToPtr(selectl%|
00009440  29 0d 42 ae 22 70 73 65  6c 65 63 74 72 25 3d a4  |).B."pselectr%=.|
00009450  57 6f 72 6b 54 6f 50 74  72 28 73 65 6c 65 63 74  |WorkToPtr(select|
00009460  72 25 29 0d 42 b8 1b 73  77 25 3d 70 73 65 6c 65  |r%).B..sw%=psele|
00009470  63 74 72 25 2d 70 73 65  6c 65 63 74 6c 25 0d 42  |ctr%-pselectl%.B|
00009480  c2 1b 70 73 65 6c 65 63  74 6c 25 3d 70 73 65 6c  |..pselectl%=psel|
00009490  65 63 74 6c 25 2d 73 77  25 0d 42 cc 1b 70 73 65  |ectl%-sw%.B..pse|
000094a0  6c 65 63 74 72 25 3d 70  73 65 6c 65 63 74 72 25  |lectr%=pselectr%|
000094b0  2b 73 77 25 0d 42 d6 3d  e7 20 70 73 65 6c 65 63  |+sw%.B.=. pselec|
000094c0  74 6c 25 3c 30 20 8c 20  70 73 65 6c 65 63 74 72  |tl%<0 . pselectr|
000094d0  25 3d 70 73 65 6c 65 63  74 72 25 2d 70 73 65 6c  |%=pselectr%-psel|
000094e0  65 63 74 6c 25 3a 70 73  65 6c 65 63 74 6c 25 3d  |ectl%:pselectl%=|
000094f0  30 0d 42 e0 5c e7 20 70  73 65 6c 65 63 74 72 25  |0.B.\. pselectr%|
00009500  3e 73 61 6d 70 6c 65 6c  65 6e 25 20 8c 20 70 73  |>samplelen% . ps|
00009510  65 6c 65 63 74 6c 25 3d  70 73 65 6c 65 63 74 6c  |electl%=pselectl|
00009520  25 2d 28 70 73 65 6c 65  63 74 72 25 2d 73 61 6d  |%-(pselectr%-sam|
00009530  70 6c 65 6c 65 6e 25 29  3a 70 73 65 6c 65 63 74  |plelen%):pselect|
00009540  72 25 3d 73 61 6d 70 6c  65 6c 65 6e 25 0d 42 ea  |r%=samplelen%.B.|
00009550  1f e7 20 70 73 65 6c 65  63 74 6c 25 3c 30 20 8c  |.. pselectl%<0 .|
00009560  20 70 73 65 6c 65 63 74  6c 25 3d 30 0d 42 f4 31  | pselectl%=0.B.1|
00009570  e7 20 70 73 65 6c 65 63  74 72 25 3e 73 61 6d 70  |. pselectr%>samp|
00009580  6c 65 6c 65 6e 25 20 8c  20 70 73 65 6c 65 63 74  |lelen% . pselect|
00009590  72 25 3d 73 61 6d 70 6c  65 6c 65 6e 25 0d 42 fe  |r%=samplelen%.B.|
000095a0  22 73 65 6c 65 63 74 6c  25 3d a4 50 74 72 54 6f  |"selectl%=.PtrTo|
000095b0  57 6f 72 6b 28 70 73 65  6c 65 63 74 6c 25 29 0d  |Work(pselectl%).|
000095c0  43 08 22 73 65 6c 65 63  74 72 25 3d a4 50 74 72  |C."selectr%=.Ptr|
000095d0  54 6f 57 6f 72 6b 28 70  73 65 6c 65 63 74 72 25  |ToWork(pselectr%|
000095e0  29 0d 43 12 1e 6c 6f 6f  70 6c 25 3d a4 50 74 72  |).C..loopl%=.Ptr|
000095f0  54 6f 57 6f 72 6b 28 70  6c 6f 6f 70 6c 25 29 0d  |ToWork(ploopl%).|
00009600  43 1c 1e 6c 6f 6f 70 72  25 3d a4 50 74 72 54 6f  |C..loopr%=.PtrTo|
00009610  57 6f 72 6b 28 70 6c 6f  6f 70 72 25 29 0d 43 26  |Work(ploopr%).C&|
00009620  21 6f 6c 6f 6f 70 6c 25  3d 6c 6f 6f 70 6c 25 3a  |!oloopl%=loopl%:|
00009630  6f 6c 6f 6f 70 72 25 3d  6c 6f 6f 70 72 25 0d 43  |oloopr%=loopr%.C|
00009640  30 0c f2 5a 6f 6f 6d 53  65 6c 0d 43 3a 23 70 73  |0..ZoomSel.C:#ps|
00009650  65 6c 65 63 74 6c 25 3d  6f 70 73 6c 25 3a 70 73  |electl%=opsl%:ps|
00009660  65 6c 65 63 74 72 25 3d  6f 70 73 72 25 0d 43 44  |electr%=opsr%.CD|
00009670  22 73 65 6c 65 63 74 6c  25 3d a4 50 74 72 54 6f  |"selectl%=.PtrTo|
00009680  57 6f 72 6b 28 70 73 65  6c 65 63 74 6c 25 29 0d  |Work(pselectl%).|
00009690  43 4e 22 73 65 6c 65 63  74 72 25 3d a4 50 74 72  |CN"selectr%=.Ptr|
000096a0  54 6f 57 6f 72 6b 28 70  73 65 6c 65 63 74 72 25  |ToWork(pselectr%|
000096b0  29 0d 43 58 11 f2 55 70  64 61 74 65 53 65 6c 65  |).CX..UpdateSele|
000096c0  63 74 0d 43 62 05 e1 0d  43 6c 04 0d 43 76 0e dd  |ct.Cb...Cl..Cv..|
000096d0  f2 5a 6f 6f 6d 4c 6f 6f  70 0d 43 80 13 6f 70 73  |.ZoomLoop.C..ops|
000096e0  6c 25 3d 70 73 65 6c 65  63 74 6c 25 0d 43 8a 13  |l%=pselectl%.C..|
000096f0  6f 70 73 72 25 3d 70 73  65 6c 65 63 74 72 25 0d  |opsr%=pselectr%.|
00009700  43 94 15 70 73 65 6c 65  63 74 6c 25 3d 70 6c 6f  |C..pselectl%=plo|
00009710  6f 70 6c 25 0d 43 9e 15  70 73 65 6c 65 63 74 72  |opl%.C..pselectr|
00009720  25 3d 70 6c 6f 6f 70 72  25 0d 43 a8 22 73 65 6c  |%=ploopr%.C."sel|
00009730  65 63 74 6c 25 3d a4 50  74 72 54 6f 57 6f 72 6b  |ectl%=.PtrToWork|
00009740  28 70 73 65 6c 65 63 74  6c 25 29 0d 43 b2 22 73  |(pselectl%).C."s|
00009750  65 6c 65 63 74 72 25 3d  a4 50 74 72 54 6f 57 6f  |electr%=.PtrToWo|
00009760  72 6b 28 70 73 65 6c 65  63 74 72 25 29 0d 43 bc  |rk(pselectr%).C.|
00009770  0c f2 5a 6f 6f 6d 53 65  6c 0d 43 c6 13 70 73 65  |..ZoomSel.C..pse|
00009780  6c 65 63 74 6c 25 3d 6f  70 73 6c 25 0d 43 d0 13  |lectl%=opsl%.C..|
00009790  70 73 65 6c 65 63 74 72  25 3d 6f 70 73 72 25 0d  |pselectr%=opsr%.|
000097a0  43 da 22 73 65 6c 65 63  74 6c 25 3d a4 50 74 72  |C."selectl%=.Ptr|
000097b0  54 6f 57 6f 72 6b 28 70  73 65 6c 65 63 74 6c 25  |ToWork(pselectl%|
000097c0  29 0d 43 e4 22 73 65 6c  65 63 74 72 25 3d a4 50  |).C."selectr%=.P|
000097d0  74 72 54 6f 57 6f 72 6b  28 70 73 65 6c 65 63 74  |trToWork(pselect|
000097e0  72 25 29 0d 43 ee 11 f2  55 70 64 61 74 65 53 65  |r%).C...UpdateSe|
000097f0  6c 65 63 74 0d 43 f8 05  e1 0d 44 02 04 0d 44 0c  |lect.C....D...D.|
00009800  0d dd f2 5a 6f 6f 6d 53  65 6c 0d 44 16 25 e7 20  |...ZoomSel.D.%. |
00009810  70 73 65 6c 65 63 74 6c  25 3c 3e 2d 31 20 80 20  |pselectl%<>-1 . |
00009820  70 73 65 6c 65 63 74 72  25 3c 3e 2d 31 20 8c 0d  |pselectr%<>-1 ..|
00009830  44 20 20 64 69 73 70 6c  65 6e 25 3d 70 73 65 6c  |D  displen%=psel|
00009840  65 63 74 72 25 2d 70 73  65 6c 65 63 74 6c 25 0d  |ectr%-pselectl%.|
00009850  44 2a 1d e7 20 64 69 73  70 6c 65 6e 25 3c 31 20  |D*.. displen%<1 |
00009860  8c 20 64 69 73 70 6c 65  6e 25 3d 31 0d 44 34 1f  |. displen%=1.D4.|
00009870  64 69 73 70 73 74 3d 70  73 65 6c 65 63 74 6c 25  |dispst=pselectl%|
00009880  2f 73 61 6d 70 6c 65 6c  65 6e 25 0d 44 3e 16 70  |/samplelen%.D>.p|
00009890  6f 6c 6c 65 64 62 25 21  30 3d 77 77 6f 72 6b 68  |olledb%!0=wworkh|
000098a0  25 0d 44 48 25 c8 99 22  57 69 6d 70 5f 47 65 74  |%.DH%.."Wimp_Get|
000098b0  57 69 6e 64 6f 77 53 74  61 74 65 22 2c 2c 70 6f  |WindowState",,po|
000098c0  6c 6c 65 64 62 25 0d 44  52 11 70 6f 6c 6c 65 64  |lledb%.DR.polled|
000098d0  62 25 21 32 30 3d 30 0d  44 5c 21 c8 99 22 57 69  |b%!20=0.D\!.."Wi|
000098e0  6d 70 5f 4f 70 65 6e 57  69 6e 64 6f 77 22 2c 2c  |mp_OpenWindow",,|
000098f0  70 6f 6c 6c 65 64 62 25  0d 44 66 0e f2 53 65 74  |polledb%.Df..Set|
00009900  45 78 74 65 6e 74 0d 44  70 1c 70 6f 6c 6c 65 64  |Extent.Dp.polled|
00009910  62 25 21 32 30 3d 64 69  73 70 73 74 2a 6d 61 78  |b%!20=dispst*max|
00009920  78 25 0d 44 7a 21 c8 99  22 57 69 6d 70 5f 4f 70  |x%.Dz!.."Wimp_Op|
00009930  65 6e 57 69 6e 64 6f 77  22 2c 2c 70 6f 6c 6c 65  |enWindow",,polle|
00009940  64 62 25 0d 44 84 35 73  65 6c 65 63 74 6c 25 3d  |db%.D.5selectl%=|
00009950  2d 31 3a 73 65 6c 65 63  74 72 25 3d 2d 31 3a 6f  |-1:selectr%=-1:o|
00009960  73 65 6c 65 63 74 6c 25  3d 2d 31 3a 6f 73 65 6c  |selectl%=-1:osel|
00009970  65 63 74 72 25 3d 2d 31  0d 44 8e 1d 70 73 65 6c  |ectr%=-1.D..psel|
00009980  65 63 74 6c 25 3d 2d 31  3a 70 73 65 6c 65 63 74  |ectl%=-1:pselect|
00009990  72 25 3d 2d 31 0d 44 98  1e 6c 6f 6f 70 6c 25 3d  |r%=-1.D..loopl%=|
000099a0  a4 50 74 72 54 6f 57 6f  72 6b 28 70 6c 6f 6f 70  |.PtrToWork(ploop|
000099b0  6c 25 29 0d 44 a2 1e 6c  6f 6f 70 72 25 3d a4 50  |l%).D..loopr%=.P|
000099c0  74 72 54 6f 57 6f 72 6b  28 70 6c 6f 6f 70 72 25  |trToWork(ploopr%|
000099d0  29 0d 44 ac 21 6f 6c 6f  6f 70 6c 25 3d 6c 6f 6f  |).D.!oloopl%=loo|
000099e0  70 6c 25 3a 6f 6c 6f 6f  70 72 25 3d 6c 6f 6f 70  |pl%:oloopr%=loop|
000099f0  72 25 0d 44 b6 0b f2 52  64 57 6f 72 6b 0d 44 c0  |r%.D...RdWork.D.|
00009a00  05 cd 0d 44 ca 05 e1 0d  44 d4 04 0d 44 de 0f dd  |...D....D...D...|
00009a10  f2 5a 6f 6f 6d 53 74 6f  72 65 0d 44 e8 13 74 65  |.ZoomStore.D..te|
00009a20  6d 70 25 21 30 3d 77 77  6f 72 6b 68 25 0d 44 f2  |mp%!0=wworkh%.D.|
00009a30  22 c8 99 22 57 69 6d 70  5f 47 65 74 57 69 6e 64  |".."Wimp_GetWind|
00009a40  6f 77 53 74 61 74 65 22  2c 2c 74 65 6d 70 25 0d  |owState",,temp%.|
00009a50  44 fc 14 7a 6f 6f 6d 73  6c 25 3d 74 65 6d 70 25  |D..zoomsl%=temp%|
00009a60  21 32 30 0d 45 06 19 7a  6f 6f 6d 73 72 25 3d 74  |!20.E..zoomsr%=t|
00009a70  65 6d 70 25 21 32 30 2b  31 30 32 34 0d 45 10 1f  |emp%!20+1024.E..|
00009a80  7a 6f 6f 6d 73 6c 25 3d  a4 57 6f 72 6b 54 6f 50  |zoomsl%=.WorkToP|
00009a90  74 72 28 7a 6f 6f 6d 73  6c 25 29 0d 45 1a 1f 7a  |tr(zoomsl%).E..z|
00009aa0  6f 6f 6d 73 72 25 3d a4  57 6f 72 6b 54 6f 50 74  |oomsr%=.WorkToPt|
00009ab0  72 28 7a 6f 6f 6d 73 72  25 29 0d 45 24 05 e1 0d  |r(zoomsr%).E$...|
00009ac0  45 2e 04 0d 45 38 11 dd  f2 5a 6f 6f 6d 52 65 73  |E...E8...ZoomRes|
00009ad0  74 6f 72 65 0d 45 42 23  6f 70 73 6c 25 3d 70 73  |tore.EB#opsl%=ps|
00009ae0  65 6c 65 63 74 6c 25 3a  6f 70 73 72 25 3d 70 73  |electl%:opsr%=ps|
00009af0  65 6c 65 63 74 72 25 0d  45 4c 15 70 73 65 6c 65  |electr%.EL.psele|
00009b00  63 74 6c 25 3d 7a 6f 6f  6d 73 6c 25 0d 45 56 15  |ctl%=zoomsl%.EV.|
00009b10  70 73 65 6c 65 63 74 72  25 3d 7a 6f 6f 6d 73 72  |pselectr%=zoomsr|
00009b20  25 0d 45 60 1f e7 20 70  73 65 6c 65 63 74 6c 25  |%.E`.. pselectl%|
00009b30  3c 30 20 8c 20 70 73 65  6c 65 63 74 6c 25 3d 30  |<0 . pselectl%=0|
00009b40  0d 45 6a 1f e7 20 70 73  65 6c 65 63 74 72 25 3c  |.Ej.. pselectr%<|
00009b50  30 20 8c 20 70 73 65 6c  65 63 74 72 25 3d 30 0d  |0 . pselectr%=0.|
00009b60  45 74 31 e7 20 70 73 65  6c 65 63 74 6c 25 3e 73  |Et1. pselectl%>s|
00009b70  61 6d 70 6c 65 6c 65 6e  25 20 8c 20 70 73 65 6c  |amplelen% . psel|
00009b80  65 63 74 6c 25 3d 73 61  6d 70 6c 65 6c 65 6e 25  |ectl%=samplelen%|
00009b90  0d 45 7e 31 e7 20 70 73  65 6c 65 63 74 72 25 3e  |.E~1. pselectr%>|
00009ba0  73 61 6d 70 6c 65 6c 65  6e 25 20 8c 20 70 73 65  |samplelen% . pse|
00009bb0  6c 65 63 74 72 25 3d 73  61 6d 70 6c 65 6c 65 6e  |lectr%=samplelen|
00009bc0  25 0d 45 88 0c f2 5a 6f  6f 6d 53 65 6c 0d 45 92  |%.E...ZoomSel.E.|
00009bd0  23 70 73 65 6c 65 63 74  6c 25 3d 6f 70 73 6c 25  |#pselectl%=opsl%|
00009be0  3a 70 73 65 6c 65 63 74  72 25 3d 6f 70 73 72 25  |:pselectr%=opsr%|
00009bf0  0d 45 9c 22 73 65 6c 65  63 74 6c 25 3d a4 50 74  |.E."selectl%=.Pt|
00009c00  72 54 6f 57 6f 72 6b 28  70 73 65 6c 65 63 74 6c  |rToWork(pselectl|
00009c10  25 29 0d 45 a6 22 73 65  6c 65 63 74 72 25 3d a4  |%).E."selectr%=.|
00009c20  50 74 72 54 6f 57 6f 72  6b 28 70 73 65 6c 65 63  |PtrToWork(pselec|
00009c30  74 72 25 29 0d 45 b0 11  f2 55 70 64 61 74 65 53  |tr%).E...UpdateS|
00009c40  65 6c 65 63 74 0d 45 ba  05 e1 0d 45 c4 04 0d 45  |elect.E....E...E|
00009c50  ce 0b dd f2 4d 4c 6f 6f  70 0d 45 d8 11 6d 25 3d  |....MLoop.E..m%=|
00009c60  70 6f 6c 6c 65 64 62 25  21 34 0d 45 e2 0b c8 8e  |polledb%!4.E....|
00009c70  20 6d 25 20 ca 0d 45 ec  10 c9 20 30 3a f2 4c 6f  | m% ..E... 0:.Lo|
00009c80  6f 70 41 6c 6c 0d 45 f6  13 c9 20 31 3a f2 4c 6f  |opAll.E... 1:.Lo|
00009c90  6f 70 57 69 6e 64 6f 77  0d 46 00 10 c9 20 32 3a  |opWindow.F... 2:|
00009ca0  f2 4c 6f 6f 70 53 65 6c  0d 46 0a 11 c9 20 33 3a  |.LoopSel.F... 3:|
00009cb0  f2 4c 6f 6f 70 48 61 6c  66 0d 46 14 13 c9 20 34  |.LoopHalf.F... 4|
00009cc0  3a f2 4c 6f 6f 70 44 6f  75 62 6c 65 0d 46 1e 12  |:.LoopDouble.F..|
00009cd0  c9 20 35 3a f2 4c 6f 6f  70 53 74 6f 72 65 0d 46  |. 5:.LoopStore.F|
00009ce0  28 14 c9 20 36 3a f2 4c  6f 6f 70 52 65 73 74 6f  |(.. 6:.LoopResto|
00009cf0  72 65 0d 46 32 05 cb 0d  46 3c 05 e1 0d 46 46 04  |re.F2...F<...FF.|
00009d00  0d 46 50 0d dd f2 4c 6f  6f 70 41 6c 6c 0d 46 5a  |.FP...LoopAll.FZ|
00009d10  0d 70 6c 6f 6f 70 6c 25  3d 30 0d 46 64 16 70 6c  |.ploopl%=0.Fd.pl|
00009d20  6f 6f 70 72 25 3d 73 61  6d 70 6c 65 6c 65 6e 25  |oopr%=samplelen%|
00009d30  0d 46 6e 1e 6c 6f 6f 70  6c 25 3d a4 50 74 72 54  |.Fn.loopl%=.PtrT|
00009d40  6f 57 6f 72 6b 28 70 6c  6f 6f 70 6c 25 29 0d 46  |oWork(ploopl%).F|
00009d50  78 1e 6c 6f 6f 70 72 25  3d a4 50 74 72 54 6f 57  |x.loopr%=.PtrToW|
00009d60  6f 72 6b 28 70 6c 6f 6f  70 72 25 29 0d 46 82 10  |ork(ploopr%).F..|
00009d70  f2 55 70 64 61 74 65 4c  6f 6f 70 50 0d 46 8c 05  |.UpdateLoopP.F..|
00009d80  e1 0d 46 96 04 0d 46 a0  10 dd f2 4c 6f 6f 70 57  |..F...F....LoopW|
00009d90  69 6e 64 6f 77 0d 46 aa  13 6f 70 73 6c 25 3d 70  |indow.F..opsl%=p|
00009da0  73 65 6c 65 63 74 6c 25  0d 46 b4 13 6f 70 73 72  |selectl%.F..opsr|
00009db0  25 3d 70 73 65 6c 65 63  74 72 25 0d 46 be 0c f2  |%=pselectr%.F...|
00009dc0  67 65 74 77 69 6e 70 0d  46 c8 0c f2 4c 6f 6f 70  |getwinp.F...Loop|
00009dd0  53 65 6c 0d 46 d2 13 70  73 65 6c 65 63 74 6c 25  |Sel.F..pselectl%|
00009de0  3d 6f 70 73 6c 25 0d 46  dc 13 70 73 65 6c 65 63  |=opsl%.F..pselec|
00009df0  74 72 25 3d 6f 70 73 72  25 0d 46 e6 22 73 65 6c  |tr%=opsr%.F."sel|
00009e00  65 63 74 6c 25 3d a4 50  74 72 54 6f 57 6f 72 6b  |ectl%=.PtrToWork|
00009e10  28 70 73 65 6c 65 63 74  6c 25 29 0d 46 f0 22 73  |(pselectl%).F."s|
00009e20  65 6c 65 63 74 72 25 3d  a4 50 74 72 54 6f 57 6f  |electr%=.PtrToWo|
00009e30  72 6b 28 70 73 65 6c 65  63 74 72 25 29 0d 46 fa  |rk(pselectr%).F.|
00009e40  11 f2 55 70 64 61 74 65  53 65 6c 65 63 74 0d 47  |..UpdateSelect.G|
00009e50  04 05 e1 0d 47 0e 04 0d  47 18 0d dd f2 4c 6f 6f  |....G...G....Loo|
00009e60  70 53 65 6c 0d 47 22 25  e7 20 70 73 65 6c 65 63  |pSel.G"%. pselec|
00009e70  74 6c 25 3c 3e 2d 31 20  80 20 70 73 65 6c 65 63  |tl%<>-1 . pselec|
00009e80  74 72 25 3c 3e 2d 31 20  8c 0d 47 2c 15 70 6c 6f  |tr%<>-1 ..G,.plo|
00009e90  6f 70 6c 25 3d 70 73 65  6c 65 63 74 6c 25 0d 47  |opl%=pselectl%.G|
00009ea0  36 15 70 6c 6f 6f 70 72  25 3d 70 73 65 6c 65 63  |6.ploopr%=pselec|
00009eb0  74 72 25 0d 47 40 1e 6c  6f 6f 70 6c 25 3d a4 50  |tr%.G@.loopl%=.P|
00009ec0  74 72 54 6f 57 6f 72 6b  28 70 6c 6f 6f 70 6c 25  |trToWork(ploopl%|
00009ed0  29 0d 47 4a 1e 6c 6f 6f  70 72 25 3d a4 50 74 72  |).GJ.loopr%=.Ptr|
00009ee0  54 6f 57 6f 72 6b 28 70  6c 6f 6f 70 72 25 29 0d  |ToWork(ploopr%).|
00009ef0  47 54 10 f2 55 70 64 61  74 65 4c 6f 6f 70 50 0d  |GT..UpdateLoopP.|
00009f00  47 5e 05 cd 0d 47 68 05  e1 0d 47 72 04 0d 47 7c  |G^...Gh...Gr..G||
00009f10  0e dd f2 4c 6f 6f 70 48  61 6c 66 0d 47 86 27 70  |...LoopHalf.G.'p|
00009f20  6c 6f 6f 70 72 25 3d 70  6c 6f 6f 70 6c 25 2b 28  |loopr%=ploopl%+(|
00009f30  70 6c 6f 6f 70 72 25 2d  70 6c 6f 6f 70 6c 25 29  |ploopr%-ploopl%)|
00009f40  2f 32 0d 47 90 1e 6c 6f  6f 70 6c 25 3d a4 50 74  |/2.G..loopl%=.Pt|
00009f50  72 54 6f 57 6f 72 6b 28  70 6c 6f 6f 70 6c 25 29  |rToWork(ploopl%)|
00009f60  0d 47 9a 1e 6c 6f 6f 70  72 25 3d a4 50 74 72 54  |.G..loopr%=.PtrT|
00009f70  6f 57 6f 72 6b 28 70 6c  6f 6f 70 72 25 29 0d 47  |oWork(ploopr%).G|
00009f80  a4 10 f2 55 70 64 61 74  65 4c 6f 6f 70 50 0d 47  |...UpdateLoopP.G|
00009f90  ae 05 e1 0d 47 b8 04 0d  47 c2 10 dd f2 4c 6f 6f  |....G...G....Loo|
00009fa0  70 44 6f 75 62 6c 65 0d  47 cc 27 70 6c 6f 6f 70  |pDouble.G.'ploop|
00009fb0  72 25 3d 70 6c 6f 6f 70  6c 25 2b 28 70 6c 6f 6f  |r%=ploopl%+(ploo|
00009fc0  70 72 25 2d 70 6c 6f 6f  70 6c 25 29 2a 32 0d 47  |pr%-ploopl%)*2.G|
00009fd0  d6 52 e7 20 70 6c 6f 6f  70 72 25 3e 73 61 6d 70  |.R. ploopr%>samp|
00009fe0  6c 65 6c 65 6e 25 20 8c  20 70 6c 6f 6f 70 6c 25  |lelen% . ploopl%|
00009ff0  3d 70 6c 6f 6f 70 6c 25  2d 28 70 6c 6f 6f 70 72  |=ploopl%-(ploopr|
0000a000  25 2d 73 61 6d 70 6c 65  6c 65 6e 25 29 3a 70 6c  |%-samplelen%):pl|
0000a010  6f 6f 70 72 25 3d 73 61  6d 70 6c 65 6c 65 6e 25  |oopr%=samplelen%|
0000a020  0d 47 e0 1b e7 20 70 6c  6f 6f 70 6c 25 3c 30 20  |.G... ploopl%<0 |
0000a030  8c 20 70 6c 6f 6f 70 6c  25 3d 30 0d 47 ea 1e 6c  |. ploopl%=0.G..l|
0000a040  6f 6f 70 6c 25 3d a4 50  74 72 54 6f 57 6f 72 6b  |oopl%=.PtrToWork|
0000a050  28 70 6c 6f 6f 70 6c 25  29 0d 47 f4 1e 6c 6f 6f  |(ploopl%).G..loo|
0000a060  70 72 25 3d a4 50 74 72  54 6f 57 6f 72 6b 28 70  |pr%=.PtrToWork(p|
0000a070  6c 6f 6f 70 72 25 29 0d  47 fe 10 f2 55 70 64 61  |loopr%).G...Upda|
0000a080  74 65 4c 6f 6f 70 50 0d  48 08 05 e1 0d 48 12 04  |teLoopP.H....H..|
0000a090  0d 48 1c 0f dd f2 4c 6f  6f 70 53 74 6f 72 65 0d  |.H....LoopStore.|
0000a0a0  48 26 25 73 70 6c 6f 6f  70 6c 25 3d 70 6c 6f 6f  |H&%sploopl%=ploo|
0000a0b0  70 6c 25 3a 73 70 6c 6f  6f 70 72 25 3d 70 6c 6f  |pl%:sploopr%=plo|
0000a0c0  6f 70 72 25 0d 48 30 05  e1 0d 48 3a 04 0d 48 44  |opr%.H0...H:..HD|
0000a0d0  11 dd f2 4c 6f 6f 70 52  65 73 74 6f 72 65 0d 48  |...LoopRestore.H|
0000a0e0  4e 25 70 6c 6f 6f 70 6c  25 3d 73 70 6c 6f 6f 70  |N%ploopl%=sploop|
0000a0f0  6c 25 3a 70 6c 6f 6f 70  72 25 3d 73 70 6c 6f 6f  |l%:ploopr%=sploo|
0000a100  70 72 25 0d 48 58 1b e7  20 70 6c 6f 6f 70 6c 25  |pr%.HX.. ploopl%|
0000a110  3c 30 20 8c 20 70 6c 6f  6f 70 6c 25 3d 30 0d 48  |<0 . ploopl%=0.H|
0000a120  62 1b e7 20 70 6c 6f 6f  70 72 25 3c 30 20 8c 20  |b.. ploopr%<0 . |
0000a130  70 6c 6f 6f 70 72 25 3d  30 0d 48 6c 2d e7 20 70  |ploopr%=0.Hl-. p|
0000a140  6c 6f 6f 70 6c 25 3e 73  61 6d 70 6c 65 6c 65 6e  |loopl%>samplelen|
0000a150  25 20 8c 20 70 6c 6f 6f  70 6c 25 3d 73 61 6d 70  |% . ploopl%=samp|
0000a160  6c 65 6c 65 6e 25 0d 48  76 2d e7 20 70 6c 6f 6f  |lelen%.Hv-. ploo|
0000a170  70 72 25 3e 73 61 6d 70  6c 65 6c 65 6e 25 20 8c  |pr%>samplelen% .|
0000a180  20 70 6c 6f 6f 70 72 25  3d 73 61 6d 70 6c 65 6c  | ploopr%=samplel|
0000a190  65 6e 25 0d 48 80 1e 6c  6f 6f 70 6c 25 3d a4 50  |en%.H..loopl%=.P|
0000a1a0  74 72 54 6f 57 6f 72 6b  28 70 6c 6f 6f 70 6c 25  |trToWork(ploopl%|
0000a1b0  29 0d 48 8a 1e 6c 6f 6f  70 72 25 3d a4 50 74 72  |).H..loopr%=.Ptr|
0000a1c0  54 6f 57 6f 72 6b 28 70  6c 6f 6f 70 72 25 29 0d  |ToWork(ploopr%).|
0000a1d0  48 94 10 f2 55 70 64 61  74 65 4c 6f 6f 70 50 0d  |H...UpdateLoopP.|
0000a1e0  48 9e 05 e1 0d 48 a8 04  0d 48 b2 0e dd f2 4d 47  |H....H...H....MG|
0000a1f0  6f 6f 64 69 65 73 0d 48  bc 25 e7 20 70 73 65 6c  |oodies.H.%. psel|
0000a200  65 63 74 6c 25 3c 3e 2d  31 20 80 20 70 73 65 6c  |ectl%<>-1 . psel|
0000a210  65 63 74 72 25 3c 3e 2d  31 20 8c 0d 48 c6 1d 41  |ectr%<>-1 ..H..A|
0000a220  25 3d 73 74 61 72 74 73  61 6d 70 6c 65 25 2b 70  |%=startsample%+p|
0000a230  73 65 6c 65 63 74 6c 25  0d 48 d0 1d 42 25 3d 73  |selectl%.H..B%=s|
0000a240  74 61 72 74 73 61 6d 70  6c 65 25 2b 70 73 65 6c  |tartsample%+psel|
0000a250  65 63 74 72 25 0d 48 da  05 cc 0d 48 e4 13 41 25  |ectr%.H....H..A%|
0000a260  3d 73 74 61 72 74 73 61  6d 70 6c 65 25 0d 48 ee  |=startsample%.H.|
0000a270  1e 42 25 3d 73 74 61 72  74 73 61 6d 70 6c 65 25  |.B%=startsample%|
0000a280  2b 73 61 6d 70 6c 65 6c  65 6e 25 0d 48 f8 05 cd  |+samplelen%.H...|
0000a290  0d 49 02 16 e7 20 41 25  3e 42 25 20 8c 20 c8 94  |.I... A%>B% . ..|
0000a2a0  20 41 25 2c 42 25 0d 49  0c 11 6d 25 3d 70 6f 6c  | A%,B%.I..m%=pol|
0000a2b0  6c 65 64 62 25 21 34 0d  49 16 0b c8 8e 20 6d 25  |ledb%!4.I.... m%|
0000a2c0  20 ca 0d 49 20 11 c9 20  30 3a f2 4d 47 53 69 67  | ..I .. 0:.MGSig|
0000a2d0  6e 65 64 0d 49 2a 11 c9  20 31 3a f2 4d 47 4c 69  |ned.I*.. 1:.MGLi|
0000a2e0  6e 4c 6f 67 0d 49 34 11  c9 20 32 3a f2 4d 47 4c  |nLog.I4.. 2:.MGL|
0000a2f0  6f 67 4c 69 6e 0d 49 3e  12 c9 20 33 3a f2 4d 47  |ogLin.I>.. 3:.MG|
0000a300  52 65 76 65 72 73 65 0d  49 48 11 c9 20 34 3a f2  |Reverse.IH.. 4:.|
0000a310  4d 47 46 69 6c 74 4c 6f  0d 49 52 11 c9 20 35 3a  |MGFiltLo.IR.. 5:|
0000a320  f2 4d 47 46 69 6c 74 48  69 0d 49 5c 10 c9 20 36  |.MGFiltHi.I\.. 6|
0000a330  3a f2 4d 47 53 63 41 6d  70 0d 49 66 11 c9 20 39  |:.MGScAmp.If.. 9|
0000a340  3a f2 4d 47 4c 65 6e 67  74 68 0d 49 70 10 c9 20  |:.MGLength.Ip.. |
0000a350  31 30 3a f2 4d 47 46 69  6c 6c 0d 49 7a 0f c9 20  |10:.MGFill.Iz.. |
0000a360  31 31 3a f2 4d 47 46 46  54 0d 49 84 14 c9 20 31  |11:.MGFFT.I... 1|
0000a370  32 3a f2 4d 47 41 64 64  43 6c 69 70 42 0d 49 8e  |2:.MGAddClipB.I.|
0000a380  05 cb 0d 49 98 05 e1 0d  49 a2 04 0d 49 ac 0e dd  |...I....I...I...|
0000a390  f2 4d 47 53 69 67 6e 65  64 0d 49 b6 0b d6 73 69  |.MGSigned.I...si|
0000a3a0  67 6e 65 64 0d 49 c0 0b  f2 52 64 57 6f 72 6b 0d  |gned.I...RdWork.|
0000a3b0  49 ca 10 f2 4d 6f 64 54  69 74 6c 65 28 30 29 0d  |I...ModTitle(0).|
0000a3c0  49 d4 05 e1 0d 49 de 04  0d 49 e8 0e dd f2 4d 47  |I....I...I....MG|
0000a3d0  4c 69 6e 4c 6f 67 0d 49  f2 1d e7 20 73 74 79 70  |LinLog.I... styp|
0000a3e0  65 25 3c 3e 30 20 80 20  73 74 79 70 65 25 3c 3e  |e%<>0 . stype%<>|
0000a3f0  31 20 8c 0d 49 fc 2b f2  52 65 70 6f 72 74 45 72  |1 ..I.+.ReportEr|
0000a400  72 28 22 53 46 58 45 44  20 6e 6f 74 20 69 6e 20  |r("SFXED not in |
0000a410  6c 69 6e 65 61 72 20 6d  6f 64 65 2e 22 29 0d 4a  |linear mode.").J|
0000a420  06 05 cc 0d 4a 10 36 c8  99 22 53 46 58 4d 50 5f  |....J.6.."SFXMP_|
0000a430  53 74 6f 70 22 2c 31 3a  c8 99 22 53 46 58 4d 50  |Stop",1:.."SFXMP|
0000a440  5f 53 74 6f 70 22 2c 32  3a c8 99 22 53 46 58 4d  |_Stop",2:.."SFXM|
0000a450  50 5f 53 74 6f 70 22 2c  33 0d 4a 1a 0d 43 25 3d  |P_Stop",3.J..C%=|
0000a460  73 74 79 70 65 25 0d 4a  24 0b d6 6c 69 6e 6c 6f  |stype%.J$..linlo|
0000a470  67 0d 4a 2e 0c 73 74 79  70 65 25 3d 32 0d 4a 38  |g.J..stype%=2.J8|
0000a480  0d f2 41 64 6a 54 79 70  65 4d 0d 4a 42 0b f2 52  |..AdjTypeM.JB..R|
0000a490  64 57 6f 72 6b 0d 4a 4c  10 f2 4d 6f 64 54 69 74  |dWork.JL..ModTit|
0000a4a0  6c 65 28 30 29 0d 4a 56  05 cd 0d 4a 60 05 e1 0d  |le(0).JV...J`...|
0000a4b0  4a 6a 04 0d 4a 74 0e dd  f2 4d 47 4c 6f 67 4c 69  |Jj..Jt...MGLogLi|
0000a4c0  6e 0d 4a 7e 36 c8 99 22  53 46 58 4d 50 5f 53 74  |n.J~6.."SFXMP_St|
0000a4d0  6f 70 22 2c 31 3a c8 99  22 53 46 58 4d 50 5f 53  |op",1:.."SFXMP_S|
0000a4e0  74 6f 70 22 2c 32 3a c8  99 22 53 46 58 4d 50 5f  |top",2:.."SFXMP_|
0000a4f0  53 74 6f 70 22 2c 33 0d  4a 88 0b d6 6c 6f 67 6c  |Stop",3.J...logl|
0000a500  69 6e 0d 4a 92 0c 73 74  79 70 65 25 3d 30 0d 4a  |in.J..stype%=0.J|
0000a510  9c 0d f2 41 64 6a 54 79  70 65 4d 0d 4a a6 0b f2  |...AdjTypeM.J...|
0000a520  52 64 57 6f 72 6b 0d 4a  b0 10 f2 4d 6f 64 54 69  |RdWork.J...ModTi|
0000a530  74 6c 65 28 30 29 0d 4a  ba 05 e1 0d 4a c4 04 0d  |tle(0).J....J...|
0000a540  4a ce 0f dd f2 4d 47 52  65 76 65 72 73 65 0d 4a  |J....MGReverse.J|
0000a550  d8 0c d6 72 65 76 65 72  73 65 0d 4a e2 0b f2 52  |...reverse.J...R|
0000a560  64 57 6f 72 6b 0d 4a ec  10 f2 4d 6f 64 54 69 74  |dWork.J...ModTit|
0000a570  6c 65 28 30 29 0d 4a f6  05 e1 0d 4b 00 04 0d 4b  |le(0).J....K...K|
0000a580  0a 0e dd f2 4d 47 46 69  6c 74 4c 6f 0d 4b 14 10  |....MGFiltLo.K..|
0000a590  e7 20 73 74 79 70 65 25  3d 32 20 8c 0d 4b 1e 2a  |. stype%=2 ..K.*|
0000a5a0  f2 52 65 70 6f 72 74 45  72 72 28 22 4f 6e 6c 79  |.ReportErr("Only|
0000a5b0  20 66 6f 72 20 6c 69 6e  65 61 72 20 73 61 6d 70  | for linear samp|
0000a5c0  6c 65 73 2e 22 29 0d 4b  28 05 cc 0d 4b 32 1b 43  |les.").K(...K2.C|
0000a5d0  25 3d 31 36 2a bb 28 24  28 6d 66 69 6c 74 6c 6f  |%=16*.($(mfiltlo|
0000a5e0  25 21 34 30 29 29 0d 4b  3c 16 e7 20 43 25 3c 30  |%!40)).K<.. C%<0|
0000a5f0  20 84 20 43 25 3e 34 30  39 35 20 8c 0d 4b 46 2c  | . C%>4095 ..KF,|
0000a600  f2 52 65 70 6f 72 74 45  72 72 28 22 4f 6e 6c 79  |.ReportErr("Only|
0000a610  20 76 61 6c 75 65 73 20  66 72 6f 6d 20 30 20 74  | values from 0 t|
0000a620  6f 20 32 35 36 2e 22 29  0d 4b 50 05 cc 0d 4b 5a  |o 256.").KP...KZ|
0000a630  0d 44 25 3d 73 74 79 70  65 25 0d 4b 64 0b 45 25  |.D%=stype%.Kd.E%|
0000a640  3d 41 25 3f 30 0d 4b 6e  1c e7 20 73 74 79 70 65  |=A%?0.Kn.. stype|
0000a650  25 3d 31 20 8c 20 45 25  3d 45 25 20 82 20 26 38  |%=1 . E%=E% . &8|
0000a660  30 0d 4b 78 13 45 25 3d  28 45 25 3c 3c 32 34 29  |0.Kx.E%=(E%<<24)|
0000a670  3e 3e 32 34 0d 4b 82 0d  45 25 3d 45 25 2a 32 35  |>>24.K..E%=E%*25|
0000a680  36 0d 4b 8c 0b d6 66 69  6c 74 6c 6f 0d 4b 96 0b  |6.K...filtlo.K..|
0000a690  f2 52 64 57 6f 72 6b 0d  4b a0 10 f2 4d 6f 64 54  |.RdWork.K...ModT|
0000a6a0  69 74 6c 65 28 30 29 0d  4b aa 05 cd 0d 4b b4 05  |itle(0).K....K..|
0000a6b0  cd 0d 4b be 05 e1 0d 4b  c8 04 0d 4b d2 0e dd f2  |..K....K...K....|
0000a6c0  4d 47 46 69 6c 74 48 69  0d 4b dc 10 e7 20 73 74  |MGFiltHi.K... st|
0000a6d0  79 70 65 25 3d 32 20 8c  0d 4b e6 2a f2 52 65 70  |ype%=2 ..K.*.Rep|
0000a6e0  6f 72 74 45 72 72 28 22  4f 6e 6c 79 20 66 6f 72  |ortErr("Only for|
0000a6f0  20 6c 69 6e 65 61 72 20  73 61 6d 70 6c 65 73 2e  | linear samples.|
0000a700  22 29 0d 4b f0 05 cc 0d  4b fa 1b 43 25 3d 31 36  |").K....K..C%=16|
0000a710  2a bb 28 24 28 6d 66 69  6c 74 68 69 25 21 34 30  |*.($(mfilthi%!40|
0000a720  29 29 0d 4c 04 16 e7 20  43 25 3c 30 20 84 20 43  |)).L... C%<0 . C|
0000a730  25 3e 34 30 39 35 20 8c  0d 4c 0e 2b f2 52 65 70  |%>4095 ..L.+.Rep|
0000a740  6f 72 74 45 72 72 28 22  4f 6e 6c 79 20 76 61 6c  |ortErr("Only val|
0000a750  75 65 73 20 66 72 6f 6d  20 30 20 74 6f 20 32 35  |ues from 0 to 25|
0000a760  36 22 29 0d 4c 18 05 cc  0d 4c 22 0d 44 25 3d 73  |6").L....L".D%=s|
0000a770  74 79 70 65 25 0d 4c 2c  26 e7 20 41 25 3d 73 74  |type%.L,&. A%=st|
0000a780  61 72 74 73 61 6d 70 6c  65 25 20 8c 20 45 25 3d  |artsample% . E%=|
0000a790  30 20 8b 20 45 25 3d 41  25 3f 30 0d 4c 36 1c e7  |0 . E%=A%?0.L6..|
0000a7a0  20 73 74 79 70 65 25 3d  31 20 8c 20 45 25 3d 45  | stype%=1 . E%=E|
0000a7b0  25 20 82 20 26 38 30 0d  4c 40 13 45 25 3d 28 45  |% . &80.L@.E%=(E|
0000a7c0  25 3c 3c 32 34 29 3e 3e  32 34 0d 4c 4a 0d 45 25  |%<<24)>>24.LJ.E%|
0000a7d0  3d 45 25 2a 32 35 36 0d  4c 54 0b d6 66 69 6c 74  |=E%*256.LT..filt|
0000a7e0  68 69 0d 4c 5e 0b f2 52  64 57 6f 72 6b 0d 4c 68  |hi.L^..RdWork.Lh|
0000a7f0  10 f2 4d 6f 64 54 69 74  6c 65 28 30 29 0d 4c 72  |..ModTitle(0).Lr|
0000a800  05 cd 0d 4c 7c 05 cd 0d  4c 86 05 e1 0d 4c 90 04  |...L|...L....L..|
0000a810  0d 4c 9a 0d dd f2 4d 47  53 63 41 6d 70 0d 4c a4  |.L....MGScAmp.L.|
0000a820  10 e7 20 73 74 79 70 65  25 3d 32 20 8c 0d 4c ae  |.. stype%=2 ..L.|
0000a830  2a f2 52 65 70 6f 72 74  45 72 72 28 22 4f 6e 6c  |*.ReportErr("Onl|
0000a840  79 20 66 6f 72 20 6c 69  6e 65 61 72 20 73 61 6d  |y for linear sam|
0000a850  70 6c 65 73 2e 22 29 0d  4c b8 05 cc 0d 4c c2 20  |ples.").L....L. |
0000a860  43 25 3d 34 30 39 36 2a  bb 28 24 28 6d 73 63 61  |C%=4096*.($(msca|
0000a870  6d 70 25 21 34 30 29 29  2f 31 30 30 0d 4c cc 0d  |mp%!40))/100.L..|
0000a880  44 25 3d 73 74 79 70 65  25 0d 4c d6 0a d6 73 63  |D%=stype%.L...sc|
0000a890  61 6d 70 0d 4c e0 0b f2  52 64 57 6f 72 6b 0d 4c  |amp.L...RdWork.L|
0000a8a0  ea 10 f2 4d 6f 64 54 69  74 6c 65 28 30 29 0d 4c  |...ModTitle(0).L|
0000a8b0  f4 05 cd 0d 4c fe 05 e1  0d 4d 08 04 0d 4d 12 0e  |....L....M...M..|
0000a8c0  dd f2 4d 47 4c 65 6e 67  74 68 0d 4d 1c 1c 66 72  |..MGLength.M..fr|
0000a8d0  3d bb 28 24 28 6d 6e 65  77 6c 65 6e 25 21 34 30  |=.($(mnewlen%!40|
0000a8e0  29 29 2f 31 30 30 0d 4d  26 17 73 61 25 3d 41 25  |))/100.M&.sa%=A%|
0000a8f0  2d 73 74 61 72 74 73 61  6d 70 6c 65 25 0d 4d 30  |-startsample%.M0|
0000a900  17 73 62 25 3d 42 25 2d  73 74 61 72 74 73 61 6d  |.sb%=B%-startsam|
0000a910  70 6c 65 25 0d 4d 3a 4e  63 25 3d a4 43 68 65 63  |ple%.M:Nc%=.Chec|
0000a920  6b 4c 65 6e 28 73 61 6d  70 6c 65 6c 65 6e 25 2b  |kLen(samplelen%+|
0000a930  63 6c 69 70 62 6c 65 6e  25 2b 28 73 62 25 2d 73  |clipblen%+(sb%-s|
0000a940  61 25 29 2a 28 66 72 2d  31 29 2c 22 4e 6f 20 72  |a%)*(fr-1),"No r|
0000a950  6f 6f 6d 20 66 6f 72 20  73 74 72 65 74 63 68 2e  |oom for stretch.|
0000a960  22 29 0d 4d 44 0c e7 20  63 25 3d 30 20 8c 0d 4d  |").MD.. c%=0 ..M|
0000a970  4e 13 73 63 25 3d 66 72  2a 26 31 30 30 30 30 30  |N.sc%=fr*&100000|
0000a980  30 0d 4d 58 15 e7 20 73  63 25 3e 3d 26 31 30 30  |0.MX.. sc%>=&100|
0000a990  30 30 30 30 20 8c 0d 4d  62 17 41 25 3d 73 74 61  |0000 ..Mb.A%=sta|
0000a9a0  72 74 73 61 6d 70 6c 65  25 2b 73 62 25 0d 4d 6c  |rtsample%+sb%.Ml|
0000a9b0  24 42 25 3d 73 74 61 72  74 73 61 6d 70 6c 65 25  |$B%=startsample%|
0000a9c0  2b 73 61 25 2b 28 73 62  25 2d 73 61 25 29 2a 66  |+sa%+(sb%-sa%)*f|
0000a9d0  72 0d 4d 76 15 43 25 3d  73 61 6d 70 6c 65 6c 65  |r.Mv.C%=samplele|
0000a9e0  6e 25 2d 73 62 25 0d 4d  80 0c d6 63 6f 70 79 6d  |n%-sb%.M...copym|
0000a9f0  65 6d 0d 4d 8a 05 cd 0d  4d 94 17 41 25 3d 73 74  |em.M....M..A%=st|
0000aa00  61 72 74 73 61 6d 70 6c  65 25 2b 73 61 25 0d 4d  |artsample%+sa%.M|
0000aa10  9e 17 42 25 3d 73 74 61  72 74 73 61 6d 70 6c 65  |..B%=startsample|
0000aa20  25 2b 73 62 25 0d 4d a8  0a 43 25 3d 73 63 25 0d  |%+sb%.M..C%=sc%.|
0000aa30  4d b2 14 e7 20 73 63 25  3c 26 31 30 30 30 30 30  |M... sc%<&100000|
0000aa40  30 20 8c 0d 4d bc 27 e7  20 66 72 3c 3e 30 20 8c  |0 ..M.'. fr<>0 .|
0000aa50  20 43 25 3d 26 31 30 30  30 30 30 30 2f 66 72 3a  | C%=&1000000/fr:|
0000aa60  d6 6e 77 6c 65 6e 67 74  68 73 0d 4d c6 05 cc 0d  |.nwlengths.M....|
0000aa70  4d d0 12 43 25 3d 26 31  30 30 30 30 30 30 2f 66  |M..C%=&1000000/f|
0000aa80  72 0d 4d da 24 44 25 3d  73 74 61 72 74 73 61 6d  |r.M.$D%=startsam|
0000aa90  70 6c 65 25 2b 73 61 25  2b 28 73 62 25 2d 73 61  |ple%+sa%+(sb%-sa|
0000aaa0  25 29 2a 66 72 0d 4d e4  0e d6 6e 77 6c 65 6e 67  |%)*fr.M...nwleng|
0000aab0  74 68 62 0d 4d ee 05 cd  0d 4d f8 14 e7 20 73 63  |thb.M....M... sc|
0000aac0  25 3c 26 31 30 30 30 30  30 30 20 8c 0d 4e 02 17  |%<&1000000 ..N..|
0000aad0  41 25 3d 73 74 61 72 74  73 61 6d 70 6c 65 25 2b  |A%=startsample%+|
0000aae0  73 62 25 0d 4e 0c 24 42  25 3d 73 74 61 72 74 73  |sb%.N.$B%=starts|
0000aaf0  61 6d 70 6c 65 25 2b 73  61 25 2b 28 73 62 25 2d  |ample%+sa%+(sb%-|
0000ab00  73 61 25 29 2a 66 72 0d  4e 16 15 43 25 3d 73 61  |sa%)*fr.N..C%=sa|
0000ab10  6d 70 6c 65 6c 65 6e 25  2d 73 62 25 0d 4e 20 0c  |mplelen%-sb%.N .|
0000ab20  d6 63 6f 70 79 6d 65 6d  0d 4e 2a 05 cd 0d 4e 34  |.copymem.N*...N4|
0000ab30  3a e7 20 70 6c 6f 6f 70  6c 25 3e 73 61 25 20 8c  |:. ploopl%>sa% .|
0000ab40  20 70 6c 6f 6f 70 6c 25  3d 70 6c 6f 6f 70 6c 25  | ploopl%=ploopl%|
0000ab50  2d 28 73 62 25 2d 73 61  25 29 2b 28 73 62 25 2d  |-(sb%-sa%)+(sb%-|
0000ab60  73 61 25 29 2a 66 72 0d  4e 3e 3a e7 20 70 6c 6f  |sa%)*fr.N>:. plo|
0000ab70  6f 70 72 25 3e 73 61 25  20 8c 20 70 6c 6f 6f 70  |opr%>sa% . ploop|
0000ab80  72 25 3d 70 6c 6f 6f 70  72 25 2d 28 73 62 25 2d  |r%=ploopr%-(sb%-|
0000ab90  73 61 25 29 2b 28 73 62  25 2d 73 61 25 29 2a 66  |sa%)+(sb%-sa%)*f|
0000aba0  72 0d 4e 48 0c f2 67 65  74 77 69 6e 70 0d 4e 52  |r.NH..getwinp.NR|
0000abb0  30 73 61 6d 70 6c 65 6c  65 6e 25 3d 73 61 6d 70  |0samplelen%=samp|
0000abc0  6c 65 6c 65 6e 25 2d 28  73 62 25 2d 73 61 25 29  |lelen%-(sb%-sa%)|
0000abd0  2b 28 73 62 25 2d 73 61  25 29 2a 66 72 0d 4e 5c  |+(sb%-sa%)*fr.N\|
0000abe0  43 e7 20 73 61 6d 70 6c  65 6c 65 6e 25 3c 31 20  |C. samplelen%<1 |
0000abf0  8c 20 73 61 6d 70 6c 65  6c 65 6e 25 3d 31 3a 73  |. samplelen%=1:s|
0000ac00  74 61 72 74 73 61 6d 70  6c 65 25 3f 30 3d 30 3a  |tartsample%?0=0:|
0000ac10  73 74 61 72 74 73 61 6d  70 6c 65 25 3f 31 3d 30  |startsample%?1=0|
0000ac20  0d 4e 66 0e f2 43 68 65  63 6b 4c 6f 6f 70 0d 4e  |.Nf..CheckLoop.N|
0000ac30  70 0e f2 43 68 65 63 6b  53 6f 6e 67 0d 4e 7a 0c  |p..CheckSong.Nz.|
0000ac40  f2 61 64 6a 70 74 72 73  0d 4e 84 0c f2 5a 6f 6f  |.adjptrs.N...Zoo|
0000ac50  6d 53 65 6c 0d 4e 8e 10  f2 4d 6f 64 54 69 74 6c  |mSel.N...ModTitl|
0000ac60  65 28 30 29 0d 4e 98 05  cd 0d 4e a2 05 e1 0d 4e  |e(0).N....N....N|
0000ac70  ac 04 0d 4e b6 0c dd f2  4d 47 46 69 6c 6c 0d 4e  |...N....MGFill.N|
0000ac80  c0 1e e7 20 73 74 79 70  65 25 3d 31 20 8c 20 43  |... stype%=1 . C|
0000ac90  25 3d 31 32 38 20 8b 20  43 25 3d 30 0d 4e ca 0c  |%=128 . C%=0.N..|
0000aca0  d6 66 69 6c 6c 6d 65 6d  0d 4e d4 0b f2 52 64 57  |.fillmem.N...RdW|
0000acb0  6f 72 6b 0d 4e de 10 f2  4d 6f 64 54 69 74 6c 65  |ork.N...ModTitle|
0000acc0  28 30 29 0d 4e e8 05 e1  0d 4e f2 04 0d 4e fc 0b  |(0).N....N...N..|
0000acd0  dd f2 4d 47 46 46 54 0d  4f 06 07 ea 20 85 0d 4f  |..MGFFT.O... ..O|
0000ace0  10 38 ee 20 85 20 ea 20  c8 99 22 4f 53 5f 53 70  |.8. . . .."OS_Sp|
0000acf0  72 69 74 65 4f 70 22 2c  36 30 2b 32 35 36 2c 53  |riteOp",60+256,S|
0000ad00  25 2c 30 2c 30 3a f2 52  65 70 6f 72 74 45 72 72  |%,0,0:.ReportErr|
0000ad10  28 f6 24 29 3a e1 0d 4f  1a 10 e7 20 73 74 79 70  |(.$):..O... styp|
0000ad20  65 25 3d 32 20 8c 0d 4f  24 2a f2 52 65 70 6f 72  |e%=2 ..O$*.Repor|
0000ad30  74 45 72 72 28 22 4f 6e  6c 79 20 66 6f 72 20 6c  |tErr("Only for l|
0000ad40  69 6e 65 61 72 20 73 61  6d 70 6c 65 73 2e 22 29  |inear samples.")|
0000ad50  0d 4f 2e 05 cc 0d 4f 38  18 43 25 3d bb 28 24 28  |.O....O8.C%=.($(|
0000ad60  6d 66 66 74 61 6d 70 25  21 34 30 29 29 0d 4f 42  |mfftamp%!40)).OB|
0000ad70  11 e7 20 43 25 3c 30 20  8c 20 43 25 3d 30 0d 4f  |.. C%<0 . C%=0.O|
0000ad80  4c 14 c8 99 22 48 6f 75  72 67 6c 61 73 73 5f 4f  |L..."Hourglass_O|
0000ad90  6e 22 0d 4f 56 1e c8 99  22 57 69 6d 70 5f 42 61  |n".OV..."Wimp_Ba|
0000ada0  73 65 4f 66 53 70 72 69  74 65 73 22 b8 2c 53 25  |seOfSprites".,S%|
0000adb0  0d 4f 60 37 c8 99 22 4f  53 5f 53 70 72 69 74 65  |.O`7.."OS_Sprite|
0000adc0  4f 70 22 2c 36 30 2b 32  35 36 2c 53 25 2c 22 66  |Op",60+256,S%,"f|
0000add0  66 74 73 70 72 69 74 65  22 2c 30 b8 57 25 2c 58  |ftsprite",0.W%,X|
0000ade0  25 2c 59 25 2c 5a 25 0d  4f 6a 08 da 3a ef 35 0d  |%,Y%,Z%.Oj..:.5.|
0000adf0  4f 74 13 86 20 35 31 32  2c 35 31 32 2c 30 2c 32  |Ot.. 512,512,0,2|
0000ae00  35 36 0d 4f 7e 16 86 20  35 31 32 2c 35 31 32 2c  |56.O~.. 512,512,|
0000ae10  31 30 32 34 2c 32 35 36  0d 4f 88 16 86 20 35 31  |1024,256.O... 51|
0000ae20  32 2c 35 31 32 2c 35 31  32 2c 31 30 32 34 0d 4f  |2,512,512,1024.O|
0000ae30  92 0b ec 20 38 2c 32 31  32 0d 4f 9c 09 f1 22 66  |... 8,212.O..."f|
0000ae40  22 3b 0d 4f a6 12 86 20  32 36 2c 32 33 32 2c 30  |";.O... 26,232,0|
0000ae50  2c 32 32 30 0d 4f b0 12  86 20 31 32 2c 32 32 30  |,220.O... 12,220|
0000ae60  2c 30 2c 32 32 30 0d 4f  ba 11 86 20 38 2c 32 32  |,0,220.O... 8,22|
0000ae70  38 2c 30 2c 32 32 30 0d  4f c4 0e ec 20 31 30 30  |8,0,220.O... 100|
0000ae80  30 2c 32 31 32 0d 4f ce  09 f1 22 74 22 3b 0d 4f  |0,212.O..."t";.O|
0000ae90  d8 16 86 20 39 39 36 2c  32 33 32 2c 31 30 32 32  |... 996,232,1022|
0000aea0  2c 32 32 30 0d 4f e2 17  86 20 31 30 31 30 2c 32  |,220.O... 1010,2|
0000aeb0  32 30 2c 31 30 32 32 2c  32 32 30 0d 4f ec 17 86  |20,1022,220.O...|
0000aec0  20 31 30 31 34 2c 32 32  38 2c 31 30 32 32 2c 32  | 1014,228,1022,2|
0000aed0  32 30 0d 4f f6 0e ec 20  34 39 30 2c 31 30 32 30  |20.O... 490,1020|
0000aee0  0d 50 00 09 f1 22 41 22  3b 0d 50 0a 16 86 20 34  |.P..."A";.P... 4|
0000aef0  38 30 2c 31 30 32 30 2c  34 38 30 2c 39 38 38 0d  |80,1020,480,988.|
0000af00  50 14 17 86 20 34 37 36  2c 31 30 30 38 2c 34 38  |P... 476,1008,48|
0000af10  30 2c 31 30 32 30 0d 50  1e 17 86 20 34 38 34 2c  |0,1020.P... 484,|
0000af20  31 30 30 38 2c 34 38 30  2c 31 30 32 30 0d 50 28  |1008,480,1020.P(|
0000af30  04 0d 50 32 11 66 66 74  63 6f 64 65 25 21 34 3d  |..P2.fftcode%!4=|
0000af40  41 25 0d 50 3c 11 66 66  74 63 6f 64 65 25 21 38  |A%.P<.fftcode%!8|
0000af50  3d 42 25 0d 50 46 11 66  66 74 63 6f 64 65 25 21  |=B%.PF.fftcode%!|
0000af60  31 32 3d 30 0d 50 50 3a  e7 20 28 42 25 2d 41 25  |12=0.PP:. (B%-A%|
0000af70  29 3c 31 32 38 20 8c 20  66 66 74 63 6f 64 65 25  |)<128 . fftcode%|
0000af80  21 31 36 3d 30 20 8b 20  66 66 74 63 6f 64 65 25  |!16=0 . fftcode%|
0000af90  21 31 36 3d 36 34 2a 28  42 25 2d 41 25 29 0d 50  |!16=64*(B%-A%).P|
0000afa0  5a 11 66 66 74 63 6f 64  65 25 21 32 30 3d 30 0d  |Z.fftcode%!20=0.|
0000afb0  50 64 16 66 66 74 63 6f  64 65 25 21 32 34 3d 73  |Pd.fftcode%!24=s|
0000afc0  74 79 70 65 25 0d 50 6e  12 66 66 74 63 6f 64 65  |type%.Pn.fftcode|
0000afd0  25 21 32 38 3d 43 25 0d  50 78 13 66 66 74 63 6f  |%!28=C%.Px.fftco|
0000afe0  64 65 25 21 33 32 3d 35  31 32 0d 50 82 13 66 66  |de%!32=512.P..ff|
0000aff0  74 63 6f 64 65 25 21 33  36 3d 35 31 32 0d 50 8c  |tcode%!36=512.P.|
0000b000  19 66 66 74 63 6f 64 65  25 21 34 30 3d 66 66 74  |.fftcode%!40=fft|
0000b010  72 63 6f 65 66 25 0d 50  96 19 66 66 74 63 6f 64  |rcoef%.P..fftcod|
0000b020  65 25 21 34 34 3d 66 66  74 69 63 6f 65 66 25 0d  |e%!44=ffticoef%.|
0000b030  50 a0 0d d6 66 66 74 63  6f 64 65 25 0d 50 aa 04  |P...fftcode%.P..|
0000b040  0d 50 b4 1f c8 99 22 4f  53 5f 53 70 72 69 74 65  |.P...."OS_Sprite|
0000b050  4f 70 22 2c 57 25 2c 58  25 2c 59 25 2c 5a 25 0d  |Op",W%,X%,Y%,Z%.|
0000b060  50 be 12 74 65 6d 70 25  21 30 3d 77 66 66 74 68  |P..temp%!0=wffth|
0000b070  25 0d 50 c8 1f c8 99 22  57 69 6d 70 5f 43 6c 6f  |%.P...."Wimp_Clo|
0000b080  73 65 57 69 6e 64 6f 77  22 2c 2c 74 65 6d 70 25  |seWindow",,temp%|
0000b090  0d 50 d2 22 c8 99 22 57  69 6d 70 5f 47 65 74 57  |.P.".."Wimp_GetW|
0000b0a0  69 6e 64 6f 77 53 74 61  74 65 22 2c 2c 74 65 6d  |indowState",,tem|
0000b0b0  70 25 0d 50 dc 0f 74 65  6d 70 25 21 32 38 3d 2d  |p%.P..temp%!28=-|
0000b0c0  31 0d 50 e6 1e c8 99 22  57 69 6d 70 5f 4f 70 65  |1.P...."Wimp_Ope|
0000b0d0  6e 57 69 6e 64 6f 77 22  2c 2c 74 65 6d 70 25 0d  |nWindow",,temp%.|
0000b0e0  50 f0 15 c8 99 22 48 6f  75 72 67 6c 61 73 73 5f  |P...."Hourglass_|
0000b0f0  4f 66 66 22 0d 50 fa 05  cd 0d 51 04 05 e1 0d 51  |Off".P....Q....Q|
0000b100  0e 04 0d 51 18 10 dd f2  4d 47 41 64 64 43 6c 69  |...Q....MGAddCli|
0000b110  70 42 0d 51 22 10 e7 20  73 74 79 70 65 25 3d 32  |pB.Q".. stype%=2|
0000b120  20 8c 0d 51 2c 2a f2 52  65 70 6f 72 74 45 72 72  | ..Q,*.ReportErr|
0000b130  28 22 4f 6e 6c 79 20 66  6f 72 20 6c 69 6e 65 61  |("Only for linea|
0000b140  72 20 73 61 6d 70 6c 65  73 2e 22 29 0d 51 36 05  |r samples.").Q6.|
0000b150  cc 0d 51 40 2f e7 20 42  25 2d 41 25 3e 63 6c 69  |..Q@/. B%-A%>cli|
0000b160  70 62 6c 65 6e 25 20 8c  20 43 25 3d 63 6c 69 70  |pblen% . C%=clip|
0000b170  62 6c 65 6e 25 20 8b 20  43 25 3d 42 25 2d 41 25  |blen% . C%=B%-A%|
0000b180  0d 51 4a 12 42 25 3d 63  6c 69 70 62 73 74 61 72  |.QJ.B%=clipbstar|
0000b190  74 25 0d 51 54 0d 44 25  3d 73 74 79 70 65 25 0d  |t%.QT.D%=stype%.|
0000b1a0  51 5e 0c d6 61 64 64 63  6c 69 70 0d 51 68 0b f2  |Q^..addclip.Qh..|
0000b1b0  52 64 57 6f 72 6b 0d 51  72 10 f2 4d 6f 64 54 69  |RdWork.Qr..ModTi|
0000b1c0  74 6c 65 28 30 29 0d 51  7c 05 cd 0d 51 86 05 e1  |tle(0).Q|...Q...|
0000b1d0  0d 51 90 04 0d 51 9a 0f  dd f2 45 63 68 6f 43 6c  |.Q...Q....EchoCl|
0000b1e0  69 63 6b 0d 51 a4 25 e7  20 70 73 65 6c 65 63 74  |ick.Q.%. pselect|
0000b1f0  6c 25 3c 3e 2d 31 20 80  20 70 73 65 6c 65 63 74  |l%<>-1 . pselect|
0000b200  72 25 3c 3e 2d 31 20 8c  0d 51 ae 1d 41 25 3d 73  |r%<>-1 ..Q..A%=s|
0000b210  74 61 72 74 73 61 6d 70  6c 65 25 2b 70 73 65 6c  |tartsample%+psel|
0000b220  65 63 74 6c 25 0d 51 b8  1d 42 25 3d 73 74 61 72  |ectl%.Q..B%=star|
0000b230  74 73 61 6d 70 6c 65 25  2b 70 73 65 6c 65 63 74  |tsample%+pselect|
0000b240  72 25 0d 51 c2 05 cc 0d  51 cc 13 41 25 3d 73 74  |r%.Q....Q..A%=st|
0000b250  61 72 74 73 61 6d 70 6c  65 25 0d 51 d6 1e 42 25  |artsample%.Q..B%|
0000b260  3d 73 74 61 72 74 73 61  6d 70 6c 65 25 2b 73 61  |=startsample%+sa|
0000b270  6d 70 6c 65 6c 65 6e 25  0d 51 e0 05 cd 0d 51 ea  |mplelen%.Q....Q.|
0000b280  16 e7 20 41 25 3e 42 25  20 8c 20 c8 94 20 41 25  |.. A%>B% . .. A%|
0000b290  2c 42 25 0d 51 f4 15 e7  20 70 6f 6c 6c 65 64 62  |,B%.Q... polledb|
0000b2a0  25 21 31 36 3d 38 20 8c  0d 51 fe 10 c8 97 20 61  |%!16=8 ..Q.... a|
0000b2b0  25 2c 62 25 2c 62 63 25  0d 52 08 10 e7 20 73 74  |%,b%,bc%.R... st|
0000b2c0  79 70 65 25 3d 32 20 8c  0d 52 12 2a f2 52 65 70  |ype%=2 ..R.*.Rep|
0000b2d0  6f 72 74 45 72 72 28 22  4f 6e 6c 79 20 66 6f 72  |ortErr("Only for|
0000b2e0  20 6c 69 6e 65 61 72 20  73 61 6d 70 6c 65 73 2e  | linear samples.|
0000b2f0  22 29 0d 52 1c 05 cc 0d  52 26 13 74 65 6d 70 25  |").R....R&.temp%|
0000b300  21 30 3d 77 65 63 68 6f  68 25 0d 52 30 0d 74 65  |!0=wechoh%.R0.te|
0000b310  6d 70 25 21 34 3d 32 0d  52 3a 20 c8 99 22 57 69  |mp%!4=2.R: .."Wi|
0000b320  6d 70 5f 47 65 74 49 63  6f 6e 53 74 61 74 65 22  |mp_GetIconState"|
0000b330  2c 2c 74 65 6d 70 25 0d  52 44 23 43 25 3d 32 35  |,,temp%.RD#C%=25|
0000b340  36 2d 28 32 35 36 2a bb  28 24 28 74 65 6d 70 25  |6-(256*.($(temp%|
0000b350  21 32 38 29 29 2f 31 30  30 29 0d 52 4e 13 74 65  |!28))/100).RN.te|
0000b360  6d 70 25 21 30 3d 77 65  63 68 6f 68 25 0d 52 58  |mp%!0=wechoh%.RX|
0000b370  0d 74 65 6d 70 25 21 34  3d 33 0d 52 62 20 c8 99  |.temp%!4=3.Rb ..|
0000b380  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
0000b390  74 65 22 2c 2c 74 65 6d  70 25 0d 52 6c 15 44 25  |te",,temp%.Rl.D%|
0000b3a0  3d bb 28 24 28 74 65 6d  70 25 21 32 38 29 29 0d  |=.($(temp%!28)).|
0000b3b0  52 76 13 74 65 6d 70 25  21 30 3d 77 65 63 68 6f  |Rv.temp%!0=wecho|
0000b3c0  68 25 0d 52 80 0d 74 65  6d 70 25 21 34 3d 36 0d  |h%.R..temp%!4=6.|
0000b3d0  52 8a 20 c8 99 22 57 69  6d 70 5f 47 65 74 49 63  |R. .."Wimp_GetIc|
0000b3e0  6f 6e 53 74 61 74 65 22  2c 2c 74 65 6d 70 25 0d  |onState",,temp%.|
0000b3f0  52 94 19 45 25 3d 28 74  65 6d 70 25 21 32 34 29  |R..E%=(temp%!24)|
0000b400  80 28 31 3c 3c 32 31 29  0d 52 9e 0d 46 25 3d 73  |.(1<<21).R..F%=s|
0000b410  74 79 70 65 25 0d 52 a8  15 e7 20 43 25 3c 30 20  |type%.R... C%<0 |
0000b420  84 20 43 25 3e 32 35 36  20 8c 0d 52 b2 2a f2 52  |. C%>256 ..R.*.R|
0000b430  65 70 6f 72 74 45 72 72  28 22 44 65 63 61 79 20  |eportErr("Decay |
0000b440  72 61 74 65 20 6f 75 74  20 6f 66 20 72 61 6e 67  |rate out of rang|
0000b450  65 2e 22 29 0d 52 bc 05  cc 0d 52 c6 09 d6 65 63  |e.").R....R...ec|
0000b460  68 6f 0d 52 d0 0b f2 52  64 57 6f 72 6b 0d 52 da  |ho.R...RdWork.R.|
0000b470  10 f2 4d 6f 64 54 69 74  6c 65 28 30 29 0d 52 e4  |..ModTitle(0).R.|
0000b480  05 cd 0d 52 ee 05 cd 0d  52 f8 33 e7 20 28 62 63  |...R....R.3. (bc|
0000b490  25 20 80 20 31 29 3d 30  20 8c 20 c8 99 22 57 69  |% . 1)=0 . .."Wi|
0000b4a0  6d 70 5f 43 72 65 61 74  65 4d 65 6e 75 22 2c 2d  |mp_CreateMenu",-|
0000b4b0  31 2c 2d 31 2c 2d 31 2c  2d 31 0d 53 02 05 cd 0d  |1,-1,-1,-1.S....|
0000b4c0  53 0c 05 e1 0d 53 16 04  0d 53 20 0f dd f2 46 61  |S....S...S ...Fa|
0000b4d0  64 65 43 6c 69 63 6b 0d  53 2a 25 e7 20 70 73 65  |deClick.S*%. pse|
0000b4e0  6c 65 63 74 6c 25 3c 3e  2d 31 20 80 20 70 73 65  |lectl%<>-1 . pse|
0000b4f0  6c 65 63 74 72 25 3c 3e  2d 31 20 8c 0d 53 34 1d  |lectr%<>-1 ..S4.|
0000b500  41 25 3d 73 74 61 72 74  73 61 6d 70 6c 65 25 2b  |A%=startsample%+|
0000b510  70 73 65 6c 65 63 74 6c  25 0d 53 3e 1d 42 25 3d  |pselectl%.S>.B%=|
0000b520  73 74 61 72 74 73 61 6d  70 6c 65 25 2b 70 73 65  |startsample%+pse|
0000b530  6c 65 63 74 72 25 0d 53  48 05 cc 0d 53 52 13 41  |lectr%.SH...SR.A|
0000b540  25 3d 73 74 61 72 74 73  61 6d 70 6c 65 25 0d 53  |%=startsample%.S|
0000b550  5c 1e 42 25 3d 73 74 61  72 74 73 61 6d 70 6c 65  |\.B%=startsample|
0000b560  25 2b 73 61 6d 70 6c 65  6c 65 6e 25 0d 53 66 05  |%+samplelen%.Sf.|
0000b570  cd 0d 53 70 16 e7 20 41  25 3e 42 25 20 8c 20 c8  |..Sp.. A%>B% . .|
0000b580  94 20 41 25 2c 42 25 0d  53 7a 15 e7 20 70 6f 6c  |. A%,B%.Sz.. pol|
0000b590  6c 65 64 62 25 21 31 36  3d 36 20 8c 0d 53 84 10  |ledb%!16=6 ..S..|
0000b5a0  c8 97 20 61 25 2c 62 25  2c 62 63 25 0d 53 8e 10  |.. a%,b%,bc%.S..|
0000b5b0  e7 20 73 74 79 70 65 25  3d 32 20 8c 0d 53 98 2a  |. stype%=2 ..S.*|
0000b5c0  f2 52 65 70 6f 72 74 45  72 72 28 22 4f 6e 6c 79  |.ReportErr("Only|
0000b5d0  20 66 6f 72 20 6c 69 6e  65 61 72 20 73 61 6d 70  | for linear samp|
0000b5e0  6c 65 73 2e 22 29 0d 53  a2 05 cc 0d 53 ac 13 74  |les.").S....S..t|
0000b5f0  65 6d 70 25 21 30 3d 77  66 61 64 65 68 25 0d 53  |emp%!0=wfadeh%.S|
0000b600  b6 0d 74 65 6d 70 25 21  34 3d 32 0d 53 c0 20 c8  |..temp%!4=2.S. .|
0000b610  99 22 57 69 6d 70 5f 47  65 74 49 63 6f 6e 53 74  |."Wimp_GetIconSt|
0000b620  61 74 65 22 2c 2c 74 65  6d 70 25 0d 53 ca 23 43  |ate",,temp%.S.#C|
0000b630  25 3d 26 31 30 30 30 30  30 30 30 2a bb 28 24 28  |%=&10000000*.($(|
0000b640  74 65 6d 70 25 21 32 38  29 29 2f 31 30 30 0d 53  |temp%!28))/100.S|
0000b650  d4 13 74 65 6d 70 25 21  30 3d 77 66 61 64 65 68  |..temp%!0=wfadeh|
0000b660  25 0d 53 de 0d 74 65 6d  70 25 21 34 3d 33 0d 53  |%.S..temp%!4=3.S|
0000b670  e8 20 c8 99 22 57 69 6d  70 5f 47 65 74 49 63 6f  |. .."Wimp_GetIco|
0000b680  6e 53 74 61 74 65 22 2c  2c 74 65 6d 70 25 0d 53  |nState",,temp%.S|
0000b690  f2 23 44 25 3d 26 31 30  30 30 30 30 30 30 2a bb  |.#D%=&10000000*.|
0000b6a0  28 24 28 74 65 6d 70 25  21 32 38 29 29 2f 31 30  |($(temp%!28))/10|
0000b6b0  30 0d 53 fc 10 e7 20 42  25 2d 41 25 3c 3e 30 20  |0.S... B%-A%<>0 |
0000b6c0  8c 0d 54 06 16 45 25 3d  28 44 25 2d 43 25 29 2f  |..T..E%=(D%-C%)/|
0000b6d0  28 42 25 2d 41 25 29 0d  54 10 0d 46 25 3d 73 74  |(B%-A%).T..F%=st|
0000b6e0  79 70 65 25 0d 54 1a 09  d6 66 61 64 65 0d 54 24  |ype%.T...fade.T$|
0000b6f0  0b f2 52 64 57 6f 72 6b  0d 54 2e 10 f2 4d 6f 64  |..RdWork.T...Mod|
0000b700  54 69 74 6c 65 28 30 29  0d 54 38 05 cd 0d 54 42  |Title(0).T8...TB|
0000b710  05 cd 0d 54 4c 33 e7 20  28 62 63 25 20 80 20 31  |...TL3. (bc% . 1|
0000b720  29 3d 30 20 8c 20 c8 99  22 57 69 6d 70 5f 43 72  |)=0 . .."Wimp_Cr|
0000b730  65 61 74 65 4d 65 6e 75  22 2c 2d 31 2c 2d 31 2c  |eateMenu",-1,-1,|
0000b740  2d 31 2c 2d 31 0d 54 56  05 cd 0d 54 60 05 e1 0d  |-1,-1.TV...T`...|
0000b750  54 6a 04 0d 54 74 12 dd  f2 55 73 65 72 5f 4d 65  |Tj..Tt...User_Me|
0000b760  73 73 61 67 65 0d 54 7e  2a e3 54 25 3d 30 b8 32  |ssage.T~*.T%=0.2|
0000b770  35 35 88 34 3a 6d 65 73  73 62 6b 25 21 54 25 3d  |55.4:messbk%!T%=|
0000b780  70 6f 6c 6c 65 64 62 25  21 54 25 3a ed 54 25 0d  |polledb%!T%:.T%.|
0000b790  54 88 12 6d 25 3d 70 6f  6c 6c 65 64 62 25 21 31  |T..m%=polledb%!1|
0000b7a0  36 0d 54 92 0b c8 8e 20  6d 25 20 ca 0d 54 9c 0d  |6.T.... m% ..T..|
0000b7b0  c9 20 30 3a f2 51 75 69  74 0d 54 a6 11 c9 20 31  |. 0:.Quit.T... 1|
0000b7c0  3a f2 44 61 74 61 53 61  76 65 0d 54 b0 10 c9 20  |:.DataSave.T... |
0000b7d0  32 3a f2 53 61 76 65 41  63 6b 0d 54 ba 11 c9 20  |2:.SaveAck.T... |
0000b7e0  33 3a f2 44 61 74 61 4c  6f 61 64 0d 54 c4 19 c9  |3:.DataLoad.T...|
0000b7f0  20 26 34 30 30 63 30 3a  f2 4d 65 6e 75 57 61 72  | &400c0:.MenuWar|
0000b800  6e 69 6e 67 0d 54 ce 20  c9 20 26 34 34 36 34 30  |ning.T. . &44640|
0000b810  3a 70 6f 6c 6c 65 64 62  25 21 38 3d 31 3a f2 4d  |:polledb%!8=1:.M|
0000b820  54 79 70 65 0d 54 d8 20  c9 20 26 34 34 36 34 31  |Type.T. . &44641|
0000b830  3a 70 6f 6c 6c 65 64 62  25 21 38 3d 32 3a f2 4d  |:polledb%!8=2:.M|
0000b840  54 79 70 65 0d 54 e2 20  c9 20 26 34 34 36 34 32  |Type.T. . &44642|
0000b850  3a 70 6f 6c 6c 65 64 62  25 21 38 3d 30 3a f2 4d  |:polledb%!8=0:.M|
0000b860  54 79 70 65 0d 54 ec 18  c9 20 26 34 34 36 34 33  |Type.T... &44643|
0000b870  3a f2 4d 65 73 73 47 65  74 4c 65 6e 0d 54 f6 18  |:.MessGetLen.T..|
0000b880  c9 20 26 34 34 36 34 34  3a f2 43 61 6c 63 75 6c  |. &44644:.Calcul|
0000b890  61 74 65 64 0d 55 00 05  cb 0d 55 0a 05 e1 0d 55  |ated.U....U....U|
0000b8a0  14 04 0d 55 1e 0e dd f2  44 61 74 61 4c 6f 61 64  |...U....DataLoad|
0000b8b0  0d 55 28 14 c8 8e 20 70  6f 6c 6c 65 64 62 25 21  |.U(... polledb%!|
0000b8c0  32 30 20 ca 0d 55 32 1c  c9 20 2d 32 2c 77 77 6f  |20 ..U2.. -2,wwo|
0000b8d0  72 6b 68 25 3a f2 4c 6f  61 64 53 61 6d 70 6c 65  |rkh%:.LoadSample|
0000b8e0  0d 55 3c 05 cb 0d 55 46  05 e1 0d 55 50 04 0d 55  |.U<...UF...UP..U|
0000b8f0  5a 10 dd f2 4d 65 73 73  47 65 74 4c 65 6e 0d 55  |Z...MessGetLen.U|
0000b900  64 36 c8 99 22 53 46 58  4d 50 5f 53 74 6f 70 22  |d6.."SFXMP_Stop"|
0000b910  2c 31 3a c8 99 22 53 46  58 4d 50 5f 53 74 6f 70  |,1:.."SFXMP_Stop|
0000b920  22 2c 32 3a c8 99 22 53  46 58 4d 50 5f 53 74 6f  |",2:.."SFXMP_Sto|
0000b930  70 22 2c 33 0d 55 6e 16  74 65 6d 70 25 21 32 30  |p",3.Un.temp%!20|
0000b940  3d 62 75 66 73 74 61 72  74 25 0d 55 78 1e 74 65  |=bufstart%.Ux.te|
0000b950  6d 70 25 21 32 34 3d 62  75 66 6c 65 6e 25 2d 63  |mp%!24=buflen%-c|
0000b960  6c 69 70 62 6c 65 6e 25  0d 55 82 15 f2 53 65 6e  |lipblen%.U...Sen|
0000b970  64 53 46 58 4d 28 26 34  34 36 34 35 29 0d 55 8c  |dSFXM(&44645).U.|
0000b980  05 e1 0d 55 96 04 0d 55  a0 10 dd f2 43 61 6c 63  |...U...U....Calc|
0000b990  75 6c 61 74 65 64 0d 55  aa 36 c8 99 22 53 46 58  |ulated.U.6.."SFX|
0000b9a0  4d 50 5f 53 74 6f 70 22  2c 31 3a c8 99 22 53 46  |MP_Stop",1:.."SF|
0000b9b0  58 4d 50 5f 53 74 6f 70  22 2c 32 3a c8 99 22 53  |XMP_Stop",2:.."S|
0000b9c0  46 58 4d 50 5f 53 74 6f  70 22 2c 33 0d 55 b4 1a  |FXMP_Stop",3.U..|
0000b9d0  73 74 61 72 74 73 61 6d  70 6c 65 25 3d 62 75 66  |startsample%=buf|
0000b9e0  73 74 61 72 74 25 0d 55  be 1a 73 61 6d 70 6c 65  |start%.U..sample|
0000b9f0  6c 65 6e 25 3d 70 6f 6c  6c 65 64 62 25 21 32 30  |len%=polledb%!20|
0000ba00  0d 55 c8 16 73 74 79 70  65 25 3d 70 6f 6c 6c 65  |.U..stype%=polle|
0000ba10  64 62 25 21 32 34 0d 55  d2 0d f2 41 64 6a 54 79  |db%!24.U...AdjTy|
0000ba20  70 65 4d 0d 55 dc 35 73  65 6c 65 63 74 6c 25 3d  |peM.U.5selectl%=|
0000ba30  2d 31 3a 73 65 6c 65 63  74 72 25 3d 2d 31 3a 6f  |-1:selectr%=-1:o|
0000ba40  73 65 6c 65 63 74 6c 25  3d 2d 31 3a 6f 73 65 6c  |selectl%=-1:osel|
0000ba50  65 63 74 72 25 3d 2d 31  0d 55 e6 1d 70 73 65 6c  |ectr%=-1.U..psel|
0000ba60  65 63 74 6c 25 3d 2d 31  3a 70 73 65 6c 65 63 74  |ectl%=-1:pselect|
0000ba70  72 25 3d 2d 31 0d 55 f0  20 70 6c 6f 6f 70 6c 25  |r%=-1.U. ploopl%|
0000ba80  3d 30 3a 70 6c 6f 6f 70  72 25 3d 73 61 6d 70 6c  |=0:ploopr%=sampl|
0000ba90  65 6c 65 6e 25 0d 55 fa  1f 24 28 77 77 6f 72 6b  |elen%.U..$(wwork|
0000baa0  25 21 37 32 29 3d 24 28  70 6f 6c 6c 65 64 62 25  |%!72)=$(polledb%|
0000bab0  2b 32 38 29 0d 56 04 13  73 61 6d 70 6c 65 73 61  |+28).V..samplesa|
0000bac0  76 65 64 25 3d 2d 31 0d  56 0e 0d f2 4f 70 65 6e  |ved%=-1.V...Open|
0000bad0  57 6f 72 6b 0d 56 18 0e  f2 43 68 65 63 6b 53 6f  |Work.V...CheckSo|
0000bae0  6e 67 0d 56 22 0c f2 5a  6f 6f 6d 41 6c 6c 0d 56  |ng.V"..ZoomAll.V|
0000baf0  2c 39 c8 99 22 58 57 69  6d 70 5f 53 65 74 43 61  |,9.."XWimp_SetCa|
0000bb00  72 65 74 50 6f 73 69 74  69 6f 6e 22 2c 77 6b 65  |retPosition",wke|
0000bb10  79 62 6f 61 72 64 68 25  2c 2d 31 2c 2d 31 2c 2d  |yboardh%,-1,-1,-|
0000bb20  31 2c 2d 31 2c 2d 31 0d  56 36 05 e1 0d 56 40 04  |1,-1,-1.V6...V@.|
0000bb30  0d 56 4a 12 dd f2 53 65  6e 64 53 46 58 4d 28 4d  |.VJ...SendSFXM(M|
0000bb40  25 29 0d 56 54 10 48 25  3d a4 47 65 74 53 46 58  |%).VT.H%=.GetSFX|
0000bb50  4d 48 0d 56 5e 0d e7 20  48 25 3c 3e 30 20 8c 0d  |MH.V^.. H%<>0 ..|
0000bb60  56 68 0f 74 65 6d 70 25  21 30 3d 32 35 36 0d 56  |Vh.temp%!0=256.V|
0000bb70  72 0d 74 65 6d 70 25 21  34 3d 30 0d 56 7c 0d 74  |r.temp%!4=0.V|.t|
0000bb80  65 6d 70 25 21 38 3d 30  0d 56 86 0e 74 65 6d 70  |emp%!8=0.V..temp|
0000bb90  25 21 31 32 3d 30 0d 56  90 0f 74 65 6d 70 25 21  |%!12=0.V..temp%!|
0000bba0  31 36 3d 4d 25 0d 56 9a  24 c8 99 22 57 69 6d 70  |16=M%.V.$.."Wimp|
0000bbb0  5f 53 65 6e 64 4d 65 73  73 61 67 65 22 2c 31 37  |_SendMessage",17|
0000bbc0  2c 74 65 6d 70 25 2c 48  25 0d 56 a4 05 cd 0d 56  |,temp%,H%.V....V|
0000bbd0  ae 05 e1 0d 56 b8 04 0d  56 c2 0e dd a4 47 65 74  |....V...V....Get|
0000bbe0  53 46 58 4d 48 0d 56 cc  3b c8 99 22 58 4f 53 5f  |SFXMH.V.;.."XOS_|
0000bbf0  52 65 61 64 56 61 72 56  61 6c 22 2c 22 53 46 58  |ReadVarVal","SFX|
0000bc00  4d 5f 54 61 73 6b 48 61  6e 64 6c 65 22 2c 74 65  |M_TaskHandle",te|
0000bc10  6d 70 32 25 2c 31 36 2c  30 2c 30 b8 2c 2c 41 25  |mp2%,16,0,0.,,A%|
0000bc20  0d 56 d6 10 74 65 6d 70  32 25 3f 41 25 3d 31 33  |.V..temp2%?A%=13|
0000bc30  0d 56 e0 21 e7 20 41 25  3d 30 20 8c 20 3d 30 20  |.V.!. A%=0 . =0 |
0000bc40  8b 20 3d a0 28 22 26 22  2b 24 74 65 6d 70 32 25  |. =.("&"+$temp2%|
0000bc50  29 0d 56 ea 04 0d 56 f4  10 dd f2 4c 6f 61 64 53  |).V...V....LoadS|
0000bc60  61 6d 70 6c 65 0d 56 fe  36 c8 99 22 53 46 58 4d  |ample.V.6.."SFXM|
0000bc70  50 5f 53 74 6f 70 22 2c  31 3a c8 99 22 53 46 58  |P_Stop",1:.."SFX|
0000bc80  4d 50 5f 53 74 6f 70 22  2c 32 3a c8 99 22 53 46  |MP_Stop",2:.."SF|
0000bc90  58 4d 50 5f 53 74 6f 70  22 2c 33 0d 57 08 1a f2  |XMP_Stop",3.W...|
0000bca0  4d 42 53 74 72 69 6e 67  28 70 6f 6c 6c 65 64 62  |MBString(polledb|
0000bcb0  25 2b 34 34 29 0d 57 12  1e 66 69 6c 65 74 6f 6c  |%+44).W..filetol|
0000bcc0  6f 61 64 24 3d 24 28 70  6f 6c 6c 65 64 62 25 2b  |oad$=$(polledb%+|
0000bcd0  34 34 29 0d 57 1c 19 66  69 6c 65 74 79 70 65 25  |44).W..filetype%|
0000bce0  3d 70 6f 6c 6c 65 64 62  25 21 34 30 0d 57 26 17  |=polledb%!40.W&.|
0000bcf0  e7 20 73 61 6d 70 6c 65  73 61 76 65 64 25 3d 2d  |. samplesaved%=-|
0000bd00  31 20 8c 0d 57 30 10 f2  4c 6f 61 64 53 61 6d 70  |1 ..W0..LoadSamp|
0000bd10  6c 65 32 0d 57 3a 05 cc  0d 57 44 5a 41 25 3d a4  |le2.W:...WDZA%=.|
0000bd20  43 6f 6e 66 69 72 6d 28  22 53 61 6d 70 6c 65 20  |Confirm("Sample |
0000bd30  68 61 73 20 62 65 65 6e  20 6d 6f 64 69 66 69 65  |has been modifie|
0000bd40  64 2e 20 41 72 65 20 79  6f 75 20 73 75 72 65 20  |d. Are you sure |
0000bd50  79 6f 75 20 77 61 6e 74  20 74 6f 20 6c 6f 61 64  |you want to load|
0000bd60  20 61 6e 6f 74 68 65 72  20 73 61 6d 70 6c 65 3f  | another sample?|
0000bd70  22 29 0d 57 4e 19 e7 20  41 25 3d 31 20 8c 20 f2  |").WN.. A%=1 . .|
0000bd80  4c 6f 61 64 53 61 6d 70  6c 65 32 0d 57 58 05 cd  |LoadSample2.WX..|
0000bd90  0d 57 62 11 6d 65 73 73  62 6b 25 21 30 3d 32 35  |.Wb.messbk%!0=25|
0000bda0  36 0d 57 6c 18 6d 65 73  73 62 6b 25 21 31 32 3d  |6.Wl.messbk%!12=|
0000bdb0  6d 65 73 73 62 6b 25 21  38 0d 57 76 10 6d 65 73  |messbk%!8.Wv.mes|
0000bdc0  73 62 6b 25 21 31 36 3d  34 0d 57 80 2d c8 99 22  |sbk%!16=4.W.-.."|
0000bdd0  57 69 6d 70 5f 53 65 6e  64 4d 65 73 73 61 67 65  |Wimp_SendMessage|
0000bde0  22 2c 31 37 2c 6d 65 73  73 62 6b 25 2c 6d 65 73  |",17,messbk%,mes|
0000bdf0  73 62 6b 25 21 34 0d 57  8a 05 e1 0d 57 94 04 0d  |sbk%!4.W....W...|
0000be00  57 9e 11 dd f2 4c 6f 61  64 53 61 6d 70 6c 65 32  |W....LoadSample2|
0000be10  0d 57 a8 07 ea 20 85 0d  57 b2 1a ee 20 85 20 ea  |.W... ..W... . .|
0000be20  20 f2 52 65 70 6f 72 74  45 72 72 28 f6 24 29 3a  | .ReportErr(.$):|
0000be30  e1 0d 57 bc 15 66 25 3d  8e 28 66 69 6c 65 74 6f  |..W..f%=.(fileto|
0000be40  6c 6f 61 64 24 29 0d 57  c6 0c e7 20 66 25 3d 30  |load$).W... f%=0|
0000be50  20 8c 0d 57 d0 10 73 61  6d 70 6c 65 6c 65 6e 25  | ..W..samplelen%|
0000be60  3d 31 0d 57 da 14 73 74  61 72 74 73 61 6d 70 6c  |=1.W..startsampl|
0000be70  65 25 3f 30 3d 30 0d 57  e4 14 73 74 61 72 74 73  |e%?0=0.W..starts|
0000be80  61 6d 70 6c 65 25 3f 31  3d 30 0d 57 ee 08 d9 23  |ample%?1=0.W...#|
0000be90  66 25 0d 57 f8 05 cc 0d  58 02 11 66 69 6c 65 6c  |f%.W....X..filel|
0000bea0  65 6e 25 3d a2 23 66 25  0d 58 0c 08 d9 23 66 25  |en%=.#f%.X...#f%|
0000beb0  0d 58 16 2f 63 25 3d a4  43 68 65 63 6b 4c 65 6e  |.X./c%=.CheckLen|
0000bec0  28 66 69 6c 65 6c 65 6e  25 2b 63 6c 69 70 62 6c  |(filelen%+clipbl|
0000bed0  65 6e 25 2c 22 4e 6f 20  72 6f 6f 6d 2e 22 29 0d  |en%,"No room.").|
0000bee0  58 20 0c e7 20 63 25 3d  30 20 8c 0d 58 2a 15 66  |X .. c%=0 ..X*.f|
0000bef0  25 3d 8e 28 66 69 6c 65  74 6f 6c 6f 61 64 24 29  |%=.(filetoload$)|
0000bf00  0d 58 34 1a 73 74 61 72  74 73 61 6d 70 6c 65 25  |.X4.startsample%|
0000bf10  3d 62 75 66 73 74 61 72  74 25 0d 58 3e 12 c8 8e  |=bufstart%.X>...|
0000bf20  20 66 69 6c 65 74 79 70  65 25 20 ca 0d 58 48 13  | filetype% ..XH.|
0000bf30  c9 20 26 63 62 35 3a f2  4c 6f 61 64 53 61 31 0d  |. &cb5:.LoadSa1.|
0000bf40  58 52 13 c9 20 26 64 33  63 3a f2 4c 6f 61 64 53  |XR.. &d3c:.LoadS|
0000bf50  61 32 0d 58 5c 13 c9 20  26 64 66 39 3a f2 4c 6f  |a2.X\.. &df9:.Lo|
0000bf60  61 64 53 61 33 0d 58 66  13 c9 20 26 65 64 30 3a  |adSa3.Xf.. &ed0:|
0000bf70  f2 4c 6f 61 64 53 61 34  0d 58 70 14 c9 20 26 64  |.LoadSa4.Xp.. &d|
0000bf80  33 62 3a f2 4c 6f 61 64  53 6f 6e 67 0d 58 7a 0e  |3b:.LoadSong.Xz.|
0000bf90  7f 3a f2 4c 6f 61 64 53  61 58 0d 58 84 05 cb 0d  |.:.LoadSaX.X....|
0000bfa0  58 8e 08 d9 23 66 25 0d  58 98 35 73 65 6c 65 63  |X...#f%.X.5selec|
0000bfb0  74 6c 25 3d 2d 31 3a 73  65 6c 65 63 74 72 25 3d  |tl%=-1:selectr%=|
0000bfc0  2d 31 3a 6f 73 65 6c 65  63 74 6c 25 3d 2d 31 3a  |-1:oselectl%=-1:|
0000bfd0  6f 73 65 6c 65 63 74 72  25 3d 2d 31 0d 58 a2 1d  |oselectr%=-1.X..|
0000bfe0  70 73 65 6c 65 63 74 6c  25 3d 2d 31 3a 70 73 65  |pselectl%=-1:pse|
0000bff0  6c 65 63 74 72 25 3d 2d  31 0d 58 ac 22 e7 20 66  |lectr%=-1.X.". f|
0000c000  69 6c 65 74 6f 6c 6f 61  64 24 3d 22 3c 57 69 6d  |iletoload$="<Wim|
0000c010  70 24 53 63 72 61 70 3e  22 20 8c 0d 58 b6 1c ff  |p$Scrap>" ..X...|
0000c020  28 22 64 65 6c 65 74 65  20 3c 57 69 6d 70 24 53  |("delete <Wimp$S|
0000c030  63 72 61 70 3e 22 29 0d  58 c0 1c 66 69 6c 65 74  |crap>").X..filet|
0000c040  6f 6c 6f 61 64 24 3d 66  69 6c 65 74 6f 6c 6f 61  |oload$=filetoloa|
0000c050  64 32 24 0d 58 ca 05 cd  0d 58 d4 1c 24 28 77 77  |d2$.X....X..$(ww|
0000c060  6f 72 6b 25 21 37 32 29  3d 66 69 6c 65 74 6f 6c  |ork%!72)=filetol|
0000c070  6f 61 64 24 0d 58 de 13  74 65 6d 70 25 21 30 3d  |oad$.X..temp%!0=|
0000c080  77 73 61 76 65 68 25 0d  58 e8 0d 74 65 6d 70 25  |wsaveh%.X..temp%|
0000c090  21 34 3d 31 0d 58 f2 20  c8 99 22 57 69 6d 70 5f  |!4=1.X. .."Wimp_|
0000c0a0  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |GetIconState",,t|
0000c0b0  65 6d 70 25 0d 58 fc 1e  24 28 21 28 74 65 6d 70  |emp%.X..$(!(temp|
0000c0c0  25 2b 32 38 29 29 3d 66  69 6c 65 74 6f 6c 6f 61  |%+28))=filetoloa|
0000c0d0  64 24 0d 59 06 4a e7 20  66 69 6c 65 74 79 70 65  |d$.Y.J. filetype|
0000c0e0  25 3d 26 64 33 62 20 8c  20 73 6f 6e 67 74 6f 6c  |%=&d3b . songtol|
0000c0f0  6f 61 64 24 3d 66 69 6c  65 74 6f 6c 6f 61 64 24  |oad$=filetoload$|
0000c100  20 8b 20 73 61 6d 70 6c  65 74 6f 6c 6f 61 64 24  | . sampletoload$|
0000c110  3d 66 69 6c 65 74 6f 6c  6f 61 64 24 0d 59 10 13  |=filetoload$.Y..|
0000c120  73 61 6d 70 6c 65 73 61  76 65 64 25 3d 2d 31 0d  |samplesaved%=-1.|
0000c130  59 1a 0e f2 43 68 65 63  6b 53 6f 6e 67 0d 59 24  |Y...CheckSong.Y$|
0000c140  0d f2 4f 70 65 6e 57 6f  72 6b 0d 59 2e 0c f2 5a  |..OpenWork.Y...Z|
0000c150  6f 6f 6d 41 6c 6c 0d 59  38 05 cd 0d 59 42 05 cd  |oomAll.Y8...YB..|
0000c160  0d 59 4c 05 e1 0d 59 56  04 0d 59 60 0e dd f2 4c  |.YL...YV..Y`...L|
0000c170  6f 61 64 53 6f 6e 67 0d  59 6a 0e f2 43 6c 65 61  |oadSong.Yj..Clea|
0000c180  72 53 6f 6e 67 0d 59 74  26 e8 23 66 25 2c 61 24  |rSong.Yt&.#f%,a$|
0000c190  2c 70 69 74 63 68 25 2c  73 6f 6e 67 6c 65 6e 25  |,pitch%,songlen%|
0000c1a0  2c 73 61 6d 70 6c 65 6c  65 6e 25 0d 59 7e 3b e7  |,samplelen%.Y~;.|
0000c1b0  20 61 24 3d 22 52 67 6e  6f 73 58 46 53 22 20 8c  | a$="RgnosXFS" .|
0000c1c0  20 73 6f 6e 67 72 65 70  25 3d 2d 31 3a 61 24 3d  | songrep%=-1:a$=|
0000c1d0  22 67 6e 6f 73 58 46 53  22 20 8b 20 73 6f 6e 67  |"gnosXFS" . song|
0000c1e0  72 65 70 25 3d 30 0d 59  88 08 54 25 3d 30 0d 59  |rep%=0.Y..T%=0.Y|
0000c1f0  92 12 c8 95 20 54 25 3c  73 6f 6e 67 6c 65 6e 25  |.... T%<songlen%|
0000c200  0d 59 9c 1a e8 23 66 25  2c 62 24 2c 41 25 2c 42  |.Y...#f%,b$,A%,B|
0000c210  25 2c 43 25 2c 44 25 2c  45 25 0d 59 a6 0c 44 25  |%,C%,D%,E%.Y..D%|
0000c220  3d 44 25 2a 31 36 0d 59  b0 1c e7 20 61 24 3c 3e  |=D%*16.Y... a$<>|
0000c230  22 67 6e 6f 73 58 46 53  22 20 8c 20 45 25 3d 32  |"gnosXFS" . E%=2|
0000c240  35 35 0d 59 ba 11 e7 20  41 25 3c 30 20 8c 20 41  |55.Y... A%<0 . A|
0000c250  25 3d 30 0d 59 c4 11 e7  20 42 25 3c 30 20 8c 20  |%=0.Y... B%<0 . |
0000c260  42 25 3d 30 0d 59 ce 23  e7 20 41 25 3e 73 61 6d  |B%=0.Y.#. A%>sam|
0000c270  70 6c 65 6c 65 6e 25 20  8c 20 41 25 3d 73 61 6d  |plelen% . A%=sam|
0000c280  70 6c 65 6c 65 6e 25 0d  59 d8 23 e7 20 42 25 3e  |plelen%.Y.#. B%>|
0000c290  73 61 6d 70 6c 65 6c 65  6e 25 20 8c 20 42 25 3d  |samplelen% . B%=|
0000c2a0  73 61 6d 70 6c 65 6c 65  6e 25 0d 59 e2 11 e7 20  |samplelen%.Y... |
0000c2b0  43 25 3c 31 20 8c 20 43  25 3d 31 0d 59 ec 15 e7  |C%<1 . C%=1.Y...|
0000c2c0  20 43 25 3e 32 35 35 20  8c 20 43 25 3d 32 35 35  | C%>255 . C%=255|
0000c2d0  0d 59 f6 11 e7 20 44 25  3c 31 20 8c 20 44 25 3d  |.Y... D%<1 . D%=|
0000c2e0  31 0d 5a 00 1b e7 20 44  25 3e 26 31 30 30 30 30  |1.Z... D%>&10000|
0000c2f0  20 8c 20 44 25 3d 26 31  30 30 30 30 0d 5a 0a 11  | . D%=&10000.Z..|
0000c300  e7 20 45 25 3c 32 20 8c  20 45 25 3d 32 0d 5a 14  |. E%<2 . E%=2.Z.|
0000c310  15 e7 20 45 25 3e 32 35  35 20 8c 20 45 25 3d 32  |.. E%>255 . E%=2|
0000c320  35 35 0d 5a 1e 1c e7 20  54 25 3c a8 28 73 6f 6e  |55.Z... T%<.(son|
0000c330  67 62 75 66 6c 65 6e 25  2f 33 32 29 20 8c 0d 5a  |gbuflen%/32) ..Z|
0000c340  28 1f 24 28 73 6f 6e 67  73 74 61 72 74 25 2b 54  |(.$(songstart%+T|
0000c350  25 2a 33 32 29 3d c0 62  24 2c 31 30 29 0d 5a 32  |%*32)=.b$,10).Z2|
0000c360  1c 73 6f 6e 67 73 74 61  72 74 25 21 28 54 25 2a  |.songstart%!(T%*|
0000c370  33 32 2b 31 32 29 3d 43  25 0d 5a 3c 1c 73 6f 6e  |32+12)=C%.Z<.son|
0000c380  67 73 74 61 72 74 25 21  28 54 25 2a 33 32 2b 31  |gstart%!(T%*32+1|
0000c390  36 29 3d 44 25 0d 5a 46  1c 73 6f 6e 67 73 74 61  |6)=D%.ZF.songsta|
0000c3a0  72 74 25 21 28 54 25 2a  33 32 2b 32 30 29 3d 45  |rt%!(T%*32+20)=E|
0000c3b0  25 0d 5a 50 1c 73 6f 6e  67 73 74 61 72 74 25 21  |%.ZP.songstart%!|
0000c3c0  28 54 25 2a 33 32 2b 32  34 29 3d 41 25 0d 5a 5a  |(T%*32+24)=A%.ZZ|
0000c3d0  1c 73 6f 6e 67 73 74 61  72 74 25 21 28 54 25 2a  |.songstart%!(T%*|
0000c3e0  33 32 2b 32 38 29 3d 42  25 0d 5a 64 05 cd 0d 5a  |32+28)=B%.Zd...Z|
0000c3f0  6e 09 54 25 2b 3d 31 0d  5a 78 05 ce 0d 5a 82 2c  |n.T%+=1.Zx...Z.,|
0000c400  c8 99 22 4f 53 5f 47 42  50 42 22 2c 34 2c 66 25  |.."OS_GBPB",4,f%|
0000c410  2c 73 74 61 72 74 73 61  6d 70 6c 65 25 2c 73 61  |,startsample%,sa|
0000c420  6d 70 6c 65 6c 65 6e 25  0d 5a 8c 0e f2 53 65 74  |mplelen%.Z...Set|
0000c430  50 69 74 63 68 32 0d 5a  96 0d f2 41 64 6a 53 6f  |Pitch2.Z...AdjSo|
0000c440  6e 67 4d 0d 5a a0 0b f2  52 64 53 6f 6e 67 0d 5a  |ngM.Z...RdSong.Z|
0000c450  aa 12 f2 53 65 74 53 6f  6e 67 45 78 74 65 6e 74  |...SetSongExtent|
0000c460  0d 5a b4 20 70 6c 6f 6f  70 6c 25 3d 30 3a 70 6c  |.Z. ploopl%=0:pl|
0000c470  6f 6f 70 72 25 3d 73 61  6d 70 6c 65 6c 65 6e 25  |oopr%=samplelen%|
0000c480  0d 5a be 05 e1 0d 5a c8  04 0d 5a d2 0d dd f2 4c  |.Z....Z...Z....L|
0000c490  6f 61 64 53 61 31 0d 5a  dc 1e c8 99 22 4f 53 5f  |oadSa1.Z...."OS_|
0000c4a0  47 42 50 42 22 2c 33 2c  66 25 2c 74 65 6d 70 25  |GBPB",3,f%,temp%|
0000c4b0  2c 34 2c 30 0d 5a e6 19  e7 20 21 74 65 6d 70 25  |,4,0.Z... !temp%|
0000c4c0  3c 3e 26 35 30 34 64 34  31 35 33 20 8c 0d 5a f0  |<>&504d4153 ..Z.|
0000c4d0  2c c8 99 22 4f 53 5f 47  42 50 42 22 2c 33 2c 66  |,.."OS_GBPB",3,f|
0000c4e0  25 2c 73 74 61 72 74 73  61 6d 70 6c 65 25 2c 66  |%,startsample%,f|
0000c4f0  69 6c 65 6c 65 6e 25 2c  30 0d 5a fa 17 73 61 6d  |ilelen%,0.Z..sam|
0000c500  70 6c 65 6c 65 6e 25 3d  66 69 6c 65 6c 65 6e 25  |plelen%=filelen%|
0000c510  0d 5b 04 17 70 6c 6f 6f  70 6c 25 3d 30 3a 70 6c  |.[..ploopl%=0:pl|
0000c520  6f 6f 70 72 25 3d 32 0d  5b 0e 05 cc 0d 5b 18 11  |oopr%=2.[....[..|
0000c530  73 61 6d 70 6c 65 6c 65  6e 25 3d 2d 31 0d 5b 22  |samplelen%=-1.["|
0000c540  0e 70 6c 6f 6f 70 6c 25  3d 2d 31 0d 5b 2c 0e 70  |.ploopl%=-1.[,.p|
0000c550  6c 6f 6f 70 72 25 3d 2d  31 0d 5b 36 0d 4e 25 3d  |loopr%=-1.[6.N%=|
0000c560  30 3a 54 25 3d 30 0d 5b  40 37 c8 95 20 4e 25 3d  |0:T%=0.[@7.. N%=|
0000c570  30 20 80 20 28 73 61 6d  70 6c 65 6c 65 6e 25 3d  |0 . (samplelen%=|
0000c580  2d 31 20 84 20 70 6c 6f  6f 70 6c 25 3d 2d 31 20  |-1 . ploopl%=-1 |
0000c590  84 20 70 6c 6f 6f 70 72  25 3d 2d 31 29 0d 5b 4a  |. ploopr%=-1).[J|
0000c5a0  26 c8 99 22 4f 53 5f 47  42 50 42 22 2c 33 2c 66  |&.."OS_GBPB",3,f|
0000c5b0  25 2c 74 65 6d 70 25 2c  34 2c 54 25 b8 2c 2c 2c  |%,temp%,4,T%.,,,|
0000c5c0  2c 54 25 0d 5b 54 0f c8  8e 20 21 74 65 6d 70 25  |,T%.[T... !temp%|
0000c5d0  20 ca 0d 5b 5e 42 c9 20  26 35 33 34 36 34 66 35  | ..[^B. &53464f5|
0000c5e0  32 3a c8 99 22 4f 53 5f  47 42 50 42 22 2c 33 2c  |2:.."OS_GBPB",3,|
0000c5f0  66 25 2c 74 65 6d 70 25  2c 38 2c 54 25 b8 2c 2c  |f%,temp%,8,T%.,,|
0000c600  2c 2c 54 25 3a 70 6c 6f  6f 70 6c 25 3d 74 65 6d  |,,T%:ploopl%=tem|
0000c610  70 25 21 34 0d 5b 68 42  c9 20 26 34 65 34 35 34  |p%!4.[hB. &4e454|
0000c620  63 35 32 3a c8 99 22 4f  53 5f 47 42 50 42 22 2c  |c52:.."OS_GBPB",|
0000c630  33 2c 66 25 2c 74 65 6d  70 25 2c 38 2c 54 25 b8  |3,f%,temp%,8,T%.|
0000c640  2c 2c 2c 2c 54 25 3a 70  6c 6f 6f 70 72 25 3d 74  |,,,,T%:ploopr%=t|
0000c650  65 6d 70 25 21 34 0d 5b  72 78 c9 20 26 35 34 34  |emp%!4.[rx. &544|
0000c660  31 34 34 35 33 3a c8 99  22 4f 53 5f 47 42 50 42  |14453:.."OS_GBPB|
0000c670  22 2c 33 2c 66 25 2c 74  65 6d 70 25 2c 34 2c 54  |",3,f%,temp%,4,T|
0000c680  25 b8 2c 2c 2c 2c 54 25  3a 73 61 6d 70 6c 65 6c  |%.,,,,T%:samplel|
0000c690  65 6e 25 3d 74 65 6d 70  25 21 30 3a c8 99 22 4f  |en%=temp%!0:.."O|
0000c6a0  53 5f 47 42 50 42 22 2c  33 2c 66 25 2c 73 74 61  |S_GBPB",3,f%,sta|
0000c6b0  72 74 73 61 6d 70 6c 65  25 2c 73 61 6d 70 6c 65  |rtsample%,sample|
0000c6c0  6c 65 6e 25 2c 54 25 b8  2c 2c 2c 2c 54 25 0d 5b  |len%,T%.,,,,T%.[|
0000c6d0  7c 05 cb 0d 5b 86 19 c8  99 22 4f 53 5f 41 72 67  ||...[...."OS_Arg|
0000c6e0  73 22 2c 32 35 34 2c 66  25 b8 4e 25 0d 5b 90 10  |s",254,f%.N%.[..|
0000c6f0  4e 25 3d 4e 25 80 28 31  3c 3c 39 29 0d 5b 9a 05  |N%=N%.(1<<9).[..|
0000c700  ce 0d 5b a4 4f e7 20 73  61 6d 70 6c 65 6c 65 6e  |..[.O. samplelen|
0000c710  25 3d 2d 31 20 8c 20 f2  52 65 70 6f 72 74 45 72  |%=-1 . .ReportEr|
0000c720  72 28 22 42 61 64 20 43  68 75 6e 6b 2e 22 29 3a  |r("Bad Chunk."):|
0000c730  73 61 6d 70 6c 65 6c 65  6e 25 3d 31 3a 70 6c 6f  |samplelen%=1:plo|
0000c740  6f 70 6c 25 3d 30 3a 70  6c 6f 6f 70 72 25 3d 31  |opl%=0:ploopr%=1|
0000c750  0d 5b ae 55 e7 20 70 6c  6f 6f 70 6c 25 3d 2d 31  |.[.U. ploopl%=-1|
0000c760  20 84 20 70 6c 6f 6f 70  72 25 3d 2d 31 20 8c 20  | . ploopr%=-1 . |
0000c770  f2 52 65 70 6f 72 74 45  72 72 28 22 42 61 64 20  |.ReportErr("Bad |
0000c780  43 68 75 6e 6b 2e 22 29  3a 70 6c 6f 6f 70 6c 25  |Chunk."):ploopl%|
0000c790  3d 30 3a 70 6c 6f 6f 70  72 25 3d 73 61 6d 70 6c  |=0:ploopr%=sampl|
0000c7a0  65 6c 65 6e 25 0d 5b b8  1b 70 6c 6f 6f 70 72 25  |elen%.[..ploopr%|
0000c7b0  3d 70 6c 6f 6f 70 6c 25  2b 70 6c 6f 6f 70 72 25  |=ploopl%+ploopr%|
0000c7c0  0d 5b c2 05 cd 0d 5b cc  0c 73 74 79 70 65 25 3d  |.[....[..stype%=|
0000c7d0  32 0d 5b d6 0d f2 41 64  6a 54 79 70 65 4d 0d 5b  |2.[...AdjTypeM.[|
0000c7e0  e0 37 e7 20 70 6c 6f 6f  70 6c 25 3d 30 20 80 20  |.7. ploopl%=0 . |
0000c7f0  70 6c 6f 6f 70 72 25 3d  32 20 8c 20 70 6c 61 79  |ploopr%=2 . play|
0000c800  74 79 70 65 25 3d 30 20  8b 20 70 6c 61 79 74 79  |type%=0 . playty|
0000c810  70 65 25 3d 33 0d 5b ea  0c f2 41 64 6a 4b 65 79  |pe%=3.[...AdjKey|
0000c820  73 0d 5b f4 1b e7 20 70  6c 6f 6f 70 6c 25 3c 30  |s.[... ploopl%<0|
0000c830  20 8c 20 70 6c 6f 6f 70  6c 25 3d 30 0d 5b fe 40  | . ploopl%=0.[.@|
0000c840  e7 20 70 6c 6f 6f 70 6c  25 3e 73 61 6d 70 6c 65  |. ploopl%>sample|
0000c850  6c 65 6e 25 20 8c 20 70  6c 6f 6f 70 6c 25 3d 73  |len% . ploopl%=s|
0000c860  61 6d 70 6c 65 6c 65 6e  25 3a 70 6c 6f 6f 70 72  |amplelen%:ploopr|
0000c870  25 3d 73 61 6d 70 6c 65  6c 65 6e 25 0d 5c 08 2d  |%=samplelen%.\.-|
0000c880  e7 20 70 6c 6f 6f 70 72  25 3e 73 61 6d 70 6c 65  |. ploopr%>sample|
0000c890  6c 65 6e 25 20 8c 20 70  6c 6f 6f 70 72 25 3d 73  |len% . ploopr%=s|
0000c8a0  61 6d 70 6c 65 6c 65 6e  25 0d 5c 12 25 e7 20 70  |amplelen%.\.%. p|
0000c8b0  6c 6f 6f 70 72 25 3c 30  20 8c 20 70 6c 6f 6f 70  |loopr%<0 . ploop|
0000c8c0  6c 25 3d 30 3a 70 6c 6f  6f 70 72 25 3d 30 0d 5c  |l%=0:ploopr%=0.\|
0000c8d0  1c 27 e7 20 70 6c 6f 6f  70 72 25 3c 70 6c 6f 6f  |.'. ploopr%<ploo|
0000c8e0  70 6c 25 20 8c 20 70 6c  6f 6f 70 72 25 3d 70 6c  |pl% . ploopr%=pl|
0000c8f0  6f 6f 70 6c 25 0d 5c 26  05 cd 0d 5c 30 05 e1 0d  |oopl%.\&...\0...|
0000c900  5c 3a 04 0d 5c 44 0d dd  f2 4c 6f 61 64 53 61 32  |\:..\D...LoadSa2|
0000c910  0d 5c 4e 25 c8 99 22 4f  53 5f 47 42 50 42 22 2c  |.\N%.."OS_GBPB",|
0000c920  33 2c 66 25 2c 73 74 61  72 74 73 61 6d 70 6c 65  |3,f%,startsample|
0000c930  25 2c 31 2c 30 0d 5c 58  18 70 69 74 63 68 25 3d  |%,1,0.\X.pitch%=|
0000c940  3f 73 74 61 72 74 73 61  6d 70 6c 65 25 0d 5c 62  |?startsample%.\b|
0000c950  0e f2 53 65 74 50 69 74  63 68 32 0d 5c 6c 2e c8  |..SetPitch2.\l..|
0000c960  99 22 4f 53 5f 47 42 50  42 22 2c 33 2c 66 25 2c  |."OS_GBPB",3,f%,|
0000c970  73 74 61 72 74 73 61 6d  70 6c 65 25 2c 66 69 6c  |startsample%,fil|
0000c980  65 6c 65 6e 25 2d 31 2c  31 0d 5c 76 19 73 61 6d  |elen%-1,1.\v.sam|
0000c990  70 6c 65 6c 65 6e 25 3d  66 69 6c 65 6c 65 6e 25  |plelen%=filelen%|
0000c9a0  2d 31 0d 5c 80 20 70 6c  6f 6f 70 6c 25 3d 30 3a  |-1.\. ploopl%=0:|
0000c9b0  70 6c 6f 6f 70 72 25 3d  73 61 6d 70 6c 65 6c 65  |ploopr%=samplele|
0000c9c0  6e 25 0d 5c 8a 0c 73 74  79 70 65 25 3d 30 0d 5c  |n%.\..stype%=0.\|
0000c9d0  94 0d f2 41 64 6a 54 79  70 65 4d 0d 5c 9e 05 e1  |...AdjTypeM.\...|
0000c9e0  0d 5c a8 04 0d 5c b2 0d  dd f2 4c 6f 61 64 53 61  |.\...\....LoadSa|
0000c9f0  33 0d 5c bc 1f c8 99 22  4f 53 5f 47 42 50 42 22  |3.\...."OS_GBPB"|
0000ca00  2c 33 2c 66 25 2c 74 65  6d 70 25 2c 34 2c 32 30  |,3,f%,temp%,4,20|
0000ca10  0d 5c c6 16 73 61 6d 70  6c 65 6c 65 6e 25 3d 74  |.\..samplelen%=t|
0000ca20  65 6d 70 25 21 30 0d 5c  d0 1f c8 99 22 4f 53 5f  |emp%!0.\...."OS_|
0000ca30  47 42 50 42 22 2c 33 2c  66 25 2c 74 65 6d 70 25  |GBPB",3,f%,temp%|
0000ca40  2c 34 2c 32 34 0d 5c da  19 70 6c 6f 6f 70 6c 25  |,4,24.\..ploopl%|
0000ca50  3d 28 74 65 6d 70 25 21  30 29 2a 32 35 36 0d 5c  |=(temp%!0)*256.\|
0000ca60  e4 1f c8 99 22 4f 53 5f  47 42 50 42 22 2c 33 2c  |...."OS_GBPB",3,|
0000ca70  66 25 2c 74 65 6d 70 25  2c 34 2c 32 38 0d 5c ee  |f%,temp%,4,28.\.|
0000ca80  19 70 6c 6f 6f 70 72 25  3d 28 74 65 6d 70 25 21  |.ploopr%=(temp%!|
0000ca90  30 29 2a 32 35 36 0d 5c  f8 30 c8 99 22 4f 53 5f  |0)*256.\.0.."OS_|
0000caa0  47 42 50 42 22 2c 33 2c  66 25 2c 73 74 61 72 74  |GBPB",3,f%,start|
0000cab0  73 61 6d 70 6c 65 25 2c  73 61 6d 70 6c 65 6c 65  |sample%,samplele|
0000cac0  6e 25 2c 35 34 34 0d 5d  02 0c 73 74 79 70 65 25  |n%,544.]..stype%|
0000cad0  3d 30 0d 5d 0c 0d f2 41  64 6a 54 79 70 65 4d 0d  |=0.]...AdjTypeM.|
0000cae0  5d 16 31 e7 20 70 6c 6f  6f 70 6c 25 3d 70 6c 6f  |].1. ploopl%=plo|
0000caf0  6f 70 72 25 20 8c 20 70  6c 61 79 74 79 70 65 25  |opr% . playtype%|
0000cb00  3d 30 20 8b 20 70 6c 61  79 74 79 70 65 25 3d 33  |=0 . playtype%=3|
0000cb10  0d 5d 20 0c f2 41 64 6a  4b 65 79 73 0d 5d 2a 1b  |.] ..AdjKeys.]*.|
0000cb20  e7 20 70 6c 6f 6f 70 6c  25 3c 30 20 8c 20 70 6c  |. ploopl%<0 . pl|
0000cb30  6f 6f 70 6c 25 3d 30 0d  5d 34 40 e7 20 70 6c 6f  |oopl%=0.]4@. plo|
0000cb40  6f 70 6c 25 3e 73 61 6d  70 6c 65 6c 65 6e 25 20  |opl%>samplelen% |
0000cb50  8c 20 70 6c 6f 6f 70 6c  25 3d 73 61 6d 70 6c 65  |. ploopl%=sample|
0000cb60  6c 65 6e 25 3a 70 6c 6f  6f 70 72 25 3d 73 61 6d  |len%:ploopr%=sam|
0000cb70  70 6c 65 6c 65 6e 25 0d  5d 3e 2d e7 20 70 6c 6f  |plelen%.]>-. plo|
0000cb80  6f 70 72 25 3e 73 61 6d  70 6c 65 6c 65 6e 25 20  |opr%>samplelen% |
0000cb90  8c 20 70 6c 6f 6f 70 72  25 3d 73 61 6d 70 6c 65  |. ploopr%=sample|
0000cba0  6c 65 6e 25 0d 5d 48 25  e7 20 70 6c 6f 6f 70 72  |len%.]H%. ploopr|
0000cbb0  25 3c 30 20 8c 20 70 6c  6f 6f 70 6c 25 3d 30 3a  |%<0 . ploopl%=0:|
0000cbc0  70 6c 6f 6f 70 72 25 3d  30 0d 5d 52 27 e7 20 70  |ploopr%=0.]R'. p|
0000cbd0  6c 6f 6f 70 72 25 3c 70  6c 6f 6f 70 6c 25 20 8c  |loopr%<ploopl% .|
0000cbe0  20 70 6c 6f 6f 70 72 25  3d 70 6c 6f 6f 70 6c 25  | ploopr%=ploopl%|
0000cbf0  0d 5d 5c 05 e1 0d 5d 66  04 0d 5d 70 0d dd f2 4c  |.]\...]f..]p...L|
0000cc00  6f 61 64 53 61 34 0d 5d  7a 2c c8 99 22 4f 53 5f  |oadSa4.]z,.."OS_|
0000cc10  47 42 50 42 22 2c 33 2c  66 25 2c 73 74 61 72 74  |GBPB",3,f%,start|
0000cc20  73 61 6d 70 6c 65 25 2c  66 69 6c 65 6c 65 6e 25  |sample%,filelen%|
0000cc30  2c 30 0d 5d 84 17 73 61  6d 70 6c 65 6c 65 6e 25  |,0.]..samplelen%|
0000cc40  3d 66 69 6c 65 6c 65 6e  25 0d 5d 8e 20 70 6c 6f  |=filelen%.]. plo|
0000cc50  6f 70 6c 25 3d 30 3a 70  6c 6f 6f 70 72 25 3d 73  |opl%=0:ploopr%=s|
0000cc60  61 6d 70 6c 65 6c 65 6e  25 0d 5d 98 0c 73 74 79  |amplelen%.]..sty|
0000cc70  70 65 25 3d 31 0d 5d a2  0d f2 41 64 6a 54 79 70  |pe%=1.]...AdjTyp|
0000cc80  65 4d 0d 5d ac 05 e1 0d  5d b6 04 0d 5d c0 0d dd  |eM.]....]...]...|
0000cc90  f2 4c 6f 61 64 53 61 58  0d 5d ca 2c c8 99 22 4f  |.LoadSaX.].,.."O|
0000cca0  53 5f 47 42 50 42 22 2c  33 2c 66 25 2c 73 74 61  |S_GBPB",3,f%,sta|
0000ccb0  72 74 73 61 6d 70 6c 65  25 2c 66 69 6c 65 6c 65  |rtsample%,filele|
0000ccc0  6e 25 2c 30 0d 5d d4 17  73 61 6d 70 6c 65 6c 65  |n%,0.]..samplele|
0000ccd0  6e 25 3d 66 69 6c 65 6c  65 6e 25 0d 5d de 20 70  |n%=filelen%.]. p|
0000cce0  6c 6f 6f 70 6c 25 3d 30  3a 70 6c 6f 6f 70 72 25  |loopl%=0:ploopr%|
0000ccf0  3d 73 61 6d 70 6c 65 6c  65 6e 25 0d 5d e8 05 e1  |=samplelen%.]...|
0000cd00  0d 5d f2 04 0d 5d fc 0d  dd f2 41 64 6a 4b 65 79  |.]...]....AdjKey|
0000cd10  73 0d 5e 06 17 74 65 6d  70 25 21 30 3d 77 6b 65  |s.^..temp%!0=wke|
0000cd20  79 62 6f 61 72 64 68 25  0d 5e 10 0e 74 65 6d 70  |yboardh%.^..temp|
0000cd30  25 21 34 3d 34 33 0d 5e  1a 2d e7 20 70 6c 61 79  |%!4=43.^.-. play|
0000cd40  74 79 70 65 25 3d 30 20  8c 20 74 65 6d 70 25 21  |type%=0 . temp%!|
0000cd50  38 3d 31 3c 3c 32 31 20  8b 20 74 65 6d 70 25 21  |8=1<<21 . temp%!|
0000cd60  38 3d 30 0d 5e 24 12 74  65 6d 70 25 21 31 32 3d  |8=0.^$.temp%!12=|
0000cd70  31 3c 3c 32 31 0d 5e 2e  20 c8 99 22 57 69 6d 70  |1<<21.^. .."Wimp|
0000cd80  5f 53 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_SetIconState",,|
0000cd90  74 65 6d 70 25 0d 5e 38  0e 74 65 6d 70 25 21 34  |temp%.^8.temp%!4|
0000cda0  3d 34 34 0d 5e 42 2d e7  20 70 6c 61 79 74 79 70  |=44.^B-. playtyp|
0000cdb0  65 25 3d 31 20 8c 20 74  65 6d 70 25 21 38 3d 31  |e%=1 . temp%!8=1|
0000cdc0  3c 3c 32 31 20 8b 20 74  65 6d 70 25 21 38 3d 30  |<<21 . temp%!8=0|
0000cdd0  0d 5e 4c 12 74 65 6d 70  25 21 31 32 3d 31 3c 3c  |.^L.temp%!12=1<<|
0000cde0  32 31 0d 5e 56 20 c8 99  22 57 69 6d 70 5f 53 65  |21.^V .."Wimp_Se|
0000cdf0  74 49 63 6f 6e 53 74 61  74 65 22 2c 2c 74 65 6d  |tIconState",,tem|
0000ce00  70 25 0d 5e 60 0e 74 65  6d 70 25 21 34 3d 34 35  |p%.^`.temp%!4=45|
0000ce10  0d 5e 6a 2d e7 20 70 6c  61 79 74 79 70 65 25 3d  |.^j-. playtype%=|
0000ce20  32 20 8c 20 74 65 6d 70  25 21 38 3d 31 3c 3c 32  |2 . temp%!8=1<<2|
0000ce30  31 20 8b 20 74 65 6d 70  25 21 38 3d 30 0d 5e 74  |1 . temp%!8=0.^t|
0000ce40  12 74 65 6d 70 25 21 31  32 3d 31 3c 3c 32 31 0d  |.temp%!12=1<<21.|
0000ce50  5e 7e 20 c8 99 22 57 69  6d 70 5f 53 65 74 49 63  |^~ .."Wimp_SetIc|
0000ce60  6f 6e 53 74 61 74 65 22  2c 2c 74 65 6d 70 25 0d  |onState",,temp%.|
0000ce70  5e 88 0e 74 65 6d 70 25  21 34 3d 34 36 0d 5e 92  |^..temp%!4=46.^.|
0000ce80  2d e7 20 70 6c 61 79 74  79 70 65 25 3d 33 20 8c  |-. playtype%=3 .|
0000ce90  20 74 65 6d 70 25 21 38  3d 31 3c 3c 32 31 20 8b  | temp%!8=1<<21 .|
0000cea0  20 74 65 6d 70 25 21 38  3d 30 0d 5e 9c 12 74 65  | temp%!8=0.^..te|
0000ceb0  6d 70 25 21 31 32 3d 31  3c 3c 32 31 0d 5e a6 20  |mp%!12=1<<21.^. |
0000cec0  c8 99 22 57 69 6d 70 5f  53 65 74 49 63 6f 6e 53  |.."Wimp_SetIconS|
0000ced0  74 61 74 65 22 2c 2c 74  65 6d 70 25 0d 5e b0 05  |tate",,temp%.^..|
0000cee0  e1 0d 5e ba 04 0d 5e c4  11 dd f2 4d 65 6e 75 57  |..^...^....MenuW|
0000cef0  61 72 6e 69 6e 67 0d 5e  ce 4e e7 20 28 6c 61 73  |arning.^.N. (las|
0000cf00  74 6d 65 6e 75 25 3d 77  6f 72 6b 6d 65 6e 75 25  |tmenu%=workmenu%|
0000cf10  29 20 80 20 28 70 6f 6c  6c 65 64 62 25 21 33 32  |) . (polledb%!32|
0000cf20  3d 30 29 20 80 20 28 70  6f 6c 6c 65 64 62 25 21  |=0) . (polledb%!|
0000cf30  33 36 3d 30 29 20 8c 20  f2 4e 65 77 4d 65 6e 75  |36=0) . .NewMenu|
0000cf40  49 6e 66 6f 0d 5e d8 4f  e7 20 28 6c 61 73 74 6d  |Info.^.O. (lastm|
0000cf50  65 6e 75 25 3d 77 6f 72  6b 6d 65 6e 75 25 29 20  |enu%=workmenu%) |
0000cf60  80 20 28 70 6f 6c 6c 65  64 62 25 21 33 32 3d 31  |. (polledb%!32=1|
0000cf70  29 20 80 20 28 70 6f 6c  6c 65 64 62 25 21 34 30  |) . (polledb%!40|
0000cf80  3d 2d 31 29 20 8c 20 f2  4e 65 77 4d 65 6e 75 53  |=-1) . .NewMenuS|
0000cf90  61 76 65 0d 5e e2 51 e7  20 28 6c 61 73 74 6d 65  |ave.^.Q. (lastme|
0000cfa0  6e 75 25 3d 77 6f 72 6b  6d 65 6e 75 25 29 20 80  |nu%=workmenu%) .|
0000cfb0  20 28 70 6f 6c 6c 65 64  62 25 21 33 32 3d 31 29  | (polledb%!32=1)|
0000cfc0  20 80 20 28 70 6f 6c 6c  65 64 62 25 21 34 30 3c  | . (polledb%!40<|
0000cfd0  3e 2d 31 29 20 8c 20 f2  4e 65 77 4d 65 6e 75 57  |>-1) . .NewMenuW|
0000cfe0  53 61 76 65 0d 5e ec 51  e7 20 28 6c 61 73 74 6d  |Save.^.Q. (lastm|
0000cff0  65 6e 75 25 3d 77 6f 72  6b 6d 65 6e 75 25 29 20  |enu%=workmenu%) |
0000d000  80 20 28 70 6f 6c 6c 65  64 62 25 21 33 32 3d 37  |. (polledb%!32=7|
0000d010  29 20 80 20 28 70 6f 6c  6c 65 64 62 25 21 33 36  |) . (polledb%!36|
0000d020  3c 3e 2d 31 29 20 8c 20  f2 4e 65 77 4d 65 6e 75  |<>-1) . .NewMenu|
0000d030  53 53 61 76 65 0d 5e f6  05 e1 0d 5f 00 04 0d 5f  |SSave.^...._..._|
0000d040  0a 11 dd f2 4e 65 77 4d  65 6e 75 53 61 76 65 0d  |....NewMenuSave.|
0000d050  5f 14 14 c8 8e 20 70 6f  6c 6c 65 64 62 25 21 33  |_.... polledb%!3|
0000d060  36 20 ca 0d 5f 1e 25 c9  20 30 3a 73 61 76 65 64  |6 .._.%. 0:saved|
0000d070  61 74 61 25 3d 30 3a 24  73 61 76 65 6d 65 6e 75  |ata%=0:$savemenu|
0000d080  32 25 3d 22 41 6c 6c 22  0d 5f 28 2a c9 20 31 3a  |2%="All"._(*. 1:|
0000d090  73 61 76 65 64 61 74 61  25 3d 31 3a 24 73 61 76  |savedata%=1:$sav|
0000d0a0  65 6d 65 6e 75 32 25 3d  22 53 65 6c 65 63 74 65  |emenu2%="Selecte|
0000d0b0  64 22 0d 5f 32 2b c9 20  32 3a 73 61 76 65 64 61  |d"._2+. 2:saveda|
0000d0c0  74 61 25 3d 32 3a 24 73  61 76 65 6d 65 6e 75 32  |ta%=2:$savemenu2|
0000d0d0  25 3d 22 43 6c 69 70 62  6f 61 72 64 22 0d 5f 3c  |%="Clipboard"._<|
0000d0e0  05 cb 0d 5f 46 3f c8 99  22 57 69 6d 70 5f 43 72  |..._F?.."Wimp_Cr|
0000d0f0  65 61 74 65 53 75 62 4d  65 6e 75 22 2c 2c 70 6f  |eateSubMenu",,po|
0000d100  6c 6c 65 64 62 25 21 32  30 2c 70 6f 6c 6c 65 64  |lledb%!20,polled|
0000d110  62 25 21 32 34 2c 70 6f  6c 6c 65 64 62 25 21 32  |b%!24,polledb%!2|
0000d120  38 0d 5f 50 05 e1 0d 5f  5a 04 0d 5f 64 12 dd f2  |8._P..._Z.._d...|
0000d130  4e 65 77 4d 65 6e 75 57  53 61 76 65 0d 5f 6e 14  |NewMenuWSave._n.|
0000d140  c8 8e 20 70 6f 6c 6c 65  64 62 25 21 34 30 20 ca  |.. polledb%!40 .|
0000d150  0d 5f 78 25 c9 20 30 3a  73 61 76 65 64 74 25 3d  |._x%. 0:savedt%=|
0000d160  30 3a f2 43 68 53 61 76  65 57 69 6e 28 73 61 76  |0:.ChSaveWin(sav|
0000d170  65 64 74 25 29 0d 5f 82  25 c9 20 31 3a 73 61 76  |edt%)._.%. 1:sav|
0000d180  65 64 74 25 3d 31 3a f2  43 68 53 61 76 65 57 69  |edt%=1:.ChSaveWi|
0000d190  6e 28 73 61 76 65 64 74  25 29 0d 5f 8c 25 c9 20  |n(savedt%)._.%. |
0000d1a0  32 3a 73 61 76 65 64 74  25 3d 32 3a f2 43 68 53  |2:savedt%=2:.ChS|
0000d1b0  61 76 65 57 69 6e 28 73  61 76 65 64 74 25 29 0d  |aveWin(savedt%).|
0000d1c0  5f 96 25 c9 20 33 3a 73  61 76 65 64 74 25 3d 33  |_.%. 3:savedt%=3|
0000d1d0  3a f2 43 68 53 61 76 65  57 69 6e 28 73 61 76 65  |:.ChSaveWin(save|
0000d1e0  64 74 25 29 0d 5f a0 25  c9 20 34 3a 73 61 76 65  |dt%)._.%. 4:save|
0000d1f0  64 74 25 3d 34 3a f2 43  68 53 61 76 65 57 69 6e  |dt%=4:.ChSaveWin|
0000d200  28 73 61 76 65 64 74 25  29 0d 5f aa 25 c9 20 35  |(savedt%)._.%. 5|
0000d210  3a 73 61 76 65 64 74 25  3d 35 3a f2 43 68 53 61  |:savedt%=5:.ChSa|
0000d220  76 65 57 69 6e 28 73 61  76 65 64 74 25 29 0d 5f  |veWin(savedt%)._|
0000d230  b4 25 c9 20 36 3a 73 61  76 65 64 74 25 3d 36 3a  |.%. 6:savedt%=6:|
0000d240  f2 43 68 53 61 76 65 57  69 6e 28 73 61 76 65 64  |.ChSaveWin(saved|
0000d250  74 25 29 0d 5f be 05 cb  0d 5f c8 3f c8 99 22 57  |t%)._...._.?.."W|
0000d260  69 6d 70 5f 43 72 65 61  74 65 53 75 62 4d 65 6e  |imp_CreateSubMen|
0000d270  75 22 2c 2c 70 6f 6c 6c  65 64 62 25 21 32 30 2c  |u",,polledb%!20,|
0000d280  70 6f 6c 6c 65 64 62 25  21 32 34 2c 70 6f 6c 6c  |polledb%!24,poll|
0000d290  65 64 62 25 21 32 38 0d  5f d2 05 e1 0d 5f dc 04  |edb%!28._...._..|
0000d2a0  0d 5f e6 13 dd f2 43 68  53 61 76 65 57 69 6e 28  |._....ChSaveWin(|
0000d2b0  77 25 29 0d 5f f0 10 41  25 3d 77 73 61 76 65 25  |w%)._..A%=wsave%|
0000d2c0  21 37 32 0d 5f fa 13 74  65 6d 70 25 21 30 3d 77  |!72._..temp%!0=w|
0000d2d0  73 61 76 65 68 25 0d 60  04 0d 74 65 6d 70 25 21  |saveh%.`..temp%!|
0000d2e0  34 3d 30 0d 60 0e 20 c8  99 22 57 69 6d 70 5f 47  |4=0.`. .."Wimp_G|
0000d2f0  65 74 49 63 6f 6e 53 74  61 74 65 22 2c 2c 74 65  |etIconState",,te|
0000d300  6d 70 25 0d 60 18 0f 42  25 3d 74 65 6d 70 25 21  |mp%.`..B%=temp%!|
0000d310  32 38 0d 60 22 13 74 65  6d 70 25 21 30 3d 77 73  |28.`".temp%!0=ws|
0000d320  61 76 65 68 25 0d 60 2c  0d 74 65 6d 70 25 21 34  |aveh%.`,.temp%!4|
0000d330  3d 31 0d 60 36 20 c8 99  22 57 69 6d 70 5f 47 65  |=1.`6 .."Wimp_Ge|
0000d340  74 49 63 6f 6e 53 74 61  74 65 22 2c 2c 74 65 6d  |tIconState",,tem|
0000d350  70 25 0d 60 40 0f 43 25  3d 74 65 6d 70 25 21 32  |p%.`@.C%=temp%!2|
0000d360  38 0d 60 4a 0b c8 8e 20  77 25 20 ca 0d 60 54 36  |8.`J... w% ..`T6|
0000d370  c9 20 30 3a 24 41 25 3d  22 54 72 61 63 6b 65 72  |. 0:$A%="Tracker|
0000d380  22 3a 24 42 25 3d 22 66  69 6c 65 5f 63 62 35 22  |":$B%="file_cb5"|
0000d390  3a 24 43 25 3d 73 61 6d  70 6c 65 74 6f 6c 6f 61  |:$C%=sampletoloa|
0000d3a0  64 24 0d 60 5e 3e c9 20  31 3a 24 41 25 3d 22 54  |d$.`^>. 1:$A%="T|
0000d3b0  72 61 63 6b 65 72 5f 4e  6f 48 65 61 64 72 22 3a  |racker_NoHeadr":|
0000d3c0  24 42 25 3d 22 66 69 6c  65 5f 63 62 35 22 3a 24  |$B%="file_cb5":$|
0000d3d0  43 25 3d 73 61 6d 70 6c  65 74 6f 6c 6f 61 64 24  |C%=sampletoload$|
0000d3e0  0d 60 68 37 c9 20 32 3a  24 41 25 3d 22 41 72 6d  |.`h7. 2:$A%="Arm|
0000d3f0  61 64 65 75 73 22 3a 24  42 25 3d 22 66 69 6c 65  |adeus":$B%="file|
0000d400  5f 64 33 63 22 3a 24 43  25 3d 73 61 6d 70 6c 65  |_d3c":$C%=sample|
0000d410  74 6f 6c 6f 61 64 24 0d  60 72 35 c9 20 33 3a 24  |toload$.`r5. 3:$|
0000d420  41 25 3d 22 44 53 45 64  69 74 22 3a 24 42 25 3d  |A%="DSEdit":$B%=|
0000d430  22 66 69 6c 65 5f 65 64  30 22 3a 24 43 25 3d 73  |"file_ed0":$C%=s|
0000d440  61 6d 70 6c 65 74 6f 6c  6f 61 64 24 0d 60 7c 32  |ampletoload$.`|2|
0000d450  c9 20 34 3a 24 41 25 3d  22 45 4d 52 22 3a 24 42  |. 4:$A%="EMR":$B|
0000d460  25 3d 22 66 69 6c 65 5f  64 66 39 22 3a 24 43 25  |%="file_df9":$C%|
0000d470  3d 73 61 6d 70 6c 65 74  6f 6c 6f 61 64 24 0d 60  |=sampletoload$.`|
0000d480  86 32 c9 20 35 3a 24 41  25 3d 22 52 61 77 22 3a  |.2. 5:$A%="Raw":|
0000d490  24 42 25 3d 22 66 69 6c  65 5f 66 66 64 22 3a 24  |$B%="file_ffd":$|
0000d4a0  43 25 3d 73 61 6d 70 6c  65 74 6f 6c 6f 61 64 24  |C%=sampletoload$|
0000d4b0  0d 60 90 32 c9 20 36 3a  24 41 25 3d 22 4d 6f 64  |.`.2. 6:$A%="Mod|
0000d4c0  75 6c 65 22 3a 24 42 25  3d 22 66 69 6c 65 5f 66  |ule":$B%="file_f|
0000d4d0  66 61 22 3a 24 43 25 3d  6d 6f 64 74 6f 6c 6f 61  |fa":$C%=modtoloa|
0000d4e0  64 24 0d 60 9a 32 c9 20  31 30 3a 24 41 25 3d 22  |d$.`.2. 10:$A%="|
0000d4f0  53 6f 6e 67 22 3a 24 42  25 3d 22 66 69 6c 65 5f  |Song":$B%="file_|
0000d500  64 33 62 22 3a 24 43 25  3d 73 6f 6e 67 74 6f 6c  |d3b":$C%=songtol|
0000d510  6f 61 64 24 0d 60 a4 3b  c9 20 31 31 3a 24 41 25  |oad$.`.;. 11:$A%|
0000d520  3d 22 53 6f 6e 67 4d 6f  64 75 6c 65 22 3a 24 42  |="SongModule":$B|
0000d530  25 3d 22 66 69 6c 65 5f  66 66 61 22 3a 24 43 25  |%="file_ffa":$C%|
0000d540  3d 73 6f 6e 67 6d 6f 64  74 6f 6c 6f 61 64 24 0d  |=songmodtoload$.|
0000d550  60 ae 05 cb 0d 60 b8 05  e1 0d 60 c2 04 0d 60 cc  |`....`....`...`.|
0000d560  12 dd f2 4e 65 77 4d 65  6e 75 53 53 61 76 65 0d  |...NewMenuSSave.|
0000d570  60 d6 14 c8 8e 20 70 6f  6c 6c 65 64 62 25 21 33  |`.... polledb%!3|
0000d580  36 20 ca 0d 60 e0 32 c9  20 32 3a 73 61 76 65 64  |6 ..`.2. 2:saved|
0000d590  74 25 3d 31 30 3a 73 61  76 65 64 61 74 61 25 3d  |t%=10:savedata%=|
0000d5a0  30 3a f2 43 68 53 61 76  65 57 69 6e 28 73 61 76  |0:.ChSaveWin(sav|
0000d5b0  65 64 74 25 29 0d 60 ea  32 c9 20 33 3a 73 61 76  |edt%).`.2. 3:sav|
0000d5c0  65 64 74 25 3d 31 31 3a  73 61 76 65 64 61 74 61  |edt%=11:savedata|
0000d5d0  25 3d 30 3a f2 43 68 53  61 76 65 57 69 6e 28 73  |%=0:.ChSaveWin(s|
0000d5e0  61 76 65 64 74 25 29 0d  60 f4 05 cb 0d 60 fe 3f  |avedt%).`....`.?|
0000d5f0  c8 99 22 57 69 6d 70 5f  43 72 65 61 74 65 53 75  |.."Wimp_CreateSu|
0000d600  62 4d 65 6e 75 22 2c 2c  70 6f 6c 6c 65 64 62 25  |bMenu",,polledb%|
0000d610  21 32 30 2c 70 6f 6c 6c  65 64 62 25 21 32 34 2c  |!20,polledb%!24,|
0000d620  70 6f 6c 6c 65 64 62 25  21 32 38 0d 61 08 05 e1  |polledb%!28.a...|
0000d630  0d 61 12 04 0d 61 1c 11  dd f2 4e 65 77 4d 65 6e  |.a...a....NewMen|
0000d640  75 49 6e 66 6f 0d 61 26  13 74 65 6d 70 25 21 30  |uInfo.a&.temp%!0|
0000d650  3d 77 69 6e 66 6f 68 25  0d 61 30 0d 74 65 6d 70  |=winfoh%.a0.temp|
0000d660  25 21 34 3d 35 0d 61 3a  20 c8 99 22 57 69 6d 70  |%!4=5.a: .."Wimp|
0000d670  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
0000d680  74 65 6d 70 25 0d 61 44  18 24 28 74 65 6d 70 25  |temp%.aD.$(temp%|
0000d690  21 32 38 29 3d c3 62 75  66 6c 65 6e 25 0d 61 4e  |!28)=.buflen%.aN|
0000d6a0  0d 74 65 6d 70 25 21 34  3d 36 0d 61 58 20 c8 99  |.temp%!4=6.aX ..|
0000d6b0  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
0000d6c0  74 65 22 2c 2c 74 65 6d  70 25 0d 61 62 1b 24 28  |te",,temp%.ab.$(|
0000d6d0  74 65 6d 70 25 21 32 38  29 3d c3 73 61 6d 70 6c  |temp%!28)=.sampl|
0000d6e0  65 6c 65 6e 25 0d 61 6c  0d 74 65 6d 70 25 21 34  |elen%.al.temp%!4|
0000d6f0  3d 37 0d 61 76 20 c8 99  22 57 69 6d 70 5f 47 65  |=7.av .."Wimp_Ge|
0000d700  74 49 63 6f 6e 53 74 61  74 65 22 2c 2c 74 65 6d  |tIconState",,tem|
0000d710  70 25 0d 61 80 1a 24 28  74 65 6d 70 25 21 32 38  |p%.a..$(temp%!28|
0000d720  29 3d c3 63 6c 69 70 62  6c 65 6e 25 0d 61 8a 0d  |)=.clipblen%.a..|
0000d730  74 65 6d 70 25 21 34 3d  38 0d 61 94 20 c8 99 22  |temp%!4=8.a. .."|
0000d740  57 69 6d 70 5f 47 65 74  49 63 6f 6e 53 74 61 74  |Wimp_GetIconStat|
0000d750  65 22 2c 2c 74 65 6d 70  25 0d 61 9e 59 e7 20 70  |e",,temp%.a.Y. p|
0000d760  73 65 6c 65 63 74 6c 25  3c 3e 2d 31 20 80 20 70  |selectl%<>-1 . p|
0000d770  73 65 6c 65 63 74 72 25  3c 3e 2d 31 20 8c 20 24  |selectr%<>-1 . $|
0000d780  28 74 65 6d 70 25 21 32  38 29 3d c3 28 70 73 65  |(temp%!28)=.(pse|
0000d790  6c 65 63 74 72 25 2d 70  73 65 6c 65 63 74 6c 25  |lectr%-pselectl%|
0000d7a0  29 20 8b 20 24 28 74 65  6d 70 25 21 32 38 29 3d  |) . $(temp%!28)=|
0000d7b0  22 22 0d 61 a8 0d 74 65  6d 70 25 21 34 3d 39 0d  |"".a..temp%!4=9.|
0000d7c0  61 b2 20 c8 99 22 57 69  6d 70 5f 47 65 74 49 63  |a. .."Wimp_GetIc|
0000d7d0  6f 6e 53 74 61 74 65 22  2c 2c 74 65 6d 70 25 0d  |onState",,temp%.|
0000d7e0  61 bc 3d e7 20 70 73 65  6c 65 63 74 6c 25 3c 3e  |a.=. pselectl%<>|
0000d7f0  2d 31 20 8c 20 24 28 74  65 6d 70 25 21 32 38 29  |-1 . $(temp%!28)|
0000d800  3d c3 70 73 65 6c 65 63  74 6c 25 20 8b 20 24 28  |=.pselectl% . $(|
0000d810  74 65 6d 70 25 21 32 38  29 3d 22 22 0d 61 c6 0e  |temp%!28)="".a..|
0000d820  74 65 6d 70 25 21 34 3d  31 36 0d 61 d0 20 c8 99  |temp%!4=16.a. ..|
0000d830  22 57 69 6d 70 5f 47 65  74 49 63 6f 6e 53 74 61  |"Wimp_GetIconSta|
0000d840  74 65 22 2c 2c 74 65 6d  70 25 0d 61 da 3d e7 20  |te",,temp%.a.=. |
0000d850  70 73 65 6c 65 63 74 72  25 3c 3e 2d 31 20 8c 20  |pselectr%<>-1 . |
0000d860  24 28 74 65 6d 70 25 21  32 38 29 3d c3 70 73 65  |$(temp%!28)=.pse|
0000d870  6c 65 63 74 72 25 20 8b  20 24 28 74 65 6d 70 25  |lectr% . $(temp%|
0000d880  21 32 38 29 3d 22 22 0d  61 e4 0e 74 65 6d 70 25  |!28)="".a..temp%|
0000d890  21 34 3d 32 30 0d 61 ee  20 c8 99 22 57 69 6d 70  |!4=20.a. .."Wimp|
0000d8a0  5f 47 65 74 49 63 6f 6e  53 74 61 74 65 22 2c 2c  |_GetIconState",,|
0000d8b0  74 65 6d 70 25 0d 61 f8  18 24 28 74 65 6d 70 25  |temp%.a..$(temp%|
0000d8c0  21 32 38 29 3d c3 70 6c  6f 6f 70 6c 25 0d 62 02  |!28)=.ploopl%.b.|
0000d8d0  0e 74 65 6d 70 25 21 34  3d 32 31 0d 62 0c 20 c8  |.temp%!4=21.b. .|
0000d8e0  99 22 57 69 6d 70 5f 47  65 74 49 63 6f 6e 53 74  |."Wimp_GetIconSt|
0000d8f0  61 74 65 22 2c 2c 74 65  6d 70 25 0d 62 16 18 24  |ate",,temp%.b..$|
0000d900  28 74 65 6d 70 25 21 32  38 29 3d c3 70 6c 6f 6f  |(temp%!28)=.ploo|
0000d910  70 72 25 0d 62 20 3f c8  99 22 57 69 6d 70 5f 43  |pr%.b ?.."Wimp_C|
0000d920  72 65 61 74 65 53 75 62  4d 65 6e 75 22 2c 2c 70  |reateSubMenu",,p|
0000d930  6f 6c 6c 65 64 62 25 21  32 30 2c 70 6f 6c 6c 65  |olledb%!20,polle|
0000d940  64 62 25 21 32 34 2c 70  6f 6c 6c 65 64 62 25 21  |db%!24,polledb%!|
0000d950  32 38 0d 62 2a 05 e1 0d  62 34 04 0d 62 3e 0f dd  |28.b*...b4..b>..|
0000d960  f2 43 6c 6f 73 65 44 6f  77 6e 0d 62 48 17 e7 20  |.CloseDown.bH.. |
0000d970  73 61 6d 70 6c 65 73 61  76 65 64 25 3d 2d 31 20  |samplesaved%=-1 |
0000d980  8c 0d 62 52 09 f2 51 75  69 74 0d 62 5c 05 cc 0d  |..bR..Quit.b\...|
0000d990  62 66 4b 41 25 3d a4 43  6f 6e 66 69 72 6d 28 22  |bfKA%=.Confirm("|
0000d9a0  53 61 6d 70 6c 65 20 68  61 73 20 62 65 65 6e 20  |Sample has been |
0000d9b0  6d 6f 64 69 66 69 65 64  2e 20 41 72 65 20 79 6f  |modified. Are yo|
0000d9c0  75 20 73 75 72 65 20 79  6f 75 20 77 61 6e 74 20  |u sure you want |
0000d9d0  74 6f 20 71 75 69 74 3f  22 29 0d 62 70 12 e7 20  |to quit?").bp.. |
0000d9e0  41 25 3d 31 20 8c 20 f2  51 75 69 74 0d 62 7a 05  |A%=1 . .Quit.bz.|
0000d9f0  cd 0d 62 84 05 e1 0d 62  8e 04 0d 62 98 0a dd f2  |..b....b...b....|
0000da00  51 75 69 74 0d 62 a2 10  f2 53 65 6e 64 53 46 58  |Quit.b...SendSFX|
0000da10  4d 28 30 29 0d 62 ac 14  c8 99 22 53 46 58 4d 50  |M(0).b...."SFXMP|
0000da20  5f 53 74 6f 70 22 2c 31  0d 62 b6 14 c8 99 22 53  |_Stop",1.b...."S|
0000da30  46 58 4d 50 5f 53 74 6f  70 22 2c 32 0d 62 c0 14  |FXMP_Stop",2.b..|
0000da40  c8 99 22 53 46 58 4d 50  5f 53 74 6f 70 22 2c 33  |.."SFXMP_Stop",3|
0000da50  0d 62 ca 15 c8 99 22 53  46 58 4d 50 5f 44 69 73  |.b...."SFXMP_Dis|
0000da60  61 62 6c 65 22 0d 62 d4  32 c8 99 22 58 4f 53 5f  |able".b.2.."XOS_|
0000da70  53 65 74 56 61 72 56 61  6c 22 2c 22 53 46 58 45  |SetVarVal","SFXE|
0000da80  44 5f 54 61 73 6b 48 61  6e 64 6c 65 22 2c 22 22  |D_TaskHandle",""|
0000da90  2c 2d 31 2c 30 2c 30 0d  62 de 1e c8 99 22 57 69  |,-1,0,0.b...."Wi|
0000daa0  6d 70 5f 42 61 73 65 4f  66 53 70 72 69 74 65 73  |mp_BaseOfSprites|
0000dab0  22 b8 2c 53 25 0d 62 e8  2c f4 53 59 53 22 58 4f  |".,S%.b.,.SYS"XO|
0000dac0  53 5f 53 70 72 69 74 65  4f 70 22 2c 32 35 2b 32  |S_SpriteOp",25+2|
0000dad0  35 36 2c 53 25 2c 22 66  66 74 73 70 72 69 74 65  |56,S%,"fftsprite|
0000dae0  22 0d 62 f2 31 e7 20 62  75 66 73 74 61 72 74 25  |".b.1. bufstart%|
0000daf0  3c 3e 2d 31 20 8c 20 c8  99 22 58 4f 53 5f 4d 6f  |<>-1 . .."XOS_Mo|
0000db00  64 75 6c 65 22 2c 37 2c  2c 62 75 66 73 74 61 72  |dule",7,,bufstar|
0000db10  74 25 0d 62 fc 33 e7 20  73 6f 6e 67 73 74 61 72  |t%.b.3. songstar|
0000db20  74 25 3c 3e 2d 31 20 8c  20 c8 99 22 58 4f 53 5f  |t%<>-1 . .."XOS_|
0000db30  4d 6f 64 75 6c 65 22 2c  37 2c 2c 73 6f 6e 67 73  |Module",7,,songs|
0000db40  74 61 72 74 25 0d 63 06  17 c8 99 22 48 6f 75 72  |tart%.c...."Hour|
0000db50  67 6c 61 73 73 5f 53 6d  61 73 68 22 0d 63 10 27  |glass_Smash".c.'|
0000db60  c8 99 22 57 69 6d 70 5f  43 6c 6f 73 65 44 6f 77  |.."Wimp_CloseDow|
0000db70  6e 22 2c 74 61 73 6b 68  25 2c 26 34 62 35 33 34  |n",taskh%,&4b534|
0000db80  31 35 34 0d 63 1a 0f c8  99 22 4f 53 5f 45 78 69  |154.c...."OS_Exi|
0000db90  74 22 0d 63 24 05 e1 0d  63 2e 04 0d 63 38 0f dd  |t".c$...c...c8..|
0000dba0  f2 53 65 74 45 78 74 65  6e 74 0d 63 42 22 6d 61  |.SetExtent.cB"ma|
0000dbb0  78 78 25 3d 31 30 32 34  2a 73 61 6d 70 6c 65 6c  |xx%=1024*samplel|
0000dbc0  65 6e 25 2f 64 69 73 70  6c 65 6e 25 0d 63 4c 0d  |en%/displen%.cL.|
0000dbd0  74 65 6d 70 25 21 30 3d  30 0d 63 56 10 74 65 6d  |temp%!0=0.cV.tem|
0000dbe0  70 25 21 34 3d 2d 32 35  36 0d 63 60 11 74 65 6d  |p%!4=-256.c`.tem|
0000dbf0  70 25 21 38 3d 6d 61 78  78 25 0d 63 6a 0e 74 65  |p%!8=maxx%.cj.te|
0000dc00  6d 70 25 21 31 32 3d 30  0d 63 74 24 c8 99 22 57  |mp%!12=0.ct$.."W|
0000dc10  69 6d 70 5f 53 65 74 45  78 74 65 6e 74 22 2c 77  |imp_SetExtent",w|
0000dc20  77 6f 72 6b 68 25 2c 74  65 6d 70 25 0d 63 7e 05  |workh%,temp%.c~.|
0000dc30  e1 0d 63 88 04 0d 63 92  13 dd f2 53 65 74 53 6f  |..c...c....SetSo|
0000dc40  6e 67 45 78 74 65 6e 74  0d 63 9c 0d 74 65 6d 70  |ngExtent.c..temp|
0000dc50  25 21 30 3d 30 0d 63 a6  20 74 65 6d 70 25 21 34  |%!0=0.c. temp%!4|
0000dc60  3d 2d 28 39 36 2b 73 6f  6e 67 6c 65 6e 25 2a 33  |=-(96+songlen%*3|
0000dc70  36 2b 33 36 29 0d 63 b0  0f 74 65 6d 70 25 21 38  |6+36).c..temp%!8|
0000dc80  3d 36 30 34 0d 63 ba 0e  74 65 6d 70 25 21 31 32  |=604.c..temp%!12|
0000dc90  3d 30 0d 63 c4 24 c8 99  22 57 69 6d 70 5f 53 65  |=0.c.$.."Wimp_Se|
0000dca0  74 45 78 74 65 6e 74 22  2c 77 73 6f 6e 67 68 25  |tExtent",wsongh%|
0000dcb0  2c 74 65 6d 70 25 0d 63  ce 13 74 65 6d 70 25 21  |,temp%.c..temp%!|
0000dcc0  30 3d 77 73 6f 6e 67 68  25 0d 63 d8 22 c8 99 22  |0=wsongh%.c.".."|
0000dcd0  57 69 6d 70 5f 47 65 74  57 69 6e 64 6f 77 53 74  |Wimp_GetWindowSt|
0000dce0  61 74 65 22 2c 2c 74 65  6d 70 25 0d 63 e2 35 e7  |ate",,temp%.c.5.|
0000dcf0  20 28 74 65 6d 70 25 21  33 32 29 80 28 31 3c 3c  | (temp%!32).(1<<|
0000dd00  31 36 29 20 8c 20 c8 99  22 57 69 6d 70 5f 4f 70  |16) . .."Wimp_Op|
0000dd10  65 6e 57 69 6e 64 6f 77  22 2c 2c 74 65 6d 70 25  |enWindow",,temp%|
0000dd20  0d 63 ec 05 e1 0d 63 f6  04 0d 64 00 0a dd f2 49  |.c....c...d....I|
0000dd30  6e 69 74 0d 64 0a 10 de  20 74 65 6d 70 25 20 31  |nit.d... temp% 1|
0000dd40  30 30 30 0d 64 14 11 de  20 74 65 6d 70 32 25 20  |000.d... temp2% |
0000dd50  31 30 30 30 0d 64 1e 11  de 20 6d 65 73 73 62 6b  |1000.d... messbk|
0000dd60  25 20 35 31 32 0d 64 28  10 62 75 66 73 74 61 72  |% 512.d(.bufstar|
0000dd70  74 25 3d 2d 31 0d 64 32  11 73 6f 6e 67 73 74 61  |t%=-1.d2.songsta|
0000dd80  72 74 25 3d 2d 31 0d 64  3c 3d c8 99 22 57 69 6d  |rt%=-1.d<=.."Wim|
0000dd90  70 5f 49 6e 69 74 69 61  6c 69 73 65 22 2c 32 30  |p_Initialise",20|
0000dda0  30 2c 26 34 62 35 33 34  31 35 34 2c 22 53 46 58  |0,&4b534154,"SFX|
0000ddb0  45 44 22 b8 76 65 72 73  69 6f 6e 25 2c 74 61 73  |ED".version%,tas|
0000ddc0  6b 68 25 0d 64 46 44 e7  20 76 65 72 73 69 6f 6e  |kh%.dFD. version|
0000ddd0  25 3c 32 30 30 20 8c 20  c8 99 22 57 69 6d 70 5f  |%<200 . .."Wimp_|
0000dde0  43 6c 6f 73 65 44 6f 77  6e 22 2c 74 61 73 6b 68  |CloseDown",taskh|
0000ddf0  25 2c 26 34 62 35 33 34  31 35 34 3a c8 99 22 4f  |%,&4b534154:.."O|
0000de00  53 5f 45 78 69 74 22 0d  64 50 3c c8 99 22 58 4f  |S_Exit".dP<.."XO|
0000de10  53 5f 52 65 61 64 56 61  72 56 61 6c 22 2c 22 53  |S_ReadVarVal","S|
0000de20  46 58 45 44 5f 54 61 73  6b 48 61 6e 64 6c 65 22  |FXED_TaskHandle"|
0000de30  2c 74 65 6d 70 32 25 2c  31 36 2c 30 2c 30 b8 2c  |,temp2%,16,0,0.,|
0000de40  2c 41 25 0d 64 5a 0d e7  20 41 25 3c 3e 30 20 8c  |,A%.dZ.. A%<>0 .|
0000de50  0d 64 64 28 f2 52 65 70  6f 72 74 45 72 72 28 22  |.dd(.ReportErr("|
0000de60  53 46 58 45 44 20 61 6c  72 65 61 64 79 20 72 75  |SFXED already ru|
0000de70  6e 6e 69 6e 67 2e 22 29  0d 64 6e 27 c8 99 22 57  |nning.").dn'.."W|
0000de80  69 6d 70 5f 43 6c 6f 73  65 44 6f 77 6e 22 2c 74  |imp_CloseDown",t|
0000de90  61 73 6b 68 25 2c 26 34  62 35 33 34 31 35 34 0d  |askh%,&4b534154.|
0000dea0  64 78 0f c8 99 22 4f 53  5f 45 78 69 74 22 0d 64  |dx..."OS_Exit".d|
0000deb0  82 05 cd 0d 64 8c 14 c8  99 22 48 6f 75 72 67 6c  |....d...."Hourgl|
0000dec0  61 73 73 5f 4f 6e 22 0d  64 96 37 c8 99 22 58 4f  |ass_On".d.7.."XO|
0000ded0  53 5f 53 65 74 56 61 72  56 61 6c 22 2c 22 53 46  |S_SetVarVal","SF|
0000dee0  58 45 44 5f 54 61 73 6b  48 61 6e 64 6c 65 22 2c  |XED_TaskHandle",|
0000def0  c3 7e 74 61 73 6b 68 25  2c 38 2c 30 2c 30 0d 64  |.~taskh%,8,0,0.d|
0000df00  a0 12 de 20 73 6d 6f 64  6c 6f 67 25 20 35 31 32  |... smodlog% 512|
0000df10  0d 64 aa 13 de 20 73 6d  6f 64 73 6c 69 6e 25 20  |.d... smodslin% |
0000df20  35 31 32 0d 64 b4 13 de  20 73 6d 6f 64 75 6c 69  |512.d... smoduli|
0000df30  6e 25 20 35 31 32 0d 64  be 14 de 20 73 6d 6f 64  |n% 512.d... smod|
0000df40  73 6f 6e 67 25 20 31 30  32 34 0d 64 c8 13 de 20  |song% 1024.d... |
0000df50  66 66 74 63 6f 64 65 25  20 33 30 30 30 0d 64 d2  |fftcode% 3000.d.|
0000df60  15 de 20 66 66 74 72 63  6f 65 66 25 20 31 32 38  |.. fftrcoef% 128|
0000df70  2a 34 0d 64 dc 15 de 20  66 66 74 69 63 6f 65 66  |*4.d... ffticoef|
0000df80  25 20 31 32 38 2a 34 0d  64 e6 2b ff 28 22 4c 4f  |% 128*4.d.+.("LO|
0000df90  41 44 20 3c 53 46 58 45  44 24 44 69 72 3e 2e 70  |AD <SFXED$Dir>.p|
0000dfa0  6d 6c 6f 67 20 22 2b c3  7e 73 6d 6f 64 6c 6f 67  |mlog "+.~smodlog|
0000dfb0  25 29 0d 64 f0 2d ff 28  22 4c 4f 41 44 20 3c 53  |%).d.-.("LOAD <S|
0000dfc0  46 58 45 44 24 44 69 72  3e 2e 70 6d 73 6c 69 6e  |FXED$Dir>.pmslin|
0000dfd0  20 22 2b c3 7e 73 6d 6f  64 73 6c 69 6e 25 29 0d  | "+.~smodslin%).|
0000dfe0  64 fa 2d ff 28 22 4c 4f  41 44 20 3c 53 46 58 45  |d.-.("LOAD <SFXE|
0000dff0  44 24 44 69 72 3e 2e 70  6d 75 6c 69 6e 20 22 2b  |D$Dir>.pmulin "+|
0000e000  c3 7e 73 6d 6f 64 75 6c  69 6e 25 29 0d 65 04 2d  |.~smodulin%).e.-|
0000e010  ff 28 22 4c 4f 41 44 20  3c 53 46 58 45 44 24 44  |.("LOAD <SFXED$D|
0000e020  69 72 3e 2e 70 6d 73 6f  6e 67 20 22 2b c3 7e 73  |ir>.pmsong "+.~s|
0000e030  6d 6f 64 73 6f 6e 67 25  29 0d 65 0e 2d ff 28 22  |modsong%).e.-.("|
0000e040  4c 4f 41 44 20 3c 53 46  58 45 44 24 44 69 72 3e  |LOAD <SFXED$Dir>|
0000e050  2e 66 66 74 63 6f 64 65  20 22 2b c3 7e 66 66 74  |.fftcode "+.~fft|
0000e060  63 6f 64 65 25 29 0d 65  18 2f c8 99 22 57 69 6d  |code%).e./.."Wim|
0000e070  70 5f 53 70 72 69 74 65  4f 70 22 2c 31 31 2c 2c  |p_SpriteOp",11,,|
0000e080  22 3c 53 46 58 45 44 24  44 69 72 3e 2e 53 70 72  |"<SFXED$Dir>.Spr|
0000e090  69 74 65 73 22 0d 65 22  32 c8 99 22 57 69 6d 70  |ites".e"2.."Wimp|
0000e0a0  5f 4f 70 65 6e 54 65 6d  70 6c 61 74 65 22 2c 2c  |_OpenTemplate",,|
0000e0b0  22 3c 53 46 58 45 44 24  44 69 72 3e 2e 54 65 6d  |"<SFXED$Dir>.Tem|
0000e0c0  70 6c 61 74 65 73 22 0d  65 2c 11 de 20 77 73 61  |plates".e,.. wsa|
0000e0d0  76 65 25 20 31 30 30 30  0d 65 36 12 de 20 77 61  |ve% 1000.e6.. wa|
0000e0e0  62 6f 75 74 25 20 31 30  30 30 0d 65 40 15 de 20  |bout% 1000.e@.. |
0000e0f0  77 6b 65 79 62 6f 61 72  64 25 20 34 30 30 30 0d  |wkeyboard% 4000.|
0000e100  65 4a 11 de 20 77 77 6f  72 6b 25 20 31 30 30 30  |eJ.. wwork% 1000|
0000e110  0d 65 54 11 de 20 77 69  6e 66 6f 25 20 31 30 30  |.eT.. winfo% 100|
0000e120  30 0d 65 5e 11 de 20 77  65 63 68 6f 25 20 31 30  |0.e^.. wecho% 10|
0000e130  30 30 0d 65 68 11 de 20  77 66 61 64 65 25 20 31  |00.eh.. wfade% 1|
0000e140  30 30 30 0d 65 72 10 de  20 77 70 6f 73 25 20 31  |000.er.. wpos% 1|
0000e150  30 30 30 0d 65 7c 10 de  20 77 66 66 74 25 20 31  |000.e|.. wfft% 1|
0000e160  30 30 30 0d 65 86 11 de  20 77 73 6f 6e 67 25 20  |000.e... wsong% |
0000e170  31 30 30 30 0d 65 90 15  de 20 77 73 6f 6e 67 70  |1000.e... wsongp|
0000e180  61 6e 65 25 20 31 30 30  30 0d 65 9a 11 de 20 69  |ane% 1000.e... i|
0000e190  63 62 75 66 25 20 34 30  30 30 0d 65 a4 12 69 63  |cbuf% 4000.e..ic|
0000e1a0  62 75 66 6e 25 3d 69 63  62 75 66 25 0d 65 ae 0f  |bufn%=icbuf%.e..|
0000e1b0  de 20 74 6e 61 6d 65 25  20 31 36 0d 65 b8 0b 6e  |. tname% 16.e..n|
0000e1c0  65 78 74 25 3d 30 0d 65  c2 1c f2 4c 6f 61 64 54  |ext%=0.e...LoadT|
0000e1d0  65 6d 70 28 77 73 61 76  65 25 2c 22 73 61 76 65  |emp(wsave%,"save|
0000e1e0  22 29 0d 65 cc 1e f2 4c  6f 61 64 54 65 6d 70 28  |").e...LoadTemp(|
0000e1f0  77 61 62 6f 75 74 25 2c  22 61 62 6f 75 74 22 29  |wabout%,"about")|
0000e200  0d 65 d6 24 f2 4c 6f 61  64 54 65 6d 70 28 77 6b  |.e.$.LoadTemp(wk|
0000e210  65 79 62 6f 61 72 64 25  2c 22 6b 65 79 62 6f 61  |eyboard%,"keyboa|
0000e220  72 64 22 29 0d 65 e0 1c  f2 4c 6f 61 64 54 65 6d  |rd").e...LoadTem|
0000e230  70 28 77 66 61 64 65 25  2c 22 66 61 64 65 22 29  |p(wfade%,"fade")|
0000e240  0d 65 ea 1c f2 4c 6f 61  64 54 65 6d 70 28 77 65  |.e...LoadTemp(we|
0000e250  63 68 6f 25 2c 22 65 63  68 6f 22 29 0d 65 f4 1c  |cho%,"echo").e..|
0000e260  f2 4c 6f 61 64 54 65 6d  70 28 77 69 6e 66 6f 25  |.LoadTemp(winfo%|
0000e270  2c 22 69 6e 66 6f 22 29  0d 65 fe 1c f2 4c 6f 61  |,"info").e...Loa|
0000e280  64 54 65 6d 70 28 77 77  6f 72 6b 25 2c 22 77 6f  |dTemp(wwork%,"wo|
0000e290  72 6b 22 29 0d 66 08 1a  f2 4c 6f 61 64 54 65 6d  |rk").f...LoadTem|
0000e2a0  70 28 77 70 6f 73 25 2c  22 70 6f 73 22 29 0d 66  |p(wpos%,"pos").f|
0000e2b0  12 1a f2 4c 6f 61 64 54  65 6d 70 28 77 66 66 74  |...LoadTemp(wfft|
0000e2c0  25 2c 22 66 66 74 22 29  0d 66 1c 1c f2 4c 6f 61  |%,"fft").f...Loa|
0000e2d0  64 54 65 6d 70 28 77 73  6f 6e 67 25 2c 22 73 6f  |dTemp(wsong%,"so|
0000e2e0  6e 67 22 29 0d 66 26 24  f2 4c 6f 61 64 54 65 6d  |ng").f&$.LoadTem|
0000e2f0  70 28 77 73 6f 6e 67 70  61 6e 65 25 2c 22 73 6f  |p(wsongpane%,"so|
0000e300  6e 67 70 61 6e 65 22 29  0d 66 30 1a c8 99 22 57  |ngpane").f0..."W|
0000e310  69 6d 70 5f 43 6c 6f 73  65 54 65 6d 70 6c 61 74  |imp_CloseTemplat|
0000e320  65 22 0d 66 3a 14 77 73  61 76 65 25 21 28 38 38  |e".f:.wsave%!(88|
0000e330  2b 32 34 29 3d 31 0d 66  44 29 c8 99 22 57 69 6d  |+24)=1.fD).."Wim|
0000e340  70 5f 43 72 65 61 74 65  57 69 6e 64 6f 77 22 2c  |p_CreateWindow",|
0000e350  2c 77 73 61 76 65 25 b8  77 73 61 76 65 68 25 0d  |,wsave%.wsaveh%.|
0000e360  66 4e 2b c8 99 22 57 69  6d 70 5f 43 72 65 61 74  |fN+.."Wimp_Creat|
0000e370  65 57 69 6e 64 6f 77 22  2c 2c 77 61 62 6f 75 74  |eWindow",,wabout|
0000e380  25 b8 77 61 62 6f 75 74  68 25 0d 66 58 31 c8 99  |%.wabouth%.fX1..|
0000e390  22 57 69 6d 70 5f 43 72  65 61 74 65 57 69 6e 64  |"Wimp_CreateWind|
0000e3a0  6f 77 22 2c 2c 77 6b 65  79 62 6f 61 72 64 25 b8  |ow",,wkeyboard%.|
0000e3b0  77 6b 65 79 62 6f 61 72  64 68 25 0d 66 62 29 c8  |wkeyboardh%.fb).|
0000e3c0  99 22 57 69 6d 70 5f 43  72 65 61 74 65 57 69 6e  |."Wimp_CreateWin|
0000e3d0  64 6f 77 22 2c 2c 77 77  6f 72 6b 25 b8 77 77 6f  |dow",,wwork%.wwo|
0000e3e0  72 6b 68 25 0d 66 6c 29  c8 99 22 57 69 6d 70 5f  |rkh%.fl).."Wimp_|
0000e3f0  43 72 65 61 74 65 57 69  6e 64 6f 77 22 2c 2c 77  |CreateWindow",,w|
0000e400  69 6e 66 6f 25 b8 77 69  6e 66 6f 68 25 0d 66 76  |info%.winfoh%.fv|
0000e410  29 c8 99 22 57 69 6d 70  5f 43 72 65 61 74 65 57  |).."Wimp_CreateW|
0000e420  69 6e 64 6f 77 22 2c 2c  77 65 63 68 6f 25 b8 77  |indow",,wecho%.w|
0000e430  65 63 68 6f 68 25 0d 66  80 29 c8 99 22 57 69 6d  |echoh%.f.).."Wim|
0000e440  70 5f 43 72 65 61 74 65  57 69 6e 64 6f 77 22 2c  |p_CreateWindow",|
0000e450  2c 77 66 61 64 65 25 b8  77 66 61 64 65 68 25 0d  |,wfade%.wfadeh%.|
0000e460  66 8a 27 c8 99 22 57 69  6d 70 5f 43 72 65 61 74  |f.'.."Wimp_Creat|
0000e470  65 57 69 6e 64 6f 77 22  2c 2c 77 70 6f 73 25 b8  |eWindow",,wpos%.|
0000e480  77 70 6f 73 68 25 0d 66  94 27 c8 99 22 57 69 6d  |wposh%.f.'.."Wim|
0000e490  70 5f 43 72 65 61 74 65  57 69 6e 64 6f 77 22 2c  |p_CreateWindow",|
0000e4a0  2c 77 66 66 74 25 b8 77  66 66 74 68 25 0d 66 9e  |,wfft%.wffth%.f.|
0000e4b0  29 c8 99 22 57 69 6d 70  5f 43 72 65 61 74 65 57  |).."Wimp_CreateW|
0000e4c0  69 6e 64 6f 77 22 2c 2c  77 73 6f 6e 67 25 b8 77  |indow",,wsong%.w|
0000e4d0  73 6f 6e 67 68 25 0d 66  a8 31 c8 99 22 57 69 6d  |songh%.f.1.."Wim|
0000e4e0  70 5f 43 72 65 61 74 65  57 69 6e 64 6f 77 22 2c  |p_CreateWindow",|
0000e4f0  2c 77 73 6f 6e 67 70 61  6e 65 25 b8 77 73 6f 6e  |,wsongpane%.wson|
0000e500  67 70 61 6e 65 68 25 0d  66 b2 0a f2 4d 65 6e 75  |gpaneh%.f...Menu|
0000e510  73 0d 66 bc 0f de 20 62  69 63 6f 6e 25 20 33 32  |s.f... bicon% 32|
0000e520  0d 66 c6 0f 62 69 63 6f  6e 25 21 30 3d 2d 31 0d  |.f..bicon%!0=-1.|
0000e530  66 d0 0e 62 69 63 6f 6e  25 21 34 3d 30 0d 66 da  |f..bicon%!4=0.f.|
0000e540  0e 62 69 63 6f 6e 25 21  38 3d 30 0d 66 e4 10 62  |.bicon%!8=0.f..b|
0000e550  69 63 6f 6e 25 21 31 32  3d 36 38 0d 66 ee 10 62  |icon%!12=68.f..b|
0000e560  69 63 6f 6e 25 21 31 36  3d 36 38 0d 66 f8 1f 62  |icon%!16=68.f..b|
0000e570  69 63 6f 6e 25 21 32 30  3d 25 30 30 31 31 30 30  |icon%!20=%001100|
0000e580  30 30 30 30 30 31 31 30  31 30 0d 67 02 19 24 28  |0000011010.g..$(|
0000e590  62 69 63 6f 6e 25 2b 32  34 29 3d 22 21 73 66 78  |bicon%+24)="!sfx|
0000e5a0  65 64 22 0d 67 0c 27 c8  99 22 57 69 6d 70 5f 43  |ed".g.'.."Wimp_C|
0000e5b0  72 65 61 74 65 49 63 6f  6e 22 2c 2c 62 69 63 6f  |reateIcon",,bico|
0000e5c0  6e 25 b8 62 69 63 6f 6e  68 25 0d 67 16 0a f2 41  |n%.biconh%.g...A|
0000e5d0  73 73 65 6d 0d 67 20 10  de 20 64 72 61 67 62 25  |ssem.g .. dragb%|
0000e5e0  20 32 35 36 0d 67 2a 10  de 20 70 6f 6c 6c 62 25  | 256.g*.. pollb%|
0000e5f0  20 32 35 36 0d 67 34 12  de 20 70 6f 6c 6c 65 64  | 256.g4.. polled|
0000e600  62 25 20 32 35 36 0d 67  3e 0f 2a 56 4f 4c 55 4d  |b% 256.g>.*VOLUM|
0000e610  45 20 31 32 37 0d 67 48  28 c8 99 22 58 53 6f 75  |E 127.gH(.."XSou|
0000e620  6e 64 5f 43 6f 6e 66 69  67 75 72 65 22 2c 30 2c  |nd_Configure",0,|
0000e630  30 2c 30 2c 30 2c 30 b8  2c 2c 2c 54 25 0d 67 52  |0,0,0,0.,,,T%.gR|
0000e640  13 de 20 6c 6f 67 74 61  62 6c 65 25 20 32 35 36  |.. logtable% 256|
0000e650  0d 67 5c 15 21 6c 6f 67  74 61 62 3d 6c 6f 67 74  |.g\.!logtab=logt|
0000e660  61 62 6c 65 25 0d 67 66  0d e3 53 25 3d 30 b8 32  |able%.gf..S%=0.2|
0000e670  35 35 0d 67 70 22 6c 6f  67 74 61 62 6c 65 25 3f  |55.gp"logtable%?|
0000e680  53 25 3d 3f 28 28 54 25  21 38 29 2b 28 53 25 3c  |S%=?((T%!8)+(S%<|
0000e690  3c 35 29 29 0d 67 7a 07  ed 53 25 0d 67 84 13 de  |<5)).gz..S%.g...|
0000e6a0  20 6c 69 6e 74 61 62 6c  65 25 20 32 35 36 0d 67  | lintable% 256.g|
0000e6b0  8e 15 21 6c 69 6e 74 61  62 3d 6c 69 6e 74 61 62  |..!lintab=lintab|
0000e6c0  6c 65 25 0d 67 98 0d e3  53 25 3d 30 b8 31 32 37  |le%.g...S%=0.127|
0000e6d0  0d 67 a2 32 6c 69 6e 74  61 62 6c 65 25 3f 28 53  |.g.2lintable%?(S|
0000e6e0  25 2a 32 29 3d a8 28 28  30 2e 35 2b 32 36 37 2e  |%*2)=.((0.5+267.|
0000e6f0  33 33 2a 32 5e 28 53 25  2f 31 36 29 29 2f 35 31  |33*2^(S%/16))/51|
0000e700  32 29 0d 67 ac 28 6c 69  6e 74 61 62 6c 65 25 3f  |2).g.(lintable%?|
0000e710  28 53 25 2a 32 2b 31 29  3d 2d 6c 69 6e 74 61 62  |(S%*2+1)=-lintab|
0000e720  6c 65 25 3f 28 53 25 2a  32 29 0d 67 b6 07 ed 53  |le%?(S%*2).g...S|
0000e730  25 0d 67 c0 13 73 61 6d  70 6c 65 73 61 76 65 64  |%.g..samplesaved|
0000e740  25 3d 2d 31 0d 67 ca 22  66 69 6c 65 74 6f 6c 6f  |%=-1.g."filetolo|
0000e750  61 64 24 3d 22 22 3a 66  69 6c 65 74 6f 6c 6f 61  |ad$="":filetoloa|
0000e760  64 32 24 3d 22 22 0d 67  d4 10 73 61 76 65 64 61  |d2$="".g..saveda|
0000e770  74 61 25 3d 2d 31 0d 67  de 0e 73 61 76 65 64 74  |ta%=-1.g..savedt|
0000e780  25 3d 2d 31 0d 67 e8 10  73 61 76 65 74 79 70 65  |%=-1.g..savetype|
0000e790  25 3d 2d 31 0d 67 f2 0a  73 73 25 3d 2d 31 0d 67  |%=-1.g..ss%=-1.g|
0000e7a0  fc 30 6f 6c 64 62 75 74  25 3d 30 3a 6c 61 73 74  |.0oldbut%=0:last|
0000e7b0  6d 65 6e 75 25 3d 2d 31  3a 6c 61 73 74 6d 78 25  |menu%=-1:lastmx%|
0000e7c0  3d 2d 31 3a 6c 61 73 74  6d 79 25 3d 2d 31 0d 68  |=-1:lastmy%=-1.h|
0000e7d0  06 10 64 72 61 67 74 79  70 65 25 3d 2d 31 0d 68  |..dragtype%=-1.h|
0000e7e0  10 0f 70 6c 61 79 74 79  70 65 25 3d 30 0d 68 1a  |..playtype%=0.h.|
0000e7f0  0b 6d 61 78 78 25 3d 30  0d 68 24 0b 6d 6f 72 65  |.maxx%=0.h$.more|
0000e800  25 3d 30 0d 68 2e 0c 73  74 79 70 65 25 3d 30 0d  |%=0.h..stype%=0.|
0000e810  68 38 10 72 65 6c 65 61  73 65 6b 25 3d 2d 31 0d  |h8.releasek%=-1.|
0000e820  68 42 11 6d 75 6c 74 69  70 6c 65 6b 25 3d 2d 31  |hB.multiplek%=-1|
0000e830  0d 68 4c 0a 6f 6b 74 25  3d 31 0d 68 56 0e 70 64  |.hL.okt%=1.hV.pd|
0000e840  69 73 70 68 64 25 3d 30  0d 68 60 0d 70 69 74 63  |isphd%=0.h`.pitc|
0000e850  68 25 3d 34 38 0d 68 6a  11 73 70 69 74 63 68 25  |h%=48.hj.spitch%|
0000e860  3d 26 31 30 30 30 0d 68  74 12 6f 73 70 69 74 63  |=&1000.ht.ospitc|
0000e870  68 25 3d 26 31 30 30 30  0d 68 7e 27 c8 99 22 58  |h%=&1000.h~'.."X|
0000e880  53 6f 75 6e 64 5f 43 6f  6e 66 69 67 75 72 65 22  |Sound_Configure"|
0000e890  2c 30 2c 30 2c 70 69 74  63 68 25 2c 30 2c 30 0d  |,0,0,pitch%,0,0.|
0000e8a0  68 88 3c c8 99 22 58 4f  53 5f 52 65 61 64 56 61  |h.<.."XOS_ReadVa|
0000e8b0  72 56 61 6c 22 2c 22 53  46 58 45 44 24 42 75 66  |rVal","SFXED$Buf|
0000e8c0  66 65 72 53 69 7a 65 22  2c 74 65 6d 70 32 25 2c  |ferSize",temp2%,|
0000e8d0  31 36 2c 30 2c 30 b8 2c  2c 41 25 0d 68 92 10 74  |16,0,0.,,A%.h..t|
0000e8e0  65 6d 70 32 25 3f 41 25  3d 31 33 0d 68 9c 30 e7  |emp2%?A%=13.h.0.|
0000e8f0  20 41 25 3d 30 20 8c 20  62 75 66 6c 65 6e 25 3d  | A%=0 . buflen%=|
0000e900  30 20 8b 20 62 75 66 6c  65 6e 25 3d 31 30 32 34  |0 . buflen%=1024|
0000e910  2a bb 28 24 74 65 6d 70  32 25 29 0d 68 a6 21 e7  |*.($temp2%).h.!.|
0000e920  20 62 75 66 6c 65 6e 25  3c 31 30 32 34 20 8c 20  | buflen%<1024 . |
0000e930  62 75 66 6c 65 6e 25 3d  31 30 32 34 0d 68 b0 2b  |buflen%=1024.h.+|
0000e940  e7 20 62 75 66 6c 65 6e  25 3e 31 30 32 34 2a 31  |. buflen%>1024*1|
0000e950  30 32 33 20 8c 20 62 75  66 6c 65 6e 25 3d 31 30  |023 . buflen%=10|
0000e960  32 34 2a 31 30 32 33 0d  68 ba 22 24 28 6d 62 75  |24*1023.h."$(mbu|
0000e970  66 6c 65 6e 25 21 34 30  29 3d c3 28 62 75 66 6c  |flen%!40)=.(bufl|
0000e980  65 6e 25 2f 31 30 32 34  29 0d 68 c4 15 73 6f 6e  |en%/1024).h..son|
0000e990  67 62 75 66 6c 65 6e 25  3d 26 31 30 30 30 0d 68  |gbuflen%=&1000.h|
0000e9a0  ce 0e 73 6f 6e 67 72 65  70 25 3d 30 0d 68 d8 07  |..songrep%=0.h..|
0000e9b0  c8 a0 34 0d 68 e2 13 c8  a1 32 2c 22 53 46 58 4d  |..4.h....2,"SFXM|
0000e9c0  56 6f 69 63 65 22 0d 68  ec 13 c8 a1 33 2c 22 53  |Voice".h....3,"S|
0000e9d0  46 58 4d 56 6f 69 63 65  22 0d 68 f6 13 c8 a1 34  |FXMVoice".h....4|
0000e9e0  2c 22 53 46 58 4d 56 6f  69 63 65 22 0d 69 00 14  |,"SFXMVoice".i..|
0000e9f0  c8 99 22 53 46 58 4d 50  5f 45 6e 61 62 6c 65 22  |.."SFXMP_Enable"|
0000ea00  0d 69 0a 35 c8 99 22 58  4f 53 5f 4d 6f 64 75 6c  |.i.5.."XOS_Modul|
0000ea10  65 22 2c 36 2c 2c 2c 73  6f 6e 67 62 75 66 6c 65  |e",6,,,songbufle|
0000ea20  6e 25 2b 33 32 b8 2c 2c  73 6f 6e 67 73 74 61 72  |n%+32.,,songstar|
0000ea30  74 25 3b 76 25 0d 69 14  0c e7 20 76 25 80 31 20  |t%;v%.i... v%.1 |
0000ea40  8c 0d 69 1e 11 73 6f 6e  67 73 74 61 72 74 25 3d  |..i..songstart%=|
0000ea50  2d 31 0d 69 28 2c f2 52  65 70 6f 72 74 45 72 72  |-1.i(,.ReportErr|
0000ea60  28 22 43 61 6e 27 74 20  63 6c 61 69 6d 20 73 61  |("Can't claim sa|
0000ea70  6d 70 6c 65 20 6d 65 6d  6f 72 79 2e 22 29 0d 69  |mple memory.").i|
0000ea80  32 09 f2 51 75 69 74 0d  69 3c 05 cd 0d 69 46 2d  |2..Quit.i<...iF-|
0000ea90  c8 99 22 58 4f 53 5f 4d  6f 64 75 6c 65 22 2c 36  |.."XOS_Module",6|
0000eaa0  2c 2c 2c 62 75 66 6c 65  6e 25 b8 2c 2c 62 75 66  |,,,buflen%.,,buf|
0000eab0  73 74 61 72 74 25 3b 76  25 0d 69 50 0c e7 20 76  |start%;v%.iP.. v|
0000eac0  25 80 31 20 8c 0d 69 5a  10 62 75 66 73 74 61 72  |%.1 ..iZ.bufstar|
0000ead0  74 25 3d 2d 31 0d 69 64  2c f2 52 65 70 6f 72 74  |t%=-1.id,.Report|
0000eae0  45 72 72 28 22 43 61 6e  27 74 20 63 6c 61 69 6d  |Err("Can't claim|
0000eaf0  20 73 61 6d 70 6c 65 20  6d 65 6d 6f 72 79 2e 22  | sample memory."|
0000eb00  29 0d 69 6e 09 f2 51 75  69 74 0d 69 78 05 cd 0d  |).in..Quit.ix...|
0000eb10  69 82 0c f2 52 65 73 74  61 72 74 0d 69 8c 0e f2  |i...Restart.i...|
0000eb20  53 65 74 45 78 74 65 6e  74 0d 69 96 15 c8 99 22  |SetExtent.i...."|
0000eb30  48 6f 75 72 67 6c 61 73  73 5f 4f 66 66 22 0d 69  |Hourglass_Off".i|
0000eb40  a0 05 e1 0d 69 aa 04 0d  69 b4 0d dd f2 52 65 73  |....i...i....Res|
0000eb50  74 61 72 74 0d 69 be 36  c8 99 22 53 46 58 4d 50  |tart.i.6.."SFXMP|
0000eb60  5f 53 74 6f 70 22 2c 31  3a c8 99 22 53 46 58 4d  |_Stop",1:.."SFXM|
0000eb70  50 5f 53 74 6f 70 22 2c  32 3a c8 99 22 53 46 58  |P_Stop",2:.."SFX|
0000eb80  4d 50 5f 53 74 6f 70 22  2c 33 0d 69 c8 1a 73 74  |MP_Stop",3.i..st|
0000eb90  61 72 74 73 61 6d 70 6c  65 25 3d 62 75 66 73 74  |artsample%=bufst|
0000eba0  61 72 74 25 0d 69 d2 10  73 61 6d 70 6c 65 6c 65  |art%.i..samplele|
0000ebb0  6e 25 3d 31 0d 69 dc 21  63 6c 69 70 62 73 74 61  |n%=1.i.!clipbsta|
0000ebc0  72 74 25 3d 62 75 66 73  74 61 72 74 25 2b 62 75  |rt%=bufstart%+bu|
0000ebd0  66 6c 65 6e 25 0d 69 e6  0f 63 6c 69 70 62 6c 65  |flen%.i..clipble|
0000ebe0  6e 25 3d 30 0d 69 f0 0e  64 69 73 70 6c 65 6e 25  |n%=0.i..displen%|
0000ebf0  3d 31 0d 69 fa 35 73 65  6c 65 63 74 6c 25 3d 2d  |=1.i.5selectl%=-|
0000ec00  31 3a 6f 73 65 6c 65 63  74 6c 25 3d 2d 31 3a 73  |1:oselectl%=-1:s|
0000ec10  65 6c 65 63 74 72 25 3d  2d 31 3a 6f 73 65 6c 65  |electr%=-1:osele|
0000ec20  63 74 72 25 3d 2d 31 0d  6a 04 1d 70 73 65 6c 65  |ctr%=-1.j..psele|
0000ec30  63 74 6c 25 3d 2d 31 3a  70 73 65 6c 65 63 74 72  |ctl%=-1:pselectr|
0000ec40  25 3d 2d 31 0d 6a 0e 0d  70 6c 61 79 70 25 3d 2d  |%=-1.j..playp%=-|
0000ec50  31 0d 6a 18 18 6c 6f 6f  70 6c 25 3d 30 3a 6c 6f  |1.j..loopl%=0:lo|
0000ec60  6f 70 72 25 3d 31 30 32  34 0d 6a 22 1a 6f 6c 6f  |opr%=1024.j".olo|
0000ec70  6f 70 6c 25 3d 30 3a 6f  6c 6f 6f 70 72 25 3d 31  |opl%=0:oloopr%=1|
0000ec80  30 32 34 0d 6a 2c 20 70  6c 6f 6f 70 6c 25 3d 30  |024.j, ploopl%=0|
0000ec90  3a 70 6c 6f 6f 70 72 25  3d 73 61 6d 70 6c 65 6c  |:ploopr%=samplel|
0000eca0  65 6e 25 0d 6a 36 25 73  70 6c 6f 6f 70 6c 25 3d  |en%.j6%sploopl%=|
0000ecb0  70 6c 6f 6f 70 6c 25 3a  73 70 6c 6f 6f 70 72 25  |ploopl%:sploopr%|
0000ecc0  3d 70 6c 6f 6f 70 72 25  0d 6a 40 14 73 74 61 72  |=ploopr%.j@.star|
0000ecd0  74 73 61 6d 70 6c 65 25  3f 30 3d 30 0d 6a 4a 14  |tsample%?0=0.jJ.|
0000ece0  73 74 61 72 74 73 61 6d  70 6c 65 25 3f 31 3d 30  |startsample%?1=0|
0000ecf0  0d 6a 54 15 70 6f 73 25  3d 30 3a 6f 6c 64 70 6f  |.jT.pos%=0:oldpo|
0000ed00  73 25 3d 2d 31 0d 6a 5e  20 7a 6f 6f 6d 73 6c 25  |s%=-1.j^ zoomsl%|
0000ed10  3d 30 3a 7a 6f 6f 6d 73  72 25 3d 73 61 6d 70 6c  |=0:zoomsr%=sampl|
0000ed20  65 6c 65 6e 25 0d 6a 68  1a 73 61 6d 70 6c 65 74  |elen%.jh.samplet|
0000ed30  6f 6c 6f 61 64 24 3d 22  53 61 6d 70 6c 65 22 0d  |oload$="Sample".|
0000ed40  6a 72 1a 6d 6f 64 74 6f  6c 6f 61 64 24 3d 22 53  |jr.modtoload$="S|
0000ed50  61 6d 70 6c 65 4d 6f 64  22 0d 6a 7c 16 73 6f 6e  |ampleMod".j|.son|
0000ed60  67 74 6f 6c 6f 61 64 24  3d 22 53 6f 6e 67 22 0d  |gtoload$="Song".|
0000ed70  6a 86 1c 73 6f 6e 67 6d  6f 64 74 6f 6c 6f 61 64  |j..songmodtoload|
0000ed80  24 3d 22 53 6f 6e 67 4d  6f 64 22 0d 6a 90 0c f2  |$="SongMod".j...|
0000ed90  44 72 61 77 50 6f 73 0d  6a 9a 0e f2 43 6c 65 61  |DrawPos.j...Clea|
0000eda0  72 53 6f 6e 67 0d 6a a4  05 e1 0d 6a ae 04 0d 6a  |rSong.j....j...j|
0000edb0  b8 0f dd f2 43 6c 65 61  72 53 6f 6e 67 0d 6a c2  |....ClearSong.j.|
0000edc0  36 c8 99 22 53 46 58 4d  50 5f 53 74 6f 70 22 2c  |6.."SFXMP_Stop",|
0000edd0  31 3a c8 99 22 53 46 58  4d 50 5f 53 74 6f 70 22  |1:.."SFXMP_Stop"|
0000ede0  2c 32 3a c8 99 22 53 46  58 4d 50 5f 53 74 6f 70  |,2:.."SFXMP_Stop|
0000edf0  22 2c 33 0d 6a cc 0e 73  6f 6e 67 6c 65 6e 25 3d  |",3.j..songlen%=|
0000ee00  30 0d 6a d6 0f 63 75 72  72 73 65 63 74 25 3d 30  |0.j..currsect%=0|
0000ee10  0d 6a e0 17 74 65 6d 70  25 21 30 3d 77 73 6f 6e  |.j..temp%!0=wson|
0000ee20  67 70 61 6e 65 68 25 0d  6a ea 0d 74 65 6d 70 25  |gpaneh%.j..temp%|
0000ee30  21 34 3d 35 0d 6a f4 20  c8 99 22 57 69 6d 70 5f  |!4=5.j. .."Wimp_|
0000ee40  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |GetIconState",,t|
0000ee50  65 6d 70 25 0d 6a fe 13  24 28 74 65 6d 70 25 21  |emp%.j..$(temp%!|
0000ee60  32 38 29 3d 22 31 22 0d  6b 08 0d 74 65 6d 70 25  |28)="1".k..temp%|
0000ee70  21 34 3d 36 0d 6b 12 20  c8 99 22 57 69 6d 70 5f  |!4=6.k. .."Wimp_|
0000ee80  47 65 74 49 63 6f 6e 53  74 61 74 65 22 2c 2c 74  |GetIconState",,t|
0000ee90  65 6d 70 25 0d 6b 1c 1c  24 28 74 65 6d 70 25 21  |emp%.k..$(temp%!|
0000eea0  32 38 29 3d 22 3c 55 6e  74 69 74 6c 65 64 3e 22  |28)="<Untitled>"|
0000eeb0  0d 6b 26 0d 74 65 6d 70  25 21 34 3d 37 0d 6b 30  |.k&.temp%!4=7.k0|
0000eec0  20 c8 99 22 57 69 6d 70  5f 47 65 74 49 63 6f 6e  | .."Wimp_GetIcon|
0000eed0  53 74 61 74 65 22 2c 2c  74 65 6d 70 25 0d 6b 3a  |State",,temp%.k:|
0000eee0  13 24 28 74 65 6d 70 25  21 32 38 29 3d 22 31 22  |.$(temp%!28)="1"|
0000eef0  0d 6b 44 0d 74 65 6d 70  25 21 34 3d 38 0d 6b 4e  |.kD.temp%!4=8.kN|
0000ef00  20 c8 99 22 57 69 6d 70  5f 47 65 74 49 63 6f 6e  | .."Wimp_GetIcon|
0000ef10  53 74 61 74 65 22 2c 2c  74 65 6d 70 25 0d 6b 58  |State",,temp%.kX|
0000ef20  16 24 28 74 65 6d 70 25  21 32 38 29 3d 22 34 30  |.$(temp%!28)="40|
0000ef30  39 36 22 0d 6b 62 0d 74  65 6d 70 25 21 34 3d 39  |96".kb.temp%!4=9|
0000ef40  0d 6b 6c 20 c8 99 22 57  69 6d 70 5f 47 65 74 49  |.kl .."Wimp_GetI|
0000ef50  63 6f 6e 53 74 61 74 65  22 2c 2c 74 65 6d 70 25  |conState",,temp%|
0000ef60  0d 6b 76 15 24 28 74 65  6d 70 25 21 32 38 29 3d  |.kv.$(temp%!28)=|
0000ef70  22 32 35 35 22 0d 6b 80  12 f2 53 65 74 53 6f 6e  |"255".k...SetSon|
0000ef80  67 45 78 74 65 6e 74 0d  6b 8a 0b f2 52 64 53 6f  |gExtent.k...RdSo|
0000ef90  6e 67 0d 6b 94 0f f2 52  64 53 6f 6e 67 50 61 6e  |ng.k...RdSongPan|
0000efa0  65 0d 6b 9e 05 e1 0d 6b  a8 04 0d 6b b2 13 dd f2  |e.k....k...k....|
0000efb0  4d 6f 64 54 69 74 6c 65  28 73 73 25 29 0d 6b bc  |ModTitle(ss%).k.|
0000efc0  09 ea 20 74 69 24 0d 6b  c6 1a e7 20 73 73 25 3d  |.. ti$.k... ss%=|
0000efd0  73 61 6d 70 6c 65 73 61  76 65 64 25 20 8c 20 e1  |samplesaved% . .|
0000efe0  0d 6b d0 14 74 69 24 3d  24 28 77 77 6f 72 6b 25  |.k..ti$=$(wwork%|
0000eff0  21 37 32 29 0d 6b da 2a  e7 20 a7 74 69 24 2c 22  |!72).k.*. .ti$,"|
0000f000  20 22 29 3c 3e 30 20 8c  20 74 69 24 3d c0 74 69  | ")<>0 . ti$=.ti|
0000f010  24 2c a7 74 69 24 2c 22  20 22 29 2d 31 29 0d 6b  |$,.ti$," ")-1).k|
0000f020  e4 1a e7 20 73 73 25 3d  30 20 8c 20 74 69 24 3d  |... ss%=0 . ti$=|
0000f030  74 69 24 2b 22 20 2a 22  0d 6b ee 14 24 28 77 77  |ti$+" *".k..$(ww|
0000f040  6f 72 6b 25 21 37 32 29  3d 74 69 24 0d 6b f8 13  |ork%!72)=ti$.k..|
0000f050  74 65 6d 70 25 21 30 3d  77 77 6f 72 6b 68 25 0d  |temp%!0=wworkh%.|
0000f060  6c 02 24 c8 99 22 57 69  6d 70 5f 47 65 74 57 69  |l.$.."Wimp_GetWi|
0000f070  6e 64 6f 77 4f 75 74 6c  69 6e 65 22 2c 2c 74 65  |ndowOutline",,te|
0000f080  6d 70 25 0d 6c 0c 41 c8  99 22 57 69 6d 70 5f 46  |mp%.l.A.."Wimp_F|
0000f090  6f 72 63 65 52 65 64 72  61 77 22 2c 2d 31 2c 74  |orceRedraw",-1,t|
0000f0a0  65 6d 70 25 21 34 2c 74  65 6d 70 25 21 31 36 2d  |emp%!4,temp%!16-|
0000f0b0  34 30 2c 74 65 6d 70 25  21 31 32 2c 74 65 6d 70  |40,temp%!12,temp|
0000f0c0  25 21 31 36 0d 6c 16 14  73 61 6d 70 6c 65 73 61  |%!16.l..samplesa|
0000f0d0  76 65 64 25 3d 73 73 25  0d 6c 20 05 e1 0d 6c 2a  |ved%=ss%.l ...l*|
0000f0e0  04 0d 6c 34 1e dd f2 4c  6f 61 64 54 65 6d 70 28  |..l4...LoadTemp(|
0000f0f0  f8 20 73 74 61 72 74 25  2c 6e 61 6d 65 24 29 0d  |. start%,name$).|
0000f100  6c 3e 11 24 74 6e 61 6d  65 25 3d 6e 61 6d 65 24  |l>.$tname%=name$|
0000f110  0d 6c 48 5a c8 99 22 57  69 6d 70 5f 4c 6f 61 64  |.lHZ.."Wimp_Load|
0000f120  54 65 6d 70 6c 61 74 65  22 2c 2c 73 74 61 72 74  |Template",,start|
0000f130  25 2c 69 63 62 75 66 6e  25 2c 69 63 62 75 66 25  |%,icbufn%,icbuf%|
0000f140  2b 34 30 30 30 2c 2d 31  2c 74 6e 61 6d 65 25 2c  |+4000,-1,tname%,|
0000f150  30 b8 2c 73 74 61 72 74  25 2c 69 63 62 75 66 6e  |0.,start%,icbufn|
0000f160  25 2c 2c 2c 2c 6e 65 78  74 25 0d 6c 52 49 e7 20  |%,,,,next%.lRI. |
0000f170  6e 65 78 74 25 3d 30 20  8c 20 c8 99 22 57 69 6d  |next%=0 . .."Wim|
0000f180  70 5f 43 6c 6f 73 65 54  65 6d 70 6c 61 74 65 22  |p_CloseTemplate"|
0000f190  3a 85 20 30 2c 22 54 65  6d 70 6c 61 74 65 20 22  |:. 0,"Template "|
0000f1a0  2b 6e 61 6d 65 24 2b 22  20 6e 6f 74 20 66 6f 75  |+name$+" not fou|
0000f1b0  6e 64 22 0d 6c 5c 05 e1  0d 6c 66 04 0d 6c 70 13  |nd".l\...lf..lp.|
0000f1c0  dd f2 52 65 70 6f 72 74  45 72 72 28 61 24 29 0d  |..ReportErr(a$).|
0000f1d0  6c 7a 0e 74 65 6d 70 32  25 21 30 3d 30 0d 6c 84  |lz.temp2%!0=0.l.|
0000f1e0  12 24 28 74 65 6d 70 32  25 2b 34 29 3d 61 24 0d  |.$(temp2%+4)=a$.|
0000f1f0  6c 8e 29 c8 99 22 57 69  6d 70 5f 52 65 70 6f 72  |l.).."Wimp_Repor|
0000f200  74 45 72 72 6f 72 22 2c  74 65 6d 70 32 25 2c 31  |tError",temp2%,1|
0000f210  2c 22 53 46 58 45 44 22  0d 6c 98 05 e1 0d 6c a2  |,"SFXED".l....l.|
0000f220  04 0d 6c ac 11 dd a4 43  6f 6e 66 69 72 6d 28 61  |..l....Confirm(a|
0000f230  24 29 0d 6c b6 0e 74 65  6d 70 32 25 21 30 3d 30  |$).l..temp2%!0=0|
0000f240  0d 6c c0 12 24 28 74 65  6d 70 32 25 2b 34 29 3d  |.l..$(temp2%+4)=|
0000f250  61 24 0d 6c ca 34 c8 99  22 57 69 6d 70 5f 52 65  |a$.l.4.."Wimp_Re|
0000f260  70 6f 72 74 45 72 72 6f  72 22 2c 74 65 6d 70 32  |portError",temp2|
0000f270  25 2c 25 31 30 30 31 31  2c 22 43 6f 6e 66 69 72  |%,%10011,"Confir|
0000f280  6d 22 b8 2c 41 25 0d 6c  d4 07 3d 41 25 0d 6c de  |m".,A%.l..=A%.l.|
0000f290  04 0d 6c e8 10 dd a4 69  6e 74 65 72 72 28 61 24  |..l....interr(a$|
0000f2a0  29 0d 6c f2 0e 74 65 6d  70 32 25 21 30 3d 30 0d  |).l..temp2%!0=0.|
0000f2b0  6c fc 12 24 28 74 65 6d  70 32 25 2b 34 29 3d 61  |l..$(temp2%+4)=a|
0000f2c0  24 0d 6d 06 42 c8 99 22  57 69 6d 70 5f 52 65 70  |$.m.B.."Wimp_Rep|
0000f2d0  6f 72 74 45 72 72 6f 72  22 2c 74 65 6d 70 32 25  |ortError",temp2%|
0000f2e0  2c 25 31 30 30 31 31 2c  22 53 46 58 45 44 20 49  |,%10011,"SFXED I|
0000f2f0  6e 74 65 72 6e 61 6c 20  45 72 72 6f 72 2e 22 b8  |nternal Error.".|
0000f300  2c 41 25 0d 6d 10 07 3d  41 25 0d 6d 1a 04 0d 6d  |,A%.m..=A%.m...m|
0000f310  24 22 f4 20 74 69 74 6c  65 73 74 72 69 6e 67 2c  |$". titlestring,|
0000f320  20 77 69 64 74 68 20 69  6e 20 63 68 61 72 73 2e  | width in chars.|
0000f330  0d 6d 2e 15 dd a4 4d 65  6e 75 48 65 61 64 28 74  |.m....MenuHead(t|
0000f340  24 2c 77 25 29 0d 6d 38  08 ea 20 61 25 0d 6d 42  |$,w%).m8.. a%.mB|
0000f350  16 61 25 3d 4d 65 6e 75  73 25 2b 4d 65 6e 75 50  |.a%=Menus%+MenuP|
0000f360  74 72 25 0d 6d 4c 0a 24  61 25 3d 74 24 0d 6d 56  |tr%.mL.$a%=t$.mV|
0000f370  0b 61 25 3f 31 32 3d 37  0d 6d 60 0b 61 25 3f 31  |.a%?12=7.m`.a%?1|
0000f380  33 3d 32 0d 6d 6a 0b 61  25 3f 31 34 3d 37 0d 6d  |3=2.mj.a%?14=7.m|
0000f390  74 0b 61 25 3f 31 35 3d  30 0d 6d 7e 0f 61 25 21  |t.a%?15=0.m~.a%!|
0000f3a0  31 36 3d 77 25 2a 31 36  0d 6d 88 0c 61 25 21 32  |16=w%*16.m..a%!2|
0000f3b0  30 3d 34 34 0d 6d 92 0b  61 25 21 32 34 3d 30 0d  |0=44.m..a%!24=0.|
0000f3c0  6d 9c 10 4d 65 6e 75 50  74 72 25 2b 3d 32 38 0d  |m..MenuPtr%+=28.|
0000f3d0  6d a6 07 3d 61 25 0d 6d  b0 04 0d 6d ba 3b f4 20  |m..=a%.m...m.;. |
0000f3e0  69 74 65 6d 74 65 78 74  2c 20 66 6c 61 67 73 2c  |itemtext, flags,|
0000f3f0  20 69 6e 64 69 72 65 63  74 65 64 2c 20 76 61 6c  | indirected, val|
0000f400  2e 20 73 74 72 69 6e 67  2c 20 6d 61 78 2e 20 6c  |. string, max. l|
0000f410  65 6e 67 74 68 0d 6d c4  1e dd f2 41 64 64 49 74  |ength.m....AddIt|
0000f420  65 6d 28 69 24 2c 66 25  2c 69 25 2c 76 24 2c 6d  |em(i$,f%,i%,v$,m|
0000f430  6c 25 29 0d 6d ce 08 ea  20 61 25 0d 6d d8 16 61  |l%).m... a%.m..a|
0000f440  25 3d 4d 65 6e 75 73 25  2b 4d 65 6e 75 50 74 72  |%=Menus%+MenuPtr|
0000f450  25 0d 6d e2 2b e7 20 28  a9 28 69 24 29 3e 31 31  |%.m.+. (.(i$)>11|
0000f460  29 80 28 69 25 3d 30 29  20 8c 20 69 25 3d 2d 31  |).(i%=0) . i%=-1|
0000f470  3a 6d 6c 25 3d a9 28 69  24 29 2b 31 0d 6d ec 0f  |:ml%=.(i$)+1.m..|
0000f480  61 25 21 30 3d 66 25 80  32 35 35 0d 6d f6 5f e7  |a%!0=f%.255.m._.|
0000f490  20 66 25 80 20 32 35 36  20 8c 20 61 25 21 38 3d  | f%. 256 . a%!8=|
0000f4a0  25 30 30 30 30 30 31 31  31 30 31 30 30 30 30 30  |%000001110100000|
0000f4b0  31 31 30 30 31 30 30 30  30 30 30 30 31 30 30 30  |1100100000001000|
0000f4c0  31 20 8b 20 61 25 21 38  3d 25 30 30 30 30 30 31  |1 . a%!8=%000001|
0000f4d0  31 31 30 30 30 30 30 30  30 31 31 30 30 31 30 30  |1100000001100100|
0000f4e0  30 30 30 30 30 31 30 30  30 31 0d 6e 00 0b 61 25  |0000010001.n..a%|
0000f4f0  21 34 3d 2d 31 0d 6e 0a  0a e7 20 69 25 20 8c 0d  |!4=-1.n... i% ..|
0000f500  6e 14 0f 20 20 61 25 21  38 2b 3d 32 35 36 0d 6e  |n..  a%!8+=256.n|
0000f510  1e 22 20 20 24 28 4d 65  6e 75 44 61 74 61 25 2b  |."  $(MenuData%+|
0000f520  4d 65 6e 75 44 61 74 61  50 74 72 25 29 3d 69 24  |MenuDataPtr%)=i$|
0000f530  0d 6e 28 22 20 20 61 25  21 31 32 3d 4d 65 6e 75  |.n("  a%!12=Menu|
0000f540  44 61 74 61 25 2b 4d 65  6e 75 44 61 74 61 50 74  |Data%+MenuDataPt|
0000f550  72 25 0d 6e 32 1b 20 20  4d 65 6e 75 44 61 74 61  |r%.n2.  MenuData|
0000f560  50 74 72 25 2b 3d a9 28  69 24 29 2b 31 0d 6e 3c  |Ptr%+=.(i$)+1.n<|
0000f570  22 20 20 24 28 4d 65 6e  75 44 61 74 61 25 2b 4d  |"  $(MenuData%+M|
0000f580  65 6e 75 44 61 74 61 50  74 72 25 29 3d 76 24 0d  |enuDataPtr%)=v$.|
0000f590  6e 46 22 20 20 61 25 21  31 36 3d 4d 65 6e 75 44  |nF"  a%!16=MenuD|
0000f5a0  61 74 61 25 2b 4d 65 6e  75 44 61 74 61 50 74 72  |ata%+MenuDataPtr|
0000f5b0  25 0d 6e 50 1b 20 20 4d  65 6e 75 44 61 74 61 50  |%.nP.  MenuDataP|
0000f5c0  74 72 25 2b 3d a9 28 76  24 29 2b 31 0d 6e 5a 0f  |tr%+=.(v$)+1.nZ.|
0000f5d0  20 20 61 25 21 32 30 3d  6d 6c 25 0d 6e 64 05 cc  |  a%!20=ml%.nd..|
0000f5e0  0d 6e 6e 11 20 20 24 28  61 25 2b 31 32 29 3d 69  |.nn.  $(a%+12)=i|
0000f5f0  24 0d 6e 78 05 cd 0d 6e  82 10 4d 65 6e 75 50 74  |$.nx...n..MenuPt|
0000f600  72 25 2b 3d 32 34 0d 6e  8c 05 e1 0d 6e 96 04 0d  |r%+=24.n....n...|
0000f610  6e a0 20 f4 20 6d 65 6e  75 2c 20 69 74 65 6d 2c  |n. . menu, item,|
0000f620  20 73 75 62 6d 65 6e 75  70 6f 69 6e 74 65 72 0d  | submenupointer.|
0000f630  6e aa 1a dd f2 41 64 64  53 75 62 4d 65 6e 75 28  |n....AddSubMenu(|
0000f640  6d 25 2c 69 25 2c 70 25  29 0d 6e b4 16 6d 25 21  |m%,i%,p%).n..m%!|
0000f650  28 32 38 2b 32 34 2a 69  25 2b 34 29 3d 70 25 0d  |(28+24*i%+4)=p%.|
0000f660  6e be 05 e1 0d 6e c8 04  0d 6e d2 0b dd f2 4d 65  |n....n...n....Me|
0000f670  6e 75 73 0d 6e dc 11 de  20 4d 65 6e 75 73 25 20  |nus.n... Menus% |
0000f680  34 30 30 30 0d 6e e6 14  de 20 4d 65 6e 75 44 61  |4000.n... MenuDa|
0000f690  74 61 25 20 32 30 30 30  0d 6e f0 0e 4d 65 6e 75  |ta% 2000.n..Menu|
0000f6a0  50 74 72 25 3d 30 0d 6e  fa 12 4d 65 6e 75 44 61  |Ptr%=0.n..MenuDa|
0000f6b0  74 61 50 74 72 25 3d 30  0d 6f 04 04 0d 6f 0e 22  |taPtr%=0.o...o."|
0000f6c0  69 63 6f 6e 6d 65 6e 75  25 3d a4 4d 65 6e 75 48  |iconmenu%=.MenuH|
0000f6d0  65 61 64 28 22 53 46 58  45 44 22 2c 36 29 0d 6f  |ead("SFXED",6).o|
0000f6e0  18 1d f2 41 64 64 49 74  65 6d 28 22 49 6e 66 6f  |...AddItem("Info|
0000f6f0  22 2c 30 2c 30 2c 22 22  2c 30 29 0d 6f 22 1f f2  |",0,0,"",0).o"..|
0000f700  41 64 64 49 74 65 6d 28  22 51 75 69 74 22 2c 31  |AddItem("Quit",1|
0000f710  32 38 2c 30 2c 22 22 2c  30 29 0d 6f 2c 25 f2 41  |28,0,"",0).o,%.A|
0000f720  64 64 53 75 62 4d 65 6e  75 28 69 63 6f 6e 6d 65  |ddSubMenu(iconme|
0000f730  6e 75 25 2c 30 2c 77 61  62 6f 75 74 68 25 29 0d  |nu%,0,wabouth%).|
0000f740  6f 36 04 0d 6f 40 22 77  6f 72 6b 6d 65 6e 75 25  |o6..o@"workmenu%|
0000f750  3d a4 4d 65 6e 75 48 65  61 64 28 22 53 46 58 45  |=.MenuHead("SFXE|
0000f760  44 22 2c 38 29 0d 6f 4a  1d f2 41 64 64 49 74 65  |D",8).oJ..AddIte|
0000f770  6d 28 22 4d 69 73 63 22  2c 30 2c 30 2c 22 22 2c  |m("Misc",0,0,"",|
0000f780  30 29 0d 6f 54 1d f2 41  64 64 49 74 65 6d 28 22  |0).oT..AddItem("|
0000f790  53 61 76 65 22 2c 30 2c  30 2c 22 22 2c 30 29 0d  |Save",0,0,"",0).|
0000f7a0  6f 5e 1d f2 41 64 64 49  74 65 6d 28 22 45 64 69  |o^..AddItem("Edi|
0000f7b0  74 22 2c 30 2c 30 2c 22  22 2c 30 29 0d 6f 68 1f  |t",0,0,"",0).oh.|
0000f7c0  f2 41 64 64 49 74 65 6d  28 22 53 65 6c 65 63 74  |.AddItem("Select|
0000f7d0  22 2c 30 2c 30 2c 22 22  2c 30 29 0d 6f 72 1d f2  |",0,0,"",0).or..|
0000f7e0  41 64 64 49 74 65 6d 28  22 5a 6f 6f 6d 22 2c 30  |AddItem("Zoom",0|
0000f7f0  2c 30 2c 22 22 2c 30 29  0d 6f 7c 1d f2 41 64 64  |,0,"",0).o|..Add|
0000f800  49 74 65 6d 28 22 4c 6f  6f 70 22 2c 30 2c 30 2c  |Item("Loop",0,0,|
0000f810  22 22 2c 30 29 0d 6f 86  20 f2 41 64 64 49 74 65  |"",0).o. .AddIte|
0000f820  6d 28 22 47 6f 6f 64 69  65 73 22 2c 30 2c 30 2c  |m("Goodies",0,0,|
0000f830  22 22 2c 30 29 0d 6f 90  1f f2 41 64 64 49 74 65  |"",0).o...AddIte|
0000f840  6d 28 22 53 6f 6e 67 22  2c 31 32 38 2c 30 2c 22  |m("Song",128,0,"|
0000f850  22 2c 30 29 0d 6f 9a 22  6d 69 73 63 6d 65 6e 75  |",0).o."miscmenu|
0000f860  25 3d a4 4d 65 6e 75 48  65 61 64 28 22 4d 69 73  |%=.MenuHead("Mis|
0000f870  63 22 2c 31 32 29 0d 6f  a4 1d f2 41 64 64 49 74  |c",12).o...AddIt|
0000f880  65 6d 28 22 49 6e 66 6f  22 2c 38 2c 30 2c 22 22  |em("Info",8,0,""|
0000f890  2c 30 29 0d 6f ae 24 f2  41 64 64 49 74 65 6d 28  |,0).o.$.AddItem(|
0000f8a0  22 53 61 6d 70 6c 65 20  54 79 70 65 22 2c 30 2c  |"Sample Type",0,|
0000f8b0  30 2c 22 22 2c 30 29 0d  6f b8 23 f2 41 64 64 49  |0,"",0).o.#.AddI|
0000f8c0  74 65 6d 28 22 53 65 74  20 42 75 66 66 65 72 22  |tem("Set Buffer"|
0000f8d0  2c 30 2c 30 2c 22 22 2c  30 29 0d 6f c2 22 f2 41  |,0,0,"",0).o.".A|
0000f8e0  64 64 49 74 65 6d 28 22  52 65 73 74 61 72 74 22  |ddItem("Restart"|
0000f8f0  2c 31 32 38 2c 30 2c 22  22 2c 30 29 0d 6f cc 29  |,128,0,"",0).o.)|
0000f900  74 79 70 65 6d 65 6e 75  25 3d a4 4d 65 6e 75 48  |typemenu%=.MenuH|
0000f910  65 61 64 28 22 53 61 6d  70 6c 65 20 54 79 70 65  |ead("Sample Type|
0000f920  22 2c 31 39 29 0d 6f d6  2b f2 41 64 64 49 74 65  |",19).o.+.AddIte|
0000f930  6d 28 22 4c 6f 67 61 72  69 74 68 6d 69 63 20 20  |m("Logarithmic  |
0000f940  20 20 20 46 36 22 2c 30  2c 30 2c 22 22 2c 30 29  |   F6",0,0,"",0)|
0000f950  0d 6f e0 2b f2 41 64 64  49 74 65 6d 28 22 53 69  |.o.+.AddItem("Si|
0000f960  67 6e 65 64 20 4c 69 6e  65 61 72 20 20 20 46 37  |gned Linear   F7|
0000f970  22 2c 31 2c 30 2c 22 22  2c 30 29 0d 6f ea 2d f2  |",1,0,"",0).o.-.|
0000f980  41 64 64 49 74 65 6d 28  22 55 6e 73 69 67 6e 65  |AddItem("Unsigne|
0000f990  64 20 4c 69 6e 65 61 72  20 46 38 22 2c 31 32 38  |d Linear F8",128|
0000f9a0  2c 30 2c 22 22 2c 30 29  0d 6f f4 27 6d 62 75 66  |,0,"",0).o.'mbuf|
0000f9b0  6c 65 6e 25 3d a4 4d 65  6e 75 48 65 61 64 28 22  |len%=.MenuHead("|
0000f9c0  4c 65 6e 67 74 68 20 28  4b 29 22 2c 31 31 29 0d  |Length (K)",11).|
0000f9d0  6f fe 25 f2 41 64 64 49  74 65 6d 28 22 31 32 38  |o.%.AddItem("128|
0000f9e0  22 2c 31 32 38 2b 34 2c  2d 31 2c 22 41 30 2d 39  |",128+4,-1,"A0-9|
0000f9f0  22 2c 35 29 0d 70 08 23  73 61 76 65 6d 65 6e 75  |",5).p.#savemenu|
0000fa00  31 25 3d a4 4d 65 6e 75  48 65 61 64 28 22 53 61  |1%=.MenuHead("Sa|
0000fa10  76 65 22 2c 31 30 29 0d  70 12 1c f2 41 64 64 49  |ve",10).p...AddI|
0000fa20  74 65 6d 28 22 41 6c 6c  22 2c 38 2c 30 2c 22 22  |tem("All",8,0,""|
0000fa30  2c 30 29 0d 70 1c 21 f2  41 64 64 49 74 65 6d 28  |,0).p.!.AddItem(|
0000fa40  22 53 65 6c 65 63 74 65  64 22 2c 38 2c 30 2c 22  |"Selected",8,0,"|
0000fa50  22 2c 30 29 0d 70 26 26  f2 41 64 64 49 74 65 6d  |",0).p&&.AddItem|
0000fa60  28 22 43 6c 69 70 62 6f  61 72 64 22 2c 31 32 38  |("Clipboard",128|
0000fa70  2b 38 2c 30 2c 22 22 2c  30 29 0d 70 30 2a 73 61  |+8,0,"",0).p0*sa|
0000fa80  76 65 6d 65 6e 75 32 25  3d a4 4d 65 6e 75 48 65  |vemenu2%=.MenuHe|
0000fa90  61 64 28 22 20 20 20 20  20 20 20 20 20 20 20 22  |ad("           "|
0000faa0  2c 31 32 29 0d 70 3a 24  f2 41 64 64 49 74 65 6d  |,12).p:$.AddItem|
0000fab0  28 22 54 72 61 63 6b 65  72 22 2c 32 35 36 2b 38  |("Tracker",256+8|
0000fac0  2c 30 2c 22 22 2c 30 29  0d 70 44 27 f2 41 64 64  |,0,"",0).pD'.Add|
0000fad0  49 74 65 6d 28 22 54 72  61 63 6b 65 72 5f 4e 48  |Item("Tracker_NH|
0000fae0  22 2c 32 35 36 2b 38 2c  30 2c 22 22 2c 30 29 0d  |",256+8,0,"",0).|
0000faf0  70 4e 25 f2 41 64 64 49  74 65 6d 28 22 41 72 6d  |pN%.AddItem("Arm|
0000fb00  61 64 65 75 73 22 2c 32  35 36 2b 38 2c 30 2c 22  |adeus",256+8,0,"|
0000fb10  22 2c 30 29 0d 70 58 23  f2 41 64 64 49 74 65 6d  |",0).pX#.AddItem|
0000fb20  28 22 44 53 45 64 69 74  22 2c 32 35 36 2b 38 2c  |("DSEdit",256+8,|
0000fb30  30 2c 22 22 2c 30 29 0d  70 62 20 f2 41 64 64 49  |0,"",0).pb .AddI|
0000fb40  74 65 6d 28 22 45 4d 52  22 2c 32 35 36 2b 38 2c  |tem("EMR",256+8,|
0000fb50  30 2c 22 22 2c 30 29 0d  70 6c 20 f2 41 64 64 49  |0,"",0).pl .AddI|
0000fb60  74 65 6d 28 22 52 61 77  22 2c 32 35 36 2b 38 2c  |tem("Raw",256+8,|
0000fb70  30 2c 22 22 2c 30 29 0d  70 76 27 f2 41 64 64 49  |0,"",0).pv'.AddI|
0000fb80  74 65 6d 28 22 4d 6f 64  75 6c 65 22 2c 32 35 36  |tem("Module",256|
0000fb90  2b 31 32 38 2b 38 2c 30  2c 22 22 2c 30 29 0d 70  |+128+8,0,"",0).p|
0000fba0  80 22 65 64 69 74 6d 65  6e 75 25 3d a4 4d 65 6e  |."editmenu%=.Men|
0000fbb0  75 48 65 61 64 28 22 45  64 69 74 22 2c 31 31 29  |uHead("Edit",11)|
0000fbc0  0d 70 8a 23 f2 41 64 64  49 74 65 6d 28 22 43 75  |.p.#.AddItem("Cu|
0000fbd0  74 20 20 20 20 20 5e 58  22 2c 30 2c 30 2c 22 22  |t     ^X",0,0,""|
0000fbe0  2c 30 29 0d 70 94 23 f2  41 64 64 49 74 65 6d 28  |,0).p.#.AddItem(|
0000fbf0  22 43 6f 70 79 20 20 20  20 5e 43 22 2c 30 2c 30  |"Copy    ^C",0,0|
0000fc00  2c 22 22 2c 30 29 0d 70  9e 23 f2 41 64 64 49 74  |,"",0).p.#.AddIt|
0000fc10  65 6d 28 22 50 61 73 74  65 20 20 20 5e 56 22 2c  |em("Paste   ^V",|
0000fc20  30 2c 30 2c 22 22 2c 30  29 0d 70 a8 23 f2 41 64  |0,0,"",0).p.#.Ad|
0000fc30  64 49 74 65 6d 28 22 44  65 6c 65 74 65 20 20 5e  |dItem("Delete  ^|
0000fc40  44 22 2c 30 2c 30 2c 22  22 2c 30 29 0d 70 b2 20  |D",0,0,"",0).p. |
0000fc50  f2 41 64 64 49 74 65 6d  28 22 44 65 6c 65 74 65  |.AddItem("Delete|
0000fc60  2a 22 2c 30 2c 30 2c 22  22 2c 30 29 0d 70 bc 23  |*",0,0,"",0).p.#|
0000fc70  f2 41 64 64 49 74 65 6d  28 22 44 65 6c 65 74 65  |.AddItem("Delete|
0000fc80  4c 20 5e 47 22 2c 30 2c  30 2c 22 22 2c 30 29 0d  |L ^G",0,0,"",0).|
0000fc90  70 c6 25 f2 41 64 64 49  74 65 6d 28 22 44 65 6c  |p.%.AddItem("Del|
0000fca0  65 74 65 52 20 5e 48 22  2c 31 32 38 2c 30 2c 22  |eteR ^H",128,0,"|
0000fcb0  22 2c 30 29 0d 70 d0 26  73 65 6c 65 63 74 6d 65  |",0).p.&selectme|
0000fcc0  6e 75 25 3d a4 4d 65 6e  75 48 65 61 64 28 22 53  |nu%=.MenuHead("S|
0000fcd0  65 6c 65 63 74 22 2c 31  30 29 0d 70 da 22 f2 41  |elect",10).p.".A|
0000fce0  64 64 49 74 65 6d 28 22  41 6c 6c 20 20 20 20 5e  |ddItem("All    ^|
0000fcf0  41 22 2c 30 2c 30 2c 22  22 2c 30 29 0d 70 e4 1d  |A",0,0,"",0).p..|
0000fd00  f2 41 64 64 49 74 65 6d  28 22 4c 6f 6f 70 22 2c  |.AddItem("Loop",|
0000fd10  30 2c 30 2c 22 22 2c 30  29 0d 70 ee 1d f2 41 64  |0,0,"",0).p...Ad|
0000fd20  64 49 74 65 6d 28 22 4c  65 66 74 22 2c 30 2c 30  |dItem("Left",0,0|
0000fd30  2c 22 22 2c 30 29 0d 70  f8 1e f2 41 64 64 49 74  |,"",0).p...AddIt|
0000fd40  65 6d 28 22 52 69 67 68  74 22 2c 30 2c 30 2c 22  |em("Right",0,0,"|
0000fd50  22 2c 30 29 0d 71 02 1f  f2 41 64 64 49 74 65 6d  |",0).q...AddItem|
0000fd60  28 22 57 69 6e 64 6f 77  22 2c 30 2c 30 2c 22 22  |("Window",0,0,""|
0000fd70  2c 30 29 0d 71 0c 24 f2  41 64 64 49 74 65 6d 28  |,0).q.$.AddItem(|
0000fd80  22 43 6c 65 61 72 20 20  5e 5a 22 2c 31 32 38 2c  |"Clear  ^Z",128,|
0000fd90  30 2c 22 22 2c 30 29 0d  71 16 22 7a 6f 6f 6d 6d  |0,"",0).q."zoomm|
0000fda0  65 6e 75 25 3d a4 4d 65  6e 75 48 65 61 64 28 22  |enu%=.MenuHead("|
0000fdb0  5a 6f 6f 6d 22 2c 31 32  29 0d 71 20 24 f2 41 64  |Zoom",12).q $.Ad|
0000fdc0  64 49 74 65 6d 28 22 41  6c 6c 20 20 20 20 20 20  |dItem("All      |
0000fdd0  5e 51 22 2c 30 2c 30 2c  22 22 2c 30 29 0d 71 2a  |^Q",0,0,"",0).q*|
0000fde0  24 f2 41 64 64 49 74 65  6d 28 22 4f 75 74 20 20  |$.AddItem("Out  |
0000fdf0  20 20 20 20 5e 57 22 2c  30 2c 30 2c 22 22 2c 30  |    ^W",0,0,"",0|
0000fe00  29 0d 71 34 1d f2 41 64  64 49 74 65 6d 28 22 4c  |).q4..AddItem("L|
0000fe10  6f 6f 70 22 2c 30 2c 30  2c 22 22 2c 30 29 0d 71  |oop",0,0,"",0).q|
0000fe20  3e 24 f2 41 64 64 49 74  65 6d 28 22 53 65 6c 65  |>$.AddItem("Sele|
0000fe30  63 74 65 64 20 5e 53 22  2c 30 2c 30 2c 22 22 2c  |cted ^S",0,0,"",|
0000fe40  30 29 0d 71 48 24 f2 41  64 64 49 74 65 6d 28 22  |0).qH$.AddItem("|
0000fe50  52 65 6d 65 6d 62 65 72  20 5e 54 22 2c 30 2c 30  |Remember ^T",0,0|
0000fe60  2c 22 22 2c 30 29 0d 71  52 26 f2 41 64 64 49 74  |,"",0).qR&.AddIt|
0000fe70  65 6d 28 22 52 65 63 61  6c 6c 20 20 20 5e 52 22  |em("Recall   ^R"|
0000fe80  2c 31 32 38 2c 30 2c 22  22 2c 30 29 0d 71 5c 21  |,128,0,"",0).q\!|
0000fe90  6c 6f 6f 70 6d 65 6e 75  25 3d a4 4d 65 6e 75 48  |loopmenu%=.MenuH|
0000fea0  65 61 64 28 22 4c 6f 6f  70 22 2c 39 29 0d 71 66  |ead("Loop",9).qf|
0000feb0  1c f2 41 64 64 49 74 65  6d 28 22 41 6c 6c 22 2c  |..AddItem("All",|
0000fec0  30 2c 30 2c 22 22 2c 30  29 0d 71 70 1f f2 41 64  |0,0,"",0).qp..Ad|
0000fed0  64 49 74 65 6d 28 22 57  69 6e 64 6f 77 22 2c 30  |dItem("Window",0|
0000fee0  2c 30 2c 22 22 2c 30 29  0d 71 7a 21 f2 41 64 64  |,0,"",0).qz!.Add|
0000fef0  49 74 65 6d 28 22 53 65  6c 65 63 74 65 64 22 2c  |Item("Selected",|
0000ff00  30 2c 30 2c 22 22 2c 30  29 0d 71 84 1d f2 41 64  |0,0,"",0).q...Ad|
0000ff10  64 49 74 65 6d 28 22 48  61 6c 66 22 2c 30 2c 30  |dItem("Half",0,0|
0000ff20  2c 22 22 2c 30 29 0d 71  8e 1f f2 41 64 64 49 74  |,"",0).q...AddIt|
0000ff30  65 6d 28 22 44 6f 75 62  6c 65 22 2c 30 2c 30 2c  |em("Double",0,0,|
0000ff40  22 22 2c 30 29 0d 71 98  21 f2 41 64 64 49 74 65  |"",0).q.!.AddIte|
0000ff50  6d 28 22 52 65 6d 65 6d  62 65 72 22 2c 30 2c 30  |m("Remember",0,0|
0000ff60  2c 22 22 2c 30 29 0d 71  a2 21 f2 41 64 64 49 74  |,"",0).q.!.AddIt|
0000ff70  65 6d 28 22 52 65 63 61  6c 6c 22 2c 31 32 38 2c  |em("Recall",128,|
0000ff80  30 2c 22 22 2c 30 29 0d  71 ac 28 67 6f 6f 64 69  |0,"",0).q.(goodi|
0000ff90  65 73 6d 65 6e 75 25 3d  a4 4d 65 6e 75 48 65 61  |esmenu%=.MenuHea|
0000ffa0  64 28 22 47 6f 6f 64 69  65 73 22 2c 31 35 29 0d  |d("Goodies",15).|
0000ffb0  71 b6 26 f2 41 64 64 49  74 65 6d 28 22 53 69 67  |q.&.AddItem("Sig|
0000ffc0  6e 65 64 20 20 20 20 20  46 39 22 2c 30 2c 30 2c  |ned     F9",0,0,|
0000ffd0  22 22 2c 30 29 0d 71 c0  27 f2 41 64 64 49 74 65  |"",0).q.'.AddIte|
0000ffe0  6d 28 22 4c 69 6e 2d 3e  4c 6f 67 20 20 20 46 31  |m("Lin->Log   F1|
0000fff0  30 22 2c 30 2c 30 2c 22  22 2c 30 29 0d 71 ca 27  |0",0,0,"",0).q.'|
00010000  f2 41 64 64 49 74 65 6d  28 22 4c 6f 67 2d 3e 4c  |.AddItem("Log->L|
00010010  69 6e 20 20 20 46 31 31  22 2c 30 2c 30 2c 22 22  |in   F11",0,0,""|
00010020  2c 30 29 0d 71 d4 20 f2  41 64 64 49 74 65 6d 28  |,0).q. .AddItem(|
00010030  22 52 65 76 65 72 73 65  22 2c 30 2c 30 2c 22 22  |"Reverse",0,0,""|
00010040  2c 30 29 0d 71 de 21 f2  41 64 64 49 74 65 6d 28  |,0).q.!.AddItem(|
00010050  22 4c 6f 77 20 50 61 73  73 22 2c 30 2c 30 2c 22  |"Low Pass",0,0,"|
00010060  22 2c 30 29 0d 71 e8 22  f2 41 64 64 49 74 65 6d  |",0).q.".AddItem|
00010070  28 22 48 69 67 68 20 50  61 73 73 22 2c 30 2c 30  |("High Pass",0,0|
00010080  2c 22 22 2c 30 29 0d 71  f2 20 f2 41 64 64 49 74  |,"",0).q. .AddIt|
00010090  65 6d 28 22 41 6d 70 6c  69 66 79 22 2c 30 2c 30  |em("Amplify",0,0|
000100a0  2c 22 22 2c 30 29 0d 71  fc 24 f2 41 64 64 49 74  |,"",0).q.$.AddIt|
000100b0  65 6d 28 22 45 63 68 6f  2f 52 65 76 65 72 62 22  |em("Echo/Reverb"|
000100c0  2c 30 2c 30 2c 22 22 2c  30 29 0d 72 06 24 f2 41  |,0,0,"",0).r.$.A|
000100d0  64 64 49 74 65 6d 28 22  46 61 64 65 20 49 6e 2f  |ddItem("Fade In/|
000100e0  4f 75 74 22 2c 30 2c 30  2c 22 22 2c 30 29 0d 72  |Out",0,0,"",0).r|
000100f0  10 20 f2 41 64 64 49 74  65 6d 28 22 53 74 72 65  |. .AddItem("Stre|
00010100  74 63 68 22 2c 30 2c 30  2c 22 22 2c 30 29 0d 72  |tch",0,0,"",0).r|
00010110  1a 20 f2 41 64 64 49 74  65 6d 28 22 53 69 6c 65  |. .AddItem("Sile|
00010120  6e 63 65 22 2c 30 2c 30  2c 22 22 2c 30 29 0d 72  |nce",0,0,"",0).r|
00010130  24 26 f2 41 64 64 49 74  65 6d 28 22 46 46 54 20  |$&.AddItem("FFT |
00010140  20 20 20 20 20 20 20 5e  46 22 2c 30 2c 30 2c 22  |       ^F",0,0,"|
00010150  22 2c 30 29 0d 72 2e 25  f2 41 64 64 49 74 65 6d  |",0).r.%.AddItem|
00010160  28 22 41 64 64 20 43 6c  69 70 62 2e 22 2c 31 32  |("Add Clipb.",12|
00010170  38 2c 30 2c 22 22 2c 30  29 0d 72 38 25 6d 66 69  |8,0,"",0).r8%mfi|
00010180  6c 74 6c 6f 25 3d a4 4d  65 6e 75 48 65 61 64 28  |ltlo%=.MenuHead(|
00010190  22 4c 6f 77 20 50 61 73  73 22 2c 31 30 29 0d 72  |"Low Pass",10).r|
000101a0  42 24 f2 41 64 64 49 74  65 6d 28 22 33 32 22 2c  |B$.AddItem("32",|
000101b0  31 32 38 2b 34 2c 2d 31  2c 22 41 30 2d 39 22 2c  |128+4,-1,"A0-9",|
000101c0  34 29 0d 72 4c 26 6d 66  69 6c 74 68 69 25 3d a4  |4).rL&mfilthi%=.|
000101d0  4d 65 6e 75 48 65 61 64  28 22 48 69 67 68 20 50  |MenuHead("High P|
000101e0  61 73 73 22 2c 31 30 29  0d 72 56 25 f2 41 64 64  |ass",10).rV%.Add|
000101f0  49 74 65 6d 28 22 32 32  34 22 2c 31 32 38 2b 34  |Item("224",128+4|
00010200  2c 2d 31 2c 22 41 30 2d  39 22 2c 34 29 0d 72 60  |,-1,"A0-9",4).r`|
00010210  24 6d 73 63 61 6d 70 25  3d a4 4d 65 6e 75 48 65  |$mscamp%=.MenuHe|
00010220  61 64 28 22 56 6f 6c 75  6d 65 20 25 22 2c 31 30  |ad("Volume %",10|
00010230  29 0d 72 6a 25 f2 41 64  64 49 74 65 6d 28 22 31  |).rj%.AddItem("1|
00010240  30 30 22 2c 31 32 38 2b  34 2c 2d 31 2c 22 41 30  |00",128+4,-1,"A0|
00010250  2d 39 22 2c 35 29 0d 72  74 25 6d 6e 65 77 6c 65  |-9",5).rt%mnewle|
00010260  6e 25 3d a4 4d 65 6e 75  48 65 61 64 28 22 4c 65  |n%=.MenuHead("Le|
00010270  6e 67 74 68 20 25 22 2c  31 30 29 0d 72 7e 25 f2  |ngth %",10).r~%.|
00010280  41 64 64 49 74 65 6d 28  22 31 30 30 22 2c 31 32  |AddItem("100",12|
00010290  38 2b 34 2c 2d 31 2c 22  41 30 2d 39 22 2c 35 29  |8+4,-1,"A0-9",5)|
000102a0  0d 72 88 22 6d 66 66 74  61 6d 70 25 3d a4 4d 65  |.r."mfftamp%=.Me|
000102b0  6e 75 48 65 61 64 28 22  53 63 61 6c 65 22 2c 31  |nuHead("Scale",1|
000102c0  30 29 0d 72 92 25 f2 41  64 64 49 74 65 6d 28 22  |0).r.%.AddItem("|
000102d0  32 35 36 22 2c 31 32 38  2b 34 2c 2d 31 2c 22 41  |256",128+4,-1,"A|
000102e0  30 2d 39 22 2c 36 29 0d  72 9c 22 73 6f 6e 67 6d  |0-9",6).r."songm|
000102f0  65 6e 75 25 3d a4 4d 65  6e 75 48 65 61 64 28 22  |enu%=.MenuHead("|
00010300  53 6f 6e 67 22 2c 31 32  29 0d 72 a6 1d f2 41 64  |Song",12).r...Ad|
00010310  64 49 74 65 6d 28 22 50  6c 61 79 22 2c 30 2c 30  |dItem("Play",0,0|
00010320  2c 22 22 2c 30 29 0d 72  b0 1d f2 41 64 64 49 74  |,"",0).r...AddIt|
00010330  65 6d 28 22 53 68 6f 77  22 2c 30 2c 30 2c 22 22  |em("Show",0,0,""|
00010340  2c 30 29 0d 72 ba 21 f2  41 64 64 49 74 65 6d 28  |,0).r.!.AddItem(|
00010350  22 53 61 76 65 22 2c 32  35 36 2b 38 2c 30 2c 22  |"Save",256+8,0,"|
00010360  22 2c 30 29 0d 72 c4 28  f2 41 64 64 49 74 65 6d  |",0).r.(.AddItem|
00010370  28 22 53 61 76 65 20 4d  6f 64 75 6c 65 22 2c 32  |("Save Module",2|
00010380  35 36 2b 38 2c 30 2c 22  22 2c 30 29 0d 72 ce 1e  |56+8,0,"",0).r..|
00010390  f2 41 64 64 49 74 65 6d  28 22 43 6c 65 61 72 22  |.AddItem("Clear"|
000103a0  2c 30 2c 30 2c 22 22 2c  30 29 0d 72 d8 21 f2 41  |,0,0,"",0).r.!.A|
000103b0  64 64 49 74 65 6d 28 22  52 65 70 65 61 74 22 2c  |ddItem("Repeat",|
000103c0  31 32 38 2c 30 2c 22 22  2c 30 29 0d 72 e2 24 f2  |128,0,"",0).r.$.|
000103d0  41 64 64 53 75 62 4d 65  6e 75 28 73 6f 6e 67 6d  |AddSubMenu(songm|
000103e0  65 6e 75 25 2c 32 2c 77  73 61 76 65 68 25 29 0d  |enu%,2,wsaveh%).|
000103f0  72 ec 24 f2 41 64 64 53  75 62 4d 65 6e 75 28 73  |r.$.AddSubMenu(s|
00010400  6f 6e 67 6d 65 6e 75 25  2c 33 2c 77 73 61 76 65  |ongmenu%,3,wsave|
00010410  68 25 29 0d 72 f6 26 f2  41 64 64 53 75 62 4d 65  |h%).r.&.AddSubMe|
00010420  6e 75 28 77 6f 72 6b 6d  65 6e 75 25 2c 30 2c 6d  |nu(workmenu%,0,m|
00010430  69 73 63 6d 65 6e 75 25  29 0d 73 00 27 f2 41 64  |iscmenu%).s.'.Ad|
00010440  64 53 75 62 4d 65 6e 75  28 77 6f 72 6b 6d 65 6e  |dSubMenu(workmen|
00010450  75 25 2c 31 2c 73 61 76  65 6d 65 6e 75 31 25 29  |u%,1,savemenu1%)|
00010460  0d 73 0a 26 f2 41 64 64  53 75 62 4d 65 6e 75 28  |.s.&.AddSubMenu(|
00010470  77 6f 72 6b 6d 65 6e 75  25 2c 32 2c 65 64 69 74  |workmenu%,2,edit|
00010480  6d 65 6e 75 25 29 0d 73  14 28 f2 41 64 64 53 75  |menu%).s.(.AddSu|
00010490  62 4d 65 6e 75 28 77 6f  72 6b 6d 65 6e 75 25 2c  |bMenu(workmenu%,|
000104a0  33 2c 73 65 6c 65 63 74  6d 65 6e 75 25 29 0d 73  |3,selectmenu%).s|
000104b0  1e 26 f2 41 64 64 53 75  62 4d 65 6e 75 28 77 6f  |.&.AddSubMenu(wo|
000104c0  72 6b 6d 65 6e 75 25 2c  34 2c 7a 6f 6f 6d 6d 65  |rkmenu%,4,zoomme|
000104d0  6e 75 25 29 0d 73 28 26  f2 41 64 64 53 75 62 4d  |nu%).s(&.AddSubM|
000104e0  65 6e 75 28 77 6f 72 6b  6d 65 6e 75 25 2c 35 2c  |enu(workmenu%,5,|
000104f0  6c 6f 6f 70 6d 65 6e 75  25 29 0d 73 32 29 f2 41  |loopmenu%).s2).A|
00010500  64 64 53 75 62 4d 65 6e  75 28 77 6f 72 6b 6d 65  |ddSubMenu(workme|
00010510  6e 75 25 2c 36 2c 67 6f  6f 64 69 65 73 6d 65 6e  |nu%,6,goodiesmen|
00010520  75 25 29 0d 73 3c 26 f2  41 64 64 53 75 62 4d 65  |u%).s<&.AddSubMe|
00010530  6e 75 28 77 6f 72 6b 6d  65 6e 75 25 2c 37 2c 73  |nu(workmenu%,7,s|
00010540  6f 6e 67 6d 65 6e 75 25  29 0d 73 46 24 f2 41 64  |ongmenu%).sF$.Ad|
00010550  64 53 75 62 4d 65 6e 75  28 6d 69 73 63 6d 65 6e  |dSubMenu(miscmen|
00010560  75 25 2c 30 2c 77 69 6e  66 6f 68 25 29 0d 73 50  |u%,0,winfoh%).sP|
00010570  26 f2 41 64 64 53 75 62  4d 65 6e 75 28 6d 69 73  |&.AddSubMenu(mis|
00010580  63 6d 65 6e 75 25 2c 31  2c 74 79 70 65 6d 65 6e  |cmenu%,1,typemen|
00010590  75 25 29 0d 73 5a 25 f2  41 64 64 53 75 62 4d 65  |u%).sZ%.AddSubMe|
000105a0  6e 75 28 6d 69 73 63 6d  65 6e 75 25 2c 32 2c 6d  |nu(miscmenu%,2,m|
000105b0  62 75 66 6c 65 6e 25 29  0d 73 64 28 f2 41 64 64  |buflen%).sd(.Add|
000105c0  53 75 62 4d 65 6e 75 28  73 61 76 65 6d 65 6e 75  |SubMenu(savemenu|
000105d0  31 25 2c 30 2c 73 61 76  65 6d 65 6e 75 32 25 29  |1%,0,savemenu2%)|
000105e0  0d 73 6e 28 f2 41 64 64  53 75 62 4d 65 6e 75 28  |.sn(.AddSubMenu(|
000105f0  73 61 76 65 6d 65 6e 75  31 25 2c 31 2c 73 61 76  |savemenu1%,1,sav|
00010600  65 6d 65 6e 75 32 25 29  0d 73 78 28 f2 41 64 64  |emenu2%).sx(.Add|
00010610  53 75 62 4d 65 6e 75 28  73 61 76 65 6d 65 6e 75  |SubMenu(savemenu|
00010620  31 25 2c 32 2c 73 61 76  65 6d 65 6e 75 32 25 29  |1%,2,savemenu2%)|
00010630  0d 73 82 25 f2 41 64 64  53 75 62 4d 65 6e 75 28  |.s.%.AddSubMenu(|
00010640  73 61 76 65 6d 65 6e 75  32 25 2c 30 2c 77 73 61  |savemenu2%,0,wsa|
00010650  76 65 68 25 29 0d 73 8c  25 f2 41 64 64 53 75 62  |veh%).s.%.AddSub|
00010660  4d 65 6e 75 28 73 61 76  65 6d 65 6e 75 32 25 2c  |Menu(savemenu2%,|
00010670  31 2c 77 73 61 76 65 68  25 29 0d 73 96 25 f2 41  |1,wsaveh%).s.%.A|
00010680  64 64 53 75 62 4d 65 6e  75 28 73 61 76 65 6d 65  |ddSubMenu(saveme|
00010690  6e 75 32 25 2c 32 2c 77  73 61 76 65 68 25 29 0d  |nu2%,2,wsaveh%).|
000106a0  73 a0 25 f2 41 64 64 53  75 62 4d 65 6e 75 28 73  |s.%.AddSubMenu(s|
000106b0  61 76 65 6d 65 6e 75 32  25 2c 33 2c 77 73 61 76  |avemenu2%,3,wsav|
000106c0  65 68 25 29 0d 73 aa 25  f2 41 64 64 53 75 62 4d  |eh%).s.%.AddSubM|
000106d0  65 6e 75 28 73 61 76 65  6d 65 6e 75 32 25 2c 34  |enu(savemenu2%,4|
000106e0  2c 77 73 61 76 65 68 25  29 0d 73 b4 25 f2 41 64  |,wsaveh%).s.%.Ad|
000106f0  64 53 75 62 4d 65 6e 75  28 73 61 76 65 6d 65 6e  |dSubMenu(savemen|
00010700  75 32 25 2c 35 2c 77 73  61 76 65 68 25 29 0d 73  |u2%,5,wsaveh%).s|
00010710  be 25 f2 41 64 64 53 75  62 4d 65 6e 75 28 73 61  |.%.AddSubMenu(sa|
00010720  76 65 6d 65 6e 75 32 25  2c 36 2c 77 73 61 76 65  |vemenu2%,6,wsave|
00010730  68 25 29 0d 73 c8 28 f2  41 64 64 53 75 62 4d 65  |h%).s.(.AddSubMe|
00010740  6e 75 28 67 6f 6f 64 69  65 73 6d 65 6e 75 25 2c  |nu(goodiesmenu%,|
00010750  34 2c 6d 66 69 6c 74 6c  6f 25 29 0d 73 d2 28 f2  |4,mfiltlo%).s.(.|
00010760  41 64 64 53 75 62 4d 65  6e 75 28 67 6f 6f 64 69  |AddSubMenu(goodi|
00010770  65 73 6d 65 6e 75 25 2c  35 2c 6d 66 69 6c 74 68  |esmenu%,5,mfilth|
00010780  69 25 29 0d 73 dc 27 f2  41 64 64 53 75 62 4d 65  |i%).s.'.AddSubMe|
00010790  6e 75 28 67 6f 6f 64 69  65 73 6d 65 6e 75 25 2c  |nu(goodiesmenu%,|
000107a0  36 2c 6d 73 63 61 6d 70  25 29 0d 73 e6 27 f2 41  |6,mscamp%).s.'.A|
000107b0  64 64 53 75 62 4d 65 6e  75 28 67 6f 6f 64 69 65  |ddSubMenu(goodie|
000107c0  73 6d 65 6e 75 25 2c 37  2c 77 65 63 68 6f 68 25  |smenu%,7,wechoh%|
000107d0  29 0d 73 f0 27 f2 41 64  64 53 75 62 4d 65 6e 75  |).s.'.AddSubMenu|
000107e0  28 67 6f 6f 64 69 65 73  6d 65 6e 75 25 2c 38 2c  |(goodiesmenu%,8,|
000107f0  77 66 61 64 65 68 25 29  0d 73 fa 28 f2 41 64 64  |wfadeh%).s.(.Add|
00010800  53 75 62 4d 65 6e 75 28  67 6f 6f 64 69 65 73 6d  |SubMenu(goodiesm|
00010810  65 6e 75 25 2c 39 2c 6d  6e 65 77 6c 65 6e 25 29  |enu%,9,mnewlen%)|
00010820  0d 74 04 29 f2 41 64 64  53 75 62 4d 65 6e 75 28  |.t.).AddSubMenu(|
00010830  67 6f 6f 64 69 65 73 6d  65 6e 75 25 2c 31 31 2c  |goodiesmenu%,11,|
00010840  6d 66 66 74 61 6d 70 25  29 0d 74 0e 04 0d 74 18  |mfftamp%).t...t.|
00010850  28 73 65 63 74 6d 65 6e  75 25 3d a4 4d 65 6e 75  |(sectmenu%=.Menu|
00010860  48 65 61 64 28 22 20 20  20 20 20 20 20 20 20 20  |Head("          |
00010870  22 2c 31 35 29 0d 74 22  24 f2 41 64 64 49 74 65  |",15).t"$.AddIte|
00010880  6d 28 22 49 6e 73 65 72  74 20 4c 6f 6f 70 22 2c  |m("Insert Loop",|
00010890  30 2c 30 2c 22 22 2c 30  29 0d 74 2c 24 f2 41 64  |0,0,"",0).t,$.Ad|
000108a0  64 49 74 65 6d 28 22 41  70 70 65 6e 64 20 4c 6f  |dItem("Append Lo|
000108b0  6f 70 22 2c 30 2c 30 2c  22 22 2c 30 29 0d 74 36  |op",0,0,"",0).t6|
000108c0  27 f2 41 64 64 49 74 65  6d 28 22 4f 76 65 72 77  |'.AddItem("Overw|
000108d0  72 69 74 65 20 4c 6f 6f  70 22 2c 30 2c 30 2c 22  |rite Loop",0,0,"|
000108e0  22 2c 30 29 0d 74 40 24  f2 41 64 64 49 74 65 6d  |",0).t@$.AddItem|
000108f0  28 22 44 65 6c 65 74 65  20 4c 6f 6f 70 22 2c 30  |("Delete Loop",0|
00010900  2c 30 2c 22 22 2c 30 29  0d 74 4a 24 f2 41 64 64  |,0,"",0).tJ$.Add|
00010910  49 74 65 6d 28 22 50 6c  61 79 20 74 6f 20 45 6e  |Item("Play to En|
00010920  64 22 2c 30 2c 30 2c 22  22 2c 30 29 0d 74 54 24  |d",0,0,"",0).tT$|
00010930  f2 41 64 64 49 74 65 6d  28 22 50 6c 61 79 20 53  |.AddItem("Play S|
00010940  6f 6e 67 22 2c 31 32 38  2c 30 2c 22 22 2c 30 29  |ong",128,0,"",0)|
00010950  0d 74 5e 05 e1 0d 74 68  04 0d 74 72 0b dd f2 41  |.t^...th..tr...A|
00010960  73 73 65 6d 0d 74 7c 10  de 20 63 6f 64 65 25 20  |ssem.t|.. code% |
00010970  35 30 30 30 0d 74 86 11  e3 20 70 61 73 73 25 3d  |5000.t... pass%=|
00010980  30 b8 32 88 32 0d 74 90  0c 50 25 3d 63 6f 64 65  |0.2.2.t..P%=code|
00010990  25 0d 74 9a 19 5b 20 20  20 20 20 20 20 6f 70 74  |%.t..[       opt|
000109a0  20 20 20 20 20 70 61 73  73 25 0d 74 a4 0b 2e 72  |     pass%.t...r|
000109b0  65 64 72 77 6b 0d 74 ae  1d 73 74 6d 66 64 20 20  |edrwk.t..stmfd  |
000109c0  20 72 31 33 21 2c 7b 72  30 2d 72 31 32 2c 72 31  | r13!,{r0-r12,r1|
000109d0  34 7d 0d 74 b8 18 6c 64  6d 66 64 20 20 20 72 31  |4}.t..ldmfd   r1|
000109e0  33 2c 7b 72 36 2d 72 31  32 7d 0d 74 c2 14 73 75  |3,{r6-r12}.t..su|
000109f0  62 20 20 20 20 20 72 35  2c 72 38 2c 72 37 0d 74  |b     r5,r8,r7.t|
00010a00  cc 1b 61 64 64 20 20 20  20 20 72 30 2c 72 36 2c  |..add     r0,r6,|
00010a10  72 35 2c 61 73 72 20 23  39 0d 74 d6 12 63 6d 70  |r5,asr #9.t..cmp|
00010a20  20 20 20 20 20 72 30 2c  72 31 32 0d 74 e0 13 6d  |     r0,r12.t..m|
00010a30  6f 76 6d 69 20 20 20 72  30 2c 23 26 38 30 0d 74  |ovmi   r0,#&80.t|
00010a40  ea 12 62 6d 69 20 20 20  20 20 73 6b 69 70 66 72  |..bmi     skipfr|
00010a50  0d 74 f4 1d 6c 64 72 62  20 20 20 20 72 30 2c 5b  |.t..ldrb    r0,[|
00010a60  72 36 2c 72 35 2c 61 73  72 20 23 39 5d 0d 74 fe  |r6,r5,asr #9].t.|
00010a70  12 63 6d 70 20 20 20 20  20 72 31 31 2c 23 30 0d  |.cmp     r11,#0.|
00010a80  75 08 16 65 6f 72 65 71  20 20 20 72 30 2c 72 30  |u..eoreq   r0,r0|
00010a90  2c 23 26 38 30 0d 75 12  12 63 6d 70 20 20 20 20  |,#&80.u..cmp    |
00010aa0  20 72 31 31 2c 23 32 0d  75 1c 11 62 6e 65 20 20  | r11,#2.u..bne  |
00010ab0  20 20 20 50 25 2b 31 36  0d 75 26 18 6d 6f 76 73  |   P%+16.u&.movs|
00010ac0  20 20 20 20 72 30 2c 72  30 2c 6c 73 72 20 23 31  |    r0,r0,lsr #1|
00010ad0  0d 75 30 14 72 73 62 63  73 20 20 20 72 30 2c 72  |.u0.rsbcs   r0,r|
00010ae0  30 2c 23 30 0d 75 3a 16  61 64 64 20 20 20 20 20  |0,#0.u:.add     |
00010af0  72 30 2c 72 30 2c 23 31  32 38 0d 75 44 0b 2e 73  |r0,r0,#128.uD..s|
00010b00  6b 69 70 66 72 0d 75 4e  15 61 64 64 20 20 20 20  |kipfr.uN.add    |
00010b10  20 72 32 2c 72 30 2c 72  31 30 0d 75 58 14 73 75  | r2,r0,r10.uX.su|
00010b20  62 20 20 20 20 20 72 31  2c 72 39 2c 23 32 0d 75  |b     r1,r9,#2.u|
00010b30  62 11 6d 6f 76 20 20 20  20 20 72 30 2c 23 34 0d  |b.mov     r0,#4.|
00010b40  75 6c 15 73 77 69 20 20  20 20 20 22 4f 53 5f 50  |ul.swi     "OS_P|
00010b50  6c 6f 74 22 0d 75 76 14  6d 6f 76 20 20 20 20 20  |lot".uv.mov     |
00010b60  72 31 32 2c 23 35 31 32  0d 75 80 16 61 64 64 20  |r12,#512.u..add |
00010b70  20 20 20 20 72 31 32 2c  72 31 32 2c 23 31 0d 75  |    r12,r12,#1.u|
00010b80  8a 14 61 64 64 20 20 20  20 20 72 35 2c 72 35 2c  |..add     r5,r5,|
00010b90  72 37 0d 75 94 0d 2e 64  72 61 77 6c 6f 6f 70 0d  |r7.u...drawloop.|
00010ba0  75 9e 1d 6c 64 72 62 20  20 20 20 72 30 2c 5b 72  |u..ldrb    r0,[r|
00010bb0  36 2c 72 35 2c 61 73 72  20 23 39 5d 0d 75 a8 12  |6,r5,asr #9].u..|
00010bc0  63 6d 70 20 20 20 20 20  72 31 31 2c 23 30 0d 75  |cmp     r11,#0.u|
00010bd0  b2 16 65 6f 72 65 71 20  20 20 72 30 2c 72 30 2c  |..eoreq   r0,r0,|
00010be0  23 26 38 30 0d 75 bc 12  63 6d 70 20 20 20 20 20  |#&80.u..cmp     |
00010bf0  72 31 31 2c 23 32 0d 75  c6 11 62 6e 65 20 20 20  |r11,#2.u..bne   |
00010c00  20 20 50 25 2b 31 36 0d  75 d0 18 6d 6f 76 73 20  |  P%+16.u..movs |
00010c10  20 20 20 72 30 2c 72 30  2c 6c 73 72 20 23 31 0d  |   r0,r0,lsr #1.|
00010c20  75 da 14 72 73 62 63 73  20 20 20 72 30 2c 72 30  |u..rsbcs   r0,r0|
00010c30  2c 23 30 0d 75 e4 16 61  64 64 20 20 20 20 20 72  |,#0.u..add     r|
00010c40  30 2c 72 30 2c 23 31 32  38 0d 75 ee 15 61 64 64  |0,r0,#128.u..add|
00010c50  20 20 20 20 20 72 32 2c  72 30 2c 72 31 30 0d 75  |     r2,r0,r10.u|
00010c60  f8 11 6d 6f 76 20 20 20  20 20 72 31 2c 72 39 0d  |..mov     r1,r9.|
00010c70  76 02 11 6d 6f 76 20 20  20 20 20 72 30 2c 23 35  |v..mov     r0,#5|
00010c80  0d 76 0c 15 73 77 69 20  20 20 20 20 22 4f 53 5f  |.v..swi     "OS_|
00010c90  50 6c 6f 74 22 0d 76 16  04 0d 76 20 14 61 64 64  |Plot".v...v .add|
00010ca0  20 20 20 20 20 72 39 2c  72 39 2c 23 32 0d 76 2a  |     r9,r9,#2.v*|
00010cb0  14 61 64 64 20 20 20 20  20 72 35 2c 72 35 2c 72  |.add     r5,r5,r|
00010cc0  37 0d 76 34 16 73 75 62  73 20 20 20 20 72 31 32  |7.v4.subs    r12|
00010cd0  2c 72 31 32 2c 23 31 0d  76 3e 14 62 6e 65 20 20  |,r12,#1.v>.bne  |
00010ce0  20 20 20 64 72 61 77 6c  6f 6f 70 0d 76 48 04 0d  |   drawloop.vH..|
00010cf0  76 52 1c 6c 64 6d 66 64  20 20 20 72 31 33 21 2c  |vR.ldmfd   r13!,|
00010d00  7b 72 30 2d 72 31 32 2c  70 63 7d 0d 76 5c 04 0d  |{r0-r12,pc}.v\..|
00010d10  76 66 0c 2e 66 69 6c 6c  6d 65 6d 0d 76 70 1d 73  |vf..fillmem.vp.s|
00010d20  74 6d 66 64 20 20 20 72  31 33 21 2c 7b 72 30 2d  |tmfd   r13!,{r0-|
00010d30  72 31 32 2c 72 31 34 7d  0d 76 7a 11 63 6d 70 20  |r12,r14}.vz.cmp |
00010d40  20 20 20 20 72 30 2c 72  31 0d 76 84 11 6d 6f 76  |    r0,r1.v..mov|
00010d50  68 69 20 20 20 72 33 2c  72 30 0d 76 8e 11 6d 6f  |hi   r3,r0.v..mo|
00010d60  76 68 69 20 20 20 72 30  2c 72 31 0d 76 98 11 6d  |vhi   r0,r1.v..m|
00010d70  6f 76 68 69 20 20 20 72  31 2c 72 33 0d 76 a2 0b  |ovhi   r1,r3.v..|
00010d80  2e 66 69 6c 6c 75 70 0d  76 ac 11 63 6d 70 20 20  |.fillup.v..cmp  |
00010d90  20 20 20 72 30 2c 72 31  0d 76 b6 1c 6c 64 6d 65  |   r0,r1.v..ldme|
00010da0  71 66 64 20 72 31 33 21  2c 7b 72 30 2d 72 31 32  |qfd r13!,{r0-r12|
00010db0  2c 70 63 7d 0d 76 c0 16  73 74 72 62 20 20 20 20  |,pc}.v..strb    |
00010dc0  72 32 2c 5b 72 30 5d 2c  23 31 0d 76 ca 12 62 20  |r2,[r0],#1.v..b |
00010dd0  20 20 20 20 20 20 66 69  6c 6c 75 70 0d 76 d4 04  |      fillup.v..|
00010de0  0d 76 de 0c 2e 63 6f 70  79 6d 65 6d 0d 76 e8 1d  |.v...copymem.v..|
00010df0  73 74 6d 66 64 20 20 20  72 31 33 21 2c 7b 72 30  |stmfd   r13!,{r0|
00010e00  2d 72 31 32 2c 72 31 34  7d 0d 76 f2 11 63 6d 70  |-r12,r14}.v..cmp|
00010e10  20 20 20 20 20 72 30 2c  72 31 0d 76 fc 12 62 68  |     r0,r1.v..bh|
00010e20  69 20 20 20 20 20 63 6f  70 79 70 6c 0d 77 06 14  |i     copypl.w..|
00010e30  61 64 64 20 20 20 20 20  72 30 2c 72 30 2c 72 32  |add     r0,r0,r2|
00010e40  0d 77 10 14 61 64 64 20  20 20 20 20 72 31 2c 72  |.w..add     r1,r|
00010e50  31 2c 72 32 0d 77 1a 11  63 6d 70 20 20 20 20 20  |1,r2.w..cmp     |
00010e60  72 32 2c 23 30 0d 77 24  0b 2e 63 70 79 6d 6c 70  |r2,#0.w$..cpymlp|
00010e70  0d 77 2e 1c 6c 64 6d 65  71 66 64 20 72 31 33 21  |.w..ldmeqfd r13!|
00010e80  2c 7b 72 30 2d 72 31 32  2c 70 63 7d 0d 77 38 18  |,{r0-r12,pc}.w8.|
00010e90  6c 64 72 62 20 20 20 20  72 33 2c 5b 72 30 2c 23  |ldrb    r3,[r0,#|
00010ea0  2d 31 5d 21 0d 77 42 18  73 74 72 62 20 20 20 20  |-1]!.wB.strb    |
00010eb0  72 33 2c 5b 72 31 2c 23  2d 31 5d 21 0d 77 4c 14  |r3,[r1,#-1]!.wL.|
00010ec0  73 75 62 73 20 20 20 20  72 32 2c 72 32 2c 23 31  |subs    r2,r2,#1|
00010ed0  0d 77 56 12 62 20 20 20  20 20 20 20 63 70 79 6d  |.wV.b       cpym|
00010ee0  6c 70 0d 77 60 0b 2e 63  6f 70 79 70 6c 0d 77 6a  |lp.w`..copypl.wj|
00010ef0  11 63 6d 70 20 20 20 20  20 72 32 2c 23 30 0d 77  |.cmp     r2,#0.w|
00010f00  74 0b 2e 63 70 79 70 6c  70 0d 77 7e 1c 6c 64 6d  |t..cpyplp.w~.ldm|
00010f10  65 71 66 64 20 72 31 33  21 2c 7b 72 30 2d 72 31  |eqfd r13!,{r0-r1|
00010f20  32 2c 70 63 7d 0d 77 88  16 6c 64 72 62 20 20 20  |2,pc}.w..ldrb   |
00010f30  20 72 33 2c 5b 72 30 5d  2c 23 31 0d 77 92 16 73  | r3,[r0],#1.w..s|
00010f40  74 72 62 20 20 20 20 72  33 2c 5b 72 31 5d 2c 23  |trb    r3,[r1],#|
00010f50  31 0d 77 9c 14 73 75 62  73 20 20 20 20 72 32 2c  |1.w..subs    r2,|
00010f60  72 32 2c 23 31 0d 77 a6  12 62 20 20 20 20 20 20  |r2,#1.w..b      |
00010f70  20 63 70 79 70 6c 70 0d  77 b0 04 0d 77 ba 0b 2e  | cpyplp.w...w...|
00010f80  73 69 67 6e 65 64 0d 77  c4 1d 73 74 6d 66 64 20  |signed.w..stmfd |
00010f90  20 20 72 31 33 21 2c 7b  72 30 2d 72 31 32 2c 72  |  r13!,{r0-r12,r|
00010fa0  31 34 7d 0d 77 ce 0b 2e  73 69 67 6e 6c 70 0d 77  |14}.w...signlp.w|
00010fb0  d8 11 63 6d 70 20 20 20  20 20 72 30 2c 72 31 0d  |..cmp     r0,r1.|
00010fc0  77 e2 1c 6c 64 6d 68 73  66 64 20 72 31 33 21 2c  |w..ldmhsfd r13!,|
00010fd0  7b 72 30 2d 72 31 32 2c  70 63 7d 0d 77 ec 13 6c  |{r0-r12,pc}.w..l|
00010fe0  64 72 62 20 20 20 20 72  32 2c 5b 72 30 5d 0d 77  |drb    r2,[r0].w|
00010ff0  f6 16 65 6f 72 20 20 20  20 20 72 32 2c 72 32 2c  |..eor     r2,r2,|
00011000  23 26 38 30 0d 78 00 16  73 74 72 62 20 20 20 20  |#&80.x..strb    |
00011010  72 32 2c 5b 72 30 5d 2c  23 31 0d 78 0a 12 62 20  |r2,[r0],#1.x..b |
00011020  20 20 20 20 20 20 73 69  67 6e 6c 70 0d 78 14 04  |      signlp.x..|
00011030  0d 78 1e 04 0d 78 28 0b  2e 6c 69 6e 6c 6f 67 0d  |.x...x(..linlog.|
00011040  78 32 1d 73 74 6d 66 64  20 20 20 72 31 33 21 2c  |x2.stmfd   r13!,|
00011050  7b 72 30 2d 72 31 32 2c  72 31 34 7d 0d 78 3c 15  |{r0-r12,r14}.x<.|
00011060  6c 64 72 20 20 20 20 20  72 34 2c 6c 6f 67 74 61  |ldr     r4,logta|
00011070  62 0d 78 46 0b 2e 6c 69  6e 6c 6c 70 0d 78 50 11  |b.xF..linllp.xP.|
00011080  63 6d 70 20 20 20 20 20  72 30 2c 72 31 0d 78 5a  |cmp     r0,r1.xZ|
00011090  1c 6c 64 6d 68 73 66 64  20 72 31 33 21 2c 7b 72  |.ldmhsfd r13!,{r|
000110a0  30 2d 72 31 32 2c 70 63  7d 0d 78 64 13 6c 64 72  |0-r12,pc}.xd.ldr|
000110b0  62 20 20 20 20 72 33 2c  5b 72 30 5d 0d 78 6e 11  |b    r3,[r0].xn.|
000110c0  63 6d 70 20 20 20 20 20  72 32 2c 23 31 0d 78 78  |cmp     r2,#1.xx|
000110d0  16 65 6f 72 65 71 20 20  20 72 33 2c 72 33 2c 23  |.eoreq   r3,r3,#|
000110e0  26 38 30 0d 78 82 16 6c  64 72 62 20 20 20 20 72  |&80.x..ldrb    r|
000110f0  33 2c 5b 72 34 2c 72 33  5d 0d 78 8c 16 73 74 72  |3,[r4,r3].x..str|
00011100  62 20 20 20 20 72 33 2c  5b 72 30 5d 2c 23 31 0d  |b    r3,[r0],#1.|
00011110  78 96 12 62 20 20 20 20  20 20 20 6c 69 6e 6c 6c  |x..b       linll|
00011120  70 0d 78 a0 04 0d 78 aa  04 0d 78 b4 0b 2e 6c 6f  |p.x...x...x...lo|
00011130  67 6c 69 6e 0d 78 be 1d  73 74 6d 66 64 20 20 20  |glin.x..stmfd   |
00011140  72 31 33 21 2c 7b 72 30  2d 72 31 32 2c 72 31 34  |r13!,{r0-r12,r14|
00011150  7d 0d 78 c8 15 6c 64 72  20 20 20 20 20 72 34 2c  |}.x..ldr     r4,|
00011160  6c 69 6e 74 61 62 0d 78  d2 0b 2e 6c 6f 67 6c 6c  |lintab.x...logll|
00011170  70 0d 78 dc 11 63 6d 70  20 20 20 20 20 72 30 2c  |p.x..cmp     r0,|
00011180  72 31 0d 78 e6 1c 6c 64  6d 68 73 66 64 20 72 31  |r1.x..ldmhsfd r1|
00011190  33 21 2c 7b 72 30 2d 72  31 32 2c 70 63 7d 0d 78  |3!,{r0-r12,pc}.x|
000111a0  f0 13 6c 64 72 62 20 20  20 20 72 33 2c 5b 72 30  |..ldrb    r3,[r0|
000111b0  5d 0d 78 fa 16 6c 64 72  20 20 20 20 20 72 33 2c  |].x..ldr     r3,|
000111c0  5b 72 34 2c 72 33 5d 0d  79 04 16 73 74 72 62 20  |[r4,r3].y..strb |
000111d0  20 20 20 72 33 2c 5b 72  30 5d 2c 23 31 0d 79 0e  |   r3,[r0],#1.y.|
000111e0  12 62 20 20 20 20 20 20  20 6c 6f 67 6c 6c 70 0d  |.b       logllp.|
000111f0  79 18 04 0d 79 22 0b 2e  6c 6f 67 74 61 62 0d 79  |y...y"..logtab.y|
00011200  2c 0d 65 71 75 64 20 20  20 20 30 0d 79 36 0b 2e  |,.equd    0.y6..|
00011210  6c 69 6e 74 61 62 0d 79  40 0d 65 71 75 64 20 20  |lintab.y@.equd  |
00011220  20 20 30 0d 79 4a 04 0d  79 54 0c 2e 72 65 76 65  |  0.yJ..yT..reve|
00011230  72 73 65 0d 79 5e 1d 73  74 6d 66 64 20 20 20 72  |rse.y^.stmfd   r|
00011240  31 33 21 2c 7b 72 30 2d  72 31 32 2c 72 31 34 7d  |13!,{r0-r12,r14}|
00011250  0d 79 68 0b 2e 72 65 76  6c 75 70 0d 79 72 11 63  |.yh..revlup.yr.c|
00011260  6d 70 20 20 20 20 20 72  30 2c 72 31 0d 79 7c 1c  |mp     r0,r1.y|.|
00011270  6c 64 6d 68 73 66 64 20  72 31 33 21 2c 7b 72 30  |ldmhsfd r13!,{r0|
00011280  2d 72 31 32 2c 70 63 7d  0d 79 86 13 6c 64 72 62  |-r12,pc}.y..ldrb|
00011290  20 20 20 20 72 32 2c 5b  72 30 5d 0d 79 90 17 6c  |    r2,[r0].y..l|
000112a0  64 72 62 20 20 20 20 72  33 2c 5b 72 31 2c 23 2d  |drb    r3,[r1,#-|
000112b0  31 5d 0d 79 9a 16 73 74  72 62 20 20 20 20 72 33  |1].y..strb    r3|
000112c0  2c 5b 72 30 5d 2c 23 31  0d 79 a4 18 73 74 72 62  |,[r0],#1.y..strb|
000112d0  20 20 20 20 72 32 2c 5b  72 31 2c 23 2d 31 5d 21  |    r2,[r1,#-1]!|
000112e0  0d 79 ae 12 62 20 20 20  20 20 20 20 72 65 76 6c  |.y..b       revl|
000112f0  75 70 0d 79 b8 04 0d 79  c2 0b 2e 66 69 6c 74 6c  |up.y...y...filtl|
00011300  6f 0d 79 cc 1d 73 74 6d  66 64 20 20 20 72 31 33  |o.y..stmfd   r13|
00011310  21 2c 7b 72 30 2d 72 31  32 2c 72 31 34 7d 0d 79  |!,{r0-r12,r14}.y|
00011320  d6 0b 2e 66 6c 74 6c 6c  70 0d 79 e0 11 63 6d 70  |...fltllp.y..cmp|
00011330  20 20 20 20 20 72 30 2c  72 31 0d 79 ea 1c 6c 64  |     r0,r1.y..ld|
00011340  6d 68 73 66 64 20 72 31  33 21 2c 7b 72 30 2d 72  |mhsfd r13!,{r0-r|
00011350  31 32 2c 70 63 7d 0d 79  f4 13 6c 64 72 62 20 20  |12,pc}.y..ldrb  |
00011360  20 20 72 35 2c 5b 72 30  5d 0d 79 fe 11 63 6d 70  |  r5,[r0].y..cmp|
00011370  20 20 20 20 20 72 33 2c  23 31 0d 7a 08 16 65 6f  |     r3,#1.z..eo|
00011380  72 65 71 20 20 20 72 35  2c 72 35 2c 23 26 38 30  |req   r5,r5,#&80|
00011390  0d 7a 12 19 6d 6f 76 20  20 20 20 20 72 35 2c 72  |.z..mov     r5,r|
000113a0  35 2c 6c 73 6c 20 23 32  34 0d 7a 1c 19 6d 6f 76  |5,lsl #24.z..mov|
000113b0  20 20 20 20 20 72 35 2c  72 35 2c 61 73 72 20 23  |     r5,r5,asr #|
000113c0  32 34 0d 7a 26 1b 73 75  62 20 20 20 20 20 72 35  |24.z&.sub     r5|
000113d0  2c 72 34 2c 72 35 2c 6c  73 6c 20 23 38 0d 7a 30  |,r4,r5,lsl #8.z0|
000113e0  14 6d 75 6c 20 20 20 20  20 72 35 2c 72 32 2c 72  |.mul     r5,r2,r|
000113f0  35 0d 7a 3a 1c 73 75 62  20 20 20 20 20 72 34 2c  |5.z:.sub     r4,|
00011400  72 34 2c 72 35 2c 61 73  72 20 23 31 32 0d 7a 44  |r4,r5,asr #12.zD|
00011410  18 6d 6f 76 20 20 20 20  20 72 35 2c 72 34 2c 61  |.mov     r5,r4,a|
00011420  73 72 20 23 38 0d 7a 4e  13 63 6d 70 20 20 20 20  |sr #8.zN.cmp    |
00011430  20 72 35 2c 23 31 32 37  0d 7a 58 13 6d 6f 76 70  | r5,#127.zX.movp|
00011440  6c 20 20 20 72 35 2c 23  31 32 37 0d 7a 62 13 63  |l   r5,#127.zb.c|
00011450  6d 6e 20 20 20 20 20 72  35 2c 23 31 32 37 0d 7a  |mn     r5,#127.z|
00011460  6c 13 6d 6f 76 6d 69 20  20 20 72 35 2c 23 31 32  |l.movmi   r5,#12|
00011470  38 0d 7a 76 11 63 6d 70  20 20 20 20 20 72 33 2c  |8.zv.cmp     r3,|
00011480  23 31 0d 7a 80 16 65 6f  72 65 71 20 20 20 72 35  |#1.z..eoreq   r5|
00011490  2c 72 35 2c 23 26 38 30  0d 7a 8a 16 73 74 72 62  |,r5,#&80.z..strb|
000114a0  20 20 20 20 72 35 2c 5b  72 30 5d 2c 23 31 0d 7a  |    r5,[r0],#1.z|
000114b0  94 12 62 20 20 20 20 20  20 20 66 6c 74 6c 6c 70  |..b       fltllp|
000114c0  0d 7a 9e 04 0d 7a a8 0b  2e 66 69 6c 74 68 69 0d  |.z...z...filthi.|
000114d0  7a b2 1d 73 74 6d 66 64  20 20 20 72 31 33 21 2c  |z..stmfd   r13!,|
000114e0  7b 72 30 2d 72 31 32 2c  72 31 34 7d 0d 7a bc 0b  |{r0-r12,r14}.z..|
000114f0  2e 66 6c 74 68 6c 70 0d  7a c6 11 63 6d 70 20 20  |.flthlp.z..cmp  |
00011500  20 20 20 72 30 2c 72 31  0d 7a d0 1c 6c 64 6d 68  |   r0,r1.z..ldmh|
00011510  73 66 64 20 72 31 33 21  2c 7b 72 30 2d 72 31 32  |sfd r13!,{r0-r12|
00011520  2c 70 63 7d 0d 7a da 13  6c 64 72 62 20 20 20 20  |,pc}.z..ldrb    |
00011530  72 35 2c 5b 72 30 5d 0d  7a e4 11 63 6d 70 20 20  |r5,[r0].z..cmp  |
00011540  20 20 20 72 33 2c 23 31  0d 7a ee 16 65 6f 72 65  |   r3,#1.z..eore|
00011550  71 20 20 20 72 35 2c 72  35 2c 23 26 38 30 0d 7a  |q   r5,r5,#&80.z|
00011560  f8 19 6d 6f 76 20 20 20  20 20 72 35 2c 72 35 2c  |..mov     r5,r5,|
00011570  6c 73 6c 20 23 32 34 0d  7b 02 19 6d 6f 76 20 20  |lsl #24.{..mov  |
00011580  20 20 20 72 35 2c 72 35  2c 61 73 72 20 23 32 34  |   r5,r5,asr #24|
00011590  0d 7b 0c 18 6d 6f 76 20  20 20 20 20 72 36 2c 72  |.{..mov     r6,r|
000115a0  35 2c 6c 73 6c 20 23 38  0d 7b 16 1b 73 75 62 20  |5,lsl #8.{..sub |
000115b0  20 20 20 20 72 35 2c 72  34 2c 72 35 2c 6c 73 6c  |    r5,r4,r5,lsl|
000115c0  20 23 38 0d 7b 20 14 6d  75 6c 20 20 20 20 20 72  | #8.{ .mul     r|
000115d0  35 2c 72 32 2c 72 35 0d  7b 2a 1c 73 75 62 20 20  |5,r2,r5.{*.sub  |
000115e0  20 20 20 72 34 2c 72 34  2c 72 35 2c 61 73 72 20  |   r4,r4,r5,asr |
000115f0  23 31 32 0d 7b 34 14 73  75 62 20 20 20 20 20 72  |#12.{4.sub     r|
00011600  35 2c 72 36 2c 72 34 0d  7b 3e 18 6d 6f 76 20 20  |5,r6,r4.{>.mov  |
00011610  20 20 20 72 35 2c 72 35  2c 61 73 72 20 23 38 0d  |   r5,r5,asr #8.|
00011620  7b 48 13 63 6d 70 20 20  20 20 20 72 35 2c 23 31  |{H.cmp     r5,#1|
00011630  32 37 0d 7b 52 13 6d 6f  76 70 6c 20 20 20 72 35  |27.{R.movpl   r5|
00011640  2c 23 31 32 37 0d 7b 5c  13 63 6d 6e 20 20 20 20  |,#127.{\.cmn    |
00011650  20 72 35 2c 23 31 32 37  0d 7b 66 13 6d 6f 76 6d  | r5,#127.{f.movm|
00011660  69 20 20 20 72 35 2c 23  31 32 38 0d 7b 70 11 63  |i   r5,#128.{p.c|
00011670  6d 70 20 20 20 20 20 72  33 2c 23 31 0d 7b 7a 16  |mp     r3,#1.{z.|
00011680  65 6f 72 65 71 20 20 20  72 35 2c 72 35 2c 23 26  |eoreq   r5,r5,#&|
00011690  38 30 0d 7b 84 16 73 74  72 62 20 20 20 20 72 35  |80.{..strb    r5|
000116a0  2c 5b 72 30 5d 2c 23 31  0d 7b 8e 12 62 20 20 20  |,[r0],#1.{..b   |
000116b0  20 20 20 20 66 6c 74 68  6c 70 0d 7b 98 04 0d 7b  |    flthlp.{...{|
000116c0  a2 0a 2e 73 63 61 6d 70  0d 7b ac 1d 73 74 6d 66  |...scamp.{..stmf|
000116d0  64 20 20 20 72 31 33 21  2c 7b 72 30 2d 72 31 32  |d   r13!,{r0-r12|
000116e0  2c 72 31 34 7d 0d 7b b6  0b 2e 73 63 6d 70 6c 70  |,r14}.{...scmplp|
000116f0  0d 7b c0 11 63 6d 70 20  20 20 20 20 72 30 2c 72  |.{..cmp     r0,r|
00011700  31 0d 7b ca 1c 6c 64 6d  68 73 66 64 20 72 31 33  |1.{..ldmhsfd r13|
00011710  21 2c 7b 72 30 2d 72 31  32 2c 70 63 7d 0d 7b d4  |!,{r0-r12,pc}.{.|
00011720  13 6c 64 72 62 20 20 20  20 72 35 2c 5b 72 30 5d  |.ldrb    r5,[r0]|
00011730  0d 7b de 11 63 6d 70 20  20 20 20 20 72 33 2c 23  |.{..cmp     r3,#|
00011740  31 0d 7b e8 16 65 6f 72  65 71 20 20 20 72 35 2c  |1.{..eoreq   r5,|
00011750  72 35 2c 23 26 38 30 0d  7b f2 19 6d 6f 76 20 20  |r5,#&80.{..mov  |
00011760  20 20 20 72 35 2c 72 35  2c 6c 73 6c 20 23 32 34  |   r5,r5,lsl #24|
00011770  0d 7b fc 19 6d 6f 76 20  20 20 20 20 72 35 2c 72  |.{..mov     r5,r|
00011780  35 2c 61 73 72 20 23 32  34 0d 7c 06 14 6d 75 6c  |5,asr #24.|..mul|
00011790  20 20 20 20 20 72 35 2c  72 32 2c 72 35 0d 7c 10  |     r5,r2,r5.|.|
000117a0  19 6d 6f 76 20 20 20 20  20 72 35 2c 72 35 2c 61  |.mov     r5,r5,a|
000117b0  73 72 20 23 31 32 0d 7c  1a 13 63 6d 70 20 20 20  |sr #12.|..cmp   |
000117c0  20 20 72 35 2c 23 31 32  37 0d 7c 24 13 6d 6f 76  |  r5,#127.|$.mov|
000117d0  70 6c 20 20 20 72 35 2c  23 31 32 37 0d 7c 2e 13  |pl   r5,#127.|..|
000117e0  63 6d 6e 20 20 20 20 20  72 35 2c 23 31 32 37 0d  |cmn     r5,#127.|
000117f0  7c 38 13 6d 6f 76 6d 69  20 20 20 72 35 2c 23 31  ||8.movmi   r5,#1|
00011800  32 38 0d 7c 42 11 63 6d  70 20 20 20 20 20 72 33  |28.|B.cmp     r3|
00011810  2c 23 31 0d 7c 4c 16 65  6f 72 65 71 20 20 20 72  |,#1.|L.eoreq   r|
00011820  35 2c 72 35 2c 23 26 38  30 0d 7c 56 16 73 74 72  |5,r5,#&80.|V.str|
00011830  62 20 20 20 20 72 35 2c  5b 72 30 5d 2c 23 31 0d  |b    r5,[r0],#1.|
00011840  7c 60 12 62 20 20 20 20  20 20 20 73 63 6d 70 6c  ||`.b       scmpl|
00011850  70 0d 7c 6a 04 0d 7c 74  09 2e 65 63 68 6f 0d 7c  |p.|j..|t..echo.||
00011860  7e 1d 73 74 6d 66 64 20  20 20 72 31 33 21 2c 7b  |~.stmfd   r13!,{|
00011870  72 30 2d 72 31 32 2c 72  31 34 7d 0d 7c 88 11 63  |r0-r12,r14}.|..c|
00011880  6d 70 20 20 20 20 20 72  34 2c 23 30 0d 7c 92 11  |mp     r4,#0.|..|
00011890  62 65 71 20 20 20 20 20  72 65 76 72 62 0d 7c 9c  |beq     revrb.|.|
000118a0  0b 2e 65 63 68 6f 6c 70  0d 7c a6 11 63 6d 70 20  |..echolp.|..cmp |
000118b0  20 20 20 20 72 30 2c 72  31 0d 7c b0 1c 6c 64 6d  |    r0,r1.|..ldm|
000118c0  68 73 66 64 20 72 31 33  21 2c 7b 72 30 2d 72 31  |hsfd r13!,{r0-r1|
000118d0  32 2c 70 63 7d 0d 7c ba  13 6c 64 72 62 20 20 20  |2,pc}.|..ldrb   |
000118e0  20 72 36 2c 5b 72 30 5d  0d 7c c4 16 6c 64 72 62  | r6,[r0].|..ldrb|
000118f0  20 20 20 20 72 37 2c 5b  72 30 2c 72 33 5d 0d 7c  |    r7,[r0,r3].||
00011900  ce 11 63 6d 70 20 20 20  20 20 72 35 2c 23 31 0d  |..cmp     r5,#1.|
00011910  7c d8 16 65 6f 72 65 71  20 20 20 72 36 2c 72 36  ||..eoreq   r6,r6|
00011920  2c 23 26 38 30 0d 7c e2  16 65 6f 72 65 71 20 20  |,#&80.|..eoreq  |
00011930  20 72 37 2c 72 37 2c 23  26 38 30 0d 7c ec 19 6d  | r7,r7,#&80.|..m|
00011940  6f 76 20 20 20 20 20 72  36 2c 72 36 2c 6c 73 6c  |ov     r6,r6,lsl|
00011950  20 23 32 34 0d 7c f6 19  6d 6f 76 20 20 20 20 20  | #24.|..mov     |
00011960  72 36 2c 72 36 2c 61 73  72 20 23 32 34 0d 7d 00  |r6,r6,asr #24.}.|
00011970  19 6d 6f 76 20 20 20 20  20 72 37 2c 72 37 2c 6c  |.mov     r7,r7,l|
00011980  73 6c 20 23 32 34 0d 7d  0a 19 6d 6f 76 20 20 20  |sl #24.}..mov   |
00011990  20 20 72 37 2c 72 37 2c  61 73 72 20 23 32 34 0d  |  r7,r7,asr #24.|
000119a0  7d 14 14 6d 75 6c 20 20  20 20 20 72 36 2c 72 32  |}..mul     r6,r2|
000119b0  2c 72 36 0d 7d 1e 1b 61  64 64 20 20 20 20 20 72  |,r6.}..add     r|
000119c0  37 2c 72 37 2c 72 36 2c  61 73 72 20 23 38 0d 7d  |7,r7,r6,asr #8.}|
000119d0  28 18 6d 6f 76 20 20 20  20 20 72 36 2c 72 36 2c  |(.mov     r6,r6,|
000119e0  61 73 72 20 23 38 0d 7d  32 13 63 6d 70 20 20 20  |asr #8.}2.cmp   |
000119f0  20 20 72 36 2c 23 31 32  37 0d 7d 3c 13 6d 6f 76  |  r6,#127.}<.mov|
00011a00  70 6c 20 20 20 72 36 2c  23 31 32 37 0d 7d 46 13  |pl   r6,#127.}F.|
00011a10  63 6d 6e 20 20 20 20 20  72 36 2c 23 31 32 37 0d  |cmn     r6,#127.|
00011a20  7d 50 13 6d 6f 76 6d 69  20 20 20 72 36 2c 23 31  |}P.movmi   r6,#1|
00011a30  32 38 0d 7d 5a 13 63 6d  70 20 20 20 20 20 72 37  |28.}Z.cmp     r7|
00011a40  2c 23 31 32 37 0d 7d 64  13 6d 6f 76 70 6c 20 20  |,#127.}d.movpl  |
00011a50  20 72 37 2c 23 31 32 37  0d 7d 6e 13 63 6d 6e 20  | r7,#127.}n.cmn |
00011a60  20 20 20 20 72 37 2c 23  31 32 37 0d 7d 78 13 6d  |    r7,#127.}x.m|
00011a70  6f 76 6d 69 20 20 20 72  37 2c 23 31 32 38 0d 7d  |ovmi   r7,#128.}|
00011a80  82 11 63 6d 70 20 20 20  20 20 72 35 2c 23 31 0d  |..cmp     r5,#1.|
00011a90  7d 8c 16 65 6f 72 65 71  20 20 20 72 36 2c 72 36  |}..eoreq   r6,r6|
00011aa0  2c 23 26 38 30 0d 7d 96  16 65 6f 72 65 71 20 20  |,#&80.}..eoreq  |
00011ab0  20 72 37 2c 72 37 2c 23  26 38 30 0d 7d a0 16 73  | r7,r7,#&80.}..s|
00011ac0  74 72 62 20 20 20 20 72  37 2c 5b 72 30 2c 72 33  |trb    r7,[r0,r3|
00011ad0  5d 0d 7d aa 16 73 74 72  62 20 20 20 20 72 36 2c  |].}..strb    r6,|
00011ae0  5b 72 30 5d 2c 23 31 0d  7d b4 12 62 20 20 20 20  |[r0],#1.}..b    |
00011af0  20 20 20 65 63 68 6f 6c  70 0d 7d be 0a 2e 72 65  |   echolp.}...re|
00011b00  76 72 62 0d 7d c8 11 6d  6f 76 20 20 20 20 20 72  |vrb.}..mov     r|
00011b10  36 2c 72 31 0d 7d d2 14  61 64 64 20 20 20 20 20  |6,r1.}..add     |
00011b20  72 31 2c 72 30 2c 72 33  0d 7d dc 14 73 75 62 20  |r1,r0,r3.}..sub |
00011b30  20 20 20 20 72 30 2c 72  36 2c 23 31 0d 7d e6 0b  |    r0,r6,#1.}..|
00011b40  2e 72 65 76 62 6c 70 0d  7d f0 11 63 6d 70 20 20  |.revblp.}..cmp  |
00011b50  20 20 20 72 30 2c 72 31  0d 7d fa 1c 6c 64 6d 6c  |   r0,r1.}..ldml|
00011b60  6f 66 64 20 72 31 33 21  2c 7b 72 30 2d 72 31 32  |ofd r13!,{r0-r12|
00011b70  2c 70 63 7d 0d 7e 04 13  6c 64 72 62 20 20 20 20  |,pc}.~..ldrb    |
00011b80  72 36 2c 5b 72 30 5d 0d  7e 0e 17 6c 64 72 62 20  |r6,[r0].~..ldrb |
00011b90  20 20 20 72 37 2c 5b 72  30 2c 2d 72 33 5d 0d 7e  |   r7,[r0,-r3].~|
00011ba0  18 11 63 6d 70 20 20 20  20 20 72 35 2c 23 31 0d  |..cmp     r5,#1.|
00011bb0  7e 22 16 65 6f 72 65 71  20 20 20 72 36 2c 72 36  |~".eoreq   r6,r6|
00011bc0  2c 23 26 38 30 0d 7e 2c  16 65 6f 72 65 71 20 20  |,#&80.~,.eoreq  |
00011bd0  20 72 37 2c 72 37 2c 23  26 38 30 0d 7e 36 19 6d  | r7,r7,#&80.~6.m|
00011be0  6f 76 20 20 20 20 20 72  36 2c 72 36 2c 6c 73 6c  |ov     r6,r6,lsl|
00011bf0  20 23 32 34 0d 7e 40 19  6d 6f 76 20 20 20 20 20  | #24.~@.mov     |
00011c00  72 36 2c 72 36 2c 61 73  72 20 23 32 34 0d 7e 4a  |r6,r6,asr #24.~J|
00011c10  19 6d 6f 76 20 20 20 20  20 72 37 2c 72 37 2c 6c  |.mov     r7,r7,l|
00011c20  73 6c 20 23 32 34 0d 7e  54 19 6d 6f 76 20 20 20  |sl #24.~T.mov   |
00011c30  20 20 72 37 2c 72 37 2c  61 73 72 20 23 32 34 0d  |  r7,r7,asr #24.|
00011c40  7e 5e 14 6d 75 6c 20 20  20 20 20 72 37 2c 72 32  |~^.mul     r7,r2|
00011c50  2c 72 37 0d 7e 68 1b 61  64 64 20 20 20 20 20 72  |,r7.~h.add     r|
00011c60  36 2c 72 36 2c 72 37 2c  61 73 72 20 23 38 0d 7e  |6,r6,r7,asr #8.~|
00011c70  72 13 63 6d 70 20 20 20  20 20 72 36 2c 23 31 32  |r.cmp     r6,#12|
00011c80  37 0d 7e 7c 13 6d 6f 76  70 6c 20 20 20 72 36 2c  |7.~|.movpl   r6,|
00011c90  23 31 32 37 0d 7e 86 13  63 6d 6e 20 20 20 20 20  |#127.~..cmn     |
00011ca0  72 36 2c 23 31 32 37 0d  7e 90 13 6d 6f 76 6d 69  |r6,#127.~..movmi|
00011cb0  20 20 20 72 36 2c 23 31  32 38 0d 7e 9a 11 63 6d  |   r6,#128.~..cm|
00011cc0  70 20 20 20 20 20 72 35  2c 23 31 0d 7e a4 16 65  |p     r5,#1.~..e|
00011cd0  6f 72 65 71 20 20 20 72  36 2c 72 36 2c 23 26 38  |oreq   r6,r6,#&8|
00011ce0  30 0d 7e ae 17 73 74 72  62 20 20 20 20 72 36 2c  |0.~..strb    r6,|
00011cf0  5b 72 30 5d 2c 23 2d 31  0d 7e b8 12 62 20 20 20  |[r0],#-1.~..b   |
00011d00  20 20 20 20 72 65 76 62  6c 70 0d 7e c2 04 0d 7e  |    revblp.~...~|
00011d10  cc 0e 2e 6e 77 6c 65 6e  67 74 68 73 0d 7e d6 1d  |...nwlengths.~..|
00011d20  73 74 6d 66 64 20 20 20  72 31 33 21 2c 7b 72 30  |stmfd   r13!,{r0|
00011d30  2d 72 31 32 2c 72 31 34  7d 0d 7e e0 11 6d 6f 76  |-r12,r14}.~..mov|
00011d40  20 20 20 20 20 72 33 2c  23 30 0d 7e ea 11 6d 6f  |     r3,#0.~..mo|
00011d50  76 20 20 20 20 20 72 34  2c 72 30 0d 7e f4 0b 2e  |v     r4,r0.~...|
00011d60  6e 77 6c 73 6c 70 0d 7e  fe 11 63 6d 70 20 20 20  |nwlslp.~..cmp   |
00011d70  20 20 72 30 2c 72 31 0d  7f 08 1c 6c 64 6d 68 73  |  r0,r1....ldmhs|
00011d80  66 64 20 72 31 33 21 2c  7b 72 30 2d 72 31 32 2c  |fd r13!,{r0-r12,|
00011d90  70 63 7d 0d 7f 12 13 6c  64 72 62 20 20 20 20 72  |pc}....ldrb    r|
00011da0  35 2c 5b 72 30 5d 0d 7f  1c 13 73 74 72 62 20 20  |5,[r0]....strb  |
00011db0  20 20 72 35 2c 5b 72 34  5d 0d 7f 26 14 61 64 64  |  r5,[r4]..&.add|
00011dc0  20 20 20 20 20 72 34 2c  72 34 2c 23 31 0d 7f 30  |     r4,r4,#1..0|
00011dd0  14 61 64 64 20 20 20 20  20 72 33 2c 72 33 2c 72  |.add     r3,r3,r|
00011de0  32 0d 7f 3a 19 6d 6f 76  20 20 20 20 20 72 35 2c  |2..:.mov     r5,|
00011df0  72 33 2c 6c 73 72 20 23  32 34 0d 7f 44 1c 62 69  |r3,lsr #24..D.bi|
00011e00  63 20 20 20 20 20 72 33  2c 72 33 2c 23 26 66 66  |c     r3,r3,#&ff|
00011e10  30 30 30 30 30 30 0d 7f  4e 14 61 64 64 20 20 20  |000000..N.add   |
00011e20  20 20 72 30 2c 72 30 2c  72 35 0d 7f 58 12 62 20  |  r0,r0,r5..X.b |
00011e30  20 20 20 20 20 20 6e 77  6c 73 6c 70 0d 7f 62 04  |      nwlslp..b.|
00011e40  0d 7f 6c 0e 2e 6e 77 6c  65 6e 67 74 68 62 0d 7f  |..l..nwlengthb..|
00011e50  76 1d 73 74 6d 66 64 20  20 20 72 31 33 21 2c 7b  |v.stmfd   r13!,{|
00011e60  72 30 2d 72 31 32 2c 72  31 34 7d 0d 7f 80 11 6d  |r0-r12,r14}....m|
00011e70  6f 76 20 20 20 20 20 72  34 2c 23 30 0d 7f 8a 0b  |ov     r4,#0....|
00011e80  2e 6e 77 6c 62 6c 70 0d  7f 94 11 63 6d 70 20 20  |.nwlblp....cmp  |
00011e90  20 20 20 72 33 2c 72 30  0d 7f 9e 1c 6c 64 6d 6c  |   r3,r0....ldml|
00011ea0  6f 66 64 20 72 31 33 21  2c 7b 72 30 2d 72 31 32  |ofd r13!,{r0-r12|
00011eb0  2c 70 63 7d 0d 7f a8 13  6c 64 72 62 20 20 20 20  |,pc}....ldrb    |
00011ec0  72 35 2c 5b 72 31 5d 0d  7f b2 13 73 74 72 62 20  |r5,[r1]....strb |
00011ed0  20 20 20 72 35 2c 5b 72  33 5d 0d 7f bc 14 73 75  |   r5,[r3]....su|
00011ee0  62 20 20 20 20 20 72 33  2c 72 33 2c 23 31 0d 7f  |b     r3,r3,#1..|
00011ef0  c6 14 61 64 64 20 20 20  20 20 72 34 2c 72 34 2c  |..add     r4,r4,|
00011f00  72 32 0d 7f d0 19 6d 6f  76 20 20 20 20 20 72 35  |r2....mov     r5|
00011f10  2c 72 34 2c 6c 73 72 20  23 32 34 0d 7f da 1c 62  |,r4,lsr #24....b|
00011f20  69 63 20 20 20 20 20 72  34 2c 72 34 2c 23 26 66  |ic     r4,r4,#&f|
00011f30  66 30 30 30 30 30 30 0d  7f e4 14 73 75 62 20 20  |f000000....sub  |
00011f40  20 20 20 72 31 2c 72 31  2c 72 35 0d 7f ee 12 62  |   r1,r1,r5....b|
00011f50  20 20 20 20 20 20 20 6e  77 6c 62 6c 70 0d 7f f8  |       nwlblp...|
00011f60  04 0d 80 02 09 2e 66 61  64 65 0d 80 0c 1d 73 74  |......fade....st|
00011f70  6d 66 64 20 20 20 72 31  33 21 2c 7b 72 30 2d 72  |mfd   r13!,{r0-r|
00011f80  31 32 2c 72 31 34 7d 0d  80 16 0b 2e 66 61 64 65  |12,r14}.....fade|
00011f90  6c 70 0d 80 20 11 63 6d  70 20 20 20 20 20 72 30  |lp.. .cmp     r0|
00011fa0  2c 72 31 0d 80 2a 1c 6c  64 6d 68 73 66 64 20 72  |,r1..*.ldmhsfd r|
00011fb0  31 33 21 2c 7b 72 30 2d  72 31 32 2c 70 63 7d 0d  |13!,{r0-r12,pc}.|
00011fc0  80 34 13 6c 64 72 62 20  20 20 20 72 36 2c 5b 72  |.4.ldrb    r6,[r|
00011fd0  30 5d 0d 80 3e 11 63 6d  70 20 20 20 20 20 72 35  |0]..>.cmp     r5|
00011fe0  2c 23 31 0d 80 48 16 65  6f 72 65 71 20 20 20 72  |,#1..H.eoreq   r|
00011ff0  36 2c 72 36 2c 23 26 38  30 0d 80 52 19 6d 6f 76  |6,r6,#&80..R.mov|
00012000  20 20 20 20 20 72 36 2c  72 36 2c 6c 73 6c 20 23  |     r6,r6,lsl #|
00012010  32 34 0d 80 5c 19 6d 6f  76 20 20 20 20 20 72 36  |24..\.mov     r6|
00012020  2c 72 36 2c 61 73 72 20  23 32 34 0d 80 66 19 6d  |,r6,asr #24..f.m|
00012030  6f 76 20 20 20 20 20 72  37 2c 72 32 2c 61 73 72  |ov     r7,r2,asr|
00012040  20 23 32 30 0d 80 70 14  6d 75 6c 20 20 20 20 20  | #20..p.mul     |
00012050  72 36 2c 72 37 2c 72 36  0d 80 7a 18 6d 6f 76 20  |r6,r7,r6..z.mov |
00012060  20 20 20 20 72 36 2c 72  36 2c 61 73 72 20 23 38  |    r6,r6,asr #8|
00012070  0d 80 84 13 63 6d 70 20  20 20 20 20 72 36 2c 23  |....cmp     r6,#|
00012080  31 32 37 0d 80 8e 13 6d  6f 76 70 6c 20 20 20 72  |127....movpl   r|
00012090  36 2c 23 31 32 37 0d 80  98 13 63 6d 6e 20 20 20  |6,#127....cmn   |
000120a0  20 20 72 36 2c 23 31 32  37 0d 80 a2 13 6d 6f 76  |  r6,#127....mov|
000120b0  6d 69 20 20 20 72 36 2c  23 31 32 38 0d 80 ac 11  |mi   r6,#128....|
000120c0  63 6d 70 20 20 20 20 20  72 35 2c 23 31 0d 80 b6  |cmp     r5,#1...|
000120d0  16 65 6f 72 65 71 20 20  20 72 36 2c 72 36 2c 23  |.eoreq   r6,r6,#|
000120e0  26 38 30 0d 80 c0 16 73  74 72 62 20 20 20 20 72  |&80....strb    r|
000120f0  36 2c 5b 72 30 5d 2c 23  31 0d 80 ca 14 61 64 64  |6,[r0],#1....add|
00012100  20 20 20 20 20 72 32 2c  72 32 2c 72 34 0d 80 d4  |     r2,r2,r4...|
00012110  12 62 20 20 20 20 20 20  20 66 61 64 65 6c 70 0d  |.b       fadelp.|
00012120  80 de 04 0d 80 e8 0c 2e  61 64 64 63 6c 69 70 0d  |........addclip.|
00012130  80 f2 1d 73 74 6d 66 64  20 20 20 72 31 33 21 2c  |...stmfd   r13!,|
00012140  7b 72 30 2d 72 31 32 2c  72 31 34 7d 0d 80 fc 0b  |{r0-r12,r14}....|
00012150  2e 61 64 64 63 6c 6c 0d  81 06 11 63 6d 70 20 20  |.addcll....cmp  |
00012160  20 20 20 72 32 2c 23 30  0d 81 10 1c 6c 64 6d 6c  |   r2,#0....ldml|
00012170  65 66 64 20 72 31 33 21  2c 7b 72 30 2d 72 31 32  |efd r13!,{r0-r12|
00012180  2c 70 63 7d 0d 81 1a 13  6c 64 72 62 20 20 20 20  |,pc}....ldrb    |
00012190  72 34 2c 5b 72 30 5d 0d  81 24 16 6c 64 72 62 20  |r4,[r0]..$.ldrb |
000121a0  20 20 20 72 35 2c 5b 72  31 5d 2c 23 31 0d 81 2e  |   r5,[r1],#1...|
000121b0  11 63 6d 70 20 20 20 20  20 72 33 2c 23 31 0d 81  |.cmp     r3,#1..|
000121c0  38 16 65 6f 72 65 71 20  20 20 72 34 2c 72 34 2c  |8.eoreq   r4,r4,|
000121d0  23 26 38 30 0d 81 42 16  65 6f 72 65 71 20 20 20  |#&80..B.eoreq   |
000121e0  72 35 2c 72 35 2c 23 26  38 30 0d 81 4c 19 6d 6f  |r5,r5,#&80..L.mo|
000121f0  76 20 20 20 20 20 72 34  2c 72 34 2c 6c 73 6c 20  |v     r4,r4,lsl |
00012200  23 32 34 0d 81 56 19 6d  6f 76 20 20 20 20 20 72  |#24..V.mov     r|
00012210  34 2c 72 34 2c 61 73 72  20 23 32 34 0d 81 60 19  |4,r4,asr #24..`.|
00012220  6d 6f 76 20 20 20 20 20  72 35 2c 72 35 2c 6c 73  |mov     r5,r5,ls|
00012230  6c 20 23 32 34 0d 81 6a  19 6d 6f 76 20 20 20 20  |l #24..j.mov    |
00012240  20 72 35 2c 72 35 2c 61  73 72 20 23 32 34 0d 81  | r5,r5,asr #24..|
00012250  74 14 61 64 64 20 20 20  20 20 72 34 2c 72 34 2c  |t.add     r4,r4,|
00012260  72 35 0d 81 7e 18 6d 6f  76 20 20 20 20 20 72 34  |r5..~.mov     r4|
00012270  2c 72 34 2c 61 73 72 20  23 31 0d 81 88 16 65 6f  |,r4,asr #1....eo|
00012280  72 65 71 20 20 20 72 34  2c 72 34 2c 23 26 38 30  |req   r4,r4,#&80|
00012290  0d 81 92 16 73 74 72 62  20 20 20 20 72 34 2c 5b  |....strb    r4,[|
000122a0  72 30 5d 2c 23 31 0d 81  9c 14 73 75 62 20 20 20  |r0],#1....sub   |
000122b0  20 20 72 32 2c 72 32 2c  23 31 0d 81 a6 12 62 20  |  r2,r2,#1....b |
000122c0  20 20 20 20 20 20 61 64  64 63 6c 6c 0d 81 b0 0c  |      addcll....|
000122d0  2e 65 6e 64 63 6f 64 65  0d 81 ba 05 5d 0d 81 c4  |.endcode....]...|
000122e0  0a ed 70 61 73 73 25 0d  81 ce 05 e1 0d ff        |..pass%.......|
000122ee