home *** CD-ROM | disk | FTP | other *** search
/ Allie's Playhouse / allies-playhouse.bin / synth.tbk (.txt) < prev    next >
Asymetrix ToolBook File  |  1993-09-17  |  140KB  |  1,667 lines

  1. 4myScore
  2. "0,144,52,127,"&&\ 
  3. "24,144,50,127,"&&\
  4. "24,144,48,127,"&&\
  5. "24,144,50,127,"&&\
  6. "24,144,52,127,"&&\
  7. "24,144,52,127,"&&\
  8. "24,144,52,127,"&&\
  9. "48,144,50,127,"&&\
  10. "24,144,50,127,"&&\
  11. "24,144,50,127,"&&\
  12. "48,144,52,127,"&&\
  13. "24,144,55,127,"&&\
  14. "24,144,55,127,"&&\
  15. "48,144,52,127,"&&\
  16. "24,144,50,127,"&&\ 
  17. "24,144,48,127,"&&\
  18. "24,144,50,127,"&&\
  19. "24,144,52,127,"&&\
  20. "24,144,52,127,"&&\
  21. "24,144,52,127,"&&\
  22. "24,144,52,127,"&&\
  23. "24,144,50,127,"&&\
  24. "24,144,50,127,"&&\
  25. "24,144,52,127,"&&\
  26. "24,144,50,127,"&&\
  27. "24,144,48,127"
  28. play 
  29. 4hMidiOut, channelname, 
  30. Znote, noteOff
  31. "60,synth"
  32. playstring 
  33. numItems 
  34.         -- 
  35. score 
  36. 13 notes 
  37. i = 1
  38. "staff2"
  39.             --
  40. "staff3"
  41. "staff1"
  42. pageleft 
  43. pageright 
  44. i = 53
  45.             -- Play a 
  46.             -- 
  47. default
  48. click
  49. buttondoubleclick
  50. enterPage
  51. buttondoubleclick
  52. enterPage
  53. 0,144,52,127,
  54. 24,144,50,127,
  55. 24,144,48,127,
  56. 24,144,50,127,
  57. 24,144,52,127,
  58. 24,144,52,127,
  59. 24,144,52,127,
  60. 48,144,50,127,
  61. 24,144,50,127,
  62. 24,144,50,127,
  63. 48,144,52,127,
  64. 24,144,55,127,
  65. 24,144,55,127,
  66. 48,144,52,127,
  67. 24,144,50,127,
  68. 24,144,48,127,
  69. 24,144,50,127,
  70. 24,144,52,127,
  71. 24,144,52,127,
  72. 24,144,52,127,
  73. 24,144,52,127,
  74. 24,144,50,127,
  75. 24,144,50,127,
  76. 24,144,52,127,
  77. 24,144,50,127,
  78. 24,144,48,127
  79. myScore
  80. 60,synth
  81. staff2
  82. staff1
  83. staff1
  84. staff2
  85. synth
  86. buttonUp
  87. buttonUp
  88. buttonDown
  89. ,synth
  90. buttonDown
  91. ,drum
  92. synth
  93. buttonUp
  94. buttonUp
  95. staff2
  96. staff1
  97. default
  98. pageright
  99. pageleft
  100. numItems
  101. playstring
  102. noteOff
  103. hMidiOut
  104. channelname
  105. myScore
  106. Arial
  107. Times New Roman
  108. Times New Roman
  109. LeaveBook
  110. \("close 
  111. enterBook
  112. LeaveBook
  113. enterBook
  114. c:\toolbook\playhous\
  115. playhous.sbk
  116. Zpath
  117. playhous.sbk
  118. zpath
  119. LeaveBook
  120. close count
  121. tbkMCI
  122. lie's Playhouse
  123. System
  124. Allie's Playhouse
  125. :PHYSSIZE
  126. 4Zpath
  127. playhouse 
  128. .tbk")
  129. default
  130. buttonup
  131. buttonup
  132. playhous.tbk
  133. default
  134. playhouse
  135. Zpath
  136. :PHYSSIZE
  137. xyoffset 
  138. item1 
  139. item2 
  140. p2 + 
  141. p2 + 
  142. buttondown
  143. buttonup
  144. buttondown
  145. item2
  146. item1
  147. xyoffset
  148. buttonup
  149. item2
  150. item1
  151. 8272,5745
  152. help synth
  153. buttonup
  154. buttonup
  155. synth
  156. patch
  157. :PHYSSIZE
  158. :PHYSSIZE
  159. :PHYSSIZE
  160. :PHYSSIZE
  161. :PHYSSIZE
  162. :PHYSSIZE
  163. :PHYSSIZE
  164. :PHYSSIZE
  165. pobjects
  166. polygon id 213 of page id 2,polygon id 214 of page id 2,polygon id 215 of page id 2,polygon id 216 of page id 2,polygon id 217 of page id 2,polygon id 218 of page id 2,polygon id 221 of page id 2,polygon id 222 of page id 2
  167. pscript
  168. to handle buttonDown
  169.     send play name of target 
  170. to handle buttonUp loc,isshift,isctrl
  171.       send endPlay name of target
  172. to handle buttonDoubleClick
  173.     -- This takes care of fast repeating notes
  174.     send play name of target
  175.     set invert of target to true
  176.     set invert of target to false
  177. to handle play myname
  178.     system hMidiOut
  179.     set rawnote1 to 144+9,myname,127
  180.     set note1 to packdword(rawnote1)
  181.     get midiOutShortMsg(hMidiOut,note1)
  182. to handle endPlay myname
  183.     system hMidiOut
  184.     set rawnote1 to 128+9,myname,127
  185.     set note1 to packdword(rawnote1)
  186.     get midiOutShortMsg(hMidiOut,note1)
  187. >&"sel") 
  188. buttondown
  189. buttonup
  190. buttondown
  191. buttonup
  192. previous
  193. :PHYSSIZE
  194. leftsel
  195. :PHYSSIZE
  196. >&"sel") 
  197. buttondown
  198. buttonup
  199. buttondown
  200. buttonup
  201. right
  202. :PHYSSIZE
  203. rightsel
  204. :PHYSSIZE
  205. myKeyboard
  206. |#T#y#
  207. h$@$e$
  208. 6%,%3%
  209. 4recording
  210. release 
  211. play 
  212. buttonup
  213. buttonup
  214. record
  215. oI0release
  216. record
  217. oI0release
  218. recording
  219. *:PHYSSIZE
  220. xyoffset 
  221. item1 
  222. item2 
  223. p2 + 
  224. p2 + 
  225. release;
  226. buttondown
  227. release
  228. buttondown
  229. item2
  230. item1
  231. xyoffset
  232. release
  233. item2
  234. item1
  235. 4740,2235
  236. 4recording
  237. False
  238. release 
  239. buttonUp
  240. buttonUp
  241. oI0release
  242. record
  243. recording
  244. /:PHYSSIZE
  245. xyoffset 
  246. item1 
  247. item2 
  248. p2 + 
  249. p2 + 
  250. buttondown
  251. buttonup
  252. buttondown
  253. item2
  254. item1
  255. xyoffset
  256. buttonup
  257. item2
  258. item1
  259. 5715,2235
  260. record
  261. 4recording, myScore, myTimer, eventNum
  262. default
  263. buttonUp
  264. buttonUp
  265. record
  266. default
  267. recording
  268. myScore
  269. myTimer
  270. eventNum
  271. 5:PHYSSIZE
  272. record
  273. xyoffset 
  274. item1 
  275. item2 
  276. p2 + 
  277. p2 + 
  278. release;
  279. buttondown
  280. release
  281. buttondown
  282. item2
  283. item1
  284. xyoffset
  285. release
  286. item2
  287. item1
  288. 6675,2235
  289. 9:PHYSSIZE
  290. Patch
  291. Piano
  292. 4zpath
  293. "c:\toolbook\playhous\"
  294. .sbk" 
  295. (Zpath&"
  296. linkkernel
  297. linkmmsys
  298. midisetup
  299. LeaveBook
  300. 4hMidiOut
  301. midiOutReset(
  302. midiOutClose(
  303. tbkBitmap("close kid")
  304. patch")
  305. tbkMCI("
  306. #count","")
  307. "Piano"
  308. saveAs
  309. g    globalAlloc(WORD,
  310.     globalLock(
  311.     globalUnlock(
  312. 2    globalFree(
  313. -- This might 
  314. xbe needed 
  315. X"mmsystem.dll" -- find the 
  316.     -- MIDI. 
  317. functions except "...GetNumDevs" 
  318. error
  319. -- query
  320.     midiInGetNumDevs()--RETURNS NUMBER OF DEVICES
  321.     midiInGetDevCaps(
  322. POINTER,
  323. - ID,P TO STRUCT,SIZE OF 
  324.     midiOutGetNumDevs()--
  325.     midiOutGetDevCaps(
  326.  ID,P TO 
  327.     midiInOpen(
  328. DWORD,
  329.             --HANDLE TO DEVICEID,
  330.  ID (
  331. makes sense),CALLBACK ADDRESS,CB INSTANCE DATA, CB FLAGS (WINDOW OR FUNCTION needs looking up)
  332.     midiInClose(
  333. PASSES H TO M I 
  334.     midiOutOpen(
  335. )-- SEE 
  336. ) -- 
  337. -- device 
  338.     midiInGetID(
  339. ) -- 
  340.  ID, 
  341. -SIZED STRUCTURE
  342.     midiOutGetID(
  343. ) -- 
  344.  ID, 
  345. messages
  346.     midiOutLongMsg (
  347. ,HDR 
  348. }, FOR SYSEXCL.
  349.     midiOutShortMsg(
  350. ,PACKED MSG.
  351.     midiOutPrepareHeader(
  352. ) -- 
  353. ) -- 
  354.     midiOutUnprepareHeader(
  355. ) -- 
  356. -- receive 
  357.     midiInAddBuffer(
  358.     midiInPrepareHeader(
  359. ) -- 
  360.     midiInUnprepareHeader(
  361. ) -- 
  362. -- control input
  363.     midiInStart(
  364. ) -- 
  365.     midiInStop(
  366. ) -- 
  367.     midiInReset(
  368. ) -- 
  369. -- change patches
  370.     midiOutCacheDrumPatches(
  371.             -- 
  372. , PATCH (most be zero), KEY NUMBERS, 
  373. CACHE
  374.     midiOutCachePatches(
  375.             -- 
  376. , BANK (
  377. fARRAY, 
  378.     midiOutGetVolume(
  379.  LOW=LEFT, HIGH=RIGHT
  380.     midiOutSetVolume(
  381. -- errors
  382.     midiInGetErrorText(
  383. )-- ERROR #, BUFFER, 
  384.     midiOutGetErrorText(
  385.     -- TIMER
  386.     timeBeginPeriod(
  387. )--RESOLUTION IN MILLISECONDS
  388.     timeEndPeriod(
  389. )-- DITTO
  390.     timeGetDevCaps(
  391. )--TIMECAPS 
  392.     timeGetSystemTime(
  393. )--MMTIMESTRUCTURE, 
  394.     timeGetTime()--
  395. SYSTIME IN 
  396.     timeKillEvent(
  397.     timeSetEvent(
  398.         --DELAY,
  399. MUST BE DLL,
  400. TYPE:ONESHOT = 0, PERIODIC = 1
  401. defmidimsg
  402. 4MIM_CLOSE,MM_MIM_CLOSE,MIM_DATA,MM_MIM_DATA,MIM_ERROR,MM_MIM_ERROR
  403. 4MIM_LONGDATA,MM_MIM_LONGDATA,MIM_LONGERROR,MM_MIM_LONGERROR,MIM_OPEN
  404. 4MM_MIM_OPEN,MOM_CLOSE,MM_MOM_CLOSE,MOM_DONE,MM_MOM_DONE,MOM_OPEN,MM_MOM_OPEN
  405.     962;
  406.     963;
  407.     965;
  408.     964;
  409.     961;
  410.     968;
  411.     969;
  412.     967;
  413. midiheader
  414. 4hMidiHdr,lpData,dwBufferLength,dwBytesRecorded
  415. 4dwUser,dwFlags,lpNext,dwReserved
  416.     --dWord * 4
  417. 0,28)
  418. 12    -- 
  419. p data
  420. 16    --MHDR_DONE 1,MHDR_PREPARED 2
  421. --MHDR_INQUEUE 4, reserved 
  422. driver
  423. 20 -- don't use
  424. 24 -- 
  425. midiSetup 
  426. ,channelname, program, patchNum, 
  427. "piano"
  428. 0,32)
  429. ,0,0,0,0) -- 
  430.  should contain 
  431. @,65535,0,0,0) -- opens 
  432. midiMapper
  433.  code:"&&
  434. "Handle 
  435.     :"&&
  436. key, isShift
  437.  = KeyZ
  438. B"48" 
  439. E = KeyS 
  440. L <> 
  441. B"49" 
  442.  = KeyX
  443. B"50" 
  444.  = KeyD
  445. B"51" 
  446.  = KeyC
  447. B"52" 
  448. key = KeyV
  449. B"53" 
  450. B"54" 
  451. B"55" 
  452. B"56" 
  453. B"57" 
  454. B"58" 
  455. B"59" 
  456. Comma
  457. B"60" 
  458.         -- Drums
  459. Numpad1
  460. "36" 
  461. Numpad2
  462. "38" 
  463. Numpad3
  464. "42" 
  465. Numpad4
  466. "44" 
  467. Numpad5
  468. "48" 
  469. Numpad6
  470. "45" 
  471. Numpad7
  472. "41" 
  473. Numpad8
  474. "49" 
  475. B"48" 
  476. B"49" 
  477. B"50" 
  478. B"51" 
  479. B"52" 
  480. B"53" 
  481. B"54" 
  482. B"55" 
  483. B"56" 
  484. B"57" 
  485. B"58" 
  486. B"59" 
  487. B"60" 
  488.         -- 
  489. "36" 
  490. "38" 
  491. "42" 
  492. "44" 
  493. "48" 
  494. "45" 
  495. "41" 
  496. "49" 
  497. (/100) 
  498. "mykeyboard" 
  499. (/100) 
  500. packdword rgb
  501. r+(g*256)+(b*65536)
  502. programchange
  503. rawnote1 
  504. 9    myname+20,127
  505. hex num
  506. 4hexvalue
  507.  < 10
  508. - > 9) 
  509. 8 < 16)
  510. K+55)&
  511. W > 15
  512. lobyte 
  513. hipart 
  514. *) / 16
  515. panic
  516.     -- Resets 
  517. stucked notes
  518. midiOutReSet(
  519. status kid 
  520. displayKid
  521. displayPatch
  522. wRect 
  523. clientFromPage(
  524. ,sysMagnification,
  525.  icon
  526. e") <> "" -- 
  527.  bitmap 
  528. displayed
  529. tbkBitmapChk("
  530. tbkBitmapchk("
  531. instr\"&
  532. &".BMP alias 
  533.  style child",1)
  534. &"",1)
  535.  state 
  536.     -- Trap click on 
  537. bmpHandle 
  538.     translatewindowmessage 
  539. Buttonup 
  540. could be sent 
  541. sysbook 
  542. simplify 
  543. nterBook
  544. defmidimsg
  545. midiheader
  546. saveAs
  547. midiSetup
  548. LeaveBook
  549. keydown
  550. keyUp
  551. linkkernel
  552. programchange
  553. panic
  554. linkmmsys
  555. enterBook
  556. displayPatch
  557. packdword
  558. enterBook
  559. c:\toolbook\playhous\
  560. playhous.sbk
  561. Zpath
  562. playhous.sbk
  563. linkkernel
  564. linkmmsys
  565. midisetup
  566. zpath
  567. LeaveBook
  568. midiOutReset
  569. midiOutClose
  570. close kid
  571. tbkBitmap
  572. close patch
  573. tbkBitmap
  574. hMidiOut
  575. patch
  576. Piano
  577. saveAs
  578. patch
  579. Piano
  580. linkkernel
  581. globalAlloc
  582. globalLock
  583. globalUnlock
  584. globalFree
  585. kernel
  586. linkmmsys
  587. mmsystem.dll
  588. midiInGetNumDevs
  589. midiInGetDevCaps
  590. midiOutGetNumDevs
  591. midiOutGetDevCaps
  592. midiInOpen
  593. midiInClose
  594. midiOutOpen
  595. midiOutClose
  596. midiInGetID
  597. midiOutGetID
  598. midiOutLongMsg
  599. midiOutShortMsg
  600. midiOutPrepareHeader
  601. midiOutReset
  602. midiOutUnprepareHeader
  603. midiInAddBuffer
  604. midiInPrepareHeader
  605. midiInUnprepareHeader
  606. midiInStart
  607. midiInStop
  608. midiInReset
  609. midiOutCacheDrumPatches
  610. midiOutCachePatches
  611. midiOutGetVolume
  612. midiOutSetVolume
  613. midiInGetErrorText
  614. midiOutGetErrorText
  615. timeBeginPeriod
  616. timeEndPeriod
  617. timeGetDevCaps
  618. timeGetSystemTime
  619. timeGetTime
  620. timeKillEvent
  621. timeSetEvent
  622. defmidimsg
  623. MM_MIM_OPEN
  624. MOM_CLOSE
  625. MM_MOM_CLOSE
  626. MOM_DONE
  627. MM_MOM_DONE
  628. MOM_OPEN
  629. MM_MOM_OPEN
  630. MIM_LONGDATA
  631. MM_MIM_LONGDATA
  632. MIM_LONGERROR
  633. MM_MIM_LONGERROR
  634. MIM_OPEN
  635. MIM_CLOSE
  636. MM_MIM_CLOSE
  637. MIM_DATA
  638. MM_MIM_DATA
  639. MIM_ERROR
  640. MM_MIM_ERROR
  641. midiheader
  642. globalAlloc
  643. dwUser
  644. dwFlags
  645. lpNext
  646. dwReserved
  647. hMidiHdr
  648. lpData
  649. dwBufferLength
  650. dwBytesRecorded
  651. midiSetup
  652. piano
  653. globalAlloc
  654. globalLock
  655. midiOutOpen
  656. globalUnlock
  657. globalFree
  658. hMidiOut
  659. channelname
  660. program
  661. patchNum
  662. patch
  663. o    keydown
  664. buttonDown
  665. buttonDown
  666. buttonDown
  667. buttonDown
  668. buttonDown
  669. buttonDown
  670. buttonDown
  671. buttonDown
  672. buttonDown
  673. buttonDown
  674. buttonDown
  675. buttonDown
  676. buttonDown
  677. buttonDown
  678. buttonDown
  679. buttonDown
  680. buttonDown
  681. buttonDown
  682. buttonDown
  683. buttonDown
  684. buttonDown
  685. isShift
  686. 3    keyUp
  687. buttonUp
  688. buttonUp
  689. buttonUp
  690. buttonUp
  691. buttonUp
  692. buttonUp
  693. buttonUp
  694. buttonUp
  695. buttonUp
  696. buttonUp
  697. buttonUp
  698. buttonUp
  699. buttonUp
  700. buttonUp
  701. buttonUp
  702. buttonUp
  703. buttonUp
  704. buttonUp
  705. buttonUp
  706. buttonUp
  707. buttonUp
  708. packdword
  709. programchange
  710. packdword
  711. midiOutShortMsg
  712. note1
  713. myname
  714. rawnote1
  715. hMidiOut
  716. channelname
  717. hipart
  718. lobyte
  719. hexvalue
  720. panic
  721. midiOutReSet
  722. hMidiOut
  723. status kid window
  724. tbkBitmap
  725. displayKid
  726. status patch window
  727. tbkBitmap
  728. displayPatch
  729. displayPatch
  730. patch
  731. clientFromPage
  732. status patch window
  733. tbkBitmap
  734. close patch
  735. tbkBitmapChk
  736. open 
  737. instr\
  738. .BMP alias patch style child
  739. tbkBitmapchk
  740. window patch position 
  741. tbkBitmapChk
  742. window patch state show
  743. tbkBitmapChk
  744. status patch window
  745. tbkBitmap
  746. Buttonup
  747. patch
  748. bmpHandle
  749. wRect
  750. patch
  751. Zpath
  752. 4hMidiOut, program, patchNum, 
  753.  = 13
  754. "Piano"
  755. patchName 
  756. "organ"
  757. "Organ"
  758. "xylo"
  759. "Xylophone"
  760. "violin"
  761. "Violin"
  762. "guitar"
  763. "Guitar"
  764. "trumpet"
  765. "Trumpet"
  766. "sax"
  767. "Saxophone"
  768. "flute"
  769. "Flute"
  770. "bells"
  771. "Bells"
  772. "harmonic"
  773. "Harmonica"
  774. "sweep"
  775. "Sweep"
  776. "musicbox"
  777. "Music Box"
  778. "sea"
  779. "Sea"
  780. -- display 
  781. displayPatch
  782. rawnote1 
  783. 192+0,
  784. rawnote2 
  785. 192+12,
  786. packdword(
  787. midiOutShortMsg(
  788. buttonUp
  789. buttonUp
  790. Piano
  791. Piano
  792. organ
  793. Organ
  794. Xylophone
  795. violin
  796. Violin
  797. guitar
  798. Guitar
  799. trumpet
  800. Trumpet
  801. Saxophone
  802. flute
  803. Flute
  804. bells
  805. Bells
  806. harmonic
  807. Harmonica
  808. sweep
  809. Sweep
  810. musicbox
  811. Music Box
  812. displayPatch
  813. packdword
  814. packdword
  815. midiOutShortMsg
  816. midiOutShortMsg
  817. note2
  818. note1
  819. rawnote2
  820. rawnote1
  821. patchName
  822. hMidiOut
  823. program
  824. patchNum
  825. patch
  826. myposition
  827. myposition
  828. myposition
  829. myposition
  830. myposition
  831. myposition
  832. myposition
  833. myposition
  834. myposition
  835. myposition
  836. myposition
  837. myposition
  838. myposition
  839. myPosition
  840. myName
  841. staff1
  842. staff2
  843. staff3
  844. pageLeft
  845. pageRight
  846. ):(]4
  847. "staff1" 
  848. "staff3"
  849. pageleft 
  850. pageright 
  851. "staff2" 
  852. buttonUp
  853. buttonUp
  854. staff1
  855. staff1
  856. staff3
  857. staff2
  858. staff2
  859. staff1
  860. staff3
  861. staff3
  862. staff2
  863. pageright
  864. pageleft
  865. *0Bb5
  866. "staff1" 
  867. "staff2"
  868. pageleft 
  869. pageright 
  870. "staff3"
  871. buttonUp
  872. buttonUp
  873. staff1
  874. staff1
  875. staff2
  876. staff2
  877. staff2
  878. staff3
  879. staff3
  880. staff3
  881. staff1
  882. pageright
  883. pageleft
  884. Twinkle Little Star
  885. Twinkle Little Startle Star
  886. +:PHYSSIZE
  887. J,",G,
  888. 4myScore
  889.     -- SCORE FORMAT IS TIME,CHANNEL,NOTE#,VELOCITY
  890. "0,144,48,127,"&&\ 
  891. "48,144,48,127,"&&\
  892. "48,144,55,127,"&&\
  893. "48,144,55,127,"&&\
  894. "48,144,57,127,"&&\
  895. "48,144,57,127,"&&\
  896. "48,144,55,127,"&&\
  897. "96,144,53,127,"&&\
  898. "48,144,53,127,"&&\
  899. "48,144,52,127,"&&\
  900. "48,144,52,127,"&&\
  901. "48,144,50,127,"&&\
  902. "48,144,50,127,"&&\
  903. "48,144,48,127,"&&\
  904. "96,144,55,127,"&&\ 
  905. "48,144,55,127,"&&\
  906. "48,144,53,127,"&&\
  907. "48,144,53,127,"&&\
  908. "48,144,52,127,"&&\
  909. "48,144,52,127,"&&\
  910. "48,144,50,127,"&&\
  911. "96,144,55,127,"&&\
  912. "48,144,55,127,"&&\
  913. "48,144,53,127,"&&\
  914. "48,144,53,127,"&&\
  915. "48,144,52,127,"&&\
  916. "48,144,52,127,"&&\
  917. "48,144,50,127,"&&\ 
  918. "96,144,48,127,"&&\ 
  919. "48,144,48,127,"&&\
  920. "48,144,55,127,"&&\
  921. "48,144,55,127,"&&\
  922. "48,144,57,127,"&&\
  923. "48,144,57,127,"&&\
  924. "48,144,55,127,"&&\
  925. "96,144,53,127,"&&\
  926. "48,144,53,127,"&&\
  927. "48,144,52,127,"&&\
  928. "48,144,52,127,"&&\
  929. "48,144,50,127,"&&\
  930. "48,144,50,127,"&&\
  931. "48,144,48,127"
  932. play -- Consider moving 
  933. each 
  934. 4hMidiOut, channelname, 
  935. Znote, noteOff
  936. "60,synth"
  937. playstring 
  938. numItems 
  939.         -- 
  940. score 
  941. 14 notes 
  942. twinkle
  943. i = 1
  944. "staff2"
  945. "staff3"
  946. "staff1"
  947. pageleft 
  948. pageright 
  949. i = 57
  950. i = 113
  951.             -- Play a 
  952.             --
  953. rawnote1 
  954.             --
  955. packdword(
  956.             --
  957. midiOutShortMsg(
  958.             -- 
  959.             --
  960.             --
  961.             --
  962.             --
  963.             --
  964.             --
  965. default
  966. click
  967. buttondoubleclick
  968. enterPage
  969. buttondoubleclick
  970. enterPage
  971. 0,144,48,127,
  972. 48,144,48,127,
  973. 48,144,55,127,
  974. 48,144,55,127,
  975. 48,144,57,127,
  976. 48,144,57,127,
  977. 48,144,55,127,
  978. 96,144,53,127,
  979. 48,144,53,127,
  980. 48,144,52,127,
  981. 48,144,52,127,
  982. 48,144,50,127,
  983. 48,144,50,127,
  984. 48,144,48,127,
  985. 96,144,55,127,
  986. 48,144,55,127,
  987. 48,144,53,127,
  988. 48,144,53,127,
  989. 48,144,52,127,
  990. 48,144,52,127,
  991. 48,144,50,127,
  992. 96,144,55,127,
  993. 48,144,55,127,
  994. 48,144,53,127,
  995. 48,144,53,127,
  996. 48,144,52,127,
  997. 48,144,52,127,
  998. 48,144,50,127,
  999. 96,144,48,127,
  1000. 48,144,48,127,
  1001. 48,144,55,127,
  1002. 48,144,55,127,
  1003. 48,144,57,127,
  1004. 48,144,57,127,
  1005. 48,144,55,127,
  1006. 96,144,53,127,
  1007. 48,144,53,127,
  1008. 48,144,52,127,
  1009. 48,144,52,127,
  1010. 48,144,50,127,
  1011. 48,144,50,127,
  1012. 48,144,48,127
  1013. myScore
  1014. 9    play
  1015. 60,synth
  1016. staff2
  1017. staff3
  1018. staff1
  1019. staff1
  1020. staff2
  1021. staff2
  1022. staff3
  1023. synth
  1024. buttonUp
  1025. buttonUp
  1026. buttonDown
  1027. ,synth
  1028. buttonDown
  1029. ,drum
  1030. synth
  1031. buttonUp
  1032. buttonUp
  1033. staff3
  1034. staff1
  1035. default
  1036. pageright
  1037. pageleft
  1038. numItems
  1039. playstring
  1040. noteOff
  1041. hMidiOut
  1042. channelname
  1043. myScore
  1044. record
  1045. pageLeft
  1046. "staff1" 
  1047. "staff2"
  1048. pageleft 
  1049. pageright 
  1050. buttonUp
  1051. buttonUp
  1052. staff1
  1053. staff1
  1054. staff2
  1055. staff2
  1056. staff2
  1057. staff1
  1058. pageright
  1059. pageleft
  1060. pageRight
  1061. "staff1" 
  1062. "staff2"
  1063. pageleft 
  1064. pageright 
  1065. buttonUp
  1066. buttonUp
  1067. staff1
  1068. staff1
  1069. staff2
  1070. staff2
  1071. staff2
  1072. staff1
  1073. pageright
  1074. pageleft
  1075. staff1
  1076. staff2
  1077. London Bridge
  1078. trackNum
  1079. tracknum
  1080. London Bridge
  1081. :PHYSSIZE
  1082. 4hMidiOut, channelname, myScore
  1083. Znote, noteOff
  1084. "60,synth"
  1085. playstring 
  1086. numItems 
  1087.             -- Play a 
  1088.             --
  1089.             --
  1090.             --
  1091.             --
  1092. rawnote1 
  1093.             --
  1094. packdword(
  1095.             --
  1096. midiOutShortMsg(
  1097.             -- 
  1098.             --
  1099.             --
  1100.             --
  1101.             --
  1102.             --
  1103.             --
  1104. default
  1105. 60,synth
  1106. synth
  1107. buttonUp
  1108. buttonUp
  1109. buttonDown
  1110. ,synth
  1111. buttonDown
  1112. ,drum
  1113. synth
  1114. buttonUp
  1115. buttonUp
  1116. default
  1117. numItems
  1118. playstring
  1119. noteOff
  1120. hMidiOut
  1121. channelname
  1122. myScore
  1123. ecord
  1124. L&L&L&L&L&L&L&L&L&L&L&L&L&L&
  1125. staff1
  1126. staff2
  1127. pageRight
  1128. "staff1" 
  1129. "staff2"
  1130. pageleft 
  1131. pageright 
  1132. buttonUp
  1133. buttonUp
  1134. staff1
  1135. staff1
  1136. staff2
  1137. staff2
  1138. staff2
  1139. staff1
  1140. pageright
  1141. pageleft
  1142. pageLeft
  1143. "staff1" 
  1144. "staff2"
  1145. pageleft 
  1146. pageright 
  1147. buttonUp
  1148. buttonUp
  1149. staff1
  1150. staff1
  1151. staff2
  1152. staff2
  1153. staff2
  1154. staff1
  1155. pageright
  1156. pageleft
  1157. Mary had a Little Lamb
  1158. tracknum
  1159. Mary had a Little Lamb
  1160. :PHYSSIZE
  1161. 4hMidiOut, program, patchNum, 
  1162.  = 13
  1163. "Piano"
  1164. patchName 
  1165. "organ"
  1166. "Organ"
  1167. "xylo"
  1168. "Xylophone"
  1169. "violin"
  1170. "Violin"
  1171. "guitar"
  1172. "Guitar"
  1173. "trumpet"
  1174. "Trumpet"
  1175. "sax"
  1176. "Saxophone"
  1177. "flute"
  1178. "Flute"
  1179. "bells"
  1180. "Bells"
  1181. "harmonic"
  1182. "Harmonica"
  1183. "sweep"
  1184. "Sweep"
  1185. "musicbox"
  1186. "Music Box"
  1187. "sea"
  1188. "Sea"
  1189. -- display 
  1190. displayPatch
  1191. rawnote1 
  1192. 192+0,
  1193. packdword(
  1194. midiOutShortMsg(
  1195. buttonUp
  1196. buttonUp
  1197. Piano
  1198. Piano
  1199. organ
  1200. Organ
  1201. Xylophone
  1202. violin
  1203. Violin
  1204. guitar
  1205. Guitar
  1206. trumpet
  1207. Trumpet
  1208. Saxophone
  1209. flute
  1210. Flute
  1211. bells
  1212. Bells
  1213. 0,0,0
  1214. play 
  1215. }loc,isshift,isctrl
  1216. endPlay 
  1217. 0,100,0
  1218.     -- This takes care 
  1219. repeating notes
  1220. 0,0,0
  1221. 0,75.3125,0
  1222. myname
  1223. 4hMidiOut, myTimer
  1224. 4recording, myScore
  1225. mytimer 
  1226. getTickCount()/10
  1227. X&",153,"&
  1228. w&",127" 
  1229. _))+1 
  1230. rawnote1 
  1231. 144+9,
  1232. rawnote2 
  1233. 144+15,
  1234. packdword(
  1235. midiOutShortMsg(
  1236. 128+9,
  1237. 128+15,
  1238. ttonUp
  1239. buttonDown
  1240. buttonDoubleClick
  1241. buttonUp
  1242. endPlay
  1243. buttonDown
  1244. buttonUp
  1245. :endPlay
  1246. isctrl
  1247. isshift
  1248. buttonDoubleClick
  1249. mytimer
  1250. getTickCount
  1251. getTickCount
  1252. ,153,
  1253. getTickCount
  1254. packdword
  1255. packdword
  1256. midiOutShortMsg
  1257. midiOutShortMsg
  1258. note2
  1259. note1
  1260. rawnote2
  1261. rawnote1
  1262. recording
  1263. myScore
  1264. hMidiOut
  1265. myTimer
  1266. myname
  1267. endPlay
  1268. packdword
  1269. packdword
  1270. midiOutShortMsg
  1271. midiOutShortMsg
  1272. note2
  1273. note1
  1274. rawnote2
  1275. rawnote1
  1276. hMidiOut
  1277. myname
  1278. packdword
  1279. midiOutShortMsg
  1280. note1
  1281. rawnote1
  1282. hMidiOut
  1283. myname
  1284. record
  1285. :PHYSSIZE
  1286. 4myScore
  1287. "0,144,55,127,"&&\ 
  1288. "24,144,57,127,"&&\
  1289. "24,144,55,127,"&&\
  1290. "24,144,53,127,"&&\
  1291. "24,144,52,127,"&&\
  1292. "24,144,53,127,"&&\
  1293. "24,144,55,127,"&&\
  1294. "48,144,50,127,"&&\
  1295. "24,144,52,127,"&&\
  1296. "24,144,53,127,"&&\
  1297. "48,144,52,127,"&&\
  1298. "24,144,53,127,"&&\
  1299. "24,144,55,127,"&&\
  1300. "48,144,55,127,"&&\
  1301. "24,144,57,127,"&&\ 
  1302. "24,144,55,127,"&&\
  1303. "24,144,53,127,"&&\
  1304. "24,144,52,127,"&&\
  1305. "24,144,53,127,"&&\
  1306. "24,144,55,127,"&&\
  1307. "48,144,50,127,"&&\
  1308. "48,144,55,127,"&&\
  1309. "48,144,52,127,"&&\
  1310. "24,144,48,127"
  1311. play 
  1312. 4hMidiOut, channelname, 
  1313. Znote, noteOff
  1314. "60,synth"
  1315. playstring 
  1316. numItems 
  1317.         -- 
  1318. score 
  1319. 13 notes 
  1320. i = 1
  1321. "staff2"
  1322.             --
  1323. "staff3"
  1324. "staff1"
  1325. pageleft 
  1326. pageright 
  1327. i = 53
  1328.             -- Play a 
  1329.             -- 
  1330. default
  1331. click
  1332. buttondoubleclick
  1333. enterPage
  1334. buttondoubleclick
  1335. enterPage
  1336. 0,144,55,127,
  1337. 24,144,57,127,
  1338. 24,144,55,127,
  1339. 24,144,53,127,
  1340. 24,144,52,127,
  1341. 24,144,53,127,
  1342. 24,144,55,127,
  1343. 48,144,50,127,
  1344. 24,144,52,127,
  1345. 24,144,53,127,
  1346. 48,144,52,127,
  1347. 24,144,53,127,
  1348. 24,144,55,127,
  1349. 48,144,55,127,
  1350. 24,144,57,127,
  1351. 24,144,55,127,
  1352. 24,144,53,127,
  1353. 24,144,52,127,
  1354. 24,144,53,127,
  1355. 24,144,55,127,
  1356. 48,144,50,127,
  1357. 48,144,55,127,
  1358. 48,144,52,127,
  1359. 24,144,48,127
  1360. myScore
  1361. 60,synth
  1362. staff2
  1363. staff1
  1364. staff1
  1365. staff2
  1366. synth
  1367. buttonUp
  1368. buttonUp
  1369. buttonDown
  1370. ,synth
  1371. buttonDown
  1372. ,drum
  1373. synth
  1374. buttonUp
  1375. buttonUp
  1376. staff2
  1377. staff1
  1378. default
  1379. pageright
  1380. pageleft
  1381. numItems
  1382. playstring
  1383. noteOff
  1384. hMidiOut
  1385. channelname
  1386. myScore
  1387. D@@DD@DD@
  1388. @D@DD
  1389. DDDD@D@@@DDDD
  1390. HpD@@
  1391. @D@@@
  1392. @@D@@
  1393. @DD@D
  1394. @D@DD
  1395. DDD@D
  1396. DD@@@
  1397. @@@@@@
  1398. DDLDD
  1399. DODOO
  1400. *"*".
  1401. playhous.ico
  1402. playhous.ico
  1403. play 
  1404. }loc,isshift,isctrl
  1405. endPlay 
  1406.     -- This takes care 
  1407. repeating notes
  1408. myname
  1409. 4hMidiOut, myTimer, eventNum, myPosition
  1410. 4recording, myScore
  1411. mytimer 
  1412. getTickCount()/10
  1413. d = 17 --
  1414.  were recorded
  1415. zsomething elegant here, like 
  1416. stop 
  1417. &",144,"&
  1418. &",127" 
  1419. ))+1 
  1420. "48,144,"&
  1421. &",127" 
  1422. ))+1 
  1423. GetMyPosition myName
  1424. rawnote1 
  1425. 144+0,
  1426. rawnote2 
  1427. 144+12,
  1428. packdword(
  1429. midiOutShortMsg(
  1430. channelname
  1431. 128+0,
  1432. 128+12,
  1433. getMyPosition 
  1434. myposition 
  1435. -- Use 
  1436. change 
  1437.  color
  1438. sysFillcolor
  1439. buttonDown
  1440. buttonDoubleClick
  1441. buttonUp
  1442. endPlay
  1443. getMyPosition
  1444. buttonDown
  1445. buttonUp
  1446. :endPlay
  1447. isctrl
  1448. isshift
  1449. buttonDoubleClick
  1450. mytimer
  1451. getTickCount
  1452. getTickCount
  1453. ,144,
  1454. getTickCount
  1455. packdword
  1456. packdword
  1457. midiOutShortMsg
  1458. midiOutShortMsg
  1459. note2
  1460. note1
  1461. rawnote2
  1462. rawnote1
  1463. recording
  1464. myScore
  1465. hMidiOut
  1466. myTimer
  1467. eventNum
  1468. myPosition
  1469. myname
  1470. endPlay
  1471. packdword
  1472. packdword
  1473. midiOutShortMsg
  1474. midiOutShortMsg
  1475. note2
  1476. note1
  1477. rawnote2
  1478. rawnote1
  1479. hMidiOut
  1480. channelname
  1481. myname
  1482. getMyPosition
  1483. myposition
  1484. myposition
  1485. myposition
  1486. myposition
  1487. myposition
  1488. myposition
  1489. myposition
  1490. myposition
  1491. myposition
  1492. myposition
  1493. myposition
  1494. myposition
  1495. myposition
  1496. myposition
  1497. myPosition
  1498. myName
  1499. :PHYSSIZE
  1500. 4Zpath
  1501. playhouse 
  1502. .tbk")
  1503. default
  1504. buttonup
  1505. buttonup
  1506. playhous.tbk
  1507. default
  1508. playhouse
  1509. Zpath
  1510. :PHYSSIZE
  1511. xyoffset 
  1512. item1 
  1513. item2 
  1514. p2 + 
  1515. p2 + 
  1516. buttondown
  1517. buttonup
  1518. buttondown
  1519. item2
  1520. item1
  1521. xyoffset
  1522. buttonup
  1523. item2
  1524. item1
  1525. 8272,5745
  1526. help synth
  1527. buttonup
  1528. buttonup
  1529. synth
  1530. patch
  1531. :PHYSSIZE
  1532. :PHYSSIZE
  1533. :PHYSSIZE
  1534. :PHYSSIZE
  1535. :PHYSSIZE
  1536. :PHYSSIZE
  1537. :PHYSSIZE
  1538. :PHYSSIZE
  1539. pobjects
  1540. polygon id 213 of page id 2,polygon id 214 of page id 2,polygon id 215 of page id 2,polygon id 216 of page id 2,polygon id 217 of page id 2,polygon id 218 of page id 2,polygon id 221 of page id 2,polygon id 222 of page id 2
  1541. pscript
  1542. to handle buttonDown
  1543.     send play name of target 
  1544. to handle buttonUp loc,isshift,isctrl
  1545.       send endPlay name of target
  1546. to handle buttonDoubleClick
  1547.     -- This takes care of fast repeating notes
  1548.     send play name of target
  1549.     set invert of target to true
  1550.     set invert of target to false
  1551. to handle play myname
  1552.     system hMidiOut
  1553.     set rawnote1 to 144+9,myname,127
  1554.     set note1 to packdword(rawnote1)
  1555.     get midiOutShortMsg(hMidiOut,note1)
  1556. to handle endPlay myname
  1557.     system hMidiOut
  1558.     set rawnote1 to 128+9,myname,127
  1559.     set note1 to packdword(rawnote1)
  1560.     get midiOutShortMsg(hMidiOut,note1)
  1561. >&"sel") 
  1562. buttondown
  1563. buttonup
  1564. buttondown
  1565. buttonup
  1566. previous
  1567. :PHYSSIZE
  1568. leftsel
  1569. :PHYSSIZE
  1570. >&"sel") 
  1571. buttondown
  1572. buttonup
  1573. buttondown
  1574. buttonup
  1575. right
  1576. :PHYSSIZE
  1577. rightsel
  1578. :PHYSSIZE
  1579. myKeyboard
  1580. |#T#y#
  1581. h$@$e$
  1582. 6%,%3%
  1583. 4recording
  1584. release 
  1585. play 
  1586. buttonup
  1587. buttonup
  1588. record
  1589. oI0release
  1590. record
  1591. oI0release
  1592. recording
  1593. *:PHYSSIZE
  1594. xyoffset 
  1595. item1 
  1596. item2 
  1597. p2 + 
  1598. p2 + 
  1599. release;
  1600. buttondown
  1601. release
  1602. buttondown
  1603. item2
  1604. item1
  1605. xyoffset
  1606. release
  1607. item2
  1608. item1
  1609. 4740,2235
  1610. 4recording
  1611. False
  1612. release 
  1613. buttonUp
  1614. buttonUp
  1615. oI0release
  1616. record
  1617. recording
  1618. /:PHYSSIZE
  1619. xyoffset 
  1620. item1 
  1621. item2 
  1622. p2 + 
  1623. p2 + 
  1624. buttondown
  1625. buttonup
  1626. buttondown
  1627. item2
  1628. item1
  1629. xyoffset
  1630. buttonup
  1631. item2
  1632. item1
  1633. 6675,2235
  1634. record
  1635. 4recording, myScore, myTimer, eventNum
  1636. default
  1637. buttonUp
  1638. buttonUp
  1639. record
  1640. default
  1641. recording
  1642. myScore
  1643. myTimer
  1644. eventNum
  1645. 5:PHYSSIZE
  1646. record
  1647. xyoffset 
  1648. item1 
  1649. item2 
  1650. p2 + 
  1651. p2 + 
  1652. release;
  1653. buttondown
  1654. release
  1655. buttondown
  1656. item2
  1657. item1
  1658. xyoffset
  1659. release
  1660. item2
  1661. item1
  1662. 4740,2235
  1663. 9:PHYSSIZE
  1664. Patch
  1665. Piano
  1666. 5715,2235
  1667.