1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-21 00:25:50 +00:00

audio/timidity & guspat: Add guspat as alternative for goemon

Neither port is currently maintained

PR:		ports/177074
Submitted by:	Green Dog
Approved by:	timidity maintainer (Kevin Zheng) before he dropped it
This commit is contained in:
John Marino 2014-05-10 23:40:37 +00:00
parent 1e482be639
commit 0f24bf17a5
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=353632
22 changed files with 579 additions and 594 deletions

View File

@ -14,18 +14,17 @@ DISTFILES= ${PORTNAME}-${PORTVERSION}-required${EXTRACT_SUFX} \
MAINTAINER= ports@FreeBSD.org
COMMENT= Izumo collection of Gravis Ultrasound MIDI patches
# Not useful without timidity.
RUN_DEPENDS= timidity:${PORTSDIR}/audio/timidity++
NO_CDROM= Some of the patches are marked no-commercial-use
NO_BUILD= yes
WRKSRC= ${WRKDIR}/timidity
NO_CDROM= Some of the patches are marked no-commercial-use
PLIST_SUB= TIMIDITY_DATADIR=${TIMIDITY_DATADIR}
WRKSRC= ${WRKDIR}/timidity
TIMIDITY_DATADIR= share/timidity
post-patch:
@${REINPLACE_CMD} -e 's|/timidity|/guspat|g' ${WRKSRC}/timidity.cfg
@${RM} ${WRKSRC}/timidity.cfg.bak
do-install:
@${MKDIR} ${STAGEDIR}${DATADIR}
cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}

View File

@ -4,9 +4,8 @@ PORTNAME= timidity
PORTVERSION= 0.2i
PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= http://www.onicos.com/staff/iz/timidity/dist/:timidity \
http://www.anime.net/~goemon/timidity/:tiins
DISTFILES= ${TIINS}:tiins ${DISTNAME}.tar.gz:timidity
MASTER_SITES+= http://www.onicos.com/staff/iz/timidity/dist/:timidity
DISTFILES+= ${DISTNAME}.tar.gz:timidity
EXTRACT_ONLY= ${DISTNAME}.tar.gz
MAINTAINER= ports@FreeBSD.org
@ -17,14 +16,38 @@ CONFLICTS= timidity++-2.13.*
TIINS= goemon.tgz
INSTALL_TARGET= install.all
OPTIONS_DEFINE= GUSPAT
GUSPAT_DESC= Use audio/guspat instead of included sound fonts (goemon)
.include <bsd.port.options.mk>
# Set up sound fonts from audio/guspat.
.if ${PORT_OPTIONS:MGUSPAT}
RUN_DEPENDS+= ${LOCALBASE}/share/guspat/power.cfg:${PORTSDIR}/audio/guspat
TDIR= ${LOCALBASE}/share/timidity
TCONFIG= timidity.cfg-guspat
PLIST_SUB+= GOEMON="@comment "
.else
# Set up default sound fonts (goemon).
MASTER_SITES+= http://www.anime.net/~goemon/timidity/:tiins
DISTFILES+= ${TIINS}:tiins
TDIR= ${PREFIX}/lib/timidity
TCONFIG= goemon.cfg
PLIST_SUB+= GOEMON=""
.endif
post-patch:
${REINPLACE_CMD} -e 's,machine/soundcard.h,sys/soundcard.h,' \
${WRKSRC}/linux_a.c
${REINPLACE_CMD} -e 's|%%TDIR%%|${TDIR}| ; s|%%TCONFIG%%|${TCONFIG}|' \
${WRKSRC}/timidity.cfg
post-install:
.if ! ${PORT_OPTIONS:MGUSPAT}
cd ${STAGEDIR}${PREFIX}/lib/timidity && \
${TAR} --no-same-owner --no-same-permissions -zxf ${DISTDIR}/${TIINS} && \
${REINPLACE_CMD} -i "" -e 's,dir goemon,dir ${PREFIX}/lib/timidity/goemon,' \
goemon.cfg
.endif
.include <bsd.port.mk>

View File

@ -1,32 +0,0 @@
*** mix.c.orig Mon May 20 17:09:46 1996
--- mix.c Sun Nov 17 10:01:36 1996
***************
*** 23,29 ****
--- 23,33 ----
#include <math.h>
#include <stdio.h>
+ #ifdef __FreeBSD__
+ #include <stdlib.h>
+ #else
#include <malloc.h>
+ #endif
#include "config.h"
#include "common.h"
*** resample.c.orig Mon May 20 17:09:47 1996
--- resample.c Sun Nov 17 09:59:29 1996
***************
*** 22,28 ****
--- 22,32 ----
#include <math.h>
#include <stdio.h>
+ #ifdef __FreeBSD__
+ #include <stdlib.h>
+ #else
#include <malloc.h>
+ #endif
#include "config.h"
#include "common.h"

View File

