1.1. What is xmp?
1.2. In which platforms does xmp currently run?
1.3. Do I need a GUS or AWE sound card to run xmp?
1.4. Where can I get the latest version?
1.5. Is there a Debian package available?
1.6. Is there an RPM package available?
1.7. Which module formats are supported?
1.8. Will xmp support IT modules?
2.1. I think I found a nasty bug, how can I contact the authors?
2.2. My gcc does not understand __attribute__((packed)).
2.3. xmp complains about insuficient space in /dev/sequencer.
2.4. xmp plays foobar.mod incorrectly and/or dumps core.
3.1. How do I set the volume in Solaris?
3.2. How do I set the volume in Linux?
4.1. I'm getting errors with make -C in FreeBSD.
4.2. The player hangs with OSS/FreeBSD or Voxware 3.5.
5.1. xmp is not being compiled with AWE support.
5.2. When trying to run xmp with my AWE32 it locks up my machine.
5.3. I can't open /dev/sequencer.
1.1. What is xmp?
xmp is an open source module player for UNIX distributed under the terms of the GNU GPL. On PC class machines with GUS or AWE cards xmp takes advantage of the OSS sequencer to play modules with virtually no system load. Using software mixing, xmp plays at sampling rates up to 48 kHz in mono or stereo, 8 or 16 bits, signed or unsigned, little or big endian samples with 32 bit linear interpolation.1.2. In which platforms does xmp currently run?
Linux on x86 (tested with 2.0.33 and 2.1.122 kernels), Linux on Sparc (tested with 2.0.33), Solaris (tested with Solaris 2.5 running in SS20, Ultra 1 and Axil 240) and HP-UX (tested with HP-UX 9.05 running in a 9000/710). It is reported to work also with Linux on Alpha, Digital UNIX on Alpha and FreeBSD on PC.1.3. Do I need a GUS or AWE sound card to run xmp?
No. xmp version 1.1.0 supports both hardware (using Gravis Ultrasound or AWE32 cards) and software mixing. The software mixer can be used with ESD, OSS, Solaris 2.x, Sparclinux, HP-UX or to mix modules to a file.1.4. Where can I get the latest version?
The latest stable and development versions are available at http://xmp.home.ml.org/pkg/latest/.1.5. Is there a Debian package available?
Yes. Tom Lees debianized the xmp package. The Debian package is available at http://www.debian.org/Packages/stable/sound/xmp.html.1.6. Is there an RPM package available?
Yes. i386 binary RPM packages are available in the xmp page.1.7. Which module formats are supported?
The current version recognizes the following module formats: Fast Tracker II (XM), Noise/Fast/Protracker (MOD,NST), Soundtracker module with 15 instruments (MOD), Mod's Grave (WOW), Scream Tracker 3 (S3M), Scream Tracker 2 (STM), Composer 669/UNIS669 (669), Multitracker (MTM), Oktalyzer, Poly Tracker (PTM), Farandole Composer (FAR), Aley's Modules (ALM), Reality Adlib Tracker (RAD), Amusic Adlib Tracker (AMD), ProRunner 1 and 2 (PRU1,PRU2), Pha Packer/Propacker 1.0 (PP10), Xann Packer (XANN), Kris Tracker (KRIS), UNIC Tracker (UNIX), Laxity Tracker (LAX), AC1D Packer (AC1D) and FC-M Packer (FC-M).1.8. Will xmp support IT modules?
Yes. xmp 1.2.0 will support Impulse Tracker modules with NNA/DCT/DCA and compressed samples.
2.1. I think I found a nasty bug, how can I contact the authors?
Send an email to claudio@pos.inf.ufpr.br or hipolito@brhs.com.br describing the problem. Remember that the only way to get bugs fixed is reporting them.2.2. My gcc does not understand __attribute__((packed)).
You need gcc 2.7 to compile xmp (gcc 2.7.2 was used in the tests).2.3. xmp complains about insuficient space in /dev/sequencer.
Check the amount of RAM you have installed. 256Kb or 512Kb may be sufficient to play some MODs, but 1Mb or more is recommended. If the module has 16 bit samples, you may try to use the --8bit command line option to convert the samples to 8-bit to save memory, or use the software mixer. Attention: --8bit does not affect the memory usage in AWE cards! Awedrv converts all the samples to 16 bit before loading.2.4. xmp plays foobar.mod incorrectly and/or dumps core.
See Question 2.1.
3.1. How do I set the volume in Solaris?
Use -Dgain=xx to set the initial volume. You'll need gaintool a mixer application to change the volume during the module playing.3.2. How do I set the volume in Linux?
Apparently there's a bug in the AMD 7930 driver that make -Dgain=xx work at random. Until someone fixes this bug, you'll need to try a few times to set the volume correctly.
4.1. I'm getting errors with make -C in FreeBSD.
You're probably trying to use the BSD make. Use gmake instead.4.2. The player hangs with OSS/FreeBSD or Voxware 3.5.
Due to problems with the select () call, xmp does not work with Voxware 3.5 and OSS/FreeBSD 3.8 sequencers. You must use software mixing instead, or use the Voxware 3.0 sound driver.
5.1. xmp is not being compiled with AWE support.
If you have an AWE card, make sure you have awedrv installed. The latest version of awedrv is available at http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv. Recent Linux and FreeBSD distributions already include awedrv, but you may want to check the awedrv page anyway for a newer version.5.2. When trying to run xmp with my AWE32 it locks up my machine.
If you use an AWE driver version older than 0.3.3d, this may be a bug in the AWE driver. In this case, upgrade to the latest version (see Question 5.1). This may also happen, as reported by Michael Janson, if you have a card with no RAM installed. See Question 2.3.5.3. I can't open /dev/sequencer.
Make sure you have the MIDI sequencer (CONFIG_SEQUENCER) enabled when configuring the driver, and the permissions are 0666. Check Takashi Iwai's awedrv FAQ for hints on the driver configuration. If you're using USS/Lite 3.5.4 and still get messages like Sequencer: No Midi devices. Input not possible from the sound driver, you may need to apply the following patch:--- sequencer.c.old Tue Sep 23 20:00:26 1997 +++ sequencer.c Tue Sep 23 20:37:52 1997 @@ -1140,7 +1140,7 @@ setup_mode2 (); } - if (seq_mode == SEQ_1 && (mode == OPEN_READ || mode == OPEN_READWRITE)) + if (seq_mode == SEQ_1 && mode == OPEN_READ) if (!max_mididev) { printk ("Sequencer: No Midi devices. Input not possible\n");