Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27069
Modified Files: Tag: desiredata s_midi_pm.c Log Message: fixed previous commit
Index: s_midi_pm.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/s_midi_pm.c,v retrieving revision 1.4.4.1.2.8.2.4 retrieving revision 1.4.4.1.2.8.2.5 diff -C2 -d -r1.4.4.1.2.8.2.4 -r1.4.4.1.2.8.2.5 *** s_midi_pm.c 24 Jul 2007 03:21:47 -0000 1.4.4.1.2.8.2.4 --- s_midi_pm.c 24 Jul 2007 03:47:13 -0000 1.4.4.1.2.8.2.5 *************** *** 172,175 **** --- 172,177 ---- } } else { + int data1 = Pm_MessageData1(msg); + int data2 = Pm_MessageData2(msg); /* non-sysex */ sys_midibytein(i, status); *************** *** 180,207 **** case 0xb: /* control change */ case 0xe: /* pitch bend */ ! sys_midibytein(i, Pm_MessageData1(msg)); ! sys_midibytein(i, Pm_MessageData2(msg)); break; case 0xc: /* program change */ case 0xd: /* channel pressure */ ! sys_midibytein(i, Pm_MessageData1(msg)); break; case 0xf: /* system common/realtime messages */ switch(status) { ! case 0xf1: /* time code */ ! case 0xf3: /* song select */ ! case 0xf6: /* tune request */ ! sys_midibytein(i, Pm_MessageData1(msg)); break; ! case 0xf2: /* song position pointer */ ! sys_midibytein(i, Pm_MessageData1(msg)); ! sys_midibytein(i, Pm_MessageData2(msg)); break; case 0xf7: // from Nathaniel; don't know whether it'll work in this context. nd_sysex_mode=1; ! nd_sysex_inword(i, status, data1, data2, data3); break; default: // from Nathaniel too. ! if (nd_sysex_mode) nd_sysex_inword(i, status, data1, data2, data3); break; } --- 182,209 ---- case 0xb: /* control change */ case 0xe: /* pitch bend */ ! sys_midibytein(i,data1); ! sys_midibytein(i,data2); break; case 0xc: /* program change */ case 0xd: /* channel pressure */ ! sys_midibytein(i,data1); break; case 0xf: /* system common/realtime messages */ switch(status) { ! case 0xf1: /* time code */ ! case 0xf3: /* song select */ ! case 0xf6: /* tune request */ ! sys_midibytein(i,data1); break; ! case 0xf2: /* song position pointer */ ! sys_midibytein(i,data1); ! sys_midibytein(i,data2); break; case 0xf7: // from Nathaniel; don't know whether it'll work in this context. nd_sysex_mode=1; ! nd_sysex_inword(i,status,data1,data2,((msg>>24)&0xFF)); break; default: // from Nathaniel too. ! if (nd_sysex_mode) nd_sysex_inword(i,status,data1,data2,((msg>>24)&0xFF)); break; }