@ -1,177 +0,0 @@
*** linux_a.c.orig Mon May 20 17:09:46 1996
--- linux_a.c Tue Jun 16 21:40:17 1998
***************
*** 71,82 ****
then 8-bit unsigned if it fails. If you have a sound device that
can't handle either, let me know. */
static int open_output(void)
{
int fd, tmp, i, warnings=0;
/* Open the audio device */
! fd=open(dpm.name, O_RDWR | O_NDELAY);
if (fd<0)
{
ctl->cmsg(CMSG_ERROR, VERB_NORMAL, "%s: %s",
--- 71,85 ----
then 8-bit unsigned if it fails. If you have a sound device that
can't handle either, let me know. */
+ /* Flag for Luigi Rizzo new sound driver (as opposed to VoxWare) */
+ static int luigi_driver = 0;
+
static int open_output(void)
{
int fd, tmp, i, warnings=0;
/* Open the audio device */
! fd=open(dpm.name, O_RDWR);
if (fd<0)
{
ctl->cmsg(CMSG_ERROR, VERB_NORMAL, "%s: %s",
***************
*** 84,89 ****
--- 87,109 ----
return -1;
}
+ /* Figure out if we're running with the Luigi driver or
+ the original VoxWare driver, with code based on dburr/luigi
+ in ports/5607. It'd be great if we could do this before
+ opening the audio device, but oh well... */
+ #if defined(AIOGFMT) /* only defined in Luigi driver */
+ {
+ snd_chan_param s;
+ int i;
+ i = ioctl(fd, AIOGFMT, &s);
+ if (i != -1)
+ luigi_driver = 1;
+ }
+ #endif
+
+ ctl->cmsg(CMSG_INFO, VERB_VERBOSE, "Using %s sound driver",
+ luigi_driver ? "luigi" : "VoxWare");
+
/* They can't mean these */
dpm.encoding &= ~(PE_ULAW|PE_BYTESWAP);
***************
*** 92,97 ****
--- 112,140 ----
the other one. */
i=tmp=(dpm.encoding & PE_16BIT) ? 16 : 8;
+ if (luigi_driver)
+ {
+ if (dpm.encoding & PE_16BIT) {
+ int fmt = AFMT_S16_LE ;
+
+ if (ioctl(fd, SNDCTL_DSP_SETFMT, &fmt) < 0 || fmt != AFMT_S16_LE) {
+ fmt = AFMT_U8 ;
+ if (ioctl(fd, SNDCTL_DSP_SETFMT, &fmt) < 0 || fmt != AFMT_U8) {
+ ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
+ "%s doesn't support 16- or 8-bit sample width",
+ dpm.name);
+ close(fd);
+ return -1;
+ }
+ ctl->cmsg(CMSG_WARNING, VERB_VERBOSE,
+ "Sample width adjusted to %d bits", tmp);
+ dpm.encoding ^= PE_16BIT;
+ warnings = 1;
+ }
+ }
+ }
+ else
+ {
if (ioctl(fd, SNDCTL_DSP_SAMPLESIZE, &tmp)<0 || tmp!=i)
{
/* Try the other one */
***************
*** 109,114 ****
--- 152,158 ----
dpm.encoding ^= PE_16BIT;
warnings=1;
}
+ }
if (dpm.encoding & PE_16BIT)
dpm.encoding |= PE_SIGNED;
else
***************
*** 163,168 ****
--- 207,214 ----
/* Set buffer fragments (in extra_param[0]) */
tmp=AUDIO_BUFFER_BITS;
+ if (luigi_driver)
+ tmp += 2;
if (!(dpm.encoding & PE_MONO)) tmp++;
if (dpm.encoding & PE_16BIT) tmp++;
tmp |= (dpm.extra_param[0]<<16);
***************
*** 189,216 ****
return warnings;
}
static void output_data(int32 *buf, int32 count)
{
if (!(dpm.encoding & PE_MONO)) count*=2; /* Stereo samples */
! if (dpm.encoding & PE_16BIT)
! {
/* Convert data to signed 16-bit PCM */
s32tos16(buf, count);
!
! /* Write the data out. Linux likes to give an EINTR if you suspend
! a program while waiting on a write, so we may need to retry. */
! while ((-1==write(dpm.fd, buf, count * 2)) && errno==EINTR)
! ;
! }
! else
! {
/* Convert to 8-bit unsigned and write out. */
s32tou8(buf, count);
!
! while ((-1==write(dpm.fd, buf, count)) && errno==EINTR)
! ;
}
}
static void close_output(void)
--- 235,269 ----
return warnings;
}
+ /* output_data comes from Luigi's linux_a.c. This version seems to allow
+ for partial writes to the sound device, where as the original version
+ doesn't. */
static void output_data(int32 *buf, int32 count)
{
+ char *p;
+ int res, l;
+
if (!(dpm.encoding & PE_MONO)) count*=2; /* Stereo samples */
! if (dpm.encoding & PE_16BIT) {
/* Convert data to signed 16-bit PCM */
s32tos16(buf, count);
! res = count*2;
! } else {
/* Convert to 8-bit unsigned and write out. */
s32tou8(buf, count);
! res = count;
! }
! for (p = (char *) buf; res > 0; res -= l) {
! again:
! l = write(dpm.fd, p, res);
! if (l < 0) {
! if (errno == EINTR)
! goto again;
! return;
}
+ p += l;
+ }
}
static void close_output(void)

View File

@ -1,27 +0,0 @@
*** config.h.orig Sat Jun 1 07:54:49 1996
--- config.h Sat Sep 18 15:32:38 1999
***************
*** 217,222 ****
--- 217,238 ----
# endif
#endif /* linux */
+ #ifdef __FreeBSD__
+ #include <errno.h>
+ #include <machine/endian.h>
+ #if BYTE_ORDER == LITTLE_ENDIAN
+ #undef BIG_ENDIAN
+ #undef PDP_ENDIAN
+ #elif BYTE_ORDER == BIG_ENDIAN
+ #undef LITTLE_ENDIAN
+ #undef PDP_ENDIAN
+ #else
+ # error No valid byte sex defined
+ #endif
+ #define USE_LDEXP
+ #define PI M_PI
+ #endif
+
/* Win32 on Intel machines */
#ifdef __WIN32__
# define LITTLE_ENDIAN

View File

@ -1,87 +0,0 @@
--- common.c 2003/02/08 01:42:31 1.1
+++ common.c 2003/02/08 01:53:36
@@ -24,7 +24,7 @@
#include <stdio.h>
#include <stdlib.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>
--- instrum.c 2003/02/08 01:42:31 1.1
+++ instrum.c 2003/02/08 01:53:50
@@ -25,7 +25,7 @@
#include <stdio.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>
--- playmidi.c 2003/02/08 01:42:31 1.1
+++ playmidi.c 2003/02/08 01:54:18
@@ -27,7 +27,7 @@
#endif
#include <stdlib.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
# include <string.h>
#else
#include <strings.h>
--- raw_a.c 2003/02/08 01:42:31 1.1
+++ raw_a.c 2003/02/08 01:54:38
@@ -35,6 +35,7 @@
#ifdef __FreeBSD__
#include <stdio.h>
+#include <string.h>
#endif
#include "config.h"
--- readmidi.c 2003/02/08 01:42:31 1.1
+++ readmidi.c 2003/02/08 01:53:19
@@ -23,7 +23,7 @@
#include <stdlib.h>
#include <errno.h>
-#if defined(SOLARIS) | defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
# include <string.h>
#else
#include <strings.h>
--- timidity.c 2003/02/08 01:42:31 1.1
+++ timidity.c 2003/02/08 01:54:51
@@ -21,7 +21,7 @@
#include <stdio.h>
#include <stdlib.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>
--- wav2pat.c 2003/02/08 01:42:31 1.1
+++ wav2pat.c 2003/02/08 01:55:29
@@ -28,7 +28,7 @@
#include <unistd.h>
#include <fcntl.h>
-#ifdef SOLARIS
+#if defined(SOLARIS) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>
--- wave_a.c 2003/02/08 01:42:31 1.1
+++ wave_a.c 2003/02/08 01:55:45
@@ -35,6 +35,7 @@
#ifdef __FreeBSD__
#include <stdio.h>
+#include <string.h>
#endif
#include "config.h"

View File

@ -0,0 +1,11 @@
--- ./common.c.orig 1996-06-01 07:20:19.000000000 -0500
+++ ./common.c 2013-04-21 10:18:23.000000000 -0500
@@ -24,7 +24,7 @@
#include <stdio.h>
#include <stdlib.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>

View File

@ -0,0 +1,25 @@
--- ./config.h.orig 1996-06-01 07:54:49.000000000 -0500
+++ ./config.h 2013-04-21 10:18:23.000000000 -0500
@@ -217,6 +217,22 @@
# endif
#endif /* linux */
+#ifdef __FreeBSD__
+#include <errno.h>
+#include <machine/endian.h>
+#if BYTE_ORDER == LITTLE_ENDIAN
+#undef BIG_ENDIAN
+#undef PDP_ENDIAN
+#elif BYTE_ORDER == BIG_ENDIAN
+#undef LITTLE_ENDIAN
+#undef PDP_ENDIAN
+#else
+# error No valid byte sex defined
+#endif
+#define USE_LDEXP
+#define PI M_PI
+#endif
+
/* Win32 on Intel machines */
#ifdef __WIN32__
# define LITTLE_ENDIAN

View File

@ -1,5 +1,5 @@
--- dumb_c.c.orig Mon May 20 16:01:17 1996
+++ dumb_c.c Tue Dec 4 23:45:01 2001
--- ./dumb_c.c.orig 1996-05-20 09:01:17.000000000 -0500
+++ ./dumb_c.c 2013-04-21 10:18:23.000000000 -0500
@@ -66,10 +66,12 @@
ctl_expression, ctl_panning, ctl_sustain, ctl_pitch_bend
};

View File

@ -0,0 +1,11 @@
--- ./instrum.c.orig 1996-05-20 08:15:10.000000000 -0500
+++ ./instrum.c 2013-04-21 10:18:23.000000000 -0500
@@ -25,7 +25,7 @@
#include <stdio.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>

View File

@ -0,0 +1,139 @@
--- ./linux_a.c.orig 1996-05-20 08:09:46.000000000 -0500
+++ ./linux_a.c 2013-04-21 10:18:23.000000000 -0500
@@ -71,12 +71,15 @@
then 8-bit unsigned if it fails. If you have a sound device that
can't handle either, let me know. */
+/* Flag for Luigi Rizzo new sound driver (as opposed to VoxWare) */
+static int luigi_driver = 0;
+
static int open_output(void)
{
int fd, tmp, i, warnings=0;
/* Open the audio device */
- fd=open(dpm.name, O_RDWR | O_NDELAY);
+ fd=open(dpm.name, O_RDWR);
if (fd<0)
{
ctl->cmsg(CMSG_ERROR, VERB_NORMAL, "%s: %s",
@@ -84,6 +87,23 @@
return -1;
}
+ /* Figure out if we're running with the Luigi driver or
+ the original VoxWare driver, with code based on dburr/luigi
+ in ports/5607. It'd be great if we could do this before
+ opening the audio device, but oh well... */
+#if defined(AIOGFMT) /* only defined in Luigi driver */
+ {
+ snd_chan_param s;
+ int i;
+ i = ioctl(fd, AIOGFMT, &s);
+ if (i != -1)
+ luigi_driver = 1;
+ }
+#endif
+
+ ctl->cmsg(CMSG_INFO, VERB_VERBOSE, "Using %s sound driver",
+ luigi_driver ? "luigi" : "VoxWare");
+
/* They can't mean these */
dpm.encoding &= ~(PE_ULAW|PE_BYTESWAP);
@@ -92,6 +112,29 @@
the other one. */
i=tmp=(dpm.encoding & PE_16BIT) ? 16 : 8;
+ if (luigi_driver)
+ {
+ if (dpm.encoding & PE_16BIT) {
+ int fmt = AFMT_S16_LE ;
+
+ if (ioctl(fd, SNDCTL_DSP_SETFMT, &fmt) < 0 || fmt != AFMT_S16_LE) {
+ fmt = AFMT_U8 ;
+ if (ioctl(fd, SNDCTL_DSP_SETFMT, &fmt) < 0 || fmt != AFMT_U8) {
+ ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
+ "%s doesn't support 16- or 8-bit sample width",
+ dpm.name);
+ close(fd);
+ return -1;
+ }
+ ctl->cmsg(CMSG_WARNING, VERB_VERBOSE,
+ "Sample width adjusted to %d bits", tmp);
+ dpm.encoding ^= PE_16BIT;
+ warnings = 1;
+ }
+ }
+ }
+ else
+ {
if (ioctl(fd, SNDCTL_DSP_SAMPLESIZE, &tmp)<0 || tmp!=i)
{
/* Try the other one */
@@ -109,6 +152,7 @@
dpm.encoding ^= PE_16BIT;
warnings=1;
}
+ }
if (dpm.encoding & PE_16BIT)
dpm.encoding |= PE_SIGNED;
else
@@ -163,6 +207,8 @@
/* Set buffer fragments (in extra_param[0]) */
tmp=AUDIO_BUFFER_BITS;
+ if (luigi_driver)
+ tmp += 2;
if (!(dpm.encoding & PE_MONO)) tmp++;
if (dpm.encoding & PE_16BIT) tmp++;
tmp |= (dpm.extra_param[0]<<16);
@@ -189,28 +235,35 @@
return warnings;
}
+/* output_data comes from Luigi's linux_a.c. This version seems to allow
+ for partial writes to the sound device, where as the original version
+ doesn't. */
static void output_data(int32 *buf, int32 count)
{
+ char *p;
+ int res, l;
+
if (!(dpm.encoding & PE_MONO)) count*=2; /* Stereo samples */
- if (dpm.encoding & PE_16BIT)
- {
+ if (dpm.encoding & PE_16BIT) {
/* Convert data to signed 16-bit PCM */
s32tos16(buf, count);
-
- /* Write the data out. Linux likes to give an EINTR if you suspend
- a program while waiting on a write, so we may need to retry. */
- while ((-1==write(dpm.fd, buf, count * 2)) && errno==EINTR)
- ;
- }
- else
- {
+ res = count*2;
+ } else {
/* Convert to 8-bit unsigned and write out. */
s32tou8(buf, count);
-
- while ((-1==write(dpm.fd, buf, count)) && errno==EINTR)
- ;
+ res = count;
+ }
+ for (p = (char *) buf; res > 0; res -= l) {
+again:
+ l = write(dpm.fd, p, res);
+ if (l < 0) {
+ if (errno == EINTR)
+ goto again;
+ return;
}
+ p += l;
+ }
}
static void close_output(void)

View File

@ -0,0 +1,14 @@
--- ./mix.c.orig 1996-05-20 08:09:46.000000000 -0500
+++ ./mix.c 2013-04-21 10:18:23.000000000 -0500
@@ -23,7 +23,11 @@
#include <math.h>
#include <stdio.h>
+#ifdef __FreeBSD__
+#include <stdlib.h>
+#else
#include <malloc.h>
+#endif
#include "config.h"
#include "common.h"

View File

@ -0,0 +1,11 @@
--- ./playmidi.c.orig 1996-05-20 08:09:46.000000000 -0500
+++ ./playmidi.c 2013-04-21 10:18:23.000000000 -0500
@@ -27,7 +27,7 @@
#endif
#include <stdlib.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
# include <string.h>
#else
#include <strings.h>

View File

@ -0,0 +1,10 @@
--- ./raw_a.c.orig 1996-05-20 08:09:47.000000000 -0500
+++ ./raw_a.c 2013-04-21 10:18:23.000000000 -0500
@@ -35,6 +35,7 @@
#ifdef __FreeBSD__
#include <stdio.h>
+#include <string.h>
#endif
#include "config.h"

View File

@ -0,0 +1,11 @@
--- ./readmidi.c.orig 1996-05-20 08:09:47.000000000 -0500
+++ ./readmidi.c 2013-04-21 10:18:23.000000000 -0500
@@ -23,7 +23,7 @@
#include <stdlib.h>
#include <errno.h>
-#if defined(SOLARIS) | defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
# include <string.h>
#else
#include <strings.h>

View File

@ -0,0 +1,14 @@
--- ./resample.c.orig 1996-05-20 08:09:47.000000000 -0500
+++ ./resample.c 2013-04-21 10:18:23.000000000 -0500
@@ -22,7 +22,11 @@
#include <math.h>
#include <stdio.h>
+#ifdef __FreeBSD__
+#include <stdlib.h>
+#else
#include <malloc.h>
+#endif
#include "config.h"
#include "common.h"

View File

@ -0,0 +1,11 @@
--- ./timidity.c.orig 1996-05-21 14:16:20.000000000 -0500
+++ ./timidity.c 2013-04-21 10:18:23.000000000 -0500
@@ -21,7 +21,7 @@
#include <stdio.h>
#include <stdlib.h>
-#if defined(SOLARIS) || defined(__WIN32__)
+#if defined(SOLARIS) || defined(__WIN32__) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>

View File

@ -1,6 +1,14 @@
--- timidity.cfg.orig Mon May 22 02:40:27 1995
+++ timidity.cfg Mon Jan 4 03:55:42 1999
@@ -34,9 +34,9 @@
--- ./timidity.cfg.orig 1995-05-21 17:40:27.000000000 -0500
+++ ./timidity.cfg 2013-04-21 10:18:23.000000000 -0500
@@ -27,16 +27,16 @@
# If you've moved things around since compiling, uncomment and edit this to
# point to the library directory:
#
-#dir /usr/local/lib/timidity
+dir %%TDIR%%
#
##############################################################################
# This sets up the default patches in the TiMidity support package
# "timidity-lib-0.1.tar.gz":
@ -17,7 +25,7 @@
#source midia.cfg
#
+source goemon.cfg
+source %%TCONFIG%%
##############################################################################
# End of configuration file

View File

@ -0,0 +1,11 @@
--- ./wav2pat.c.orig 1996-05-20 08:09:47.000000000 -0500
+++ ./wav2pat.c 2013-04-21 10:18:23.000000000 -0500
@@ -28,7 +28,7 @@
#include <unistd.h>
#include <fcntl.h>
-#ifdef SOLARIS
+#if defined(SOLARIS) || defined(__FreeBSD__)
#include <string.h>
#else
#include <strings.h>

View File

@ -0,0 +1,10 @@
--- ./wave_a.c.orig 1996-05-20 08:10:15.000000000 -0500
+++ ./wave_a.c 2013-04-21 10:18:23.000000000 -0500
@@ -35,6 +35,7 @@
#ifdef __FreeBSD__
#include <stdio.h>
+#include <string.h>
#endif
#include "config.h"

View File

@ -1,257 +1,257 @@
bin/timidity
bin/bag
bin/wav2pat
lib/timidity/goemon.cfg
lib/timidity/goemon/acbass.pat
lib/timidity/goemon/accordn.pat
lib/timidity/goemon/acguitar2.pat
lib/timidity/goemon/agogo.pat
lib/timidity/goemon/agogohi.pat
lib/timidity/goemon/agogolo.pat
lib/timidity/goemon/airpipe.pat
lib/timidity/goemon/altosax.pat
lib/timidity/goemon/an_trmp1.pat
lib/timidity/goemon/applause.pat
lib/timidity/goemon/atmosphr.pat
lib/timidity/goemon/aurora.pat
lib/timidity/goemon/bagpipes.pat
lib/timidity/goemon/banjo.pat
lib/timidity/goemon/barisax.pat
lib/timidity/goemon/basslead.pat
lib/timidity/goemon/bassoon.pat
lib/timidity/goemon/bellpad.pat
lib/timidity/goemon/bells.pat
lib/timidity/goemon/belltree.pat
lib/timidity/goemon/bongohi.pat
lib/timidity/goemon/bongolo.pat
lib/timidity/goemon/bottleit.pat
lib/timidity/goemon/bowglass.pat
lib/timidity/goemon/britenss.pat
lib/timidity/goemon/britepno.pat
lib/timidity/goemon/cabasa.pat
lib/timidity/goemon/carillon.pat
lib/timidity/goemon/castinet.pat
lib/timidity/goemon/celeste.pat
lib/timidity/goemon/cello.pat
lib/timidity/goemon/charang.pat
lib/timidity/goemon/chiflead.pat
lib/timidity/goemon/choir.pat
lib/timidity/goemon/church.pat
lib/timidity/goemon/claps.pat
lib/timidity/goemon/clarinet.pat
lib/timidity/goemon/clave.pat
lib/timidity/goemon/clavinet.pat
lib/timidity/goemon/cleangtr.pat
lib/timidity/goemon/concrtna.pat
lib/timidity/goemon/congahi1.pat
lib/timidity/goemon/congahi2.pat
lib/timidity/goemon/congalo.pat
lib/timidity/goemon/contraba.pat
lib/timidity/goemon/cowbell.pat
lib/timidity/goemon/cuica1.pat
lib/timidity/goemon/cuica2.pat
lib/timidity/goemon/cymbell.pat
lib/timidity/goemon/cymchina.pat
lib/timidity/goemon/cymcrsh1.pat
lib/timidity/goemon/cymcrsh2.pat
lib/timidity/goemon/cymride1.pat
lib/timidity/goemon/cymride2.pat
lib/timidity/goemon/cymsplsh.pat
lib/timidity/goemon/digitel.pat
lib/timidity/goemon/distgtr2.pat
lib/timidity/goemon/englhorn.pat
lib/timidity/goemon/epiano1.pat
lib/timidity/goemon/epiano2.pat
lib/timidity/goemon/fiddle.pat
lib/timidity/goemon/flute.pat
lib/timidity/goemon/fngrbass.pat
lib/timidity/goemon/frenchrn.pat
lib/timidity/goemon/freshair.pat
lib/timidity/goemon/fretless.pat
lib/timidity/goemon/fretnoyz.pat
lib/timidity/goemon/fx-blow.pat
lib/timidity/goemon/ghostie.pat
lib/timidity/goemon/glocken.pat
lib/timidity/goemon/gsdrum00/bank.inf
lib/timidity/goemon/gsdrum00/bongohi.pat
lib/timidity/goemon/gsdrum00/bongolo.pat
lib/timidity/goemon/gsdrum00/cabasa.pat
lib/timidity/goemon/gsdrum00/congahi1.pat
lib/timidity/goemon/gsdrum00/congahi2.pat
lib/timidity/goemon/gsdrum00/congalo.pat
lib/timidity/goemon/gsdrum00/cowbell.pat
lib/timidity/goemon/gsdrum00/cuica1.pat
lib/timidity/goemon/gsdrum00/cuica2.pat
lib/timidity/goemon/gsdrum00/cymbell.pat
lib/timidity/goemon/gsdrum00/cymchina.pat
lib/timidity/goemon/gsdrum00/cymcrsh1.pat
lib/timidity/goemon/gsdrum00/cymcrsh2.pat
lib/timidity/goemon/gsdrum00/cymride1.pat
lib/timidity/goemon/gsdrum00/cymride2.pat
lib/timidity/goemon/gsdrum00/cymsplsh.pat
lib/timidity/goemon/gsdrum00/gsdrum00.doc
lib/timidity/goemon/gsdrum00/gsdrum00.txt
lib/timidity/goemon/gsdrum00/guiro1.pat
lib/timidity/goemon/gsdrum00/guiro2.pat
lib/timidity/goemon/gsdrum00/hihatcl.pat
lib/timidity/goemon/gsdrum00/hihatop.pat
lib/timidity/goemon/gsdrum00/hihatpd.pat
lib/timidity/goemon/gsdrum00/kick1.pat
lib/timidity/goemon/gsdrum00/kick2.pat
lib/timidity/goemon/gsdrum00/scratch1.pat
lib/timidity/goemon/gsdrum00/scratch2.pat
lib/timidity/goemon/gsdrum00/shaker.pat
lib/timidity/goemon/gsdrum00/snare1.pat
lib/timidity/goemon/gsdrum00/snare2.pat
lib/timidity/goemon/gsdrum00/stickrim.pat
lib/timidity/goemon/gsdrum00/tamborin.pat
lib/timidity/goemon/gsdrum00/tomhi1.pat
lib/timidity/goemon/gsdrum00/tomhi2.pat
lib/timidity/goemon/gsdrum00/tomlo1.pat
lib/timidity/goemon/gsdrum00/tomlo2.pat
lib/timidity/goemon/gsdrum00/tommid1.pat
lib/timidity/goemon/gsdrum00/tommid2.pat
lib/timidity/goemon/gsdrum00/woodblk1.pat
lib/timidity/goemon/gsdrum00/woodblk2.pat
lib/timidity/goemon/gsdrum08/bank.inf
lib/timidity/goemon/gsdrum08/gsdrum08.doc
lib/timidity/goemon/gsdrum08/gsdrum08.txt
lib/timidity/goemon/gsdrum08/roomhi1.pat
lib/timidity/goemon/gsdrum08/roomhi2.pat
lib/timidity/goemon/gsdrum08/roomlow1.pat
lib/timidity/goemon/gsdrum08/roomlow2.pat
lib/timidity/goemon/gsdrum08/roommid1.pat
lib/timidity/goemon/gsdrum08/roommid2.pat
lib/timidity/goemon/gsdrum40/bank.inf
lib/timidity/goemon/gsdrum40/br_slap.pat
lib/timidity/goemon/gsdrum40/br_swirl.pat
lib/timidity/goemon/gsdrum40/br_swish.pat
lib/timidity/goemon/gsdrum40/gsdrum40.bak
lib/timidity/goemon/gsdrum40/gsdrum40.doc
lib/timidity/goemon/gsdrum40/gsdrum40.txt
lib/timidity/goemon/gsdrum40/hihatcl.pat
lib/timidity/goemon/gsdrum40/hihatop.pat
lib/timidity/goemon/gtrharm.pat
lib/timidity/goemon/guiro1.pat
lib/timidity/goemon/guiro2.pat
lib/timidity/goemon/gunshot.pat
lib/timidity/goemon/halopad.pat
lib/timidity/goemon/hammond.pat
lib/timidity/goemon/harmonca.pat
lib/timidity/goemon/harp.pat
lib/timidity/goemon/helicptr.pat
lib/timidity/goemon/highq.pat
lib/timidity/goemon/hihatcl.pat
lib/timidity/goemon/hihatop.pat
lib/timidity/goemon/hihatpd.pat
lib/timidity/goemon/hitbrass.pat
lib/timidity/goemon/homeorg.pat
lib/timidity/goemon/honky.pat
lib/timidity/goemon/hrpschrd.pat
lib/timidity/goemon/jazzgtr2.pat
lib/timidity/goemon/jingles.pat
lib/timidity/goemon/jungle.pat
lib/timidity/goemon/kalimba.pat
lib/timidity/goemon/kick1.pat
lib/timidity/goemon/kick2.pat
lib/timidity/goemon/koto.pat
lib/timidity/goemon/lcalliop.pat
lib/timidity/goemon/lead5th.pat
lib/timidity/goemon/maracas.pat
lib/timidity/goemon/marcato.pat
lib/timidity/goemon/marimba.pat
lib/timidity/goemon/metalpad.pat
lib/timidity/goemon/metbell.pat
lib/timidity/goemon/metclick.pat
lib/timidity/goemon/mutegtr2.pat
lib/timidity/goemon/mutetrum.pat
lib/timidity/goemon/nyguitar.pat
lib/timidity/goemon/ob8.pat
lib/timidity/goemon/oboe.pat
lib/timidity/goemon/ocarina.pat
lib/timidity/goemon/odguitar.pat
lib/timidity/goemon/orchhit.pat
lib/timidity/goemon/percorg.pat
lib/timidity/goemon/piccolo.pat
lib/timidity/goemon/pickbass.pat
lib/timidity/goemon/pizzcato.pat
lib/timidity/goemon/recorder.pat
lib/timidity/goemon/reedorg.pat
lib/timidity/goemon/revcym.pat
lib/timidity/goemon/rhodes.pat
lib/timidity/goemon/rvrbxylo.pat
lib/timidity/goemon/santur.pat
lib/timidity/goemon/sawwave.pat
lib/timidity/goemon/scratch1.pat
lib/timidity/goemon/scratch2.pat
lib/timidity/goemon/seagulls.pat
lib/timidity/goemon/shakazul.pat
lib/timidity/goemon/shaker.pat
lib/timidity/goemon/shamisen.pat
lib/timidity/goemon/shannai.pat
lib/timidity/goemon/sitar.pat
lib/timidity/goemon/slap.pat
lib/timidity/goemon/slapbas1.pat
lib/timidity/goemon/slapbas2.pat
lib/timidity/goemon/slapbass.pat
lib/timidity/goemon/snare1.pat
lib/timidity/goemon/snare2.pat
lib/timidity/goemon/sologrnd.pat
lib/timidity/goemon/soundtrk.pat
lib/timidity/goemon/spctbell.pat
lib/timidity/goemon/sprnosax.pat
lib/timidity/goemon/sqrclick.pat
lib/timidity/goemon/sqrwave.pat
lib/timidity/goemon/startrak.pat
lib/timidity/goemon/steeldrm.pat
lib/timidity/goemon/stickrim.pat
lib/timidity/goemon/sticks.pat
lib/timidity/goemon/strings.pat
lib/timidity/goemon/surdo1.pat
lib/timidity/goemon/surdo2.pat
lib/timidity/goemon/sweeper.pat
lib/timidity/goemon/synbass1.pat
lib/timidity/goemon/synbass2.pat
lib/timidity/goemon/synbras1.pat
lib/timidity/goemon/synbras2.pat
lib/timidity/goemon/synstr1.pat
lib/timidity/goemon/synstr2.pat
lib/timidity/goemon/syntom.pat
lib/timidity/goemon/synvoic1.pat
lib/timidity/goemon/taiko.pat
lib/timidity/goemon/tamborin.pat
lib/timidity/goemon/tenorsax.pat
lib/timidity/goemon/timbaleh.pat
lib/timidity/goemon/timbalel.pat
lib/timidity/goemon/timpani.pat
lib/timidity/goemon/tomhi1.pat
lib/timidity/goemon/tomhi2.pat
lib/timidity/goemon/tomlo1.pat
lib/timidity/goemon/tomlo2.pat
lib/timidity/goemon/tommid1.pat
lib/timidity/goemon/tommid2.pat
lib/timidity/goemon/toms.pat
lib/timidity/goemon/tremstr.pat
lib/timidity/goemon/triangl1.pat
lib/timidity/goemon/triangl2.pat
lib/timidity/goemon/trombone.pat
lib/timidity/goemon/tuba.pat
lib/timidity/goemon/tubebell.pat
lib/timidity/goemon/unicorn.pat
lib/timidity/goemon/vibes.pat
lib/timidity/goemon/vibslap.pat
lib/timidity/goemon/viola.pat
lib/timidity/goemon/violin.pat
lib/timidity/goemon/voicedoo.pat
lib/timidity/goemon/voices.pat
lib/timidity/goemon/warmpad.pat
lib/timidity/goemon/whistle.pat
lib/timidity/goemon/whistle1.pat
lib/timidity/goemon/whistle2.pat
lib/timidity/goemon/woodblk.pat
lib/timidity/goemon/woodblk1.pat
lib/timidity/goemon/woodblk2.pat
lib/timidity/goemon/woodflut.pat
%%GOEMON%%lib/timidity/goemon.cfg
%%GOEMON%%lib/timidity/goemon/acbass.pat
%%GOEMON%%lib/timidity/goemon/accordn.pat
%%GOEMON%%lib/timidity/goemon/acguitar2.pat
%%GOEMON%%lib/timidity/goemon/agogo.pat
%%GOEMON%%lib/timidity/goemon/agogohi.pat
%%GOEMON%%lib/timidity/goemon/agogolo.pat
%%GOEMON%%lib/timidity/goemon/airpipe.pat
%%GOEMON%%lib/timidity/goemon/altosax.pat
%%GOEMON%%lib/timidity/goemon/an_trmp1.pat
%%GOEMON%%lib/timidity/goemon/applause.pat
%%GOEMON%%lib/timidity/goemon/atmosphr.pat
%%GOEMON%%lib/timidity/goemon/aurora.pat
%%GOEMON%%lib/timidity/goemon/bagpipes.pat
%%GOEMON%%lib/timidity/goemon/banjo.pat
%%GOEMON%%lib/timidity/goemon/barisax.pat
%%GOEMON%%lib/timidity/goemon/basslead.pat
%%GOEMON%%lib/timidity/goemon/bassoon.pat
%%GOEMON%%lib/timidity/goemon/bellpad.pat
%%GOEMON%%lib/timidity/goemon/bells.pat
%%GOEMON%%lib/timidity/goemon/belltree.pat
%%GOEMON%%lib/timidity/goemon/bongohi.pat
%%GOEMON%%lib/timidity/goemon/bongolo.pat
%%GOEMON%%lib/timidity/goemon/bottleit.pat
%%GOEMON%%lib/timidity/goemon/bowglass.pat
%%GOEMON%%lib/timidity/goemon/britenss.pat
%%GOEMON%%lib/timidity/goemon/britepno.pat
%%GOEMON%%lib/timidity/goemon/cabasa.pat
%%GOEMON%%lib/timidity/goemon/carillon.pat
%%GOEMON%%lib/timidity/goemon/castinet.pat
%%GOEMON%%lib/timidity/goemon/celeste.pat
%%GOEMON%%lib/timidity/goemon/cello.pat
%%GOEMON%%lib/timidity/goemon/charang.pat
%%GOEMON%%lib/timidity/goemon/chiflead.pat
%%GOEMON%%lib/timidity/goemon/choir.pat
%%GOEMON%%lib/timidity/goemon/church.pat
%%GOEMON%%lib/timidity/goemon/claps.pat
%%GOEMON%%lib/timidity/goemon/clarinet.pat
%%GOEMON%%lib/timidity/goemon/clave.pat
%%GOEMON%%lib/timidity/goemon/clavinet.pat
%%GOEMON%%lib/timidity/goemon/cleangtr.pat
%%GOEMON%%lib/timidity/goemon/concrtna.pat
%%GOEMON%%lib/timidity/goemon/congahi1.pat
%%GOEMON%%lib/timidity/goemon/congahi2.pat
%%GOEMON%%lib/timidity/goemon/congalo.pat
%%GOEMON%%lib/timidity/goemon/contraba.pat
%%GOEMON%%lib/timidity/goemon/cowbell.pat
%%GOEMON%%lib/timidity/goemon/cuica1.pat
%%GOEMON%%lib/timidity/goemon/cuica2.pat
%%GOEMON%%lib/timidity/goemon/cymbell.pat
%%GOEMON%%lib/timidity/goemon/cymchina.pat
%%GOEMON%%lib/timidity/goemon/cymcrsh1.pat
%%GOEMON%%lib/timidity/goemon/cymcrsh2.pat
%%GOEMON%%lib/timidity/goemon/cymride1.pat
%%GOEMON%%lib/timidity/goemon/cymride2.pat
%%GOEMON%%lib/timidity/goemon/cymsplsh.pat
%%GOEMON%%lib/timidity/goemon/digitel.pat
%%GOEMON%%lib/timidity/goemon/distgtr2.pat
%%GOEMON%%lib/timidity/goemon/englhorn.pat
%%GOEMON%%lib/timidity/goemon/epiano1.pat
%%GOEMON%%lib/timidity/goemon/epiano2.pat
%%GOEMON%%lib/timidity/goemon/fiddle.pat
%%GOEMON%%lib/timidity/goemon/flute.pat
%%GOEMON%%lib/timidity/goemon/fngrbass.pat
%%GOEMON%%lib/timidity/goemon/frenchrn.pat
%%GOEMON%%lib/timidity/goemon/freshair.pat
%%GOEMON%%lib/timidity/goemon/fretless.pat
%%GOEMON%%lib/timidity/goemon/fretnoyz.pat
%%GOEMON%%lib/timidity/goemon/fx-blow.pat
%%GOEMON%%lib/timidity/goemon/ghostie.pat
%%GOEMON%%lib/timidity/goemon/glocken.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/bank.inf
%%GOEMON%%lib/timidity/goemon/gsdrum00/bongohi.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/bongolo.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cabasa.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/congahi1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/congahi2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/congalo.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cowbell.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cuica1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cuica2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymbell.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymchina.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymcrsh1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymcrsh2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymride1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymride2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/cymsplsh.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/gsdrum00.doc
%%GOEMON%%lib/timidity/goemon/gsdrum00/gsdrum00.txt
%%GOEMON%%lib/timidity/goemon/gsdrum00/guiro1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/guiro2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/hihatcl.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/hihatop.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/hihatpd.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/kick1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/kick2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/scratch1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/scratch2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/shaker.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/snare1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/snare2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/stickrim.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tamborin.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tomhi1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tomhi2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tomlo1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tomlo2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tommid1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/tommid2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/woodblk1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum00/woodblk2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum08/bank.inf
%%GOEMON%%lib/timidity/goemon/gsdrum08/gsdrum08.doc
%%GOEMON%%lib/timidity/goemon/gsdrum08/gsdrum08.txt
%%GOEMON%%lib/timidity/goemon/gsdrum08/roomhi1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum08/roomhi2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum08/roomlow1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum08/roomlow2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum08/roommid1.pat
%%GOEMON%%lib/timidity/goemon/gsdrum08/roommid2.pat
%%GOEMON%%lib/timidity/goemon/gsdrum40/bank.inf
%%GOEMON%%lib/timidity/goemon/gsdrum40/br_slap.pat
%%GOEMON%%lib/timidity/goemon/gsdrum40/br_swirl.pat
%%GOEMON%%lib/timidity/goemon/gsdrum40/br_swish.pat
%%GOEMON%%lib/timidity/goemon/gsdrum40/gsdrum40.bak
%%GOEMON%%lib/timidity/goemon/gsdrum40/gsdrum40.doc
%%GOEMON%%lib/timidity/goemon/gsdrum40/gsdrum40.txt
%%GOEMON%%lib/timidity/goemon/gsdrum40/hihatcl.pat
%%GOEMON%%lib/timidity/goemon/gsdrum40/hihatop.pat
%%GOEMON%%lib/timidity/goemon/gtrharm.pat
%%GOEMON%%lib/timidity/goemon/guiro1.pat
%%GOEMON%%lib/timidity/goemon/guiro2.pat
%%GOEMON%%lib/timidity/goemon/gunshot.pat
%%GOEMON%%lib/timidity/goemon/halopad.pat
%%GOEMON%%lib/timidity/goemon/hammond.pat
%%GOEMON%%lib/timidity/goemon/harmonca.pat
%%GOEMON%%lib/timidity/goemon/harp.pat
%%GOEMON%%lib/timidity/goemon/helicptr.pat
%%GOEMON%%lib/timidity/goemon/highq.pat
%%GOEMON%%lib/timidity/goemon/hihatcl.pat
%%GOEMON%%lib/timidity/goemon/hihatop.pat
%%GOEMON%%lib/timidity/goemon/hihatpd.pat
%%GOEMON%%lib/timidity/goemon/hitbrass.pat
%%GOEMON%%lib/timidity/goemon/homeorg.pat
%%GOEMON%%lib/timidity/goemon/honky.pat
%%GOEMON%%lib/timidity/goemon/hrpschrd.pat
%%GOEMON%%lib/timidity/goemon/jazzgtr2.pat
%%GOEMON%%lib/timidity/goemon/jingles.pat
%%GOEMON%%lib/timidity/goemon/jungle.pat
%%GOEMON%%lib/timidity/goemon/kalimba.pat
%%GOEMON%%lib/timidity/goemon/kick1.pat
%%GOEMON%%lib/timidity/goemon/kick2.pat
%%GOEMON%%lib/timidity/goemon/koto.pat
%%GOEMON%%lib/timidity/goemon/lcalliop.pat
%%GOEMON%%lib/timidity/goemon/lead5th.pat
%%GOEMON%%lib/timidity/goemon/maracas.pat
%%GOEMON%%lib/timidity/goemon/marcato.pat
%%GOEMON%%lib/timidity/goemon/marimba.pat
%%GOEMON%%lib/timidity/goemon/metalpad.pat
%%GOEMON%%lib/timidity/goemon/metbell.pat
%%GOEMON%%lib/timidity/goemon/metclick.pat
%%GOEMON%%lib/timidity/goemon/mutegtr2.pat
%%GOEMON%%lib/timidity/goemon/mutetrum.pat
%%GOEMON%%lib/timidity/goemon/nyguitar.pat
%%GOEMON%%lib/timidity/goemon/ob8.pat
%%GOEMON%%lib/timidity/goemon/oboe.pat
%%GOEMON%%lib/timidity/goemon/ocarina.pat
%%GOEMON%%lib/timidity/goemon/odguitar.pat
%%GOEMON%%lib/timidity/goemon/orchhit.pat
%%GOEMON%%lib/timidity/goemon/percorg.pat
%%GOEMON%%lib/timidity/goemon/piccolo.pat
%%GOEMON%%lib/timidity/goemon/pickbass.pat
%%GOEMON%%lib/timidity/goemon/pizzcato.pat
%%GOEMON%%lib/timidity/goemon/recorder.pat
%%GOEMON%%lib/timidity/goemon/reedorg.pat
%%GOEMON%%lib/timidity/goemon/revcym.pat
%%GOEMON%%lib/timidity/goemon/rhodes.pat
%%GOEMON%%lib/timidity/goemon/rvrbxylo.pat
%%GOEMON%%lib/timidity/goemon/santur.pat
%%GOEMON%%lib/timidity/goemon/sawwave.pat
%%GOEMON%%lib/timidity/goemon/scratch1.pat
%%GOEMON%%lib/timidity/goemon/scratch2.pat
%%GOEMON%%lib/timidity/goemon/seagulls.pat
%%GOEMON%%lib/timidity/goemon/shakazul.pat
%%GOEMON%%lib/timidity/goemon/shaker.pat
%%GOEMON%%lib/timidity/goemon/shamisen.pat
%%GOEMON%%lib/timidity/goemon/shannai.pat
%%GOEMON%%lib/timidity/goemon/sitar.pat
%%GOEMON%%lib/timidity/goemon/slap.pat
%%GOEMON%%lib/timidity/goemon/slapbas1.pat
%%GOEMON%%lib/timidity/goemon/slapbas2.pat
%%GOEMON%%lib/timidity/goemon/slapbass.pat
%%GOEMON%%lib/timidity/goemon/snare1.pat
%%GOEMON%%lib/timidity/goemon/snare2.pat
%%GOEMON%%lib/timidity/goemon/sologrnd.pat
%%GOEMON%%lib/timidity/goemon/soundtrk.pat
%%GOEMON%%lib/timidity/goemon/spctbell.pat
%%GOEMON%%lib/timidity/goemon/sprnosax.pat
%%GOEMON%%lib/timidity/goemon/sqrclick.pat
%%GOEMON%%lib/timidity/goemon/sqrwave.pat
%%GOEMON%%lib/timidity/goemon/startrak.pat
%%GOEMON%%lib/timidity/goemon/steeldrm.pat
%%GOEMON%%lib/timidity/goemon/stickrim.pat
%%GOEMON%%lib/timidity/goemon/sticks.pat
%%GOEMON%%lib/timidity/goemon/strings.pat
%%GOEMON%%lib/timidity/goemon/surdo1.pat
%%GOEMON%%lib/timidity/goemon/surdo2.pat
%%GOEMON%%lib/timidity/goemon/sweeper.pat
%%GOEMON%%lib/timidity/goemon/synbass1.pat
%%GOEMON%%lib/timidity/goemon/synbass2.pat
%%GOEMON%%lib/timidity/goemon/synbras1.pat
%%GOEMON%%lib/timidity/goemon/synbras2.pat
%%GOEMON%%lib/timidity/goemon/synstr1.pat
%%GOEMON%%lib/timidity/goemon/synstr2.pat
%%GOEMON%%lib/timidity/goemon/syntom.pat
%%GOEMON%%lib/timidity/goemon/synvoic1.pat
%%GOEMON%%lib/timidity/goemon/taiko.pat
%%GOEMON%%lib/timidity/goemon/tamborin.pat
%%GOEMON%%lib/timidity/goemon/tenorsax.pat
%%GOEMON%%lib/timidity/goemon/timbaleh.pat
%%GOEMON%%lib/timidity/goemon/timbalel.pat
%%GOEMON%%lib/timidity/goemon/timpani.pat
%%GOEMON%%lib/timidity/goemon/tomhi1.pat
%%GOEMON%%lib/timidity/goemon/tomhi2.pat
%%GOEMON%%lib/timidity/goemon/tomlo1.pat
%%GOEMON%%lib/timidity/goemon/tomlo2.pat
%%GOEMON%%lib/timidity/goemon/tommid1.pat
%%GOEMON%%lib/timidity/goemon/tommid2.pat
%%GOEMON%%lib/timidity/goemon/toms.pat
%%GOEMON%%lib/timidity/goemon/tremstr.pat
%%GOEMON%%lib/timidity/goemon/triangl1.pat
%%GOEMON%%lib/timidity/goemon/triangl2.pat
%%GOEMON%%lib/timidity/goemon/trombone.pat
%%GOEMON%%lib/timidity/goemon/tuba.pat
%%GOEMON%%lib/timidity/goemon/tubebell.pat
%%GOEMON%%lib/timidity/goemon/unicorn.pat
%%GOEMON%%lib/timidity/goemon/vibes.pat
%%GOEMON%%lib/timidity/goemon/vibslap.pat
%%GOEMON%%lib/timidity/goemon/viola.pat
%%GOEMON%%lib/timidity/goemon/violin.pat
%%GOEMON%%lib/timidity/goemon/voicedoo.pat
%%GOEMON%%lib/timidity/goemon/voices.pat
%%GOEMON%%lib/timidity/goemon/warmpad.pat
%%GOEMON%%lib/timidity/goemon/whistle.pat
%%GOEMON%%lib/timidity/goemon/whistle1.pat
%%GOEMON%%lib/timidity/goemon/whistle2.pat
%%GOEMON%%lib/timidity/goemon/woodblk.pat
%%GOEMON%%lib/timidity/goemon/woodblk1.pat
%%GOEMON%%lib/timidity/goemon/woodblk2.pat
%%GOEMON%%lib/timidity/goemon/woodflut.pat
lib/timidity/gravis.cfg
lib/timidity/gsdrum.cfg
lib/timidity/midia.cfg
@ -259,8 +259,8 @@ lib/timidity/mt32.cfg
lib/timidity/timidity.cfg
lib/timidity/wowpats.cfg
man/man1/timidity.1.gz
@dirrm lib/timidity/goemon/gsdrum40
@dirrm lib/timidity/goemon/gsdrum08
@dirrm lib/timidity/goemon/gsdrum00
@dirrm lib/timidity/goemon
%%GOEMON%%@dirrm lib/timidity/goemon/gsdrum40
%%GOEMON%%@dirrm lib/timidity/goemon/gsdrum08
%%GOEMON%%@dirrm lib/timidity/goemon/gsdrum00
%%GOEMON%%@dirrm lib/timidity/goemon
@dirrm lib/timidity