#ifdef USE_WINTIMER_I fluid_mutex_unlock(timerMUTEX); #endif 
int rtsyn_play_one_data (int port, int32 dwParam1){	MidiEvent ev;#ifdef USE_WINTIMER_I	fluid_mutex_lock(timerMUTEX);#endif 	ev.type = ME_NONE;	ev.channel = dwParam1 & 0x0000000f;	ev.channel = ev.channel+port*16;	ev.a = (dwParam1 >> 8) & 0xff;	ev.b = (dwParam1 >> 16) & 0xff;	switch ((int) (dwParam1 & 0x000000f0)) {	case 0x80:		ev.type = ME_NOTEOFF;//		rtsyn_play_event(&ev);		break;	case 0x90:		ev.type = (ev.b) ? ME_NOTEON : ME_NOTEOFF;//		rtsyn_play_event(&ev);		break;	case 0xa0:		ev.type = ME_KEYPRESSURE;//		rtsyn_play_event(&ev);		break;	case 0xb0:		if (! convert_midi_control_change(ev.channel, ev.a, ev.b, &ev))		ev.type = ME_NONE;		break;	case 0xc0:		ev.type = ME_PROGRAM;//		rtsyn_play_event(&ev);		break;	case 0xd0:		ev.type = ME_CHANNEL_PRESSURE;//		rtsyn_play_event(&ev);		break;	case 0xe0:		ev.type = ME_PITCHWHEEL;//		rtsyn_play_event(&ev);		break;	case 0xf0:#ifdef USE_PORTMIDI		if ( (dwParam1 & 0x000000ff) == 0xf0) {			//SysEx			return 1;		}#endif		if ((dwParam1 & 0x000000ff) == 0xf2) {			ev.type = ME_PROGRAM;//			rtsyn_play_event(&ev);		}#if 0		if ((dwParam1 & 0x000000ff) == 0xf1)			//MIDI Time Code Qtr. Frame (not need)			printf("MIDI Time Code Qtr\n");		if ((dwParam1 & 0x000000ff) == 0xf3)			//Song Select(Song #) (not need)		if ((dwParam1 & 0x000000ff) == 0xf6)			//Tune request (not need)			printf("Tune request\n");		if ((dwParam1 & 0x000000ff) == 0xf8)			//Timing Clock (not need)			printf("Timing Clock\n");		if ((dwParam1&0x000000ff)==0xfa)			//Start		if ((dwParam1 & 0x000000ff) == 0xfb)			//Continue		if ((dwParam1 & 0x000000ff) == 0xfc) {			//Stop			printf("Stop\n");		}#endif		if ((dwParam1 & 0x000000ff) == 0xfe) {			//Active Sensing//			printf("Active Sensing\n");			active_sensing_flag = ~0;			active_sensing_time = get_current_calender_time();		}		if ((dwParam1 & 0x000000ff) == 0xff) {			//System Reset			printf("System Reset\n");		}		break;	default://		printf("Unsup/ed event %d\n", aevp->type);		break;	}	if (ev.type != ME_NONE) {		rtsyn_play_event(&ev);	}#ifdef USE_WINTIMER_I	fluid_mutex_unlock(timerMUTEX);#endif 	return 0;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/420a69188dfc20f4dc78ff06527ec9213d2da5c4/rtsyn_common.c/clean/interface/rtsyn_common.c