[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
unit ECO_play;
interface

uses crt;

const
   note_octave   : integer = 4;     { current octave for note            }
   note_fraction : real    = 0.875; { fraction of duration given to note }
   note_duration : integer = 0;     { duration of note     ^semi-legato }
   note_length   : real    = 0.25;  { length of note }
   note_quarter  : real    = 500.0; { moderato pace (principal beat)     }

procedure setdefaultnotes;
procedure play(s: string);
procedure beep(h, l: word);

  call: play(string)

        music_string --- the string containing the encoded music to be
                         played.  the format is the same as that of the
                         microsoft basic play statement.  the string
                         must be <= 254 characters in length.

  calls:  sound
          getint  (internal)

  remarks:  the characters accepted by this routine are:

            a - g       musical notes
            # or +      following a - g note, indicates sharp
            -           following a - g note, indicates flat
            <           move down one octave
            >           move up one octave
            .           dot previous note (extend note duration by 3/2)
            mn          normal duration (7/8 of interval between notes)
            ms          staccato duration
            ml          legato duration
            ln          length of note (n=1-64; 1=whole note,4=quarter note)
            pn          pause length (same n values as ln above)
            tn          tempo,n=notes/minute (n=32-255,default n=120)
            on          octave number (n=0-6,default n=4)
            nn          play note number n (n=0-84)

            the following two commands are ignored by play:

            mf          complete note before continuing
            mb          another process may begin before speaker is
                        finished playing note

  important --- setdefaultnotes must have been called at least once before
                this routine is called.

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson