--- playmidi-2.4debian.orig/Configure +++ playmidi-2.4debian/Configure @@ -5,15 +5,17 @@ ### DEFAULT VALUES BEING SET TO MY PERSONAL SETUP. ### ########################################################## fmmode=0 -mididevno=-1 +#mididevno=-1 +mididevno=0 play=PLAY_MIDI gus1=/dos/ultrasnd/midi gus2=/usr/local/lib/Plib ########################################################## -### YOU MUST HAVE THE VOXWARE SOUND DRIVER INSTALLED ### -### FOR THIS SCRIPT TO FUNCTION PROPERLY. /dev/sndstat ### +### EITHER /dev/sndstat OR /proc/asound/oss/sndstat ### ### MUST BE AVAILABLE FOR READING ### ########################################################## +SNDSTAT=/proc/asound/oss/sndstat +test -e "$SNDSTAT" || SNDSTAT=/dev/sndstat echo "Playmidi Quick Config Utility, Copyright (C)1996 Nathan I. Laredo" echo "This is free software with ABSOLUTELY NO WARRANTY. For details, please" echo "see the file COPYING included with the Playmidi distribution." @@ -30,7 +32,7 @@ then echo "" echo "Playmidi External MIDI synth configuration:" -grep -A 10 Midi\ devices: /dev/sndstat | grep -B 10 Timers: | grep -v Timers: +test -e "$SNDSTAT" && (grep -A 10 Midi\ devices: "$SNDSTAT" | grep -B 10 Timers: | grep -v Timers:) echo "If you want to force one of the midi devices above, enter the number" echo "here, otherwise, to default to the last detected, hit enter." echo -n "(at runtime, option -D# will override this) --> " --- playmidi-2.4debian.orig/Makefile +++ playmidi-2.4debian/Makefile @@ -10,14 +10,18 @@ # ########################################################################### +# Standard library locations +LIB = -L/usr/lib -L/usr/lib64 +XLIB = -L/usr/X11R6/lib -L/usr/X11R6/lib64 + # ncurses usually /usr/lib, -L/usr/local/lib doesn't hurt # unless there's more than one ncurses floating around on your system -LIBNC = -L/usr/local/lib -lncurses +LIBNC = $(LIB) -lncurses ######### NOTE: X11R6 or newer REQUIRED -LIBX11 = -L/usr/X11R6/lib -lXaw -lXmu -lXt -lX11 -lXext -lSM -lICE -LIBGTK = -L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lX11 -lXext -lm -LIBVGA = -L/usr/local/lib -lvgagl -lvga +LIBX11 = $(XLIB) -lXaw -lXt -lX11 +LIBGTK = $(XLIB) -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lX11 -lXext -lm +LIBVGA = $(LIB) -lvgagl -lvga # ncurses is usually in /usr/include/ncurses, but you may need # to use /usr/local/include/ncurses depending on your setup. @@ -43,8 +47,10 @@ INSTALL = install -s # if you are using the GUS Ultra driver module, add -DULTRA_DRIVER -CFLAGS = -Wall -pipe -fomit-frame-pointer -O2 -m486 $(INCAWE) -LDFLAGS = +#CFLAGS = -Wall -pipe -fomit-frame-pointer -O2 $(INCAWE) +CFLAGS ?= -Wall -pipe -fomit-frame-pointer -O2 +CFLAGS += $(INCAWE) +#LDFLAGS = OBJECTS = playmidi.o readmidi.o playevents.o \ patchload.o emumidi.o io_ncurses.o --- playmidi-2.4debian.orig/XPlaymidi.ad +++ playmidi-2.4debian/XPlaymidi.ad @@ -1,18 +1,19 @@ -*foreground: #00627dea8 -*background: #cccccc -*meter01.background: #00f000 -*meter02.background: #00e010 -*meter03.background: #00d020 -*meter04.background: #00c030 -*meter05.background: #00b040 -*meter06.background: #00a050 -*meter07.background: #009060 -*meter08.background: #008070 -*meter09.background: #007080 -*meter10.background: #006090 -*meter11.background: #0050a0 -*meter12.background: #0040b0 -*meter13.background: #0030c0 -*meter14.background: #0020d0 -*meter15.background: #0010e0 -*meter16.background: #0000f0 +*Foreground: #00627dea8 +*BorderColor: #00627dea8 +*Background: #cccccc +*meter01.Background: #00f000 +*meter02.Background: #00e010 +*meter03.Background: #00d020 +*meter04.Background: #00c030 +*meter05.Background: #00b040 +*meter06.Background: #00a050 +*meter07.Background: #009060 +*meter08.Background: #008070 +*meter09.Background: #007080 +*meter10.Background: #006090 +*meter11.Background: #0050a0 +*meter12.Background: #0040b0 +*meter13.Background: #0030c0 +*meter14.Background: #0020d0 +*meter15.Background: #0010e0 +*meter16.Background: #0000f0 --- playmidi-2.4debian.orig/bitmaps.h +++ playmidi-2.4debian/bitmaps.h @@ -17,4 +17,4 @@ #include "bitmaps/prev.bit" #include "bitmaps/play.bit" #include "bitmaps/next.bit" -#include "bitmaps/meter.bit" +/*#include "bitmaps/meter.bit"*/ --- playmidi-2.4debian.orig/bitmaps/eject.bit +++ playmidi-2.4debian/bitmaps/eject.bit @@ -1,6 +1,6 @@ #define Eject_width 29 #define Eject_height 29 -static unsigned char Eject_bits[] = { +static char Eject_bits[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0x6a, 0xaa, 0x1e, 0x50, 0xb5, 0x54, 0x1d, --- playmidi-2.4debian.orig/bitmaps/meter.bit +++ playmidi-2.4debian/bitmaps/meter.bit @@ -2,7 +2,7 @@ #define meter_height 47 #define meter_x_hot 47 #define meter_y_hot 41 -static unsigned char meter_bits[] = { +static char meter_bits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x7f, 0xff, 0x03, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x7f, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x40, --- playmidi-2.4debian.orig/bitmaps/next.bit +++ playmidi-2.4debian/bitmaps/next.bit @@ -1,6 +1,6 @@ #define Next_width 29 #define Next_height 29 -static unsigned char Next_bits[] = { +static char Next_bits[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0xaa, 0xaa, 0x1e, 0xd0, 0x55, 0x3f, 0x1d, 0x68, 0xab, 0xaa, 0x1e, 0xd0, 0x56, 0x17, 0x1d, --- playmidi-2.4debian.orig/bitmaps/pause.bit +++ playmidi-2.4debian/bitmaps/pause.bit @@ -1,6 +1,6 @@ #define pause_width 29 #define pause_height 29 -static unsigned char pause_bits[] = { +static char pause_bits[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0xaa, 0xaa, 0x1e, 0xd0, 0x4f, 0x3f, 0x1d, 0x68, 0xa5, 0x95, 0x1e, 0xd0, 0x4a, 0x2b, 0x1d, --- playmidi-2.4debian.orig/bitmaps/play.bit +++ playmidi-2.4debian/bitmaps/play.bit @@ -1,6 +1,6 @@ #define Play_width 29 #define Play_height 29 -static unsigned char Play_bits[] = { +static char Play_bits[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x5d, 0x55, 0x1d, 0xa8, 0xb6, 0xaa, 0x1e, 0x50, 0x6d, 0x55, 0x1d, --- playmidi-2.4debian.orig/bitmaps/prev.bit +++ playmidi-2.4debian/bitmaps/prev.bit @@ -1,6 +1,6 @@ #define Prev_width 29 #define Prev_height 29 -static unsigned char Prev_bits[] = { +static char Prev_bits[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0xaa, 0xaa, 0x1e, 0xd0, 0x57, 0x35, 0x1d, 0xe8, 0xa2, 0x9a, 0x1e, 0x50, 0x55, 0x2d, 0x1d, --- playmidi-2.4debian.orig/bitmaps/stop.bit +++ playmidi-2.4debian/bitmaps/stop.bit @@ -1,6 +1,6 @@ #define stop_width 29 #define stop_height 29 -static unsigned char stop_bits[] = { +static char stop_bits[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0xaa, 0xaa, 0x1e, 0x50, 0x55, 0x55, 0x1d, 0xa8, 0xaa, 0xaa, 0x1e, 0xd0, 0xff, 0x3f, 0x1d, 0x68, 0x55, 0x95, 0x1e, 0xd0, 0xaa, 0x2a, 0x1d, --- playmidi-2.4debian.orig/debian/README.Debian +++ playmidi-2.4debian/debian/README.Debian @@ -0,0 +1,20 @@ +playmidi for Debian +---------------------- + +GUS patches +=========== +Playmidi will look in three places for GUS patches: + + /dos/ultrasnd/midi/%s.pat + /usr/local/lib/Plib/%s.pat + /var/lib/gus-patches/%s.pat + +The third one is extra in the Debian version; the easiest way of using +playmidi with other patch kits will probably be to make /var/lib/gus-patches +a sym-link to wherever your patches actually live. + +Steve McIntyre, Debian maintainer + +06 Feb 1997 + + -- Rich Sahlender , Tue, 22 Feb 2000 10:04:44 -0500 --- playmidi-2.4debian.orig/debian/TODO +++ playmidi-2.4debian/debian/TODO @@ -0,0 +1,9 @@ + 53990 Distortion, ext. keyboard + Need help; no external MIDI hw here. + +185011 'New' upstream 2.5 + Identical to 2.4; no point in using it. + New upstream version is imminent? (Seems not.) + +230737 Attempt auto-detection of hardware type + Order == Gravis, FM, AWE, external? --- playmidi-2.4debian.orig/debian/changelog +++ playmidi-2.4debian/debian/changelog @@ -0,0 +1,443 @@ +playmidi (2.4debian-11) unstable; urgency=medium + + * QA upload. + * Set maintainer to Debian QA Group. (see #881511) + * Add Brazilian Portuguese debconf templates translation + from Adriano Rafael Gomes. (Closes: #719934) + + -- Adrian Bunk Sun, 19 Nov 2017 20:32:52 +0200 + +playmidi (2.4debian-10) unstable; urgency=low + + * Change of maintainer address. + * Bump standards version to 3.9.3; bump debhelper compat to 5 (minimal). + * Copyright file fixups (lintian warning). + * Use dpkg-buildflags for hardening. + * Add a versioned build-dep on dpkg-dev. + * Ack NMUs. (Closes: #463252, #488708, #489161, #654813, #665305) + + -- Darren Salt Tue, 20 Nov 2012 18:05:29 +0000 + +playmidi (2.4debian-9.2) unstable; urgency=low + + * Non-maintainer upload. + * Fix pending l10n issues. Debconf translations: + - Danish (Joe Hansen). Closes: #654813 + - Polish (Michał Kułach). Closes: #665305 + + -- Christian Perrier Fri, 30 Mar 2012 06:52:44 +0200 + +playmidi (2.4debian-9.1) unstable; urgency=low + + * Non-maintainer upload to fix pending l10n issues. + * Debconf translations + - Japanese. Closes: #463252 + - Swedish. Closes: #488708 + - Norwegian Bokmål. Closes: #463252 + - Turkish. Closes: #489161 + + -- Christian Perrier Thu, 19 Jun 2008 20:10:55 +0200 + +playmidi (2.4debian-9) unstable; urgency=low + + [ Darren Salt ] + * Updated debconf templates & debian/control. (Closes: #452496) + Reviewed by the debian-l10n-english team as part of the Smith review + project (except that I've lightly tweaked the last sentence of the + package description). + * Various new & updated debconf translations: + - Basque (Closes: #453297) + - Galician (Closes: #453330) + - Vietnamese (Closes: #453377) + - German (Closes: #453488) + - Finnish (Closes: #453655) + - Portuguese (Closes: #453914) + - Spanish, Castilian (Closes: #454357) + - Italian (Closes: #454645) + - French (Closes: #454648) + - Czech (Closes: #455239) + - Dutch, Flemish (Closes: #455869) + - Russian (Closes: #455965) + * Demote the X dependencies to Recommends. (Closes: #28471) + Use a wrapper for xplaymidi to avoid run-time linkage errors. + (Doable since recommended packages are installed by default.) + * Bumped standards version to 3.7.3; no changes needed. + + -- Darren Salt Fri, 18 Jan 2008 22:18:33 +0000 + +playmidi (2.4debian-8) unstable; urgency=low + + * Use debian/compat instead of DH_COMPAT, but stick with level 4 for now. + * Updated standards version to 3.7.2. + * Templates converted to UTF-8. + * Fixed problems with terminal resize (ncurses interface) - now no longer + terminates. + * Use intptr_t for pointer casting. + * Switched to using the included awe_voice.h regardless of target. + It was removed from Linux between 2.6.21 & 2.6.22. (Closes: #436329) + * Added Dutch debconf translation. (Closes: #414771) + * Added Portuguese debconf translation. (Closes: #434062) + * Fixed the --help option. (Closes: #418819) + * Removed a question mark from the debconf template. Translations need to + be updated to remove the malformed-prompt-in-templates warning. + + -- Darren Salt Sun, 28 Oct 2007 01:58:59 +0100 + +playmidi (2.4debian-7) unstable; urgency=low + + * Added Spanish templates translation. (Closes: #404789) + + -- Darren Salt Thu, 28 Dec 2006 18:43:33 +0000 + +playmidi (2.4debian-6) unstable; urgency=low + + * Fixed up various compiler warnings (mostly signedness differences which, + in this case, was all noise). + * Should be libxaw?-dev in previous changelog entries. + * Fixed a segfault when handling gzipped MIDI files. (Closes: #391888) + + -- Darren Salt Mon, 30 Oct 2006 18:48:07 +0000 + +playmidi (2.4debian-5) unstable; urgency=low + + * Build-depend once more on libxaw7-dev, as requested by the X maintainers. + + -- Darren Salt Mon, 27 Mar 2006 01:47:23 +0100 + +playmidi (2.4debian-4) unstable; urgency=low + + * Unhardwire gzip where it shouldn't be hardwired; use the passed-in + command name (which happens to be gzip) instead. + * Build fix: look for /proc/asound/oss/sndstat as well as /dev/sndstat. + * Actually *use* the -D option. + * Correct some spelling errors in the man page. (Closes: #302815) + * Added Vietnamese, Czech and Swedish debconf translations. + (Closes: #316868, #318325, #330818) + * Build-Depend on libxaw8-dev; removed the xlibs-dev fallback for libxt-dev. + * Fix a couple of (pedantic) compiler warnings. + * Set the default MIDI sequencer device no. to 0 (was -1). + * Man page: fixed some unquoted hyphens, replaced "--" with an em dash, and + removed some unnecessary hyphens. + * Updated the FSF address in the copyright file. + * Remove obsolete DEB_BUILD_OPTIONS check in debian/rules. + * Remove -m486 from CFLAGS in the makefile. + * Don't link with libice6, libsm6, libxmu6 or libxext6. + Linking with LDFLAGS="-Wl,--as-needed" showed that they're not needed. + + -- Darren Salt Mon, 10 Oct 2005 19:05:04 +0100 + +playmidi (2.4debian-3) unstable; urgency=high + + * Fix a possible buffer overflow in command line handling of gzipped MIDI + files. (CAN-2005-0020) + * Handle filenames with spaces. + * Don't crash if gzip returns an error (when checking the file). + * Added debconf translations: + - Japanese (closes: #290138) + - Catalan + + -- Darren Salt Fri, 14 Jan 2005 23:07:38 +0000 + +playmidi (2.4debian-2) unstable; urgency=low + + * Modify build-depends to be more specific than xlibs-dev (for XFree86 4.3). + * Bump standards to 3.6.1. + * awesfx is back; no need to remove Suggests:. Closes: #215686 + + -- Darren Salt Fri, 02 Apr 2004 20:35:49 +0100 + +playmidi (2.4debian-1) unstable; urgency=low + + * Removed bohemian.mid from tarball; version number changed accordingly. + Added bach-invention-01.mid (from http://www.mutopiaproject.org/). + Closes: #132416 + * Grabbed a patch to remove the assumption that HZ = 100. Closes: #230740 + * Apply skew (-t) to the stop-if-silent-for-40s check. Closes: #230747 + + -- Darren Salt Fri, 30 Jan 2004 12:52:10 +0000 + +playmidi (2.4-6) unstable; urgency=low + + * Suggest awesfx (for SB AWE, Live, probably also Audigy). + * Added French templates translation. Closes: #198432 + * openprojects.net is dead. Pretend that it was downloaded from + sourceforge. + * Man page: + - note that splaymidi isn't built; + - mention SB Live; + - correct capitalisation of MIDI. + * Bump standards to 3.6.0. + + -- Darren Salt Tue, 19 Aug 2003 18:33:12 +0100 + +playmidi (2.4-5) unstable; urgency=low + + * Change of maintainer. Closes: #120021 + * Bumped Standards-Version to 3.5.9. + * Output help text to stdout, not stderr. Closes: #40133 + * Recognise --help (and -H). + * Don't skip all repeated lines. Closes: #141702 + (I'm going with Helge Kreutzmann's suggestion of skipping repeated + 'any' and 'copyright' text for now.) + * Don't truncate the playing of one file if there are more to play. + * Don't append ".mid" to the filename if it's already there. + * From Helge Kreutzmann: + - Fix some compile-time warnings. + - Report of type-casting issues on 64-bit CPUs. + - Updates to the man page and the --help text. + * Fix 'register' variables with implicit types. (Helge Kreutzmann) + * Error-reporting improvements. + * No longer build splaymidi. + * Converted templates to po-debconf format. + * Updated debian/rules (deprecated "debug", new "noopt"). + + -- Darren Salt Tue, 22 Apr 2003 21:32:21 +0100 + +playmidi (2.4-4) unstable; urgency=low + + * QA upload. + * Add German debconf translation (thanks, Sebastian Feltel and Christian + Kurz; closes: #130084). + * Add Russian debconf translation (thanks, Ilgiz Kalmetev; + closes: #137678). + * Seneca Cunningham: + - Null-terminate filenames in playlist display (closes: #138822). + - Use line-drawing functions rather than box-drawing characters for + better display in xterms (closes: #138993). + + -- Colin Watson Fri, 29 Mar 2002 16:11:20 +0000 + +playmidi (2.4-3) unstable; urgency=low + + * QA upload. + * playmidi.c: Allocate enough space for appending ".mid" to filenames + (thanks, Seneca Cunningham; closes: #134299). + * playmidi.1: Use .sp rather than blank lines, and close the list of + options properly (closes: #132419). + + -- Colin Watson Mon, 25 Feb 2002 01:46:50 +0000 + +playmidi (2.4-2) unstable; urgency=high + + * Disable splaymidi on alpha as svgalib no longer builds there. + Closes: #123140. + + -- Matej Vela Mon, 10 Dec 2001 06:59:40 +0100 + +playmidi (2.4-1) unstable; urgency=low + + * QA upload. + * New upstream version. + * Switched to debconf and debhelper 3. + * Configure: Allow interactive use again. + * Configure, playmidi.h-dist: Define PATCH_PATH3 directly in the latter + (the former didn't prompt for it anyway). + * XPlaymidi.ad: Use class names and set border color. Closes: #71167. + * io_ncurses.c: Corrected a B# to A# and a Gb to Ab. Closes: #97348. + * debian/changelog: Removed obsolete Emacs local variables. + * debian/copyright: Updated upstream URL and e-mail. + * debian/lintian: Override warning about splaymidi being setuid. + * debian/menu: Useless since xplaymidi requires file name arguments; + removed. Closes: #80735. + * debian/preinst: Removed pre-hamm compatibility code for transition to + /etc/playmidi. + * Conforms to Standards version 3.5.6: + * Added build dependencies. + * debian/copyright: Refer to /usr/share/common-licenses/GPL. + * debian/rules: + * Install xplaymidi into /usr rather than /usr/X11R6. + * Support the `debug' build option. + + -- Matej Vela Sun, 25 Nov 2001 15:55:49 +0100 + +playmidi (2.3-26) unstable; urgency=low + + * Include NMU by Arto Jantunen. Closes: Bug#89946 + * Orphan package + + -- Rich Sahlender Sun, 18 Nov 2001 18:23:46 -0500 + +playmidi (2.3-25.1) unstable; urgency=low + + * NMU to fix debian/rules and the upstream Makefile to install defaults + to /etc/X11/app-defaults (Closes: #86285) + * Converted from suidmanager to dpkg-statoverride + * Made /etc/X11/app-defaults/XPlaymidi a conffile as policy dictates + + -- Arto Jantunen Fri, 16 Mar 2001 21:48:04 +0200 + +playmidi (2.3-25) frozen unstable; urgency=low + + * Fix Makefile to include DESTDIR on install of Xplaymidi.ad. Closes: + Bug#60524. + + -- Rich Sahlender Mon, 20 Mar 2000 10:48:43 -0500 + +playmidi (2.3-24) frozen unstable; urgency=low + + * Rebuild adding svgalib-dummyg1 which was missing from depends. + Closes Bug#59142, Bug#59387. + + -- Rich Sahlender Wed, 1 Mar 2000 22:54:29 -0500 + +playmidi (2.3-23) frozen unstable; urgency=low + + * New Maintainer + * Update old packaging to current debhelper + * ncurses/curses.h no longer exists, use just curses.h + * Apply patch from Colin Phipps to modify setuid + handling in splaymidi. Closes: Bug#57020 + * Patch from Roman Hodek Roman.Hodek@informatik.uni-erlangen.de to + only install splaymidi on platforms supporting svgalib. Closes: + Bug#58874 + + + -- Rich Sahlender Tue, 22 Feb 2000 10:04:44 -0500 + +playmidi (2.3-22) frozen unstable; urgency=low + + * Rebuilt against libncurse4 for slink. + + -- Steve McIntyre Sat, 31 Oct 1998 09:44:14 +0000 + +playmidi (2.3-21) unstable; urgency=low + + * Added path to Configure in the Makefile. Fixes Bug#26395. + + -- Steve McIntyre Sat, 05 Sep 1998 00:14:14 +0100 + +playmidi (2.3-20) unstable; urgency=low + + * Rebuilt so svgalib-dummy makes it into the depends. Fixes Bug#25986. + + -- Steve McIntyre Sat, 22 Aug 1998 10:33:34 +0100 + +playmidi (2.3-19) unstable; urgency=low + + * Removed spurious -m486 from make CFLAGS that breaks non-i386 compilation. Fixes Bug#25767. + + -- Steve McIntyre Sun, 16 Aug 1998 23:46:04 +0100 + +playmidi (2.3-18) unstable; urgency=low + + * Made preinst more defensive - only try to move old config files if they actually exist! Fixes bug #23338. + + -- Steve McIntyre Wed, 10 Jun 1998 02:15:08 +0100 + +playmidi (2.3-17) unstable; urgency=low + + * Updated FSF address in copyright file. + + -- Steve McIntyre Sat, 14 Mar 1998 21:19:37 -0000 + +playmidi (2.3-16) unstable; urgency=low + + * Renamed upstream changelog to suit policy. Fixes #16907. + + -- Steve McIntyre Sun, 11 Jan 1998 03:33:37 -0000 + +playmidi (2.3-15) unstable; urgency=low + + * Fixed stupid bug from the config move into /etc/playmidi. Fixes bugs #16216,16333. + * Reworded postinst questions to be less confusing. Fixes #16263. + + -- Steve McIntyre Fri, 09 Jan 1998 00:37:25 -0000 + +playmidi (2.3-14) unstable; urgency=low + + * Moved config files to new subdirectory /etc/playmidi. Fixes bug#15957 + + -- Steve McIntyre Tue, 16 Dec 1997 00:01:14 -0000 + +playmidi (2.3-13) unstable; urgency=low + + * Recompiled for libc6. + * X dependencies fixed, to fix bugs 12644,12905. + * Now registers with mime-support, fixes bug #12227. + * Should now build using fakeroot. + + -- Steve McIntyre Sun, 14 Dec 1997 23:09:44 -0000 + +playmidi (2.3-12) unstable; urgency=low + + * Fixed silly typo in Readme.Debian. + + -- Steve McIntyre Thu, 06 Feb 1997 00:03:11 -0000 + +playmidi (2.3-11) unstable; urgency=low + + * Removed silly menu entry for xplaymidi. + * Added Readme.Debian doc file to give locations for GUS patches (Bug#7122) + * Added extra GUS patch location /var/lib/gus-patches + + -- Steve McIntyre Wed, 05 Feb 1997 10:03:11 -0000 + +playmidi (2.3-10) unstable; urgency=low + + * Moved symlink for xplaymidi man page into /usr/X11R6/man/man1. + * Added menu entry for xplaymidi. + + -- Steve McIntyre Thu, 30 Jan 1997 20:49:15 -0000 + +playmidi (2.3-9) unstable; urgency=low + + * New maintainer + + -- Steve McIntyre Wed, 29 Jan 1997 22:56:15 -0000 + +playmidi (2.3-8) unstable; urgency=low + + * Added links from xplaymidi.1 and splaymidi.1 to playmidi.1 (#6355) + * Routine update of debian/rules: + Use build-stamp instead of build. + + -- Joey Hess Wed, 1 Jan 1997 14:36:15 -0500 + +playmidi (2.3-7) unstable; urgency=low + + * Rebuilt because last version was rejected becuase of a bogus + playmidi_2.3.tar.gz file. + + -- Joey Hess Sat, 28 Dec 1996 19:39:20 -0500 + +playmidi (2.3-6) unstable; urgency=low + + * Routine update of debian/rules: + New email address. + + -- Joey Hess Tue, 24 Dec 1996 17:14:33 -0500 + +playmidi (2.3-5) unstable; urgency=low + + * Added XPlaymidi.ad to the package. (#5870) + + -- Joey Hess Sun, 8 Dec 1996 23:42:36 -0500 + +playmidi (2.3-4) unstable; urgency=low + + * Routine update of debian/rules. + * Recompiled to use the fm synth by default, instead of the an external + midi device, since most people will want to use it this way. (#5871) + * Added example midi files to package. + + -- Joey Hess Sun, 8 Dec 1996 23:22:03 -0500 + +playmidi (2.3-3) unstable; urgency=low + + * Made patch files in /etc be conffiles. + * Fixed svgalib dependancy by rebuilding. + + -- Joey Hess Sun, 3 Nov 1996 14:39:47 -0500 + +playmidi (2.3-2) unstable; urgency=low + + * Routine update of debian/rules (now uses debmake). + * Stripped all binaries. + + -- Joey Hess Sun, 27 Oct 1996 13:50:44 -0500 + +playmidi (2.3-1) unstable; urgency=low + + * First release. + + -- Joey Hess Mon, 21 Oct 1996 15:36:21 -0400 --- playmidi-2.4debian.orig/debian/compat +++ playmidi-2.4debian/debian/compat @@ -0,0 +1 @@ +5 --- playmidi-2.4debian.orig/debian/config +++ playmidi-2.4debian/debian/config @@ -0,0 +1,17 @@ +#!/bin/sh -e + +. /usr/share/debconf/confmodule + +options=`cat /etc/playmidi/playmidi.conf 2> /dev/null || true` +if dpkg --compare-versions "$2" lt-nl 2.4-1; then + # Pre-debconf compatibility. + if [ "$options" != unconfigured ]; then + db_set playmidi/options "$options" + db_fset playmidi/options seen true + fi +else + db_set playmidi/options "$options" +fi + +db_input medium playmidi/options || true +db_go --- playmidi-2.4debian.orig/debian/control +++ playmidi-2.4debian/debian/control @@ -0,0 +1,20 @@ +Source: playmidi +Section: sound +Priority: optional +Maintainer: Debian QA Group +Standards-Version: 3.9.3 +Build-Depends: debhelper (>= 4.1.16), libncurses5-dev | libncurses-dev, libxaw7-dev, libxt-dev + +Package: playmidi +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: ${shlibs:Recommends} +Conflicts: suidmanager (<< 0.50) +Suggests: awesfx +Description: MIDI player + Playmidi is a MIDI file player that will play back using FM, GUS, + SoundBlaster or external MIDI. It also supports Creative Music Files + (CMF), Microsoft RIFF (RMI) files and large MIDI archives from games + such as Ultima 7. + . + The player may be used with a text interface or a graphical interface. --- playmidi-2.4debian.orig/debian/copyright +++ playmidi-2.4debian/debian/copyright @@ -0,0 +1,30 @@ +This package was debianized by Rich Sahlender on +Tue, 22 Feb 2000 10:04:44 -0500. + +It was downloaded from http://sourceforge.net/projects/playmidi/ + (not strictly true, but http://playmidi.openprojects.net/ is dead) + +Upstream Author: + +Copyright: + © 1994-2009 Nathan I Laredo + GTK interface (c) Nathan Laredo, Elliot Lee + +Licence: + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin St., Fifth Floor, Boston, MA 02110-1301, USA. + +On Debian systems, the complete text of the GNU General Public License +can be found in `/usr/share/common-licenses/GPL'. --- playmidi-2.4debian.orig/debian/lintian +++ playmidi-2.4debian/debian/lintian @@ -0,0 +1 @@ +playmidi: setuid-binary usr/bin/splaymidi 4755 root/root --- playmidi-2.4debian.orig/debian/midi/bach-invention-01.mid.uue +++ playmidi-2.4debian/debian/midi/bach-invention-01.mid.uue @@ -0,0 +1,94 @@ +M351H9`````8``0`#`8!-5')K```!$@#_`2=#5!O +M;F0@,2XV+C$P("`@("`@("`@("``_P$Z1V5N97)A=&5D(&%U=&]M871I8V%L +M;'D@8GDZ($=.52!,:6QY4&]N9"`Q+C8N,3`@("`@("`@("`@(`#_`3QA="!3 +M870@36%Y(#$W(#$T.C4T.C$R(#(P,#,@("`@("`@("`@("`@("`@("`@("`@ +M("`@("`@("`@("``_P%69G)O;2!M=7-I8V%L(&1E9FEN:71I;VXZ("]H;VUE +M+V-H\n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +#, fuzzy +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opcions per a playmidi quan aquest és cridat des de MIME?" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" + +#. Type: string +#. Description +#: ../templates:2001 +#, fuzzy +#| msgid "" +#| "If you have an external MIDI device or an Ensoniq SoundScape, Turtle " +#| "Beach WaveFront or WaveBlaster sound card, use `-e'." +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +"Si teniu un dispositiu de MIDI extern o una tarja de so Ensoniq SoundScape, " +"Turtle Beach, WaveFront o WaveBlaster, feu servir «-e»." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" --- playmidi-2.4debian.orig/debian/po/cs.po +++ playmidi-2.4debian/debian/po/cs.po @@ -0,0 +1,76 @@ +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-12-08 14:47+0100\n" +"Last-Translator: Miroslav Kure \n" +"Language-Team: Czech \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Parametry pro program playmidi spuštěný skrze MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Balík playmidi vytvoří MIME záznam, který umožní poštovním programům a jiným " +"aplikacím přehrávat MIDI soubory." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Aby playmidi fungoval správně, budete možná muset pro daný hardware nastavit " +"speciální parametry." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': externí MIDI zařízení, zvukové karty Ensoniq SoundScape,\n" +" Turtle Beach WaveFront nebo WaveBlaster;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Většina ostatních karet nevyžaduje žádné speciální nastavení a měla by " +"fungovat i když zde nic nezadáte. Toto nastavení je uloženo v souboru /etc/" +"playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/da.po +++ playmidi-2.4debian/debian/po/da.po @@ -0,0 +1,67 @@ +# Danish translation playmidi. +# Copyright (C) 2012 playmidi & nedenstående oversættere. +# This file is distributed under the same license as the playmidi package. +# Joe Hansen , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2012-01-05 17:34+0000\n" +"Last-Translator: Joe Hansen \n" +"Language-Team: Danish \n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Indstillinger for playmidi når opstartet via MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Pakken playmidi opsætter et MIME-punkt, som tillader postbrugeragenter og " +"andre programmer at afspille MIDI-filer." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"For at playmidi kan virke korrekt, skal du måske angive specifikke " +"indstillinger for dit maskinel (hardware):" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" »-a«: Sound Blaster AWE32;\n" +" »-e«: ekstern MIDI-enhed, Ensoniq SoundScape-, Turtle-\n" +" Beach WaveFront- elller WaveBlaster-lydkort;\n" +" »-g«: Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"De fleste andre kort kræver ingen specifikke indstillinger og vil fungere " +"med et tomt felt. Denne indstilling placeres i /etc/playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/de.po +++ playmidi-2.4debian/debian/po/de.po @@ -0,0 +1,68 @@ +# Translation of playmidi debconf templates to German +# Copyright (C) Sebastian Feltel , 2002. +# Copyright (C) Helge Kreutzmann , 2007. +# This file is distributed under the same license as the playmidi package. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-8\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-29 21:38+0100\n" +"Last-Translator: Helge Kreutzmann \n" +"Language-Team: de \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Optionen für den Playmidi-Start über MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Das Playmidi-Paket richtet einen MIME-Eintrag ein, der es E-Mailprogrammen " +"und anderen Anwendungen erlaubt, MIDI-Dateien abzuspielen." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Damit Playmidi korrekt funktioniert, müssen Sie eventuell " +"hardwarespezifische Optionen setzen:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': externes MIDI-Gerät, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront oder WaveBlaster-Soundkarte;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Die meisten anderen Karten benötigen keine speziellen Optionen und " +"funktionieren, wenn dieses Feld leer bleibt. Diese Einstellung wird in /etc/" +"playmidi/playmidi.conf gespeichert." --- playmidi-2.4debian.orig/debian/po/es.po +++ playmidi-2.4debian/debian/po/es.po @@ -0,0 +1,96 @@ +# playmidi po-debconf translation to spanish +# This file is distributed under the same license as the playmidi package. +# +# Changes: +# - Initial translation +# Jose Ignacio Méndez González , 2006. +# - Revision +# Javier Fernández-Sanguino , 2006 +# +# +# Traductores, si no conoce el formato PO, merece la pena leer la +# documentación de gettext, especialmente las secciones dedicadas a este +# formato, por ejemplo ejecutando: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Equipo de traducción al español, por favor lean antes de traducir +# los siguientes documentos: +# +# - El proyecto de traducción de Debian al español +# http://www.debian.org/intl/spanish/ +# especialmente las notas y normas de traducción en +# http://www.debian.org/intl/spanish/notas +# +# - La guía de traducción de po's de debconf: +# /usr/share/doc/po-debconf/README-trans +# o http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Si tiene dudas o consultas sobre esta traducción consulte con el último +# traductor (campo Last-Translator) y ponga en copia a la lista de +# traducción de Debian al español () +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-6\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-12-05 00:11+0100\n" +"Last-Translator: Javier Fernández-Sanguino \n" +"Language-Team: Debian Spanish \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opciones para playmidi cuando se ejecute a través de MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"El paquete playmidi introduce una entrada MIME que permite reproducir " +"ficheros MIDI a los clientes de correo electrónico así como a otras " +"aplicaciones." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Para que playmidi pueda funcionar correctamente puede tener que configurar " +"opciones específicas del hardware:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32,\n" +" '-e': dispositivo MIDI externo o una tarjeta de sonido Ensoniq SoundScape,\n" +" Turtle Beach, WaveFront o WaveBlaster use,\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"En el caso de otras tarjeas no es necesario generalmente ninguna opción " +"específica y funcionarán si se deja este campo en blanco. Este valor se " +"almacena en /etc/playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/eu.po +++ playmidi-2.4debian/debian/po/eu.po @@ -0,0 +1,69 @@ +# translation of playmidi-eu.po to Euskara +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Piarres Beobide , 2007. +msgid "" +msgstr "" +"Project-Id-Version: playmidi-eu\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-28 12:14+0000\n" +"Last-Translator: Piarres Beobide \n" +"Language-Team: Euskara \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Playmidi-ren aukerak MIME bidez deitzen denean:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Playmidi paketeak MIME sarrera bat konfiguratzen du posta bezero eta beste " +"aplikazioek MIDI fitxategia erreproduzitu ahal izateko." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Playmidi-k behar bezala funtzionatzeko hardware-zehatzeko aukerak ezarri " +"behar dituzu agian:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': kanpo MIDI gailua, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront edo WaveBlaster soinu txartela;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Beste txarteletako gehienek ez dute aukera zehatzik behar eta ondo " +"funtzionatuko dute eremu hau zurian utziaz. Ezarpen hau /etc/playmidi/" +"playmidi.conf fitxategian gordetzen da." --- playmidi-2.4debian.orig/debian/po/fi.po +++ playmidi-2.4debian/debian/po/fi.po @@ -0,0 +1,65 @@ +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-9\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-30 14:19+0200\n" +"Last-Translator: Esko Arajärvi \n" +"Language-Team: Finnish \n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Finnish\n" +"X-Poedit-Country: Finland\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Playmidin valitsimet kutsuttaessa MIMEn kautta:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Paketti playmidi asettaa MIME-kentän, joka antaa sähköpostiohjelmille ja " +"muille sovelluksille mahdollisuuden soittaa MIDI-tiedostoja." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Jotta playmidi toimisi oikein, tulee joitain laitekohtaisia valitsimia ehkä " +"asettaa:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" ”-a”: Sound Blaster AWE32\n" +" ”-e”: ulkoinen MIDI-laite, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront tai WaveBlaster-äänikortti\n" +" ”-g”: Gravis Ultrasound" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Useimmat muut kortit eivät vaadi erityisiä valitsimia ja toimivat, kun tämä " +"kenttä on jätetty tyhjäksi. Asetus säilytetään tiedostossa /etc/playmidi/" +"playmidi.conf." --- playmidi-2.4debian.orig/debian/po/fr.po +++ playmidi-2.4debian/debian/po/fr.po @@ -0,0 +1,68 @@ +# Translation of playmidi debconf templates to French +# Copyright (C) 2007 Michel Grentzinger +# This file is distributed under the same license as the playmidi package. +# +# Michel Grentzinger , 2007. +msgid "" +msgstr "" +"Project-Id-Version: playmidi_2.4-5\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-30 21:53+0100\n" +"Last-Translator: Michel Grentzinger \n" +"Language-Team: French \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Options de playmidi lorsqu'il est lancé via MIME :" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Le paquet playmidi définit une entrée MIME permettant aux clients de " +"courrier et aux autres applications de jouer des fichiers MIDI." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Afin que playmidi puisse fonctionner correctement, il peut être nécessaire " +"de définir des options matérielles spécifiques :" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" « -a » : SoundBlaster AWE32 ;\n" +" « -e » : périphérique MIDI externe, carte son Ensoniq SoundScape, Turtle\n" +" Beach WaveFront ou WaveBlaster ;\n" +" « -g » : Gravis UltraSound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"La plupart des autres cartes ne nécessitent pas d'options spécifiques et " +"fonctionneront avec une valeur vide pour ce champ. Ce paramètre est conservé " +"dans /etc/playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/gl.po +++ playmidi-2.4debian/debian/po/gl.po @@ -0,0 +1,67 @@ +# Galician translation of playmidi's debconf templates +# This file is distributed under the same license as the playmidi package. +# Jacobo Tarrio , 2007. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-28 19:26+0000\n" +"Last-Translator: Jacobo Tarrio \n" +"Language-Team: Galician \n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opcións para playmidi ao invocalo mediante MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"O paquete playmidi configura unha entrada MIME que permite aos lectores de " +"correo e outras aplicacións reproducir ficheiros MIDI." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Para que playmidi funcione correctamente, pode ter que establecer opcións " +"específicas do hardware:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" \"-a\": Sound Blaster AWE32;\n" +" \"-e\": dispositivo MIDI externo, tarxeta Ensoniq SoundScape,\n" +" Turtle Beach WaveFront ou WaveBlaster;\n" +" \"-g\": Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"A maioría das tarxetas non precisan de opcións específicas e han funcionar " +"con este campo baleiro. Esta configuración gárdase en /etc/playmidi/playmidi." +"conf." --- playmidi-2.4debian.orig/debian/po/it.po +++ playmidi-2.4debian/debian/po/it.po @@ -0,0 +1,68 @@ +# Italian translation of the playmidi debconf templates +# This file is distributed under the same license as the playmidi package +# Copyright (C) 2007 Free Software Foundation, Inc. +# Luca Monducci , 2007. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4 debconf templates\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-12-01 13:33+0100\n" +"Last-Translator: Luca Monducci \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opzioni per playmidi quando richiamato tramite MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Questo pacchetto imposta un tipo MIME che consente ai mail user agent e ad " +"altre applicazioni di riprodurre file MIDI." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Per far funzionare correttamente playmidi potrebbe essere necessario " +"impostare delle opzioni legate all'hardware:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': dispositivo MIDI esterno, schede sonore Ensoniq SoundScape,\n" +" Turtle Beach WaveFront o WaveBlaster;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"La maggior parte delle schede non richiede opzioni particolari e funziona " +"lasciando vuoto questo campo. Questa impostazione viene salvata in /etc/" +"playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/ja.po +++ playmidi-2.4debian/debian/po/ja.po @@ -0,0 +1,76 @@ +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-9\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2008-01-30 21:26+0900\n" +"Last-Translator: Hideki Yamane (Debian-JP) \n" +"Language-Team: Japanese \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "MIME を利用して playmidi を起動した場合のオプション:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"メールソフト (MUA) や他のアプリケーションが MIDI ファイルを演奏できるように、" +"playmidi パッケージは MIME エントリを設定します。" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"playmid をきちんと動かすには、ハードウェア固有オプションの設定が必要になりま" +"す:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': 外部 MIDI デバイス、Ensoniq SoundScape, Turtle\n" +" Beach WaveFront または WaveBlaster サウンドカード;\n" +" '-g': Gravis Ultrasound" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"大抵の場合、他のカードは特にオプションが必要なく、この値を入力しなくても動作" +"します。この設定は /etc/playmidi/playmidi.conf に保存されています。" --- playmidi-2.4debian.orig/debian/po/nb.po +++ playmidi-2.4debian/debian/po/nb.po @@ -0,0 +1,69 @@ +# translation of nb.po to +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Bjørn Steensrud , 2008. +msgid "" +msgstr "" +"Project-Id-Version: nb\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2008-07-02 16:31+0200\n" +"Last-Translator: Bjørn Steensrud \n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Innstilling for playmidi når det blir kalt opp gjennom MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Pakka playmidi oppretter en MIME-oppføring som e-postlesere og andre " +"programmer kan bruke til å kjøre MIDI-filer." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"For at playmidi skal virke riktig kan det hende at du må sette opp noen " +"innstillinger som er avhengig av maskinvaren:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': ekstern MIDI-enhet, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront eller WaveBlaster lydkort;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"De fleste andre lydkort trenger ikke noen spesiell innstilling og virker " +"uten at noe er oppgitt i dette feltet. Innstillingen lagres i /etc/playmidi/" +"playmidi.conf." --- playmidi-2.4debian.orig/debian/po/nl.po +++ playmidi-2.4debian/debian/po/nl.po @@ -0,0 +1,69 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-12-09 13:56+0100\n" +"Last-Translator: Bart Cornelis \n" +"Language-Team: debian-l10n-dutch \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Dutch\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opties die playmidi dient te gebruiken wanneer via MIME aangeroepen:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Het playmidi-pakket stelt een MIME-ingang in die MUA's (mail user agents) en " +"andere programma's toelaat om MIDI-bestanden af te spelen." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Opdat playmidi juist zou werken kan het noodzakelijk zijn om hardware-" +"specifieke opties mee te geven:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': extern MIDI-apparaat, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront of WaveBlaster geluidskaart;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"De meeste andere kaarten hebben geen specifieke opties nodig en werken prima " +"als u dit leeg laat. Deze instelling wordt opgeslagen in /etc/playmidi/" +"playmidi.conf." --- playmidi-2.4debian.orig/debian/po/pl.po +++ playmidi-2.4debian/debian/po/pl.po @@ -0,0 +1,71 @@ +# Translation of playmidi debconf templates to Polish. +# Copyright (C) 2007 +# This file is distributed under the same license as the playmidi package. +# +# Michał Kułach , 2012. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2012-03-22 23:49+0100\n" +"Last-Translator: Michał Kułach \n" +"Language-Team: Polish \n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.2\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opcje playmidi, gdy zostanie przywołany przez MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Pakiet playmidi ustawia wpis MIME pozwalający programom pocztowym i innym " +"aplikacjom na odtwarzanie plików MIME." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Aby playmidi działał prawidłowo, może być konieczne ustawienie pewnych opcji " +"w zależności od posiadanego sprzętu:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" \"-a\": Sound Blaster AWE32;\n" +" \"-e\": zewnętrzne urządzenie MIDI, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront lub karta dźwiękowa WaveBlaster;\n" +" \"-g\": Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Większość innych kart nie wymaga podawania specjalnych opcji i będzie " +"działało prawidłowo z poniższym polem pozostawionym pustym. Niniejsze " +"ustawienie jest przechowywane w pliku /etc/playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/pt.po +++ playmidi-2.4debian/debian/po/pt.po @@ -0,0 +1,69 @@ +# translation of playmidi to Portuguese +# Copyright (C) 2007 Américo Monteiro +# This file is distributed under the same license as the playmidi package. +# +# Américo Monteiro , 2007. +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-9\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-12-02 09:52+0000\n" +"Last-Translator: Américo Monteiro \n" +"Language-Team: Portuguese \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opções para o playmidi quando invocado através de MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"O pacote playmidi configura uma entrada MIME que permite a agentes de " +"utilização de mail e outras aplicações tocarem ficheiros MIDI." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Para que o playmidi funcione perfeitamente, você poderá ter que configurar " +"opções específicas de hardware:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': dispositivo MIDI externo, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront ou placa de som WaveBlaster;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"A maioria das placas não requerem opções específicas e irão funcionar com " +"este campo deixado vazio. Esta configuração é guardada em /etc/playmidi/" +"playmidi.conf." --- playmidi-2.4debian.orig/debian/po/pt_BR.po +++ playmidi-2.4debian/debian/po/pt_BR.po @@ -0,0 +1,69 @@ +# Debconf translations for playmidi. +# Copyright (C) 2012 THE playmidi'S COPYRIGHT HOLDER +# This file is distributed under the same license as the playmidi package. +# Adriano Rafael Gomes , 2012, 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-10\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2013-08-04 20:20-0300\n" +"Last-Translator: Adriano Rafael Gomes \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Opções para o playmidi quando invocado através de MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"O pacote playmidi configura uma entrada MIME que permite a programas " +"clientes de e-mail e a outros aplicativos tocar arquivos MIDI." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Para que o playmidi funcione corretamente, pode ser preciso configurar " +"opções específicas para o hardware:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': dispositivo MIDI externo, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront ou placa de som WaveBlaster;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"A maioria das outras placas não requer opções específicas e funcionará com " +"esse campo deixado em branco. Essa configuração é mantida em /etc/playmidi/" +"playmidi.conf." --- playmidi-2.4debian.orig/debian/po/ru.po +++ playmidi-2.4debian/debian/po/ru.po @@ -0,0 +1,80 @@ +# translation of ru.po to Russian +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans# +# Developers do not need to manually edit POT or PO files. +# +# Ilgiz Kalmetev , 2002. +# Yuri Kozlov , 2007. +msgid "" +msgstr "" +"Project-Id-Version: 2.4debian-9\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-29 20:47+0300\n" +"Last-Translator: Yuri Kozlov \n" +"Language-Team: Russian \n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Параметры для playmidi при вызове через MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Этот пакет устанавливает запись MIME, которая позволяет вашим почтовым " +"клиентам и другим приложениям воспроизводить файлы MIDI." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"Для правильной работы playmidi, вам может потребоваться указать параметры " +"вашей звуковой карты:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': внешнее устройство MIDI, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront или звуковая карта WaveBlaster;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Большинству других карт не требуется дополнительных параметров, и они будут " +"работать, если ничего не указывать. Данная настройка сохранится в файле /etc/" +"playmidi/playmidi.conf." --- playmidi-2.4debian.orig/debian/po/sv.po +++ playmidi-2.4debian/debian/po/sv.po @@ -0,0 +1,76 @@ +# translation of playmidi_2.4debian-9_sv.po to swedish +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# Developers do not need to manually edit POT or PO files. +# +# Martin Bagge , 2008. +msgid "" +msgstr "" +"Project-Id-Version: playmidi_2.4debian-9_sv\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2008-06-30 21:20+0200\n" +"Last-Translator: Martin Bagge \n" +"Language-Team: swedish \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "Inställningar för playmidi när det startas genom MIME:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"Paketet playmidi ställer in MIME-fältet för MIDI-filer så att e-post-visare " +"och andra aplikationer kan spela MIDI-filer" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"För att playmidi ska fungera korrekt så kan du behöva ställa in några " +"hårdvaruspecifika-alternativ:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': extern MIDI-enhet, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront eller WaveBlaster-ljudkort;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"De flesta andra kort behöver inga särskilda inställnignar för att fungera, " +"lämna i så fall detta fält tomt. Inställningen sparas i /etc/playmidi/" +"playmidi.conf." --- playmidi-2.4debian.orig/debian/po/templates.pot +++ playmidi-2.4debian/debian/po/templates.pot @@ -0,0 +1,57 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" --- playmidi-2.4debian.orig/debian/po/tr.po +++ playmidi-2.4debian/debian/po/tr.po @@ -0,0 +1,68 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Mert Dirik , 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2008-07-03 19:14+0200\n" +"Last-Translator: Mert Dirik \n" +"Language-Team: Debian L10n Turkish \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "Options for playmidi when invoked through MIME:" +msgstr "MIME yoluyla çağrıldığında kullanılacak playmidi seçenekleri:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"The playmidi package sets up a MIME entry which allows mail user agents and " +"other applications to play MIDI files." +msgstr "" +"'playmidi' paketi posta istemcilerinin ve diğer uygulamaların MIDI " +"dosyalarını çalabilmesini sağlamak için bir MIME girdisi kuracak." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"In order for playmidi to work properly, you may need to set hardware-" +"specific options:" +msgstr "" +"'playmidi'nin düzgün çalışmasını sağlamak için donanıma özgü bazı " +"seçenekleri ayarlamanız gerekebilir:" + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +" '-a': Sound Blaster AWE32;\n" +" '-e': external MIDI device, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront or WaveBlaster sound card;\n" +" '-g': Gravis Ultrasound." +msgstr "" +" '-a': Sound Blaster AWE32;\n" +" '-e': harici MIDI aygıtı, Ensoniq SoundScape, Turtle\n" +" Beach WaveFront ya da WaveBlaster ses kartı;\n" +" '-g': Gravis Ultrasound." + +#. Type: string +#. Description +#: ../templates:2001 +msgid "" +"Most other cards require no specific options and will work with this field " +"left blank. This setting is kept in /etc/playmidi/playmidi.conf." +msgstr "" +"Diğer kartların çoğu özel bir seçenek gerektirmez ve bu alanı boş bıraksanız " +"bile çalışır. Bu ayar /etc/playmidi/playmidi.conf dosyasında tutulacak." --- playmidi-2.4debian.orig/debian/po/vi.po +++ playmidi-2.4debian/debian/po/vi.po @@ -0,0 +1,72 @@ +# Vietnamese translation for playmidi. +# Copyright © 2007 Free Software Foundation, Inc. +# Clytie Siddall , 2005-2007. +# +msgid "" +msgstr "" +"Project-Id-Version: playmidi 2.4debian-9\n" +"Report-Msgid-Bugs-To: Source: playmidi@packages.debian.org\n" +"POT-Creation-Date: 2007-11-28 08:20+0000\n" +"PO-Revision-Date: 2007-11-29 18:55+1030\n" +"Last-Translator: Clytie Siddall \n" +"Language-Team: Vietnamese /etc/playmidi/playmidi.conf +fi + +#DEBHELPER# --- playmidi-2.4debian.orig/debian/postrm +++ playmidi-2.4debian/debian/postrm @@ -0,0 +1,8 @@ +#!/bin/sh -e + +if [ "$1" = purge ]; then + rm -f /etc/playmidi/playmidi.conf + rmdir /etc/playmidi 2> /dev/null || true +fi + +#DEBHELPER# --- playmidi-2.4debian.orig/debian/rules +++ playmidi-2.4debian/debian/rules @@ -0,0 +1,92 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# This file is public domain software, originally written by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk + +#DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) +#ifeq ($(DEB_HOST_ARCH),i386) +#splaymidi := splaymidi +#endif + +debian/po/templates.pot: debian/templates + @debconf-updatepo + +build: build-stamp +build-stamp: debian/po/templates.pot + dh_testdir + echo 2 | $(MAKE) INCNC= INCAWE= playmidi xplaymidi $(splaymidi) + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp debian/xplaymidi.c debian/xplaymidi + $(MAKE) distclean + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs etc/X11/app-defaults etc/playmidi usr/bin \ + usr/lib/playmidi usr/share/doc/playmidi/examples \ + $(if $(splaymidi),usr/share/lintian/overrides) + install -m644 XPlaymidi.ad debian/playmidi/etc/X11/app-defaults/XPlaymidi + install -m644 drums.* std.* debian/playmidi/etc/playmidi + # compile xplaymidi wrapper + sh debian/xplaymidi.sh + install playmidi debian/xplaymidi $(splaymidi) debian/playmidi/usr/bin + install xplaymidi debian/playmidi/usr/lib/playmidi + set -e && cd debian/midi && find -type f | sed -e 's/\.uue$$//' | \ + while read i; do \ + perl -e 'undef $$/; $$file = <> or die; print unpack ("u", $$file) or die' \ + <$$i.uue >../../debian/playmidi/usr/share/doc/playmidi/examples/$$i; \ + done + -chmod 644 debian/midi/* +ifneq ($(splaymidi),) + install -m644 debian/lintian \ + debian/playmidi/usr/share/lintian/overrides/playmidi +endif + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installdebconf + dh_installdocs BUGS QuickStart README.1ST + dh_installexamples *.mid + dh_installmenu + dh_installmime + dh_installman playmidi.1 + dh_installchangelogs + dh_link usr/share/man/man1/playmidi.1 \ + usr/share/man/man1/xplaymidi.1 \ + $(if $(splaymidi),usr/share/man/man1/playmidi.1 \ + usr/share/man/man1/splaymidi.1) + dh_strip + dh_compress + dh_fixperms +ifneq ($(splaymidi),) + chmod 4755 debian/playmidi/usr/bin/splaymidi +endif + dh_installdeb + dh_shlibdeps -ldebian/playmidi -- -dDepends debian/playmidi/usr/bin/playmidi -dRecommends debian/playmidi/usr/bin/xplaymidi +ifneq ($(splaymidi),) + perl -pi -e 's/svgalibg1(\s*\(.*?\))?/$$& | svgalib-dummyg1$$1/' \ + debian/playmidi.substvars +endif + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- playmidi-2.4debian.orig/debian/templates +++ playmidi-2.4debian/debian/templates @@ -0,0 +1,26 @@ +# These templates have been reviewed by the debian-l10n-english +# team +# +# If modifications/additions/rewording are needed, please ask +# debian-l10n-english@lists.debian.org for advice. +# +# Even minor modifications require translation updates and such +# changes should be coordinated with translators and reviewers. + +Template: playmidi/options +Type: string +_Description: Options for playmidi when invoked through MIME: + The playmidi package sets up a MIME entry which allows mail user agents + and other applications to play MIDI files. + . + In order for playmidi to work properly, you may need to set + hardware-specific options: + . + '-a': Sound Blaster AWE32; + '-e': external MIDI device, Ensoniq SoundScape, Turtle + Beach WaveFront or WaveBlaster sound card; + '-g': Gravis Ultrasound. + . + Most other cards require no specific options and will work with this + field left blank. This setting is kept in + /etc/playmidi/playmidi.conf. --- playmidi-2.4debian.orig/debian/toy.c.patch +++ playmidi-2.4debian/debian/toy.c.patch @@ -0,0 +1,42 @@ +--- playmidi-2.4.orig/toy.c ++++ playmidi-2.4/toy.c +@@ -98,7 +98,22 @@ + fd_set rdfs; + struct timeval tv, start, now, want; + +- while ((i = getopt(argc, argv, "c:p:wt:")) != -1) ++ while ((i = getopt(argc, argv, "c:p:wt:H-:")) != -1) ++ { ++ if (i == 'H') ++ { ++ error = -1; ++ break; ++ } ++ else if (i == '-') ++ { ++ if (optarg && !strcmp (optarg, "help")) ++ { ++ error = -1; ++ break; ++ } ++ fprintf (stderr, "%s: invalid option -- -\n", argv[0]); ++ } + switch (i) { + case 'c': + channel = atoi(optarg); +@@ -116,12 +131,13 @@ + error++; + break; + } ++ } + + if (error || argc - optind != 2) { +- fprintf(stderr, "usage: %s [-t semitones]" ++ printf( "usage: %s [-t semitones]" + " [-c channel] [-p program] [-wait] " + "inputfile.seq outputfile.seq\n", argv[0]); +- exit(1); ++ exit(error >= 0); + } + if ((seqfd = open(SEQUENCER_DEV, O_RDWR, 0)) < 0) { + perror("open " SEQUENCER_DEV); --- playmidi-2.4debian.orig/debian/xplaymidi.sh +++ playmidi-2.4debian/debian/xplaymidi.sh @@ -0,0 +1,40 @@ +#! /bin/sh + +exec 3>&1 +exec >debian/xplaymidi.c + +cat <<'EOF' +#include +#include + +int main (int argc, char **argv) +{ + static const char *const libs[] = { +EOF +objdump -p xplaymidi | \ +sed '/^ NEEDED/! d; s/^ NEEDED \+//; /^libc\.so\./ d' | \ +while read i; do + echo ' "'"$i"'",' +done +cat <<'EOF' + }; + int i; + for (i = 0; i < sizeof (libs) / sizeof (libs[0]); ++i) + { + void *so = dlopen (libs[i], RTLD_LAZY); + if (!so) + { + fputs ("xplaymidi: missing libraries - install the packages recommended by playmidi\n", stderr); + return 2; + } + dlclose (so); + } + execv ("/usr/lib/playmidi/xplaymidi", argv); + perror ("xplaymidi: "); + return 2; +} +EOF + +exec >&3 + +gcc -x c -o debian/xplaymidi debian/xplaymidi.c ${CFLAGS--O02 -g} -ldl --- playmidi-2.4debian.orig/io_gtk.c +++ playmidi-2.4debian/io_gtk.c @@ -86,14 +86,23 @@ x == 48 ? 7 : x == 56 ? 8 : x >= 96 && x <= 111 ? 9 : \ x == 127 ? 10 : 0) -void close_show(int error) +void close_show(int error, const char *file) { - gtk_exit(error); + if (errno) + { + if (file) + fprintf (stderr, "%s: %s\n", file, strerror (errno)); + else + fprintf (stderr, "%s\n", strerror (errno)); + } + if (error) + gtk_exit(error); } void ExitCallback(GtkWidget *w) { - close_show(0); + close_show(0,0); + exit (0); } void MaskCallback(GtkWidget *w) @@ -223,8 +232,8 @@ note = (data[0] & 0x7f); vel = (data[1] & 0x7f); if (cmd < 8 && cmd > 0) { - strncpy(textbuf, data, length < TEXTSIZE - 4 ? length : TEXTSIZE - 3); - textbuf[(length > TEXTSIZE + 2) ? TEXTSIZE - 2 : length] = '\0'; + textbuf[(length > TEXTSIZE - 4) ? TEXTSIZE - 4 : length] = '\0'; + strncpy(textbuf, data, length > TEXTSIZE - 4 ? TEXTSIZE - 4 : length); sprintf(TEXTBUF, "\n"); AppendText(textbuf); if (verbose > 2) --- playmidi-2.4debian.orig/io_ncurses.c +++ playmidi-2.4debian/io_ncurses.c @@ -14,23 +14,21 @@ Kelly Drive, Lackland AFB, TX 78236-5128, USA. *************************************************************************/ #include "playmidi.h" -#ifdef linux -#include -#else #include -#endif #include "gsvoices.h" #include #include +#include +#include char *metatype[7] = {"Text", "Copyright Notice", "Sequence/Track name", "Instrument Name", "Lyric", "Marker", "Cue Point"}; char *sharps[12] = /* for a sharp key */ -{"C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "B#", "B"}; +{"C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"}; char *flats[12] = /* for a flat key */ -{"C", "Db", "D", "Eb", "E", "F", "Gb", "G", "Gb", "A", "Bb", "B"}; +{"C", "Db", "D", "Eb", "E", "F", "Gb", "G", "Ab", "A", "Bb", "B"}; char *majflat[15] = /* name of major key with 'x' flats */ {"C", "F", "Bb", "Eb", "Ab", "Db", "Gb", "Cb", "Fb", "Bbb", "Ebb", "Abb", "Gbb", "Cbb", "Fbb"}; /* only first 8 defined by file format */ @@ -68,15 +66,25 @@ char textbuf[1024], **nn; int i, ytxt, karaoke; -void close_show(error) +void close_show(error,file) int error; +const char *file; { + int err = errno; if (graphics) { attrset(A_NORMAL); refresh(); endwin(); } - exit(error); + if (err) + { + if (file) + fprintf (stderr, "%s: %s\n", file, strerror (err)); + else + fprintf (stderr, "%s\n", strerror (err)); + } + if (error) + exit(error); } #define CHN (cmd & 0xf) @@ -137,9 +145,10 @@ case 'q': case 'Q': case 3: - close_show(0); - break; + close_show(0,0); + exit (0); default: + fprintf (stderr, "%d\n", ch); return 1; /* skip to next song */ break; } @@ -165,7 +174,9 @@ if (cmd < 8 && cmd > 0) { if (length > COLS) length = COLS; - if (cmd != 1 && strncmp(textbuf, data, length - 1) == 0) + if (length >= sizeof (textbuf)) + length = sizeof (textbuf) - 1; + if ((cmd == 1 || cmd == 2) && strncmp(textbuf, (const char *)data, length - 1) == 0) return; /* ignore repeat messages, "WinJammer Demo" etc. */ if (verbose) { printf("%s: ", metatype[cmd - 1]); @@ -187,10 +198,9 @@ if (*data == '@') /* karaoke info */ (data += 2, length -= 2); } - strncpy(textbuf, data, length < COLS - karaoke ? length : + strncpy(textbuf, (const char *)data, length < COLS - karaoke ? length : COLS - karaoke); - if (length < 1024) - textbuf[length] = 0; + textbuf[length] = 0; mvaddstr(ytxt, karaoke, textbuf); if (cmd == 1) { karaoke += strlen(textbuf); @@ -254,7 +264,7 @@ break; case MIDI_PITCH_BEND: { - register val = (VEL << 7) | NOTE; + register int val = (VEL << 7) | NOTE; if (graphics) { attrset(A_BOLD); @@ -295,33 +305,42 @@ } } -void init_show() +static void init_show_text (void) { char *tmp; + attrset(A_NORMAL); + mvprintw(0, 0, RELEASE " by Nathan Laredo"); + mvprintw(0, 40, "Now Playing:"); + mvprintw(1, 40, "[P]ause [N]ext [L]ast [O]ptions"); + mvvline(2, 12, ACS_VLINE, 16); /*ytxt - 2);*/ + mvhline(18 /*ytxt*/, 0, ACS_HLINE, 12); + mvaddch(18 /*ytxt*/, 12, ACS_LRCORNER); + mvprintw(1, 0, "00:00.0 - 00:00.0, %d track%c", ntrks, + ntrks > 1 ? 's' : ' '); + tmp = strrchr(filename, '/'); + strncpy(textbuf, (tmp == NULL ? filename : tmp + 1), COLS - 53); + if (strlen(textbuf) > COLS - 53) + textbuf[COLS - 53] = '\0'; + attrset(A_BOLD); + mvaddstr(0, 53, textbuf); + mvaddch(1, 41, 'P'); + mvaddch(1, 49, 'N'); + mvaddch(1, 56, 'L'); + mvaddch(1, 63, 'O'); + mvaddstr(0, 0, RELEASE); +} +void init_show() +{ nn = flats; ytxt = 18; karaoke = 0; if (graphics) { clear(); - attrset(A_NORMAL | A_ALTCHARSET); - mvprintw(0, 0, RELEASE " by Nathan Laredo"); - mvprintw(0, 40, "Now Playing:"); - mvprintw(1, 40, "[P]ause [N]ext [L]ast [O]ptions"); - mvaddstr(ytxt, 0, ";"); - mvprintw(1, 0, "00:00.0 - 00:00.0, %d track%c", ntrks, - ntrks > 1 ? 's' : ' '); + init_show_text (); + attrset(A_NORMAL); for (i = 0; i < 16; i++) - mvprintw(i + 2, 0, "Channel %2d ", i + 1); - tmp = strrchr(filename, '/'); - strncpy(textbuf, (tmp == NULL ? filename : tmp + 1), COLS - 53); - attrset(A_BOLD); - mvaddstr(0, 53, textbuf); - mvaddch(1, 41, 'P'); - mvaddch(1, 49, 'N'); - mvaddch(1, 56, 'L'); - mvaddch(1, 63, 'O'); - mvaddstr(0, 0, RELEASE); + mvprintw(i + 2, 0, "Channel %2d", i + 1); refresh(); } else if (verbose) { printf("** Now Playing \"%s\"\n", filename); @@ -330,11 +349,31 @@ } } +static void resize_signal_handler (int sig) +{ + struct winsize size; + if (!ioctl (fileno (stdout), TIOCGWINSZ, &size)) + { + int y; + resize_term (size.ws_row, size.ws_col); + if (size.ws_col > 14) + for (y = 2; y < 18; ++y) + { + move (y, 14); + clrtoeol (); + } + init_show_text (); + wrefresh (curscr); + } + signal (SIGWINCH, resize_signal_handler); +} + void setup_show(argc, argv) int argc; char **argv; { if (graphics) { + signal (SIGWINCH, resize_signal_handler); initscr(); start_color(); verbose = 0; --- playmidi-2.4debian.orig/io_svgalib.c +++ playmidi-2.4debian/io_svgalib.c @@ -18,6 +18,7 @@ #include #include #include +#include /* following includes are for raw + nowait input mode */ #include @@ -62,12 +63,22 @@ return (d2 + d1 * 100); } -void close_show(error) +void close_show(error, file) int error; +const char *file; { + int err = errno; vga_setmode(TEXT); tcsetattr(i, TCSANOW, &oldtty); - exit(error); + if (err) + { + if (file) + fprintf (stderr, "%s: %s\n", file, strerror (err)); + else + fprintf (stderr, "%s\n", strerror (err)); + } + if (error) + exit(error); } #define CHN (cmd & 0xf) @@ -115,8 +126,8 @@ case 27: case 'q': case 'Q': - close_show(0); - break; + close_show(0, 0); + exit (0); case 'n': case 'N': seq_reset(); @@ -164,6 +175,8 @@ int COLS = WIDTH / 8; + if (length >= sizeof (textbuf)) + length = sizeof (textbuf) - 1; if (ytxt == 10) /* clear text area */ gl_fillbox(512, 80, WIDTH - 1, HEIGHT - 1, 0); strncpy(textbuf, data, length < COLS - 66 ? length : COLS - 66); @@ -259,12 +272,16 @@ tcgetattr(mytty, &newtty); newtty.c_lflag &= ~(ICANON | ECHO | ICRNL | ISIG); tcsetattr(mytty, TCSANOW, &newtty); + /* CPhipps 2000/02/04 - restore euid root in order to start SVGALib. + * We don't have to worry about errors, or dropping priv's afterwards, + * SVGALib handles that safely for us. */ + seteuid(0); vga_init(); if ((vgamode = vga_getdefaultmode()) == -1) vgamode = G640x480x256; if (!vga_hasmode(vgamode)) { fprintf(stderr, "\nRequested vga mode not available!\n"); - close_show(-1); + close_show(-1, 0); } gl_setwritemode(WRITEMODE_OVERWRITE); vga_setmode(vgamode); --- playmidi-2.4debian.orig/io_xaw.c +++ playmidi-2.4debian/io_xaw.c @@ -26,6 +26,7 @@ #include #include #include +#include extern int chanmask, play_gus, play_fm, play_ext, gus_dev, sb_dev, ext_dev; extern int graphics, verbose, perc, ntrks; @@ -76,10 +77,19 @@ x == 48 ? 7 : x == 56 ? 8 : x >= 96 && x <= 111 ? 9 : \ x == 127 ? 10 : 0) -void close_show(error) +void close_show(error, file) int error; +const char *file; { - exit(error); + if (errno) + { + if (file) + fprintf (stderr, "%s: %s\n", file, strerror (errno)); + else + fprintf (stderr, "%s\n", strerror (errno)); + } + if (error) + exit(error); } void ExitCallback(w, client_data, call_data) @@ -87,7 +97,8 @@ XtPointer client_data; XtPointer call_data; { - close_show(0); + close_show(0, 0); + exit (0); } void MaskCallback(w, client_data, call_data) @@ -134,9 +145,7 @@ XtPointer call_data; { double s_position; - int movewhere; - - movewhere = (int) call_data; + intptr_t movewhere = (intptr_t) call_data; if (movewhere < 0) { skew += 0.01; if (skew > 4.0) @@ -282,12 +291,12 @@ note = (data[0] & 0x7f); vel = (data[1] & 0x7f); if (cmd < 8 && cmd > 0) { - strncpy(textbuf, data, length < TEXTSIZE - 4 ? length : TEXTSIZE - 3); - textbuf[(length > TEXTSIZE + 2) ? TEXTSIZE - 2 : length] = '\0'; + strncpy(textbuf, (const char *)data, length > TEXTSIZE - 4 ? TEXTSIZE - 4 : length); + textbuf[(length > TEXTSIZE - 4) ? TEXTSIZE - 4 : length] = '\0'; sprintf(TEXTBUF, "\n"); AppendText(textbuf); if (verbose > 2) - printf(textbuf); + printf("%s", textbuf); } else if (cmd & 0x80) switch (cmd & 0xf0) { case MIDI_NOTEON: @@ -317,7 +326,7 @@ sprintf(TEXTBUF, "\n"); AppendText(textbuf); if (verbose > 2) - printf(textbuf); + printf("%s", textbuf); break; default: break; --- playmidi-2.4debian.orig/patchload.c +++ playmidi-2.4debian/patchload.c @@ -31,7 +31,7 @@ extern int reverb, fmloaded[256], patchloaded[256]; extern int gus_dev, sb_dev, ext_dev, seqfd, wantopl3; extern struct synth_info card_info[MAX_CARDS]; -extern void close_show(int); +extern void close_show(int, const char *); static int use8bit = 0; @@ -98,7 +98,7 @@ for (i = 0; i < 256; i++) patchloaded[i] = 0; if (ioctl(seqfd, SNDCTL_SEQ_RESETSAMPLES, &gus_dev) == -1) - close_show(-1); + close_show(-1, 0); spaceleft = gus_dev; ioctl(seqfd, SNDCTL_SYNTH_MEMAVL, &spaceleft); totalspace = spaceleft; @@ -118,8 +118,11 @@ if (stat(name, &info) == -1) { sprintf(name, PATCH_PATH2 "/%s.pat", gmvoice[pgm]); - if (stat(name, &info) == -1) - return; + if (stat(name, &info) == -1) { + sprintf(name, PATCH_PATH3 "/%s.pat", gmvoice[pgm]); + if (stat(name, &info) == -1) + return; + } } if ((patfd = open(name, O_RDONLY, 0)) == -1) return; @@ -217,10 +220,12 @@ (736 * sample.envelope_offset[j] + 384) / 768; if (reverb) + { if (pgm < 120) patch->env_rate[3] = (2 << 6) | (12 - (reverb >> 4)); else if (pgm > 127) patch->env_rate[1] = (3 << 6) | (63 - (reverb >> 1)); + } patch->tremolo_sweep = sample.tremolo_sweep; patch->tremolo_rate = sample.tremolo_rate; @@ -265,7 +270,7 @@ int i; if (ioctl(seqfd, SNDCTL_SEQ_RESETSAMPLES, &gus_dev) == -1) { - close_show(-1); + close_show(-1, 0); } spaceleft = gus_dev; ioctl(seqfd, SNDCTL_SYNTH_MEMAVL, &spaceleft); @@ -331,6 +336,7 @@ { int sbfd, i, n, voice_size, data_size; char buf[60]; + const char *file; struct sbi_instrument instr; for (i = 0; i < 256; i++) @@ -338,18 +344,18 @@ srand(getpid()); if (wantopl3) { voice_size = 60; - sbfd = open(O3MELODIC, O_RDONLY, 0); + sbfd = open(file = O3MELODIC, O_RDONLY, 0); } else { voice_size = 52; - sbfd = open(SBMELODIC, O_RDONLY, 0); + sbfd = open(file = SBMELODIC, O_RDONLY, 0); } if (sbfd == -1) - close_show(-1); + close_show(-1, file); instr.device = sb_dev; for (i = 0; i < 128; i++) { if (read(sbfd, buf, voice_size) != voice_size) - close_show(-1); + close_show(-1, file); instr.channel = i; if (strncmp(buf, "4OP", 3) == 0) { @@ -371,13 +377,13 @@ close(sbfd); if (wantopl3) - sbfd = open(O3DRUMS, O_RDONLY, 0); + sbfd = open(file = O3DRUMS, O_RDONLY, 0); else - sbfd = open(SBDRUMS, O_RDONLY, 0); + sbfd = open(file = SBDRUMS, O_RDONLY, 0); for (i = 128; i < 175; i++) { if (read(sbfd, buf, voice_size) != voice_size) - close_show(-1); + close_show(-1, file); instr.channel = i; if (strncmp(buf, "4OP", 3) == 0) { --- playmidi-2.4debian.orig/playevents.c +++ playmidi-2.4debian/playevents.c @@ -15,6 +15,7 @@ *************************************************************************/ #include "playmidi.h" #include +#include /* to get "HZ" defined */ extern int seq_set_patch(int, int); extern void seq_key_pressure(int, int, int, int); @@ -149,10 +150,12 @@ ((double) ((division & 0xff00 >> 8) * (division & 0xff)) * 10000.0)) * skew; /* stop if there's more than 40 seconds of nothing */ - if (dtime > 4096.0) + /* [DS] apply skew; e.g. -t5 changes this to 200s (3m20s) */ + if (dtime > 4096.0 * skew) playing = 0; else if ((int) current > ticks) { - SEQ_WAIT_TIME((ticks = (int) current)); + /* our ticks are 100/sec, so convert to hardware jiffies */ + SEQ_WAIT_TIME(((ticks = (int) current)*HZ)/100); SEQ_DUMPBUF(); if (graphics) if ((play_status = updatestatus()) != NO_EXIT) --- playmidi-2.4debian.orig/playmidi.1 +++ playmidi-2.4debian/playmidi.1 @@ -1,101 +1,101 @@ .Dd 1 August 1994 (Modified 22 February 1996) +.Dd (Modified 24 November 2002) .Dt PLAYMIDI 1 .Os "Linux 1.3.60+" .Sh NAME .Nm playmidi, xplaymidi, splaymidi -.Nd midi file player +.Nd MIDI file player .Sh SYNOPSIS .Nm [s|x]playmidi -.Op Fl 8cCdeEfF4gGiImoprRtvVz +.Op Fl a8cCdeEfF4gGiImoprRtvVz .Op Ar .Sh DESCRIPTION .Nm playmidi -is a full-featured midi file player for Linux systems or +is a full-featured MIDI file player for Linux systems or others using the Voxware 3.5 sound driver or newer. -It can play back midi files on general midi devices or +It can play back MIDI files on general MIDI devices or FM or Gravis Ultrasound. If no files are specified, .Nm playmidi will give a summary of all command line options. If more than one file is specified, you can use xplaymidi or -splaymidi or -r mode for interactive control, allowing +splaymidi or \-r mode for interactive control, allowing you to skip to the previous song, next song, speed up -or slow down the midi file, or repeat a midi file while viewing -a real-time display of data in the midi file. +or slow down the MIDI file, or repeat a MIDI file while viewing +a real-time display of data in the MIDI file. +.sp +The Debian playmidi package does not include splaymidi. .Sh OPTIONS Command line options are described below. -(make sure to precede them with a dash (``-'')) +(make sure to precede them with a dash (``\-'')) .Bl -hang -width 8 +.It Fl H +.It Fl \-help +.sp +display the help text then exit. +.It Fl v +.sp +verbosity (additive). .It Fl 8 - -force the use of 8-bit patches with the gravis ultrasound +.sp +force the use of 8-bit patches with the Gravis Ultrasound to conserve memory. Patches are automatically reloaded as 8-bit when memory runs out, but if you know in advance, you can save a step and speed up the loading process. .It Fl c# - -set the channel mask (in hexidecimal) of which channels to -play from the midi file. This is useful if you have a midi file +.sp +set the channel mask (in hexadecimal) of which channels to +play from the MIDI file. This is useful if you have a MIDI file with some channels that don't sound very good on your hardware. .It Fl d - -ignore any drum (percussion) tracks in a midi file. (See also -.Fl m# -). This is useful for FM or any other hardware where percussion -sounds especially bad. Also useful for midi files where the +.sp +ignore any drum (percussion) tracks in a MIDI file. +This is useful for FM or any other hardware where percussion +sounds especially bad. Also useful for MIDI files where the percussion is poorly written. .It Fl e - -send output to external midi. This is what you'll want to do -if you have any midi hardware connected to your system. This -option is the default for playmidi as distributed. +.sp +send output to external MIDI. This is what you'll want to do +if you have any MIDI hardware connected to your system. This +option is the default for playmidi as distributed by upstream. .It Fl f - -send output to fm synth using fm patches. You'll need to use -this option to playback on any non-midi soundcard with the -exception of the gravis ultrasound. +.sp +send output to FM synth using FM patches. You'll need to use +this option to playback on any non-MIDI soundcard with the +exception of the Gravis Ultrasound. +This option is the default for playmidi in Debian. .It Fl 4 - -send output to fm synth using 4-op OPL/3 patches (BROKEN!) +.sp +send output to FM synth using 4-op OPL/3 patches (BROKEN!) Don't use this option since it doesn't work yet. .It Fl g - -send output to Gravis Ultrasound. If you have a gravis ultrasound -without anything connected to the midi port, this option is for you. +.sp +send output to Gravis Ultrasound. If you have one of these +without anything connected to the MIDI port, this option is for you. +.It Fl a +.sp +send output to various SoundBlaster cards, including AWE and Live. +If you have one of these without anything connected to the MIDI port, +this option is for you. .It Fl E# - -set mask of channels to always output to external midi. If you want +.sp +set mask of channels to always output to external MIDI. If you want to use more than one playback device, this option allows you to specify -what channels to send to the external midi port. For example, -00FF would send channels 1 - 8 to external midi. +what channels to send to the external MIDI port. For example, +00FF would send channels 1 \- 8 to external MIDI. .It Fl F# - -set mask of channels to always output to fm. Used as above. +.sp +set mask of channels to always output to FM. Used as above. .It Fl G# - +.sp set mask of channels to always output to gus. Used as above. .It Fl i# - -set the channel mask (in hexidecimal) of which channels to -ignore from the midi file. This option is good for midi files +.sp +set the channel mask (in hexadecimal) of which channels to +ignore from the MIDI file. This option is good for MIDI files with a few channels you don't want to listen to. -.It Fl m# - -set the channel mask (in hexidecimal) of which channels to -consider percussion channels. See also -.Fl d - -This option is good for midi files that don't conform to the -default percussion arrangement of playmidi. GM standard specifies -percussion in channel 10 only. Some files disobey that requiring -this setting. -.It Fl o# - -forces output to a given synth number (0-4). This option is old -and obsolete. Don't use it. It's probably been removed by the -time you read this. .It Fl p[chan,]prog[,chan,prog...] - -forces a given program number (1-128) to be used for all output +.sp +forces a given program number (1\-128) to be used for all output on given channel, or if no channel is specified, program will be used for all channels. For example: .Fl p33 @@ -111,37 +111,37 @@ .Fl p if you want to include whitespace between them. .It Fl I - -shows a list general midi programs and numbers. This is intended to +.sp +shows a list general MIDI programs and numbers. This is intended to make it easier to use the above option. .It Fl t# - +.sp skews tempo by a factor (float). This is good for files you think the author wrote too slow or two fast. Also good if you want to listen -to lots of files at high-speeds, or play a file at slow speeds in order +to lots of files at high speeds, or play a file at slow speeds in order to learn to play a song on some instrument (like piano). .It Fl r - +.sp real time ansi (25-line) playback graphics tracking of all notes on each channel and the current playback clock. This flag is assumed when using xplaymidi or splaymidi. .It Fl P# - +.sp remap all percussion channels to play on given channel. This -is useful if you have a file with percussion on multiple midi -channels and your midi hardware only supports percussion on +is useful if you have a file with percussion on multiple MIDI +channels and your MIDI hardware only supports percussion on one channel. For example .Fl P10 would send all percussion channels to channel 10. .It Fl R# - -set initial reverb level. Valid range is 0 - 127. -For fm, the setting is either "on" (nonzero), or "off" (zero). +.sp +set initial reverb level. Valid range is 0 \- 127. +For FM, the setting is either "on" (nonzero), or "off" (zero). .It Fl C# - -set initial chorus level. Valid range is 0 - 127. +.sp +set initial chorus level. Valid range is 0 \- 127. .It Fl Vchn,vel[,chn,vel...] - +.sp set velocity for all notes in a channel. All velocity information for the given channel will be replaced by the given velocity. One day I'll change this option to allow all channels to be modified @@ -149,21 +149,22 @@ .Fl p option. .It Fl x# - +.sp excludes the given channel number from the mask of channels to -load from the midi file. +load from the MIDI file. .It Fl z - -zero channel data in output stream -- for special applications. +.sp +zero channel data in output stream \(em for special applications. +.El .Sh AUTHOR Nathan Laredo (laredo@gnu.ai.mit.edu) .Sh HISTORY .Nm playmidi -was originally designed out of impatience with other midi -players. The startup time is negligable on all devices -except gravis ultrasound (must wait for patches to load). -The meaning of the various real-time displays is yet-to-be-documented. - +was originally designed out of impatience with other MIDI +players. The startup time is negligible on all devices +except Gravis Ultrasound (must wait for patches to load). +The meaning of the various real-time displays is yet to be documented. +.sp Playmidi 2.x is nearly a total re-write compared with the original 1.1 release. .Sh BUGS @@ -172,6 +173,6 @@ GUS playback quality will improve as kernel driver improves. A lot of new features of playmidi are as of yet undocumented. 4-op FM playback doesn't work. Some incomplete or corrupted -midi files may cause unpredictable results or seg faults. +MIDI files may cause unpredictable results or seg faults. No other known bugs. If you want new features or find undocumented ones (bugs), please email laredo@gnu.ai.mit.edu. --- playmidi-2.4debian.orig/playmidi.c +++ playmidi-2.4debian/playmidi.c @@ -15,6 +15,7 @@ laredo@gnu.ai.mit.edu (Nathan Laredo) or to PSC 1, BOX 709, 2401 Kelly Drive, Lackland AFB, TX 78236-5128, USA. *************************************************************************/ +#define _GNU_SOURCE #ifndef __FreeBSD__ #include #endif @@ -22,8 +23,17 @@ #include #include #include +#include +#include +#include +#include +#include +#include +#include #include "playmidi.h" +#define GZIP "gzip" + SEQ_DEFINEBUF(SEQUENCERBLOCKSIZE); #ifdef PLAY_FM @@ -49,6 +59,7 @@ int seqfd, find_header = 0, MT32 = 0; FILE *mfd; int FORCE_EXT_DEV = DEFAULT_MIDI_DEV; +const char *seqdev = SEQUENCER_DEV; unsigned long int default_tempo; char *filename; float skew = 1.0; @@ -60,7 +71,58 @@ extern int readmidi(unsigned char *, off_t); extern void loadfm(); extern void setup_show(int, char **); -extern void close_show(int); +extern void close_show(int, const char *); + +static void perror_seq(const char *reason) +{ + fprintf(stderr, "%s %s: %s\n", reason, seqdev, strerror (errno)); +} + +int xasprintf (char **strp, const char *fmt, ...) +{ + int ret; + va_list ap; + va_start (ap, fmt); + ret = vasprintf (strp, fmt, ap); + if (!*strp) + { + errno = ENOMEM; + close_show (-1, NULL); + } + return ret; +} + +static void handle_sigchld (int sig GCC_UNUSED) +{ + int status; + wait (&status); +} + +static FILE *do_pipe (const char *cmd, char *const args[]) +{ + int fp[2], cpid; + FILE *mfd; + + if (pipe (fp)) + close_show (-1, cmd); + signal (SIGCHLD, handle_sigchld); + switch (cpid = vfork ()) + { + case -1: + close_show (-1, cmd); + case 0: + if (!close (fp[0]) && !close (STDOUT_FILENO) + && dup2 (fp[1], STDOUT_FILENO) != -1) + execvp (cmd, args); + close_show (0, cmd); + _exit (2); + } + /*default:*/ + close (fp[1]); + if (!(mfd = fdopen (fp[0], "r"))) + close_show (-1, cmd); + return mfd; +} struct synth_info card_info[MAX_CARDS]; void synth_setup() @@ -85,7 +147,7 @@ card_info[i].device = i; if (ioctl(seqfd, SNDCTL_SYNTH_INFO, &card_info[i]) == -1) { fprintf(stderr, "cannot get info on soundcard\n"); - perror(SEQUENCER_DEV); + perror(seqdev); exit(-1); } if (card_info[i].synth_type == SYNTH_TYPE_SAMPLE @@ -142,7 +204,7 @@ { if (_seqbufptr) if (write(seqfd, _seqbuf, _seqbufptr) == -1) { - perror("write " SEQUENCER_DEV); + perror_seq("write"); exit(-1); } _seqbufptr = 0; @@ -180,12 +242,22 @@ { extern char *optarg; extern int optind; - int i, error = 0, j, newprog; + unsigned int i, j, newprog; + int error = 0; char *extra; - char *filebuf; + unsigned char *filebuf; struct stat info; int piped = 0; + /* CPhipps 2000/02/04 - this might be splaymidi, in which case we're + * probably setuid root. Drop privs immediately.. io_svgalib.c can + * regain them */ + if (getuid() != geteuid()) + if (seteuid(getuid())) { + perror("seteuid"); + exit(EPERM); /* Seems appropriate */ + } + printf("%s Copyright (C) 1994-1997 Nathan I. Laredo," " AWE32 by Takashi Iwai\n" "This is free software with ABSOLUTELY NO WARRANTY.\n" @@ -193,7 +265,22 @@ for (i = 0; i < 16; i++) useprog[i] = usevol[i] = 0; /* reset options */ while ((i = getopt(argc, argv, - "48c:aA:C:dD:eE:fF:gh:G:i:IMp:P:rR:t:vV:x:z")) != -1) + "48c:aA:C:dD:eE:fF:gh:G:i:IMp:P:rR:t:vV:x:zH-:")) != -1) + { + if (i == 'H') + { + error = -1; + break; + } + else if (i == '-') + { + if (optarg && !strcmp (optarg, "help")) + { + error = -1; + break; + } + fprintf (stderr, "%s: invalid option -- -\n", argv[0]); + } switch (i) { case '8': force8bit++; @@ -391,10 +478,14 @@ error++; break; } + } if (error || optind >= argc) { - fprintf(stderr, "usage: %s [-options] file1 [file2 ...]\n", argv[0]); - fprintf(stderr, " -v verbosity (additive)\n" + printf( "usage: %s [-options] file1 [file2 ...]\n", argv[0]); + if (error >= 0) + printf ("type '%s --help' for more details\n", argv[0]); + else + printf( " -v verbosity (additive)\n" " -i x ignore channels set in bitmask x (hex)\n" " -c x play only channels set in bitmask x (hex)\n" " -x x exclude channel x from playable bitmask\n" @@ -420,13 +511,13 @@ " -I show list of all GM programs (see -p)\n" " -R x set initial reverb to x (0-127)\n" " -C x set initial chorus to x (0-127)\n" - " -r real-time playback graphics\n" - " -k kill anything using /dev/sequencer\n" - " -w wait for anything using /dev/sequencer\n"); - exit(1); + " -r real-time playback graphics\n"); + exit(error >= 0); } - if ((seqfd = open(SEQUENCER_DEV, O_WRONLY, 0)) < 0) { - perror("open " SEQUENCER_DEV); + if (FORCE_EXT_DEV) + xasprintf((char **)&seqdev, "%s%d", SEQUENCER_DEV, FORCE_EXT_DEV); + if ((seqfd = open(seqdev, O_WRONLY, 0)) < 0) { + perror_seq("open"); exit(-1); } synth_setup(); @@ -439,35 +530,51 @@ for (i = optind; i < argc;) { filename = argv[i]; if (stat(filename, &info) == -1) { - if ((extra = malloc(strlen(filename) + 4)) == NULL) - close_show(-1); - sprintf(extra, "%s.mid", filename); - if (stat(extra, &info) == -1) - close_show(-1); - if ((mfd = fopen(extra, "r")) == NULL) - close_show(-1); - free(extra); + int fl = strlen (filename); + if (fl < 4 || strcmp (filename + fl - 4, ".mid")) + { + xasprintf(&extra, "%s.mid", filename); + if (stat(extra, &info) == -1) + close_show(-1, extra); + if ((mfd = fopen(extra, "r")) == NULL) + close_show(-1, extra); + free(extra); + } + else + close_show (-1, filename); } else { char *ext = strrchr(filename, '.'); if (ext && strcmp(ext, ".gz") == 0) { char temp[1024]; + char *tok; + static char *args_l[] = { GZIP, "-l", NULL, NULL }; + static char *args_c[] = { GZIP, "-d", "-c", NULL, NULL }; + piped = 1; - sprintf(temp, "gzip -l %s", filename); - if ((mfd = popen(temp, "r")) == NULL) - close_show(-1); + + args_l[2] = filename; + mfd = do_pipe (GZIP, args_l); + temp[0] = 0; fgets(temp, sizeof(temp), mfd); /* skip 1st line */ fgets(temp, sizeof(temp), mfd); strtok(temp, " "); /* compressed size */ - info.st_size = atoi(strtok(NULL, " ")); /* original size */ - pclose(mfd); - sprintf(temp, "gzip -d -c %s", filename); - if ((mfd = popen(temp, "r")) == NULL) - close_show(-1); + tok = strtok (NULL, " "); + if (!tok) + { + fprintf (stderr, "%s: %s: corrupt, or not a gzipped file\n", + argv[0], filename); + exit(-1); + } + info.st_size = atoi(tok); /* original size */ + fclose (mfd); + + args_c[3] = filename; + mfd = do_pipe (GZIP, args_c); } else if ((mfd = fopen(filename, "r")) == NULL) - close_show(-1); + close_show(-1, filename); } if ((filebuf = malloc(info.st_size)) == NULL) - close_show(-1); + close_show(-1, 0); fread(filebuf, 1, info.st_size, mfd); if (piped) pclose(mfd); @@ -506,10 +613,12 @@ } while (find_header); if ((i += newprog) < optind) i = optind; /* can't skip back past first file */ + /* sync to avoid truncation when we're about to play another tune */ + ioctl(seqfd, SNDCTL_SEQ_SYNC); free(filebuf); } close(seqfd); - close_show(0); - exit(0); /* this statement is here to keep the compiler happy */ + close_show(0, 0); + exit(0); } /* end of file */ --- playmidi-2.4debian.orig/playmidi.h-dist +++ playmidi-2.4debian/playmidi.h-dist @@ -28,6 +28,7 @@ #define PATCH_PATH1 "PRIMARY_GUS_PATCH_LOCATION" /* the following definition is set by Configure */ #define PATCH_PATH2 "SECONDARY_GUS_PATCH_LOCATION" +#define PATCH_PATH3 "/var/lib/gus-patches" /* change this if you notice performance problems, 128 bytes by default */ #define SEQUENCERBLOCKSIZE 128 /* change this if you have really outrageous midi files > 128 tracks */ @@ -35,10 +36,10 @@ #define MAXTRKS 128 /* where to find fm patch libraries */ #define SEQUENCER_DEV "/dev/sequencer" -#define O3MELODIC "/etc/std.o3" -#define O3DRUMS "/etc/drums.o3" -#define SBMELODIC "/etc/std.sb" -#define SBDRUMS "/etc/drums.sb" +#define O3MELODIC "/etc/playmidi/std.o3" +#define O3DRUMS "/etc/playmidi/drums.o3" +#define SBMELODIC "/etc/playmidi/std.sb" +#define SBDRUMS "/etc/playmidi/drums.sb" #define ISPERC(x) (perc & (1 << x)) #define ISGUS(x) (play_gus & (1 << x)) #define ISFM(x) (play_fm & (1 << x)) @@ -47,16 +48,14 @@ #define ISPLAYING(x) (chanmask & (1 << x)) #define NO_EXIT 100 +#define GCC_UNUSED __attribute__((unused)) + #include #include #include #include #include -#ifdef linux -#include -#else -#include -#endif +#include "awe_voice.h" struct chanstate { int program; @@ -105,3 +104,5 @@ unsigned char running_st; /* running status byte */ }; +extern int xasprintf (char **, const char *, ...) + __attribute__ ((format (printf, 2, 3))); --- playmidi-2.4debian.orig/readmidi.c +++ playmidi-2.4debian/readmidi.c @@ -61,7 +61,7 @@ midifilebuf = filebuf; /* allow user to specify header number in from large archive */ while (i != find_header && midifilebuf < (filebuf + filelength - 32)) { - if (strncmp(midifilebuf, "MThd", 4) == 0) { + if (memcmp(midifilebuf, "MThd", 4) == 0) { i++; midifilebuf += 4; } else @@ -115,7 +115,7 @@ } else { int found = 0; while (!found && midifilebuf < (filebuf + filelength - 8)) - if (strncmp(midifilebuf, "MThd", 4) == 0) + if (memcmp(midifilebuf, "MThd", 4) == 0) found++; else midifilebuf++; @@ -150,7 +150,7 @@ /* MTrk isn't where it's supposed to be, search rest of file */ int fuzz, found = 0; midifilebuf -= 4; - if (strncmp(midifilebuf, "MThd", 4) == 0) + if (memcmp(midifilebuf, "MThd", 4) == 0) continue; else { if (!track) { @@ -161,7 +161,7 @@ midifilebuf -= seq[track - 1].length; for (fuzz = 0; (fuzz + midifilebuf) < (filebuf + filelength - 8) && !found; fuzz++) - if (strncmp(&midifilebuf[fuzz], "MTrk", 4) == 0) + if (memcmp(&midifilebuf[fuzz], "MTrk", 4) == 0) found++; seq[track - 1].length = fuzz; midifilebuf += fuzz;