aboutsummaryrefslogtreecommitdiffstats
path: root/Demos/Host
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2012-04-25 18:28:56 +0000
committerDean Camera <dean@fourwalledcubicle.com>2012-04-25 18:28:56 +0000
commite875d7cf9f31fe9ac586718850a433f2851b5e19 (patch)
tree6646b7317aeb0a802a6eb0e2f09c8fa9c1df6f0d /Demos/Host
parent5b5b73ce582d2afa40218e44b45a97ec6c6ce9cf (diff)
downloadlufa-e875d7cf9f31fe9ac586718850a433f2851b5e19.tar.gz
lufa-e875d7cf9f31fe9ac586718850a433f2851b5e19.tar.bz2
lufa-e875d7cf9f31fe9ac586718850a433f2851b5e19.zip
Changed MIDI event structure MIDI_EventPacket_t to use a single field for the combined virtual cable index and command ID, to prevent bitfield packing issues on some architectures (thanks to Darren Gibbs).
Diffstat (limited to 'Demos/Host')
-rw-r--r--Demos/Host/ClassDriver/MIDIHost/MIDIHost.c7
-rw-r--r--Demos/Host/LowLevel/MIDIHost/MIDIHost.c7
2 files changed, 6 insertions, 8 deletions
diff --git a/Demos/Host/ClassDriver/MIDIHost/MIDIHost.c b/Demos/Host/ClassDriver/MIDIHost/MIDIHost.c
index 129bd3d62..472d19aee 100644
--- a/Demos/Host/ClassDriver/MIDIHost/MIDIHost.c
+++ b/Demos/Host/ClassDriver/MIDIHost/MIDIHost.c
@@ -111,8 +111,8 @@ void JoystickHost_Task(void)
MIDI_EventPacket_t MIDIEvent;
while (MIDI_Host_ReceiveEventPacket(&Keyboard_MIDI_Interface, &MIDIEvent))
{
- bool NoteOnEvent = ((MIDIEvent.Command & 0x0F) == (MIDI_COMMAND_NOTE_ON >> 4));
- bool NoteOffEvent = ((MIDIEvent.Command & 0x0F) == (MIDI_COMMAND_NOTE_OFF >> 4));
+ bool NoteOnEvent = (MIDIEvent.Event == MIDI_EVENT(0, MIDI_COMMAND_NOTE_ON));
+ bool NoteOffEvent = (MIDIEvent.Event == MIDI_EVENT(0, MIDI_COMMAND_NOTE_OFF));
/* Display note events from the host */
if (NoteOnEvent || NoteOffEvent)
@@ -173,8 +173,7 @@ void CheckJoystickMovement(void)
{
MIDI_EventPacket_t MIDIEvent = (MIDI_EventPacket_t)
{
- .CableNumber = 0,
- .Command = (MIDICommand >> 4),
+ .Event = MIDI_EVENT(0, MIDICommand),
.Data1 = MIDICommand | Channel,
.Data2 = MIDIPitch,
diff --git a/Demos/Host/LowLevel/MIDIHost/MIDIHost.c b/Demos/Host/LowLevel/MIDIHost/MIDIHost.c
index 060761f58..f4a52accd 100644
--- a/Demos/Host/LowLevel/MIDIHost/MIDIHost.c
+++ b/Demos/Host/LowLevel/MIDIHost/MIDIHost.c
@@ -177,8 +177,8 @@ void MIDIHost_Task(void)
if (!(Pipe_BytesInPipe()))
Pipe_ClearIN();
- bool NoteOnEvent = ((MIDIEvent.Command & 0x0F) == (MIDI_COMMAND_NOTE_ON >> 4));
- bool NoteOffEvent = ((MIDIEvent.Command & 0x0F) == (MIDI_COMMAND_NOTE_OFF >> 4));
+ bool NoteOnEvent = (MIDIEvent.Event == MIDI_EVENT(0, MIDI_COMMAND_NOTE_ON));
+ bool NoteOffEvent = (MIDIEvent.Event == MIDI_EVENT(0, MIDI_COMMAND_NOTE_OFF));
if (NoteOnEvent || NoteOffEvent)
{
@@ -237,8 +237,7 @@ void MIDIHost_Task(void)
{
MIDI_EventPacket_t MIDIEvent = (MIDI_EventPacket_t)
{
- .CableNumber = 0,
- .Command = (MIDICommand >> 4),
+ .Event = MIDI_EVENT(0, MIDICommand),
.Data1 = MIDICommand | Channel,
.Data2 = MIDIPitch,