Lines Matching refs:sequence

93 static void __SEQPushSequenceList(SEQSEQUENCE *sequence)  in __SEQPushSequenceList()  argument
100 sequence->next = __SEQSequenceList; in __SEQPushSequenceList()
102 sequence->next = NULL; in __SEQPushSequenceList()
104 __SEQSequenceList = sequence; in __SEQPushSequenceList()
113 static void __SEQRemoveSequenceFromList(SEQSEQUENCE *sequence) in __SEQRemoveSequenceFromList() argument
127 if (thisSequence != sequence) in __SEQRemoveSequenceFromList()
179 SEQSEQUENCE *sequence; in __SEQSetTicksPerFrame() local
183 sequence = (SEQSEQUENCE*)track->sequence; in __SEQSetTicksPerFrame()
191 sequence->timeFormat))); in __SEQSetTicksPerFrame()
221 SEQSEQUENCE *sequence; in __SEQTrackEnd() local
225 sequence = track->sequence; in __SEQTrackEnd()
226 sequence->tracksRunning--; in __SEQTrackEnd()
230 if (sequence->tracksRunning == 0) in __SEQTrackEnd()
231 sequence->end = 1; in __SEQTrackEnd()
310 SEQCALLBACK callback = ((SEQSEQUENCE*)(track->sequence))->callback[ch[1]]; in __SEQHandleSynthEvent()
368 static void __SEQInitTracks(SEQSEQUENCE *sequence, u8 *read, int tracks) in __SEQInitTracks() argument
388 SEQTRACK *track = &sequence->track[i]; in __SEQInitTracks()
390 track->sequence = sequence; in __SEQInitTracks()
399 sequence->timeFormat))); in __SEQInitTracks()
419 static void __SEQReadHeader(SEQSEQUENCE *sequence, u8 *midiStream) in __SEQReadHeader() argument
439 sequence->nTracks = *(u16*)(read); read += 2; in __SEQReadHeader()
440 sequence->timeFormat = *(s16*)(read); read += 2; in __SEQReadHeader()
443 sequence->timeFormat >= 0, in __SEQReadHeader()
456 sequence->nTracks = 1; in __SEQReadHeader()
458 __SEQInitTracks(sequence, read, 1); in __SEQReadHeader()
465 sequence->nTracks < SEQ_MAX_TRACKS, in __SEQReadHeader()
469 __SEQInitTracks(sequence, read, sequence->nTracks); in __SEQReadHeader()
480 sequence->tracksRunning = sequence->nTracks; in __SEQReadHeader()
520 SEQSEQUENCE *sequence = __SEQSequenceList; in SEQRunAudioFrame() local
528 while (sequence) in SEQRunAudioFrame()
530 if ((sequence->state == SEQ_STATE_RUN) || in SEQRunAudioFrame()
531 (sequence->state == SEQ_STATE_RUNLOOPED)) in SEQRunAudioFrame()
535 for (i = 0; i < sequence->nTracks; i++) in SEQRunAudioFrame()
537 SEQTRACK *track = &sequence->track[i]; in SEQRunAudioFrame()
553 __SEQRunEvent(&sequence->synth, track); in SEQRunAudioFrame()
567 if (sequence->end) in SEQRunAudioFrame()
569 if (sequence->state == SEQ_STATE_RUNLOOPED) in SEQRunAudioFrame()
571 SEQSetState(sequence, SEQ_STATE_STOP); in SEQRunAudioFrame()
572 SEQSetState(sequence, SEQ_STATE_RUNLOOPED); in SEQRunAudioFrame()
576 SEQSetState(sequence, SEQ_STATE_STOP); in SEQRunAudioFrame()
580 sequence = sequence->next; in SEQRunAudioFrame()
590 SEQSEQUENCE *sequence, // user allocated SEQSEQUENCE in SEQAddSequence() argument
602 ASSERT(sequence); in SEQAddSequence()
613 &sequence->synth, in SEQAddSequence()
623 sequence->state = SEQ_STATE_STOP; in SEQAddSequence()
628 sequence->callback[i] = NULL; in SEQAddSequence()
632 __SEQReadHeader(sequence, midiStream); in SEQAddSequence()
635 __SEQPushSequenceList(sequence); in SEQAddSequence()
642 void SEQRemoveSequence(SEQSEQUENCE *sequence) in SEQRemoveSequence() argument
644 ASSERT(sequence); in SEQRemoveSequence()
647 __SEQRemoveSequenceFromList(sequence); in SEQRemoveSequence()
650 SYNQuitSynth(&sequence->synth); in SEQRemoveSequence()
658 SEQSEQUENCE *sequence, // user initialized SEQSEQUENCE in SEQRegisterControllerCallback() argument
663 ASSERT(sequence); in SEQRegisterControllerCallback()
667 sequence->callback[controller] = callback; in SEQRegisterControllerCallback()
674 void SEQSetState(SEQSEQUENCE *sequence, u32 state) in SEQSetState() argument
678 ASSERT(sequence); in SEQSetState()
687 if (sequence->state == SEQ_STATE_STOP) in SEQSetState()
691 for (i = 0; i < sequence->nTracks; i++) in SEQSetState()
694 SEQTRACK *track = &sequence->track[i]; in SEQSetState()
704 sequence->tracksRunning = sequence->nTracks; in SEQSetState()
709 sequence->end = 0; in SEQSetState()
729 SYNMidiInput(&sequence->synth, ch); in SEQSetState()
737 sequence->state = state; in SEQSetState()
744 u32 SEQGetState(SEQSEQUENCE *sequence) in SEQGetState() argument
746 ASSERT(sequence); in SEQGetState()
748 return sequence->state; in SEQGetState()
755 void SEQSetTempo(SEQSEQUENCE *sequence, u32 trackIndex, f32 bpm) in SEQSetTempo() argument
757 ASSERT(sequence); in SEQSetTempo()
758 ASSERT((trackIndex < sequence->nTracks) || (trackIndex == SEQ_ALL_TRACKS)); in SEQSetTempo()
764 for (i = 0; i < sequence->nTracks; i++) in SEQSetTempo()
765 __SEQSetTicksPerFrame(&sequence->track[i], bpm / 60); in SEQSetTempo()
769 __SEQSetTicksPerFrame(&sequence->track[trackIndex], bpm / 60); in SEQSetTempo()
777 f32 SEQGetTempo(SEQSEQUENCE *sequence, u32 trackIndex) in SEQGetTempo() argument
779 ASSERT(sequence); in SEQGetTempo()
780 ASSERT(trackIndex < sequence->nTracks); in SEQGetTempo()
782 return sequence->track[trackIndex].beatsPerSec * 60; in SEQGetTempo()
789 void SEQSetVolume(SEQSEQUENCE *sequence, s32 dB) in SEQSetVolume() argument
791 ASSERT(sequence); in SEQSetVolume()
793 SYNSetMasterVolume(&sequence->synth, dB); in SEQSetVolume()
800 s32 SEQGetVolume(SEQSEQUENCE *sequence) in SEQGetVolume() argument
802 ASSERT(sequence); in SEQGetVolume()
804 return SYNGetMasterVolume(&sequence->synth); in SEQGetVolume()