aboutsummaryrefslogtreecommitdiff
path: root/shared/common/mifi.h
diff options
context:
space:
mode:
Diffstat (limited to 'shared/common/mifi.h')
-rw-r--r--shared/common/mifi.h51
1 files changed, 32 insertions, 19 deletions
diff --git a/shared/common/mifi.h b/shared/common/mifi.h
index 1163a5d..e7948c7 100644
--- a/shared/common/mifi.h
+++ b/shared/common/mifi.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2004 krzYszcz and others.
+/* Copyright (c) 2004-2005 krzYszcz and others.
* For information on usage and redistribution, and for a DISCLAIMER OF ALL
* WARRANTIES, see the file, "LICENSE.txt," in this distribution. */
@@ -21,29 +21,42 @@ typedef int (*t_mifireadhook)(t_mifiread *mf, void *hookdata, int evtype);
#define MIFIREAD_EOF -2 /* regular eof */
#define MIFIREAD_SKIP -1 /* error and successful skip to the next track */
-#define MIFIMETA_SEQNUM 0
-#define MIFIMETA_TEXT 1
-#define MIFIMETA_COPYRIGHT 2
-#define MIFIMETA_TRACKNAME 3
-#define MIFIMETA_INSTRUMENT 4
-#define MIFIMETA_LYRIC 5
-#define MIFIMETA_MARKER 6
-#define MIFIMETA_CUE 7
-#define MIFIMETA_MAXPRINTABLE 15 /* 1..15 are various text meta-events */
-#define MIFIMETA_CHANNEL 0x20 /* channel prefix */
-#define MIFIMETA_EOT 0x2f /* end of track */
-#define MIFIMETA_TEMPO 0x51
-#define MIFIMETA_SMPTE 0x54 /* SMPTE offset */
-#define MIFIMETA_TIMESIG 0x58 /* time signature */
-#define MIFIMETA_KEYSIG 0x59 /* key signature */
+#define MIFIMETA_SEQNUM 0
+#define MIFIMETA_TEXT 1
+#define MIFIMETA_COPYRIGHT 2
+#define MIFIMETA_TRACKNAME 3
+#define MIFIMETA_INSTRUMENT 4
+#define MIFIMETA_LYRIC 5
+#define MIFIMETA_MARKER 6
+#define MIFIMETA_CUE 7
+#define MIFIMETA_MAXPRINTABLE 15 /* 1..15 are various text meta-events */
+#define MIFIMETA_CHANNEL 0x20 /* channel prefix (obsolete) */
+#define MIFIMETA_PORT 0x21 /* port prefix (obsolete) */
+#define MIFIMETA_EOT 0x2f /* end of track */
+#define MIFIMETA_TEMPO 0x51
+#define MIFIMETA_SMPTE 0x54 /* SMPTE offset */
+#define MIFIMETA_TIMESIG 0x58 /* time signature */
+#define MIFIMETA_KEYSIG 0x59 /* key signature */
+#define MIFIMETA_PROPRIETARY 0x7f
/* ...channel status codes go here, too obvious to #define... */
-#define MIFISYSEX_FIRST 0xf0
-#define MIFISYSEX_NEXT 0xf7
+#define MIFISYSEX_FIRST 0xf0
+#define MIFISYSEX_NEXT 0xf7
+#define MIFISYSEX_ESCAPE 0xf7 /* without preceding MIFISYSEX_FIRST */
/* this code is not returned as an event type, but in e_status of t_mifievent */
-#define MIFIEVENT_META 0xff
+#define MIFIEVENT_META 0xff
+
+/* system messages (expected inside of sysex escape events) */
+#define MIFISYS_SONGPOINTER 0xf2
+#define MIFISYS_SONGSELECT 0xf3
+#define MIFISYS_TUNEREQUEST 0xf6
+#define MIFISYS_CLOCK 0xf8
+#define MIFISYS_START 0xfa
+#define MIFISYS_CONTINUE 0xfb
+#define MIFISYS_STOP 0xfc
+#define MIFISYS_ACTIVESENSING 0xfe
/* true if one of channel messages */
#define MIFI_ISCHANNEL(status) (((status) & 0x80) && (status) < 0xf0)