This is M-Tx 0.52, the latest release of a music-from-text translator, written by Dirk Laurie (dlaurie@na-net.ornl.gov). Contents The M-Tx package contains a description of the M-Tx language and a preprocessor that converts it to the PMX language. The description can be printed if you have access to one of the following: 1. A HP Laserjet-compatible printer. 2. A Postscript printer. 3. A working installation of TeX, including the MusiXTeX fonts. Otherwise, stop right here. You might as well delete M-Tx from your system, because you will also need one of those to print your own music. System requirements Your own computer must either have the ability to run MS-DOS programs (most DOS emulators on other systems will work) or have a reasonably up-to-date C compiler (i.e. one that can handel ANSI C). You must have access to a working installation of PMX (1.43 or newer) and MusiXTeX (T.80 or newer) on a computer near you (physically or cyberspatially) before you can produce visible music output. If you do not know what PMX (by Don Simons), TeX (by Donald Knuth) or MusiXTeX (by Daniel Taupin) are (you need not know any of them well) I do not recommend that you use M-Tx for any other purpose than reading the manual and looking at the examples. Although a recent version of musixlyr.tex (by Rainer Dunker) is included here, you should get the fully documented version musixlyr.zip from a TeX archive like ftp.gmd.de. Text file formats Different systems use different formats for text files. In some cases (e.g. DOS reading Unix files) end-of-line may not be recognized. In other cases (e.g. Unix reading DOS files) an extra non-ASCII character may appear at the end of each line. Since line boundaries are important to M-Tx, it is essential that all text files should be in the correct format for your system. This is quite likely also true for C source code. The easiest way to do this is to let your unzipper do the job. GNU unzip is available for just about any platform. If you have it, create a suitable directory and type unzip -a mtx052 On DOS systems, if your unzipper does not convert text files, you can use EDIT: load the file and immediately save it without changing it. Do this for all text files, not the .exe and .dvi files. Getting started You will have to move the file musixlyr.tex, provided by courtesy of Rainer Dunker, to a directory in the TeX input path. If you don't have MS-DOS or an emulator, you will need to build an executable. On a UNIX or similar system you can go to the prepmx/p2c directory and type: cc *.c -o prepmx In either case, move the executable to a directory in the execution path. PRINT OUT A COPY OF THE DOCUMENTATION, i.e. one of the files mtxdoc.lj (LaserJet), mtxdoc.ps (PostScript), mtxdoc.dvi (TeX DVI), AND READ IT (or anyway its first few pages). The first two of these are bulky and kept separate from the main package. US PAPER USERS PLEASE NOTE: These files are formatted for A4. You may lose the page numbers unless you can tell your printer to reduce the top margin a little. To make it look perfect for you will need to put mtxdoc.tex through steps 3 and 4 in the file doc/MAKEDOC. Testing your installation There are some .mtx files provided with this distribution. They have been shown to work on both MS-DOS and Linux systems. Try them. Or try re-making the manual -- see doc/MAKEDOC. Command line and exit code See the User's manual for the options. You select them by typing e.g. prepmx -v basename --- will print out information on the processing of the input. prepmx -i basename --- will treat errors as warnings and continue to the end of the input Normally you just type: prepmx basename A basename is a filename without its extension. M-Tx puts extensions in by itself. The program prepmx returns as exit code the line number of the error messages at which it halted. Exit code 0 means no error, exit code 10000 means that an error occurred before any lines of the input file were read. Messages not clearly labelled ERROR are informative or at worst warnings. Writing your own music If you have followed the instructions carefully, and your output still looks terrible, read the FAQ file. Read it anyway. Make a file with extension .mtx using a text editor. Be careful with upmarket wordprocessors or cute little tools that come with MS-Windows etc. --- most of them need to be told explicitly that you are writing a text (or ASCII) file. It is especially important to turn any paragraph formatting or word-wrap features off, as the end of a line is of crucial importance to M-Tx. Now run prepmx, and it will make a file with extension .pmx that can be used as input to PMX. Correct any errors that prepmx found. Many more errors may only be found at the PMX stage, since prepmx passes through much of what you type without analyzing it in any way. It might not be easy to find out what mistake in the .mtx file caused this. So if you yourself do not know PMX, MusiXTeX etc., you should only use M-Tx if you can rely on help and advice from someone who does. The mutex discussion list (to join, send an email message to mutex-request@gmd.de with the word subscribe as subject --- no message body needed) is read by many helpful and knowledgeable people. Once PMX is satisfied, the chances are good (but not 100%) that the .tex file thus generated will pass through TeX, and eventually produce a nice .dvi file that you can preview. When you are satisfied that it looks OK, the TeX system can produce a .ps, or .lj file that you can print. Then, of course, comes the proofreading, and the process is repeated ... Other information files BUGS: Contains a list of known bugs, restrictions, unimplemented but planned features etc. FAQ: Contains a list of questions that have been or ought to be frequently asked. HISTORY: Contains a record of releases of M-Tx. Corrected bugs go here. CHANGES: Up to 0.40, contains a record of changes in the specification of M-Tx. As from 0.42, these changes are highlighted in the user's manual and the CHANGES file is no longer kept up to date. While intended to be improvements, such changes may cause older .mtx files to behave differently and even not to work with later versions of prepmx. MAKEDOC: (in the doc directory) Describes how to put .mtx inserts into a LaTeX file, using the M-Tx manual as an example. Licensing information M-Tx is issued under the GPL (Gnu General Public License) conditions. The exact (unavoidably legalistic) terms are continually being refined by the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. My intention is that the latest formulation should be applicable. Since the actual license (see the file COPYING in the musixlyr.zip package) is over 300 lines long, here is a simplified summary. The general philosophy is: software should be FREE -- free to be copied, distributed and modified. You may distribute copies of the files in mtx052.zip (and charge for this service if you can get people to pay). If you distribute binaries made from the source code, you must include in the same package either the source code itself or information on where to get it. For this purpose, the *.mtx, *.c, *.h and mtxdoc.tex files in mtx052.zip are regarded as source code. You can change the software or use pieces of it in new programs that are also distributed under the GPL. You may not include the software or pieces of it, whether changed or not, in programs that are issued under a more restrictive license, such as proprietary software.