* Audigy 2 Platinum eX Remote (Some developer please read this)
@ 2003-09-24 9:36 ` Miguel Duarte
2003-09-24 10:02 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: Miguel Duarte @ 2003-09-24 9:36 UTC (permalink / raw)
To: alsa-devel
Hi,
Until now I wasn't able to make my remote work.
While posting in the EMU10K1 devel mailing list, someone said that it was necessary to "initialize" the MIDI device used by the remote. A SysEx sequence has to be send to '/dev/snd/midiC0D1'. The sequence is '0xf0, 0x00, 0x20,0x21, 0x61, 0x0, 0x00, 0x00, 0x7f, 0x0, 0xf7'.
The source code bellow is of a program that does just that. After modprobing the modules with the correct options (the options are the same as the Platinum), just run this prog to "initialize" the midi device. Voi-lá! The remote works! I think this is an ugly hack. I'm sure that this can be implemented in the driver itself. Remember that this "initialization" is only required by the Audigy 2 Platinum eX.
Hope this helps.
Miguel Duarte
--------------Start code-------------------
//
// Programmer: Craig Stuart Sapp [craig@ccrma.stanford.edu]
// Creation Date: Mon Dec 21 18:00:42 PST 1998
// Last Modified: Mon Dec 21 18:00:42 PST 1998
// Filename: ...linuxmidi/output/method1.c
// Syntax: C
// $Smake: gcc -O -o devmidiout devmidiout.c && strip devmidiout
//
#include <linux/soundcard.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdio.h>
int main(void) {
char* device = "/dev/snd/midiC0D1" ;
unsigned char data[11] = {0xf0, 0x00, 0x20, 0x21, 0x61, 0x0, 0x00, 0x00,
0x7f, 0x0, 0xf7};
// step 1: open the OSS device for writing
int fd = open(device, O_WRONLY, 0);
if (fd < 0) {
printf("Error: cannot open %s\n", device);
exit(1);
}
// step 2: write the MIDI information to the OSS device
write(fd, data, sizeof(data));
// step 3: (optional) close the OSS device
close(fd);
return 0;
}
--------------End code-------------------
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Audigy 2 Platinum eX Remote (Some developer please read this)
2003-09-24 9:36 ` Audigy 2 Platinum eX Remote (Some developer please read this) Miguel Duarte
@ 2003-09-24 10:02 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2003-09-24 10:02 UTC (permalink / raw)
To: Miguel Duarte; +Cc: alsa-devel
At Wed, 24 Sep 2003 10:36:45 +0100,
Miguel Duarte wrote:
>
> Hi,
>
> Until now I wasn't able to make my remote work.
> While posting in the EMU10K1 devel mailing list, someone said that it was necessary to "initialize" the MIDI device used by the remote. A SysEx sequence has to be send to '/dev/snd/midiC0D1'. The sequence is '0xf0, 0x00, 0x20,0x21, 0x61, 0x0, 0x00, 0x00, 0x7f, 0x0, 0xf7'.
oh, my...
> The source code bellow is of a program that does just that. After
> modprobing the modules with the correct options (the options are the
> same as the Platinum), just run this prog to "initialize" the midi
> device. Voi-lá! The remote works! I think this is an ugly hack.
i don't think it's so bad.
>I'm sure that this can be implemented in the driver itself.
yes, but why bother to do this in the driver, although you can do it
nicely on user-space?
(you can even use shell's echo command for this :)
anyway, thanks for your info!
Takashi
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2003-09-24 10:02 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20030924093645.NWH9998.fep06-svc.mail.telepac.pt@127.0.0.1>
2003-09-24 9:36 ` Audigy 2 Platinum eX Remote (Some developer please read this) Miguel Duarte
2003-09-24 10:02 ` Takashi Iwai
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.