home *** CD-ROM | disk | FTP | other *** search
/ Audio 4.94 - Over 11,000 Files / audio-11000.iso / msdos / music / ansipl20 / ansiplay.doc < prev    next >
Text File  |  1991-06-13  |  47KB  |  1,160 lines

  1.  
  2.  
  3.  
  4.  
  5.                  ANSIPLAY vs. 2.0 - Copyright 1991, J. Ibarra
  6.                            ALL RIGHTS RESERVED
  7.        
  8.                          U S E R ' S   M A N U A L
  9.  
  10.        
  11.        INDEX:                                         PAGE NO.
  12.        -------------------------------------------    --------
  13.        Copyright Notice and Regulations . . . . . . . .  2
  14.        
  15.        Introduction . . . . . . . . . . . . . . . . . .  2
  16.        
  17.        Files included with the program. . . . . . . . .  4
  18.        
  19.        Printing the manual. . . . . . . . . . . . . . .  4
  20.        
  21.        How ANSIPLAY works . . . . . . . . . . . . . . .  5
  22.        
  23.        About ANSI.SYS (and installation). . . . . . . .  5
  24.        
  25.        Editing your ANSI file . . . . . . . . . . . . .  6
  26.        
  27.        Music string syntax. . . . . . . . . . . . . . .  6
  28.        
  29.        Music string contents. . . . . . . . . . . . . .  7
  30.        
  31.        Music codes / Sound codes definition . . . . . .  7
  32.        
  33.        Using Music Codes. . . . . . . . . . . . . . . .  8
  34.        
  35.        Using Sound Codes. . . . . . . . . . . . . . . .  8
  36.        
  37.        Music string Tutorial (TUTOR.BAT). . . . . . . . 10
  38.  
  39.        Making the music strings invisible . . . . . . . 10
  40.  
  41.        Using ESC/Music Note characters during editing . 11
  42.        
  43.        Getting familiar with ANSIPLAY . . . . . . . . . 12
  44.        
  45.        ANSIPLAY command syntax (and options). . . . . . 12
  46.        
  47.        Reinitializing the display screen (ANSIPLAY.CLS) 13
  48.  
  49.        Removing music strings (MUSCSTRP.EXE). . . . . . 13
  50.  
  51.        How ANSIAUTO works (slide-show). . . . . . . . . 14
  52.        
  53.        Running ANSIAUTO . . . . . . . . . . . . . . . . 12
  54.        
  55.        Using PLAY.EXE (music string player/editor). . . 15
  56.  
  57.        Common problems. . . . . . . . . . . . . . . . . 16
  58.  
  59.        Registering ANSIPLAY . . . . . . . . . . . . . . 18
  60.        
  61.  
  62.  
  63.                                    -1-
  64.       
  65.        
  66.       
  67.  
  68.        First of all, let me get this over with...
  69.        
  70.        COPYRIGHT NOTICE
  71.        ----------------
  72.        All rights to ANSIPLAY and included files are reserved by the
  73.        author, Julie M. Ibarra, and are protected by United States
  74.        Copyright Laws.  Violators will be held accountable for their
  75.        actions in a Court of Law and may face financial penalties
  76.        and/or imprisonment.
  77.        
  78.        User's are free to use ANSIPLAY and ANSIAUTO for a trial period
  79.        of 30 days.  If after 30 days you decide to keep the program, you
  80.        must register your copy by sending the required payment to the
  81.        author.  Failure to register your copy after 30 days is in direct
  82.        violation of copyright laws.
  83.        
  84.        Any alterations to the program files or documentation may only be
  85.        made for the user's own personal usage of the program, provided
  86.        that you notify the author in writing of said alterations.
  87.        
  88.        The program and documentation may NOT be distributed in altered
  89.        form.  REGISTERED VERSIONS OR BACKUP COPIES THEREOF MAY NOT BE
  90.        DISTRIBUTED, COPIED, OR SHARED IN ANY WAY, OTHER THAN FOR
  91.        PERSONAL BACKUPS.  You may not network the program, or otherwise
  92.        use it on more than one computer.  If the program is to be used
  93.        on more than one computer a separate registration is required per
  94.        computer.
  95.        
  96.        Otherwise, non-registered versions of ANSIPLAY (and included
  97.        files) may be distributed freely in unaltered form provided that
  98.        NO CHARGE is made for the program itself (postage and disk costs
  99.        excluded).
  100.        
  101.        This product is provided "AS IS" WITHOUT WARRANTY OF ANY KIND.
  102.        The entire risk as the results and performance of the PRODUCT is
  103.        assumed BY YOU.
  104.        
  105.        In NO event shall the author, nor employees of the author be
  106.        liable for any damages whatsoever (including without limitation
  107.        damages for loss of business profits, business interuption, loss
  108.        of business information and the like) arising out of the use of
  109.        or inability to use this product even if the author has been
  110.        advised of the possibility of such damages.
  111.        
  112.        
  113.        INTRODUCTION
  114.        ------------
  115.        If you have this program, more than likely you are already
  116.        familiar with ANSI control sequences.  But just for sake of
  117.        reference, here's a few more details about what ANSI is and
  118.        how it works.
  119.  
  120.        ANSI (American National Standards Institute) control sequences
  121.        are simply sets of characters which, when put together, will
  122.        enable computer-users to have extended control over their display
  123.        screen.
  124.  
  125.  
  126.                                    -2-
  127.  
  128.  
  129.  
  130.  
  131.        This extended control is given by DOS's device driver, ANSI.SYS,
  132.        which reads these sets of characters, interprets them, and then
  133.        processes the commands by moving the cursor positions, changing
  134.        screen colors, etc.  They also will allow your monitor to display
  135.        the extended ASCII character set (Decimals 128 - 255).
  136.  
  137.        These sets of characters are referred to as Escape Command
  138.        Sequences.  In other words, a sequence of commands preceeded by
  139.        an Escape character (Decimal Character 27).
  140.  
  141.        Each computer system processes these command sequences at 
  142.        different speeds...for example, an AT will processes much
  143.        faster than an XT.
  144.        
  145.        There are several software packages which allow the user to edit
  146.        and save these command sequences into a file (called an ANSI
  147.        file) without having to know the actual command sequences.
  148.        Some of these (Such as Public Domain's "THE DRAW") will
  149.        allow you to specify the speed of which you want the ANSI file
  150.        to be displayed.
  151.  
  152.        Once the ANSI.SYS device driver is installed in DOS (Disk
  153.        Operating System), these ANSI files may be displayed by simply
  154.        typing a DOS command something like:
  155.        
  156.                   TYPE FILENAME.ANS
  157.        
  158.        Installation of ANSI.SYS is discussed later in this manual.
  159.        
  160.        Until now, the ANSI files have had one drawback...they have
  161.        screen control, but no sound.
  162.        
  163.        ANSIPLAY was developed for the purpose of adding music/sound
  164.        ability to ANSI files.  ANSIPLAY is NOT intended to be an ANSI
  165.        editing program such as the well known Public Domain program
  166.        "TheDraw" which enables on-screen selection of colors, cursor
  167.        positions and movement, etc., but rather ANSIPLAY is intended
  168.        allow the user to use ANY ANSI file and, by adding a few extra
  169.        escape command sequences (we'll call them music codes), enable
  170.        the integration of screen display and music/sound/pauses to it.
  171.        
  172.        Once these music codes are added to the file (by use of most any
  173.        text editor), the simplest command used to display/play them
  174.        would replace the 'TYPE' command with 'ANSIPLAY', thus something
  175.        like:
  176.                   ANSIPLAY FILENAME.ANS
  177.        
  178.        Later in this manual is a more detailed breakdown of command
  179.        syntax and additional options available with ANSIPLAY.
  180.        
  181.        One thing to remember: Adding music strings to the file
  182.        is kind of like putting icing on the cake...it's the final
  183.        touch to your ANSI file.
  184.  
  185.        You can't re-bake the cake once the icing's been put on it,
  186.        and you can't reconstruct the ANSI file with an ANSI editor
  187.  
  188.  
  189.                                    -3-
  190.  
  191.  
  192.  
  193.  
  194.        (such as "The Draw") with the music strings in it.  The reason
  195.        being that the editor will try to interprete the escape
  196.        sequences containing music strings as text, therefore displaying
  197.        it to screen.
  198.  
  199.        You CAN however, remove the music strings using MUSCSTRP.EXE,
  200.        to make the file compatible for the ANSI editor again.
  201.        (Refer to the section on "Removing Music Strings".)
  202.  
  203.        A text editor, of course will interprete ALL characters as text
  204.        so there's no problem there.
  205.  
  206.  
  207.        FILES INCLUDED
  208.        --------------
  209.        Files included with this package are as follows:
  210.        
  211.                           ---Program Files---
  212.  
  213.           ANSIPLAY.EXE - Program to read/display/play ANSI files.
  214.           ANSIAUTO.EXE - Program to automate ANSIPLAY.EXE into a
  215.                          slide-show.
  216.           PLAY    .EXE - Allows you to play a music string from the
  217.                          DOS prompt.
  218.           MUSCSTRP.EXE - Removes music strings from your ANSI files.
  219.           GO      .BAT - An Introduction to the entire program package.
  220.           TUTOR   .BAT - A brief tutorial on some of ANSIPLAY's more
  221.                          advanced features. (Read this manual first.)
  222.  
  223.                           ---Documentation---
  224.  
  225.           OVERVIEW.DOC - A quick look at most of ANSIPLAY's features.
  226.           ANSIPLAY.DOC - User's Manual (This documentation).
  227.           ANSICODE.TXT - Listing of ANSI control sequences available.
  228.           MUSICODE.TXT - Listing of Music codes available to be used
  229.                          with ANSIPLAY.EXE.  (Also see the section on
  230.                          Sound Codes).
  231.           ORDER   .FRM - Registration Form to purchase your registered   
  232.                          and most current version of ANSIPLAY.
  233.  
  234.                            ---Data Files---
  235.  
  236.           ANSIAUTO.DAT - Sample Data file used with ANSIAUTO.EXE.
  237.           INTRO   .ANS - Data file used with GO.BAT
  238.           TUTOR   .ANS - ANSI file used with TUTOR.BAT
  239.           XMASTREE.ANS - Demonstration ANSI file (using music codes)
  240.           FAUCET  .ANS - Demonstration ANSI file (using sound codes)
  241.           SEA     .ANS - Demonstration ANSI file (using music and sound codes)
  242.  
  243.        
  244.        PRINTING THE MANUAL
  245.        -------------------
  246.        If you wish to print the manual, log onto the same
  247.        drive/directory in which this file (ANSIPLAY.DOC) exists, and
  248.        type  COPY ANSIPLAY.DOC PRN   at the DOS prompt.
  249.        
  250.  
  251.  
  252.                                       -4-
  253.  
  254.  
  255.  
  256.  
  257.        All other documentation files/order form may be printed the same
  258.        way by using different filenames.
  259.        
  260.        
  261.        HOW ANSIPLAY WORKS
  262.        ------------------
  263.        When you run ANSIPLAY, you will specify the filename of the file
  264.        you want to be displayed/played.  ANSIPLAY will read the file and
  265.        display it to the screen using the ANSI.SYS device driver, while
  266.        at the same time, searching for music codes which tell ANSIPLAY
  267.        what music notes/sounds to play.
  268.        
  269.        The music codes are NOT ANSI escape command sequences, but rather
  270.        they are interpreted and processed by ANSIPLAY.
  271.  
  272.        ANSIPLAY will be just slightly slower than DOS's TYPE command
  273.        since it must search the text for each music string and process
  274.        it accordingly.  DOS's TYPE command will process the strings as
  275.        text.  The text may be made hidden (invisible) by embedding
  276.        additional escape command sequences in the ANSI file.  (Refer to
  277.        the section on "Making the music strings invisible".)
  278.  
  279.        Public Domain versions will then display a short message in ANSI
  280.        to remind users that the version in not registered.  This message
  281.        is not displayed with registered versions.
  282.        
  283.        
  284.        ABOUT ANSI.SYS (DEVICE DRIVER)
  285.        ------------------------------
  286.        Many programs use ANSI control characters, but if the device
  287.        driver ANSI.SYS is not installed before comming accross them,
  288.        you'll just get a lot of funny looking characters that don't mean
  289.        much.
  290.        
  291.        The ANSI.SYS device driver is included in your own DOS files.
  292.        
  293.        If you're wondering weather or not your system has ANSI.SYS
  294.        already installed, you can type 'ANSIPLAY' at the DOS prompt. 
  295.        When the copyright message is displayed, if you see color, the
  296.        driver is installed.  If you get a menagery of strange characters
  297.        on the screen, ANSI.SYS is NOT installed.
  298.        
  299.        
  300.        HOW TO INSTALL ANSI.SYS
  301.        -----------------------
  302.        DOS's ANSI.SYS device driver only needs to be installed once. 
  303.        This is done by creating (or editing an existing file) a file
  304.        called CONFIG.SYS which must be in the root directory of the disk
  305.        from which your computer boots from.
  306.        
  307.        If you want to create a new CONFIG.SYS file, use the following
  308.        commands, BEWARE however that if the CONFIG.SYS file already
  309.        exists and you use the following commands, the existing file will
  310.        be overwritten... 
  311.        
  312.             1. At the DOS Prompt type  COPY CON C:\CONFIG.SYS (wherein
  313.                C: should be changed to the name of your bootable disk
  314.                drive)
  315.                                       -5-
  316.        
  317.  
  318.  
  319.  
  320.             2. You will not get a new DOS prompt after this command. 
  321.                Now type  DEVICE=C:\DOS\ANSI.SYS  (followed by [ENTER]),
  322.                (wherein C:\DOS should be changed to the name of the disk
  323.                drive\directory in which the file ANSI.SYS exists.)
  324.        
  325.             3. To exit the COPY CON command, type [CTRL]+[Z] and
  326.                [ENTER].  You should now be returned to the DOS prompt.  
  327.        
  328.                ANSI.SYS will now be installed automatically each time   
  329.                your computer is booted.
  330.        
  331.             4. To reboot, you can type [CTRL]+[ALT]+[DEL].  Hold down
  332.                the [CTRL] key, then hold down the [ALT] key, then hit   
  333.                the [DEL] key and let go.
  334.        
  335.        If you have an existing CONFIG.SYS file that must be edited, you
  336.        can use a word/text editor, or consult your DOS user's manual on
  337.        how to use DOS's text editor EDLIN.EXE.
  338.        
  339.        
  340.        EDITING YOUR ANSI FILE
  341.        ----------------------
  342.        If you are starting from scratch, you may want to look into an
  343.        ANSI screen editor such as the Public Domain program "TheDraw". 
  344.        Without such a program, ANSI file creation can be tackled, but it
  345.        would be extremely tedious and time-consuming at best.
  346.        
  347.        Your DOS user's manual will explain the escape control sequences
  348.        used with ANSI.SYS.  There is also a reference listing included
  349.        in the file ANSICODE.TXT (see section on "printing the manual").
  350.        
  351.        One example would be, to set the foreground color to bright
  352.        yellow on a blue background...
  353.        
  354.                   ESC[44;1;33m
  355.        
  356.        Unless you're very familiar with these escape sequences, it can
  357.        be a bit like learning a foreign language.
  358.        
  359.        
  360.        MUSIC STRING SYNTAX
  361.        -------------------
  362.        Once your ANSI file has been created, all that's left to do to
  363.        make it musical is add a few extra escape command sequences, for
  364.        example, a music code of...
  365.  
  366.                   ESC[MF O2 CDEC CDEC EFG.... EFG....(music note)
  367.  
  368.        would play the introduction to the song "Frere Jacques".
  369.  
  370.        Below is a breakdown of how the music strings are to be used.
  371.        By using your own text editor, you can insert these codes into
  372.        any desired location in your ANSI file, then play it back using
  373.        ANSIPLAY.EXE. 
  374.  
  375.        (see section below on using ESC character during editing)
  376.        
  377.  
  378.                                       -6-
  379.  
  380.  
  381.  
  382.  
  383.        MUSIC STRING CONTENTS
  384.        ---------------------
  385.        The word "string" simply means a set of characters (including
  386.        spaces and ascii characters) strung together.
  387.        
  388.        There are 3 sections to a Music string, broken down as follows:
  389.        
  390.                   ESC[MF   CDEC CDEC EFG  (music note)
  391.                   ------   -------------  ------------
  392.                     1           2         3
  393.        
  394.        All music strings must be prefixed with ESC+"["+"MF" (or "MB") in
  395.        upper-case text, and final character must be a (music note).
  396.        
  397.        1.  Music strings are prefixed with the ESCape character followed
  398.            by a [ character (just like ansi escape control sequences),
  399.            and then followed by MF (for Music/Sound to be played in
  400.            Foreground) or MB (for Music to be played in Background).
  401.  
  402.                *Or for a shortcut you may use ESC[M which will 
  403.                 be treated as ESC[MF.
  404.        
  405.            *** Note that the ESC above actually resembles the ESCAPE
  406.            character (Decimal CHR$(27)) and not the actual letters
  407.            E S C.  Refer to the section on "Using the ESC character
  408.            during editing".
  409.        
  410.        2.  The middle part of the string can be 1 of 2 types of
  411.            commands...
  412.            
  413.                      Music Codes
  414.                      -----------
  415.                  a)  the actual <notes, octaves, etc> specification
  416.                      (for musical tunes).
  417.        
  418.                      Spaces and carraige returns (CR-LF) are ignored.
  419.                      This portion of the music string can be of any
  420.                      size length.  
  421.                                          -or-
  422.                      Sound Codes
  423.                      -----------
  424.                  b)  a <tone frequency; duration; cycles; delay; vari>
  425.                      specification (for other sound tones and
  426.                      repeated cycles of sound tones).
  427.        
  428.                      Parameters must be separated by semi-colons.
  429.        
  430.            Details on these codes and command syntax will be discussed
  431.            shortly.  There is also a reference listing of the codes in
  432.            the file MUSICODE.TXT (see section on "printing the manual").
  433.        
  434.            3.  The final(music note) (Decimal CHR$(14)) is a must.
  435.                This tells ANSIPLAY where the music string ends.  The
  436.                (music note) character can be entered on most text editing
  437.                programs by holding down the [ALT] key, then typing the
  438.                number 14...similarly to entering the ESC character.
  439.                (See "Using the ESCape character during editing")
  440.  
  441.                                       -7-
  442.  
  443.  
  444.  
  445.  
  446.                      -------------------------------
  447.                             USING MUSIC CODES
  448.                      -------------------------------
  449.  
  450.           ESC[MF <music notes and commands)> (music note)
  451.           (MB may be used in place of MF)
  452.        
  453.           Example:  ESC[MF CDEC CDEC EFG (music note)
  454.        
  455.        MF will play the music in the foreground, or in other words will
  456.        stop displaying temporarily until the music string is played
  457.        completely.
  458.        
  459.        MB will place the music string into a buffer, allowing the
  460.        program to execute while the music string is playing in the
  461.        background.  
  462.  
  463.        The number of notes that can be played in the background at 
  464.        one time varies according to the particular machine.  Maximum 
  465.        number of notes that can be played in the background at one 
  466.        time is 32.  
  467.  
  468.        When there are more notes to be played than the buffer will hold, 
  469.        the display will temporarily pause until the remainder of the 
  470.        music string is processed.
  471.        
  472.        More than 1 MB statement in the music string will cause the
  473.        music to be played sequentially (NOT simultaneously.)  In other
  474.        words, you cannot play 2 or 3 strings of music simultaneously.
  475.        
  476.        If a carraige return (CR-LF) is needed within the music string,
  477.        ANSIPLAY will ignore it and just continue playing.  This feature
  478.        was developed so that user's could use L-O-N-G strings of music
  479.        without interruption.
  480.        
  481.        A breakdown of MUSIC CODES available are listed in the file
  482.        MUSICODE.TXT. (refer to section on "Printing the Manual").
  483.        You may also consult your DOS user's manual under the section
  484.        on BASIC's "PLAY" statement.
  485.        
  486.        See the demonstration ANSI files included with this package
  487.        for some examples of how MUSIC CODES may be used.
  488.        
  489.        
  490.                -----------------------------------------------                  
  491.  
  492.                  USING SOUND CODES (IN PLACE OF MUSIC CODES)
  493.                -----------------------------------------------
  494.  
  495.        In place of music codes, you may use numeric values for FREQENCY,
  496.        DURATION, CYCLES, DELAY and VARIATION to create sounds that are
  497.        not available with musical code syntax.  The music string would
  498.        look like this:
  499.        
  500.          ESC[MF <FREQ; DURA; CYCLES; DELAY; VARI> (music note)
  501.  
  502.          Example:  ESC[MF 100;5;5;10;-5 (music note)
  503.        
  504.  
  505.                                    -8-
  506.  
  507.  
  508.  
  509.  
  510.        The <> brackets are not to be typed.  They are only there for
  511.        display purposes to you can see where the <SOUND CODES> are to be
  512.        placed.
  513.        
  514.        Since SOUND CODES are processed differently from MUSIC CODES,
  515.        SOUND will always be played in foreground regardless of "MF"
  516.        or "MB" specification.
  517.        
  518.        SOUND CODE Parameters must be separated by semicolons.
  519.        
  520.        Minimum/Maximum values and descriptions are as follows:
  521.        
  522.              FREQUENCY          :  a numeric value from 37 to 32,767
  523.                 Frequency is the desired frequency in hertz.
  524.                 This allows more control over the pitch of the
  525.                 tone than what is available with music codes.
  526.        
  527.              DURATION           :  an numberic value from 0 to 65,535
  528.                 Duration is how long the tone should play, measured
  529.                 in clock ticks. There are 18.2 clock ticks per second
  530.                 regardless of CPU speed.
  531.        
  532.              CYCLES (optional)  :  an integer from 0 to 9,999
  533.                 Cycles is the number of times to repeat the    
  534.                 frequency/duration.
  535.        
  536.              DELAY  (optional)  :  an integer from 0 to 999,999,999
  537.                 Delay is the length of pause between cycles.
  538.                 ANSIPLAY will count from 0 to DELAY before proceeding.
  539.  
  540.                 The DELAY time lapse will vary among computer systems.
  541.                 (My XT NEC V20 averages 723 counts per second)
  542.  
  543.                 If the [ENTER] key is hit during execution of a DELAY,
  544.                 the delay will be ended.
  545.  
  546.              VARIATION (optional):  an numeric value from -9,999 to 9,999
  547.                 Variation will change the FREQUENCY each time the tone
  548.                 is repeated using the CYCLES variable.  FREQUENCY will
  549.                 use it's current value, add the VARIATION value to 
  550.                 itself (per cycle) to get a new FREQUENCY, then play
  551.                 the new FREQUENCY.
  552.  
  553.                 A negative value used for VARIATION will make the
  554.                 FREQUENCY decrease; a positive value will make the
  555.                 FREQUENCY increase.  If the new FREQUENCY is too low
  556.                 or too high, exceeding its playable limits (minimum of
  557.                 37 to maximum 32,767) then the VARIATION value will be
  558.                 changed to reverse itself (from positive to negative,
  559.                 or from negative to positive).
  560.  
  561.                 A "*" wildcard may be used in place of a value, which
  562.                 will make the play function select a value at random
  563.                 between -999 and 999.
  564.  
  565.        Any non-integer numbers used for CYCLES or DELAY will be
  566.        converted to integers automatically.
  567.  
  568.                                       -9-
  569.  
  570.  
  571.  
  572.  
  573.        SOUND CODES are interpreted and executed as they are read,
  574.        therefore requiring them to be played in the foreground.
  575.  
  576.        The interpretation process is basically structured like this:
  577.  
  578.         :START_OF_CYCLE
  579.          Play Frequency/Duration
  580.          Add DELAY if applicable
  581.          Change Frequency if VARIATION is used
  582.          Go to :START_OF_CYCLE (Loop for number of CYCLES specified)
  583.  
  584.        See the demonstration ANSI files included with this package
  585.        for some examples of how SOUND CODES may be used.
  586.  
  587.  
  588.        TUTORIAL FOR MUSIC STRINGS
  589.        -------------------------
  590.        Now that you are somewhat familiar with music code and sound
  591.        codes...you can see a more detailed explaination of some
  592.        of the more advanced way in which these codes can be used
  593.        by typing  TUTOR  at the DOS prompt.  This will ansiplay the
  594.        file TUTOR.ANS which will give some examples and define how
  595.        they are used.  Then it will bring you into ANSIAUTO to display
  596.        the demonstration ANSI files which are included with the program
  597.        package.
  598.  
  599.        
  600.        MAKING THE MUSIC STRINGS INVISIBLE
  601.        ----------------------------------
  602.        Since the music strings are interpreted by ANSIPLAY while the
  603.        file is being read, the music string text is not displayed to
  604.        the screen.  However, if you also wish to not display the strings
  605.        while using DOS's TYPE command to view the file, this may be done
  606.        by adding a few extra ANSI escape command sequences.
  607.  
  608.        Before the music code, add:
  609.        ---------------------------
  610.          ESC[0m ESC[s ESC[?;1H ESC[8m
  611.          (text is upper/lower-case sensitive)
  612.  
  613.          Spaces should not be typed...they are only here to make the
  614.          codes easier to read.
  615.  
  616.          Here is the breakdown:
  617.  
  618.          ESC[0m    Turns all attributes off.  If the display is in
  619.                    high intensity mode, this is required.
  620.  
  621.          ESC[s     Store the current cursor position.
  622.  
  623.          ESC[?;1H  Wherein ? is the current row.  Any row from 1-24 may
  624.                    be used, however if the cursor has to move all the
  625.                    way across the display, it may cause blinking.
  626.  
  627.                    1 sets the cursor at column 1.  Even though the text
  628.                    will be invisible, it will still be printed to
  629.  
  630.  
  631.                                       -10-
  632.  
  633.  
  634.  
  635.  
  636.                    screen.  If the end of screen is reached, the text
  637.                    will be wrapped around to the next row.  If you are
  638.                    using long music strings and it is causing the
  639.                    display to eject upward, you may try using shorter
  640.                    strings of about 75 characters or so at a time.
  641.  
  642.          ESC[8m    This will make the music string invisible when it is
  643.                 written to screen. Otherwise it will be written to
  644.                 screen in the current color attributes.
  645.  
  646.  
  647.        After the music code, add:
  648.        --------------------------
  649.          ESC[u ESC[0m
  650.          (text is upper/lower-case sensitive)
  651.  
  652.          Spaces should not be typed...they are only here to make the
  653.          codes easier to read.
  654.  
  655.          Here is the breakdown:
  656.  
  657.          ESC[u     Moves the cursor back to the location it was at
  658.                    when the last ESC[s command (store cursor) was used.
  659.  
  660.          ESC[0m    Returns to normal mode.  Turns off invisible
  661.                    attribute.
  662.  
  663.        The entire set of commands would look like this...
  664.  
  665.        ESC[0m ESC[s ESC[?;1H ESC[8m ESC[MF<music string>
  666.                                                 (music note) ESC[u ESC[0m
  667.  
  668.        Remember, making the music codes invisible is only necessary if 
  669.        you wish to use an ANSI display program other than ANSIPLAY.
  670.  
  671.  
  672.        USING THE ESCAPE CHARACTER DURING EDITING
  673.        -----------------------------------------
  674.        If you use DOS's edlin command for text editing, you will not be
  675.        able to enter an ESCape character (ASCII character CHR$(27)),
  676.        since hitting ESCape will type a \ character instead.  
  677.  
  678.        Most word/text editing programs will allow you to enter an ESCape
  679.        character by holding down the [ALT] key, then simultaneously
  680.        entering the number 27.  Usually this is displayed as a left
  681.        arrow character. (Music note would be [ALT] + 14).
  682.        
  683.        If you use a commercial word processor such as Word Perfect or
  684.        Word Star, the text must be saved as plain ASCII text format.  
  685.        
  686.        Otherwise there will be extra printer codes embedded into the
  687.        file which will mess up the whole thing.
  688.        
  689.        If you do not have a text editor, I recommend a Public Domain
  690.        program called QEDIT.  It's very powerful and does allow extended
  691.        ASCII characters.
  692.  
  693.  
  694.                                       -11-
  695.  
  696.  
  697.  
  698.  
  699.        The (music note) character may be entered the same way as the
  700.        ESCape character by using the decimal 14 instead of 27.
  701.  
  702.  
  703.        GETTING FAMILIAR WITH ANSIPLAY
  704.        ------------------------------
  705.        To see the demonstration files, at the DOS prompt type DEMO.
  706.        To get familiar with the program and included files, type GO.
  707.        
  708.        
  709.        RUNNING ANSIPLAY
  710.        ----------------
  711.        Syntax from the DOS prompt is as follows:
  712.        
  713.                  ANSIPLAY [FileName DelaySeconds] [/Option Flags]
  714.                                                                         
  715.        Parameters are:
  716.        [Filename]
  717.            is the drive\path\filename of the ansi file you wish to 
  718.            display/play.  Wildcard characters * and ? are not supported.
  719.  
  720.            If no filetype is given, then ANSIPLAY will append the
  721.            filetype of ".ANS" to the filename.
  722.  
  723.            If no drive\path is given, then ANSIPLAY will search the
  724.            currently logged (default) drive\path for the ANSI file.
  725.                                                                         
  726.        [ DelaySeconds]
  727.            is the number of seconds to delay program execution.  This
  728.            option is used for ANSIAUTO (automatic slide show present-
  729.            ation of ansi files).  If this option is used, the number of
  730.            seconds must be preceeded with a space ( ).
  731.        
  732.            While using ANSIAUTO, there will be a pause of DelaySeconds
  733.            between displays of ANSI files.
  734.        
  735.        [Options] are as follows:
  736.        <Multiple option flags may be used in any order>     
  737.        
  738.            /C  (ClearScreen) clears the screen before displaying the
  739.                ANSI file.
  740.        
  741.            /Q  (Quiet) Disables the music during display of the ANSI
  742.                file.
  743.        
  744.            /D  (Delete) Prompts user if ANSI file is to be deleted after
  745.                display.
  746.                     
  747.                This option was designed for those who use off-line mail
  748.                readers.  The mail read can save the message to a temp-  
  749.                orary file, and then Shell out to DOS to ANSIPLAY it. 
  750.                Then the /D option will allow you to delete the temporary
  751.                file.
  752.        
  753.        If you want the freedom to use the ANSIPLAY command while logged
  754.        onto any drive\directory, just add the name of the directory in
  755.  
  756.  
  757.                                       -12-
  758.  
  759.  
  760.  
  761.  
  762.        which ANSIPLAY exists to DOS's search PATH.  (Consult your DOS
  763.        user's manual for more information on how to do this).
  764.        
  765.        Once the file is in process of displaying, hitting ESC will NOT
  766.        allow you to exit the display until to display is completely 
  767.        processed.  The purpose of this is two-fold.  First, to allow a
  768.        bulk read/write of the file thus making the fastest display
  769.        possible.  Second, to avoid stopping the display when the screen
  770.        may be set in the middle of some strange color combination.
  771.        (However, ANSIAUTO will exit after the display/play is completed.
  772.  
  773.  
  774.        REINITIALIZING THE DISPLAY SCREEN (ANSIPLAY.CLS)
  775.        ------------------------------------------------
  776.        Once ANSIPLAY has completed displaying/playing the ANSI file,
  777.        there may have been several changes made to the screen display
  778.        such as screen mode, color attributes, etc.
  779.  
  780.        To reinitialize the display to your desired settings, simply
  781.        create a file called ANSIPLAY.CLS containing the desired
  782.        ANSI escape command sequences. ("CLS" for "Closing Screen")
  783.  
  784.        This file is optional.  If ANSIPLAY.CLS file does not exist,
  785.        then the only reset code which is automatically executed is 
  786.        ESC[0m which turns all attributes off and returns to normal 
  787.        display.
  788.  
  789.        If the file ANSIPLAY.CLS does exist, the ESC[0m will be 
  790.        ignored regardless of whether the file contains escape command
  791.        sequences or is empty.
  792.  
  793.        An example of how this file might be used is to:
  794.  
  795.        ESC[=3l          'reset the screen mode to 80 x 25 color
  796.        ESC[0m           'all attributes off, normal display
  797.        ESC[44;1;33m     'set colors: bright yellow on blue background
  798.        ESC[2J           'clear screen
  799.  
  800.        thus the contents of ANSIPLAY.CLS would actually be:
  801.  
  802.        ESC[=3lESC[0mESC[44;1;33mESC[2J
  803.  
  804.        (ESC resembles the actual ESCape character which must be used).
  805.  
  806.        Refer to the files ANSIPLAY.DOC and ANSICODE.TXT for more details
  807.        on the actual ANSI codes to use.
  808.  
  809.        It is recommended that no other text, music codes, etc. are 
  810.        included in this file, since they will be displayed after 
  811.        each ANSI file display.
  812.  
  813.  
  814.        REMOVING MUSIC STRINGS (MUSCSTRP.EXE)
  815.        -------------------------------------
  816.        If wish to remove all existing music strings from the ANSI file,
  817.        at the DOS prompt type   MUSCSTRP FILENAME.ANS
  818.  
  819.  
  820.                                       -13-
  821.  
  822.  
  823.  
  824.  
  825.        MUSCSTRP (Music Strip) will create a new file using the same
  826.        filename, but with the file extension of .NEW
  827.  
  828.        The MUSCSTRP program must be able to locate ANSIPLAY.EXE either
  829.        in the current directory, or in DOS's PATH setting.
  830.  
  831.  
  832.        HOW ANSIAUTO WORKS
  833.        ------------------
  834.        ANSIAUTO will read the contents of the data file you specify
  835.        on the command line.
  836.        
  837.        (See "RUNNING ANSIAUTO" regarding DataFile Structure)
  838.        Once the data is loaded into memory, ANSIAUTO will shell to DOS
  839.        and execute the ANSIPLAY command (with any optional parameters
  840.        which are specified) per file.  
  841.  
  842.        Each file will be displayed (played) in sequence.  If a 
  843.        DelaySeconds parameter was specified, the program will pause 
  844.        after the file is displayed for the set number of seconds, and 
  845.        then continue onto the next file.
  846.        
  847.        Once all the files have been displayed, ANSIAUTO will start
  848.        the sequence over again (and again...).
  849.        
  850.  
  851.        RUNNING ANSIAUTO 
  852.        ----------------
  853.        Syntax is as follows:  ANSIAUTO DRIVE\PATH\FILENAME.DAT
  854.        If no filetype is given, then ANSIAUTO will append the
  855.        filetype of ".DAT" to the filename.
  856.  
  857.        To EXIT ANSIAUTO, hit the ESCape key on the keyboard.  ANSIPLAY
  858.        will not respond until the file display/play is completed.  At
  859.        that time, the program will exit and return to DOS.
  860.  
  861.        Data file structure
  862.        -------------------
  863.        Each line of the file contains the same specifications as would
  864.        normally be entered on the DOS command line when executing
  865.        ANSIPLAY.  An example datafile might look like this:
  866.        
  867.                  C:\ANSI\MERMAID.ANS,3 /C      
  868.                  D:\DRAW\CASTLE.ANS,2 /C       
  869.                  C:\UTILS\FIREMAN.ANS /C /Q    
  870.                     .      .      .           
  871.                     .      .      .           
  872.                    etc.   etc.   etc.         
  873.        
  874.        As mentioned before, unregistered versions of the program will
  875.        display the "ANSIPLAY [Unregistered Version] Copyright 1991, J.
  876.        Ibarra" message after each file is display/played.  Registered
  877.        versions do not have this message.
  878.        
  879.        Maximum number of files that can be used for slideshow is 30.
  880.        If the data file contains more than 30 filenames, they will be
  881.        ignored. If 30 is not enough, let me know and I can increase it.
  882.        
  883.                                      -14-
  884.  
  885.  
  886.  
  887.  
  888.        USING PLAY.EXE (Music String Player/Editor)
  889.        -------------------------------------------
  890.        Syntax is: PLAY    <* MUSIC STRING> (Plays Music Codes or Sound Codes)
  891.               or: PLAY /E <* MUSIC STRING> (To activate music string editor)
  892.  
  893.        If you want to experiment with music/sound codes, PLAY.EXE is
  894.        the quickest way to do it.  PLAY.EXE has two ways of working...
  895.  
  896.                1: It will allow you to play music codes directly from
  897.                   the DOS prompt.
  898.                2: It will allow you to edit, then play, the re-edit, etc.
  899.                   music strings, and write to file.
  900.  
  901.        * MUSIC STRING is a little different with PLAY.EXE:
  902.             The prefix of ESC[ and suffix of (music note) are not
  903.             required on the DOS command line.
  904.  
  905.             If MF or MB is not specified, default is set for MF.
  906.  
  907.        See sections on "Using Music Codes" and "Using Sound Codes"
  908.        for more information on Music String Syntax.
  909.  
  910.           --- TO PLAY THE MUSIC CODES DIRECTLY FROM THE DOS PROMPT ---
  911.  
  912.        Playing a music/sound codes directly from the DOS prompt is
  913.        easy.  An example would be, to hear the beginning of Frere Jacques
  914.        (ESC[MF O2 CDEC CDEC EFG.... EFG....(music note)), at the DOS
  915.        prompt, you would type the command line:
  916.                   PLAY O2 CDEC CDEC EFG.... EFG....
  917.  
  918.        or to hear a bomb dropping, you might type:
  919.                        PLAY 900;1;120;;-5
  920.  
  921.        Note that the > and < characters cannot be used from the DOS
  922.        prompt because DOS will interprete these as piping character.
  923.        Optionally you can set the octave with On wherein n is the
  924.        value (0-6) of the Octave you desire.   Default octave is 4.
  925.  
  926.        Before playing the music string, PLAY.EXE will check for any
  927.        letters that are NOT valid music code characters.  If an
  928.        invalid letter is found, you will receive the error message
  929.        "Illegal play string".  Play will then take you directly into
  930.        the music string editor.  If the string has a length greater
  931.        than 73 characters, the string will be trimmed to 73 characters
  932.        so that it will fit into the editor.  If this happens, a message
  933.        will appear to notify you.
  934.  
  935.  
  936.                     --- TO USE THE MUSIC STRING EDITOR ---
  937.  
  938.        The music string editor is the more useful feature of PLAY.EXE.
  939.        It will allow you to play Music Codes or Sound Codes, then
  940.        edit them on the screen, replay them, etc.
  941.  
  942.        Once you have the music/sound codes exactly as you want them, you
  943.        can then save them to file.
  944.  
  945.  
  946.                                       -15-
  947.  
  948.  
  949.  
  950.  
  951.        The /E option will activate the editor.  At the DOS prompt, you
  952.        may optionally enter the music string you wish to edit .
  953.  
  954.        Music String Editor commands are as follows:
  955.  
  956.                          Move Cursor: LEFT/RIGHT arrow keys
  957.        Delete Character above cursor: DEL key
  958.         Move cursor to 1st character: HOME key
  959.         Move cursor to end character: END key
  960.            Erase entire music string: CTRL+Backspace
  961.           Write music string to file: CTRL+W
  962.        Toggle prefix of "MF" or "MB": TAB key
  963.                        Exit PLAY.EXE: ESC key
  964.  
  965.        If the music string contains characters which cannot be
  966.        played, you will receive an error message "Illegal play string".
  967.        It will then return to the editor so you can make your changes.
  968.  
  969.        The write option will write the music string to a file named
  970.        "PLAY.MUS".  The ESC[MF prefix and (music note) character suffix
  971.        will automatically be added.
  972.  
  973.        If there are pre-existing music strings, the new music string
  974.        will be appended (not overwritten).
  975.  
  976.  
  977.        COMMON PROBLEMS WITH MUSIC STRINGS
  978.        ----------------------------------
  979.        Problem:
  980.            I keep getting the error message "Illegal string in
  981.            PLAY parameters".
  982.  
  983.        Solution:
  984.            Consult the documentation to be sure the values used
  985.            in your MUSIC CODE's and/or SOUND CODE's are valid.  If
  986.            the problem still persists, and the parameters are indeed
  987.            valid, contact the programmer.
  988.  
  989.        Another Solution:
  990.            It's possible that the letter O was used in place of the
  991.            number 0 (zero), or visa-versa in the MUSIC CODE's and/or
  992.            SOUND CODE's.  It's very easy to mix these up.
  993.  
  994.        Another Solution:
  995.            It's possible that the music note characters, [CHR$(14)] was
  996.            not included in the music string.  Consequently, the program 
  997.            will read the entire file until it encounters the music note.
  998.            If no music note is found, it will append a music note at the
  999.            end and try to play the string.
  1000.            
  1001.  
  1002.        Problem:
  1003.            Why do I get an "Illegal play string" error?
  1004.  
  1005.        Reason:
  1006.            Something in the play string is not valid.  This could be
  1007.            caused by using a note that does not exist such as
  1008.  
  1009.                                       -16-
  1010.  
  1011.  
  1012.  
  1013.  
  1014.            B#, H, etc.; or using a value which is not within set limits
  1015.            for octave, tempo, etc. such as O7; or using an invalid
  1016.            character which is not a music code/sound code character.
  1017.  
  1018.        Problem:
  1019.            My text editor will not allow me to enter the ESCape char-
  1020.            acter (or music string character) into the ANSI file.
  1021.  
  1022.        Solution:
  1023.            Some editors (though few) do not have this ability.  Refer
  1024.            to the section "Using the ESC character during editing".
  1025.            If this still doesn't help...if your editor has a cut-and-paste
  1026.            feature, you might try duplicating the ESC character this way.
  1027.            If all else fails, try another editor.  Public Domain has
  1028.            a fantastic and very intelligent text editor called "QEDIT".
  1029.  
  1030.  
  1031.        COMMON PROBLEMS WITH USING ANSIPLAY
  1032.        -----------------------------------
  1033.        Problem: 
  1034.            Lots of strange characters (garbage) on the screen.
  1035.  
  1036.        Solution:
  1037.            Be sure that the ANSI.SYS driver is installed into your
  1038.            CONFIG.SYS file  (See section on "About ANSI.SYS").
  1039.  
  1040.  
  1041.        Problem:
  1042.            The program ignores my efforts to escape during the
  1043.            displaying of my ANSI file.
  1044.  
  1045.        Reason:
  1046.            ANSIPLAY reads and processes large portions of the ANSI file
  1047.            at a time.  The output of these portions may be as large as
  1048.            the whole display screen.  Since the printing of these portions
  1049.            cannot be interrupted, ANSIPLAY will not respond to using the
  1050.            ESCape key.
  1051.  
  1052.            ANSIAUTO, however, will respond AFTER the file display is
  1053.            completed.
  1054.  
  1055.  
  1056.        Problem:
  1057.            When I use "MB" (Music Background) in the music string, there
  1058.            isn't much difference from "MF".
  1059.  
  1060.        Reason:
  1061.            There are several things happening here...For one, ANSIPLAY
  1062.            must pull out the music strings from the bulk of the file
  1063.            which is being read at one time.  The strings must then be
  1064.            processed to produce music/sound/pause's.
  1065.  
  1066.            Secondly, the computer's music buffer will only retain 32
  1067.            characters at a time.  If the music string is larger than 32
  1068.            characters or if the music buffer is full when the new
  1069.            music string is to be loaded into it, the program has to wait
  1070.  
  1071.  
  1072.                                       -17-
  1073.  
  1074.  
  1075.  
  1076.  
  1077.            for the buffer to process the characters which have already been
  1078.            loaded to free up more space in the buffer for the remaining
  1079.            characters to be loaded.
  1080.  
  1081.            Thirdly, Sound codes that have parameters for CYCLES and/or
  1082.            DELAY are processed counting from 0 to CYCLES (or 0 to DELAY).
  1083.            The counting procedure is not loaded into the background buffer.
  1084.            When the frequency/duration is played, however, it is then
  1085.            placed into the buffer.  The counting feature is extremely
  1086.            fast, but if the set values for these parameters are high, it
  1087.            will slow up the display process slightly.
  1088.  
  1089.  
  1090.        Problem:
  1091.            My file was fine until I edited it...now I get a bunch of 
  1092.            garbage when displaying it.
  1093.  
  1094.        Solution:
  1095.            Some word processing programs will add extra printer codes to
  1096.            the file when you "save" the file.  Most programs that do this
  1097.            also have an option to "save" as "ASCII" or "DOS TEXT".  If so,
  1098.            re-save the file using this option.  This will save the contents
  1099.            of the file without adding any other embedded program codes.
  1100.  
  1101.  
  1102.        COMMON PROBLEMS WITH USING PLAY.EXE
  1103.        -----------------------------------
  1104.        Problem:
  1105.            When I tried to write the music string to file, I keep
  1106.            getting an error..."Unable to save".
  1107.  
  1108.        Reason:
  1109.            There may be one of several causes for this:  Disk media
  1110.            format error, not enough disk space or disk write-protected
  1111.            to name a few.
  1112.  
  1113.  
  1114.        REGISTRATION OF ANSIPLAY
  1115.        ------------------------
  1116.        User's who register their copy of ANSIPLAY will receive a new
  1117.        copy of the most current version of the program and included
  1118.        utilities.  In addition, registered versions will NOT interrupt
  1119.        the ANSI display with the copyright message at the bottom of the
  1120.        screen.
  1121.        
  1122.        Registered users will automatically be notified when an updated
  1123.        version is released.  Registered users will receive a 25%
  1124.        discount on the purchase of any updated version (plus postage and
  1125.        handling).
  1126.        
  1127.        If you wish to register your copy, you may print the registration
  1128.        form by typing      COPY ORDER.FRM PRN       at the DOS prompt.
  1129.        
  1130.        Fill out the registration form and enclose required payment in
  1131.        check or money order (no cash please) and mail to:
  1132.        
  1133.  
  1134.  
  1135.                                       -18-
  1136.  
  1137.  
  1138.  
  1139.  
  1140.                        Julie M. Ibarra
  1141.                        P.O. Box 710727 
  1142.                    Santee, CA  92072-0727
  1143.        
  1144.        To print the registration form, at the DOS prompt, type:
  1145.  
  1146.                       COPY ORDER.FRM PRN
  1147.  
  1148.  
  1149.        Any comments regarding program features, documentation,
  1150.        presentation, etc. are also appreciated.
  1151.  
  1152.        Any questions, comments, correspondence may also be directed to
  1153.        the above address.
  1154.  
  1155.  
  1156.  
  1157.        --end of documentation--
  1158.        
  1159.                
  1160.