FTAP RELEASE NOTES: Version 2.1.05 ---------------------------------------------------------------------- Revision Notes: 2.1.03: First public release 2.1.04: Version that (finally, I hope) fixes all problems with keystroke triggers that change feedback parameters not properly sending a note termination event if they occur between a key press and a key release. Big change to map.c, small change to ftap.c. The documentation has not been updated (e.g., Reference Manual section 4.7.1). NOTE: this fix seems to work, but really needs more testing to see if there are subtle issues with controllers or multiple feedback channels. 2.1.05: Minor bug fix in check_soundnote() (map.c); controllers were not handled correctly. Update documentation. ---------------------------------------------------------------------- FTAP is a Linux-based, MIDI-based program for running tapping and music experiments, available in source code form under the GNU Public License Agreement. If you're reading this, you hopefully already know why you're interested in it, so I will not convince you that you should be. See the User's Guide for some description. It is probably the case that for this first release of FTAP, some minimal knowledge of Linux and programming will be useful. This version should probably best be viewed as a "beta" release, as only one person besides myself has actively used FTAP, and no one has ever tried to work with it straight from this distribution. However, I've done a lot of testing, and do not know of any unknown bugs :-) ). The 'bin' directory contains a 'ftap' binary which can be installed wherever you want it (your personal 'bin' directory for initial evaluation, perhaps /usr/local/bin later). There are no required auxiliary files. This binary has been run on a Pentium II machine running a Redhat 6.1 or 6.2 distribution (Linux 2.2 kernel). To get reliable millisecond timing FTAP should be run as setuid 'root'; this allows use of the sched_setscheduler() system call SCHED_FIFO mode, and sub-millisecond use of the "/dev/rtc ". However, evaluation and most testing can be done with normal user permissions. You will need root permission to configure FTAP as setuid 'root'. If your system is administered by someone else, they will have to do this for you. If you choose to run as setuid root, you should certainly consider compiling from the source code if you have not already done so. See the User's Guide and Reference Manual for fuller installation comments. Comments/questions/bug reports to sf@csml.som.ohio-state.edu. Or see the web page at "http://csml.som.ohio-state.edu/ftap" for current contact information. Steve Finney ---------------------------------------------------------------------------- Distribution hierarchy: src/: FTAP sources (in C). bin/: Intel binary for FTAP compiled on my system. params/: A bunch of parameter files to demonstrate some of FTAP's capabilities, and to get you started. The "demo" subdirectory is probably the best place to start. doc/: Rough draft forms of FTAP documentation, both a User's Manual and a Reference Manual. These should be accurate and complete, but may not yet be well organized, written, or proofread. There is currently no man page. The docs will improve with time; feel free to volunteer! utils/: a directory containing subdirectories with potentially useful auxiliary C source (not all of which is currently being maintained or likely to work). See the README there. ----------------------------------------------------------------------------- Currently, there is no makefile in the src directory. The "makeftap" script will compile ftap, and "installftap" is what I use for installation (look at this, it may not suit your configuration!). Running as setuid root is what I recommend for data collection, but it may not be necessary for evaluation. You should know exactly what this means before you configure it this way. In general, I suggest you do the recompile on your own system. This is partly for my benefit: I would like to know about problems compiling FTAP on other systems, e.g., include files, compilers, libraries. This is also for your benefit; I recommend that you run FTAP as setuid() root, and running an unknown setuid binary is not generally a good idea. Compiling will all least verify that your binary matches the sources (which you can then look at if you want to).