DIRECTORY Rope USING [ROPE], Basics USING [UnsafeBlock]; PlayOps: DEFINITIONS = { PlayTuneProc: TYPE = PROCEDURE [ music: Rope.ROPE, file, random: BOOLEAN _ FALSE, beepProc: BeepProc _ NIL, chunkSize: CARDINAL _ 75]; BeepProc: TYPE = PROC[beepFreq: CARDINAL, beepTime: CARDINAL, notify: BOOL_FALSE, pause: BOOL_FALSE]; --Hertz and millisecs PlayString: PlayTuneProc; PlayBlock: PROCEDURE [ musicBlock: Basics.UnsafeBlock, random: BOOLEAN _ FALSE, beepProc: BeepProc, --callback proc provided by caller chunkSize: CARDINAL _ 75, quietFinish: BOOLEAN _ TRUE --wh: Window.Handle _ NIL--]; }. òPlayOps.mesa Last Edited by: Pier, May 4, 1984 11:58:31 am PDT Last Edited by: Swinehart, July 30, 1984 2:55:07 pm PDT Window USING [Handle], music is either a rope of muscial characters encoded via the Play encoding or, if file=TRUE, the name of a file to read for such a musical encoding. If random=TRUE, music is a random text string to be interpreted as music. A beepProc is a callback procedure, provided by the caller who knows how to make noises. This will be better implemented soon. Ê/˜Jšœ ™ Jšœ1™1J™7J˜šÏk ˜ Jšœœ ™Jšœœœ˜Jšœœ˜J˜—Jšœ œ˜J˜šÏn œœ œ˜ Jš œ œœœœ œ˜eJ™ÝJ˜—Jšžœœœ œ œ œœ œœÏc˜{J˜Jšž œ˜J˜šž œ œ˜Jšœ(œœ˜8JšœŸ"˜6Jšœ œœ˜5JšŸœ˜J˜—Jšœ˜J˜J˜J˜—…—Xy