use 0x7F as dev numer in sysex

This commit is contained in:
Alexandre Ratchov 2013-12-10 20:00:36 +01:00
parent e8221ec396
commit 5c5a7280c2
4 changed files with 34 additions and 2 deletions

View File

@ -336,7 +336,7 @@ dev_midi_full(struct dev *d)
x.start = SYSEX_START;
x.type = SYSEX_TYPE_RT;
x.dev = 0x7f;
x.dev = SYSEX_DEV_ANY;
x.id0 = SYSEX_MTC;
x.id1 = SYSEX_MTC_FULL;
x.u.full.hr = d->mtc.hr | (d->mtc.fps_id << 5);
@ -373,6 +373,7 @@ dev_midi_master(struct dev *d)
memset(&x, 0, sizeof(struct sysex));
x.start = SYSEX_START;
x.type = SYSEX_TYPE_RT;
x.dev = SYSEX_DEV_ANY;
x.id0 = SYSEX_CONTROL;
x.id1 = SYSEX_MASTER;
x.u.master.fine = 0;
@ -392,6 +393,7 @@ dev_midi_slotdesc(struct dev *d, struct slot *s)
memset(&x, 0, sizeof(struct sysex));
x.start = SYSEX_START;
x.type = SYSEX_TYPE_EDU;
x.dev = SYSEX_DEV_ANY;
x.id0 = SYSEX_AUCAT;
x.id1 = SYSEX_AUCAT_SLOTDESC;
if (*s->name != '\0') {
@ -417,7 +419,7 @@ dev_midi_dump(struct dev *d)
}
x.start = SYSEX_START;
x.type = SYSEX_TYPE_EDU;
x.dev = 0;
x.dev = SYSEX_DEV_ANY;
x.id0 = SYSEX_AUCAT;
x.id1 = SYSEX_AUCAT_DUMPEND;
x.u.dumpend.end = SYSEX_END;

View File

@ -285,6 +285,18 @@ midi_in(struct midi *iep, unsigned char *idata, int icount)
int i;
unsigned char c;
#ifdef DEBUG
if (log_level >= 3) {
midi_log(iep);
log_puts(": got:");
for (i = 0; i < icount; i++) {
log_puts(" ");
log_putx(idata[i]);
}
log_puts("\n");
}
#endif
for (i = 0; i < icount; i++) {
c = *idata++;
if (c >= 0xf8) {

View File

@ -253,6 +253,19 @@ sock_midi_imsg(void *arg, unsigned char *msg, int size)
{
struct sock *f = arg;
#ifdef DEBUG
int i;
if (log_level >= 3) {
log_puts("sock got:");
for (i = 0; i < size; i++) {
log_puts(" ");
log_putx(msg[i]);
}
log_puts("\n");
}
#endif
midi_send(f->midi, msg, size);
}

View File

@ -45,6 +45,11 @@
#define SYSEX_MMC_LOC_LEN 0x06
#define SYSEX_MMC_LOC_CMD 0x01
/*
* sepcial "any" midi device number
*/
#define SYSEX_DEV_ANY 0x7f
/*
* aucat-specific messages, in the "edu" namespace
*/