Update of /cvsroot/alsa/alsa-kernel/include
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19892/alsa-kernel/include

Modified Files:
        asound.h emux_synth.h sfnt_info.h 
Log Message:
- added the support of hwdep for EmuX WaveTable on emu10k1 and sbawe.
  SoundFont can be loaded via the ALSA native hwdep device now.



Index: asound.h
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/include/asound.h,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- asound.h    19 Jan 2004 19:46:42 -0000      1.35
+++ asound.h    26 Jan 2004 10:49:36 -0000      1.36
@@ -107,9 +107,10 @@
        SNDRV_HWDEP_IFACE_VX,           /* Digigram VX cards */
        SNDRV_HWDEP_IFACE_MIXART,       /* Digigram miXart cards */
        SNDRV_HWDEP_IFACE_USX2Y,        /* Tascam US122, US224 & US428 usb */
+       SNDRV_HWDEP_IFACE_EMUX_WAVETABLE, /* EmuX wavetable */  
 
        /* Don't forget to change the following: */
-       SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_USX2Y,
+       SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_EMUX_WAVETABLE,
 };
 
 struct sndrv_hwdep_info {

Index: emux_synth.h
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/include/emux_synth.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- emux_synth.h        16 Jan 2004 18:02:40 -0000      1.9
+++ emux_synth.h        26 Jan 2004 10:49:36 -0000      1.10
@@ -103,6 +103,8 @@
        int midi_ports;         /* number of virtual midi devices */
        int midi_devidx;        /* device offset of virtual midi */
        unsigned int linear_panning: 1; /* panning is linear (sbawe = 1, emu10k1 = 0) 
*/
+       int hwdep_idx;          /* hwdep device index */
+       snd_hwdep_t *hwdep;     /* hwdep device */
 
        /* private */
        int num_voices;         /* current number of voices */
@@ -113,6 +115,7 @@
        struct semaphore register_mutex;
        int client;             /* For the sequencer client */
        int ports[SNDRV_EMUX_MAX_PORTS];        /* The ports for this device */
+       snd_emux_port_t *portptrs[SNDRV_EMUX_MAX_PORTS];
        int used;       /* use counter */
        char *name;     /* name of the device (internal) */
        snd_rawmidi_t **vmidi;

Index: sfnt_info.h
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/include/sfnt_info.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- sfnt_info.h 4 Jan 2002 15:08:44 -0000       1.3
+++ sfnt_info.h 26 Jan 2004 10:49:36 -0000      1.4
@@ -22,16 +22,22 @@
  *
  */
 
-#include "seq_oss_legacy.h"
+#include <sound/asound.h>
 
 /*
  * patch information record
  */
 
+#ifdef SNDRV_BIG_ENDIAN
+#define SNDRV_OSS_PATCHKEY(id) (0xfd00|id)
+#else
+#define SNDRV_OSS_PATCHKEY(id) ((id<<8)|0xfd)
+#endif
+
 /* patch interface header: 16 bytes */
 typedef struct soundfont_patch_info_t {
        unsigned short key;             /* use the key below */
-#define SNDRV_OSS_SOUNDFONT_PATCH              _PATCHKEY(0x07)
+#define SNDRV_OSS_SOUNDFONT_PATCH              SNDRV_OSS_PATCHKEY(0x07)
 
        short device_no;                /* synthesizer number */
        unsigned short sf_id;           /* file id (should be zero) */
@@ -181,4 +187,28 @@
 } soundfont_voice_map_t;
 
 
+/*
+ * ioctls for hwdep
+ */
+
+#define SNDRV_EMUX_HWDEP_NAME  "Emux WaveTable"
+
+#define SNDRV_EMUX_VERSION     ((1 << 16) | (0 << 8) | 0)      /* 1.0.0 */
+
+struct sndrv_emux_misc_mode {
+       int port;       /* -1 = all */
+       int mode;
+       int value;
+       int value2;     /* reserved */
+};
+
+enum {
+       SNDRV_EMUX_IOCTL_VERSION = _IOR('H', 0x80, unsigned int),
+       SNDRV_EMUX_IOCTL_LOAD_PATCH = _IOWR('H', 0x81, soundfont_patch_info_t),
+       SNDRV_EMUX_IOCTL_RESET_SAMPLES = _IO('H', 0x82),
+       SNDRV_EMUX_IOCTL_REMOVE_LAST_SAMPLES = _IO('H', 0x83),
+       SNDRV_EMUX_IOCTL_MEM_AVAIL = _IOW('H', 0x84, int),
+       SNDRV_EMUX_IOCTL_MISC_MODE = _IOWR('H', 0x84, struct sndrv_emux_misc_mode),
+};
+
 #endif /* __SOUND_SFNT_INFO_H */



-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog

Reply via email to